From mikedep333@gmail.com  Sun Sep  7 15:23:22 2014
Received: (at 566) by bugs.x2go.org; 7 Sep 2014 13:23:24 +0000
X-Spam-Checker-Version: SpamAssassin 3.3.2 (2011-06-06) on
	ymir.das-netzwerkteam.de
X-Spam-Level: 
X-Spam-Status: No, score=0.0 required=5.0 tests=BAYES_20,FREEMAIL_FROM,
	T_DKIM_INVALID autolearn=ham version=3.3.2
Received: from mail-we0-f181.google.com (mail-we0-f181.google.com [74.125.82.181])
	by ymir.das-netzwerkteam.de (Postfix) with ESMTPS id 9773C3D379
	for <566@bugs.x2go.org>; Sun,  7 Sep 2014 15:23:22 +0200 (CEST)
Received: by mail-we0-f181.google.com with SMTP id x48so13620206wes.26
        for <566@bugs.x2go.org>; Sun, 07 Sep 2014 06:23:22 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
        d=gmail.com; s=20120113;
        h=mime-version:in-reply-to:references:date:message-id:subject:from:to
         :content-type;
        bh=H8b1h5be6sEp7FEeJ/eQcPum52Qh01Djgl7FsD5jZz8=;
        b=dD2WM0+/lwbH3u7f6Nh0CB9UUDRZ1gYLk2iO2FU5pb2TE9yEgjBGE5dhg5ehnX2mnT
         4mvAhKmh4Z2utiQmp3u5FlSr/oDN2EyC9v24KUhdVDAOAnFbu5FXqOn7suVFYibDuXSD
         nhvjNRTTJA+II8HBHwBD2zkHSFeRuSCV+5y2BN98IOA7pnqGM88aai1CkWJdMfYrZqUe
         hqfaES6lJwBEbKTak/cybDIu+7UYoIL2+XunWdZAE7QYZ9HADutZnzfNqvorlgVvzU9H
         ksCSo4cSpUkmlq8LXmCME4lxWozxxnYslcDQRzvNCyLCsWaH5twq4oW3WLZ6Y8jwUXQs
         MexA==
MIME-Version: 1.0
X-Received: by 10.181.8.70 with SMTP id di6mr15718707wid.78.1410096202267;
 Sun, 07 Sep 2014 06:23:22 -0700 (PDT)
Received: by 10.180.238.66 with HTTP; Sun, 7 Sep 2014 06:23:22 -0700 (PDT)
In-Reply-To: <000001cfca83$2b11d830$81358890$@edu.gr>
References: <000001cfb552$3193a8a0$94baf9e0$@gr>
	<handler.566.B.140775428816658.ack@bugs.x2go.org>
	<000001cfc60a$32831de0$978959a0$@gr>
	<20140901195103.Horde.HOAd34FDzvE7MwwNBCtaAg1@mail.das-netzwerkteam.de>
	<CAMKht8gaM7uupVMhTkPR3pg2jcO5sBRHCbYkMV8kCf0EvKK8sg@mail.gmail.com>
	<CAMKht8jxisag8A9F3yFBSg3BQ+PODLzrayu90S0G8OaQKZXtfQ@mail.gmail.com>
	<000001cfca83$2b11d830$81358890$@edu.gr>
Date: Sun, 7 Sep 2014 09:23:22 -0400
Message-ID: <CAMKht8hMDouAZr0zh0jQ8HhA_COJOfC-d0BKY4u6hTcCDEoQmQ@mail.gmail.com>
Subject: Re: [X2Go-Dev] Bug#566: X2Go Client for Windows 4.0.2.1 cannot create
 C:\Users\<username>\ssh\known_hosts file when the local Windows account
 username has non-Ascii characters
From: Michael DePaulo <mikedep333@gmail.com>
To: George Trakatelis <trakatelis@uom.edu.gr>, 566@bugs.x2go.org, 
	Mike Gabriel <mike.gabriel@das-netzwerkteam.de>
Content-Type: multipart/mixed; boundary=001a1134d61c3d1b830502799ba8

--001a1134d61c3d1b830502799ba8
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

On Sun, Sep 7, 2014 at 6:04 AM, George Trakatelis <trakatelis@uom.edu.gr> w=
rote:
[...]
>
> a. Installed German keyboard. Hit ';' to produce an accented letter
> and -to my surprise- got =C3=B6. So I thought =C3=B6lexandr was the right=
 name to test for username.
>
> b. Created user =C3=B6lexandr and logged in as that user.
> The patch did not work, as you mentioned.
>
> c. As toLocal8Bit() returns the local 8-bit representation of a string,
> I changed the system locale for non-unicode programs to German.
> Now the patch worked!
>
> I think the patch solves the problem for the Windows users who use Englis=
h
> as a foreign language and prefer having (non-Ascii) usernames in their na=
tive language.
>
> -George
>
> PS. A better title for the bug would be
>
> X2Go Client for Windows 4.0.2.1 cannot create C:\Users\<username>\ssh\kno=
wn_hosts file when the local Windows account username has non-Ascii charact=
ers

Hi Mike#1 and George,

1. What do you think of using toUtf8() instead? I am hoping that will
fix the bug regardless of the locale.

I tried changing it to that (bug566.utf8.test.patch), but it still did
not fix this bug with the greek username on my system with the locale
set to English. It did not introduce a regression for my ASCII user
account at least.

If libssh needs to be recompiled for Unicode, I can do that. I just
recompiled it for bug #590.

FYI: This is the API we are calling:
http://api.libssh.org/stable/group__libssh__session.html#ga7a801b85800baa3f=
4e16f5b47db0a73d

2. in sshmasterconnection.cpp, we also set "SSH_OPTIONS_USER" . I
think that we should also change its value from to.Ascii() to
toLocal8Bit() or toUtf8(). bug566.test.v2.patch has this change for
toLocal8Bit(), and bug566.utf8.test.patch has it for toUtf8().

-Mike#2

--001a1134d61c3d1b830502799ba8
Content-Type: application/octet-stream; name="bug566.test.v2.patch"
Content-Disposition: attachment; filename="bug566.test.v2.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hzseeqs71

