Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1b7ieW-0003up-IS for pgadmin-hackers@arkaria.postgresql.org; Tue, 31 May 2016 12:20:08 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1b7ieW-0002WD-4M for pgadmin-hackers@arkaria.postgresql.org; Tue, 31 May 2016 12:20:08 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1b7ieH-0002HO-Vu for pgadmin-hackers@postgresql.org; Tue, 31 May 2016 12:19:54 +0000 Received: from mail-qg0-x233.google.com ([2607:f8b0:400d:c04::233]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1b7ie9-0007Tc-2M for pgadmin-hackers@postgresql.org; Tue, 31 May 2016 12:19:53 +0000 Received: by mail-qg0-x233.google.com with SMTP id p34so20221223qgp.1 for ; Tue, 31 May 2016 05:19:44 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc; bh=ghjVOjR6CiYqf/nMgdjLG5sOp0rcDKj6M+z9eE0cAoc=; b=P2pk70tOWymunaqv02aNjf4jWot6xC0OcdCyE0XWq6AIUkcejtXbzCrScGpPiViDsJ 0oOKYQjwrt1VIl3JXAb9FIMGgRKVv7r+3W24KWUcxyrdDzycccxCSe5OzNIh3ux5MmM9 TNcaDtr90v24ew1p3KaVhwXhwbZ2trOFR4IMeA9CglhBJk7XOgbkbnpYVyWKUXHHK9Em YZfa0YBFeawnMbxjzRViuVCUpvdZUNAkX0ZVVYPTbY3YKFgSpphrrvMnFMyv1Noi2GWq eCf2l8GTqzJyEMQoO9f6mWWBtwQ9eQK7pXd/MgbsmbN1w3POJBGIornBpaTyMu2UKRzH dQZA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:mime-version:in-reply-to:references:date :message-id:subject:from:to:cc; bh=ghjVOjR6CiYqf/nMgdjLG5sOp0rcDKj6M+z9eE0cAoc=; b=OjkEvSH3CZkdDmB/HMMXifhi4zt/RH8XA1JtozxlFeWYq/d2jDztTD2NVCA20hzPqy 1DWUdv9eqaGN0Dv29o3f+asH9ACY/OlFUGMJ5veVwJd6oo6pQsLwEqg4CyyiWQeCutp7 vg7H71bEu2UYeDipi/ZYF6KMnAvQwzi7xk2/+2cNA5QPwf9ylX//rwi5kIqV1szpZLmk qYnFJx9kZelfKcN87a7HS7UB2N+331+6zEKDNmCBt+XTGeXqjBvDtNk1llk/VBd8JPcc RI9SK1g+D9jAH5DPrcITbUdSXlYSx/Ud1EHtXO4XVAfbWnF/pbqq4aC2kV854+cGKoTE HQ+w== X-Gm-Message-State: ALyK8tLn3nC2pf9ZsugL1IvFS0/hCvaDX874TIDM05mhuMQMSr/8E1rDjTYBXPlcHbNQkKeXyIJafUQAlm98dIGd MIME-Version: 1.0 X-Received: by 10.140.19.4 with SMTP id 4mr29860739qgg.80.1464697182970; Tue, 31 May 2016 05:19:42 -0700 (PDT) Received: by 10.140.101.198 with HTTP; Tue, 31 May 2016 05:19:42 -0700 (PDT) In-Reply-To: References: Date: Tue, 31 May 2016 17:49:42 +0530 Message-ID: Subject: Re: Patch for pgAdmin4 package on Mac OS X From: Sandeep Thakkar To: Dave Page Cc: pgadmin-hackers , Hamid Quddus Content-Type: multipart/mixed; boundary=001a113558144bb685053422632d X-Pg-Spam-Score: -2.6 (--) List-Archive: List-Help: List-ID: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: X-Mailing-List: pgadmin-hackers Precedence: bulk Sender: pgadmin-hackers-owner@postgresql.org --001a113558144bb685053422632d Content-Type: multipart/alternative; boundary=001a113558144bb680053422632b --001a113558144bb680053422632b Content-Type: text/plain; charset=UTF-8 Somehow the patch skipped the Makefile changes. Attached is the updated patch. On Mon, May 30, 2016 at 6:00 PM, Sandeep Thakkar < sandeep.thakkar@enterprisedb.com> wrote: > Thanks. I have fixed all the issues. > > Regarding the app not running from within the DMG for the first time, I > was unable to reproduce it on Zilan's machine which didn't have the > development env. On Murali's machine, it was reproducible for 1 time after > couple of attempts. > > So, I just added the sync statement after settings the pythonpath value in > the settings. May be this will resolve the issue. Please confirm. > settings.sync(); > > Attached is the updated patch. Thanks. > > On Fri, May 27, 2016 at 9:28 PM, Dave Page wrote: > >> On Fri, May 27, 2016 at 4:48 PM, Dave Page wrote: >> > >> > >> > On Fri, May 27, 2016 at 1:11 PM, Sandeep Thakkar >> > wrote: >> >> >> >> Sure. Thanks. >> >> >> >> There is a typo in pkg/mac/build.sh. i.e >> >> >> >> s/HTML_HELP/HELP_PATH/ >> >> >> >> >> >> On Fri, May 27, 2016 at 5:26 PM, Dave Page wrote: >> >>> >> >>> Not entirely - we definitely need to improve it. I'll review the code >> as >> >>> it is now though. >> > >> > >> > OK, review time :-) >> > >> > - The appbundle name should be created from APP_NAME.app in config.py, >> e.g. >> > 'pgAdmin 4.app' >> > >> > - The DMG name should be created from >> > to_lower(remove_spaces(APP_NAME-APP_VERSION)) in config.py, e.g. >> > pgadmin4-1.0-dev.dmg >> > >> > - Use #ifdef Q_OS_MAC in the QT code for Mac-specific code. There's no >> need >> > to define another macro. >> > >> > - Please add "MINIFY_HTML = False" to config_local.py (and have Paresh >> do >> > the same on his packages). This works around a code issue with the docs >> that >> > I'll log a bug for. >> > >> > - In testing, I found that running the app from within the DMG doesn't >> seem >> > to work the first time - it prompts for the path, then exits. Once I >> save >> > the path it offers, it's fine on subsequent runs. >> > >> > - Once copied to my laptop, I saw the same issue as above. >> > >> > Once these issues are resolved, I think we're good to commit. >> >> Oh, a couple more things: >> >> - There should not be a copy of the app bundle in dist/ following the >> build. Only the dmg should be there. >> >> - I think mac-build/ should be removed following a successful build, >> rather than waiting for make clean (please talk to Paresh - his code >> should do the same). >> >> -- >> Dave Page >> Blog: http://pgsnake.blogspot.com >> Twitter: @pgsnake >> >> EnterpriseDB UK: http://www.enterprisedb.com >> The Enterprise PostgreSQL Company >> > > > > -- > Sandeep Thakkar > > -- Sandeep Thakkar --001a113558144bb680053422632b Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Somehow the patch skipped the Makefile changes. Attached i= s the updated patch.

On Mon, May 30, 2016 at 6:00 PM, Sandeep Thakkar &= lt;sa= ndeep.thakkar@enterprisedb.com> wrote:
Thanks. I have fixed all the issues.

Regarding the app n= ot running from within the DMG for the first time, I was unable to reproduc= e it on Zilan's machine which didn't have the development env. On M= urali's machine, it was reproducible for 1 time after couple of attempt= s.

So, I just added the sync statement after setti= ngs the pythonpath value in the settings. May be this will resolve the issu= e. Please confirm.
settings.sync();

Atta= ched is the updated patch. Thanks.=C2=A0

On Fri, May 27, 2016 at= 9:28 PM, Dave Page <dpage@pgadmin.org> wrote:
On Fri, May 27, 2016 at 4:48 PM, Dave Page &= lt;dpage@pgadmin.org= > wrote:
>
>
> On Fri, May 27, 2016 at 1:11 PM, Sandeep Thakkar
> <sandeep.thakkar@enterprisedb.com> wrote:
>>
>> Sure. Thanks.
>>
>> There is a typo in pkg/mac/build.sh. i.e
>>
>> s/HTML_HELP/HELP_PATH/
>>
>>
>> On Fri, May 27, 2016 at 5:26 PM, Dave Page <dpage@pgadmin.org> wrote:
>>>
>>> Not entirely - we definitely need to improve it. I'll revi= ew the code as
>>> it is now though.
>
>
> OK, review time :-)
>
> - The appbundle name should be created from APP_NAME.app in config.py,= e.g.
> 'pgAdmin 4.app'
>
> - The DMG name should be created from
> to_lower(remove_spaces(APP_NAME-APP_VERSION)) in config.py, e.g.
> pgadmin4-1.0-dev.dmg
>
> - Use #ifdef Q_OS_MAC in the QT code for Mac-specific code. There'= s no need
> to define another macro.
>
> - Please add "MINIFY_HTML =3D False" to config_local.py (and= have Paresh do
> the same on his packages). This works around a code issue with the doc= s that
> I'll log a bug for.
>
> - In testing, I found that running the app from within the DMG doesn&#= 39;t seem
> to work the first time - it prompts for the path, then exits. Once I s= ave
> the path it offers, it's fine on subsequent runs.
>
> - Once copied to my laptop, I saw the same issue as above.
>
> Once these issues are resolved, I think we're good to commit.

Oh, a couple more things:

- There should not be a copy of the app bundle in dist/ following the
build. Only the dmg should be there.

- I think mac-build/ should be removed following a successful build,
rather than waiting for make clean (please talk to Paresh - his code
should do the same).

