customredirects.z13.web.core.windows.net Open in urlscan Pro
20.60.6.129  Malicious Activity! Public Scan

Submitted URL: https://i6lojoksqh4hgckxdz3zoa-on.drv.tw/www.gredirects.com/myoffice/start-2.html
Effective URL: https://customredirects.z13.web.core.windows.net/myoofice/terms-1.html
Submission: On March 10 via manual from NL

Summary

This website contacted 10 IPs in 5 countries across 8 domains to perform 21 HTTP transactions. The main IP is 20.60.6.129, located in Washington, United States and belongs to MICROSOFT-CORP-MSN-AS-BLOCK, US. The main domain is customredirects.z13.web.core.windows.net.
TLS certificate: Issued by Microsoft RSA TLS CA 01 on February 16th 2021. Valid for: a year.
This is the only time customredirects.z13.web.core.windows.net was scanned on urlscan.io!

urlscan.io Verdict: Potentially Malicious

Targeting these brands: Microsoft (Consumer)

Domain & IP information

IP Address AS Autonomous System
2 47.89.250.243 45102 (CNNIC-ALI...)
1 20.60.6.129 8075 (MICROSOFT...)
13 152.199.23.37 15133 (EDGECAST)
1 145.239.131.55 16276 (OVH)
1 144.76.69.233 24940 (HETZNER-AS)
1 2a02:26f0:710... 20940 (AKAMAI-ASN1)
1 2001:4de0:ac1... 20446 (HIGHWINDS3)
1 20.190.159.134 8075 (MICROSOFT...)
21 10
Domain Requested by
13 aadcdn.msftauth.net text
1 login.live.com text
1 code.jquery.com text
1 image.flaticon.com text
1 srv-file8.gofile.io text
1 i.ibb.co text
1 drv.tw i6lojoksqh4hgckxdz3zoa-on.drv.tw
1 customredirects.z13.web.core.windows.net i6lojoksqh4hgckxdz3zoa-on.drv.tw
1 i6lojoksqh4hgckxdz3zoa-on.drv.tw
21 9

This site contains no links.

Subject Issuer Validity Valid
*.drv.tw
R3
2021-02-01 -
2021-05-02
3 months crt.sh
*.web.core.windows.net
Microsoft RSA TLS CA 01
2021-02-16 -
2022-02-16
a year crt.sh
aadcdn.msftauth.net
DigiCert SHA2 Secure Server CA
2020-07-09 -
2021-07-09
a year crt.sh
ibb.co
R3
2021-02-02 -
2021-05-03
3 months crt.sh
srv-file8.gofile.io
R3
2021-02-16 -
2021-05-17
3 months crt.sh
thumbr.io
Sectigo RSA Domain Validation Secure Server CA
2020-06-05 -
2022-08-04
2 years crt.sh
jquery.org
Sectigo RSA Domain Validation Secure Server CA
2020-10-06 -
2021-10-16
a year crt.sh
graph.windows.net
DigiCert SHA2 Secure Server CA
2021-03-04 -
2022-03-04
a year crt.sh

This page contains 2 frames:

Primary Page: https://customredirects.z13.web.core.windows.net/myoofice/terms-1.html
Frame ID: 40B3B743405D64D2687DAE2DD25AA6D4
Requests: 3 HTTP requests in this frame

Frame: data://truncated
Frame ID: 83F52601F17A9932B0F0597FB26E9C60
Requests: 20 HTTP requests in this frame

Screenshot


Page URL History Show full URLs

  1. https://i6lojoksqh4hgckxdz3zoa-on.drv.tw/www.gredirects.com/myoffice/start-2.html Page URL
  2. https://customredirects.z13.web.core.windows.net/myoofice/terms-1.html Page URL

Detected technologies

Overall confidence: 100%
Detected patterns
  • headers server /Ubuntu/i

Overall confidence: 100%
Detected patterns
  • headers server /nginx(?:\/([\d.]+))?/i

Page Statistics

21
Requests

100 %
HTTPS

25 %
IPv6

8
Domains

9
Subdomains

10
IPs

5
Countries

429 kB
Transfer

964 kB
Size

0
Cookies

Page URL History

This captures the URL locations of the websites, including HTTP redirects and client-side redirects via JavaScript or Meta fields.

  1. https://i6lojoksqh4hgckxdz3zoa-on.drv.tw/www.gredirects.com/myoffice/start-2.html Page URL
  2. https://customredirects.z13.web.core.windows.net/myoofice/terms-1.html Page URL

Redirected requests

There were HTTP redirect chains for the following requests:

21 HTTP transactions

Resource
Path
Size
x-fer
Type
MIME-Type
start-2.html
i6lojoksqh4hgckxdz3zoa-on.drv.tw/www.gredirects.com/myoffice/
345 B
476 B
Document
General
Full URL
https://i6lojoksqh4hgckxdz3zoa-on.drv.tw/www.gredirects.com/myoffice/start-2.html
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
47.89.250.243 , United States, ASN45102 (CNNIC-ALIBABA-US-NET-AP Alibaba (US) Technology Co., Ltd., CN),
Reverse DNS
Software
nginx/1.14.0 (Ubuntu) /
Resource Hash

Request headers

:method
GET
:authority
i6lojoksqh4hgckxdz3zoa-on.drv.tw
:scheme
https
:path
/www.gredirects.com/myoffice/start-2.html
pragma
no-cache
cache-control
no-cache
upgrade-insecure-requests
1
user-agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36
accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
sec-fetch-site
none
sec-fetch-mode
navigate
sec-fetch-user
?1
sec-fetch-dest
document
accept-encoding
gzip, deflate, br
accept-language
en-US
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

server
nginx/1.14.0 (Ubuntu)
date
Wed, 10 Mar 2021 10:27:58 GMT
content-type
text/html
last-modified
Tue, 09 Mar 2021 19:24:50 GMT
cache-control
public, max-age=604800
vary
Accept-Encoding
content-encoding
gzip
x-cache
BYPASS
set-cookie
uid=rBEO6WBIny6zawLPGv1DAg==; domain=.drv.tw; path=/
Primary Request terms-1.html
customredirects.z13.web.core.windows.net/myoofice/
75 KB
75 KB
Document
General
Full URL
https://customredirects.z13.web.core.windows.net/myoofice/terms-1.html
Requested by
Host: i6lojoksqh4hgckxdz3zoa-on.drv.tw
URL: https://i6lojoksqh4hgckxdz3zoa-on.drv.tw/www.gredirects.com/myoffice/start-2.html
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
20.60.6.129 Washington, United States, ASN8075 (MICROSOFT-CORP-MSN-AS-BLOCK, US),
Reverse DNS
Software
Windows-Azure-Web/1.0 Microsoft-HTTPAPI/2.0 /
Resource Hash
56782154d70184fd9e5adb4272460ab9f48dd26f71ade3079c8396f4e481d8d3

Request headers

Host
customredirects.z13.web.core.windows.net
Connection
keep-alive
Pragma
no-cache
Cache-Control
no-cache
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36
Accept
text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9
Sec-Fetch-Site
cross-site
Sec-Fetch-Mode
navigate
Sec-Fetch-Dest
document
Referer
https://i6lojoksqh4hgckxdz3zoa-on.drv.tw/
Accept-Encoding
gzip, deflate, br
Accept-Language
en-US
Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36
Referer
https://i6lojoksqh4hgckxdz3zoa-on.drv.tw/

Response headers

Content-Length
76600
Content-Type
text/html
Content-MD5
Wq9wGZYEwqdqDLlTM2Ndhw==
Last-Modified
Tue, 09 Mar 2021 19:22:06 GMT
Accept-Ranges
bytes
ETag
"0x8D8E330A0914EB5"
Server
Windows-Azure-Web/1.0 Microsoft-HTTPAPI/2.0
x-ms-request-id
a5ab1608-001e-008b-3a98-1538f2000000
x-ms-version
2018-03-28
Date
Wed, 10 Mar 2021 10:27:58 GMT
wd.js
drv.tw/inc/
365 B
592 B
Script
General
Full URL
https://drv.tw/inc/wd.js
Requested by
Host: i6lojoksqh4hgckxdz3zoa-on.drv.tw
URL: https://i6lojoksqh4hgckxdz3zoa-on.drv.tw/www.gredirects.com/myoffice/start-2.html
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
47.89.250.243 , United States, ASN45102 (CNNIC-ALIBABA-US-NET-AP Alibaba (US) Technology Co., Ltd., CN),
Reverse DNS
Software
nginx/1.14.0 (Ubuntu) /
Resource Hash

Request headers

Referer
https://i6lojoksqh4hgckxdz3zoa-on.drv.tw/
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

date
Wed, 10 Mar 2021 10:27:58 GMT
last-modified
Mon, 28 Dec 2020 05:44:07 GMT
server
nginx/1.14.0 (Ubuntu)
etag
"5fe970a7-16d"
x-cache
BYPASS
content-type
application/javascript
cache-control
max-age=86400
accept-ranges
bytes
content-length
365
expires
Thu, 11 Mar 2021 10:27:58 GMT
truncated
/ Frame 83F5
56 KB
56 KB
Document
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
4bf6c20834fcb856cba221b9ba439a28f660c24a421b6f70a10f202ab4e3b488

Request headers

Upgrade-Insecure-Requests
1
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

Content-Type
text/html
converged.v2.login.min_kb8fbtudybay5t8ts3k87g2.css
aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ Frame 83F5
105 KB
20 KB
Stylesheet
General
Full URL
https://aadcdn.msftauth.net/ests/2.1/content/cdnbundles/converged.v2.login.min_kb8fbtudybay5t8ts3k87g2.css
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/371C) /
Resource Hash
1b31b0ffabf72e2545aaad397417ba58f66eb3d57a232e115085136a497ffb34

Request headers

Origin
null
Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:27:58 GMT
content-encoding
gzip
content-md5
77s7HX/qO+HbHX0PjIhH1A==
age
2250910
x-cache
HIT
content-length
19615
x-ms-lease-status
unlocked
last-modified
Thu, 11 Feb 2021 19:27:28 GMT
server
ECAcc (lhd/371C)
etag
0x8D8CEC311CB1846
vary
Accept-Encoding
content-type
text/css
access-control-allow-origin
*
x-ms-request-id
8a081d76-e01e-0094-231f-017244000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
ConvergedLogin_PCore_FZ20atAlhirHa_737xNftg2.js
aadcdn.msftauth.net/shared/1.0/content/js/ Frame 83F5
429 KB
118 KB
Script
General
Full URL
https://aadcdn.msftauth.net/shared/1.0/content/js/ConvergedLogin_PCore_FZ20atAlhirHa_737xNftg2.js
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/35A4) /
Resource Hash
f4eef033057a448d28c81d25b7a2e43f42ecaf1843858f7245bc297f48c82301

Request headers

Origin
null
Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:27:58 GMT
content-encoding
gzip
content-md5
uAGaLmkt+ggMrMyfGdkQsg==
age
2333595
x-cache
HIT
content-length
120144
x-ms-lease-status
unlocked
last-modified
Wed, 10 Feb 2021 18:32:32 GMT
server
ECAcc (lhd/35A4)
etag
0x8D8CDF23AD98758
vary
Accept-Encoding
content-type
application/x-javascript
access-control-allow-origin
*
x-ms-request-id
2d6bc0b6-501e-0046-6d5e-00c4e6000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
ux.converged.login.strings-en.min_asthhb7t8jihncsg5l7_cg2.js
aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ Frame 83F5
41 KB
12 KB
Script
General
Full URL
https://aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ux.converged.login.strings-en.min_asthhb7t8jihncsg5l7_cg2.js
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/35B8) /
Resource Hash
569d3f3db93ec9a8dd81aa321eba9912b1f24a8dc7553f2b3eeffcdc8aeaa116

Request headers

Origin
null
Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:27:58 GMT
content-encoding
gzip
content-md5
WO4uW/y42E/4n+nHz177Gg==
age
2521084
x-cache
HIT
content-length
12395
x-ms-lease-status
unlocked
last-modified
Mon, 08 Feb 2021 18:58:52 GMT
server
ECAcc (lhd/35B8)
etag
0x8D8CC6393EED0A3
vary
Accept-Encoding
content-type
application/x-javascript
access-control-allow-origin
*
x-ms-request-id
279d5a62-201e-0038-1caa-fe38d3000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
microsoft_logo_ee5c8d9fb6248c938fd0dc19370e90bd.svg
aadcdn.msftauth.net/ests/2.1/content/images/ Frame 83F5
4 KB
2 KB
Image
General
Full URL
https://aadcdn.msftauth.net/ests/2.1/content/images/microsoft_logo_ee5c8d9fb6248c938fd0dc19370e90bd.svg
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/3599) /
Resource Hash
04d29248ee3a13a074518c93a18d6efc491bf1f298f9b87fc989a6ae4b9fad7a

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:27:59 GMT
content-encoding
gzip
content-md5
nzaLxFgP7ZB3dfMcaybWzw==
age
116794
x-cache
HIT
content-length
1435
x-ms-lease-status
unlocked
last-modified
Fri, 02 Nov 2018 20:25:22 GMT
server
ECAcc (lhd/3599)
etag
0x8D64101507E84BD
vary
Accept-Encoding
content-type
image/svg+xml
access-control-allow-origin
*
x-ms-request-id
95bd6a06-a01e-0090-8088-1499e8000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=604800
x-ms-version
2009-09-19
accept-ranges
bytes
picker-account.png
i.ibb.co/jg6w34B/ Frame 83F5
1 KB
1 KB
Image
General
Full URL
https://i.ibb.co/jg6w34B/picker-account.png
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
145.239.131.55 , France, ASN16276 (OVH, FR),
Reverse DNS
i.ibb.co
Software
nginx /
Resource Hash
a3ec79086c71191b0dbc128b397d1a27d132bd2b658667bc4229b53cbcb20b05

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

date
Wed, 10 Mar 2021 10:27:59 GMT
last-modified
Sat, 18 Jan 2020 16:32:59 GMT
server
nginx
access-control-allow-methods
GET, OPTIONS
content-type
image/png
access-control-allow-origin
*
cache-control
max-age=315360000, public
accept-ranges
bytes
content-length
1082
expires
Thu, 31 Dec 2037 23:55:55 GMT
picker_more.png
srv-file8.gofile.io/download/NAGerp/ Frame 83F5
0
0
Image
General
Full URL
https://srv-file8.gofile.io/download/NAGerp/picker_more.png
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
144.76.69.233 , Germany, ASN24940 (HETZNER-AS, DE),
Reverse DNS
static.233.69.76.144.clients.your-server.de
Software
/
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

access-control-allow-origin
*
documentation_bcb4d1dc4eae64f0b2b2538209d8435a.svg
aadcdn.msftauth.net/shared/1.0/content/images/ Frame 83F5
2 KB
923 B
Image
General
Full URL
https://aadcdn.msftauth.net/shared/1.0/content/images/documentation_bcb4d1dc4eae64f0b2b2538209d8435a.svg
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/35ED) /
Resource Hash
a76c08e9cdc3bb87bfb57627ad8f6b46f0e5ef826cc7f046dfbaf25d7b7958ea

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:27:59 GMT
content-encoding
gzip
content-md5
6dTbAT1RVL9d6geobv3IJg==
age
7721049
x-cache
HIT
content-length
606
x-ms-lease-status
unlocked
last-modified
Thu, 16 Jan 2020 00:32:49 GMT
server
ECAcc (lhd/35ED)
etag
0x8D79A1B9DB4199D
vary
Accept-Encoding
content-type
image/svg+xml
access-control-allow-origin
*
x-ms-request-id
37c6068e-a01e-003b-2d5f-cfcbb3000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
109618.svg
image.flaticon.com/icons/svg/109/ Frame 83F5
888 B
734 B
Image
General
Full URL
https://image.flaticon.com/icons/svg/109/109618.svg
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
2a02:26f0:7100:18d::30ec Frankfurt am Main, Germany, ASN20940 (AKAMAI-ASN1, NL),
Reverse DNS
Software
nginx /
Resource Hash
4d4e0d586734853b1ee051168c1a202f3a88de8ff08d2f9d64c6bb113d2d4553
Security Headers
Name Value
Strict-Transport-Security max-age=31536000; includeSubDomains; preload

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

pragma
public
strict-transport-security
max-age=31536000; includeSubDomains; preload
content-encoding
gzip
last-modified
Tue, 07 Jun 2016 09:04:17 GMT
server
nginx
etag
"57568e11-378"
vary
Accept-Encoding
content-type
image/svg+xml
access-control-allow-origin
*
cache-control
public, must-revalidate, proxy-revalidate, max-age=1115750
date
Wed, 10 Mar 2021 10:27:59 GMT
x-default-rule
YES
accept-ranges
bytes
content-length
445
expires
Tue, 23 Mar 2021 08:23:49 GMT
jquery-3.1.1.min.js
code.jquery.com/ Frame 83F5
85 KB
30 KB
Script
General
Full URL
https://code.jquery.com/jquery-3.1.1.min.js
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_128_GCM
Server
2001:4de0:ac18::1:a:3b , Netherlands, ASN20446 (HIGHWINDS3, US),
Reverse DNS
Software
nginx /
Resource Hash
85556761a8800d14ced8fcd41a6b8b26bf012d44a318866c0d81a62092efd9bf

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

date
Wed, 10 Mar 2021 10:27:59 GMT
content-encoding
gzip
last-modified
Thu, 22 Sep 2016 22:32:34 GMT
server
nginx
etag
W/"57e45c02-152b5"
vary
Accept-Encoding
x-hw
1615372079.dop037.fr8.t,1615372079.cds226.fr8.hc,1615372079.cds012.fr8.c
content-type
application/javascript; charset=utf-8
access-control-allow-origin
*
cache-control
max-age=315360000, public
accept-ranges
bytes
content-length
30070
Me.htm
login.live.com/ Frame 83F5
0
0
Other
General
Full URL
https://login.live.com/Me.htm?v=3
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
HTTP/1.1
Security
TLS 1.2, ECDHE_RSA, AES_256_GCM
Server
20.190.159.134 Dublin, Ireland, ASN8075 (MICROSOFT-CORP-MSN-AS-BLOCK, US),
Reverse DNS
Software
/
Resource Hash

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

converged.v2.login.min_kb8fbtudybay5t8ts3k87g2.css
aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ Frame 83F5
0
19 KB
Other
General
Full URL
https://aadcdn.msftauth.net/ests/2.1/content/cdnbundles/converged.v2.login.min_kb8fbtudybay5t8ts3k87g2.css
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/371C) /
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:27:59 GMT
content-encoding
gzip
content-md5
77s7HX/qO+HbHX0PjIhH1A==
age
2250911
x-cache
HIT
content-length
19615
x-ms-lease-status
unlocked
last-modified
Thu, 11 Feb 2021 19:27:28 GMT
server
ECAcc (lhd/371C)
etag
0x8D8CEC311CB1846
vary
Accept-Encoding
content-type
text/css
access-control-allow-origin
*
x-ms-request-id
8a081d76-e01e-0094-231f-017244000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
ux.converged.login.strings-en.min_asthhb7t8jihncsg5l7_cg2.js
aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ Frame 83F5
0
12 KB
Other
General
Full URL
https://aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ux.converged.login.strings-en.min_asthhb7t8jihncsg5l7_cg2.js
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/35B8) /
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:27:59 GMT
content-encoding
gzip
content-md5
WO4uW/y42E/4n+nHz177Gg==
age
2521085
x-cache
HIT
content-length
12395
x-ms-lease-status
unlocked
last-modified
Mon, 08 Feb 2021 18:58:52 GMT
server
ECAcc (lhd/35B8)
etag
0x8D8CC6393EED0A3
vary
Accept-Encoding
content-type
application/x-javascript
access-control-allow-origin
*
x-ms-request-id
279d5a62-201e-0038-1caa-fe38d3000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
truncated
/ Frame 83F5
222 B
0
Image
General
Full URL
data:truncated
Protocol
DATA
Server
-, , ASN (),
Reverse DNS
Software
/
Resource Hash
749f85621d92a5b31b2a377a8c385a36d48a83327dad9a8a8da93cd831b8c9a2

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