ZGlmZiAtLWdpdCBhL3NzaG1hc3RlcmNvbm5lY3Rpb24uY3BwIGIvc3NobWFzdGVyY29ubmVjdGlv
bi5jcHAKaW5kZXggODI3ZWVmZS4uOGM4OTE5NCAxMDA3NTUKLS0tIGEvc3NobWFzdGVyY29ubmVj
dGlvbi5jcHAKKysrIGIvc3NobWFzdGVyY29ubmVjdGlvbi5jcHAKQEAgLTUxOCw3ICs1MTgsNyBA
QCB2b2lkIFNzaE1hc3RlckNvbm5lY3Rpb246OnJ1bigpCiAgICAgfQogCiAjaWZkZWYgUV9PU19X
SU4KLSAgICBzc2hfb3B0aW9uc19zZXQgKCBteV9zc2hfc2Vzc2lvbiwgU1NIX09QVElPTlNfU1NI
X0RJUiwgKG1haW5XbmQtPmdldEhvbWVEaXJlY3RvcnkoKSsiL3NzaCIpLnRvQXNjaWkoKSk7Cisg
ICAgc3NoX29wdGlvbnNfc2V0ICggbXlfc3NoX3Nlc3Npb24sIFNTSF9PUFRJT05TX1NTSF9ESVIs
IChtYWluV25kLT5nZXRIb21lRGlyZWN0b3J5KCkrIi9zc2giKS50b0xvY2FsOEJpdCgpKTsKICAg
ICBpZiAoa2VyYmVyb3MpCiAgICAgewogICAgICAgICBwYXJzZUtub3duSG9zdHMoKTsKQEAgLTYy
NSwxMCArNjI1LDE1IEBAIHZvaWQgU3NoTWFzdGVyQ29ubmVjdGlvbjo6cnVuKCkKICNlbmRpZgog
ICAgICAgICByZXR1cm47CiAgICAgfQotICAgIHNzaF9vcHRpb25zX3NldCAoIG15X3NzaF9zZXNz
aW9uLCBTU0hfT1BUSU9OU19VU0VSLCB1c2VyLnRvQXNjaWkoKSApOworCiAjaWZkZWYgUV9PU19X
SU4KLSAgICBzc2hfb3B0aW9uc19zZXQgKCBteV9zc2hfc2Vzc2lvbiwgU1NIX09QVElPTlNfU1NI
X0RJUiwgKG1haW5XbmQtPmdldEhvbWVEaXJlY3RvcnkoKSsiL3NzaCIpLnRvQXNjaWkoKSk7Cisg
ICAgc3NoX29wdGlvbnNfc2V0ICggbXlfc3NoX3Nlc3Npb24sIFNTSF9PUFRJT05TX1VTRVIsIHVz
ZXIudG9Mb2NhbDhCaXQoKSApOworI2Vsc2UKKyAgICBzc2hfb3B0aW9uc19zZXQgKCBteV9zc2hf
c2Vzc2lvbiwgU1NIX09QVElPTlNfVVNFUiwgdXNlci50b0FzY2lpKCkgKTsKKyNlbmRpZgogCisj
aWZkZWYgUV9PU19XSU4KKyAgICBzc2hfb3B0aW9uc19zZXQgKCBteV9zc2hfc2Vzc2lvbiwgU1NI
X09QVElPTlNfU1NIX0RJUiwgKG1haW5XbmQtPmdldEhvbWVEaXJlY3RvcnkoKSsiL3NzaCIpLnRv
TG9jYWw4Qml0KCkpOwogI2lmZGVmIERFQlVHCiAgICAgeDJnb0RlYnVnPDwic2V0dGluZyBTU0gg
RElSIHRvICI8PG1haW5XbmQtPmdldEhvbWVEaXJlY3RvcnkoKSsiL3NzaCI7CiAjZW5kaWYK
--001a1134d61c3d1b830502799ba8
Content-Type: application/octet-stream; name="bug566.utf8.test.patch"
Content-Disposition: attachment; filename="bug566.utf8.test.patch"
Content-Transfer-Encoding: base64
X-Attachment-Id: f_hzseeqsg2