--
Dave Page
Blog: http://pgsnake.blogspot.com
Twitter: @pgsnake

EnterpriseDB UK: http://www.enterprisedb.com
The Enterprise PostgreSQL Company



<= /div>--
Sandeep Thakkar



--
Sandeep Thakkar

--001a113558144bb680053422632b-- --001a113558144bb685053422632d Content-Type: application/octet-stream; name="pgadmin-mac-appbundle-may31.patch" Content-Disposition: attachment; filename="pgadmin-mac-appbundle-may31.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iovevipr1 ZGlmZiAtLWdpdCBhLy5naXRpZ25vcmUgYi8uZ2l0aWdub3JlCmluZGV4IDVk ODRkZDIuLjU2MmZlZTYgMTAwNjQ0Ci0tLSBhLy5naXRpZ25vcmUKKysrIGIv LmdpdGlnbm9yZQpAQCAtMjQsNCArMjQsNSBAQCBwZ2FkbWluNC5sb2cKIC9w Z2FkbWluNC5lZ2ctaW5mbwogL01BTklGRVNULmluCiAvYnVpbGQKKy9tYWMt YnVpbGQKIC9kaXN0CmRpZmYgLS1naXQgYS9NYWtlZmlsZSBiL01ha2VmaWxl CmluZGV4IGFkYWU0MWMuLmUyMDA5MzggMTAwNjQ0Ci0tLSBhL01ha2VmaWxl CisrKyBiL01ha2VmaWxlCkBAIC0xMyw5ICsxMyw5IEBAIFNIRUxMID0gL2Jp bi9zaAogIyBIaWdoLWxldmVsIHRhcmdldHMKICMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMKIAotYWxsOiBpbnN0YWxsLXBpcC1yZXF1aXJlbWVudHMg cGlwCithbGw6IGRvY3MgaW5zdGFsbC1waXAtcmVxdWlyZW1lbnRzIHBpcCBh cHBidW5kbGUKIAotY2xlYW46IGNsZWFuLXBpcAorY2xlYW46IGNsZWFuLXBp cCBjbGVhbi1kb2NzIGNsZWFuLWFwcGJ1bmRsZQogCiAjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMjIyMj IyMjIyMjIyMjIyMjIyMjCiAjIFB5dGhvbiBQSVAgcGFja2FnZQpAQCAtMzQs NiArMzQsNyBAQCBQSVBfQ0hFQ0tfQ01EID0gd2hpY2ggcGlwICY+IC9kZXYv bnVsbCAmJiBwaXAgc2hvdyBwaXAgfCBncmVwIE1ldGFkYXRhLVZlcnNpb24g MgogUEdBRE1JTl9TUkNfRElSID0gcGdhZG1pbjQKIFBHQURNSU5fRUdHID0g JHtQR0FETUlOX1NSQ19ESVJ9LmVnZy1pbmZvCiBQR0FETUlOX0JVSUxEID0g YnVpbGQKK1BHQURNSU5fTUFDQlVJTEQgPSBtYWMtYnVpbGQKIFBHQURNSU5f RElTVCA9IGRpc3QKIFBHQURNSU5fTUFOSUZFU1QgPSBNQU5JRkVTVC5pbgog UEdBRE1JTl9JTlNUQUxMX0NNRCA9IHBpcCBpbnN0YWxsIC0tdXNlLXdoZWVs IC0tZmluZC1saW5rcz0ke1BHQURNSU5fRElTVH0gJHtQR0FETUlOX1NSQ19E SVJ9CkBAIC04Myw5ICs4NCwyNCBAQCBlbmRpZgogaW5zdGFsbC1waXA6CiAJ JHtQR0FETUlOX0lOU1RBTExfQ01EfQogCithcHBidW5kbGU6IGRvY3MKKwku L3BrZy9tYWMvYnVpbGQuc2gKKworZG9jczoKKwlMQ19BTEw9ZW5fVVMuVVRG LTggTEFORz1lbl9VUy5VVEYtOCAkKE1BS0UpIC1DIGRvY3MvZW5fVVMgLWYg TWFrZWZpbGUuc3BoaW54IGh0bWwKKworY2xlYW4tZG9jczoKKwlMQ19BTEw9 ZW5fVVMuVVRGLTggTEFORz1lbl9VUy5VVEYtOCAkKE1BS0UpIC1DIGRvY3Mv ZW5fVVMgLWYgTWFrZWZpbGUuc3BoaW54IGNsZWFuCisKIGNsZWFuLXBpcDoK IAlybSAtcmYgJHtQR0FETUlOX1NSQ19ESVJ9CiAJcm0gLXJmICR7UEdBRE1J Tl9FR0d9CiAJcm0gLXJmICR7UEdBRE1JTl9CVUlMRH0KIAlybSAtcmYgJHtQ R0FETUlOX0RJU1R9CiAJcm0gLWYgJHtQR0FETUlOX01BTklGRVNUfQorCitj bGVhbi1hcHBidW5kbGU6CisJcm0gLXJmICR7UEdBRE1JTl9NQUNCVUlMRH0K KwlybSAtZiAke1BHQURNSU5fRElTVH0vcGdhZG1pbjQqLmRtZworCisuUEhP Tlk6IGRvY3MKZGlmZiAtLWdpdCBhL3BrZy9tYWMvLmdpdGlnbm9yZSBiL3Br Zy9tYWMvLmdpdGlnbm9yZQpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAw MDAwMDAwLi43ZDI5Y2IwCi0tLSAvZGV2L251bGwKKysrIGIvcGtnL21hYy8u Z2l0aWdub3JlCkBAIC0wLDAgKzEsMyBAQAorIyBHbG9iYWwgZXhjbHVkZXMg YWNyb3NzIGFsbCBzdWJkaXJlY3RvcmllcworZGVidWcucGdhZG1pbi5JbmZv LnBsaXN0CitwZ2FkbWluLkluZm8ucGxpc3QKZGlmZiAtLWdpdCBhL3BrZy9t YWMvUGtnSW5mbyBiL3BrZy9tYWMvUGtnSW5mbwpuZXcgZmlsZSBtb2RlIDEw MDY0NAppbmRleCAwMDAwMDAwLi5iZDA0MjEwCi0tLSAvZGV2L251bGwKKysr IGIvcGtnL21hYy9Qa2dJbmZvCkBAIC0wLDAgKzEgQEAKK0FQUEw/Pz8/Clwg Tm8gbmV3bGluZSBhdCBlbmQgb2YgZmlsZQpkaWZmIC0tZ2l0IGEvcGtnL21h Yy9SRUFETUUudHh0IGIvcGtnL21hYy9SRUFETUUudHh0Cm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLjk4N2JmMjQKLS0tIC9kZXYvbnVs bAorKysgYi9wa2cvbWFjL1JFQURNRS50eHQKQEAgLTAsMCArMSwzMiBAQAor QnVpbGRpbmcgcGdBZG1pbjQuZG1nIG9uIE1hYyBPUyBYCis9PT09PT09PT09 PT09PT09PT09PT09PT09PT09PT09PT0KKworUmVxdWlyZWQgUGFja2FnZXMg KEVpdGhlciBidWlsZCB0aGUgc291cmNlcyBvciBnZXQgdGhlbSBmcm9tIG1h Y3BvcnRzIG9yIHNpbWlsYXIpOgorCisxLiBQeXRob24gaW5zdGFsbGF0aW9u CisgIC0gUHl0aG9uIDIuNiBvciBhYm92ZSBmcm9tIGh0dHBzOi8vd3d3LnB5 dGhvbi5vcmcvCisKKzIuIFFUIGluc3RhbGxhdGlvbgorICAtIFF0IDQgb3Ig NSBmcm9tIGh0dHA6Ly93d3cucXQuaW8vCisKKzMuIFBvc3RncmVTUUwgaW5z dGFsbGF0aW9uCisgIC0gUG9zdGdyZVNRTCA5LjEgb3IgYWJvdmUgZnJvbSBo dHRwOi8vd3d3LnBvc3RncmVzcWwub3JnLworCitCdWlsZGluZzoKKworMS4g U2V0IHRoZSBQWVRIT05fSE9NRSBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byB0 aGUgUHl0aG9uIHJvb3QgaW5zdGFsbGF0aW9uIGRpcmVjdG9yeSwgZS5nLgor CisgICBleHBvcnQgUFlUSE9OX0hPTUU9L1N5c3RlbS9MaWJyYXJ5L0ZyYW1l d29ya3MvUHl0aG9uLmZyYW1ld29yay9WZXJzaW9ucy8yLjcKKworMi4gU2V0 IHRoZSBRVERJUiBlbnZpcm9ubWVudCB2YXJpYWJsZSB0byB0aGUgUVQgcm9v dCBpbnN0YWxsYXRpb24gZGlyZWN0b3J5LCBlLmcuCisKKyAgIGV4cG9ydCBR VERJUj1+L1F0LzUuNS9jbGFuZ182NAorCiszLiBTZXQgdGhlIFBHRElSIGVu dmlyb25tZW50IHZhcmlhYmxlIHRvIHRoZSBQb3N0Z3JlU1FMIGluc3RhbGxh dGlvbiBkaXJlY3RvcnksIGUuZy4KKworICAgZXhwb3J0IFBHRElSPS91c3Iv bG9jYWwvcGdzcWwKKworNC4gVG8gYnVpbGQsIGdvIHRvIHBnQWRtaW40IHNv dXJjZSByb290IGRpcmVjdG9yeSBhbmQgZXhlY3V0ZSAibWFrZSBhcHBidW5k bGUiLiBUaGlzIHdpbGwKKyAgIGNyZWF0ZSB0aGUgcHl0aG9uIHZpcnR1YWwg ZW52aXJvbm1lbnQgYW5kIGluc3RhbGwgYWxsIHRoZSByZXF1aXJlZCBweXRo b24gbW9kdWxlcyBtZW50aW9uZWQgaW4gdGhlCisgICByZXF1aXJlbWVudHMg ZmlsZSB1c2luZyBwaXAsIGJ1aWxkIHRoZSBydW50aW1lIGNvZGUgYW5kIGZp bmFsbHkgY3JlYXRlIHRoZSBhcHAgYnVuZGxlIGFuZCB0aGUgRE1HIAorICAg aW4gLi9kaXN0IGRpcmVjdG9yeQpkaWZmIC0tZ2l0IGEvcGtnL21hYy9idWls ZC5zaCBiL3BrZy9tYWMvYnVpbGQuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUK aW5kZXggMDAwMDAwMC4uMjk4MWFhZAotLS0gL2Rldi9udWxsCisrKyBiL3Br Zy9tYWMvYnVpbGQuc2gKQEAgLTAsMCArMSwxNTYgQEAKKyMhL2Jpbi9iYXNo CisKKyMgQnVpbGQgc2NyaXB0IHRvIGNyZWF0ZSBNYWMgQXBwIEJ1bmRsZSBh bmQgRE1HIGZvciBwZ0FkbWluNCBydW50aW1lCisKK2V4cG9ydCBXRD0kKGNk IGBkaXJuYW1lICQwYCAmJiBwd2QpCitleHBvcnQgU09VUkNFRElSPSRXRC8u Li8uLgorZXhwb3J0IEJVSUxEUk9PVD0kV0QvLi4vLi4vbWFjLWJ1aWxkCitl eHBvcnQgRElTVFJPT1Q9JFdELy4uLy4uL2Rpc3QKK2V4cG9ydCBWSVJUVUFM RU5WPXZlbnYKKworaWYgWyAieCRQWVRIT05fSE9NRSIgPT0gIngiIF07IHRo ZW4KKyAgICBlY2hvICJQWVRIT05fSE9NRSBub3Qgc2V0LiBTZXR0aW5nIGl0 IHRvIGRlZmF1bHQiCisgICAgZXhwb3J0IFBZVEhPTl9IT01FPS9TeXN0ZW0v TGlicmFyeS9GcmFtZXdvcmtzL1B5dGhvbi5mcmFtZXdvcmsvVmVyc2lvbnMv Mi43CisgICAgZXhwb3J0IFBZVEhPTl9WRVJTSU9OPTI3CitmaQorCisjIENo ZWNrIGlmIFB5dGhvbiBpcyB3b3JraW5nIGFuZCBjYWxjdWxhdGUgUFlUSE9O X1ZFUlNJT04KK2lmICRQWVRIT05fSE9NRS9iaW4vcHl0aG9uMiAtViA+IC9k ZXYvbnVsbCAyPiYxOyB0aGVuCisgICAgZXhwb3J0IFBZVEhPTl9WRVJTSU9O PWAkUFlUSE9OX0hPTUUvYmluL3B5dGhvbjIgLVYgMj4mMSB8IGF3ayAne3By aW50ICQyfScgfCBjdXQgLWQiLiIgLWYxLTIgfCBzZWQgJ3MvXC4vLydgCitl bGlmICRQWVRIT05fSE9NRS9iaW4vcHl0aG9uMyAtViA+IC9kZXYvbnVsbCAy PiYxOyB0aGVuCisgICAgZXhwb3J0IFBZVEhPTl9WRVJTSU9OPWAkUFlUSE9O X0hPTUUvYmluL3B5dGhvbjMgLVYgMj4mMSB8IGF3ayAne3ByaW50ICQyfScg fCBjdXQgLWQiLiIgLWYxLTIgfCBzZWQgJ3MvXC4vLydgCitlbHNlCisgICAg ZWNobyAiRXJyb3I6IFB5dGhvbiBpbnN0YWxsYXRpb24gbWlzc2luZyEiCisg ICAgZXhpdCAxCitmaQorCitpZiBbICIkUFlUSE9OX1ZFUlNJT04iIC1ndCAi MzQiIC1hICIkUFlUSE9OX1ZFUlNJT04iIC1sdCAiMjYiIF07IHRoZW4KKyAg ICBlY2hvICJQeXRob24gdmVyc2lvbiBub3Qgc3VwcG9ydGVkIgorICAgIGV4 aXQgMQorZmkKKworaWYgWyAiJFBZVEhPTl9WRVJTSU9OIiAtZ2UgIjMwIiBd OyB0aGVuCisgICAgZXhwb3J0IFBZVEhPTj0kUFlUSE9OX0hPTUUvYmluL3B5 dGhvbjMKKyAgICBleHBvcnQgUElQPXBpcDMKKyAgICBleHBvcnQgUkVRVUlS RU1FTlRTPXJlcXVpcmVtZW50c19weTMudHh0CitlbHNlCisgICAgZXhwb3J0 IFBZVEhPTj0kUFlUSE9OX0hPTUUvYmluL3B5dGhvbjIKKyAgICBleHBvcnQg UElQPXBpcAorICAgIGV4cG9ydCBSRVFVSVJFTUVOVFM9cmVxdWlyZW1lbnRz X3B5Mi50eHQKK2ZpCisKK2lmIFsgIngkUVRESVIiID09ICJ4IiBdOyB0aGVu CisgICAgZWNobyAiUVRESVIgbm90IHNldC4gU2V0dGluZyBpdCB0byBkZWZh dWx0IgorICAgIGV4cG9ydCBRVERJUj1+L1F0LzUuNS9jbGFuZ182NAorZmkK K2V4cG9ydCBRTUFLRT0kUVRESVIvYmluL3FtYWtlCitpZiAhICRRTUFLRSAt LXZlcnNpb24gPiAvZGV2L251bGwgMj4mMTsgdGhlbgorICAgIGVjaG8gIkVy cm9yOiBxbWFrZSBub3QgZm91bmQuIFFUIGluc3RhbGxhdGlvbiBpcyBub3Qg cHJlc2VudCBvciBpbmNvbXBsZXRlLiIKKyAgICBleGl0IDEKK2ZpCisKK2lm IFsgIngkUEdESVIiID09ICJ4IiBdOyB0aGVuCisgICAgZWNobyAiUEdESVIg bm90IHNldC4gU2V0dGluZyBpdCB0byBkZWZhdWx0IgorICAgIGV4cG9ydCBQ R0RJUj0vdXNyL2xvY2FsL3Bnc3FsCitmaQorCitfZ2V0X3ZlcnNpb24oKSB7 CisgICAgZXhwb3J0IGFwcF9yZWxlYXNlPWBncmVwICJeQVBQX1JFTEVBU0Ui IHdlYi9jb25maWcucHkgfCBjdXQgLWQiPSIgLWYyIHwgc2VkICdzLyAvL2cn YAorICAgIGV4cG9ydCBhcHBfcmV2aXNpb249YGdyZXAgIl5BUFBfUkVWSVNJ T04iIHdlYi9jb25maWcucHkgfCBjdXQgLWQiPSIgLWYyIHwgc2VkICdzLyAv L2cnYAorICAgIGV4cG9ydCBhcHBfbmFtZT1gZ3JlcCAiXkFQUF9OQU1FIiB3 ZWIvY29uZmlnLnB5IHwgY3V0IC1kIj0iIC1mMiB8IHNlZCAicy8nLy9nIiB8 IHNlZCAncy9eIC8vJ2AKKyAgICBleHBvcnQgYXBwX25hbWU9JGFwcF9uYW1l LmFwcAorICAgIGV4cG9ydCBhcHBfbG9uZ192ZXJzaW9uPSRhcHBfcmVsZWFz ZS4kYXBwX3JldmlzaW9uCisgICAgZXhwb3J0IGFwcF9zaG9ydF92ZXJzaW9u PWBlY2hvICRhcHBfbG9uZ192ZXJzaW9uIHwgY3V0IC1kIC4gLWYxLDJgCisg ICAgZXhwb3J0IGFwcF9zdWZmaXg9YGdyZXAgIl5BUFBfU1VGRklYIiB3ZWIv Y29uZmlnLnB5IHwgY3V0IC1kIj0iIC1mMiB8IHNlZCAncy8gLy9nJyB8IHNl ZCAicy8nLy9nImAKKyAgICBpZiBbICEgLXogJGFwcF9zdWZmaXggXTsgdGhl bgorICAgICAgICBleHBvcnQgYXBwX2xvbmdfdmVyc2lvbj0kYXBwX2xvbmdf dmVyc2lvbi0kYXBwX3N1ZmZpeAorICAgIGZpCit9CisKK19jbGVhbnVwKCkg eworICAgIGVjaG8gIkNsZWFuaW5nIHVwIHRoZSBvbGQgZW52aXJvbm1lbnQg YW5kIGFwcCBidW5kbGUiCisgICAgcm0gLXJmICRTT1VSQ0VESVIvcnVudGlt ZS9wZ0FkbWluNC5hcHAKKyAgICBybSAtcmYgJEJVSUxEUk9PVAorICAgIHJt IC1mICRESVNUUk9PVC9wZ0FkbWluNC5kbWcKK30KKworX2NyZWF0ZV9weXRo b25fdmlydHVhbGVudigpIHsKKyAgICBleHBvcnQgUEFUSD0kUEdESVIvYmlu OiRQQVRICisgICAgZXhwb3J0IExEX0xJQlJBUllfUEFUSD0kUEdESVIvbGli OiRfTERfTElCUkFSWV9QQVRICisgICAgdGVzdCAtZCAkQlVJTERST09UIHx8 IG1rZGlyICRCVUlMRFJPT1QgfHwgZXhpdCAxCisgICAgY2QgJEJVSUxEUk9P VAorICAgIHRlc3QgLWQgJFZJUlRVQUxFTlYgfHwgdmlydHVhbGVudiAtcCAk UFlUSE9OICRWSVJUVUFMRU5WIHx8IGV4aXQgMQorICAgIHNvdXJjZSAkVklS VFVBTEVOVi9iaW4vYWN0aXZhdGUKKyAgICAkUElQIGluc3RhbGwgLXIgJFNP VVJDRURJUi8kUkVRVUlSRU1FTlRTIHx8IHsgZWNobyBQSVAgaW5zdGFsbCBm YWlsZWQuIFBsZWFzZSByZXNvbHZlIHRoZSBpc3N1ZSBhbmQgcmVydW4gdGhl IHNjcmlwdDsgZXhpdCAxOyB9CisKKyAgICAjIE1vdmUgdGhlIHB5dGhvbjx2 ZXJzaW9uPiBkaXJlY3RvcnkgdG8gcHl0aG9uIHNvIHRoYXQgdGhlIHByaXZh dGUgZW52aXJvbm1lbnQgcGF0aCBpcyBmb3VuZCBieSB0aGUgYXBwbGljYXRp b24uCisgICAgZXhwb3J0IFBZTU9EVUxFU19QQVRIPWBweXRob24gLWMgImZy b20gZGlzdHV0aWxzLnN5c2NvbmZpZyBpbXBvcnQgZ2V0X3B5dGhvbl9saWI7 IHByaW50KGdldF9weXRob25fbGliKCkpImAKKyAgICBleHBvcnQgRElSX1BZ TU9EVUxFU19QQVRIPWBkaXJuYW1lICRQWU1PRFVMRVNfUEFUSGAKKyAgICBp ZiB0ZXN0IC1kICRESVJfUFlNT0RVTEVTX1BBVEg7IHRoZW4KKyAgICAgICAg bXYgJERJUl9QWU1PRFVMRVNfUEFUSCAkRElSX1BZTU9EVUxFU19QQVRILy4u L3B5dGhvbgorICAgIGZpCit9CisKK19idWlsZF9ydW50aW1lKCkgeworICAg IF9jcmVhdGVfcHl0aG9uX3ZpcnR1YWxlbnYgfHwgZXhpdCAxCisgICAgY2Qg JFNPVVJDRURJUi9ydW50aW1lCisgICAgJFFNQUtFIHx8IHsgZWNobyBxbWFr ZSBmYWlsZWQ7IGV4aXQgMTsgfQorICAgIG1ha2UgfHwgeyBlY2hvIG1ha2Ug ZmFpbGVkOyBleGl0IDE7IH0KKyAgICBjcCAtciBwZ0FkbWluNC5hcHAgIiRC VUlMRFJPT1QvJGFwcF9uYW1lIgorfQorCitfYnVpbGRfZG9jKCkgeworICAg IGNkICRTT1VSQ0VESVIvZG9jcy9lbl9VUworICAgICMgQ29tbWVudGluZyB0 aGUgYnVpbGQgYXMgaXQgaXMgdGFrZW4gY2FyZSBieSBNYWtlZmlsZQorICAg ICNMQ19BTEw9ZW5fVVMuVVRGLTggTEFORz1lbl9VUy5VVEYtOCBtYWtlIC1m IE1ha2VmaWxlLnNwaGlueCBodG1sIHx8IGV4aXQgMQorICAgIHRlc3QgLWQg IiRCVUlMRFJPT1QvJGFwcF9uYW1lL0NvbnRlbnRzL1Jlc291cmNlcyIgfHwg Im1rZGlyIC1wICRCVUlMRFJPT1QvJGFwcF9uYW1lL0NvbnRlbnRzL1Jlc291 cmNlcyIKKyAgICB0ZXN0IC1kICIkQlVJTERST09ULyRhcHBfbmFtZS9Db250 ZW50cy9SZXNvdXJjZXMvZG9jcy9lbl9VUyIgfHwgbWtkaXIgLXAgIiRCVUlM RFJPT1QvJGFwcF9uYW1lL0NvbnRlbnRzL1Jlc291cmNlcy9kb2NzL2VuX1VT IgorICAgIGNwIC1yIF9idWlsZC9odG1sICIkQlVJTERST09ULyRhcHBfbmFt ZS9Db250ZW50cy9SZXNvdXJjZXMvZG9jcy9lbl9VUy8iIHx8IGV4aXQgMQor fQorCitfY29tcGxldGVfYnVuZGxlKCkgeworICAgIGNkICRTT1VSQ0VESVIv cGtnL21hYworICAgIAorICAgICMgUmVwbGFjZSB0aGUgcGxhY2UgaG9sZGVy cyB3aXRoIHRoZSBjdXJyZW50IHZlcnNpb24KKyAgICBzZWQgLWUgInMvUEdB RE1JTl9MT05HX1ZFUlNJT04vJGFwcF9sb25nX3ZlcnNpb24vZyIgLWUgInMv UEdBRE1JTl9TSE9SVF9WRVJTSU9OLyRhcHBfc2hvcnRfdmVyc2lvbi9nIiBw Z2FkbWluLkluZm8ucGxpc3QuaW4gPiBwZ2FkbWluLkluZm8ucGxpc3QKKwor ICAgICMgY29weSBQeXRob24gcHJpdmF0ZSBlbnZpcm9ubWVudCB0byBhcHAg YnVuZGxlCisgICAgY3AgLVBSICRCVUlMRFJPT1QvJFZJUlRVQUxFTlYgIiRC VUlMRFJPT1QvJGFwcF9uYW1lL0NvbnRlbnRzL1Jlc291cmNlcy8iIHx8IGV4 aXQgMQorCisgICAgIyByZW1vdmUgdGhlIHB5dGhvbiBiaW4gYW5kIGluY2x1 ZGUgZnJvbSBhcHAgYnVuZGxlIGFzIGl0IGlzIG5vdCBuZWVkZWQKKyAgICBy bSAtcmYgIiRCVUlMRFJPT1QvJGFwcF9uYW1lL0NvbnRlbnRzL1Jlc291cmNl cy8kVklSVFVBTEVOVi9iaW4iICIkQlVJTERST09ULyRhcHBfbmFtZS9Db250 ZW50cy9SZXNvdXJjZXMvJFZJUlRVQUxFTlYvaW5jbHVkZSIKKyAgICBybSAt cmYgIiRCVUlMRFJPT1QvJGFwcF9uYW1lL0NvbnRlbnRzL1Jlc291cmNlcy8k VklSVFVBTEVOVi8uUHl0aG9uIgorCisgICAgIyBydW4gY29tcGxldGUtYnVu ZGxlIHRvIGNvcHkgdGhlIGRlcGVuZGVudCBsaWJyYXJpZXMgYW5kIGZyYW1l d29ya3MgYW5kIGZpeCB0aGUgcnBhdGhzCisgICAgLi9jb21wbGV0ZS1idW5k bGUuc2ggIiRCVUlMRFJPT1QvJGFwcF9uYW1lIiB8fCB7IGVjaG8gY29tcGxl dGUtYnVuZGxlLnNoIGZhaWxlZDsgZXhpdCAxOyB9CisKKyAgICAjIGNvcHkg dGhlIHdlYiBkaXJlY3RvcnkgdG8gdGhlIGJ1bmRsZSBhcyBpdCBpcyByZXF1 aXJlZCBieSBydW50aW1lCisgICAgY3AgLXIgJFNPVVJDRURJUi93ZWIgIiRC VUlMRFJPT1QvJGFwcF9uYW1lL0NvbnRlbnRzL1Jlc291cmNlcy8iIHx8IGV4 aXQgMQorICAgIGNkICIkQlVJTERST09ULyRhcHBfbmFtZS9Db250ZW50cy9S ZXNvdXJjZXMvd2ViIgorICAgIHJtIC1mIHBnYWRtaW40LmRiIGNvbmZpZ19s b2NhbC4qCisgICAgZWNobyAiU0VSVkVSX01PREUgPSBGYWxzZSIgPiBjb25m aWdfbG9jYWwucHkKKyAgICBlY2hvICJNSU5JRllfSFRNTCA9IEZhbHNlIiA+ PiBjb25maWdfbG9jYWwucHkKKyAgICBlY2hvICJIRUxQX1BBVEggPSAnLi4v Li4vLi4vZG9jcy9lbl9VUy9odG1sLyciID4+IGNvbmZpZ19sb2NhbC5weQor CisgICAgIyBSZW1vdmUgdGhlIC5weWMgZmlsZXMgaWYgYW55CisgICAgY2Qg IiRCVUlMRFJPT1QvJGFwcF9uYW1lIgorICAgIGZpbmQgLiAtbmFtZSAqLnB5 YyB8IHhhcmdzIHJtIC1mIAorCisgICAgIyBjb3B5IHRoZSByZXN1bHRpbmcg YXBwIGJ1bmRsZSB0byB0aGUgZGlzdAorICAgICN0ZXN0IC1kICRESVNUUk9P VCB8fCBta2RpciAkRElTVFJPT1QgfHwgZXhpdCAxCisgICAgI2NwIC1wUiAk QlVJTERST09ULyRhcHBfbmFtZSAkRElTVFJPT1QvIHx8IGV4aXQgMQorfQor CitfY3JlYXRlX2RtZygpIHsKKyAgICBjZCAkU09VUkNFRElSCisgICAgLi9w a2cvbWFjL2NyZWF0ZS1kbWcuc2ggfHwgeyBlY2hvIGNyZWF0ZS1kbWcuc2gg ZmFpbGVkOyBleGl0IDE7IH0KKyAgICAjIENsZWFuIHRoZSBtYWMtYnVpbGQv IG9uIHN1Y2Nlc3NmdWwgYnVpbGQKKyAgICBybSAtcmYgJEJVSUxEUk9PVC8q Cit9CisKK19nZXRfdmVyc2lvbiB8fCB7IGVjaG8gQ291bGQgbm90IGdldCB2 ZXJzaW9uaW5nOyBleGl0IDE7IH0KK19jbGVhbnVwCitfYnVpbGRfcnVudGlt ZSB8fCB7IGVjaG8gUnVudGltZSBidWlsZCBmYWlsZWQ7IGV4aXQgMTsgfQor X2J1aWxkX2RvYworX2NvbXBsZXRlX2J1bmRsZQorX2NyZWF0ZV9kbWcKZGlm ZiAtLWdpdCBhL3BrZy9tYWMvY29tcGxldGUtYnVuZGxlLnNoIGIvcGtnL21h Yy9jb21wbGV0ZS1idW5kbGUuc2gKbmV3IGZpbGUgbW9kZSAxMDA3NTUKaW5k ZXggMDAwMDAwMC4uZjk1NGQxMQotLS0gL2Rldi9udWxsCisrKyBiL3BrZy9t YWMvY29tcGxldGUtYnVuZGxlLnNoCkBAIC0wLDAgKzEsMTQwIEBACisjIS9i aW4vc2gKKworYnVuZGxlPSIkMSIKKworaWYgISB0ZXN0IC1kICIkYnVuZGxl IiA7IHRoZW4KKwllY2hvICIkYnVuZGxlIGlzIG5vIGJ1bmRsZSEiID4mMgor CWV4aXQgMQorZmkKKworaWYgdGVzdCAteiAkUVRESVIgOyB0aGVuCisJZWNo byAiUVRESVIgZW52aXJvbm1lbnQgdmFyaWFibGUgbm90IHNldCIKKwlleGl0 IDEKK2Vsc2UKKwllY2hvICJRVERJUj0kUVRESVIiCitmaQorCit0ZXN0IC1k ICIkYnVuZGxlL0NvbnRlbnRzL1Jlc291cmNlcyIgfHwgbWtkaXIgLXAgIiRi dW5kbGUvQ29udGVudHMvUmVzb3VyY2VzIiB8fCBleGl0IDEKKyMgQ3JlYXRl IHF0LmNvbmYgc28gdGhhdCBhcHAga25vd3Mgd2hlcmUgdGhlIFBsdWdpbnMg YXJlIHByZXNlbnQKK2NhdCA+PiAiJGJ1bmRsZS9Db250ZW50cy9SZXNvdXJj ZXMvcXQuY29uZiIgPDwgRU9GCitbUGF0aHNdCitQbHVnaW5zID0gUGx1Z0lu cworRU9GCisKK3Rlc3QgLWQgIiRidW5kbGUvQ29udGVudHMvRnJhbWV3b3Jr cyIgfHwgbWtkaXIgLXAgIiRidW5kbGUvQ29udGVudHMvRnJhbWV3b3JrcyIg fHwgZXhpdCAxCit0ZXN0IC1kICIkYnVuZGxlL0NvbnRlbnRzL1BsdWdJbnMv cGxhdGZvcm1zIiB8fCBta2RpciAtcCAiJGJ1bmRsZS9Db250ZW50cy9QbHVn SW5zL3BsYXRmb3JtcyIgfHwgZXhpdCAxCitjcCAtZiAkUVRESVIvcGx1Z2lu cy9wbGF0Zm9ybXMvbGlicWNvY29hLmR5bGliICIkYnVuZGxlL0NvbnRlbnRz L1BsdWdJbnMvcGxhdGZvcm1zIiB8fCB7IGVjaG8gbGlicWNvY29hLmR5bGli IG5vdCBmb3VuZCBpbiAkUVRESVIvcGx1Z2lucy9wbGF0Zm9ybXM7IGV4aXQg MTsgfQorY3AgLWYgJFBHRElSL2xpYi9saWJwcS41LmR5bGliICIkYnVuZGxl L0NvbnRlbnRzL0ZyYW1ld29ya3MiIHx8IHsgZWNobyBsaWJwcS41LmR5bGli IG5vdCBmb3VuZCBpbiAkUEdESVI7IGV4aXQgMTsgfQorCitmdW5jdGlvbiBD b21wbGV0ZVNpbmdsZUFwcCgpIHsKKwlsb2NhbCBidW5kbGU9JDEgdGFnPSQo YmFzZW5hbWUgIiQxIikgdG9kbyB0b2RvX29sZCBmd19yZWxwYXRoIGxpYiBs aWJfYm4gbmVzdGVkX2FwcCBuYV9yZWxwYXRoCisKKwllY2hvICJDb21wbGV0 aW5nIGFwcDogJGJ1bmRsZSIKKwlwdXNoZCAiJGJ1bmRsZSIgPiAvZGV2L251 bGwKKworCSNXZSBza2lwIG5lc3RlZCBhcHBzIGhlcmUgLSB0aG9zZSBhcmUg dHJlYXRlZCBzcGVjaWFsbHkKKwl0b2RvPSQoZmlsZSBgZmluZCAuLyAtcGVy bSArMDExMSAhIC10eXBlIGQgISAtcGF0aCAiKi5hcHAvKiIgISAtbmFtZSAi Ki5hcHAiYCB8IGdyZXAgLUUgIk1hY2gtTyA2NC1iaXQiIHwgYXdrIC1GICc6 fCAnICd7T1JTPSIgIjsgcHJpbnQgJDF9JyB8IHVuaXEpCisKKwllY2hvICJB cHA6ICR0YWc6IEZvdW5kIGV4ZWN1dGFibGVzOiAkdG9kbyIKKwl3aGlsZSB0 ZXN0ICIkdG9kbyIgIT0gIiI7IGRvCisJCXRvZG9fb2xkPSR0b2RvIDsKKwkJ dG9kbz0iIiA7CisJCWZvciB0b2RvX29iaiBpbiAkdG9kb19vbGQ7IGRvCisJ CQllY2hvICJBcHA6ICR0YWc6IFBvc3QtcHJvY2Vzc2luZzogJHRvZG9fb2Jq IgorCisJCQkjRmlndXJlIG91dCB0aGUgcmVsYXRpdmUgcGF0aCBmcm9tIHRv ZG9fb2JqIHRvIENvbnRlbnRzL0ZyYW1ld29ya3MKKwkJCWZ3X3JlbHBhdGg9 JChlY2hvICIkdG9kb19vYmoiIHxcCisJCQkJc2VkIC1uICdzfF5cKFwuLy8q XClcKFwoW14vXVteL10qL1wpKlwpW14vXVteL10qJHxcMnxncCcgfCBcCisJ CQkJc2VkIC1uICdzfFteL11bXi9dKi98Li4vfGdwJyBcCisJCQkpIkNvbnRl bnRzL0ZyYW1ld29ya3MiCisJCQlmd19yZWxwYXRoX29sZD0kZndfcmVscGF0 aAorCisJCQlmd19sb2M9IkNvbnRlbnRzL0ZyYW1ld29ya3MiCisKKwkJCSNG aW5kIGFsbCBsaWJyYXJpZXMgJHRvZG9fb2JqIGRlcGVuZHMgb24sIGJ1dCBz a2lwIHN5c3RlbSBsaWJyYXJpZXMKKwkJCWZvciBsaWIgaW4gJCgKKwkJCQlv dG9vbCAtTCAkdG9kb19vYmogfCBcCisJCQkJZ3JlcCAiUXRcfGR5bGliXHxG cmFtZXdvcmtzXHxQbHVnSW5zIiB8IGdyZXAgLXYgIjoiIHwgc2VkICdzLygu Ki8vJyB8IGVncmVwIC12ICcoL3Vzci9saWIpfCgvU3lzdGVtKXxAZXhlY3V0 YWJsZV9wYXRoQCcgXAorCQkJKSAkKG90b29sIC1MICR0b2RvX29iaiB8IGdy ZXAgIlB5dGhvbiIgfCBncmVwIC12ICI6IiB8IHNlZCAncy8oLiovLycgXAor CQkJKTsgZG8KKwkJCQlpZiBlY2hvICRsaWIgfCBncmVwICJQbHVnSW5zXHxs aWJxY29jb2EiICA+IC9kZXYvbnVsbDsgdGhlbgorCQkJCQlsaWJfbG9jPSJD b250ZW50cy9QbHVnSW5zL3BsYXRmb3JtcyIKKwkJCQllbGlmIGVjaG8gJGxp YiB8IGdyZXAgIlF0IiA+IC9kZXYvbnVsbDsgdGhlbgorCQkJCQlxdGZ3X3Bh dGg9IiQoZGlybmFtZSAkbGliIHwgc2VkICdzfC4qXChRdC4qZnJhbWV3b3Jr XCl8XDF8JykiCisJCQkJCWxpYl9sb2M9IkNvbnRlbnRzL0ZyYW1ld29ya3Mv JHF0ZndfcGF0aCIKKwkJCQkJaWYgWyAiJChiYXNlbmFtZSAkdG9kb19vYmop IiA9ICIkbGliIiBdOyB0aGVuCisJCQkJCQlsaWJfbG9jPSIkKGRpcm5hbWUg JHRvZG9fb2JqKSIKKwkJCQkJCXF0ZndfcGF0aD0kKGVjaG8gJGxpYl9sb2Mg fCBzZWQgJ3MvQ29udGVudHNcL0ZyYW1ld29ya3NcLy8vJykKKwkJCQkJZmkK KwkJCQllbGlmIGVjaG8gJGxpYiB8IGdyZXAgIlB5dGhvbiIgPiAvZGV2L251 bGw7IHRoZW4KKwkJCQkJcHlmd19wYXRoPSIkKGRpcm5hbWUgJGxpYiB8IHNl ZCAnc3wuKlwoUHl0aG9uLipmcmFtZXdvcmtcKXxcMXwnKSIKKwkJCQkJbGli X2xvYz0iQ29udGVudHMvRnJhbWV3b3Jrcy8kcHlmd19wYXRoIgorCQkJCQlp ZiBbICIkKGJhc2VuYW1lICR0b2RvX29iaikiID0gIiRsaWIiIF07IHRoZW4K KwkJCQkJCWxpYl9sb2M9IiQoZGlybmFtZSAkdG9kb19vYmopIgorCQkJCQkJ cHlmd19wYXRoPSQoZWNobyAkbGliX2xvYyB8IHNlZCAncy9Db250ZW50c1wv RnJhbWV3b3Jrc1wvLy8nKQorCQkJCQlmaQorCQkJCWVsc2UKKwkJCQkJbGli X2xvYz0iQ29udGVudHMvRnJhbWV3b3JrcyIKKwkJCQlmaQorCQkJCWxpYl9i bj0iJChiYXNlbmFtZSAiJGxpYiIpIiA7CisJCQkJaWYgISB0ZXN0IC1mICIk bGliX2xvYy8kbGliX2JuIjsgdGhlbgorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHRhcmdldF9maWxlPSIiCisJCQkJCXRhcmdl dF9wYXRoPSIiCisJCQkJCWVjaG8gIkFwcDogJHRhZzogQWRkaW5nIHN5bWxp bms6ICRsaWJfYm4gKGJlY2F1c2Ugb2Y6ICR0b2RvX29iaikiCisJCQkJCSMg Q29weSB0aGUgUVQgYW5kIFB5dGhvbiBmcmFtZXdvcmsKKwkJCQkJaWYgZWNo byAkbGliIHwgZ3JlcCBRdCA+IC9kZXYvbnVsbCA7IHRoZW4KKwkJCQkJCXRl c3QgLWQgJGxpYl9sb2MgfHwgbWtkaXIgLXAgJGxpYl9sb2MKKwkJCQkJCWNw ICRRVERJUi9saWIvJHF0ZndfcGF0aC8kbGliX2JuICRsaWJfbG9jLworCQkJ CQllbGlmIGVjaG8gJGxpYiB8IGdyZXAgUHl0aG9uID4gL2Rldi9udWxsIDsg dGhlbgorCQkJCQkJdGVzdCAtZCAkbGliX2xvYyB8fCBta2RpciAtcCAkbGli X2xvYworCQkJCQkJY3AgLVIgIiRsaWIiICIkbGliX2xvYy8kbGliX2JuIgor CQkJCQllbHNlCisJCQkJCQljcCAtUiAiJGxpYiIgIiRsaWJfbG9jLyRsaWJf Ym4iCisJCQkJCWZpCisJCQkJCWlmICEgdGVzdCAtTCAiJGxpYl9sb2MvJGxp Yl9ibiI7IHRoZW4KKwkJCQkJCWNobW9kIDc1NSAiJGxpYl9sb2MvJGxpYl9i biIKKwkJCQkJZWxzZQorCQkJCQkJdGFyZ2V0X2ZpbGU9JChyZWFkbGluayAi JGxpYiIpCisJCQkJCQl0YXJnZXRfcGF0aD0kKGRpcm5hbWUgIiRsaWIiKS8k dGFyZ2V0X2ZpbGUKKwkJCQkJICAgICAgICBlY2hvICJBcHA6ICR0YWc6IEFk ZGluZyBzeW1saW5rIHRhcmdldDogJHRhcmdldF9wYXRoIgorCQkJCQkJY3Ag IiR0YXJnZXRfcGF0aCIgIiRsaWJfbG9jLyR0YXJnZXRfZmlsZSIKKwkJCQkJ CWNobW9kIDc1NSAiJGxpYl9sb2MvJHRhcmdldF9maWxlIgorCQkJCQlmaQor CQkJCQllY2hvICJSZXdyaXRpbmcgSUQgaW4gJGxpYl9sb2MvJGxpYl9ibiB0 byAkbGliX2JuIgorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGVjaG8gaW5zdGFsbF9uYW1lX3Rvb2wgLWlkICIkbGliX2JuIiAi JGxpYl9sb2MvJGxpYl9ibiIKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBpbnN0YWxsX25hbWVfdG9vbCBcCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAtaWQgIiRs aWJfYm4iIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICIkbGliX2xvYy8kbGliX2JuIiB8fCBleGl0IDEKKwkJ CQkJdG9kbz0iJHRvZG8gLi8kbGliX2xvYy8kbGliX2JuIgorCQkJCWZpCisJ CQkJaWYgZWNobyAkbGliIHwgZ3JlcCBRdCA+IC9kZXYvbnVsbCA7IHRoZW4K KwkJCQkJZndfcmVscGF0aD0iJGZ3X3JlbHBhdGgvJHF0ZndfcGF0aCIKKwkJ CQlmaQorCQkJCWlmIGVjaG8gJGxpYiB8IGdyZXAgUHl0aG9uID4gL2Rldi9u dWxsIDsgdGhlbgorCQkJCQlmd19yZWxwYXRoPSIkZndfcmVscGF0aC8kcHlm d19wYXRoIgorCQkJCWZpCisJCQkJZWNobyAiUmV3cml0aW5nIGxpYnJhcnkg JGxpYiB0byBAbG9hZGVyX3BhdGgvJGZ3X3JlbHBhdGgvJGxpYl9ibiBpbiAk dG9kb19vYmoiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgZWNobyBpbnN0YWxsX25hbWVfdG9vbCAtY2hhbmdlICIkbGliIiAi QGxvYWRlcl9wYXRoLyRmd19yZWxwYXRoLyRsaWJfYm4iICIkdG9kb19vYmoi CisJCQkJaW5zdGFsbF9uYW1lX3Rvb2wgLWNoYW5nZSBcCisJCQkJCSIkbGli IiBcCisJCQkJCSJAbG9hZGVyX3BhdGgvJGZ3X3JlbHBhdGgvJGxpYl9ibiIg XAorCQkJCQkiJHRvZG9fb2JqIiB8fCBleGl0IDEKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaW5zdGFsbF9uYW1lX3Rvb2wgLWNoYW5nZSBc CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIiR0 YXJnZXRfcGF0aCIgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICJAbG9hZGVyX3BhdGgvJGZ3X3JlbHBhdGgvJHRhcmdldF9m aWxlIiBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIiR0b2RvX29iaiIgfHwgZXhpdCAxCisJCQkJZndfcmVscGF0aD0iJGZ3 X3JlbHBhdGhfb2xkIgorCQkJZG9uZQorCQlkb25lCisJZG9uZQorCisJIyBG aXggdGhlIHJwYXRocyBmb3IgcHN5Y29wZyBtb2R1bGUKKwlmaW5kICIkYnVu ZGxlL0NvbnRlbnRzL1Jlc291cmNlcy92ZW52LyIgLW5hbWUgX3BzeWNvcGcu c28gLXByaW50MCB8IHhhcmdzIC0wIGluc3RhbGxfbmFtZV90b29sIC1jaGFu Z2UgbGlicHEuNS5keWxpYiBAbG9hZGVyX3BhdGgvLi4vLi4vLi4vLi4vLi4v Li4vRnJhbWV3b3Jrcy9saWJwcS41LmR5bGliCisJZmluZCAiJGJ1bmRsZS9D b250ZW50cy9SZXNvdXJjZXMvdmVudi8iIC1uYW1lIF9wc3ljb3BnLnNvIC1w cmludDAgfCB4YXJncyAtMCBpbnN0YWxsX25hbWVfdG9vbCAtY2hhbmdlIGxp YnNzbC4xLjAuMC5keWxpYiBAbG9hZGVyX3BhdGgvLi4vLi4vLi4vLi4vLi4v Li4vRnJhbWV3b3Jrcy9saWJzc2wuMS4wLjAuZHlsaWIKKwlmaW5kICIkYnVu ZGxlL0NvbnRlbnRzL1Jlc291cmNlcy92ZW52LyIgLW5hbWUgX3BzeWNvcGcu c28gLXByaW50MCB8IHhhcmdzIC0wIGluc3RhbGxfbmFtZV90b29sIC1jaGFu Z2UgbGliY3J5cHRvLjEuMC4wLmR5bGliIEBsb2FkZXJfcGF0aC8uLi8uLi8u Li8uLi8uLi8uLi9GcmFtZXdvcmtzL2xpYmNyeXB0by4xLjAuMC5keWxpYgor CisJZWNobyAiQXBwIGNvbXBsZXRlZDogJGJ1bmRsZSIKKwlwb3BkID4gL2Rl di9udWxsCit9CisKK0NvbXBsZXRlU2luZ2xlQXBwICIkYnVuZGxlIgpkaWZm IC0tZ2l0IGEvcGtnL21hYy9jcmVhdGUtZG1nLnNoIGIvcGtnL21hYy9jcmVh dGUtZG1nLnNoCm5ldyBmaWxlIG1vZGUgMTAwNzU1CmluZGV4IDAwMDAwMDAu LjZmODk3YzYKLS0tIC9kZXYvbnVsbAorKysgYi9wa2cvbWFjL2NyZWF0ZS1k bWcuc2gKQEAgLTAsMCArMSwzOCBAQAorIyEvYmluL3NoCisKK2RtZ25hbWU9 YGdyZXAgIl5BUFBfTkFNRSIgd2ViL2NvbmZpZy5weSB8IGN1dCAtZCI9IiAt ZjIgfCBzZWQgInMvJy8vZyIgfCBzZWQgJ3MvIC8vZycgfCBhd2sgJ3twcmlu dCB0b2xvd2VyKCQwKX0nYAorCisjIG1vdmUgdG8gdGhlIGRpcmVjdG9yeSB3 aGVyZSB3ZSB3YW50IHRvIGNyZWF0ZSB0aGUgRE1HCitjZCBkaXN0CisKK0RN R19TT1VSQ0VTPSIuLy4uL21hYy1idWlsZC8kYXBwX25hbWUiCitETUdfTElD RU5DRT0uLy4uL3BrZy9tYWMvbGljZW5jZS5yCitETUdfSU1BR0U9JGRtZ25h bWUtJGFwcF9sb25nX3ZlcnNpb24uZG1nCitETUdfTkFNRT1wZ0FkbWluNAor SERJVVRJTD0vdXNyL2Jpbi9oZGl1dGlsCitSRVo9Ii91c3IvYmluL1JleiAv U3lzdGVtL0xpYnJhcnkvRnJhbWV3b3Jrcy9DYXJib24uZnJhbWV3b3JrL1Zl cnNpb25zL0EvSGVhZGVycy8qLnIiCisKK0RNR19ESVI9Li8kRE1HX0lNQUdF LnNyYworCitpZiB0ZXN0IC1lICIkRE1HX0RJUiI7IHRoZW4KKwllY2hvICJE aXJlY3RvcnkgJERNR19ESVIgYWxyZWFkeSBleGlzdHMuIFBsZWFzZSBkZWxl dGUgaXQgbWFudWFsbHkuIiA+JjIKKwlleGl0IDEKK2ZpCisKK2VjaG8gIkNs ZWFuaW5nIHVwIgorcm0gLWYgIiRETUdfSU1BR0UiIHx8IGV4aXQgMQorbWtk aXIgIiRETUdfRElSIiB8fCBleGl0IDEKKworZWNobyAiQ29weWluZyBkYXRh IGludG8gdGVtcG9yYXJ5IGRpcmVjdG9yeSIKK2ZvciBzcmMgaW4gIiRETUdf U09VUkNFUyI7IGRvCisJY3AgLVIgIiRzcmMiICIkRE1HX0RJUiIgfHwgZXhp dCAxCitkb25lCisKK2VjaG8gIkNyZWF0aW5nIGltYWdlIgorJEhESVVUSUwg Y3JlYXRlIC1xdWlldCAtc3JjZm9sZGVyICIkRE1HX0RJUiIgLWZvcm1hdCBV RFpPIC12b2xuYW1lICIkRE1HX05BTUUiIC1vdiAiJERNR19JTUFHRSIgfHwg ZXhpdCAxCitybSAtcmYgIiRETUdfRElSIiB8fCBleGl0IDEKKworZWNobyAi QXR0YWNoaW5nIExpY2Vuc2UgdG8gaW1hZ2UiCiskSERJVVRJTCB1bmZsYXR0 ZW4gLXF1aWV0ICIkRE1HX0lNQUdFIiB8fCBleGl0IDEKKyRSRVogIiRETUdf TElDRU5DRSIgLWEgLW8gIiRETUdfSU1BR0UiIHx8IGV4aXQgMQorJEhESVVU SUwgZmxhdHRlbiAtcXVpZXQgIiRETUdfSU1BR0UiIHx8IGV4aXQgMQpkaWZm IC0tZ2l0IGEvcGtnL21hYy9saWNlbmNlLnIgYi9wa2cvbWFjL2xpY2VuY2Uu cgpuZXcgZmlsZSBtb2RlIDEwMDY0NAppbmRleCAwMDAwMDAwLi44OGE4OWFm Ci0tLSAvZGV2L251bGwKKysrIGIvcGtnL21hYy9saWNlbmNlLnIKQEAgLTAs MCArMSw0MiBAQAorZGF0YSAnTFBpYycgKDUwMDApIHsKKwkkIjAwMDAgMDAw MSAwMDAwIDAwMDAgMDAwMCIKK307CisKK3Jlc291cmNlICdTVFIjJyAoNTAw MCwgIkVuZ2xpc2ggYnV0dG9ucyIpIHsKKyAgICB7ICAgLyogYXJyYXkgU3Ry aW5nQXJyYXk6IDkgZWxlbWVudHMgKi8KKyAgICAgICAgLyogWzFdICovCisg ICAgICAgICJFbmdsaXNoIiwKKyAgICAgICAgLyogWzJdICovCisgICAgICAg ICJBZ3JlZSIsCisgICAgICAgIC8qIFszXSAqLworICAgICAgICAiRGlzYWdy ZWUiLAorICAgICAgICAvKiBbNF0gKi8KKyAgICAgICAgIlByaW50IiwKKyAg ICAgICAgLyogWzVdICovCisgICAgICAgICJTYXZlLi4uIiwKKyAgICAgICAg LyogWzZdICovCisgICAgICAgICJJTVBPUlRBTlQgLSBSZWFkIHRoaXMgTGlj ZW5zZSBBZ3JlZW1lbnQgY2FyZWZ1bGx5IGJlZm9yZSBjbGlja2luZyBvbiAi CisgICAgICAgICJ0aGUgXCJBZ3JlZVwiIGJ1dHRvbi4gIEJ5IGNsaWNraW5n IG9uIHRoZSBcIkFncmVlXCIgYnV0dG9uLCB5b3UgYWdyZWUgIgorICAgICAg ICAidG8gYmUgYm91bmQgYnkgdGhlIHRlcm1zIG9mIHRoZSBMaWNlbnNlIEFn cmVlbWVudC4iLAorICAgICAgICAvKiBbN10gKi8KKyAgICAgICAgIlNvZnR3 YXJlIExpY2Vuc2UgQWdyZWVtZW50IiwKKyAgICAgICAgLyogWzhdICovCisg ICAgICAgICJUaGlzIHRleHQgY2Fubm90IGJlIHNhdmVkLiBUaGlzIGRpc2sg bWF5IGJlIGZ1bGwgb3IgbG9ja2VkLCBvciB0aGUgZmlsZSAiCisgICAgICAg ICJtYXkgYmUgbG9ja2VkLiIsCisgICAgICAgIC8qIFs5XSAqLworICAgICAg ICAiVW5hYmxlIHRvIHByaW50LiBNYWtlIHN1cmUgeW91J3ZlIHNlbGVjdGVk IGEgcHJpbnRlci4iCisgICAgfQorfTsKKworZGF0YSAnVEVYVCcgKDUwMDAs ICJFbmdsaXNoIikgeworICAgICJwZ0FkbWluIDRcbiIKKyAgICAiXG4iCisg ICAgIkNvcHlyaWdodCAoQykgMjAxMyAtIDIwMTYsIFRoZSBwZ0FkbWluIERl dmVsb3BtZW50IFRlYW1cbiIKKyAgICAiXG4iCisgICAgIlBlcm1pc3Npb24g dG8gdXNlLCBjb3B5LCBtb2RpZnksIGFuZCBkaXN0cmlidXRlIHRoaXMgc29m dHdhcmUgYW5kIGl0cyBkb2N1bWVudGF0aW9uIGZvciBhbnkgcHVycG9zZSwg d2l0aG91dCBmZWUsIGFuZCB3aXRob3V0IGEgd3JpdHRlbiBhZ3JlZW1lbnQg aXMgaGVyZWJ5IGdyYW50ZWQsIHByb3ZpZGVkIHRoYXQgdGhlIGFib3ZlIGNv cHlyaWdodCBub3RpY2UgYW5kIHRoaXMgcGFyYWdyYXBoIGFuZCB0aGUgZm9s bG93aW5nIHR3byBwYXJhZ3JhcGhzIGFwcGVhciBpbiBhbGwgY29waWVzLlxu IgorICAgICJcbiIKKyAgICAiSU4gTk8gRVZFTlQgU0hBTEwgVEhFIFBHQURN SU4gREVWRUxPUE1FTlQgVEVBTSBCRSBMSUFCTEUgVE8gQU5ZIFBBUlRZIEZP UiBESVJFQ1QsIElORElSRUNULCBTUEVDSUFMLCBJTkNJREVOVEFMLCBPUiBD T05TRVFVRU5USUFMIERBTUFHRVMsIElOQ0xVRElORyBMT1NUIFBST0ZJVFMs IEFSSVNJTkcgT1VUIE9GIFRIRSBVU0UgT0YgVEhJUyBTT0ZUV0FSRSBBTkQg SVRTIERPQ1VNRU5UQVRJT04sIEVWRU4gSUYgVEhFIFBHQURNSU4gREVWRUxP UE1FTlQgVEVBTSBIQVMgQkVFTiBBRFZJU0VEIE9GIFRIRSBQT1NTSUJJTElU WSBPRiBTVUNIIERBTUFHRS5cbiIKKyAgICAiXG4iCisgICAgIlRIRSBQR0FE TUlOIERFVkVMT1BNRU5UIFRFQU0gU1BFQ0lGSUNBTExZIERJU0NMQUlNUyBB TlkgV0FSUkFOVElFUywgSU5DTFVESU5HLCBCVVQgTk9UIExJTUlURUQgVE8s IFRIRSBJTVBMSUVEIFdBUlJBTlRJRVMgT0YgTUVSQ0hBTlRBQklMSVRZIEFO RCBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gVEhFIFNPRlRX QVJFIFBST1ZJREVEIEhFUkVVTkRFUiBJUyBPTiBBTiBcIkFTIElTXCIgQkFT SVMsIEFORCBUSEUgUEdBRE1JTiBERVZFTE9QTUVOVCBURUFNIEhBUyBOTyBP QkxJR0FUSU9OUyBUTyBQUk9WSURFIE1BSU5URU5BTkNFLCBTVVBQT1JULCBV UERBVEVTLCBFTkhBTkNFTUVOVFMsIE9SIE1PRElGSUNBVElPTlMuXG4iCit9 OworCmRpZmYgLS1naXQgYS9wa2cvbWFjL3BnYWRtaW4uSW5mby5wbGlzdC5p biBiL3BrZy9tYWMvcGdhZG1pbi5JbmZvLnBsaXN0LmluCm5ldyBmaWxlIG1v ZGUgMTAwNjQ0CmluZGV4IDAwMDAwMDAuLmZiNTdhYzgKLS0tIC9kZXYvbnVs bAorKysgYi9wa2cvbWFjL3BnYWRtaW4uSW5mby5wbGlzdC5pbgpAQCAtMCww ICsxLDI4IEBACis8P3htbCB2ZXJzaW9uPSIxLjAiIGVuY29kaW5nPSJVVEYt OCI/PgorPCFET0NUWVBFIHBsaXN0IFBVQkxJQyAiLS8vQXBwbGUgQ29tcHV0 ZXIvL0RURCBQTElTVCAxLjAvL0VOIiAiaHR0cDovL3d3dy5hcHBsZS5jb20v RFREcy9Qcm9wZXJ0eUxpc3QtMS4wLmR0ZCI+Cis8cGxpc3QgdmVyc2lvbj0i MS4wIj4KKzxkaWN0PgorCTxrZXk+Q0ZCdW5kbGVEZXZlbG9wbWVudFJlZ2lv bjwva2V5PgorCTxzdHJpbmc+RW5nbGlzaDwvc3RyaW5nPgorCTxrZXk+Q0ZC dW5kbGVFeGVjdXRhYmxlPC9rZXk+CisJPHN0cmluZz5wZ0FkbWluNDwvc3Ry aW5nPgorCTxrZXk+Q0ZCdW5kbGVHZXRJbmZvU3RyaW5nPC9rZXk+CisJPHN0 cmluZz5wZ0FkbWluNCBQR0FETUlOX0xPTkdfVkVSU0lPTjwvc3RyaW5nPgor CTxrZXk+Q0ZCdW5kbGVJY29uRmlsZTwva2V5PgorCTxzdHJpbmc+cGdBZG1p bjQuaWNuczwvc3RyaW5nPgorCTxrZXk+Q0ZCdW5kbGVJZGVudGlmaWVyPC9r ZXk+CisJPHN0cmluZz5vcmcucG9zdGdyZXNxbC5wZ2FkbWluPC9zdHJpbmc+ CisJPGtleT5DRkJ1bmRsZUluZm9EaWN0aW9uYXJ5VmVyc2lvbjwva2V5Pgor CTxzdHJpbmc+Ni4wPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZVBhY2thZ2VU eXBlPC9rZXk+CisJPHN0cmluZz5BUFBMPC9zdHJpbmc+CisJPGtleT5DRkJ1 bmRsZVNob3J0VmVyc2lvblN0cmluZzwva2V5PgorCTxzdHJpbmc+UEdBRE1J Tl9TSE9SVF9WRVJTSU9OPC9zdHJpbmc+CisJPGtleT5DRkJ1bmRsZVNpZ25h dHVyZTwva2V5PgorCTxzdHJpbmc+Pz8/Pzwvc3RyaW5nPgorCTxrZXk+Q0ZC dW5kbGVWZXJzaW9uPC9rZXk+CisJPHN0cmluZz5QR0FETUlOX0xPTkdfVkVS U0lPTjwvc3RyaW5nPgorCTxrZXk+Q1NSZXNvdXJjZXNGaWxlTWFwcGVkPC9r ZXk+CisJPHRydWUvPgorPC9kaWN0PgorPC9wbGlzdD4KZGlmZiAtLWdpdCBh L3J1bnRpbWUvU2VydmVyLmNwcCBiL3J1bnRpbWUvU2VydmVyLmNwcAppbmRl eCA4NjkxMjI0Li5kYTJjOWRjIDEwMDY0NAotLS0gYS9ydW50aW1lL1NlcnZl ci5jcHAKKysrIGIvcnVudGltZS9TZXJ2ZXIuY3BwCkBAIC0yMyw3ICsyMyw3 IEBACiAjaW5jbHVkZSAiU2VydmVyLmgiCiAKIFNlcnZlcjo6U2VydmVyKHF1 aW50MTYgcG9ydCkKLXsgICAgCit7CiAgICAgLy8gQXBwc2VydmVyIHBvcnQK ICAgICBtX3BvcnQgPSBwb3J0OwogICAgIG1fd2NBcHBOYW1lID0gTlVMTDsK QEAgLTQ3LDYgKzQ3LDE4IEBAIFNlcnZlcjo6U2VydmVyKHF1aW50MTYgcG9y dCkKICAgICAvLyBTZXR1cCB0aGUgc2VhcmNoIHBhdGgKICAgICBRU2V0dGlu Z3Mgc2V0dGluZ3M7CiAgICAgUVN0cmluZyBweXRob25fcGF0aCA9IHNldHRp bmdzLnZhbHVlKCJQeXRob25QYXRoIikudG9TdHJpbmcoKTsKKyNpZmRlZiBR X09TX01BQworICAgIFFTdHJpbmcgYXBwX2RpciA9IHFBcHAtPmFwcGxpY2F0 aW9uRGlyUGF0aCgpOworICAgIFFTdHJpbmcgZ2V0X3B5bW9kdWxlc19wYXRo ID0gKGFwcF9kaXIgKyAiLy4uL1Jlc291cmNlcy92ZW52L2xpYi9weXRob24v c2l0ZS1wYWNrYWdlcyIpOworICAgIFFGaWxlSW5mbyBmaShnZXRfcHltb2R1 bGVzX3BhdGgpOworICAgIFFTdHJpbmcgcHltb2R1bGVzX3BhdGggPSBmaS5j YW5vbmljYWxGaWxlUGF0aCgpOworICAgIGlmICghcHl0aG9uX3BhdGguY29u dGFpbnMocHltb2R1bGVzX3BhdGgpKQorICAgIHsKKyAgICAgICAgcHl0aG9u X3BhdGgucHJlcGVuZChweW1vZHVsZXNfcGF0aCk7IC8vIE1hYyBzb3VyY2Ug dHJlZSAoaW4gYSByZWxlYXNlIGFwcCBidW5kbGUpCisgICAgICAgIHNldHRp bmdzLnNldFZhbHVlKCJQeXRob25QYXRoIiwgcHltb2R1bGVzX3BhdGgpOwor CXNldHRpbmdzLnN5bmMoKTsKKyAgICB9CisjZW5kaWYKIAogICAgIGlmIChw eXRob25fcGF0aC5sZW5ndGgoKSA+IDApCiAgICAgewpAQCAtNjYsNiArNzgs OCBAQCBTZXJ2ZXI6OlNlcnZlcihxdWludDE2IHBvcnQpCiAjZW5kaWYKICAg ICAgICAgfQogICAgIH0KKyAgICBweXRob25fcGF0aCA9IHNldHRpbmdzLnZh bHVlKCJQeXRob25QYXRoIikudG9TdHJpbmcoKTsKKyAgICBxRGVidWcoKSA8 PCAiUHl0aG9uIHBhdGg6ICIgPDwgcHl0aG9uX3BhdGg7CiB9CiAKIFNlcnZl cjo6flNlcnZlcigpCkBAIC04Niw3ICsxMDAsOSBAQCBib29sIFNlcnZlcjo6 SW5pdCgpCiAgICAgcGF0aHMuYXBwZW5kKCIuLi93ZWIvIik7IC8vIExpbnV4 IHNvdXJjZSB0cmVlCiAgICAgcGF0aHMuYXBwZW5kKCIuLi8uLi93ZWIvIik7 IC8vIFdpbmRvd3Mgc291cmNlIHRyZWUKICAgICBwYXRocy5hcHBlbmQoIi4u Ly4uLy4uLy4uL3dlYi8iKTsgLy8gTWFjIHNvdXJjZSB0cmVlIChpbiBhIGRl diBlbnYpCisjaWZkZWYgUV9PU19NQUMKICAgICBwYXRocy5hcHBlbmQoIi4u L1Jlc291cmNlcy93ZWIvIik7IC8vIE1hYyBzb3VyY2UgdHJlZSAoaW4gYSBy ZWxlYXNlIGFwcCBidW5kbGUpCisjZW5kaWYKICAgICBwYXRocy5hcHBlbmQo c2V0dGluZ3MudmFsdWUoIkFwcGxpY2F0aW9uUGF0aCIpLnRvU3RyaW5nKCkp OyAvLyBTeXN0ZW0gY29uZmlndXJlZCB2YWx1ZQogICAgIHBhdGhzLmFwcGVu ZCgiIik7IC8vIFNob3VsZCBiZSBsYXN0IQogCg== --001a113558144bb685053422632d Content-Type: text/plain Content-Disposition: inline Content-Transfer-Encoding: 8bit MIME-Version: 1.0 -- Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) To make changes to your subscription: http://www.postgresql.org/mailpref/pgadmin-hackers --001a113558144bb685053422632d--