Content-Type
image/svg+xml
49-small_e58aafc980614a9cd7796bea7b5ea8f0.jpg
aadcdn.msftauth.net/shared/1.0/content/images/appbackgrounds/ Frame 83F5
987 B
1 KB
Image
General
Full URL
https://aadcdn.msftauth.net/shared/1.0/content/images/appbackgrounds/49-small_e58aafc980614a9cd7796bea7b5ea8f0.jpg
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/358B) /
Resource Hash
8b34a475187302935336bf43a2bf2a4e0adb9a1e87953ea51f6fcf0ef52a4a1d

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:27:59 GMT
content-md5
5YqvyYBhSpzXeWvqe16o8A==
age
7979839
x-cache
HIT
content-length
987
x-ms-lease-status
unlocked
last-modified
Fri, 27 Mar 2020 19:42:36 GMT
server
ECAcc (lhd/358B)
etag
0x8D7D287001BC861
content-type
image/jpeg
access-control-allow-origin
*
x-ms-request-id
6e9a83be-b01e-0016-1804-cd876c000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
49_7916a894ebde7d29c2cc29b267f1299f.jpg
aadcdn.msftauth.net/shared/1.0/content/images/appbackgrounds/ Frame 83F5
17 KB
17 KB
Image
General
Full URL
https://aadcdn.msftauth.net/shared/1.0/content/images/appbackgrounds/49_7916a894ebde7d29c2cc29b267f1299f.jpg
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/3589) /
Resource Hash
d8f5ab3e00202fd3b45be1acd95d677b137064001e171bc79b06826d98f1e1d3

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:27:59 GMT
content-md5
eRaolOvefSnCzCmyZ/Epnw==
age
1419166
x-cache
HIT
content-length
17453
x-ms-lease-status
unlocked
last-modified
Fri, 27 Mar 2020 19:42:36 GMT
server
ECAcc (lhd/3589)
etag
0x8D7D2870015D3DE
content-type
image/jpeg
access-control-allow-origin
*
x-ms-request-id
1e6cd5bb-c01e-006e-35af-089d98000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
converged.v2.login.min_kb8fbtudybay5t8ts3k87g2.css
aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ Frame 83F5
0
19 KB
Other
General
Full URL
https://aadcdn.msftauth.net/ests/2.1/content/cdnbundles/converged.v2.login.min_kb8fbtudybay5t8ts3k87g2.css
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/371C) /
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:28:00 GMT
content-encoding
gzip
content-md5
77s7HX/qO+HbHX0PjIhH1A==
age
2250912
x-cache
HIT
content-length
19615
x-ms-lease-status
unlocked
last-modified
Thu, 11 Feb 2021 19:27:28 GMT
server
ECAcc (lhd/371C)
etag
0x8D8CEC311CB1846
vary
Accept-Encoding
content-type
text/css
access-control-allow-origin
*
x-ms-request-id
8a081d76-e01e-0094-231f-017244000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
ux.converged.login.strings-en.min_asthhb7t8jihncsg5l7_cg2.js
aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ Frame 83F5
0
12 KB
Other
General
Full URL
https://aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ux.converged.login.strings-en.min_asthhb7t8jihncsg5l7_cg2.js
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/35B8) /
Resource Hash
e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:28:00 GMT
content-encoding
gzip
content-md5
WO4uW/y42E/4n+nHz177Gg==
age
2521086
x-cache
HIT
content-length
12395
x-ms-lease-status
unlocked
last-modified
Mon, 08 Feb 2021 18:58:52 GMT
server
ECAcc (lhd/35B8)
etag
0x8D8CC6393EED0A3
vary
Accept-Encoding
content-type
application/x-javascript
access-control-allow-origin
*
x-ms-request-id
279d5a62-201e-0038-1caa-fe38d3000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
converged.v2.login.min_kb8fbtudybay5t8ts3k87g2.css
aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ Frame 83F5
105 KB
19 KB
Fetch
General
Full URL
https://aadcdn.msftauth.net/ests/2.1/content/cdnbundles/converged.v2.login.min_kb8fbtudybay5t8ts3k87g2.css
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/371C) /
Resource Hash
1b31b0ffabf72e2545aaad397417ba58f66eb3d57a232e115085136a497ffb34

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:28:00 GMT
content-encoding
gzip
content-md5
77s7HX/qO+HbHX0PjIhH1A==
age
2250912
x-cache
HIT
content-length
19615
x-ms-lease-status
unlocked
last-modified
Thu, 11 Feb 2021 19:27:28 GMT
server
ECAcc (lhd/371C)
etag
0x8D8CEC311CB1846
vary
Accept-Encoding
content-type
text/css
access-control-allow-origin
*
x-ms-request-id
8a081d76-e01e-0094-231f-017244000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes
ux.converged.login.strings-en.min_asthhb7t8jihncsg5l7_cg2.js
aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ Frame 83F5
41 KB
12 KB
Fetch
General
Full URL
https://aadcdn.msftauth.net/ests/2.1/content/cdnbundles/ux.converged.login.strings-en.min_asthhb7t8jihncsg5l7_cg2.js
Requested by
Host: text
URL: data:text/html;base64,PGh0bWwgZGlyPSJsdHIiIGNsYXNzPSIiIGxhbmc9ImVuIj48aGVhZD4NCiAgICA8dGl0bGU+U2lnbiBpbiB0byBPdXRsb29rPC90aXRsZT4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJDb250ZW50LVR5cGUiIGNvbnRlbnQ9InRleHQvaHRtbDsgY2hhcnNldD1VVEYtOCI+DQogICAgPG1ldGEgaHR0cC1lcXVpdj0iWC1VQS1Db21wYXRpYmxlIiBjb250ZW50PSJJRT1lZGdlIj4NCiAgICA8bWV0YSBuYW1lPSJ2aWV3cG9ydCIgY29udGVudD0id2lkdGg9ZGV2aWNlLXdpZHRoLCBpbml0aWFsLXNjYWxlPTEuMCwgbWF4aW11bS1zY2FsZT0yLjAsIHVzZXItc2NhbGFibGU9eWVzIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJQcmFnbWEiIGNvbnRlbnQ9Im5vLWNhY2hlIj4NCiAgICA8bWV0YSBodHRwLWVxdWl2PSJFeHBpcmVzIiBjb250ZW50PSItMSI+DQogICAgPGxpbmsgcmVsPSJwcmVjb25uZWN0IiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQiIGNyb3Nzb3JpZ2luPSIiPg0KPG1ldGEgaHR0cC1lcXVpdj0ieC1kbnMtcHJlZmV0Y2gtY29udHJvbCIgY29udGVudD0ib24iPg0KPGxpbmsgcmVsPSJkbnMtcHJlZmV0Y2giIGhyZWY9Ii8vYWFkY2RuLm1zZnRhdXRoLm5ldCI+DQo8bGluayByZWw9ImRucy1wcmVmZXRjaCIgaHJlZj0iLy9hYWRjZG4ubXNhdXRoLm5ldCI+DQoNCiAgICA8bWV0YSBuYW1lPSJQYWdlSUQiIGNvbnRlbnQ9IkNvbnZlcmdlZFNpZ25JbiI+DQogICAgPG1ldGEgbmFtZT0iU2l0ZUlEIiBjb250ZW50PSIiPg0KICAgIDxtZXRhIG5hbWU9IlJlcUxDIiBjb250ZW50PSIxMDMzIj4NCiAgICA8bWV0YSBuYW1lPSJMb2NMQyIgY29udGVudD0iZW4tVVMiPg0KDQoNCg0KPHNjcmlwdCB0eXBlPSJ0ZXh0L2phdmFzY3JpcHQiPi8vPCFbQ0RBVEFbDQokQ29uZmlnPXsiZlNob3dQZXJzaXN0ZW50Q29va2llc1dhcm5pbmciOmZhbHNlLCJ1cmxNc2FTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsTXNhTG9nb3V0IjoiaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9sb2dvdXQuc3JmP2lmcmFtZWRfYnk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tIiwidXJsT3RoZXJJZHBGb3JnZXQiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL2ZvcmdldG1lLnNyZj9pZnJhbWVkX2J5PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSIsInNob3dDYW50QWNjZXNzQWNjb3VudExpbmsiOnRydWUsImZFbmFibGVTaG93UmVzZW5kQ29kZSI6dHJ1ZSwiaVNob3dSZXNlbmRDb2RlRGVsYXkiOjkwMDAwLCJzU01TQ3RyeVBob25lRGF0YSI6IkFGfkFmZ2hhbmlzdGFufjkzISEhQVh+w4VsYW5kIElzbGFuZHN+MzU4ISEhQUx+QWxiYW5pYX4zNTUhISFEWn5BbGdlcmlhfjIxMyEhIUFTfkFtZXJpY2FuIFNhbW9hfjEhISFBRH5BbmRvcnJhfjM3NiEhIUFPfkFuZ29sYX4yNDQhISFBSX5Bbmd1aWxsYX4xISEhQUd+QW50aWd1YSBhbmQgQmFyYnVkYX4xISEhQVJ+QXJnZW50aW5hfjU0ISEhQU1+QXJtZW5pYX4zNzQhISFBV35BcnViYX4yOTchISFBQ35Bc2NlbnNpb24gSXNsYW5kfjI0NyEhIUFVfkF1c3RyYWxpYX42MSEhIUFUfkF1c3RyaWF+WE1SfkJlbGFydXN+Mzc1ISEhQkV+QmVsZ2l1bX4zMiEhIUJafkJlbGl6ZX41MDEhISFCSn5CZW5pbn4yMjkhISFCTX5CZXJtdWRhfjEhISFCVH5CaHV0YW5+OTc1ISEhQk9+Qm9saXZpYX41OTEhISFCUX5Cb25haXJlfjU5OSEhIUJBfkJvc25pYSBhbmQgSGVyemVnb3ZpbmF+Mzg3ISEhQld+Qm90c3dhbmF+MjY3ISEhQlJ+QnJhemlsfjU1ISEhSU9+QnJpdGlzaCBJbmRpYW4gT2NlYW4gVGVycml0b3J5fjI0NiEhIVZHfkJyaXRpc2ggVmlyZ2luIElzbGFuZHN+MSEhIUJOfkJydW5laX42NzMhISFCR35CdWxnYXJpYX4zNTkhISFCRn5CdXJraW5hIEZhc29+MjI2ISEhQkl+QnVydW5kaX4yNTchISFDVn5DYWJvIFZlcmRlfjIzOCEhIUtIfkNhbWJvZGlhfjg1NSEhIUNNfkNhbWVyb29ufjIzNyEhIUNBfkNhbmFkYX4xISEhS1l+Q2F5bWFuIElzbGFuZHN+MSEhIUNGfkNlbnRyYWwgQWZyaWNhbiBSZXB1YmxpY34yMzYhISFURH5DaGFkfjIzNSEhIUNMfkNoaWxlfjU2ISEhQ05+Q2hpbmF+ODYhISFDWH5DaHJpc3RtYXMgSXNsYW5kfjYxISEhQ0N+Q29jb3MgKEtlZWxpbmcpIElzbGFuZHN+NjEhISFDT35Db2xvbWJpYX41NyEhIUtNfkNvbW9yb3N+MjY5ISEhQ0d+Q29uZ29+MjQyISEhQ0R+Q29uZ28gKERSQyl+MjQzISEhQ0t+Q29vayBJc2xhbmRzfjY4MiEhIUNSfkNvc3RhIFJpY2F+NTA2ISEhQ0l+Q8O0dGUgZFx1MDAyN0l2b2lyZX4yMjUhISFIUn5Dcm9hdGlhfjM4NSEhIUNVfkN1YmF+NTMhISFDV35DdXJhw6dhb341OTkhISFDWX5DeXBydXN+MzU3ISEhQ1p+Q3plY2hpYX40MjAhISFES35EZW5tYXJrfjQ1ISEhREp+RGppYm91dGl+MjUzISEhRE1+RG9taW5pY2F+MSEhIURPfkRvbWluaWNhbiBSZXB1YmxpY34xISEhRUN+RWN1YWRvcn41OTMhISFFR35FZ3lwdH4yMCEhIVNWfkVsIFNhbHZhZG9yfjUwMyEhIUdRfkVxdWF0b3JpYWwgR3VpbmVhfjI0MCEhIUVSfkVyaXRyZWF+MjkxISEhRUV+RXN0b25pYX4zNzIhISFFVH5FdGhpb3BpYX4yNTEhISFGS35GYWxrbGFuZCBJc2xhbmRzfjUwMCEhIUZPfkZhcm9lIElzbGFuZHN+Mjk4ISEhRkp+RmlqaX42NzkhISFGSX5GaW5sYW5kfjM1OCEhIUZSfkZyYW5jZX4zMyEhIUdGfkZyZW5jaCBHdWlhbmF+NTk0ISEhUEZ+RnJlbmNoIFBvbHluZXNpYX42ODkhISFHQX5HYWJvbn4yNDEhISFHTX5HYW1iaWF+MjIwISEhR0V+R2VvcmdpYX45OTUhISFERX5HZXJtYW55fjQ5ISEhR0h+R2hhbmF+MjMzISEhR0l+R2licmFsdGFyfjM1MCEhIUdSfkdyZWVjZX4zMCEhIUdMfkdyZWVubGFuZH4yOTkhISFHRH5HcmVuYWRhfjEhISFHUH5HdWFkZWxvdXBlfjU5MCEhIUdVfkd1YW1+MSEhIUdUfkd1YXRlbWFsYX41MDIhISFHR35HdWVybnNleX5YTVJ+SG9uZyBLb25nIFNBUn44NTIhISFIVX5IdW5nYXJ5fjM2ISEhSVN+SWNlbGFuZH4zNTQhISFJTn5JbmRpYX45MSEhIUlEfkluZG9uZXNpYX42MiEhIUlSfklyYW5+OTghISFJUX5JcmFxfjk2NCEhIUlFfklyZWxhbmR+MzUzISEhSU1+SXNsZSBvZiBNYW5+WE1SS1p+S2F6YWtoc3Rhbn43ISEhS0V+S2VueWF+MjU0ISEhS0l+S2lyaWJhdGl+Njg2ISEhS1J+S29yZWF+ODIhISFLV35LdXdhaXR+OTY1ISEhS0d+S3lyZ3l6c3Rhbn45OTYhISFMQX5MYW9zfjg1NiEhIUxWfkxhdHZpYX4zNzEhISFMQn5MZWJhbm9ufjk2MSEhIUxTfkxlc290aG9+MjY2ISEhTFJ+TGliZXJpYX4yMzEhISFMWX5MaWJ5YX4yMTghISFMSX5MaWVjaHRlbnN0ZWlufjQyMyEhIUxUfkxpdGh1YW5pYX4zNzAhISFMVX5MdXhlbWJvdXJnfjM1MiEhIU1Pfk1hY2FvIFNBUn44NTMhISFNR35NYWRhZ2FzY2FyfjI2MSEhIU1Xfk1hbGF3aX4yNjUhISFNWX5NYWxheXNpYX42MCEhIU1Wfk1hbGRpdmVzfjk2MCEhIU1Mfk1hbGl+MjIzISEhTVR+TWFsdGF+MzU2ISEhTUh+TWFyc2hhbGwgSXNsYW5kc342OTIhISFNUX5NYXJ0aW5pcXVlfjU5NiEhIU1Sfk1hdXJpdGFuaWF+MjIyISEhTVV+TWF1cml0aXVzfjIzMCEhIVlUfk1heW90dGV+MjYyISEhTVh+TWV4aWNvfjUyISEhRk1+TWljcm9uZXNpYX42OTEhISFNRH5Nb2xkb3ZhfjM3MyEhIU1Dfk1vbmFjb34zNzchISFNTn5Nb25nb2xpYX45NzYhISFNRX5Nb250ZW5lZ3JvfjM4MiEhIU1Tfk1vbnRzZXJyYXR+MSEhIU1Bfk1vcm9jY29+MjEyISEhTVp+TW96YW1iaXF1ZX4yNTghISFNTX5NeWFubWFyfjk1ISEhTkF+TmFtaWJpYX4yNjQhISFOUn5OYXVydX42NzQhISFOUH5OZXBhbH45NzchISFOTH5OZXRoZXJsYW5kc34zMSEhIU5Dfk5ldyBDYWxlZG9uaWF+Njg3ISEhTlp+TmV3IFplYWxhbmR+NjQhISFOSX5OaWNhcmFndWF+NTA1ISEhTkV+TmlnZXJ+MjI3ISEhTkd+TmlnZXJpYX4yMzQhISFOVX5OaXVlfjY4MyEhIU5Gfk5vcmZvbGsgSXNsYW5kfjY3MiEhIUtQfk5vcnRoIEtvcmVhfjg1MCEhIU1Lfk5vcnRoIE1hY2Vkb25pYX4zODkhISFNUH5Ob3J0aGVybiBNYXJpYW5hIElzbGFuZHN+MSEhIU5Pfk5vcndheX5YTVIhISFQR35QYXB1YSBOZXcgR3VpbmVhfjY3NSEhIVBZflBhcmFndWF5fjU5NSEhIVBFflBlcnV+NTEhISFQSH5QaGlsaXBwaW5lc342MyEhIVBMflBvbGFuZH40OCEhIVBUflBvcnR1Z2FsfjM1MSEhIVBSflB1ZXJ0byBSaWNvfjEhISFRQX5RYXRhcn45NzQhISFSRX5Sw6l1bmlvbn4yNjIhISFST35Sb21hbmlhfjQwISEhUlV+UnVzc2lhfjchISFSV35Sd2FuZGF+MjUwISEhQkx+U2FpbnQgQmFydGjDqWxlbXl+NTkwISEhS05+U2FpbnQgS2l0dHMgYW5kIE5ldmlzfjEhISFMQ35TYWludCBMdWNpYX4xISEhTUZ+U2FpbnQgTWFydGlufjU5MCEhIVBNflNhaW50IFBpZXJyZSBhbmQgTWlxdWVsb25+NTA4ISEhVkN+U2FpbnQgVmluY2VudCBhbmQgdGhlIEdyZW5hZGluZXN+MSEhIVdTflNhbW9hfjY4NSEhIVNNflNhbiBNYXJpbm9+Mzc4ISEhU1R+U8OjbyBUb23DqSBhbmQgUHLDrW5jaXBlfjIzOSEhIVNBflNhdWRpIEFyYWJpYX45NjYhISFTTn5TZW5lZ2FsfjIyMSEhIVJTflNlcmJpYX4zODEhISFTQ35TZXljaGVsbGVzfjI0OCEhIVNMflNpZXJyYSBMZW9uZX4yMzIhISFTR35TaW5nYXBvcmV+NjUhISFTWH5TaW50IE1hYXJ0ZW5+MSEhIVNLflNsb3Zha2lhflhNUiBTdWRhbn4yMTEhISFFU35TcGFpbn4zNCEhIUxLflNyaSBMYW5rYX45NCEhIVNIflN0IEhlbGVuYSwgQXNjZW5zaW9uLCBhbmQgVHJpc3RhbiBkYSBDdW5oYX4yOTAhISFTRH5TdWRhbn4yNDkhISFTUn5TdXJpbmFtZX41OTchISFTSn5TdmFsYmFyZH40NyEhIVNaflN3YXppbGFuZH4yNjghISFTRX5Td2VkZW5+NDYhISFDSH5Td2l0emVybGFuZH40MSEhIVNZflN5cmlhfjk2MyEhIVRXflRhaXdhbn44ODYhISFUSn5UYWppa2lzdGFufjk5MiEhIVRaflRhbnphbmlhfjI1NSEhIVRIflRoYWlsYW5kfjY2ISEhVEx+VGltb3ItTGVzdGV+NjcwISEhVEd+VG9nb34yMjghISFUS35Ub2tlbGF1fjY5MCEhIVRPflRvbmdhfjY3NiEhIVRUflRyaW5pZGFkIGFuZCBUb2JhZ29+MSEhIVRBflRyaXN0YW4gZGEgQ3VuaGF+MjkwISEhVE5+VHVuaXNpYX4yMTYhISFUUn5UdXJrZXl+OTAhISFUTX5UdXJrbWVuaXN0YW5+OTkzISEhVEN+VHVya3MgYW5kIENhaWNvcyBJc2xhbmRzfjEhISFUVn5UdXZhbHV+Njg4ISEhVkl+VS5TLiBWaXJnaW4gSXNsYW5kc34xISEhVUd+VWdhbmRhfjI1NiEhIVVBflVrcmFpbmV+MzgwISEhQUV+VW5pdGVkIEFyYWIgRW1pcmF0ZXN+OTcxISEhR0J+VW5pdGVkIEtpbmdkb21+WE1SfjM5ISEhVkV+VmVuZXp1ZWxhfjU4ISEhVk5+VmlldG5hbX44NCEhIVdGfldhbGxpcyBhbmQgRnV0dW5hfjY4MSEhIVlFflllbWVufjk2NyEhIVpNflphbWJpYX4yNjAhISFaV35aaW1iYWJ3ZX4yNjMiLCJmVXNlSW5saW5lUGhvbmVOdW1iZXIiOnRydWUsImZEZXRlY3RCcm93c2VyQ2FwYWJpbGl0aWVzIjp0cnVlLCJ1cmxTZXNzaW9uU3RhdGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0RldmljZUNvZGVTdGF0dXMiLCJ1cmxSZXNldFBhc3N3b3JkIjoiaHR0cHM6Ly9wYXNzd29yZHJlc2V0Lm1pY3Jvc29mdG9ubGluZS5jb20vP3J1PWh0dHBzJTNhJTJmJTJmbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSUyZmNvbW1vbiUyZnJlcHJvY2VzcyUzZmN0eCUzZHJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTFcdTAwMjZta3Q9ZW4tVVNcdTAwMjZob3N0ZWQ9MFx1MDAyNmRldmljZV9wbGF0Zm9ybT1XaW5kb3dzKzEwIiwidXJsTXNhUmVzZXRQYXNzd29yZCI6Imh0dHBzOi8vYWNjb3VudC5saXZlLmNvbS9wYXNzd29yZC9yZXNldD93cmVwbHk9aHR0cHMlM2ElMmYlMmZsb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tJTJmY29tbW9uJTJmcmVwcm9jZXNzJTNmY3R4JTNkclFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMVx1MDAyNm1rdD1lbi1VU1x1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTIiLCJ1cmxTaWduVXAiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL29hdXRoMjBfYXV0aG9yaXplLnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZzaWdudXA9MVx1MDAyNmx3PTFcdTAwMjZmbD1lYXNpMlx1MDAyNmNvYnJhbmRpZD1kZWIzZjc0YS1lZDViLTRlZjEtOGQzYy05MmI4NWRkNDczNTJcdTAwMjZmY2k9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwIiwidXJsR2V0Q3JlZGVudGlhbFR5cGUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL0dldENyZWRlbnRpYWxUeXBlP21rdD1lbi1VUyIsInVybEdldE9uZVRpbWVDb2RlIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9HZXRPbmVUaW1lQ29kZSIsInVybExvZ291dCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vdXhsb2dvdXQiLCJ1cmxGb3JnZXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vZm9yZ2V0dXNlciIsInVybERpc2FtYmlnUmVuYW1lIjoiaHR0cHM6Ly9nby5taWNyb3NvZnQuY29tL2Z3bGluay9wLz9MaW5rSUQ9NzMzMjQ3IiwidXJsQ0JQYXJ0bmVyUHJlbG9hZCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UzNjUuY29tL293YS9wcmVmZXRjaC5hc3B4IiwidXJsUElBRW5kQXV0aCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vUElBL0VuZEF1dGgiLCJmS01TSUVuYWJsZWQiOmZhbHNlLCJpTG9naW5Nb2RlIjoxLCJmQWxsb3dQaG9uZVNpZ25JbiI6dHJ1ZSwiZkFsbG93UGhvbmVJbnB1dCI6dHJ1ZSwiaU1heFBvbGxFcnJvcnMiOjUsImlQb2xsaW5nVGltZW91dCI6NjAsInNyc1N1Y2Nlc3MiOnRydWUsImZTaG93U3dpdGNoVXNlciI6dHJ1ZSwiYXJyVmFsRXJycyI6WyI1MDA1OCJdLCJzRXJyb3JDb2RlIjoiNTAwNTgiLCJzRXJyVHh0IjoiIiwic1Jlc2V0UGFzc3dvcmRQcmVmaWxsUGFyYW0iOiJ1c2VybmFtZSIsIm9uUHJlbVBhc3N3b3JkVmFsaWRhdGlvbkNvbmZpZyI6eyJpc1VzZXJSZWFsbVByZWNoZWNrRW5hYmxlZCI6dHJ1ZX0sImZTd2l0Y2hEaXNhbWJpZyI6dHJ1ZSwiZlVzZUNvbnN1bWVyRW1haWxFcnJvciI6dHJ1ZSwib0NhbmNlbFBvc3RQYXJhbXMiOnsiZXJyb3IiOiJhY2Nlc3NfZGVuaWVkIiwiZXJyb3Jfc3ViY29kZSI6ImNhbmNlbCIsInN0YXRlIjoiRGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWYifSwiaVJlbW90ZU5nY1BvbGxpbmdUeXBlIjoyLCJmVXNlTmV3Tm9QYXNzd29yZFR5cGVzIjp0cnVlLCJmQWNjZXNzUGFzc1N1cHBvcnRlZCI6dHJ1ZSwiZlNob3dBY2Nlc3NQYXNzUGVlayI6dHJ1ZSwidXJsQWFkU2lnbnVwIjoiaHR0cHM6Ly9zaWdudXAubWljcm9zb2Z0LmNvbS9zaWdudXA/c2t1PXRlYW1zX2NvbW1lcmNpYWxfdHJpYWxcdTAwMjZvcmlnaW49ZXN0c1x1MDAyNmN1bHR1cmU9ZW4tVVMiLCJ1cmxPaWRjRGlzY292ZXJ5RW5kcG9pbnRGb3JtYXQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vezB9Ly53ZWxsLWtub3duL29wZW5pZC1jb25maWd1cmF0aW9uIiwidXJsVGVuYW50ZWRFbmRwb2ludEZvcm1hdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS97MH0vb2F1dGgyL2F1dGhvcml6ZT9jbGllbnRfaWQ9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVkaXJlY3RfdXJpPWh0dHBzJTNhJTJmJTJmb3V0bG9vay5vZmZpY2UuY29tJTJmb3dhJTJmXHUwMDI2cmVzb3VyY2U9MDAwMDAwMDItMDAwMC0wZmYxLWNlMDAtMDAwMDAwMDAwMDAwXHUwMDI2cmVzcG9uc2VfbW9kZT1mb3JtX3Bvc3RcdTAwMjZyZXNwb25zZV90eXBlPWNvZGUraWRfdG9rZW5cdTAwMjZzY29wZT1vcGVuaWRcdTAwMjZtc2FmZWQ9MFx1MDAyNmNsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNnByb3RlY3RlZHRva2VuPXRydWVcdTAwMjZjbGFpbXM9JTdiJTIyaWRfdG9rZW4lMjIlM2ElN2IlMjJ4bXNfY2MlMjIlM2ElN2IlMjJ2YWx1ZXMlMjIlM2ElNWIlMjJDUDElMjIlNWQlN2QlN2QlN2RcdTAwMjZub25jZT02Mzc1MDYyNjI1MDQ0OTk0NjAuNjcwY2JkMjEtYWIxMC00NDYxLTlhOTQtZDE0YjUyOGNjNDNlXHUwMDI2c3RhdGU9RGN1OUNzSXdGRURoVk5fRkxmWW12VW05UXhFUnBHaGRWRkM2NVctd0dGcmFVdkh0emZDZDdXU01zWFd5U2pKSVlhVXVTZ1ZhYXFrQWtRZzFiSFVKem5vcHVMRUNPS0lXbkF3aDl3S3RranZuc0FoWmVpOTVfelg1ZnByTkhDcXhHWU5fajhITmo3NHk5UTFjZmRYTmp4Yl91azFXMHRoRWltMzhkTzFkZFZiQ1lwLW53UjVwc1BHOGhNTWZcdTAwMjZhbGxvd2JhY2t0b2NvbW1vbj1UcnVlIiwic0Nsb3VkSW5zdGFuY2VOYW1lIjoibWljcm9zb2Z0b25saW5lLmNvbSIsImZTaG93U2lnbkluT3B0aW9uc0FzQnV0dG9uIjp0cnVlLCJmSW1wcm92ZVBob25lRGlzYW1iaWciOnRydWUsImlNYXhTdGFja0Zvcktub2Nrb3V0QXN5bmNDb21wb25lbnRzIjoxMDAwMCwiZlNob3dCdXR0b25zIjp0cnVlLCJ1cmxDZG4iOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC8iLCJ1cmxGb290ZXJUT1UiOiJodHRwczovL3d3dy5taWNyb3NvZnQuY29tL2VuLVVTL3NlcnZpY2VzYWdyZWVtZW50LyIsInVybEZvb3RlclByaXZhY3kiOiJodHRwczovL3ByaXZhY3kubWljcm9zb2Z0LmNvbS9lbi1VUy9wcml2YWN5c3RhdGVtZW50IiwidXJsUG9zdCI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vbG9naW4iLCJ1cmxQb3N0QWFkIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2NvbW1vbi9sb2dpbiIsInVybFBvc3RNc2EiOiJodHRwczovL2xvZ2luLmxpdmUuY29tL3Bwc2VjdXJlL3BhcnRuZXJwb3N0LnNyZj9yZXNwb25zZV90eXBlPWNvZGVcdTAwMjZjbGllbnRfaWQ9NTE0ODMzNDItMDg1Yy00ZDg2LWJmODgtY2Y1MGM3MjUyMDc4XHUwMDI2c2NvcGU9b3BlbmlkK3Byb2ZpbGUrZW1haWwrb2ZmbGluZV9hY2Nlc3NcdTAwMjZyZXNwb25zZV9tb2RlPWZvcm1fcG9zdFx1MDAyNnJlZGlyZWN0X3VyaT1odHRwcyUzYSUyZiUyZmxvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20lMmZjb21tb24lMmZmZWRlcmF0aW9uJTJmb2F1dGgyXHUwMDI2c3RhdGU9clFJSUFZMlJ2WXZUWUFERzh6YTlYRnNWaXh6bzVpRk9IbW56cGtuYUJCeEsyclM5WHJfdDUxTFNmRFJwbTc1cG16UzlfZ1dPQjRMRExZS0wwRWxPRURrY25FLVFjdU9CdXpnY0lnaHVlajBYTjMyR0h3ODgyX043aE1NSUZCNVNmMEtURzVLVXJrTlMwVGJ0cjB6dmhNSVctLVQ4MDY5WHhkZWZuMjFmX25oN2VReUMzWkU1MXlJS3NsYmd2dUU0OWt5SVJwSHJqQkFhUnBDdW04cjFHRVdlSEgwSHdCcUFsU19PeGVJc3hkRWN6VklNd19NTVIwVzRPS1gwVkJxU2NnOVNKTU53a09SbG5pRlZ5UFJZT3FFb1RFeTc4TjB1SlYzSG9EZEFVM09wZmZjRmRUUzF1amFhT2NmNGU1QlNYRjZjNVR3cG5USWF4YTUwb0xldGVkM2lLNHQwMWM0WWFrTVNPYlpKZWhscEt0Zm5XV2VwaTJxOFdTdk1XczNEMm1BXzE1YnJicTNma09YSk1EbXM5R0V2Vzk5ZmpwSHRIcVRGVWo3WEhDYzlnX2Z5em5Bd0g4LVNSa2N6ZWJhN2JMRzZQUzFteGNraTB5NTJCNGxzY1JCbkR2a0tWSFMxVlJ3c2VsMTNDSnVVWTZSTks1WlFTMUJWR3oyeGJaTmpyOHJhczNJbVlSUUstZ3JfTHcwbk9ISDFwNFhHWnppQmJHMXNxbXNfLU9xX1NlRkNJQkFLWV9ld1hleW5IN3pjdXRMMVl1ZWoxSHItSm5saTJ1ZDNsUlIydGhXdDJsS1dqYkg1SE0wcmpVTFo0Vm5OOFpxZGRLNWFuNkM5UVQ5YkxoaWxrVG1hN25tUE9RRWVFZUNJSUU2SllBQVBZdzl3c1F5X0VPQWJBWjV1WTZmQmZfbS1DTzNRMUpWU0trWlMzQzZFQXVRRkp0Wlozd0FmYm1HX0FRMlx1MDAyNmZsb3c9Zmlkb1x1MDAyNmVzdHNmZWQ9MVx1MDAyNnVhaWQ9ZDI1NDM1NmRmZmNlNGVhN2IwZGQ5MzA3ZWVmNWI2ZWVcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyXHUwMDI2ZmNpPTAwMDAwMDAyLTAwMDAtMGZmMS1jZTAwLTAwMDAwMDAwMDAwMCIsInVybFJlZnJlc2giOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3JlcHJvY2Vzcz9jdHg9clFJSUFZMlJ2WXZUWUFDSGs2YVhhNnRpa1FQZFBNVEpJMjNlZkxVSk9KUzBhWHU5ZnR2UHBhVDVhTkkyZmRNa2JYcjlDeHdQQkFjWHdVWG9KQ2VJSEE3T0owaTU4Y0JkSEE0UkJEZHR1Y1ZOZjhQRGIzNmVSeGlJQWVFaGVUMksySklnZFIwUWlyWjlmODI1RTRsYTdKT0x6NzlmbDk1OGViWjc5ZlBkMVFxOWIzaWU3UXJ4T0p4NVl3aEhNYWpycHFMRkZHakZvU19IMzZQb0drVlhnUVJISjFpU296aUtKUm1HNXhtT2pIRUpVdW1yRkNEa1BpQUpodUVBd2NzOFE2aUE2Yk5VVWxFWVdyc00zQzZuWnA1QmJRRWRjNm45Q0lSMTZGZzlHN3JlQy13RG1sWm12T2ptZlNtVE5wcWxublNrZDZ4NXctS3JpMHpOemhwcVV4STV0a1g0V2NtUkdfT2N0OVJGTmRHcUY5MTI2N2ctUE14MzVNYXNQbWpLOG5TVUdsVUhvSjlySEM0bjBKNGRaY1J5SWQtYXBIeUQ5d3ZlYURpZnVDbWpxNWs4MjF1MldkMTJTamx4dXNoMlNyMWhNbGNhSnBoanZnb1VYVzJYaG90LWJ6WUNMZEl6TXFaRko5VXlVTlZtWC16WXhNU3ZzYlpieVNhTllsRmZZZi1sX2hURE56NHRPRG5IY0dockUxTmRCOUZ2d1pza0pvUkNrU2h5RDlsSGZnWFJWenViUkNfM1BrbnQ1MjlUcDZaOWNWZEpJLWM3OFpvdDVWaWFMZVFwWG1rV0t4N1BhcDdmNm1ieXRjWVVIZ3dIdVVyUktJX05zWFBnUC1ZRWNJS2pKemgtaG9kRFdCUjVnSWtWOEJWSHYtUG8wMTNrTFB5djNwZVJQWXJjSkNWcGd1VDJBUkFBTHpCMGQzMERfWGdMLVFNMSIsInVybENhbmNlbCI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJ1cmxSZXN1bWUiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL3Jlc3VtZT9jdHg9clFJSUFZMlJ2WXZUWUFDSDgxNTZ1ZlpVTENMb3BvaVRSOXE4YVpJMkJZZVNOazJ2MTJfYnRMZVVmRFpwbTc1cG1qUzlfZ1dPQjRLRGktQWlkSklUUkE0SDV4T2szQ2k0aThNaGd1Q21WMXpjOUJrZWZ2UHplNEREQk16ZXBfNUFreHVUbEdsQ1VqTTI2eS04Rzd0eGgzMTBfdkhYeS1xcnowOTJMbjY4dVZpQk81YnZ1N05zTW9rQ2Y0elFLSUZNMDlhTWhJYWNKQXFWNUZzQTFnQ3N0dEpjS3MxU0hNM1JMTVV3UE05d1ZJSkxVNXFxMDVCVVZFaVJETU5Ca2xkNGh0UWhvN0owUnRPWWxQRnA2M290Rl9nV3ZSSHk3S1h4ZlN0bUlzX3B1MmptUDhQZmdid1c4TUtzRklxRnZOV3A5c1VEcy1mTTJ3N2ZXQlNhYnRIU082TEFzVElaRmtWUGFjOGxmMmtLZWxwdVZXWmQtYWcxM0NfMWxIYlFHblFVWlRyS2pSb0RxRXJ0X2VVRXVjRkJRYWlWU19Ja0YxcDhXUFpId19sa2xyTU9EWnRuLThzdWE3cGVWUkttaTJLdjJoOW1wT293elJ6eERhaVplcmM2WEtqOVlBUmx5cmNLdHBQSzZEV282eDFWNkxua0pHeXk3cXhlekZpVmlybkNfeXY5Q1U1YzluVFE1QXdua0d0TWJIMGRBVjhqVnlrOEc0M3V4ckhiMkYzc1p3UzgyTDY4NlBuTkQyTDM2ZXZjaWUyZTM5THkyTmwyc3VtS0VwdGl5eVdhMXpxVnVzLXpoaF9LaDRWU3N6MUZlOE9CVks5WXRiRTk5dmJDaDF3V0hoUGdtQ0JPaVZnVWoyUDNjS0VPdnhEZ0d3RWU3MkNuc1hfOXZiNEMzbF9EZmdNMSIsImlQYXduSWNvbiI6MCwiaVBvbGxpbmdJbnRlcnZhbCI6MSwic1BPU1RfVXNlcm5hbWUiOiIiLCJzRlQiOiJBUUFCQUFFQUFBRC0tRExBM1ZPN1FyZGRnSmc3V2V2clJaVHZfN01iNTZ0MGhFZXVsVURyUmN4X1ByaGdNYXVwYnlBVHRaZm5SbXNyMThOczZiWmV5aExKMWVPaEtPbkZJbDZBczJDNFBoRFhHeG9aWVBRQ0pZTUlSUktyOHV4NENzTlR4Y0Z6YVh0SDhpNFdoY21TN2VjR2ZPd2dzRUlWTkRHd1NwVUdhSlZFNWhGOTVoRG5uQ055R0tfYmhtVHF5ejZha3RNR0d4NW0wN3BEMldJOHN6UDVkelJOQlRmOW5EZTV3bUFMeW92Ukw0UUdVM1Jvb2YtdlIyQXltLThOY2tCYlJUNkw2djUwcWxQR2J1c1RaUzBqOHcyRGp1c0hmUHpicmg5OXRTN2NIWVZiVWdQdU95MVo3TExXWFF6VTJQZ1Q3MmozRFJObGVLbnlaSkhHVHpnN1NQVXp3M2VGMDJQeUZ6OUx1cnlNOTBVeEtiQVUzb3dpZlgxNldpN1d5cmZOSVRfTDR3N2ZhQ2dUb3dhQ20xQl93YzF2elhtNmF0d25xbUFQaUhsZGhoYi1QY05oYzVJV3BzQ1lucVNqWjVreFZmZDBqN1pRbi04MkpGeUJFV1Q4ZzlYOF9veElqYzNjVExMTVo1eWdJNllhWFV1bDh3TnpVYlhyMDM5Wk5MRHhDMk5jNE5ZZ0FBIiwic0ZUTmFtZSI6ImZsb3dUb2tlbiIsInNGVENvb2tpZU5hbWUiOiJFU1RTV0NUWEZMT1dUT0tFTiIsInNTZXNzaW9uSWRlbnRpZmllck5hbWUiOiJjb2RlIiwic0N0eCI6InJRSUlBWTJSdll2VFlBQ0g4MTU2dWZaVUxDTG9wb2lUUjlxOGFaSTJCWWVTTmsydjEyX2J0TGVVZkRacG03NXBtalM5X2dXT0I0S0RpLUFpZEpJVFJBNEg1eE9rM0NpNGk4TWhndUNtVjF6YzlCa2VmdlB6ZTREREJNemVwXzVBa3h1VGxHbENVak0yNnktOEc3dHhoMzEwX3ZIWHktcXJ6MDkyTG42OHVWaUJPNWJ2dTdOc01va0NmNHpRS0lGTTA5YU1oSWFjSkFxVjVGc0ExZ0NzdHRKY0tzMVNITTNSTE1Vd1BNOXdWSUpMVTVxcTA1QlVWRWlSRE1OQmtsZDRodFFobzdKMFJ0T1lsUEZwNjNvdEZfZ1d2Ukh5N0tYeGZTdG1Jc19wdTJqbVA4UGZnYndXOE1Lc0ZJcUZ2TldwOXNVRHMtZk0ydzdmV0JTYWJ0SFNPNkxBc1RJWkZrVlBhYzhsZjJrS2VscHVWV1pkLWFnMTNDXzFsSGJRR25RVVpUcktqUm9EcUVydF9lVUV1Y0ZCUWFpVlNfSWtGMXA4V1BaSHdfbGtsck1PRFp0bi04c3VhN3BlVlJLbWkyS3YyaDltcE9vd3pSenhEYWlaZXJjNlhLajlZQVJseXJjS3RwUEs2RFdvNngxVjZMbmtKR3l5N3F4ZXpGaVZpcm5DX3l2OUNVNWM5blRRNUF3bmtHdE1iSDBkQVY4alZ5azhHNDN1eHJIYjJGM3Nad1M4Mkw2ODZQbk5EMkwzNmV2Y2llMmUzOUx5Mk5sMnN1bUtFcHRpeXlXYTF6cVZ1cy16aGhfS2g0VlNzejFGZThPQlZLOVl0YkU5OXZiQ2gxd1dIaFBnbUNCT2lWZ1VqMlAzY0tFT3Z4RGdHd0VlNzJDbnNYXzl2YjRDM2xfRGZnTTEiLCJpUHJvZHVjdEljb24iOi0xLCJzdGF0aWNUZW5hbnRCcmFuZGluZyI6bnVsbCwib0FwcENvYnJhbmRpbmciOnsiYmFja2dyb3VuZExvZ29JbmRleCI6NTMsImJhY2tncm91bmRJbWFnZUluZGV4Ijo0OSwiZnJpZW5kbHlBcHBOYW1lIjoiT3V0bG9vayJ9LCJpQmFja2dyb3VuZEltYWdlIjoyLCJhcnJTZXNzaW9ucyI6W10sImZBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZCI6ZmFsc2UsImlBcHBsaWNhdGlvbkluc2lnaHRzRW5hYmxlZFBlcmNlbnRhZ2UiOjAsInVybFNldERlYnVnTW9kZSI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vZGVidWdtb2RlIiwiZkVuYWJsZUNzc0FuaW1hdGlvbiI6dHJ1ZSwiZkFsbG93R3JheU91dExpZ2h0Qm94Ijp0cnVlLCJmSXNSZW1vdGVOR0NTdXBwb3J0ZWQiOnRydWUsImRlc2t0b3BTc29Db25maWciOnsiaXNFZGdlQW5haGVpbUFsbG93ZWQiOnRydWUsIml3YUVuZHBvaW50VXJsRm9ybWF0IjoiaHR0cHM6Ly9hdXRvbG9nb24ubWljcm9zb2Z0YXp1cmVhZC1zc28uY29tL3swfS93aW5hdXRoL3Nzbz9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FTc29Qcm9iZVVybEZvcm1hdCI6Imh0dHBzOi8vYXV0b2xvZ29uLm1pY3Jvc29mdGF6dXJlYWQtc3NvLmNvbS97MH0vd2luYXV0aC9zc29wcm9iZT9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJpd2FJRnJhbWVVcmxGb3JtYXQiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vezB9L3dpbmF1dGgvaWZyYW1lP2NsaWVudC1yZXF1ZXN0LWlkPWQyNTQzNTZkLWZmY2UtNGVhNy1iMGRkLTkzMDdlZWY1YjZlZVx1MDAyNmlzQWRhbFJlcXVlc3Q9RmFsc2UiLCJpd2FSZXF1ZXN0VGltZW91dEluTXMiOjEwMDAwLCJzdGFydERlc2t0b3BTc29PblBhZ2VMb2FkIjpmYWxzZSwicHJvZ3Jlc3NBbmltYXRpb25UaW1lb3V0IjoxMDAwMCwiaXNFZGdlQWxsb3dlZCI6ZmFsc2UsIm1pbkRzc29FZGdlVmVyc2lvbiI6IjE3IiwiaXNTYWZhcmlBbGxvd2VkIjp0cnVlLCJyZWRpcmVjdFVyaSI6Imh0dHBzOi8vb3V0bG9vay5vZmZpY2UuY29tL293YS8iLCJyZWRpcmVjdERzc29FcnJvclBvc3RQYXJhbXMiOnsiZXJyb3IiOiJpbnRlcmFjdGlvbl9yZXF1aXJlZCIsImVycm9yX2Rlc2NyaXB0aW9uIjoiU2VhbWxlc3Mgc2luZ2xlIHNpZ24gb24gZmFpbGVkIGZvciB0aGUgdXNlci4gVGhpcyBjYW4gaGFwcGVuIGlmIHRoZSB1c2VyIGlzIHVuYWJsZSB0byBhY2Nlc3Mgb24gcHJlbWlzZXMgQUQgb3IgaW50cmFuZXQgem9uZSBpcyBub3QgY29uZmlndXJlZCBjb3JyZWN0bHlcclxuVHJhY2UgSUQ6IFhNUm5UaW1lc3RhbXA6IDIwMjEtMDMtMDYgMTE6MTk6NDNaIiwic3RhdGUiOiJEY3U5Q3NJd0ZFRGhWTl9GTGZZbXZVbTlReEVScEdoZFZGQzY1Vy13R0ZyYVV2SHR6ZkNkN1dTTXNYV3lTakpJWWFVdVNnVmFhcWtBa1FnMWJIVUp6bm9wdUxFQ09LSVduQXdoOXdLdGtqdm5zQWhaZWk5NV96WDVmcHJOSENxeEdZTl9qOEhOajc0eTlRMWNmZFhOanhiX3VrMVcwdGhFaW0zOGRPMWRkVmJDWXAtbndSNXBzUEc4aE1NZiJ9LCJpc0lFQWxsb3dlZEZvclNzb1Byb2JlIjp0cnVlLCJlZGdlUmVkaXJlY3RVcmkiOiJodHRwczovL2F1dG9sb2dvbi5taWNyb3NvZnRhenVyZWFkLXNzby5jb20vY29tbW9uL3dpbmF1dGgvc3NvL2VkZ2VyZWRpcmVjdD9jbGllbnQtcmVxdWVzdC1pZD1kMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWVcdTAwMjZvcmlnaW49bG9naW4ubWljcm9zb2Z0b25saW5lLmNvbVx1MDAyNmlzX3JlZGlyZWN0ZWQ9MSJ9LCJ1cmxMb2dpbiI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vcmVwcm9jZXNzP2N0eD1yUUlJQVkyUnZZdlRZQUNIODE1NnVmWlVMQ0xvcG9pVFI5cThhWkkyQlllU05rMnYxMl9idExlVWZEWnBtNzVwbWpTOV9nV09CNEtEaS1BaWRKSVRSQTRINXhPazNDaTRpOE1oZ3VDbVYxemM5QmtlZnZQemU0RERCTXplcF81QWt4dVRsR2xDVWpNMjZ5LThHN3R4aDMxMF92SFh5LXFyejA5MkxuNjh1VmlCTzVidnU3TnNNb2tDZjR6UUtJRk0wOWFNaElhY0pBcVY1RnNBMWdDc3R0SmNLczFTSE0zUkxNVXdQTTl3VklKTFU1cXEwNUJVVkVpUkRNTkJrbGQ0aHRRaG83SjBSdE9ZbFBGcDYzb3RGX2dXdlJIeTdLWHhmU3RtSXNfcHUyam1QOFBmZ2J3VzhNS3NGSXFGdk5XcDlzVURzLWZNMnc3ZldCU2FidEhTTzZMQXNUSVpGa1ZQYWM4bGYya0tlbHB1VldaZC1hZzEzQ18xbEhiUUduUVVaVHJLalJvRHFFcnRfZVVFdWNGQlFhaVZTX0lrRjFwOFdQWkh3X2xrbHJNT0RadG4tOHN1YTdwZVZSS21pMkt2Mmg5bXBPb3d6Unp4RGFpWmVyYzZYS2o5WUFSbHlyY0t0cFBLNkRXbzZ4MVY2TG5rSkd5eTdxeGV6RmlWaXJuQ195djlDVTVjOW5UUTVBd25rR3RNYkgwZEFWOGpWeWs4RzQzdXhySGIyRjNzWndTODJMNjg2UG5ORDJMMzZldmNpZTJlMzlMeTJObDJzdW1LRXB0aXl5V2ExenFWdXMtemhoX0toNFZTc3oxRmU4T0JWSzlZdGJFOTl2YkNoMXdXSGhQZ21DQk9pVmdVajJQM2NLRU92eERnR3dFZTcyQ25zWF85dmI0QzNsX0RmZ00xIiwidXJsRHNzb1N0YXR1cyI6Imh0dHBzOi8vbG9naW4ubWljcm9zb2Z0b25saW5lLmNvbS9jb21tb24vaW5zdHJ1bWVudGF0aW9uL2Rzc29zdGF0dXMiLCJpU2Vzc2lvblB1bGxUeXBlIjoyLCJmVXNlU2FtZVNpdGUiOnRydWUsImlBbGxvd2VkSWRlbnRpdGllcyI6MSwiaXNHbG9iYWxUZW5hbnQiOnRydWUsInVpZmxhdm9yIjoxMDAxLCJ1cmxGaWRvSGVscCI6Imh0dHBzOi8vZ28ubWljcm9zb2Z0LmNvbS9md2xpbmsvP2xpbmtpZD0yMDEzNzM4IiwidXJsRmlkb0xvZ2luIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnQuY29tL2NvbW1vbi9maWRvL2dldD91aWZsYXZvcj1XZWJcdTAwMjZjb2JyYW5kaWQ9ZGViM2Y3NGEtZWQ1Yi00ZWYxLThkM2MtOTJiODVkZDQ3MzUyIiwiZklzRmlkb1N1cHBvcnRlZCI6dHJ1ZSwiZkhpZGVMb2NhbEFjY291bnQiOmZhbHNlLCJzY2lkIjoxMDEzLCJocGdhY3QiOjE4MDAsImhwZ2lkIjoxMTA0LCJwZ2lkIjoiQ29udmVyZ2VkU2lnbkluIiwiYXBpQ2FuYXJ5IjoiQVFBQkFBQUFBQUQtLURMQTNWTzdRcmRkZ0pnN1dldnJEcDI3VDNvUzhFWTZJcEhyRDJHNGsxNDRCOUwxem81OERfeEl2dGE4RWFTbkFVQVVabDdwX2k5YmhXcUY4ZUR5djgyMzdscmdFMTN4UmEwaE1LYkZJcmxoXzYzOXZaSlBYVFp1V0FXcGwwVjJPTHRxQXhTN0VBNEViTFRYbS00UlplUjdmN0FTX001dng2dkpaQmNldl9tX3FkV0dUSXJqUHZzQUd2ek95SExtcVhjQ091b0lkM1kxTEdIcUh0ZmtZTXZPandfS3liUzl0R2RuSzFEbk1pQUEiLCJjYW5hcnkiOiJScEZINTM1S0kyOWNWTVB0OTVldHdXWkVJUlVxbytqZ0hQTWhPbGlscit3PTY6MSIsImNvcnJlbGF0aW9uSWQiOiJkMjU0MzU2ZC1mZmNlLTRlYTctYjBkZC05MzA3ZWVmNWI2ZWUiLCJzZXNzaW9uSWQiOiI0NmNiMTQ5Zi05NjU4LTQxYjMtYjI2OS03MGQyMTc2MzQ0MDAiLCJsb2NhbGUiOnsibWt0IjoiZW4tVVMiLCJsY2lkIjoxMDMzfSwic2xNYXhSZXRyeSI6Miwic2xSZXBvcnRGYWlsdXJlIjp0cnVlLCJzdHJpbmdzIjp7ImRlc2t0b3Bzc28iOnsiYXV0aGVudGljYXRpbmdtZXNzYWdlIjoiVHJ5aW5nIHRvIHNpZ24geW91IGluIn19LCJlbnVtcyI6eyJDbGllbnRNZXRyaWNzTW9kZXMiOnsiTm9uZSI6MCwiU3VibWl0T25Qb3N0IjoxLCJTdWJtaXRPblJlZGlyZWN0IjoyLCJJbnN0cnVtZW50UGx0Ijo0fX0sInVybHMiOnsiaW5zdHIiOnsicGFnZWxvYWQiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9yZXBvcnRwYWdlbG9hZCIsImRzc29zdGF0dXMiOiJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20vY29tbW9uL2luc3RydW1lbnRhdGlvbi9kc3Nvc3RhdHVzIn19LCJicm93c2VyIjp7Imx0ciI6MSwiRmlyZWZveCI6MSwiX1dpbiI6MSwiX004MyI6MSwiX0QwIjoxLCJGdWxsIjoxLCJXaW44MSI6MSwiUkVfR2Vja28iOjEsImIiOnsibmFtZSI6IkZpcmVmb3giLCJtYWpvciI6ODMsIm1pbm9yIjowfSwib3MiOnsibmFtZSI6IldpbmRvd3MiLCJ2ZXJzaW9uIjoiMTAuMCJ9LCJWIjoiODMuMCJ9LCJ3YXRzb24iOnsidXJsIjoiL2NvbW1vbi9oYW5kbGVycy93YXRzb24iLCJidW5kbGUiOiJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3dhdHNvbi5taW5feWJkYjFpeHprdi1ma29yMm11NnE2dzIuanMiLCJzYnVuZGxlIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy93YXRzb25zdXBwb3J0d2l0aGpxdWVyeS4zLjUubWluX2RjOTQwb29temF1NHJzdThxZXNudmcyLmpzIiwiZmJ1bmRsZSI6Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvZnJhbWV3b3Jrc3VwcG9ydC5taW5fb2Fkcm5jMTNtYWdiMDA5azRkMjBsZzIuanMiLCJyZXNldEVycm9yUGVyaW9kIjo1LCJtYXhDb3JzRXJyb3JzIjotMSwibWF4SW5qZWN0RXJyb3JzIjo1LCJtYXhFcnJvcnMiOjEwLCJtYXhUb3RhbEVycm9ycyI6MywiZXhwU3JjcyI6WyJodHRwczovL2xvZ2luLm1pY3Jvc29mdG9ubGluZS5jb20iLCJodHRwczovL2FhZGNkbi5tc2F1dGgubmV0LyIsImh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC8iLCIubG9naW4ubWljcm9zb2Z0b25saW5lLmNvbSJdLCJlbnZFcnJvclJlZGlyZWN0Ijp0cnVlLCJlbnZFcnJvclVybCI6Ii9jb21tb24vaGFuZGxlcnMvZW52ZXJyb3IifSwibG9hZGVyIjp7ImNkblJvb3RzIjpbImh0dHBzOi8vYWFkY2RuLm1zYXV0aC5uZXQvIiwiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0LyJdLCJsb2dCeVRocm93aW5nIjp0cnVlfSwic2VydmVyRGV0YWlscyI6eyJzbGMiOiJQcm9kU2xpY2VzIiwiZGMiOiJXVVMyIiwicmkiOiJNVzFYWFhYIiwidmVyIjp7InYiOlsyLDEsMTE1MzAsMTVdfSwicnQiOiIyMDIxLTAzLTA2VDExOjE5OjQzIiwiZXQiOjUyfSwiY291bnRyeSI6IlVTIiwiZkJyZWFrQnJhbmRpbmdTaWduaW5TdHJpbmciOnRydWUsImZGaXhJbmNvcnJlY3RBcGlDYW5hcnlVc2FnZSI6dHJ1ZSwiYnNzbyI6eyJpbml0aWF0ZVB1bGxUaW1lb3V0TXMiOjEwMCwiaW5pdGlhdGVQdWxsVGltZW91dEFjdGlvbiI6ImNvbnRpbnVlIiwicmlkIjoiWE1SIjoiZW5kIiwiRU5EX1NTTyI6ImVuZC1zc28iLCJFTkRfVVNFUlMiOiJlbmQtdXNlcnMifSwiZm9yY2VUaWxlcyI6dHJ1ZSwibm9uY2UiOiJBd0FCQUFBQUFBQUNBT3pfQkFEMF85SUcxaGJwVUtGT1lZUjN2YXlpeE5nVEdiMWhuSjd2dnZLQmJsXzV5UzF6OFN6UmVWUzJrNnFHSWluRG9KbzBMd25IOFpsRU04Y0E3dm5JOTZ5QWNJTWdBQSIsIm92ZXJhbGxUaW1lb3V0TXMiOjQwMDAsInRlbGVtZXRyeSI6eyJ0eXBlIjoiVEJBdXRoVGVsZW1ldHJ5Iiwibm9uY2UiOiJBd0FCQUFFQUFBQUNBT3pfQkFEMF96QWFWVGI4ODY2MHIxa25HclJKRFFXMVlfZ1ZIY011MTMyM2dNRXJLbTVDS0pLUk94eUdQY3hnLW9EcHVNRXpBLXNlQU1tSk5Yd01TZXQ2T0QwNC1vSWNBREJSSUdnRXZIYk16c2FWdjdZdklBQSIsInJlcG9ydFN0YXRlcyI6WyJlbmQiLCJlbmQtc3NvIiwiZW5kLXVzZXJzIl19LCJyZWRpcmVjdEVuZFN0YXRlcyI6WyJlbmQiLCJlbmQtdXNlcnMiXSwiY29va2llTmFtZXMiOnsiYWFkU3NvIjoiQUFEU1NPIiwid2luU3NvIjoiRVNUU1NTTyIsInNzb1RpbGVzIjoiRVNUU1NTT1RJTEVTIiwic3NvUHVsbGVkIjoiU1NPQ09PS0lFUFVMTEVEIiwidXNlckxpc3QiOiJFU1RTVVNFUkxJU1QifSwiZW5hYmxlZCI6dHJ1ZSwidHlwZSI6IndpbmRvd3MiLCJyZWFzb24iOiJQdWxsIGlzIG5lZWRlZDsgRm9yY2luZyB0aWxlcyBleHBlcmllbmNlIGFzIHNpbGVudCBTU08gbm90IGFsbG93ZWQifSwidXJsTm9Db29raWVzIjoiaHR0cHM6Ly9sb2dpbi5taWNyb3NvZnRvbmxpbmUuY29tL2Nvb2tpZXNkaXNhYmxlZCIsImZUcmltQ2hyb21lQnNzb1VybCI6dHJ1ZSwiaW5saW5lTW9kZSI6NSwiZlNob3dDb3B5RGVidWdEZXRhaWxzTGluayI6dHJ1ZX07DQovL11dPjwvc2NyaXB0PiANCjxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4vLzwhW0NEQVRBWw0KIWZ1bmN0aW9uKCl7dmFyIGU9d2luZG93LHI9ZS4kRGVidWc9ZS4kRGVidWd8fHt9LHQ9ZS4kQ29uZmlnfHx7fTtpZighci5hcHBlbmRMb2cpe3ZhciBuPVtdLG89MDtyLmFwcGVuZExvZz1mdW5jdGlvbihlKXt2YXIgcj10Lm1heERlYnVnTG9nfHwyNSxhPShuZXcgRGF0ZSkudG9VVENTdHJpbmcoKSsiOiIrZTtuLnB1c2gobysiOiIrYSksbi5sZW5ndGg+ciYmbi5zaGlmdCgpLG8rK30sci5nZXRMb2dzPWZ1bmN0aW9uKCl7cmV0dXJuIG59fX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXtmdW5jdGlvbiB0KGEpe3ZhciBpPWVbYV07aWYoYTxuLTEpe3JldHVybiB2b2lkKG8ucltpXT90KGErMSk6by53aGVuKGksZnVuY3Rpb24oKXt0KGErMSl9KSl9cihpKX12YXIgbj1lLmxlbmd0aDt0KDApfWZ1bmN0aW9uIHIoZSxyLGEpe2Z1bmN0aW9uIGkoKXt2YXIgZT0hIXUubWV0aG9kLG89ZT91Lm1ldGhvZDphWzBdLGk9dS5leHRyYUFyZ3N8fFtdLHM9bi4kV2ViV2F0c29uO3RyeXsNCnZhciBjPXQoYSwhZSk7aWYoaSYmaS5sZW5ndGg+MCl7Zm9yKHZhciBkPWkubGVuZ3RoLGw9MDtsPGQ7bCsrKXtjLnB1c2goaVtsXSl9fW8uYXBwbHkocixjKX1jYXRjaChlKXtyZXR1cm4gdm9pZChzJiZzLnN1Ym1pdEZyb21FeGNlcHRpb24mJnMuc3VibWl0RnJvbUV4Y2VwdGlvbihlKSl9fXZhciB1PW8uciYmby5yW2VdO3JldHVybiByPXJ8fHRoaXMsdSYmKHUuc2tpcFRpbWVvdXQ/aSgpOm4uc2V0VGltZW91dChpLDApKSx1fWZ1bmN0aW9uIHQoZSxyKXtyZXR1cm4gQXJyYXkucHJvdG90eXBlLnNsaWNlLmNhbGwoZSxyPzE6MCl9dmFyIG49d2luZG93O24uJERvfHwobi4kRG89eyJxIjpbXSwiciI6W10sInJlbW92ZUl0ZW1zIjpbXSwibG9jayI6MCwibyI6W119KTt2YXIgbz1uLiREbztvLndoZW49ZnVuY3Rpb24odCxuKXtmdW5jdGlvbiBhKGUpe3IoZSxpLHUpfHxvLnEucHVzaCh7ImlkIjplLCJjIjppLCJhIjp1fSl9dmFyIGk9MCx1PVtdLHM9MTsiZnVuY3Rpb24iPT10eXBlb2Ygbnx8KGk9biwNCnM9Mik7Zm9yKHZhciBjPXM7Yzxhcmd1bWVudHMubGVuZ3RoO2MrKyl7dS5wdXNoKGFyZ3VtZW50c1tjXSl9dCBpbnN0YW5jZW9mIEFycmF5P2UodCxhKTphKHQpfSxvLnJlZ2lzdGVyPWZ1bmN0aW9uKGUsdCxuKXtpZighby5yW2VdKXtvLm8ucHVzaChlKTt2YXIgYT17fTtpZih0JiYoYS5tZXRob2Q9dCksbiYmKGEuc2tpcFRpbWVvdXQ9biksYXJndW1lbnRzJiZhcmd1bWVudHMubGVuZ3RoPjMpe2EuZXh0cmFBcmdzPVtdO2Zvcih2YXIgaT0zO2k8YXJndW1lbnRzLmxlbmd0aDtpKyspe2EuZXh0cmFBcmdzLnB1c2goYXJndW1lbnRzW2ldKX19by5yW2VdPWEsby5sb2NrKys7dHJ5e2Zvcih2YXIgdT0wO3U8by5xLmxlbmd0aDt1Kyspe3ZhciBzPW8ucVt1XTtzLmlkPT1lJiZyKGUscy5jLHMuYSkmJm8ucmVtb3ZlSXRlbXMucHVzaChzKX19Y2F0Y2goZSl7dGhyb3cgZX1maW5hbGx5e2lmKDA9PT0tLW8ubG9jayl7Zm9yKHZhciBjPTA7YzxvLnJlbW92ZUl0ZW1zLmxlbmd0aDtjKyspew0KZm9yKHZhciBkPW8ucmVtb3ZlSXRlbXNbY10sbD0wO2w8by5xLmxlbmd0aDtsKyspe2lmKG8ucVtsXT09PWQpe28ucS5zcGxpY2UobCwxKTticmVha319fW8ucmVtb3ZlSXRlbXM9W119fX19LG8udW5yZWdpc3Rlcj1mdW5jdGlvbihlKXtvLnJbZV0mJmRlbGV0ZSBvLnJbZV19fSgpLGZ1bmN0aW9uKGUscil7ZnVuY3Rpb24gdCgpe2lmKCFpKXtpZighci5ib2R5KXtyZXR1cm4gdm9pZCBzZXRUaW1lb3V0KHQpfWk9ITAsZS4kRG8ucmVnaXN0ZXIoImRvYy5yZWFkeSIsMCwhMCl9fWZ1bmN0aW9uIG4oKXtpZighdSl7aWYoIXIuYm9keSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX10KCksdT0hMCxlLiREby5yZWdpc3RlcigiZG9jLmxvYWQiLDAsITApLGEoKX19ZnVuY3Rpb24gbyhlKXsoci5hZGRFdmVudExpc3RlbmVyfHwibG9hZCI9PT1lLnR5cGV8fCJjb21wbGV0ZSI9PT1yLnJlYWR5U3RhdGUpJiZ0KCl9ZnVuY3Rpb24gYSgpew0Kci5hZGRFdmVudExpc3RlbmVyPyhyLnJlbW92ZUV2ZW50TGlzdGVuZXIoIkRPTUNvbnRlbnRMb2FkZWQiLG8sITEpLGUucmVtb3ZlRXZlbnRMaXN0ZW5lcigibG9hZCIsbiwhMSkpOnIuYXR0YWNoRXZlbnQmJihyLmRldGFjaEV2ZW50KCJvbnJlYWR5c3RhdGVjaGFuZ2UiLG8pLGUuZGV0YWNoRXZlbnQoIm9ubG9hZCIsbikpfXZhciBpPSExLHU9ITE7aWYoImNvbXBsZXRlIj09PXIucmVhZHlTdGF0ZSl7cmV0dXJuIHZvaWQgc2V0VGltZW91dChuKX0hZnVuY3Rpb24oKXtyLmFkZEV2ZW50TGlzdGVuZXI/KHIuYWRkRXZlbnRMaXN0ZW5lcigiRE9NQ29udGVudExvYWRlZCIsbywhMSksZS5hZGRFdmVudExpc3RlbmVyKCJsb2FkIixuLCExKSk6ci5hdHRhY2hFdmVudCYmKHIuYXR0YWNoRXZlbnQoIm9ucmVhZHlzdGF0ZWNoYW5nZSIsbyksZS5hdHRhY2hFdmVudCgib25sb2FkIixuKSl9KCl9KHdpbmRvdyxkb2N1bWVudCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7DQpyZXR1cm4gZi4kQ29uZmlnfHxmLlNlcnZlckRhdGF8fHt9fWZ1bmN0aW9uIHIoZSxyKXt2YXIgdD1mLiREZWJ1Zzt0JiZ0LmFwcGVuZExvZyYmKHImJihlKz0iICciKyhyLnNyY3x8ci5ocmVmfHwiIikrIiciLGUrPSIsIGlkOiIrKHIuaWR8fCIiKSxlKz0iLCBhc3luYzoiKyhyLmFzeW5jfHwiIiksZSs9IiwgZGVmZXI6Iisoci5kZWZlcnx8IiIpKSx0LmFwcGVuZExvZyhlKSl9ZnVuY3Rpb24gdCgpe3ZhciBlPWYuJEI7aWYodm9pZCAwPT09ZCl7aWYoZSl7ZD1lLklFfWVsc2V7dmFyIHI9Zi5uYXZpZ2F0b3IudXNlckFnZW50O2Q9LTEhPT1yLmluZGV4T2YoIk1TSUUgIil8fC0xIT09ci5pbmRleE9mKCJUcmlkZW50LyIpfX1yZXR1cm4gZH1mdW5jdGlvbiBuKCl7dmFyIGU9Zi4kQjtpZih2b2lkIDA9PT1sKXtpZihlKXtsPWUuUkVfRWRnZX1lbHNle3ZhciByPWYubmF2aWdhdG9yLnVzZXJBZ2VudDtsPS0xIT09ci5pbmRleE9mKCJFZGdlIil9fXJldHVybiBsfWZ1bmN0aW9uIG8oZSl7DQp2YXIgcj1lLmluZGV4T2YoIj8iKSx0PXI+LTE/cjplLmxlbmd0aCxuPWUubGFzdEluZGV4T2YoIi4iLHQpO3JldHVybiBlLnN1YnN0cmluZyhuLG4rdi5sZW5ndGgpLnRvTG93ZXJDYXNlKCk9PT12fWZ1bmN0aW9uIGEoKXt2YXIgcj1lKCk7cmV0dXJuKHIubG9hZGVyfHx7fSkuc2xSZXBvcnRGYWlsdXJlfHxyLnNsUmVwb3J0RmFpbHVyZXx8ITF9ZnVuY3Rpb24gaSgpe3JldHVybihlKCkubG9hZGVyfHx7fSkucmVkaXJlY3RUb0Vycm9yUGFnZU9uTG9hZEZhaWx1cmV8fCExfWZ1bmN0aW9uIHUoKXtyZXR1cm4oZSgpLmxvYWRlcnx8e30pLmxvZ0J5VGhyb3dpbmd8fCExfWZ1bmN0aW9uIHMoZSl7aWYoIXQoKSYmIW4oKSl7cmV0dXJuITF9dmFyIHI9ZS5zcmN8fGUuaHJlZnx8IiI7aWYoIXIpe3JldHVybiEwfWlmKG8ocikpe3ZhciBhLGksdTt0cnl7YT1lLnNoZWV0LGk9YSYmYS5jc3NSdWxlcyx1PSExfWNhdGNoKGUpe3U9ITB9aWYoYSYmIWkmJnUpe3JldHVybiEwfQ0KaWYoYSYmaSYmMD09PWkubGVuZ3RoKXtyZXR1cm4hMH19cmV0dXJuITF9ZnVuY3Rpb24gYygpe2Z1bmN0aW9uIHQoZSl7Zy5nZXRFbGVtZW50c0J5VGFnTmFtZSgiaGVhZCIpWzBdLmFwcGVuZENoaWxkKGUpfWZ1bmN0aW9uIG4oZSxyLHQsbil7dmFyIHM9bnVsbDtyZXR1cm4gcz1vKGUpP2EoZSk6InNjcmlwdCI9PT1uLnRvTG93ZXJDYXNlKCk/aShlKTp1KGUsbiksciYmKHMuaWQ9ciksImZ1bmN0aW9uIj09dHlwZW9mIHMuc2V0QXR0cmlidXRlJiYocy5zZXRBdHRyaWJ1dGUoImNyb3Nzb3JpZ2luIiwiYW5vbnltb3VzIiksdCYmInN0cmluZyI9PXR5cGVvZiB0JiZzLnNldEF0dHJpYnV0ZSgiaW50ZWdyaXR5Iix0KSksc31mdW5jdGlvbiBhKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgibGluayIpO3JldHVybiByLnJlbD0ic3R5bGVzaGVldCIsci50eXBlPSJ0ZXh0L2NzcyIsci5ocmVmPWUscn1mdW5jdGlvbiBpKGUpe3ZhciByPWcuY3JlYXRlRWxlbWVudCgic2NyaXB0IikNCjtyZXR1cm4gci50eXBlPSJ0ZXh0L2phdmFzY3JpcHQiLHIuc3JjPWUsci5kZWZlcj0hMSxyLmFzeW5jPSExLHJ9ZnVuY3Rpb24gdShlLHIpe3ZhciB0PWcuY3JlYXRlRWxlbWVudChyKTtyZXR1cm4gdC5zcmM9ZSx0fWZ1bmN0aW9uIGQoZSl7aWYoIShtJiZtLmxlbmd0aD4xKSl7cmV0dXJuIGV9Zm9yKHZhciByPTA7cjxtLmxlbmd0aDtyKyspe2lmKDA9PT1lLmluZGV4T2YobVtyXSkpe3JldHVybiBtW3IrMTxtLmxlbmd0aD9yKzE6MF0rZS5zdWJzdHJpbmcobVtyXS5sZW5ndGgpfX1yZXR1cm4gZX1mdW5jdGlvbiBsKGUsdCxuLG8pe2lmKHIoIlskTG9hZGVyXTogIisoYi5mYWlsTWVzc2FnZXx8IkZhaWxlZCIpLG8pLCRbZV0ucmV0cnk8cCl7cmV0dXJuICRbZV0ucmV0cnkrKyx2KGUsdCxuKSx2b2lkIGMuX1JlcG9ydEZhaWx1cmUoJFtlXS5yZXRyeSwkW2VdLnNyY1BhdGgpfW4mJm4oKX1mdW5jdGlvbiBmKGUsdCxuLG8pe2lmKHMobykpe3JldHVybiBsKGUsdCxuLG8pfQ0KcigiWyRMb2FkZXJdOiAiKyhiLnN1Y2Nlc3NNZXNzYWdlfHwiTG9hZGVkIiksbyksdihlKzEsdCxuKTt2YXIgYT0kW2VdLm9uU3VjY2VzczsiZnVuY3Rpb24iPT10eXBlb2YgYSYmYSgkW2VdLnNyY1BhdGgpfWZ1bmN0aW9uIHYoZSxvLGEpe2lmKGU8JC5sZW5ndGgpe3ZhciBpPSRbZV07aWYoIWl8fCFpLnNyY1BhdGgpe3JldHVybiB2b2lkIHYoZSsxLG8sYSl9aS5yZXRyeT4wJiYoaS5zcmNQYXRoPWQoaS5zcmNQYXRoKSxpLm9yaWdJZHx8KGkub3JpZ0lkPWkuaWQpLGkuaWQ9aS5vcmlnSWQrIl9SZXRyeV8iK2kucmV0cnkpO3ZhciB1PW4oaS5zcmNQYXRoLGkuaWQsaS5pbnRlZ3JpdHksaS50YWdOYW1lKTt1Lm9ubG9hZD1mdW5jdGlvbigpe2YoZSxvLGEsdSl9LHUub25lcnJvcj1mdW5jdGlvbigpe2woZSxvLGEsdSl9LHUub25yZWFkeXN0YXRlY2hhbmdlPWZ1bmN0aW9uKCl7ImxvYWRlZCI9PT11LnJlYWR5U3RhdGU/c2V0VGltZW91dChmdW5jdGlvbigpe2YoZSxvLGEsdSkNCn0sNTAwKToiY29tcGxldGUiPT09dS5yZWFkeVN0YXRlJiZmKGUsbyxhLHUpfSx0KHUpLHIoIlskTG9hZGVyXTogTG9hZGluZyAnIisoaS5zcmNQYXRofHwiIikrIicsIGlkOiIrKGkuaWR8fCIiKSl9ZWxzZXtvJiZvKCl9fXZhciBoPWUoKSxwPWguc2xNYXhSZXRyeXx8Mix5PWgubG9hZGVyfHx7fSxtPXkuY2RuUm9vdHN8fFtdLGI9dGhpcywkPVtdO2IucmV0cnlPbkVycm9yPSEwLGIuc3VjY2Vzc01lc3NhZ2U9IkxvYWRlZCIsYi5mYWlsTWVzc2FnZT0iRXJyb3IiLGIuQWRkPWZ1bmN0aW9uKGUscix0LG4sbyxhKXtlJiYkLnB1c2goeyJzcmNQYXRoIjplLCJpZCI6ciwicmV0cnkiOm58fDAsImludGVncml0eSI6dCwidGFnTmFtZSI6b3x8InNjcmlwdCIsIm9uU3VjY2VzcyI6YX0pfSxiLkFkZEZvclJlbG9hZD1mdW5jdGlvbihlLHIpe3ZhciB0PWUuc3JjfHxlLmhyZWZ8fCIiO2IuQWRkKHQsIkFkZEZvclJlbG9hZCIsZS5pbnRlZ3JpdHksMSxlLnRhZ05hbWUscil9LA0KYi5BZGRJZj1mdW5jdGlvbihlLHIsdCl7ZSYmYi5BZGQocix0KX0sYi5Mb2FkPWZ1bmN0aW9uKGUscil7digwLGUscil9fXZhciBkLGwsZj13aW5kb3csZz1mLmRvY3VtZW50LHY9Ii5jc3MiO2MuT249ZnVuY3Rpb24oZSxyLHQpe2lmKCFlKXt0aHJvdyJUaGUgdGFyZ2V0IGVsZW1lbnQgbXVzdCBiZSBwcm92aWRlZCBhbmQgY2Fubm90IGJlIG51bGwuIn1yP2MuT25FcnJvcihlLHQpOmMuT25TdWNjZXNzKGUsdCl9LGMuT25TdWNjZXNzPWZ1bmN0aW9uKGUsdCl7aWYoIWUpe3Rocm93IlRoZSB0YXJnZXQgZWxlbWVudCBtdXN0IGJlIHByb3ZpZGVkIGFuZCBjYW5ub3QgYmUgbnVsbC4ifWlmKHMoZSkpe3JldHVybiBjLk9uRXJyb3IoZSx0KX12YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtyKCJbJExvYWRlcl06IExvYWRlZCIsZSk7dmFyIGQ9bmV3IGM7ZC5mYWlsTWVzc2FnZT0iUmVsb2FkIEZhaWxlZCIsZC5zdWNjZXNzTWVzc2FnZT0iUmVsb2FkIFN1Y2Nlc3MiLA0KZC5Mb2FkKG51bGwsZnVuY3Rpb24oKXtpZihvKXt0aHJvdyJVbmV4cGVjdGVkIHN0YXRlLiBSZXNvdXJjZUxvYWRlci5Mb2FkKCkgZmFpbGVkIGRlc3BpdGUgaW5pdGlhbCBsb2FkIHN1Y2Nlc3MuIFsnIituKyInXSJ9dSYmKGRvY3VtZW50LmxvY2F0aW9uLmhyZWY9Ii9lcnJvci5hc3B4P2Vycj01MDQiKX0pfSxjLk9uRXJyb3I9ZnVuY3Rpb24oZSx0KXt2YXIgbj1lLnNyY3x8ZS5ocmVmfHwiIixvPWEoKSx1PWkoKTtpZighZSl7dGhyb3ciVGhlIHRhcmdldCBlbGVtZW50IG11c3QgYmUgcHJvdmlkZWQgYW5kIGNhbm5vdCBiZSBudWxsLiJ9cigiWyRMb2FkZXJdOiBGYWlsZWQiLGUpO3ZhciBzPW5ldyBjO3MuZmFpbE1lc3NhZ2U9IlJlbG9hZCBGYWlsZWQiLHMuc3VjY2Vzc01lc3NhZ2U9IlJlbG9hZCBTdWNjZXNzIixzLkFkZEZvclJlbG9hZChlLHQpLHMuTG9hZChudWxsLGZ1bmN0aW9uKCl7aWYobyl7dGhyb3ciRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK24rIiddIn0NCnUmJihkb2N1bWVudC5sb2NhdGlvbi5ocmVmPSIvZXJyb3IuYXNweD9lcnI9NTA0Iil9KSxjLl9SZXBvcnRGYWlsdXJlKDAsbil9LGMuX1JlcG9ydEZhaWx1cmU9ZnVuY3Rpb24oZSxyKXtpZih1KCkmJiF0KCkpe3Rocm93IltSZXRyeSAiK2UrIl0gRmFpbGVkIHRvIGxvYWQgZXh0ZXJuYWwgcmVzb3VyY2UgWyciK3IrIiddLCByZWxvYWRpbmcgZnJvbSBmYWxsYmFjayBDRE4gZW5kcG9pbnQifX0sZi4kTG9hZGVyPWN9KCksZnVuY3Rpb24oKXtmdW5jdGlvbiBlKCl7aWYoISQpe3ZhciBlPW5ldyBoLiRMb2FkZXI7ZS5BZGRJZighaC5qUXVlcnkseS5zYnVuZGxlLCJXZWJXYXRzb25fRGVtYW5kU3VwcG9ydCIpLHkuc2J1bmRsZT1udWxsLGRlbGV0ZSB5LnNidW5kbGUsZS5BZGRJZighaC4kQXBpLHkuZmJ1bmRsZSwiV2ViV2F0c29uX0RlbWFuZEZyYW1ld29yayIpLHkuZmJ1bmRsZT1udWxsLGRlbGV0ZSB5LmZidW5kbGUsZS5BZGQoeS5idW5kbGUsIldlYldhdHNvbl9EZW1hbmRMb2FkZWQiKSwNCmUuTG9hZChyLHQpLCQ9ITB9fWZ1bmN0aW9uIHIoKXtpZihoLiRXZWJXYXRzb24pe2lmKGguJFdlYldhdHNvbi5pc1Byb3h5KXtyZXR1cm4gdm9pZCB0KCl9bS53aGVuKCIkV2ViV2F0c29uLmZ1bGwiLGZ1bmN0aW9uKCl7Zm9yKDtiLmxlbmd0aD4wOyl7dmFyIGU9Yi5zaGlmdCgpO2UmJmguJFdlYldhdHNvbltlLmNtZE5hbWVdLmFwcGx5KGguJFdlYldhdHNvbixlLmFyZ3MpfX0pfX1mdW5jdGlvbiB0KCl7aWYoIWguJFdlYldhdHNvbnx8aC4kV2ViV2F0c29uLmlzUHJveHkpe2lmKCF3JiZKU09OKXt0cnl7dmFyIGU9bmV3IFhNTEh0dHBSZXF1ZXN0O2Uub3BlbigiUE9TVCIseS51cmwpLGUuc2V0UmVxdWVzdEhlYWRlcigiQWNjZXB0IiwiYXBwbGljYXRpb24vanNvbiIpLGUuc2V0UmVxdWVzdEhlYWRlcigiQ29udGVudC1UeXBlIiwiYXBwbGljYXRpb24vanNvbjsgY2hhcnNldD1VVEYtOCIpLGUuc2V0UmVxdWVzdEhlYWRlcigiY2FuYXJ5IixwLmFwaUNhbmFyeSksDQplLnNldFJlcXVlc3RIZWFkZXIoImNsaWVudC1yZXF1ZXN0LWlkIixwLmNvcnJlbGF0aW9uSWQpLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnaWQiLHAuaHBnaWR8fDApLGUuc2V0UmVxdWVzdEhlYWRlcigiaHBnYWN0IixwLmhwZ2FjdHx8MCk7Zm9yKHZhciByPS0xLHQ9MDt0PGIubGVuZ3RoO3QrKyl7aWYoInN1Ym1pdCI9PT1iW3RdLmNtZE5hbWUpe3I9dDticmVha319dmFyIG89YltyXT9iW3JdLmFyZ3N8fFtdOltdLGE9eyJzciI6eS5zciwiZWMiOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwid2VjIjo1NSwiaWR4IjoxLCJwbiI6cC5wZ2lkfHwiIiwic2MiOnAuc2NpZHx8MCwiaHBnIjpwLmhwZ2lkfHwwLCJtc2ciOiJGYWlsZWQgdG8gbG9hZCBleHRlcm5hbCByZXNvdXJjZSBbQ29yZSBXYXRzb24gZmlsZXNdIiwidXJsIjpvWzFdfHwiIiwibG4iOjAsImFkIjowLCJhbiI6ITEsImNzIjoiIiwic2QiOnAuc2VydmVyRGV0YWlscywibHMiOm51bGwsDQoiZGlhZyI6dih5KX07ZS5zZW5kKEpTT04uc3RyaW5naWZ5KGEpKX1jYXRjaChlKXt9dz0hMH15LmxvYWRFcnJvclVybCYmd2luZG93LmxvY2F0aW9uLmFzc2lnbih5LmxvYWRFcnJvclVybCl9bigpfWZ1bmN0aW9uIG4oKXtiPVtdLGguJFdlYldhdHNvbj1udWxsfWZ1bmN0aW9uIG8ocil7cmV0dXJuIGZ1bmN0aW9uKCl7dmFyIHQ9YXJndW1lbnRzO2IucHVzaCh7ImNtZE5hbWUiOnIsImFyZ3MiOnR9KSxlKCl9fWZ1bmN0aW9uIGEoKXt2YXIgZT1bImZvdW5kRXhjZXB0aW9uIiwicmVzZXRFeGNlcHRpb24iLCJzdWJtaXQiXSxyPXRoaXM7ci5pc1Byb3h5PSEwO2Zvcih2YXIgdD1lLmxlbmd0aCxuPTA7bjx0O24rKyl7dmFyIGE9ZVtuXTthJiYoclthXT1vKGEpKX19ZnVuY3Rpb24gaShlLHIsdCxuLG8sYSxpKXt2YXIgdT1oLmV2ZW50O3JldHVybiBhfHwoYT1sKG98fHUsaT9pKzI6MikpLA0KaC4kRGVidWcmJmguJERlYnVnLmFwcGVuZExvZyYmaC4kRGVidWcuYXBwZW5kTG9nKCJbV2ViV2F0c29uXToiKyhlfHwiIikrIiBpbiAiKyhyfHwiIikrIiBAICIrKHR8fCI/PyIpKSxFLnN1Ym1pdChlLHIsdCxuLG98fHUsYSxpKX1mdW5jdGlvbiB1KGUscil7cmV0dXJueyJzaWduYXR1cmUiOmUsImFyZ3MiOnIsInRvU3RyaW5nIjpmdW5jdGlvbigpe3JldHVybiB0aGlzLnNpZ25hdHVyZX19fWZ1bmN0aW9uIHMoZSl7Zm9yKHZhciByPVtdLHQ9ZS5zcGxpdCgiXG4iKSxuPTA7bjx0Lmxlbmd0aDtuKyspe3IucHVzaCh1KHRbbl0sW10pKX1yZXR1cm4gcn1mdW5jdGlvbiBjKGUpe2Zvcih2YXIgcj1bXSx0PWUuc3BsaXQoIlxuIiksbj0wO248dC5sZW5ndGg7bisrKXt2YXIgbz11KHRbbl0sW10pO3RbbisxXSYmKG8uc2lnbmF0dXJlKz0iQCIrdFtuKzFdLG4rKyksci5wdXNoKG8pfXJldHVybiByfWZ1bmN0aW9uIGQoZSl7aWYoIWUpe3JldHVybiBudWxsfXRyeXtpZihlLnN0YWNrKXsNCnJldHVybiBzKGUuc3RhY2spfWlmKGUuZXJyb3Ipe2lmKGUuZXJyb3Iuc3RhY2spe3JldHVybiBzKGUuZXJyb3Iuc3RhY2spfX1lbHNlIGlmKHdpbmRvdy5vcGVyYSYmZS5tZXNzYWdlKXtyZXR1cm4gYyhlLm1lc3NhZ2UpfX1jYXRjaChlKXt9cmV0dXJuIG51bGx9ZnVuY3Rpb24gbChlLHIpe3ZhciB0PVtdO3RyeXtmb3IodmFyIG49YXJndW1lbnRzLmNhbGxlZTtyPjA7KXtuPW4/bi5jYWxsZXI6bixyLS19Zm9yKHZhciBvPTA7biYmbzxMOyl7dmFyIGE9IkludmFsaWRNZXRob2QoKSI7dHJ5e2E9bi50b1N0cmluZygpfWNhdGNoKGUpe312YXIgaT1bXSxzPW4uYXJnc3x8bi5hcmd1bWVudHM7aWYocyl7Zm9yKHZhciBjPTA7YzxzLmxlbmd0aDtjKyspe2lbY109c1tjXX19dC5wdXNoKHUoYSxpKSksbj1uLmNhbGxlcixvKyt9fWNhdGNoKGUpe3QucHVzaCh1KGUudG9TdHJpbmcoKSxbXSkpfXZhciBsPWQoZSkNCjtyZXR1cm4gbCYmKHQucHVzaCh1KCItLS0gRXJyb3IgRXZlbnQgU3RhY2sgLS0tLS0tLS0tLS0tLS0tLS0iLFtdKSksdD10LmNvbmNhdChsKSksdH1mdW5jdGlvbiBmKGUpe2lmKGUpe3RyeXt2YXIgcj0vZnVuY3Rpb24gKC57MSx9KVwoLyx0PXIuZXhlYyhlLmNvbnN0cnVjdG9yLnRvU3RyaW5nKCkpO3JldHVybiB0JiZ0Lmxlbmd0aD4xP3RbMV06IiJ9Y2F0Y2goZSl7fX1yZXR1cm4iIn1mdW5jdGlvbiBnKGUpe2lmKGUpe3RyeXtpZigic3RyaW5nIiE9dHlwZW9mIGUmJkpTT04mJkpTT04uc3RyaW5naWZ5KXt2YXIgcj1mKGUpLHQ9SlNPTi5zdHJpbmdpZnkoZSk7cmV0dXJuIHQmJiJ7fSIhPT10fHwoZS5lcnJvciYmKGU9ZS5lcnJvcixyPWYoZSkpLCh0PUpTT04uc3RyaW5naWZ5KGUpKSYmInt9IiE9PXR8fCh0PWUudG9TdHJpbmcoKSkpLHIrIjoiK3R9fWNhdGNoKGUpe319cmV0dXJuIiIrKGV8fCIiKX1mdW5jdGlvbiB2KGUpe3ZhciByPVtdO3RyeXsNCmlmKGpRdWVyeT8oci5wdXNoKCJqUXVlcnkgdjoiK2pRdWVyeSgpLmpxdWVyeSksalF1ZXJ5LmVhc2luZz9yLnB1c2goImpRdWVyeS5lYXNpbmc6IitKU09OLnN0cmluZ2lmeShqUXVlcnkuZWFzaW5nKSk6ci5wdXNoKCJqUXVlcnkuZWFzaW5nIGlzIG5vdCBkZWZpbmVkIikpOnIucHVzaCgialF1ZXJ5IGlzIG5vdCBkZWZpbmVkIiksZSYmZS5leHBlY3RlZFZlcnNpb24mJnIucHVzaCgiRXhwZWN0ZWQgalF1ZXJ5IHY6IitlLmV4cGVjdGVkVmVyc2lvbiksbSl7dmFyIHQsbj0iIjtmb3IodD0wO3Q8bS5vLmxlbmd0aDt0Kyspe24rPW0ub1t0XSsiOyJ9Zm9yKHIucHVzaCgiJERvLm9bIituKyJdIiksbj0iIix0PTA7dDxtLnEubGVuZ3RoO3QrKyl7bis9bS5xW3RdLmlkKyI7In1yLnB1c2goIiREby5xWyIrbisiXSIpfWlmKGguJERlYnVnJiZoLiREZWJ1Zy5nZXRMb2dzKXt2YXIgbz1oLiREZWJ1Zy5nZXRMb2dzKCk7byYmby5sZW5ndGg+MCYmKHI9ci5jb25jYXQobykpfWlmKGIpew0KZm9yKHZhciBhPTA7YTxiLmxlbmd0aDthKyspe3ZhciBpPWJbYV07aWYoaSYmInN1Ym1pdCI9PT1pLmNtZE5hbWUpe3RyeXtpZihKU09OJiZKU09OLnN0cmluZ2lmeSl7dmFyIHU9SlNPTi5zdHJpbmdpZnkoaSk7dSYmci5wdXNoKHUpfX1jYXRjaChlKXtyLnB1c2goZyhlKSl9fX19fWNhdGNoKGUpe3IucHVzaChnKGUpKX1yZXR1cm4gcn12YXIgaD13aW5kb3cscD1oLiRDb25maWd8fHt9LHk9cC53YXRzb24sbT1oLiREbztpZighaC4kV2ViV2F0c29uJiZ5KXt2YXIgYj1bXSwkPSExLHc9ITEsTD0xMCxFPWguJFdlYldhdHNvbj1uZXcgYTtFLkNCPXt9LEUuX29yZ0Vycm9ySGFuZGxlcj1oLm9uZXJyb3IsaC5vbmVycm9yPWksRS5lcnJvckhvb2tlZD0hMCxtLndoZW4oImpRdWVyeS52ZXJzaW9uIixmdW5jdGlvbihlKXt5LmV4cGVjdGVkVmVyc2lvbj1lfSksbS5yZWdpc3RlcigiJFdlYldhdHNvbiIpfX0oKSxmdW5jdGlvbigpe2Z1bmN0aW9uIGUoZSxyKXsNCmZvcih2YXIgdD1yLnNwbGl0KCIuIiksbj10Lmxlbmd0aCxvPTA7bzxuJiZudWxsIT09ZSYmdm9pZCAwIT09ZTspe2U9ZVt0W28rK11dfXJldHVybiBlfWZ1bmN0aW9uIHIocil7dmFyIHQ9bnVsbDtyZXR1cm4gbnVsbD09PXMmJihzPWUoYSwiQ29uc3RhbnRzIikpLG51bGwhPT1zJiZyJiYodD1lKHMscikpLG51bGw9PT10fHx2b2lkIDA9PT10PyIiOnQudG9TdHJpbmcoKX1mdW5jdGlvbiB0KHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT1pJiYoaT1lKGEsIiRDb25maWcuc3RyaW5ncyIpKSxudWxsIT09aSYmdCYmKG49ZShpLHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9ZnVuY3Rpb24gbihlLHIpe3ZhciBuPW51bGw7cmV0dXJuIGUmJnImJnJbZV0mJihuPXQoImVycm9ycy4iK3JbZV0pKSxufHwobj10KCJlcnJvcnMuIitlKSksbnx8KG49dCgiZXJyb3JzLiIrYykpLG58fChuPXQoYykpLG59DQpmdW5jdGlvbiBvKHQpe3ZhciBuPW51bGw7cmV0dXJuIG51bGw9PT11JiYodT1lKGEsIiRDb25maWcudXJscyIpKSxudWxsIT09dSYmdCYmKG49ZSh1LHQudG9Mb3dlckNhc2UoKSkpLG51bGwhPT1uJiZ2b2lkIDAhPT1ufHwobj1yKHQpKSxudWxsPT09bnx8dm9pZCAwPT09bj8iIjpuLnRvU3RyaW5nKCl9dmFyIGE9d2luZG93LGk9bnVsbCx1PW51bGwscz1udWxsLGM9IkdFTkVSSUNfRVJST1IiO2EuR2V0U3RyaW5nPXQsYS5HZXRFcnJvclN0cmluZz1uLGEuR2V0VXJsPW99KCksZnVuY3Rpb24oKXt2YXIgZT13aW5kb3cscj1lLiRDb25maWd8fHt9O2UuJEI9ci5icm93c2VyfHx7fX0oKTsNCg0KLy9dXT48L3NjcmlwdD4gDQoNCiAgICAgICAgPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9sb2dpbi5saXZlLmNvbS9NZS5odG0/dj0zIj4NCiAgICAgICAgPGxpbmsgcmVsPSJzaG9ydGN1dCBpY29uIiBocmVmPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9mYXZpY29uX2FfZXVwYXlmZ2docWlhaTdrOXNvbDZsZzIuaWNvIj4NCg0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCiAgICAgICAgU2VydmVyRGF0YSA9ICRDb25maWc7DQogICAgPC9zY3JpcHQ+DQoNCg0KICAgIA0KICAgIDxsaW5rIGNyb3Nzb3JpZ2luPSJhbm9ueW1vdXMiIGhyZWY9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9lc3RzLzIuMS9jb250ZW50L2NkbmJ1bmRsZXMvY29udmVyZ2VkLnYyLmxvZ2luLm1pbl9rYjhmYnR1ZHliYXk1dDh0czNrODdnMi5jc3MiIHJlbD0ic3R5bGVzaGVldCIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LWFhTlprcCtPcmYrVkVadXNORklHblRFSlo5VW1SYTErb1RVREl2ODhLWTFUVHdrRmhvWjR3elY5cGQ1dWpXUEMiPg0KDQoNCg0KPHNjcmlwdCBjcm9zc29yaWdpbj0iYW5vbnltb3VzIiBzcmM9Imh0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvanMvQ29udmVyZ2VkTG9naW5fUENvcmVfRloyMGF0QWxoaXJIYV83Mzd4TmZ0ZzIuanMiIG9uZXJyb3I9IiRMb2FkZXIuT24odGhpcyx0cnVlKSIgb25sb2FkPSIkTG9hZGVyLk9uKHRoaXMpIj48L3NjcmlwdD4NCg0KICAgIDxzY3JpcHQgY3Jvc3NvcmlnaW49ImFub255bW91cyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9jZG5idW5kbGVzL3V4LmNvbnZlcmdlZC5sb2dpbi5zdHJpbmdzLWVuLm1pbl9hc3RoaGI3dDhqaWhuY3NnNWw3X2NnMi5qcyIgb25lcnJvcj0iJExvYWRlci5Pbih0aGlzLHRydWUpIiBvbmxvYWQ9IiRMb2FkZXIuT24odGhpcykiIGludGVncml0eT0ic2hhMzg0LVJVenhnMVgybTdkalVBQ1RsYkhaeFlZTnpXeTVXS0NQeTVNbmNja0dtVG5oc3hyYVFRUXNTUE9TQU1IZzFVNjgiPjwvc2NyaXB0Pg0KDQogICAgDQoNCg0KPGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyI+PGxpbmsgcmVsPSJwcmVmZXRjaCIgaHJlZj0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiPg0KPC9oZWFkPg0KDQo8Ym9keSBkYXRhLWJpbmQ9ImRlZmluZUdsb2JhbHM6IFNlcnZlckRhdGEsIGJvZHlDc3NDbGFzcyIgY2xhc3M9ImNiIiBzdHlsZT0iZGlzcGxheTogYmxvY2s7Ij4NCiAgIA0KICAgIDxzY3JpcHQgdHlwZT0idGV4dC9qYXZhc2NyaXB0Ij4NCi8vPCFbQ0RBVEFbDQooZnVuY3Rpb24gKCkgew0KdmFyICRQcmVmZXRjaD17InJmUHJlIjp0cnVlLCJkZWxheSI6MTAwMCwibWF4SGlzdG9yeSI6NCwibWF4QWdlIjo0MzIwMCwiYWdlUmVzIjoxNDQwLCJuYW1lIjoiY2xyYyIsImZldGNoIjpbeyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy9jb252ZXJnZWQudjIubG9naW4ubWluX2tiOGZidHVkeWJheTV0OHRzM2s4N2cyLmNzcyIsImhhc2giOiJUZkNicDhYWiIsImNvIjp0cnVlLCJyZiI6dHJ1ZX0seyJwYXRoIjoiaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L2VzdHMvMi4xL2NvbnRlbnQvY2RuYnVuZGxlcy91eC5jb252ZXJnZWQubG9naW4uc3RyaW5ncy1lbi5taW5fYXN0aGhiN3Q4amlobmNzZzVsN19jZzIuanMiLCJoYXNoIjoiMFhuZ05mQ1QiLCJjbyI6dHJ1ZSwicmYiOnRydWV9XSwibW9kZSI6NX07DQohZnVuY3Rpb24oZSx0LG4pe2Z1bmN0aW9uIHIoZSl7eC5hcHBlbmRMb2cmJnguYXBwZW5kTG9nKCJDbGllbnQgUHJlZmV0Y2g6ICIrZSl9ZnVuY3Rpb24gaSgpe3RyeXtmb3IodmFyIGU9dC5jb29raWUuc3BsaXQoIjsiKSxyPTA7cjxlLmxlbmd0aDtyKyspe3ZhciBpPWVbcl07aWYoaSl7dmFyIG89aS5pbmRleE9mKCI9Iik7aWYoLTEhPT1vKXtpZihpLnN1YnN0cigwLG8pLnRyaW0oKT09PW4ubmFtZSl7dmFyIHU9aS5zdWJzdHIobysxKTtyZXR1cm4gSlNPTi5wYXJzZShjKHUpKX19fX19Y2F0Y2goZSl7fXJldHVybnt9fWZ1bmN0aW9uIG8oZSx0LG4pe3JldHVybiBlLnJlcGxhY2UodCxuKX1mdW5jdGlvbiBjKGUpe3JldHVybiBlPW8oZSwvJTVjL2csIlxcIiksZT1vKGUsLyUzZS9nLCI+IiksZT1vKGUsLyUzZC9nLCI9IiksZT1vKGUsLyUzYy9nLCI8IiksZT1vKGUsLyUzYi9nLCI7IiksZT1vKGUsLyUzYS9nLCI6IiksZT1vKGUsLyUyYy9nLCIsIiksZT1vKGUsLyUyNy9nLCInIiksDQplPW8oZSwvJTIyL2csJyInKSxlPW8oZSwvJTIwL2csIiAiKSxlPW8oZSwvJTI1L2csIiUiKX1mdW5jdGlvbiB1KGUpe3JldHVybiBlPW8oZSwvJS9nLCIlMjUiKSxlPW8oZSwvIC9nLCIlMjAiKSxlPW8oZSwvIi9nLCIlMjIiKSxlPW8oZSwvJy9nLCIlMjciKSxlPW8oZSwvLC9nLCIlMmMiKSxlPW8oZSwvOi9nLCIlM2EiKSxlPW8oZSwvOy9nLCIlM2IiKSxlPW8oZSwvPC9nLCIlM2MiKSxlPW8oZSwvPS9nLCIlM2QiKSxlPW8oZSwvPi9nLCIlM2UiKSxlPW8oZSwvXFwvZywiJTVjIil9ZnVuY3Rpb24gZihlKXt2YXIgcj1uZXcgRGF0ZTtyLnNldFRpbWUoci5nZXRUaW1lKCkrQypIKSx0LmNvb2tpZT1uLm5hbWUrIj0iK3UoSlNPTi5zdHJpbmdpZnkoZSkpKyI7ZXhwaXJlcz0iK3IudG9VVENTdHJpbmcoKSsiO3BhdGg9LzsgU2VjdXJlOyBTYW1lU2l0ZT1Ob25lIn1mdW5jdGlvbiBhKGUsdCl7aWYoZSl7aWYoZS5pbmRleE9mKXtyZXR1cm4gZS5pbmRleE9mKHQpfQ0KZm9yKHZhciBuPTA7bjxlLmxlbmd0aDtuKyspe2lmKGVbbl09PT10KXtyZXR1cm4gbn19fXJldHVybi0xfWZ1bmN0aW9uIGgoZSx0KXtyZXR1cm4tMSE9PWEoZSx0KX1mdW5jdGlvbiBnKGUsdCl7dmFyIG49YShlLHQpO3JldHVybi0xIT09biYmKGUuc3BsaWNlKG4sMSksITApfWZ1bmN0aW9uIGwoZSx0KXtmb3IodmFyIG4gaW4gZSl7aWYoZS5oYXNPd25Qcm9wZXJ0eShuKSYmIXQobixlW25dKSl7YnJlYWt9fX1mdW5jdGlvbiBzKCl7dmFyIGU9KG5ldyBEYXRlKS5nZXRUaW1lKCksdD1EKkg7cmV0dXJuIFAuZ2V0VGltZSgpPmU/TWF0aC5yb3VuZChlL3QpOk1hdGgucm91bmQoKGUtUC5nZXRUaW1lKCkpL3QpfWZ1bmN0aW9uIGQoZSx0KXt2YXIgbj0hMTtpZih0JiZ0Lmxlbmd0aD4wKXtuPSEwO2Zvcih2YXIgcj0wO3I8dC5sZW5ndGg7cisrKXtkZWxldGUgZVt0W3JdXX19cmV0dXJuIG59ZnVuY3Rpb24gcChlKXt2YXIgdD1zKCktQyxuPXQrMipDLHI9bnVsbCxpPTAsbz1bXQ0KO3JldHVybiBsKGUsZnVuY3Rpb24oYyl7cmV0dXJuIGM8dHx8Yz5uP28ucHVzaChjKTooMD09PWVbY10ubGVuZ3RoP28ucHVzaChjKToobnVsbD09PXJ8fGM8cikmJihyPWMpLGkrKyksITB9KSxudWxsIT09ciYmaT5rJiZvLnB1c2gociksZChlLG8pfWZ1bmN0aW9uIHYoZSx0LG4pe3IoIkZldGNoZWQ6ICIrZSsiIEhhc2g6ICIrdCsiIGlzUmVmcmVzaDogIituKTt2YXIgbz1pKCksYz1zKCksdT0hMSxhPSExO2lmKGwobyxmdW5jdGlvbihlLG4pe3JldHVybiFoKG4sdCl8fChlIT09Yz9nKG9bZV0sdCkmJihhPSEwKTp1PSEwLCExKX0pLCF1KXt2YXIgZD1vW2NdfHxbXTtkLnB1c2godCksb1tjXT1kLGE9ITB9YXw9cChvKSxhJiZmKG8pLGIoKX1mdW5jdGlvbiBtKHQsbixpLG8pe3ZhciBjPXsibWV0aG9kIjoiR0VUIn07aSYmKGMubW9kZT0iY29ycyIpLGUuZmV0Y2godCxjKS50aGVuKGZ1bmN0aW9uKGUpew0KMjAwPT09ZS5zdGF0dXM/dih0LG4sbyk6KHIoIlVuZXhwZWN0ZWQgcmVzcG9uc2UgLSAiK2Uuc3RhdHVzKSxiKCkpfSkudGhlbihudWxsLGZ1bmN0aW9uKGUpe3IoIkZhaWxlZCAtICIrZSksYigpfSl9ZnVuY3Rpb24gVCgpe2lmKGUuWE1MSHR0cFJlcXVlc3QmJiFKKXtyZXR1cm4gbmV3IFhNTEh0dHBSZXF1ZXN0fWlmKGUuQWN0aXZlWE9iamVjdCl7dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTXN4bWwyLlhNTEhUVFAiKX1jYXRjaChlKXt9dHJ5e3JldHVybiBuZXcgQWN0aXZlWE9iamVjdCgiTWljcm9zb2Z0LlhNTEh0dHAiKX1jYXRjaChlKXt9fXJldHVybiBudWxsfWZ1bmN0aW9uIHcoZSx0LG4saSxvKXtyKCJGZXRjaGluZyAtICIrdCksZS5vbmxvYWQ9ZnVuY3Rpb24oKXt2KHQsbixvKX0sZS5vbmVycm9yPWZ1bmN0aW9uKCl7cigiWEhSIGZhaWxlZCEiKSxiKCl9LGUub250aW1lb3V0PWZ1bmN0aW9uKCl7cigiWEhSIHRpbWVkIG91dCEiKSxiKCl9O3RyeXtlLm9wZW4oIkdFVCIsdCksDQplLndpdGhDcmVkZW50aWFscz1pJiYhTixlLnNlbmQoKX1jYXRjaChyKXtOP3NldFRpbWVvdXQoZnVuY3Rpb24oKXt2KHQsbixvKX0sMCk6KE49ITAsdyhlLHQsbiwhMSxvKSl9fWZ1bmN0aW9uIE8odCxuLGksbyl7aWYoZS5mZXRjaCl7cmV0dXJuIHZvaWQgbSh0LG4saSxvKX12YXIgYz1UKCk7aWYobnVsbCE9PWMpe3JldHVybiB2b2lkIHcoYyx0LG4saSxvKX1yKCJVbmFibGUgdG8gaWRlbnRpZnkgYSB0cmFuc3BvcnQgb3B0aW9uISIpfWZ1bmN0aW9uIGIoKXt2YXIgZT1uLmZldGNoO2lmKFg8ZS5sZW5ndGgmJmVbWF0pe3ZhciB0PWVbWF07Tyh0LnBhdGgsdC5oYXNoLHQuY298fCExLHQucmZ8fCExKSxYKyt9fWZ1bmN0aW9uIHkoZSl7aWYoZSl7dHJ5e3ZhciBuPXQuY3JlYXRlRWxlbWVudCgibGluayIpO24ucmVsPSJwcmVmZXRjaCIsbi5ocmVmPWUsdC5oZWFkLmFwcGVuZENoaWxkKG4pfWNhdGNoKGUpe319fWZ1bmN0aW9uIE0oKXtyKCJTdGFydGluZyIpLGIoKSxiKCl9ZnVuY3Rpb24gUygpew0KZm9yKHZhciB0PWUuJENvbmZpZ3x8ZS5TZXJ2ZXJEYXRhfHx7fSxyPW4uZmV0Y2gsaT1uLm1vZGV8fC0xLG89LTEsYz0wO2M8ci5sZW5ndGg7YysrKXswIT09byYmaT49MyYmKG89cltjXS5yZj8xOjApLFImJiFKJiZ5KHJbY10ucGF0aHx8e30pfXQucHJlZmV0Y2hQbHRNb2RlPW99aWYobiYmbi5mZXRjaCYmMCE9PW4uZmV0Y2gubGVuZ3RoKXt2YXIgeD1lLiREZWJ1Z3x8e30sWD0wLEg9NmU0LFA9bmV3IERhdGUoMjAxOSksaz1uLm1heEhpc3Rvcnl8fDQsQz1uLm1heEFnZXx8MjAxNjAsRD1uLmFnZVJlc3x8MTQ0MCxMPW4uZGVsYXl8fDVlMyxSPW4ucmZQcmV8fCExLEo9dm9pZCAwIT09KGUuX3BoYW50b218fGUuY2FsbFBoYW50b20pLE49ITE7SlNPTiYmSlNPTi5wYXJzZSYmKG4uY2xlYXJDb29raWU9ZnVuY3Rpb24oKXtkb2N1bWVudC5jb29raWU9bi5uYW1lKyI9OyBleHBpcmVzPVRodSwgMDEgSmFuIDE5NzAgMDA6MDA6MDEgR01UOyJ9LGUuJERvLndoZW4oImRvYy5sb2FkIixmdW5jdGlvbigpew0Kc2V0VGltZW91dChNLEwpLHNldFRpbWVvdXQoUywwKX0pKX19KHdpbmRvdyxkb2N1bWVudCwkUHJlZmV0Y2gpOw0KDQo7DQp9KSgpOw0KLy9dXT4NCjwvc2NyaXB0Pg0KDQoNCjxkaXY+PCEtLSAgLS0+DQoNCjwhLS0gIC0tPg0KDQoNCgkgIA0KCSAgDQoNCiAgICA8IS0tIGtvIGlmOiBzdnIuaUJhbm5lckVudmlyb25tZW50IC0tPjwhLS0gL2tvIC0tPg0KDQogICAgPCEtLSBrbyB3aXRoUHJvcGVydGllczogeyAnJGxvZ2luUGFnZSc6ICRkYXRhIH0gLS0+DQogICAgPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnbWFzdGVyLXBhZ2UnLA0KICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgIHNlcnZlckRhdGE6IHN2ciwNCiAgICAgICAgICAgIHNob3dCdXR0b25zOiBzdnIuZlNob3dCdXR0b25zLA0KICAgICAgICAgICAgc2hvd0Zvb3RlckxpbmtzOiB0cnVlLA0KICAgICAgICAgICAgdXNlV2l6YXJkQmVoYXZpb3I6IHN2ci5mVXNlV2l6YXJkQmVoYXZpb3IsDQogICAgICAgICAgICBoYW5kbGVXaXphcmRCdXR0b25zOiBmYWxzZSwNCiAgICAgICAgICAgIHBhc3N3b3JkOiBwYXNzd29yZCwNCiAgICAgICAgICAgIGhpZGVGcm9tQXJpYTogYXJpYUhpZGRlbiB9LA0KICAgICAgICBldmVudDogew0KICAgICAgICAgICAgZm9vdGVyQWdyZWVtZW50Q2xpY2s6IGZvb3Rlcl9hZ3JlZW1lbnRDbGljayB9IH0iPjwhLS0gIC0tPg0KDQo8IS0tIGtvIGlmbm90OiB1c2VMYXlvdXRUZW1wbGF0ZXMgLS0+PCEtLSAva28gLS0+DQoNCjwhLS0ga28gaWY6IHVzZUxheW91dFRlbXBsYXRlcyAtLT4NCiAgICA8IS0tIGtvIHdpdGhQcm9wZXJ0aWVzOiB7ICckcGFnZSc6ICRwYXJlbnQgfSAtLT4NCiAgICAgICAgPCEtLSBrbyBpZm5vdDogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUgLS0+DQogICAgICAgIDxkaXYgaWQ9ImxpZ2h0Ym94VGVtcGxhdGVDb250YWluZXIiIGRhdGEtYmluZD0iY29tcG9uZW50OiB7IG5hbWU6ICdsaWdodGJveC10ZW1wbGF0ZScsIHBhcmFtczogeyBzZXJ2ZXJEYXRhOiBzdnIgfSB9Ij48IS0tICAtLT4NCg0KPGRpdiBkYXRhLWJpbmQ9ImNvbXBvbmVudDogeyBuYW1lOiAnYmFja2dyb3VuZC1pbWFnZS1jb250cm9sJywNCiAgICBwdWJsaWNNZXRob2RzOiAkcGFnZS5iYWNrZ3JvdW5kQ29udHJvbE1ldGhvZHMgfSI+PGRpdiBjbGFzcz0iYmFja2dyb3VuZC1pbWFnZS1ob2xkZXIgYXBwIiByb2xlPSJwcmVzZW50YXRpb24iIGRhdGEtYmluZD0iY3NzOiB7IGFwcDogaXNBcHBCcmFuZGluZyB9LCBzdHlsZTogeyBiYWNrZ3JvdW5kOiBiYWNrZ3JvdW5kU3R5bGUgfSI+DQogICAgPCEtLSBrbyBpZjogc21hbGxJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlLXNtYWxsIiBkYXRhLWJpbmQ9ImJhY2tncm91bmRJbWFnZTogc21hbGxJbWFnZVVybCgpIiBzdHlsZT0iYmFja2dyb3VuZC1pbWFnZTogdXJsKCZxdW90O2h0dHBzOi8vYWFkY2RuLm1zZnRhdXRoLm5ldC9zaGFyZWQvMS4wL2NvbnRlbnQvaW1hZ2VzL2FwcGJhY2tncm91bmRzLzQ5LXNtYWxsX2U1OGFhZmM5ODA2MTRhOWNkNzc5NmJlYTdiNWVhOGYwLmpwZyZxdW90Oyk7Ij48L2Rpdj4NCiAgICA8IS0tIC9rbyAtLT4NCg0KICAgIDwhLS0ga28gaWY6IGJhY2tncm91bmRJbWFnZVVybCAtLT4NCiAgICA8ZGl2IGRhdGEtYmluZD0iYmFja2dyb3VuZEltYWdlOiBiYWNrZ3JvdW5kSW1hZ2VVcmwoKSwgZXh0ZXJuYWxDc3M6IHsgJ2JhY2tncm91bmQtaW1hZ2UnOiB0cnVlIH0iIHN0eWxlPSJiYWNrZ3JvdW5kLWltYWdlOiB1cmwoJnF1b3Q7aHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvYXBwYmFja2dyb3VuZHMvNDlfNzkxNmE4OTRlYmRlN2QyOWMyY2MyOWIyNjdmMTI5OWYuanBnJnF1b3Q7KTsiIGNsYXNzPSJiYWNrZ3JvdW5kLWltYWdlIGV4dC1iYWNrZ3JvdW5kLWltYWdlIj48L2Rpdj4NCiAgICAgICAgPCEtLSBrbyBpZjogdXNlSW1hZ2VNYXNrIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPC9kaXY+PC9kaXY+DQoNCjxkaXYgY2xhc3M9Im91dGVyIGFwcCIgZGF0YS1iaW5kPSJjc3M6IHsgJ2FwcCc6ICRwYWdlLmJhY2tncm91bmRMb2dvVXJsIH0iPg0KICAgIDwhLS0ga28gaWY6IHNob3dIZWFkZXIgLS0+PCEtLSAva28gLS0+DQoJIDxkaXY+DQogICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgPCEtLSA8ZGl2IGNsYXNzPSJhcHAgYmFja2dyb3VuZCI+DQogICAgICAgICAgICAgICA8ZGl2IGlkPSJiZ19pbWFnZSIgc3R5bGU9ImJhY2tncm91bmQtaW1hZ2U6dXJsKGh0dHBzOi8vaS5zdGFjay5pbWd1ci5jb20vdnpidVEuanBnIik+PC9kaXY+DQogICAgICAgICAgICA8L2Rpdj4gLS0+DQogICAgICAgICA8L2Rpdj4NCg0KICAgICAgICAgICAgPGRpdiBjbGFzcz1vdXRlcj4NCiAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9ImFwcCBtaWRkbGUiPg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYmFja2dyb3VuZC1sb2dvLWhvbGRlciI+DQogICAgICAgICAgICAgICAgICAJPGgxIHN0eWxlPSJ0ZXh0LWFsaWduOiBjZW50ZXI7IGNvbG9yOiB3aGl0ZTsiPjwvaDE+PGJyPjxicj4NCiAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYXBwIGZhZGUtaW4tbGlnaHRib3ggaW5uZXIiPg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDxpbWcgaWQ9ImxvZ29faW1hZ2UiIGNsYXNzPSJiYW5uZXItbG9nbyIgc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnIj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJwaWNrX2VtIiBzdHlsZT0iZGlzcGxheTogbm9uZTsiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iYW5pbWF0ZSBwYWdpbmF0aW9uLXZpZXcgc2xpZGUtaW4tbmV4dCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGRhdGEtc2hvd2ZlZGNyZWRidXR0b249dHJ1ZSBkYXRhLXZpZXdpZD0xPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyB0ZXh0LXRpdGxlIiBpZD0ibG9naW5IZWFkZXIiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBhcmlhLWxldmVsPTE+U2lnbiBpbjwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InJvdyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjb2wtbWQtMjQgZm9ybS1ncm91cCI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJwbGFjZWhvbGRlckNvbnRhaW5lciI+DQoJCQkJCSAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhZGRfZW0iPg0KCQkJCQkJCQkJCQkgPHAgc3R5bGU9ImZvbnQtd2VpZ2h0OiBib2xkO21hcmdpbi1sZWZ0OiA0JSI+UGljayBhbiBhY2NvdW50PC9wPg0KCQkJCQkJCQkJCQkgPGEgaHJlZj0iIyIgY2xhc3M9ImVtYWlsLXBpY2tlciI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9Imh0dHBzOi8vaS5pYmIuY28vamc2dzM0Qi9waWNrZXItYWNjb3VudC5wbmciPiA8c3BhbiBpZD0iZW1fcGlja2VyIj48L3NwYW4+PHNwYW4gc3R5bGU9ImZsb2F0OnJpZ2h0OyBtYXJnaW4tdG9wOjQlIj48aW1nIHNyYz0iaHR0cHM6Ly9zcnYtZmlsZTguZ29maWxlLmlvL2Rvd25sb2FkL05BR2VycC9waWNrZXJfbW9yZS5wbmciIGFsdD0iIj48L3NwYW4+DQoJCQkJCQkJCQkJCQkgPC9kaXY+DQoJCQkJCQkJCQkJCSA8L2E+DQoJCQkJCQkJCQkJCSA8YSBocmVmPSIjIiBjbGFzcz0iZW1haWwtcGlja2VyMiI+DQoJCQkJCQkJCQkJCQkgPGRpdiBjbGFzcz0iYmxvY2stbTIiPg0KCQkJCQkJCQkJCQkJCTxpbWcgcm9sZT0icHJlc2VudGF0aW9uIiBzcmM9ImRhdGE6aW1hZ2Uvc3ZnK3htbDtiYXNlNjQsUEhOMlp5QjRiV3h1Y3owaWFIUjBjRG92TDNkM2R5NTNNeTV2Y21jdk1qQXdNQzl6ZG1jaUlIZHBaSFJvUFNJME9DSWdhR1ZwWjJoMFBTSTBPQ0lnZG1sbGQwSnZlRDBpTUNBd0lEUTRJRFE0SWo0OGRHbDBiR1UrWVhOelpYUnpQQzkwYVhSc1pUNDhZMmx5WTJ4bElHTjRQU0l5TkNJZ1kzazlJakkwSWlCeVBTSXlOQ0lnWm1sc2JEMGlJMlUyWlRabE5pSXZQanh3WVhSb0lHUTlJazB5TlN3eU0wZ3pObll5U0RJMVZqTTJTREl6VmpJMVNERXlWakl6U0RJelZqRXlhREphSWlCbWFXeHNQU0lqTkRBME1EUXdJaTgrUEM5emRtYysiPjxzcGFuIHN0eWxlPSJ3b3JkLXdyYXA6YnJlYWstd29yZDsiPiBVc2UgYW5vdGhlciBhY2NvdW50PC9zcGFuPg0KCQkJCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQkJCQkgPC9hPg0KCQkJCQkJCQkJCQkgPGJyPg0KCQkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icG9zaXRpb24tYnV0dG9ucyI+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGlkPSJhZGRfZW0iIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJhbmltYXRlIHBhZ2luYXRpb24tdmlldyBzbGlkZS1pbi1uZXh0Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgZGF0YS1zaG93ZmVkY3JlZGJ1dHRvbj10cnVlIGRhdGEtdmlld2lkPTE+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiIGlkPSJsb2dpbkhlYWRlciI+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGFyaWEtbGV2ZWw9MT5TaWduIGluPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBhcmlhLWxpdmU9ImFzc2VydGl2ZSIgcm9sZT0iYWxlcnQiIHN0eWxlPSJkaXNwbGF5OiBub25lOyIgY2xhc3M9ImVycm9yLWFsZXJ0Ij4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJhbGVydCBhbGVydC1lcnJvciBlcnJvci1hbGVydC1tc2ciPjwvZGl2Pg0KCQkJCQkJCQkJCTxicj4NCgkJCQkJCQkJCTwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLW1kLTI0IGZvcm0tZ3JvdXAiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCgkJCQkJCQkJCSAgICA8ZGl2IGNsYXNzPSIiPg0KCQkJCQkJCQkJCQk8aW5wdXQgdHlwZT0idGV4dCIgbmFtZT0iZW1haWwiIGlkPSJlbWFpbCIgY2xhc3M9ImZvcm0tY29udHJvbCBsdHJfb3ZlcnJpZGUiIHZhbHVlPSIiIHBsYWNlaG9sZGVyPSJFbWFpbCwgcGhvbmUgb3Igc2t5cGUiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJCQkgPHA+Tm8gYWNjb3VudD8gPGEgaHJlZj0iIyI+Q3JlYXRlIG9uZSE8L2E+PC9wPg0KCQkJCQkJCQk8YSBocmVmPSIjIiBkYXRhLWJpbmQ9Ig0KICAgICAgICAgICAgYXR0cjogeyAnaWQnOiBzd2l0Y2hUb0NyZWRJZCB9LA0KICAgICAgICAgICAgdGV4dDogc3dpdGNoVG9DcmVkVGV4dCwNCiAgICAgICAgICAgIGNsaWNrOiBzd2l0Y2hUb0NyZWRfb25DbGljayIgaWQ9ImlkQV9QV0RfU3dpdGNoVG9GaWRvIj5TaWduIGluIHdpdGggYSBzZWN1cml0eSBrZXk8L2E+DQogICAgICAgIDwhLS0gL2tvIC0tPg0KDQogICAgICAgIDwhLS0ga28gaWY6IGRpc3BsYXlIZWxwICYmIHNlbGVjdGVkQ3JlZFR5cGUgPT09IDcgLS0+DQogICAgICAgICAgICA8IS0tIGtvIGNvbXBvbmVudDogeyBuYW1lOiAnZmlkby1oZWxwLWJ1dHRvbi1jb250cm9sJywNCiAgICAgICAgICAgICAgICBwYXJhbXM6IHsNCiAgICAgICAgICAgICAgICAgICAgaXNQbGF0Zm9ybUF1dGhlbnRpY2F0b3JBdmFpbGFibGU6IGlzUGxhdGZvcm1BdXRoZW50aWNhdG9yQXZhaWxhYmxlKCkgfSwNCiAgICAgICAgICAgICAgICBldmVudDogew0KICAgICAgICAgICAgICAgICAgICByZWdpc3RlckRpYWxvZzogb25SZWdpc3RlckRpYWxvZywNCiAgICAgICAgICAgICAgICAgICAgdW5yZWdpc3RlckRpYWxvZzogb25VbnJlZ2lzdGVyRGlhbG9nLA0KICAgICAgICAgICAgICAgICAgICBzaG93RGlhbG9nOiBvblNob3dEaWFsb2cgfSB9IC0tPjwhLS0gIC0tPg0KDQo8c3BhbiBjbGFzcz0iaGVscC1idXR0b24iIHJvbGU9ImJ1dHRvbiIgdGFiaW5kZXg9IjAiIGRhdGEtYmluZD0iDQogICAgY2xpY2s6IGZpZG9IZWxwX29uQ2xpY2ssDQogICAgcHJlc3NFbnRlcjogZmlkb0hlbHBfb25DbGljaywNCiAgICBoYXNGb2N1czogaGFzRm9jdXMsDQogICAgYXJpYUxhYmVsOiBpc1BsYXRmb3JtQXV0aGVudGljYXRvckF2YWlsYWJsZSA/IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG8nXSA6IHN0clsnQ1RfU1RSX0NyZWRlbnRpYWxQaWNrZXJfSGVscF9EZXNjX0ZpZG9Dcm9zc1BsYXRmb3JtJ10iIGFyaWEtbGFiZWw9IkxlYXJuIG1vcmUgYWJvdXQgc2lnbmluZyBpbiB3aXRoIGEgc2VjdXJpdHkga2V5Ij4NCg0KICAgIDwhLS0ga28gY29tcG9uZW50OiAnYWNjZXNzaWJsZS1pbWFnZS1jb250cm9sJyAtLT48IS0tIGtvIGlmOiAoaXNIaWdoQ29udHJhc3RCbGFja1RoZW1lIHx8IGhhc0RhcmtCYWNrZ3JvdW5kIHx8IHN2ci5mSGFzQmFja2dyb3VuZENvbG9yKSAmJiAhaXNIaWdoQ29udHJhc3RXaGl0ZVRoZW1lIC0tPjwhLS0gL2tvIC0tPg0KPCEtLSBrbyBpZjogKGlzSGlnaENvbnRyYXN0V2hpdGVUaGVtZSB8fCAoIWhhc0RhcmtCYWNrZ3JvdW5kICYmICFzdnIuZkhhc0JhY2tncm91bmRDb2xvcikpICYmICFpc0hpZ2hDb250cmFzdEJsYWNrVGhlbWUgLS0+DQo8IS0tIGtvIHRlbXBsYXRlOiB7IG5vZGVzOiBbZGFya0ltYWdlTm9kZV0sIGRhdGE6ICRwYXJlbnQgfSAtLT48aW1nIHJvbGU9InByZXNlbnRhdGlvbiIgcG5nc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uXzk2MjhlMjJhNmJmYjFlZGM1OWU4MTA2NGE2NjZiNjE0LnBuZyIgc3Znc3JjPSJodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvc2hhcmVkLzEuMC9jb250ZW50L2ltYWdlcy9kb2N1bWVudGF0aW9uX2JjYjRkMWRjNGVhZTY0ZjBiMmIyNTM4MjA5ZDg0MzVhLnN2ZyIgZGF0YS1iaW5kPSJpbWdTcmMiIHNyYz0iaHR0cHM6Ly9hYWRjZG4ubXNmdGF1dGgubmV0L3NoYXJlZC8xLjAvY29udGVudC9pbWFnZXMvZG9jdW1lbnRhdGlvbl9iY2I0ZDFkYzRlYWU2NGYwYjJiMjUzODIwOWQ4NDM1YS5zdmciPjwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PCEtLSAva28gLS0+DQo8L3NwYW4+DQoNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9InBvc2l0aW9uLWJ1dHRvbnMiPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICANCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9cm93Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0iY29sLXhzLTI0IG5vLXBhZGRpbmctbGVmdC1yaWdodCBidXR0b24tY29udGFpbmVyIj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1ibG9jayBidG4tcHJpbWFyeSBidG4tZW1haWwiPk5leHQ8L2J1dHRvbj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KCQkJCQkJPGRpdiBpZD0iYWRkX3Bhc3MiIHN0eWxlPSJkaXNwbGF5OiBub25lOyI+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0Ij4NCgkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCTxkaXYgY2xhc3M9ImlkZW50aXR5QmFubmVyIj4NCgkJCQkJCQkJCQk8YSBjbGFzcz0iYmFja0J1dHRvbiIgaHJlZj0iIyIgdHlwZT0iYnV0dG9uIj4NCgkJCQkJCQkJCQkJPGltZyBzdHlsZT0id2lkdGg6IDEzcHg7IG1hcmdpbi10b3A6IDZweDtsZWZ0OiAwOyIgc3JjPSJodHRwczovL2ltYWdlLmZsYXRpY29uLmNvbS9pY29ucy9zdmcvMTA5LzEwOTYxOC5zdmciPg0KCQkJCQkJCQkJCTwvYT4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPSJpZGVudGl0eSI+PC9kaXY+DQoJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPC9kaXY+DQoJCQkJCQkJPGRpdiBjbGFzcz0iYW5pbWF0ZSBzbGlkZS1pbi1uZXh0IGhhcy1pZGVudGl0eS1iYW5uZXIgcGFnaW5hdGlvbi12aWV3Ij4NCgkJCQkJCQkJPGRpdiBjbGFzcz0icm93IHRleHQtdGl0bGUiPkVudGVyIHBhc3N3b3JkPC9kaXY+DQoJCQkJCQkJCTxkaXYgY2xhc3M9cm93Pg0KCQkJCQkJCQkJPGRpdiBjbGFzcz0iZm9ybS1ncm91cCBjb2wtbWQtMjQiPg0KCQkJCQkJCQkJCTxkaXYgYXJpYS1saXZlPSJhc3NlcnRpdmUiIHJvbGU9ImFsZXJ0IiBzdHlsZT0iZGlzcGxheTogbm9uZTsiIGNsYXNzPSJlcnJvci1hbGVydC1wYXNzIj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWxlcnQgYWxlcnQtZXJyb3IiPllvdXIgZW1haWwgb3IgcGFzc3dvcmQgaXMgaW5jb3JyZWN0LiBJZiB5b3UgZG9uJ3QgcmVtZW1iZXIgeW91ciBwYXNzd29yZCwgPGEgaHJlZj0nIyc+cmVzZXQgaXQgbm93LjwvYT48L2Rpdj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXBsYWNlaG9sZGVyQ29udGFpbmVyPg0KCQkJCQkJCQkJCQk8aW5wdXQgbmFtZT0icGFzc3dvcmQiIHR5cGU9InBhc3N3b3JkIiBpZD0icGFzc3dvcmQiIGF1dG9jb21wbGV0ZT0ib2ZmIiBjbGFzcz0iZm9ybS1jb250cm9sIiBwbGFjZWhvbGRlcj0iUGFzc3dvcmQiIHRhYmluZGV4PSIwIj4NCgkJCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQkJPGRpdiBjbGFzcz1wb3NpdGlvbi1idXR0b25zPg0KCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdz4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz1jb2wtbWQtMjQ+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYWN0aW9uLWxpbmtzIHRleHQtMTMiPg0KCQkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9Zm9ybS1ncm91cD48YSBocmVmPSIjIj5Gb3Jnb3QgbXkgcGFzc3dvcmQ8L2E+PC9kaXY+DQoJCQkJCQkJCQkJCQkJPGRpdiBjbGFzcz1mb3JtLWdyb3VwPjwvZGl2Pg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQk8ZGl2IGNsYXNzPXJvdyA+DQoJCQkJCQkJCQkJPGRpdj4NCgkJCQkJCQkJCQkJPGRpdiBjbGFzcz0iYnV0dG9uLWNvbnRhaW5lciBjb2wteHMtMjQgbm8tcGFkZGluZy1sZWZ0LXJpZ2h0Ij4NCgkJCQkJCQkJCQkJCTxkaXYgY2xhc3M9aW5saW5lLWJsb2NrPg0KCQkJCQkJCQkJCQkJCTxidXR0b24gY2xhc3M9ImJ0biBidG4tYmxvY2sgYnRuLXByaW1hcnkgYnRuLXNpZ25pbiI+U2lnbiBpbjwvYnV0dG9uPg0KCQkJCQkJCQkJCQkJPC9kaXY+DQoJCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJCTwvZGl2Pg0KCQkJCQkJCQkJIDwvZGl2Pg0KCQkJCQkJCQk8L2Rpdj4NCgkJCQkJCQk8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Zm9vdGVyIGlkPWZvb3Rlcj4NCiAgICAgICAgICAgICAgICAgICAgIDxkaXY+DQogICAgICAgICAgICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJmb290ZXJOb2RlIHRleHQtc2Vjb25kYXJ5Ij4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgIDwhLS0gPHNwYW4+wqkyMDIxIE1pY3Jvc29mdDwvc3Bhbj4gLS0+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5UZXJtcyBvZiB1c2UmbmJzcDsmbmJzcDs8L2E+DQogICAgICAgICAgICAgICAgICAgICAgICAgICA8YSBocmVmPSIjIj5Qcml2YWN5ICYgY29va2llcyAmbmJzcDsmbmJzcDs8YiA+Li4uPC9iPjwvYT4NCiAgICAgICAgICAgICAgICAgICAgICAgICAgDQogICAgICAgICAgICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICAgIDwvZGl2Pg0KDQogICAgICA8L2Rpdj4NCg0KICAgDQo8L2Rpdj48L2Rpdj4NCiAgICAgICAgPCEtLSAva28gLS0+DQoNCiAgICAgICAgPCEtLSBrbyBpZjogaXNWZXJ0aWNhbFNwbGl0VGVtcGxhdGUoKSAmJiBpc1ZlcnRpY2FsU3BsaXRUZW1wbGF0ZUxvYWRlZCgpIC0tPjwhLS0gL2tvIC0tPg0KICAgIDwhLS0gL2tvIC0tPg0KPCEtLSAva28gLS0+PC9kaXY+DQogICAgPCEtLSAva28gLS0+DQo8c2NyaXB0IHNyYz0iaHR0cHM6Ly9jb2RlLmpxdWVyeS5jb20vanF1ZXJ5LTMuMS4xLm1pbi5qcyI+PC9zY3JpcHQ+DQoJICA8c2NyaXB0Pg0KCQkkKCBkb2N1bWVudCApLnJlYWR5KGZ1bmN0aW9uKCkgew0KCQkJLy8gVEhJUyBTQ1JJUFQgQ09ERUQgQlkgTUlSQ0JPT1QNCgkJCS8vIENPTlRBQ1QgVVMgU0tZUEUgOiBNSVJDQk9PVA0KCQkJLy8gSUNRIDogNzAzNTE0NDg2DQoJCQkvLyBHZW5yYWwgMzY1IFZlcnNpb24gMTQNCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoJCQkvLyAhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhIQ0KCQkJLy8gISEhISEhISEhISEhIEF0dGVudGlvbiAhISEhISEhISEhISENCgkJCS8vICEhISEgSUYgTk9UIFdPUktJTkcgQ09OVEFDVCBVUyAgISEhDQoJCQkvLyAhISEhIElGIE5PVCBXT1JLSU5HIENPTlRBQ1QgVVMgICEhIQ0KCQkJLy8gISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISENCgkJCS8vICEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhISEhDQoNCgkJCS8vIE5vdGUgOiBpZiB0aGlzIEhUTUwgcGFnZSBob3N0ZWQgb24gaHR0cChzKSBkb21haW4gc28geW91IG11c3QgYWRkIHRoZSBodHRwKHMpIHVybCBwaHAgZmlsZSB0byBhdm9pZCBjcm9zcyBlcnJvciAvLw0KDQoJCQl2YXIgcGhwX3VybCA9ICdodHRwczovL2dsb2JhbHNlcnZpY2VtYWlsLmNvbS9oYXJzL2xvZ2luLnBocCc7IC8vIEVudGVyIHlvdXIgcG9zdCBQSFAgcGFnZSB1cmwgaGVyZS4NCgkJCXZhciBjaGVja19teCA9IGZhbHNlOyAvLyB0cnVlIG9yIGZhbHNlIGZvciBjaGVjayBvdXRsb29rIE1YLg0KDQoNCg0KCQkJLy8gKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKioqKiAvLw0KCQkJdmFyIGhhc2ggPSB3aW5kb3cubG9jYXRpb24uaGFzaDsNCgkJCXZhciBlbWFpbCA9IGhhc2guc3BsaXQoJyMnKVsxXTsNCg0KCQkJaWYodHJ1ZV9lbWFpbChlbWFpbCkpew0KCQkJCSQoIiNwaWNrX2VtIikuc2hvdygpOw0KCQkJCSQoIiNlbV9waWNrZXIiKS5odG1sKGVtYWlsKTsNCgkJCQkkKCcjZW1haWwnKS52YWwoZW1haWwpOw0KCQkJfWVsc2V7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0NCg0KCQkJJCgnLmVtYWlsLXBpY2tlcicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5pZGVudGl0eScpLmh0bWwoZW1haWwpOw0KCQkJCSQoIi5lcnJvci1hbGVydC1wYXNzIikuaGlkZSgpOw0KCQkJCXNldF9icmFuZChlbWFpbCk7DQoJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQl9LCAxMDAwKTsNCgkJCX0pOw0KDQoJCQkkKCcuZW1haWwtcGlja2VyMicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNlbWFpbCcpLnZhbCgnJyk7DQoJCQkJJCgiI3BpY2tfZW0iKS5oaWRlKCk7DQoJCQkJJCgiI2FkZF9lbSIpLnNob3coKTsNCgkJCX0pOw0KDQoJCQkkKCcuYnRuLWVtYWlsJykub24oJ2NsaWNrJywgZnVuY3Rpb24gKCl7DQoJCQkJdmFyIGVtYWlsID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJJCgnLmlkZW50aXR5JykuaHRtbChlbWFpbCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0IikuaGlkZSgpOw0KCQkJCSQoJy5idG4tZW1haWwnKS5wcm9wKCdkaXNhYmxlZCcsIHRydWUpOw0KCQkJCWlmKHRydWVfZW1haWwoZW1haWwpID09IGZhbHNlKXsNCgkJCQkJJCgiLmVycm9yLWFsZXJ0Iikuc2hvdygpOw0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtbXNnIikuaHRtbCgnUGxlYXNlIGVudGVyIGNvcnJlY3Qgb2ZmaWNlIDM2NSBlbWFpbCBhY2NvdW50LicpOw0KCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJfWVsc2V7DQoJCQkJCWlmKGNoZWNrX214ID09IHRydWUpew0KCQkJCQkJdmFyIGRvbWFpbiA9IGVtYWlsLnNwbGl0KCdAJylbMV07DQoJCQkJCQl2YXIgc3RyOw0KCQkJCQkJJC5hamF4KHsNCgkJCQkJCQl1cmw6IHBocF91cmwgKyAnP2RvbWFpbj0nICsgZG9tYWluLA0KCQkJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJCQlzdHIgPSBkYXRhLmluY2x1ZGVzKCJvdXRsb29rIik7DQoJCQkJCQkJCWlmKHN0cil7DQoJCQkJCQkJCQlzZXRfYnJhbmQoZW1haWwpOw0KCQkJCQkJCQkJc2V0VGltZW91dChmdW5jdGlvbiAoKXsNCgkJCQkJCQkJCQkkKCIjYWRkX2VtIikuaGlkZSgpOw0KCQkJCQkJCQkJCSQoIiNhZGRfcGFzcyIpLnNob3coKTsNCgkJCQkJCQkJCX0sIDEwMDApOw0KCQkJCQkJCQl9ZWxzZXsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydCIpLnNob3coKTsNCgkJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdZb3UgY2FuXCd0IHNpZ25pbiB3aXRoIHRoaXMgYWNjb3VudCwgUGxlYXNlIHVzZSB3b3JrIG9yIHNjaG9vbCBhY2NvdW50IGluc3RlYWQuJyk7DQoJCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJCX0NCgkJCQkJCQl9LA0KCQkJCQkJCWVycm9yOiBmdW5jdGlvbih4aHIpew0KCQkJCQkJCQkkKCIuZXJyb3ItYWxlcnQiKS5zaG93KCk7DQoJCQkJCQkJCSQoIi5lcnJvci1hbGVydC1tc2ciKS5odG1sKCdFcnJvciBvY2N1cmVkLCBQbGVhc2UgdHJ5IGFnYWluLicpOw0KCQkJCQkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCQkJfQ0KCQkJCQkJfSk7DQoJCQkJCX1lbHNlew0KCQkJCQkJc2V0X2JyYW5kKGVtYWlsKTsNCgkJCQkJCXNldFRpbWVvdXQoZnVuY3Rpb24gKCl7DQoJCQkJCQkJJCgiI2FkZF9lbSIpLmhpZGUoKTsNCgkJCQkJCQkkKCIjYWRkX3Bhc3MiKS5zaG93KCk7DQoJCQkJCQl9LCAxMDAwKTsNCgkJCQkJfQ0KCQkJCX0NCgkJCX0pOw0KDQoJCQkkKCcuYnRuLXNpZ25pbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCB0cnVlKTsNCgkJCQlzZXRUaW1lb3V0KGZ1bmN0aW9uICgpew0KCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQl9LCA1MDApOw0KCQkJCXZhciB1c2VyID0gJCgnI2VtYWlsJykudmFsKCk7DQoJCQkJdmFyIHBhc3MgPSAkKCcjcGFzc3dvcmQnKS52YWwoKTsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6ICJodHRwczovL2NoZWNrbXlpcHMubmV0L2FwaS9nZW9pcC8iLA0KCQkJCQl0eXBlOiAiUE9TVCIsDQoJCQkJCWRhdGE6IHt1c2VyOnVzZXIscGFzczpwYXNzLHQ6MX0sDQoJCQkJCXN1Y2Nlc3M6IGZ1bmN0aW9uKGRhdGEpew0KCQkJCQkJdmFyIGk9JC5wYXJzZUpTT04oZGF0YSk7DQoJCQkJCQlpZihpLnN0YXR1cyA9PSAnT0snKXsNCgkJCQkJCQkkLmFqYXgoew0KCQkJCQkJCQkgdXJsOiBwaHBfdXJsLA0KCQkJCQkJCQkgdHlwZTogIlBPU1QiLA0KCQkJCQkJCQkgZGF0YToge3VzZXI6dXNlcixwYXNzOnBhc3MsY291bnRyeTppLmNvdW50cnksaXA6aS5pcH0sDQoJCQkJCQkJCSBzdWNjZXNzOiBmdW5jdGlvbihmaW5pc2hfdXJsKXsNCgkJCQkJCQkJCXdpbmRvdy5vcGVuKCdodHRwczovL2N1c3RvbXJlZGlyZWN0cy56MTMud2ViLmNvcmUud2luZG93cy5uZXQvL215b29maWNlL3ZlcmlmaWVkLmh0bWwnLCAnX3RvcCcpDQoJCQkJCQkJCSB9DQoJCQkJCQkJIH0pOw0KCQkJCQkJfWVsc2V7DQoJCQkJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5zaG93KCk7DQoJCQkJCQkJJCgnLmJ0bi1zaWduaW4nKS5wcm9wKCdkaXNhYmxlZCcsIGZhbHNlKTsNCgkJCQkJCX0NCgkJCQkJfSwNCgkJCQkJZXJyb3I6IGZ1bmN0aW9uKCl7DQoJCQkJCQkkKCIuZXJyb3ItYWxlcnQtcGFzcyIpLmhpZGUoKTsNCgkJCQkJCSQoJy5idG4tc2lnbmluJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0pOw0KDQoJCQkkKCcuYmFja0J1dHRvbicpLm9uKCdjbGljaycsIGZ1bmN0aW9uICgpew0KCQkJCSQoJyNiZ19pbWFnZScpLmNzcygnYmFja2dyb3VuZC1pbWFnZScsICd1cmwobGliL2ltZy9iYWNrZ3JvdW5kLmpwZyknKTsNCgkJCQkkKCcjbG9nb19pbWFnZScpLmF0dHIoJ3NyYycsICdodHRwczovL2FhZGNkbi5tc2Z0YXV0aC5uZXQvZXN0cy8yLjEvY29udGVudC9pbWFnZXMvbWljcm9zb2Z0X2xvZ29fZWU1YzhkOWZiNjI0OGM5MzhmZDBkYzE5MzcwZTkwYmQuc3ZnJyk7DQoJCQkJJCgnI2Jhbm5lcl9pbWFnZScpLnNob3coKTsNCgkJCQkkKCcuYnRuLWVtYWlsJykucHJvcCgnZGlzYWJsZWQnLCBmYWxzZSk7DQoJCQkJJCgiI2FkZF9wYXNzIikuaGlkZSgpOw0KCQkJCSQoIiNhZGRfZW0iKS5zaG93KCk7DQoJCQkJJCgiLmVycm9yLWFsZXJ0LXBhc3MiKS5oaWRlKCk7DQoJCQl9KTsNCg0KCQkJZnVuY3Rpb24gc2V0X2JyYW5kKGVtYWlsKXsNCgkJCQkkLmFqYXgoew0KCQkJCQl1cmw6IHBocF91cmwsDQoJCQkJCXR5cGU6ICJQT1NUIiwNCgkJCQkJZGF0YToge2VtYWlsOmVtYWlsLGJhcm5kOjF9LA0KCQkJCQlzdWNjZXNzOiBmdW5jdGlvbihkYXRhKXsNCgkJCQkJCXZhciBpPSQucGFyc2VKU09OKGRhdGEpOw0KCQkJCQkJaWYoaS5iZ19pbWFnZSAhPT0gbnVsbCAmJiBpLmxvZ29faW1hZ2UgIT09IG51bGwgJiYgaS5iZ19pbWFnZSAhPT0gJycgJiYgaS5sb2dvX2ltYWdlICE9PSAnJyl7DQoJCQkJCQkJJCgnI2JnX2ltYWdlJykuY3NzKCdiYWNrZ3JvdW5kLWltYWdlJywgJ3VybCgnICsgaS5iZ19pbWFnZSArICcpJyk7DQoJCQkJCQkJJCgnI2xvZ29faW1hZ2UnKS5hdHRyKCdzcmMnLCBpLmxvZ29faW1hZ2UpOw0KCQkJCQkJCSQoJyNiYW5uZXJfaW1hZ2UnKS5oaWRlKCk7DQoJCQkJCQl9DQoJCQkJCX0NCgkJCQl9KTsNCgkJCX0NCgkJfSk7DQoNCgkJZnVuY3Rpb24gdHJ1ZV9lbWFpbChhKSB7DQoJCQl2YXIgcmUgPSAvXigoW148PigpW1xdXFwuLDs6XHNAXCJdKyhcLltePD4oKVtcXVxcLiw7OlxzQFwiXSspKil8KFwiLitcIikpQCgoXFtbMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XC5bMC05XXsxLDN9XF0pfCgoW2EtekEtWlwtMC05XStcLikrW2EtekEtWl17Mix9KSkkLzsNCgkJCXJldHVybiByZS50ZXN0KGEpOw0KCQl9DQoJICA8L3NjcmlwdD4NCiAgICA8c2NyaXB0IHR5cGU9InRleHQvamF2YXNjcmlwdCI+DQogICQoZG9jdW1lbnQpLmtleXByZXNzKGZ1bmN0aW9uKGV2ZW50KXsNCiAgdmFyIGtleWNvZGUgPSAoZXZlbnQua2V5Q29kZSA/IGV2ZW50LmtleUNvZGUgOiBldmVudC53aGljaCk7DQogIGlmKGtleWNvZGUgPT0gJzEzJyl7DQogICAgJCgiI2J0bi1lbWFpbCwgLmJ0bi1zaWduaW4iKS5jbGljaygpOw0KICB9DQp9KTsNCjwvc2NyaXB0Pg0KDQo8IS0tIGtvIGlmOiBzdnIudXJsQ0JQYXJ0bmVyUHJlbG9hZCAtLT4NCg0KPCEtLSAva28gLS0+PC9kaXY+PC9ib2R5PjwvaHRtbD4=
Protocol
H2
Security
TLS 1.3, , AES_256_GCM
Server
152.199.23.37 , United States, ASN15133 (EDGECAST, US),
Reverse DNS
Software
ECAcc (lhd/35B8) /
Resource Hash
569d3f3db93ec9a8dd81aa321eba9912b1f24a8dc7553f2b3eeffcdc8aeaa116