ZGlmZiAtLWdpdCBhL01ha2VmaWxlIGIvTWFrZWZpbGUKaW5kZXggYzdlNWI3My4uM2VkYjYzMiAx
MDA3NTUKLS0tIGEvTWFrZWZpbGUKKysrIGIvTWFrZWZpbGUKQEAgLTEsMTQ1ICsxLDE1MyBAQAot
IyEvdXNyL2Jpbi9tYWtlIC1mCi0KLVNSQ19ESVI9JChDVVJESVIpCi1DTElFTlRfRElSPSQoU1JD
X0RJUikvY2xpZW50X2J1aWxkCi1DTElFTlRfQklOQVJZPSQoQ0xJRU5UX0RJUikveDJnb2NsaWVu
dAotCi1QTFVHSU5fRElSPSQoU1JDX0RJUikvcGx1Z2luX2J1aWxkCi1QTFVHSU5fQklOQVJZPSQo
UExVR0lOX0RJUikvbGlieDJnb3BsdWdpbi5zbwotCi1TSEVMTD0vYmluL2Jhc2gKLQotSU5TVEFM
TF9ESVI9aW5zdGFsbCAtZCAtbyByb290IC1nIHJvb3QgLW0gNzU1Ci1JTlNUQUxMX0ZJTEU9aW5z
dGFsbCAtbyByb290IC1nIHJvb3QgLW0gNjQ0Ci1JTlNUQUxMX1NZTUxJTks9bG4gLXMgLWYKLUlO
U1RBTExfUFJPR1JBTT1pbnN0YWxsIC1vIHJvb3QgLWcgcm9vdCAtbSA3NTUKLQotUk1fRklMRT1y
bSAtZgotUk1fRElSPXJtZGlyIC1wIC0taWdub3JlLWZhaWwtb24tbm9uLWVtcHR5Ci0KLURFU1RE
SVI9Ci1QUkVGSVg9L3Vzci9sb2NhbAotRVRDRElSPS9ldGMveDJnbwotQklORElSPSQoUFJFRklY
KS9iaW4KLVNIQVJFRElSPSQoUFJFRklYKS9zaGFyZQotTUFORElSPSQoU0hBUkVESVIpL21hbgot
TU9aUExVR0RJUj0kKFBSRUZJWCkvbGliL21vemlsbGEvcGx1Z2lucwotUU1BS0VfQklOQVJZPXFt
YWtlLXF0NAotTFJFTEVBU0VfQklOQVJZPWxyZWxlYXNlLXF0NAotCi1MREZMQUdTKz0tbGxkYXAg
LWxjdXBzIC1sWDExIC1sWHBtCi0KLWFsbDogYnVpbGQKLQotYnVpbGQ6IGJ1aWxkX21hbiBidWls
ZF9wbHVnaW5wcm92aWRlcgotCSQoTUFLRSkgYnVpbGRfY2xpZW50Ci0JJChNQUtFKSBidWlsZF9w
bHVnaW4KLQotYnVpbGRfY2xpZW50OgotCSQoTFJFTEVBU0VfQklOQVJZKSB4MmdvY2xpZW50LnBy
bwotCW1rZGlyIC1wICQoQ0xJRU5UX0RJUikgJiYgY2QgJChDTElFTlRfRElSKSAmJiAkKFFNQUtF
X0JJTkFSWSkgUU1BS0VfQ0ZMQUdTPSIke0NQUEZMQUdTfSAke0NGTEFHU30iIFFNQUtFX0NYWEZM
QUdTPSIke0NQUEZMQUdTfSAke0NYWEZMQUdTfSIgUU1BS0VfTEZMQUdTPSIke0xERkxBR1N9IiAu
Li94MmdvY2xpZW50LnBybwotCWNkICQoQ0xJRU5UX0RJUikgJiYgJChNQUtFKQotCi1idWlsZF9w
bHVnaW46Ci0JJChMUkVMRUFTRV9CSU5BUlkpIHgyZ29jbGllbnQucHJvCi0JbWtkaXIgLXAgJChQ
TFVHSU5fRElSKSAmJiBjZCAkKFBMVUdJTl9ESVIpICYmIFgyR09fQ0xJRU5UX1RBUkdFVD1wbHVn
aW4gJChRTUFLRV9CSU5BUlkpIFFNQUtFX0NGTEFHUz0iJHtDUFBGTEFHU30gJHtDRkxBR1N9IiBR
TUFLRV9DWFhGTEFHUz0iJHtDUFBGTEFHU30gJHtDWFhGTEFHU30iIFFNQUtFX0xGTEFHUz0iJHtM
REZMQUdTfSIgLi4veDJnb2NsaWVudC5wcm8KLQljZCAkKFBMVUdJTl9ESVIpICYmICQoTUFLRSkK
LQotYnVpbGRfcGx1Z2lucHJvdmlkZXI6Ci0KLWJ1aWxkX21hbjoKLQkke01BS0V9IC1mIE1ha2Vm
aWxlLm1hbjJodG1sIGJ1aWxkCi0KLWNsZWFuOiBjbGVhbl9jbGllbnQgY2xlYW5fcGx1Z2luIGNs
ZWFuX21hbiBjbGVhbl9wbHVnaW5wcm92aWRlcgotCWZpbmQgLiAtbWF4ZGVwdGggMiAtbmFtZSAn
Ki5vJyAtZXhlYyBybSAtdmYge30gKyAtdHlwZSBmCi0JZmluZCAuIC1tYXhkZXB0aCAyIC1uYW1l
ICdtb2NfKi5jcHAnIC1leGVjIHJtIC12ZiB7fSArIC10eXBlIGYKLQlmaW5kIC4gLW1heGRlcHRo
IDIgLW5hbWUgJ3VpXyouaCcgLWV4ZWMgcm0gLXZmIHt9ICsgLXR5cGUgZgotCWZpbmQgLiAtbWF4
ZGVwdGggMiAtbmFtZSAncXJjXyouY3BwJyAtZXhlYyBybSAtdmYge30gKyAtdHlwZSBmCi0Jcm0g
LWYgeDJnb2NsaWVudAotCXJtIC1mIHgyZ29jbGllbnQudGFnCi0Jcm0gLWYgdHh0L2NoYW5nZWxv
ZwotCXJtIC1mIHR4dC9naXQtaW5mbwotCi1jbGVhbl9jbGllbnQ6Ci0Jcm0gLWZyICQoQ0xJRU5U
X0RJUikKLQotY2xlYW5fcGx1Z2luOgotCXJtIC1mciAkKFBMVUdJTl9ESVIpCi0KLWNsZWFuX3Bs
dWdpbnByb3ZpZGVyOgotCi1jbGVhbl9tYW46Ci0JbWFrZSAtZiBNYWtlZmlsZS5tYW4yaHRtbCBj
bGVhbgotCi1pbnN0YWxsOiBpbnN0YWxsX2NsaWVudCBpbnN0YWxsX3BsdWdpbiBpbnN0YWxsX21h
biBpbnN0YWxsX3BsdWdpbnByb3ZpZGVyCi0KLWluc3RhbGxfY2xpZW50OgotCSQoSU5TVEFMTF9E
SVIpICQoREVTVERJUikkKEJJTkRJUikvCi0JJChJTlNUQUxMX0RJUikgJChERVNURElSKSQoU0hB
UkVESVIpL2FwcGxpY2F0aW9ucwotCSQoSU5TVEFMTF9ESVIpICQoREVTVERJUikkKFNIQVJFRElS
KS94MmdvY2xpZW50L2ljb25zCi0JJChJTlNUQUxMX0RJUikgJChERVNURElSKSQoU0hBUkVESVIp
L2ljb25zL2hpY29sb3IvMTI4eDEyOC9hcHBzCi0JJChJTlNUQUxMX0RJUikgJChERVNURElSKSQo
U0hBUkVESVIpL2ljb25zL2hpY29sb3IvMTZ4MTYvYXBwcwotCSQoSU5TVEFMTF9ESVIpICQoREVT
VERJUikkKFNIQVJFRElSKS9pY29ucy9oaWNvbG9yLzY0eDY0L2FwcHMKLQkkKElOU1RBTExfRElS
KSAkKERFU1RESVIpJChTSEFSRURJUikvaWNvbnMvaGljb2xvci8zMngzMi9hcHBzCi0JJChJTlNU
QUxMX1BST0dSQU0pICQoQ0xJRU5UX0RJUikveDJnb2NsaWVudCAkKERFU1RESVIpJChCSU5ESVIp
L3gyZ29jbGllbnQKLQkkKElOU1RBTExfRklMRSkgZGVza3RvcC94MmdvY2xpZW50LmRlc2t0b3Ag
ICAgJChERVNURElSKSQoU0hBUkVESVIpL2FwcGxpY2F0aW9ucy94MmdvY2xpZW50LmRlc2t0b3AK
LQkkKElOU1RBTExfRklMRSkgaWNvbnMveDJnb2NsaWVudC54cG0gICAgICAgICAgJChERVNURElS
KSQoU0hBUkVESVIpL3gyZ29jbGllbnQvaWNvbnMveDJnb2NsaWVudC54cG0KLQkkKElOU1RBTExf
RklMRSkgaWNvbnMvMTI4eDEyOC94MmdvY2xpZW50LnBuZyAgJChERVNURElSKSQoU0hBUkVESVIp
L3gyZ29jbGllbnQvaWNvbnMveDJnb2NsaWVudC5wbmcKLQkkKElOU1RBTExfRklMRSkgaWNvbnMv
MTI4eDEyOC94Mmdvc2Vzc2lvbi5wbmcgJChERVNURElSKSQoU0hBUkVESVIpL3gyZ29jbGllbnQv
aWNvbnMveDJnb3Nlc3Npb24ucG5nCi0JJChJTlNUQUxMX0ZJTEUpIGljb25zLzEyOHgxMjgveDJn
b2NsaWVudC5wbmcgICQoREVTVERJUikkKFNIQVJFRElSKS9pY29ucy9oaWNvbG9yLzEyOHgxMjgv
YXBwcy94MmdvY2xpZW50LnBuZwotCSQoSU5TVEFMTF9GSUxFKSBpY29ucy8xNngxNi94MmdvY2xp
ZW50LnBuZyAgICAkKERFU1RESVIpJChTSEFSRURJUikvaWNvbnMvaGljb2xvci8xNngxNi9hcHBz
L3gyZ29jbGllbnQucG5nCi0JJChJTlNUQUxMX0ZJTEUpIGljb25zLzY0eDY0L3gyZ29jbGllbnQu
cG5nICAgICQoREVTVERJUikkKFNIQVJFRElSKS9pY29ucy9oaWNvbG9yLzY0eDY0L2FwcHMveDJn
b2NsaWVudC5wbmcKLQkkKElOU1RBTExfRklMRSkgaWNvbnMvMzJ4MzIveDJnb2NsaWVudC5wbmcg
ICAgJChERVNURElSKSQoU0hBUkVESVIpL2ljb25zL2hpY29sb3IvMzJ4MzIvYXBwcy94MmdvY2xp
ZW50LnBuZwotCi1pbnN0YWxsX3BsdWdpbjoKLQkkKElOU1RBTExfRElSKSAkKERFU1RESVIpJChN
T1pQTFVHRElSKS8KLQkkKElOU1RBTExfUFJPR1JBTSkgJChQTFVHSU5fRElSKS9saWJ4MmdvcGx1
Z2luLnNvICQoREVTVERJUikkKE1PWlBMVUdESVIpL2xpYngyZ29wbHVnaW4uc28KLQotaW5zdGFs
bF9wbHVnaW5wcm92aWRlcjoKLQkkKElOU1RBTExfRElSKSAkKERFU1RESVIpJChFVENESVIpL3Bs
dWdpbi1wcm92aWRlcgotCSQoSU5TVEFMTF9GSUxFKSBwcm92aWRlci9ldGMveDJnb3BsdWdpbi1h
cGFjaGUuY29uZiAkKERFU1RESVIpJChFVENESVIpL3gyZ29wbHVnaW4tYXBhY2hlLmNvbmYKLQkk
KElOU1RBTExfRklMRSkgcHJvdmlkZXIvc2hhcmUveDJnb3BsdWdpbi5odG1sICQoREVTVERJUikk
KEVUQ0RJUikvcGx1Z2luLXByb3ZpZGVyL3gyZ29wbHVnaW4uaHRtbAotCSQoSU5TVEFMTF9ESVIp
ICQoREVTVERJUikkKFNIQVJFRElSKS94MmdvL3BsdWdpbi8KLQkkKElOU1RBTExfU1lNTElOSykg
Li4vLi4vLi4vLi4vJChFVENESVIpL3BsdWdpbi1wcm92aWRlci94MmdvcGx1Z2luLmh0bWwgJChE
RVNURElSKSQoU0hBUkVESVIpL3gyZ28vcGx1Z2luL3gyZ29wbHVnaW4uaHRtbAotCi1pbnN0YWxs
X21hbjoKLQkkKElOU1RBTExfRElSKSAkKERFU1RESVIpJChNQU5ESVIpLwotCSQoSU5TVEFMTF9E
SVIpICQoREVTVERJUikkKE1BTkRJUikvbWFuMQotCSQoSU5TVEFMTF9GSUxFKSBtYW4vbWFuMS94
MmdvY2xpZW50LjEgICAgJChERVNURElSKSQoTUFORElSKS9tYW4xL3gyZ29jbGllbnQuMQotCWd6
aXAgLWYgJChERVNURElSKSQoTUFORElSKS9tYW4xL3gyZ29jbGllbnQuMQotCi11bmluc3RhbGw6
IHVuaW5zdGFsbF9jbGllbnQgdW5pbnN0YWxsX3BsdWdpbiB1bmluc3RhbGxfbWFuCi0KLXVuaW5z
dGFsbF9jbGllbnQ6Ci0JJChSTV9GSUxFKSAkKEJJTkRJUikveDJnb2NsaWVudAotCSQoUk1fRklM
RSkgJChTSEFSRURJUikvYXBwbGljYXRpb25zL3gyZ29jbGllbnQuZGVza3RvcAotCSQoUk1fRklM
RSkgJChTSEFSRURJUikveDJnb2NsaWVudC9pY29ucy94MmdvY2xpZW50LnBuZwotCSQoUk1fRklM
RSkgJChTSEFSRURJUikveDJnb2NsaWVudC9pY29ucy94MmdvY2xpZW50LnhwbQotCSQoUk1fRklM
RSkgJChTSEFSRURJUikveDJnb2NsaWVudC9pY29ucy94Mmdvc2Vzc2lvbi5wbmcKLQkkKFJNX0ZJ
TEUpICQoU0hBUkVESVIpL2ljb25zL2hpY29sb3IvMTI4eDEyOC9hcHBzL3gyZ29jbGllbnQucG5n
Ci0JJChSTV9GSUxFKSAkKFNIQVJFRElSKS9pY29ucy9oaWNvbG9yLzE2eDE2L2FwcHMveDJnb2Ns
aWVudC5wbmcKLQkkKFJNX0ZJTEUpICQoU0hBUkVESVIpL2ljb25zL2hpY29sb3IvNjR4NjQvYXBw
cy94MmdvY2xpZW50LnBuZwotCSQoUk1fRklMRSkgJChTSEFSRURJUikvaWNvbnMvaGljb2xvci8z
MngzMi9hcHBzL3gyZ29jbGllbnQucG5nCi0JJChSTV9ESVIpICQoU0hBUkVESVIpL2FwcGxpY2F0
aW9ucwotCSQoUk1fRElSKSAkKFNIQVJFRElSKS94MmdvY2xpZW50L2ljb25zCi0JJChSTV9ESVIp
ICQoU0hBUkVESVIpL2ljb25zL2hpY29sb3IvMTI4eDEyOC9hcHBzCi0JJChSTV9ESVIpICQoU0hB
UkVESVIpL2ljb25zL2hpY29sb3IvMTZ4MTYvYXBwcwotCSQoUk1fRElSKSAkKFNIQVJFRElSKS9p
Y29ucy9oaWNvbG9yLzY0eDY0L2FwcHMKLQkkKFJNX0RJUikgJChTSEFSRURJUikvaWNvbnMvaGlj
b2xvci8zMngzMi9hcHBzCi0KLXVuaW5zdGFsbF9wbHVnaW46Ci0JJChSTV9GSUxFKSAkKE1PWlBM
VUdESVIpL2xpYngyZ29wbHVnaW4uc28KLQkkKFJNX0RJUikgJChNT1pQTFVHRElSKS8KLQotdW5p
bnN0YWxsX3BsdWdpbnByb3ZpZGVyOgotCSQoUk1fRklMRSkgJChFVENESVIpL3gyZ29wbHVnaW4t
YXBhY2hlLmNvbmYKLQkkKFJNX0ZJTEUpICQoRVRDRElSKS9wbHVnaW4tcHJvdmlkZXIveDJnb3Bs
dWdpbi5odG1sCi0JJChSTV9ESVIpICQoRVRDRElSKS9wbHVnaW4tcHJvdmlkZXIKLQkkKFJNX0RJ
UikgJChFVENESVIpCi0JJChSTV9GSUxFKSAkKFNIQVJFRElSKS94MmdvL3BsdWdpbi94MmdvcGx1
Z2luLmh0bWwKLQkkKFJNX0RJUikgJChTSEFSRURJUikveDJnby9wbHVnaW4vCi0JJChSTV9ESVIp
ICQoU0hBUkVESVIpL3gyZ28vCi0KLXVuaW5zdGFsbF9tYW46Ci0JJChSTV9GSUxFKSAkKE1BTkRJ
UikvbWFuMS94MmdvY2xpZW50LjEuZ3oKLQkkKFJNX0RJUikgJChNQU5ESVIpL21hbjEKKyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjDQorIyBNYWtlZmlsZSBmb3IgYnVpbGRpbmc6IHgyZ29jbGllbnQNCisj
IEdlbmVyYXRlZCBieSBxbWFrZSAoMi4wMWEpIChRdCA0LjguNSkgb246IFN1biBTZXAgNyAwODoz
Mjo0MiAyMDE0DQorIyBQcm9qZWN0OiAgeDJnb2NsaWVudC5wcm8NCisjIFRlbXBsYXRlOiBhcHAN
CisjIENvbW1hbmQ6IGM6XHgyZ29idWlsZHNcZGVwZW5kc1xRdFxiaW5ccW1ha2UuZXhlIC1vIE1h
a2VmaWxlIHgyZ29jbGllbnQucHJvDQorIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj
IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMNCisNCitmaXJzdDog
cmVsZWFzZQ0KK2luc3RhbGw6IHJlbGVhc2UtaW5zdGFsbA0KK3VuaW5zdGFsbDogcmVsZWFzZS11
bmluc3RhbGwNCitNQUtFRklMRSAgICAgID0gTWFrZWZpbGUNCitRTUFLRSAgICAgICAgID0gYzpc
eDJnb2J1aWxkc1xkZXBlbmRzXFF0XGJpblxxbWFrZS5leGUNCitERUxfRklMRSAgICAgID0gZGVs
DQorQ0hLX0RJUl9FWElTVFM9IGlmIG5vdCBleGlzdA0KK01LRElSICAgICAgICAgPSBta2Rpcg0K
K0NPUFkgICAgICAgICAgPSBjb3B5IC95DQorQ09QWV9GSUxFICAgICA9ICQoQ09QWSkNCitDT1BZ
X0RJUiAgICAgID0geGNvcHkgL3MgL3EgL3kgL2kNCitJTlNUQUxMX0ZJTEUgID0gJChDT1BZX0ZJ
TEUpDQorSU5TVEFMTF9QUk9HUkFNID0gJChDT1BZX0ZJTEUpDQorSU5TVEFMTF9ESVIgICA9ICQo
Q09QWV9ESVIpDQorREVMX0ZJTEUgICAgICA9IGRlbA0KK1NZTUxJTksgICAgICAgPSANCitERUxf
RElSICAgICAgID0gcm1kaXINCitNT1ZFICAgICAgICAgID0gbW92ZQ0KK0NIS19ESVJfRVhJU1RT
PSBpZiBub3QgZXhpc3QNCitNS0RJUiAgICAgICAgID0gbWtkaXINCitTVUJUQVJHRVRTICAgID0g
IFwNCisJCXJlbGVhc2UgXA0KKwkJZGVidWcNCisNCityZWxlYXNlOiAkKE1BS0VGSUxFKS5SZWxl
YXNlIEZPUkNFDQorCSQoTUFLRSkgLWYgJChNQUtFRklMRSkuUmVsZWFzZQ0KK3JlbGVhc2UtbWFr
ZV9kZWZhdWx0OiAkKE1BS0VGSUxFKS5SZWxlYXNlIEZPUkNFDQorCSQoTUFLRSkgLWYgJChNQUtF
RklMRSkuUmVsZWFzZSANCityZWxlYXNlLW1ha2VfZmlyc3Q6ICQoTUFLRUZJTEUpLlJlbGVhc2Ug
Rk9SQ0UNCisJJChNQUtFKSAtZiAkKE1BS0VGSUxFKS5SZWxlYXNlIGZpcnN0DQorcmVsZWFzZS1h
bGw6ICQoTUFLRUZJTEUpLlJlbGVhc2UgRk9SQ0UNCisJJChNQUtFKSAtZiAkKE1BS0VGSUxFKS5S
ZWxlYXNlIGFsbA0KK3JlbGVhc2UtY2xlYW46ICQoTUFLRUZJTEUpLlJlbGVhc2UgRk9SQ0UNCisJ
JChNQUtFKSAtZiAkKE1BS0VGSUxFKS5SZWxlYXNlIGNsZWFuDQorcmVsZWFzZS1kaXN0Y2xlYW46
ICQoTUFLRUZJTEUpLlJlbGVhc2UgRk9SQ0UNCisJJChNQUtFKSAtZiAkKE1BS0VGSUxFKS5SZWxl
YXNlIGRpc3RjbGVhbg0KK3JlbGVhc2UtaW5zdGFsbDogJChNQUtFRklMRSkuUmVsZWFzZSBGT1JD
RQ0KKwkkKE1BS0UpIC1mICQoTUFLRUZJTEUpLlJlbGVhc2UgaW5zdGFsbA0KK3JlbGVhc2UtdW5p
bnN0YWxsOiAkKE1BS0VGSUxFKS5SZWxlYXNlIEZPUkNFDQorCSQoTUFLRSkgLWYgJChNQUtFRklM
RSkuUmVsZWFzZSB1bmluc3RhbGwNCitkZWJ1ZzogJChNQUtFRklMRSkuRGVidWcgRk9SQ0UNCisJ
JChNQUtFKSAtZiAkKE1BS0VGSUxFKS5EZWJ1Zw0KK2RlYnVnLW1ha2VfZGVmYXVsdDogJChNQUtF
RklMRSkuRGVidWcgRk9SQ0UNCisJJChNQUtFKSAtZiAkKE1BS0VGSUxFKS5EZWJ1ZyANCitkZWJ1
Zy1tYWtlX2ZpcnN0OiAkKE1BS0VGSUxFKS5EZWJ1ZyBGT1JDRQ0KKwkkKE1BS0UpIC1mICQoTUFL
RUZJTEUpLkRlYnVnIGZpcnN0DQorZGVidWctYWxsOiAkKE1BS0VGSUxFKS5EZWJ1ZyBGT1JDRQ0K
KwkkKE1BS0UpIC1mICQoTUFLRUZJTEUpLkRlYnVnIGFsbA0KK2RlYnVnLWNsZWFuOiAkKE1BS0VG
SUxFKS5EZWJ1ZyBGT1JDRQ0KKwkkKE1BS0UpIC1mICQoTUFLRUZJTEUpLkRlYnVnIGNsZWFuDQor
ZGVidWctZGlzdGNsZWFuOiAkKE1BS0VGSUxFKS5EZWJ1ZyBGT1JDRQ0KKwkkKE1BS0UpIC1mICQo
TUFLRUZJTEUpLkRlYnVnIGRpc3RjbGVhbg0KK2RlYnVnLWluc3RhbGw6ICQoTUFLRUZJTEUpLkRl
YnVnIEZPUkNFDQorCSQoTUFLRSkgLWYgJChNQUtFRklMRSkuRGVidWcgaW5zdGFsbA0KK2RlYnVn
LXVuaW5zdGFsbDogJChNQUtFRklMRSkuRGVidWcgRk9SQ0UNCisJJChNQUtFKSAtZiAkKE1BS0VG
SUxFKS5EZWJ1ZyB1bmluc3RhbGwNCisNCitNYWtlZmlsZTogeDJnb2NsaWVudC5wcm8gIC4uL2Rl
cGVuZHMvUXQvbWtzcGVjcy93aW4zMi1nKysvcW1ha2UuY29uZiAuLi9kZXBlbmRzL1F0L21rc3Bl
Y3MvZmVhdHVyZXMvZGV2aWNlX2NvbmZpZy5wcmYgXA0KKwkJLi4vZGVwZW5kcy9RdC9ta3NwZWNz
L3Fjb25maWcucHJpIFwNCisJCS4uL2RlcGVuZHMvUXQvbWtzcGVjcy9mZWF0dXJlcy9xdF9mdW5j
dGlvbnMucHJmIFwNCisJCS4uL2RlcGVuZHMvUXQvbWtzcGVjcy9mZWF0dXJlcy9xdF9jb25maWcu
cHJmIFwNCisJCS4uL2RlcGVuZHMvUXQvbWtzcGVjcy9mZWF0dXJlcy9leGNsdXNpdmVfYnVpbGRz
LnByZiBcDQorCQkuLi9kZXBlbmRzL1F0L21rc3BlY3MvZmVhdHVyZXMvZGVmYXVsdF9wcmUucHJm
IFwNCisJCS4uL2RlcGVuZHMvUXQvbWtzcGVjcy9mZWF0dXJlcy93aW4zMi9kZWZhdWx0X3ByZS5w
cmYgXA0KKwkJLi4vZGVwZW5kcy9RdC9ta3NwZWNzL2ZlYXR1cmVzL3JlbGVhc2UucHJmIFwNCisJ
CS4uL2RlcGVuZHMvUXQvbWtzcGVjcy9mZWF0dXJlcy9kZWJ1Z19hbmRfcmVsZWFzZS5wcmYgXA0K
KwkJLi4vZGVwZW5kcy9RdC9ta3NwZWNzL2ZlYXR1cmVzL2RlZmF1bHRfcG9zdC5wcmYgXA0KKwkJ
Li4vZGVwZW5kcy9RdC9ta3NwZWNzL2ZlYXR1cmVzL3dpbjMyL2RlZmF1bHRfcG9zdC5wcmYgXA0K
KwkJLi4vZGVwZW5kcy9RdC9ta3NwZWNzL2ZlYXR1cmVzL3N0YXRpYy5wcmYgXA0KKwkJLi4vZGVw
ZW5kcy9RdC9ta3NwZWNzL2ZlYXR1cmVzL3dpbjMyL2NvbnNvbGUucHJmIFwNCisJCS4uL2RlcGVu
ZHMvUXQvbWtzcGVjcy9mZWF0dXJlcy93aW4zMi9ydHRpLnByZiBcDQorCQkuLi9kZXBlbmRzL1F0
L21rc3BlY3MvZmVhdHVyZXMvd2luMzIvZXhjZXB0aW9ucy5wcmYgXA0KKwkJLi4vZGVwZW5kcy9R
dC9ta3NwZWNzL2ZlYXR1cmVzL3dpbjMyL3N0bC5wcmYgXA0KKwkJLi4vZGVwZW5kcy9RdC9ta3Nw
ZWNzL2ZlYXR1cmVzL3dhcm5fb24ucHJmIFwNCisJCS4uL2RlcGVuZHMvUXQvbWtzcGVjcy9mZWF0
dXJlcy9xdC5wcmYgXA0KKwkJLi4vZGVwZW5kcy9RdC9ta3NwZWNzL2ZlYXR1cmVzL3dpbjMyL3Ro
cmVhZC5wcmYgXA0KKwkJLi4vZGVwZW5kcy9RdC9ta3NwZWNzL2ZlYXR1cmVzL21vYy5wcmYgXA0K
KwkJLi4vZGVwZW5kcy9RdC9ta3NwZWNzL2ZlYXR1cmVzL3Jlc291cmNlcy5wcmYgXA0KKwkJLi4v
ZGVwZW5kcy9RdC9ta3NwZWNzL2ZlYXR1cmVzL3VpYy5wcmYgXA0KKwkJLi4vZGVwZW5kcy9RdC9t
a3NwZWNzL2ZlYXR1cmVzL3lhY2MucHJmIFwNCisJCS4uL2RlcGVuZHMvUXQvbWtzcGVjcy9mZWF0
dXJlcy9sZXgucHJmIFwNCisJCS4uL2RlcGVuZHMvUXQvbWtzcGVjcy9mZWF0dXJlcy9pbmNsdWRl
X3NvdXJjZV9kaXIucHJmIFwNCisJCWM6L3gyZ29idWlsZHMvZGVwZW5kcy9RdC9saWIvUXRTdmcu
cHJsIFwNCisJCWM6L3gyZ29idWlsZHMvZGVwZW5kcy9RdC9saWIvUXRHdWkucHJsIFwNCisJCWM6
L3gyZ29idWlsZHMvZGVwZW5kcy9RdC9saWIvUXROZXR3b3JrLnBybCBcDQorCQljOi94MmdvYnVp
bGRzL2RlcGVuZHMvUXQvbGliL1F0Q29yZS5wcmwNCisJJChRTUFLRSkgLW8gTWFrZWZpbGUgeDJn
b2NsaWVudC5wcm8NCisuLlxkZXBlbmRzXFF0XG1rc3BlY3NcZmVhdHVyZXNcZGV2aWNlX2NvbmZp
Zy5wcmY6DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXHFjb25maWcucHJpOg0KKy4uXGRlcGVuZHNc
UXRcbWtzcGVjc1xmZWF0dXJlc1xxdF9mdW5jdGlvbnMucHJmOg0KKy4uXGRlcGVuZHNcUXRcbWtz
cGVjc1xmZWF0dXJlc1xxdF9jb25maWcucHJmOg0KKy4uXGRlcGVuZHNcUXRcbWtzcGVjc1xmZWF0
dXJlc1xleGNsdXNpdmVfYnVpbGRzLnByZjoNCisuLlxkZXBlbmRzXFF0XG1rc3BlY3NcZmVhdHVy
ZXNcZGVmYXVsdF9wcmUucHJmOg0KKy4uXGRlcGVuZHNcUXRcbWtzcGVjc1xmZWF0dXJlc1x3aW4z
MlxkZWZhdWx0X3ByZS5wcmY6DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXGZlYXR1cmVzXHJlbGVh
c2UucHJmOg0KKy4uXGRlcGVuZHNcUXRcbWtzcGVjc1xmZWF0dXJlc1xkZWJ1Z19hbmRfcmVsZWFz
ZS5wcmY6DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXGZlYXR1cmVzXGRlZmF1bHRfcG9zdC5wcmY6
DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXGZlYXR1cmVzXHdpbjMyXGRlZmF1bHRfcG9zdC5wcmY6
DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXGZlYXR1cmVzXHN0YXRpYy5wcmY6DQorLi5cZGVwZW5k
c1xRdFxta3NwZWNzXGZlYXR1cmVzXHdpbjMyXGNvbnNvbGUucHJmOg0KKy4uXGRlcGVuZHNcUXRc
bWtzcGVjc1xmZWF0dXJlc1x3aW4zMlxydHRpLnByZjoNCisuLlxkZXBlbmRzXFF0XG1rc3BlY3Nc
ZmVhdHVyZXNcd2luMzJcZXhjZXB0aW9ucy5wcmY6DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXGZl
YXR1cmVzXHdpbjMyXHN0bC5wcmY6DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXGZlYXR1cmVzXHdh
cm5fb24ucHJmOg0KKy4uXGRlcGVuZHNcUXRcbWtzcGVjc1xmZWF0dXJlc1xxdC5wcmY6DQorLi5c
ZGVwZW5kc1xRdFxta3NwZWNzXGZlYXR1cmVzXHdpbjMyXHRocmVhZC5wcmY6DQorLi5cZGVwZW5k
c1xRdFxta3NwZWNzXGZlYXR1cmVzXG1vYy5wcmY6DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXGZl
YXR1cmVzXHJlc291cmNlcy5wcmY6DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXGZlYXR1cmVzXHVp
Yy5wcmY6DQorLi5cZGVwZW5kc1xRdFxta3NwZWNzXGZlYXR1cmVzXHlhY2MucHJmOg0KKy4uXGRl
cGVuZHNcUXRcbWtzcGVjc1xmZWF0dXJlc1xsZXgucHJmOg0KKy4uXGRlcGVuZHNcUXRcbWtzcGVj
c1xmZWF0dXJlc1xpbmNsdWRlX3NvdXJjZV9kaXIucHJmOg0KK2M6XHgyZ29idWlsZHNcZGVwZW5k
c1xRdFxsaWJcUXRTdmcucHJsOg0KK2M6XHgyZ29idWlsZHNcZGVwZW5kc1xRdFxsaWJcUXRHdWku
cHJsOg0KK2M6XHgyZ29idWlsZHNcZGVwZW5kc1xRdFxsaWJcUXROZXR3b3JrLnBybDoNCitjOlx4
MmdvYnVpbGRzXGRlcGVuZHNcUXRcbGliXFF0Q29yZS5wcmw6DQorcW1ha2U6IHFtYWtlX2FsbCBG
T1JDRQ0KKwlAJChRTUFLRSkgLW8gTWFrZWZpbGUgeDJnb2NsaWVudC5wcm8NCisNCitxbWFrZV9h
bGw6IEZPUkNFDQorDQorbWFrZV9kZWZhdWx0OiByZWxlYXNlLW1ha2VfZGVmYXVsdCBkZWJ1Zy1t
YWtlX2RlZmF1bHQgRk9SQ0UNCittYWtlX2ZpcnN0OiByZWxlYXNlLW1ha2VfZmlyc3QgZGVidWct
bWFrZV9maXJzdCBGT1JDRQ0KK2FsbDogcmVsZWFzZS1hbGwgZGVidWctYWxsIEZPUkNFDQorY2xl
YW46IHJlbGVhc2UtY2xlYW4gZGVidWctY2xlYW4gRk9SQ0UNCitkaXN0Y2xlYW46IHJlbGVhc2Ut
ZGlzdGNsZWFuIGRlYnVnLWRpc3RjbGVhbiBGT1JDRQ0KKwktJChERUxfRklMRSkgTWFrZWZpbGUN
CisNCitjaGVjazogZmlyc3QNCisNCityZWxlYXNlLW1vY2NsZWFuOiAkKE1BS0VGSUxFKS5SZWxl
YXNlDQorCSQoTUFLRSkgLWYgJChNQUtFRklMRSkuUmVsZWFzZSBtb2NjbGVhbg0KK2RlYnVnLW1v
Y2NsZWFuOiAkKE1BS0VGSUxFKS5EZWJ1Zw0KKwkkKE1BS0UpIC1mICQoTUFLRUZJTEUpLkRlYnVn
IG1vY2NsZWFuDQorbW9jY2xlYW46IHJlbGVhc2UtbW9jY2xlYW4gZGVidWctbW9jY2xlYW4NCisN
CityZWxlYXNlLW1vY2FibGVzOiAkKE1BS0VGSUxFKS5SZWxlYXNlDQorCSQoTUFLRSkgLWYgJChN
QUtFRklMRSkuUmVsZWFzZSBtb2NhYmxlcw0KK2RlYnVnLW1vY2FibGVzOiAkKE1BS0VGSUxFKS5E
ZWJ1Zw0KKwkkKE1BS0UpIC1mICQoTUFLRUZJTEUpLkRlYnVnIG1vY2FibGVzDQorbW9jYWJsZXM6
IHJlbGVhc2UtbW9jYWJsZXMgZGVidWctbW9jYWJsZXMNCitGT1JDRToNCisNCiskKE1BS0VGSUxF
KS5SZWxlYXNlOiBNYWtlZmlsZQ0KKyQoTUFLRUZJTEUpLkRlYnVnOiBNYWtlZmlsZQ0KZGlmZiAt
LWdpdCBhL3NzaG1hc3RlcmNvbm5lY3Rpb24uY3BwIGIvc3NobWFzdGVyY29ubmVjdGlvbi5jcHAK
aW5kZXggODI3ZWVmZS4uMGYxZjU2MSAxMDA3NTUKLS0tIGEvc3NobWFzdGVyY29ubmVjdGlvbi5j
cHAKKysrIGIvc3NobWFzdGVyY29ubmVjdGlvbi5jcHAKQEAgLTUxOCw3ICs1MTgsNyBAQCB2b2lk
IFNzaE1hc3RlckNvbm5lY3Rpb246OnJ1bigpCiAgICAgfQogCiAjaWZkZWYgUV9PU19XSU4KLSAg
ICBzc2hfb3B0aW9uc19zZXQgKCBteV9zc2hfc2Vzc2lvbiwgU1NIX09QVElPTlNfU1NIX0RJUiwg
KG1haW5XbmQtPmdldEhvbWVEaXJlY3RvcnkoKSsiL3NzaCIpLnRvQXNjaWkoKSk7CisgICAgc3No
X29wdGlvbnNfc2V0ICggbXlfc3NoX3Nlc3Npb24sIFNTSF9PUFRJT05TX1NTSF9ESVIsIChtYWlu
V25kLT5nZXRIb21lRGlyZWN0b3J5KCkrIi9zc2giKS50b1V0ZjgoKSk7CiAgICAgaWYgKGtlcmJl
cm9zKQogICAgIHsKICAgICAgICAgcGFyc2VLbm93bkhvc3RzKCk7CkBAIC02MjUsMTMgKzYyNSwx
NSBAQCB2b2lkIFNzaE1hc3RlckNvbm5lY3Rpb246OnJ1bigpCiAjZW5kaWYKICAgICAgICAgcmV0
dXJuOwogICAgIH0KLSAgICBzc2hfb3B0aW9uc19zZXQgKCBteV9zc2hfc2Vzc2lvbiwgU1NIX09Q
VElPTlNfVVNFUiwgdXNlci50b0FzY2lpKCkgKTsKICNpZmRlZiBRX09TX1dJTgotICAgIHNzaF9v
cHRpb25zX3NldCAoIG15X3NzaF9zZXNzaW9uLCBTU0hfT1BUSU9OU19TU0hfRElSLCAobWFpbldu
ZC0+Z2V0SG9tZURpcmVjdG9yeSgpKyIvc3NoIikudG9Bc2NpaSgpKTsKLQorICAgIHNzaF9vcHRp
b25zX3NldCAoIG15X3NzaF9zZXNzaW9uLCBTU0hfT1BUSU9OU19VU0VSLCB1c2VyLnRvVXRmOCgp
ICk7CisgICAgc3NoX29wdGlvbnNfc2V0ICggbXlfc3NoX3Nlc3Npb24sIFNTSF9PUFRJT05TX1NT
SF9ESVIsIChtYWluV25kLT5nZXRIb21lRGlyZWN0b3J5KCkrIi9zc2giKS50b1V0ZjgoKSk7CiAj
aWZkZWYgREVCVUcKICAgICB4MmdvRGVidWc8PCJzZXR0aW5nIFNTSCBESVIgdG8gIjw8bWFpbldu
ZC0+Z2V0SG9tZURpcmVjdG9yeSgpKyIvc3NoIjsKICNlbmRpZgorI2Vsc2UKKyAgICBzc2hfb3B0
aW9uc19zZXQgKCBteV9zc2hfc2Vzc2lvbiwgU1NIX09QVElPTlNfVVNFUiwgdXNlci50b0FzY2lp
KCkgKTsKKwogI2VuZGlmCiAKICAgICBpZiAoIHVzZXJBdXRoKCkgKQpkaWZmIC0tZ2l0IGEveDJn
b2NsaWVudC5wcm8gYi94MmdvY2xpZW50LnBybwppbmRleCBlNmVlZTAxLi43YmFlMDRjIDEwMDc1
NQotLS0gYS94MmdvY2xpZW50LnBybworKysgYi94MmdvY2xpZW50LnBybwpAQCAtOCw3ICs4LDcg
QEAKIAogQ09ORklHICs9ICQkKFgyR09fQ0xJRU5UX1RBUkdFVCkKIENPTkZJRyArPSAkJChYMkdP
X0xJTlVYX1NUQVRJQykKLSNDT05GSUcgKz0gY29uc29sZQorQ09ORklHICs9IGNvbnNvbGUKIAog
Rk9STVMgKz0gY3Vwc3ByaW50c2V0dGluZ3NkaWFsb2cudWkgXAogICAgICAgICAgICBjdXBzcHJp
bnR3aWRnZXQudWkgXAo=
--001a1134d61c3d1b830502799ba8--