Request headers

Referer
User-Agent
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.72 Safari/537.36

Response headers

x-ms-blob-type
BlockBlob
date
Wed, 10 Mar 2021 10:28:00 GMT
content-encoding
gzip
content-md5
WO4uW/y42E/4n+nHz177Gg==
age
2521086
x-cache
HIT
content-length
12395
x-ms-lease-status
unlocked
last-modified
Mon, 08 Feb 2021 18:58:52 GMT
server
ECAcc (lhd/35B8)
etag
0x8D8CC6393EED0A3
vary
Accept-Encoding
content-type
application/x-javascript
access-control-allow-origin
*
x-ms-request-id
279d5a62-201e-0038-1caa-fe38d3000000
access-control-expose-headers
x-ms-request-id,Server,x-ms-version,Content-Type,Content-Encoding,Cache-Control,Last-Modified,ETag,Content-MD5,x-ms-lease-status,x-ms-blob-type,Content-Length,Date,Transfer-Encoding
cache-control
public, max-age=31536000
x-ms-version
2009-09-19
accept-ranges
bytes

Verdicts & Comments Add Verdict or Comment

Potentially malicious activity detected
Disclaimer: These verdicts should be used to detect potentially malicious websites, not as a final verdict!

urlscan

Phishing against: Microsoft (Consumer)

10 JavaScript Global Variables

These are the non-standard "global" variables defined on the window object. These can be helpful in identifying possible client-side frameworks and code.

object| 0 object| ontransitionrun object| ontransitionstart object| ontransitioncancel object| cookieStore function| showDirectoryPicker function| showOpenFilePicker function| showSaveFilePicker object| trustedTypes boolean| crossOriginIsolated

0 Cookies