Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1giukO-0000Uz-OR for pgadmin-hackers@arkaria.postgresql.org; Mon, 14 Jan 2019 05:25:17 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1giukL-0006Id-SD for pgadmin-hackers@arkaria.postgresql.org; Mon, 14 Jan 2019 05:25:13 +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_SHA1:256) (Exim 4.89) (envelope-from ) id 1giukL-0006IW-GG for pgadmin-hackers@lists.postgresql.org; Mon, 14 Jan 2019 05:25:13 +0000 Received: from mail-lj1-x244.google.com ([2a00:1450:4864:20::244]) by magus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1giukG-0008H4-Io for pgadmin-hackers@lists.postgresql.org; Mon, 14 Jan 2019 05:25:12 +0000 Received: by mail-lj1-x244.google.com with SMTP id l15-v6so17835966lja.9 for ; Sun, 13 Jan 2019 21:25:08 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Ws4X9hw1u8kBHyKhg8yz1iKOOnmYPxFNDzC+xDlZQAo=; b=UTK8rPK8fDr1kQq2Q22PvmISTWmOGOjCDmOdWAKLu80CH5T3MYYyP41YWpP9MhZOn2 mhqwaLlWm6WvsBpAIl1Tzs03uuwF7YSiOY4uYII9MPKtMjf5/0LpAldyo42K8vClvjNv Xup689d0bldNy0tCGZK2He7PiZzByUueyEvUUyEgRkSrsnF0mKO8kr6u4WEnJSRxc/pg 6hmqRzwlPENDK9yparopRFeFzYwdLKlZXxD3m3QSHpXJgEUb+2xFZkMH/7f4D+ESn7vq OectCxyIBvUo+Dg7X3RjD6y8tcMOY/O5rcuXakbq6Ee9ytqkj+z9pIDqtlCTSUQhSpZW SQEQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=Ws4X9hw1u8kBHyKhg8yz1iKOOnmYPxFNDzC+xDlZQAo=; b=ECwCoXeszxUl+ErUzPh05DLi2MT2BnvrViTP4BGVzfTd8g9KQpn+eJN60GGvbsa7U/ KIpYcIb1BJjv40PIasIHxMUl0w1HWnIhG4Ec7ZHAlAAQ9XjNBtNgc5wldCvegwrpj3sP Cq57yVBr5U65O/qnNm2Z0S2jTDCpnO1B8VjAQuPaTTOECLw/pAtELxajxQVwafcM6ymq D2fJFJfVjCbJHkFqztzZzoUkxZ2LW1FAMEaewgcyCDK35pMwHHNA4jw+a9MEfmMG2D6w FsxeTzA/DbEvUNzhHS89lI6xnFj3v5u+/zz8OQCbqoJsmQuJwRryW3JMym2pZXxGQWxM Q6oA== X-Gm-Message-State: AJcUukfg55WkVKXII9Sn1k3m/XFYfqeEeCWdNf0NZvmg6WGiwRgQwyZ6 s75FdLGxjeriDfyLQmsEVZuuuyaZVp0j3OnE4xj9kg== X-Google-Smtp-Source: ALg8bN7hKKGbMpQY3xyA8Wnpv0+gAzNf1HG3lu5ZIWXo5FfCeZ5ATNWeD8jI20O5r/ljG4DRvG4fVUi1kPI0WgXKVwM= X-Received: by 2002:a2e:9d17:: with SMTP id t23-v6mr13187067lji.57.1547443504689; Sun, 13 Jan 2019 21:25:04 -0800 (PST) MIME-Version: 1.0 References: In-Reply-To: From: Aditya Toshniwal Date: Mon, 14 Jan 2019 10:54:53 +0530 Message-ID: Subject: Re: pgAdmin 4 commit: Improvement in the look and feel of the whole applica To: Dave Page Cc: Akshay Joshi , pgadmin-hackers Content-Type: multipart/mixed; boundary="000000000000687b92057f644414" List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --000000000000687b92057f644414 Content-Type: multipart/alternative; boundary="000000000000687b8f057f644412" --000000000000687b8f057f644412 Content-Type: text/plain; charset="UTF-8" Hi Hackers, Attached is the patch for further design improvements: - Process watcher made fixed width with header changes, time details rounded to 2 decimals - Query history will show "No query history" if no query fired. Query editor default size increased. - Tree improvements - right bold border removed completely. Now click anywhere on a tree item to perform actions. Please note, single click on the tiny tree arrow button will not work with this. Clicking anywhere is more useful than this. - Fixed a bug where New folder create button not working when in List mode and No files/folder present. - Other minor improvements. Kindly review. On Mon, Jan 7, 2019 at 3:17 PM Aditya Toshniwal < aditya.toshniwal@enterprisedb.com> wrote: > Hi Hackers, > > Attached is the patch for few more changes: > - New Folder button was not working in file dialogue. Fixed that. > - Color, icon changes in file dialogue > - Also replaced the splash screen image (which is used on main dashboard > also). It works fine on dashboard. However, I'm not sure of the splash > screen as the new image is SVG and older was PNG. I have made changes for > that in runtime code but I'm not able to test (evnvironment issue) runtime > code :(. It would be helpful if someone else can try it once. > > Kindly review. > > > On Mon, Jan 7, 2019 at 2:25 PM Dave Page wrote: > >> Thanks - applied! >> >> On Mon, Jan 7, 2019 at 10:44 AM Aditya Toshniwal >> wrote: >> > >> > Hi Hackers, >> > >> > Attached is the patch to incorporate the changes discussed in trailing >> mail(s). >> > >> > Kindly review. >> > >> > On Fri, Jan 4, 2019 at 3:31 PM Dave Page wrote: >> >> >> >> On Fri, Jan 4, 2019 at 9:58 AM Aditya Toshniwal >> >> wrote: >> >> > >> >> > Hi, >> >> > >> >> > On Fri, Jan 4, 2019 at 2:53 PM Dave Page wrote: >> >> >> >> >> >> Hi >> >> >> >> >> >> On Fri, Jan 4, 2019 at 4:51 AM Aditya Toshniwal < >> aditya.toshniwal@enterprisedb.com> wrote: >> >> >>> >> >> >>> Hi Dave, >> >> >>> >> >> >>> On Thu, Jan 3, 2019 at 8:39 PM Dave Page >> wrote: >> >> >>>> >> >> >>>> >> >> >>>> A few other things that I noticed (or have been bugging me): >> >> >>>> >> >> >>>> - The menu bar seems a little cramped. Taking pg-navbar from 32 >> to 40px and setting the font-weight to normal on the menu options (but not >> the product name) seems much better to me (and adjusting everything else as >> required of course). >> >> >>> >> >> >>> Giving too much space for the navbar will reduce the usable space >> for other things. It is good enough(32) to be used easily, and is equal to >> all the other headers in app (including tabs) giving a feel of native >> desktop application. You'll find even smaller menu heights in native >> desktop application. We can make font weight to normal and may be slightly >> increase horizontal spacing between the menu links. >> >> >> >> >> >> >> >> >> 8 pixels isn't going to make a noticeable difference to the >> workspace for users, and would leave the bar smaller than the 50px it's >> been for the last couple of years (iirc). I think it needs it to avoid >> looking cramped - please make the change. >> >> > >> >> > Will do. >> >> > One more doubt regarding bold headers, should I remove bold headers >> in dashboard graph header, subnode headers (eg.table->columns), properties >> tab accrordian headers ? >> >> >> >> No, please don't. I left them bold and the styling seemed like it >> >> worked. We can tweak again if others disagree later. >> >> >> >> Thanks! >> >> >> >> BTW - Chrome 71 shows the offset headers in the file dialogue as well. >> >> >> >> >>>> >> >> >>>> - In the file dialogue, the column headers don't line up with the >> columns in the rows. >> >> >>> >> >> >>> I could not see this on my machine (screenshot attached). Could >> you please share the screenshot. >> >> >> >> >> >> >> >> >> Attached - thanks! This is Chrome 70.0.3538.102 on MacOS. >> >> >> >> >> >> -- >> >> >> Dave Page >> >> >> Blog: http://pgsnake.blogspot.com >> >> >> Twitter: @pgsnake >> >> >> >> >> >> EnterpriseDB UK: http://www.enterprisedb.com >> >> >> The Enterprise PostgreSQL Company >> >> > >> >> > >> >> > >> >> > -- >> >> > Thanks and Regards, >> >> > Aditya Toshniwal >> >> > Software Engineer | EnterpriseDB Software Solutions | Pune >> >> > "Don't Complain about Heat, Plant a tree" >> >> >> >> >> >> >> >> -- >> >> Dave Page >> >> Blog: http://pgsnake.blogspot.com >> >> Twitter: @pgsnake >> >> >> >> EnterpriseDB UK: http://www.enterprisedb.com >> >> The Enterprise PostgreSQL Company >> > >> > >> > >> > -- >> > Thanks and Regards, >> > Aditya Toshniwal >> > Software Engineer | EnterpriseDB Software Solutions | Pune >> > "Don't Complain about Heat, Plant a tree" >> >> >> >> -- >> Dave Page >> Blog: http://pgsnake.blogspot.com >> Twitter: @pgsnake >> >> EnterpriseDB UK: http://www.enterprisedb.com >> The Enterprise PostgreSQL Company >> > > > -- > Thanks and Regards, > Aditya Toshniwal > Software Engineer | EnterpriseDB Software Solutions | Pune > "Don't Complain about Heat, Plant a tree" > -- Thanks and Regards, Aditya Toshniwal Software Engineer | EnterpriseDB Software Solutions | Pune "Don't Complain about Heat, Plant a tree" --000000000000687b8f057f644412 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Hackers,

Attached is the patch for further design impro= vements:
- Process watcher made fixed width with header changes, time detai= ls rounded to 2 decimals
- Query history will show "No query history&q= uot; if no query fired. Query editor default size increased.
- Tree improve= ments - right bold border removed completely. Now click anywhere on a tree = item to perform actions. Please note, single click on the tiny tree arrow b= utton will not work with this. Clicking anywhere is more useful than this.<= /div>
= - Fixed a bug where New folder create button not working when in List mode = and No files/folder present.
- Other minor improvements.

Kindly review= .

On Mon, Jan 7,= 2019 at 3:17 PM Aditya Toshniwal <aditya.toshniwal@enterprisedb.com>= wrote:
Hi Hackers,

Attached is the patch for few more changes:
- New Fold= er button was not working in file dialogue. Fixed that.
- Color, icon chang= es in file dialogue
- Also replaced the splash screen image (which is used = on main dashboard also). It works fine on dashboard. However, I'm not s= ure of the splash screen as the new image is SVG and older was PNG. I have = made changes for that in runtime code but I'm not able to test (evnviro= nment issue) runtime code :(. It would be helpful if someone else can try i= t once.

Kindly review.


=
On Mon, Jan 7, 2019 at 2:25 PM Dave Page <dpage@pgadmin.org> wrote:<= br>
Thanks - applied= !

On Mon, Jan 7, 2019 at 10:44 AM Aditya Toshniwal
<= aditya.toshniwal@enterprisedb.com> wrote:
>
> Hi Hackers,
>
> Attached is the patch to incorporate the changes discussed in trailing= mail(s).
>
> Kindly review.
>
> On Fri, Jan 4, 2019 at 3:31 PM Dave Page <dpage@pgadmin.org> wrote:
>>
>> On Fri, Jan 4, 2019 at 9:58 AM Aditya Toshniwal
>> <aditya.toshniwal@enterprisedb.com> wrote:
>> >
>> > Hi,
>> >
>> > On Fri, Jan 4, 2019 at 2:53 PM Dave Page <dpage@pgadmin.org> wrote:
>> >>
>> >> Hi
>> >>
>> >> On Fri, Jan 4, 2019 at 4:51 AM Aditya Toshniwal <aditya.to= shniwal@enterprisedb.com> wrote:
>> >>>
>> >>> Hi Dave,
>> >>>
>> >>> On Thu, Jan 3, 2019 at 8:39 PM Dave Page <dpage@pgadmin.org> w= rote:
>> >>>>
>> >>>>
>> >>>> A few other things that I noticed (or have been b= ugging me):
>> >>>>
>> >>>> - The menu bar seems a little cramped. Taking pg-= navbar from 32 to 40px and setting the font-weight to normal on the menu op= tions (but not the product name) seems much better to me (and adjusting eve= rything else as required of course).
>> >>>
>> >>> Giving too much space for the navbar will reduce the = usable space for other things. It is good enough(32) to be used easily, and= is equal to all the other headers in app (including tabs) giving a feel of= native desktop application. You'll find even smaller menu heights in n= ative desktop application. We can make font weight to normal and may be sli= ghtly increase horizontal spacing between the menu links.
>> >>
>> >>
>> >> 8 pixels isn't going to make a noticeable difference = to the workspace for users, and would leave the bar smaller than the 50px i= t's been for the last couple of years (iirc). I think it needs it to av= oid looking cramped - please make the change.
>> >
>> > Will do.
>> > One more doubt regarding bold headers, should I remove bold h= eaders in dashboard graph header, subnode headers (eg.table->columns), p= roperties tab accrordian headers ?
>>
>> No, please don't. I left them bold and the styling seemed like= it
>> worked. We can tweak again if others disagree later.
>>
>> Thanks!
>>
>> BTW - Chrome 71 shows the offset headers in the file dialogue as w= ell.
>>
>> >>>>
>> >>>> - In the file dialogue, the column headers don= 9;t line up with the columns in the rows.
>> >>>
>> >>> I could not see this on my machine (screenshot attach= ed). Could you please share the screenshot.
>> >>
>> >>
>> >> Attached - thanks! This is Chrome 70.0.3538.102 on MacOS.=
>> >>
>> >> --
>> >> Dave Page
>> >> Blog: http://pgsnake.blogspot.com
>> >> Twitter: @pgsnake
>> >>
>> >> EnterpriseDB UK: http://www.enterprisedb.com
>> >> The Enterprise PostgreSQL Company
>> >
>> >
>> >
>> > --
>> > Thanks and Regards,
>> > Aditya Toshniwal
>> > Software Engineer | EnterpriseDB Software Solutions | Pune >> > "Don't Complain about Heat, Plant a tree"
>>
>>
>>
>> --
>> Dave Page
>> Blog: http://pgsnake.blogspot.com
>> Twitter: @pgsnake
>>
>> EnterpriseDB UK: http://www.enterprisedb.com
>> The Enterprise PostgreSQL Company
>
>
>
> --
> Thanks and Regards,
> Aditya Toshniwal
> Software Engineer | EnterpriseDB Software Solutions | Pune
> "Don't Complain about Heat, Plant a tree"



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

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


--
Thanks a= nd Regards,
Aditya T= oshniwal
Software Engineer |=C2=A0EnterpriseDB Software Solutions |=C2=A0Pune
"Don't Complain about Heat, Plant a tree"<= /div>


--
Thanks and Regards,
Aditya Toshniwal
Software Engineer |=C2=A0EnterpriseDB Software Sol= utions |=C2=A0Pune
"Don't Complain about Heat, Plant a tr= ee"
--000000000000687b8f057f644412-- --000000000000687b92057f644414 Content-Type: application/octet-stream; name="RM3692.part6.patch" Content-Disposition: attachment; filename="RM3692.part6.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_jqvvstm00 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy9zdGF0aWMvanMvZnVuY3Rpb24uanMgYi93ZWIvcGdh ZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5j dGlvbnMvc3RhdGljL2pzL2Z1bmN0aW9uLmpzCmluZGV4IGU5MGFmNTcwLi42YWM3YThhNSAxMDA2 NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvZnVuY3Rpb25zL3N0YXRpYy9qcy9mdW5jdGlvbi5qcworKysgYi93ZWIvcGdh ZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5j dGlvbnMvc3RhdGljL2pzL2Z1bmN0aW9uLmpzCkBAIC0xMDgsNiArMTA4LDcgQEAgZGVmaW5lKCdw Z2FkbWluLm5vZGUuZnVuY3Rpb24nLCBbCiAgICAgICBjb2xsZWN0aW9uX3R5cGU6ICdjb2xsLWZ1 bmN0aW9uJywKICAgICAgIGhhc1NRTDogdHJ1ZSwKICAgICAgIGhhc0RlcGVuZHM6IHRydWUsCisg ICAgICB3aWR0aDogcGdCcm93c2VyLnN0ZFcubWQgKyAncHgnLAogICAgICAgaGFzU3RhdGlzdGlj czogKHRyZWVJbmZvcm1hdGlvbikgPT4gewogICAgICAgICByZXR1cm4gdHJlZUluZm9ybWF0aW9u LnNlcnZlci5zZXJ2ZXJfdHlwZSAhPT0gJ2dwZGInOwogICAgICAgfSwKZGlmZiAtLWdpdCBhL3dl Yi9wZ2FkbWluL2Jyb3dzZXIvc3RhdGljL2Nzcy93aXphcmQuY3NzIGIvd2ViL3BnYWRtaW4vYnJv d3Nlci9zdGF0aWMvY3NzL3dpemFyZC5jc3MKaW5kZXggZDI5Mzg4MWYuLmEwYzdkZDUzIDEwMDY0 NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3N0YXRpYy9jc3Mvd2l6YXJkLmNzcworKysgYi93 ZWIvcGdhZG1pbi9icm93c2VyL3N0YXRpYy9jc3Mvd2l6YXJkLmNzcwpAQCAtMSw3ICsxLDQgQEAK IC8qKiBDU1MgZm9yIFdpemFyZCAqKi8KLS5wZ2FkbWluX2dyYW50X3dpemFyZF9ib2R5IC5hanMt Y29udGVudCB7Ci0gIHBhZGRpbmc6IDBweCAhaW1wb3J0YW50OwotfQogCiAud2l6YXJkLWhlYWRl ciBoMyB7CiAgIGZvbnQtc2l6ZTogMTRweDsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvdGVtcGxhdGVzL2Jyb3dzZXIvaW5kZXguaHRtbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvdGVt cGxhdGVzL2Jyb3dzZXIvaW5kZXguaHRtbAppbmRleCA4OTg3N2Y1OS4uOTY1YWU1Y2UgMTAwNjQ0 Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvdGVtcGxhdGVzL2Jyb3dzZXIvaW5kZXguaHRtbAor KysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3RlbXBsYXRlcy9icm93c2VyL2luZGV4Lmh0bWwKQEAg LTk2LDcgKzk2LDcgQEAgd2luZG93Lm9ubG9hZCA9IGZ1bmN0aW9uKGUpewogICAgIDxkaXYgY2xh c3M9InJvdyI+PGRpdiBjbGFzcz0iY29sLTEyIHBnLXNwLXRleHQiPnt7IF8oJ0xvYWRpbmcgezB9 IHZ7MX0uLi4nKS5mb3JtYXQoY29uZmlnLkFQUF9OQU1FLCBjb25maWcuQVBQX1ZFUlNJT04pIH19 PC9kaXY+PC9kaXY+CiAgIDwvZGl2PgogPC9kaXY+Ci08bmF2IGNsYXNzPSJuYXZiYXIgZml4ZWQt dG9wIG5hdmJhci1leHBhbmQtbGcgbmF2YmFyLWRhcmsgYmctcHJpbWFyeSBwZy1uYXZiYXIiPgor PG5hdiBjbGFzcz0ibmF2YmFyIGZpeGVkLXRvcCBuYXZiYXItZXhwYW5kLWxnIG5hdmJhci1kYXJr IHBnLW5hdmJhciI+CiAgICAgPGEgY2xhc3M9Im5hdmJhci1icmFuZCBwZ2FkbWluX2hlYWRlcl9s b2dvIiBvbkNsaWNrPSJyZXR1cm4gZmFsc2U7IiBocmVmPSJ7eyAnIycgfX0iCiAgICAgICAgdGl0 bGU9Int7IGNvbmZpZy5BUFBfTkFNRSB9fSB7eyBfKCdsb2dvJykgfX0iPgogICAgICAgICA8aSBj bGFzcz0iYXBwLWljb24ge3sgY29uZmlnLkFQUF9JQ09OIH19Ij48L2k+CmRpZmYgLS1naXQgYS93 ZWIvcGdhZG1pbi9taXNjL2JncHJvY2Vzcy9wcm9jZXNzZXMucHkgYi93ZWIvcGdhZG1pbi9taXNj L2JncHJvY2Vzcy9wcm9jZXNzZXMucHkKaW5kZXggOGYwMGE0ZjcuLjE5OTZiZmE4IDEwMDY0NAot LS0gYS93ZWIvcGdhZG1pbi9taXNjL2JncHJvY2Vzcy9wcm9jZXNzZXMucHkKKysrIGIvd2ViL3Bn YWRtaW4vbWlzYy9iZ3Byb2Nlc3MvcHJvY2Vzc2VzLnB5CkBAIC02MDYsMTEgKzYwNiwxMyBAQCBj bGFzcyBCYXRjaFByb2Nlc3Mob2JqZWN0KToKICAgICAgICAgICAgICAgICBmb3IgYXJnIGluIGFy Z3NfcmVhZGVyOgogICAgICAgICAgICAgICAgICAgICBhcmdzID0gYXJncyArIGFyZwogICAgICAg ICAgICAgICAgIGRldGFpbHMgPSBkZXNjLmRldGFpbHMocC5jb21tYW5kLCBhcmdzKQorICAgICAg ICAgICAgICAgIHR5cGVfZGVzYyA9IGRlc2MudHlwZV9kZXNjCiAgICAgICAgICAgICAgICAgZGVz YyA9IGRlc2MubWVzc2FnZQogCiAgICAgICAgICAgICByZXMuYXBwZW5kKHsKICAgICAgICAgICAg ICAgICAnaWQnOiBwLnBpZCwKICAgICAgICAgICAgICAgICAnZGVzYyc6IGRlc2MsCisgICAgICAg ICAgICAgICAgJ3R5cGVfZGVzYyc6IHR5cGVfZGVzYywKICAgICAgICAgICAgICAgICAnZGV0YWls cyc6IGRldGFpbHMsCiAgICAgICAgICAgICAgICAgJ3N0aW1lJzogc3RpbWUsCiAgICAgICAgICAg ICAgICAgJ2V0aW1lJzogcC5lbmRfdGltZSwKQEAgLTYyNywxMyArNjI5LDcgQEAgY2xhc3MgQmF0 Y2hQcm9jZXNzKG9iamVjdCk6CiAKICAgICBAc3RhdGljbWV0aG9kCiAgICAgZGVmIHRvdGFsX3Nl Y29uZHMoZHQpOgotICAgICAgICAjIEtlZXAgYmFja3dhcmQgY29tcGF0aWJpbGl0eSB3aXRoIFB5 dGhvbiAyLjYgd2hpY2ggZG9lc24ndCBoYXZlCi0gICAgICAgICMgdGhpcyBtZXRob2QKLSAgICAg ICAgaWYgaGFzYXR0cihkdCwgJ3RvdGFsX3NlY29uZHMnKToKLSAgICAgICAgICAgIHJldHVybiBk dC50b3RhbF9zZWNvbmRzKCkKLSAgICAgICAgZWxzZToKLSAgICAgICAgICAgIHJldHVybiAoZHQu bWljcm9zZWNvbmRzICsgKGR0LnNlY29uZHMgKyBkdC5kYXlzICogMjQgKiAzNjAwKSAqCi0gICAg ICAgICAgICAgICAgICAgIDEwKio2KSAvIDEwKio2CisgICAgICAgIHJldHVybiByb3VuZChkdC50 b3RhbF9zZWNvbmRzKCksIDIpCiAKICAgICBAc3RhdGljbWV0aG9kCiAgICAgZGVmIGFja25vd2xl ZGdlKF9waWQpOgpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vbWlzYy9iZ3Byb2Nlc3Mvc3RhdGlj L2pzL2JncHJvY2Vzcy5qcyBiL3dlYi9wZ2FkbWluL21pc2MvYmdwcm9jZXNzL3N0YXRpYy9qcy9i Z3Byb2Nlc3MuanMKaW5kZXggYzVhZDVlYjguLjVhNTQ0NmFkIDEwMDY0NAotLS0gYS93ZWIvcGdh ZG1pbi9taXNjL2JncHJvY2Vzcy9zdGF0aWMvanMvYmdwcm9jZXNzLmpzCisrKyBiL3dlYi9wZ2Fk bWluL21pc2MvYmdwcm9jZXNzL3N0YXRpYy9qcy9iZ3Byb2Nlc3MuanMKQEAgLTQxLDcgKzQxLDcg QEAgZGVmaW5lKCdtaXNjLmJncHJvY2VzcycsIFsKICAgICAgICAgPGRpdiBjbGFzcz0idGV4dC1i b2R5IG14LWF1dG8gcGctYmctc3RhdHVzLXRleHQiPjwlLXN0YXR1c190ZXh0JT48L2Rpdj4KICAg ICAgIDwvZGl2PmApLAogICAgICAgZmFpbGVkX3N0YXR1c190cGw6IF8udGVtcGxhdGUoYAotICAg ICAgPGRpdiBjbGFzcz0iZC1mbGV4IHB4LTIgcHktMSBiZy1kYW5nZXItbGlnaHQgYm9yZGVyIGJv cmRlci1kYW5nZXIgcm91bmRlZCI+CisgICAgICA8ZGl2IGNsYXNzPSJkLWZsZXggcHgtMiBweS0x IGJnLWRhbmdlci1saWdodGVyIGJvcmRlciBib3JkZXItZGFuZ2VyIHJvdW5kZWQiPgogICAgICAg ICA8ZGl2IGNsYXNzPSJwci0yIj4KICAgICAgICAgICA8aSBjbGFzcz0iZmEgZmEtY2xvc2UgZmEt bGcgdGV4dC1kYW5nZXIgcGctYmctc3RhdHVzLWljb24iIGFyaWEtaGlkZGVuPSJ0cnVlIj48L2k+ CiAgICAgICAgIDwvZGl2PgpAQCAtNjMsNiArNjMsNyBAQCBkZWZpbmUoJ21pc2MuYmdwcm9jZXNz JywgWwogICAgICAgICAgIGNvbXBsZXRlZDogZmFsc2UsCiAKICAgICAgICAgICBpZDogaW5mb1sn aWQnXSwKKyAgICAgICAgICB0eXBlX2Rlc2M6IG51bGwsCiAgICAgICAgICAgZGVzYzogbnVsbCwK ICAgICAgICAgICBkZXRhaWxlZF9kZXNjOiBudWxsLAogICAgICAgICAgIHN0aW1lOiBudWxsLApA QCAtMTQ1LDYgKzE0Niw5IEBAIGRlZmluZSgnbWlzYy5iZ3Byb2Nlc3MnLCBbCiAgICAgICAgIGlm ICgnZXhlY3V0aW9uX3RpbWUnIGluIGRhdGEpCiAgICAgICAgICAgc2VsZi5leGVjdXRpb25fdGlt ZSA9IHBhcnNlRmxvYXQoZGF0YS5leGVjdXRpb25fdGltZSk7CiAKKyAgICAgICAgaWYgKCd0eXBl X2Rlc2MnIGluIGRhdGEpCisgICAgICAgICAgc2VsZi50eXBlX2Rlc2MgPSBkYXRhLnR5cGVfZGVz YzsKKwogICAgICAgICBpZiAoJ2Rlc2MnIGluIGRhdGEpCiAgICAgICAgICAgc2VsZi5kZXNjID0g ZGF0YS5kZXNjOwogCkBAIC0yODgsMTIgKzI5MiwxMyBAQCBkZWZpbmUoJ21pc2MuYmdwcm9jZXNz JywgWwogICAgICAgICAgICAgbGV0IGNvbnRlbnQgPSAkKGAKICAgICAgICAgICAgIDxkaXYgY2xh c3M9ImNhcmQiPgogICAgICAgICAgICAgICA8ZGl2IGNsYXNzPSJjYXJkLWhlYWRlciBiZy1wcmlt YXJ5IGQtZmxleCI+Ci0gICAgICAgICAgICAgICAgPGRpdj4ke18udW5lc2NhcGUoc2VsZi5kZXNj KX08L2Rpdj4KKyAgICAgICAgICAgICAgICA8ZGl2PiR7Xy5lc2NhcGUoc2VsZi50eXBlX2Rlc2Mp fTwvZGl2PgogICAgICAgICAgICAgICAgIDxkaXYgY2xhc3M9Im1sLWF1dG8iPgogICAgICAgICAg ICAgICAgICAgPGJ1dHRvbiBjbGFzcz0iYnRuIGJ0bi1zbS1zcSBidG4tcHJpbWFyeSBwZy1iZy1j bG9zZSI+PGkgY2xhc3M9ImZhIGZhLWxnIGZhLWNsb3NlIj48L2k+PC9idXR0b24+CiAgICAgICAg ICAgICAgICAgPC9kaXY+CiAgICAgICAgICAgICAgIDwvZGl2PgogICAgICAgICAgICAgICA8ZGl2 IGNsYXNzPSJjYXJkLWJvZHkgcHgtMiI+CisgICAgICAgICAgICAgICAgPGRpdiBjbGFzcz0icHkt MSI+JHtfLnVuZXNjYXBlKHNlbGYuZGVzYyl9PC9kaXY+CiAgICAgICAgICAgICAgICAgPGRpdiBj bGFzcz0icHktMSI+JHtzZWxmLnN0aW1lLnRvU3RyaW5nKCl9PC9kaXY+CiAgICAgICAgICAgICAg ICAgPGRpdiBjbGFzcz0iZC1mbGV4IHB5LTEiPgogICAgICAgICAgICAgICAgICAgPGRpdiBjbGFz cz0ibXktYXV0byBtci0yIj4KQEAgLTM4NCw3ICszODksNyBAQCBkZWZpbmUoJ21pc2MuYmdwcm9j ZXNzJywgWwogICAgICAgICAgIHBhbmVsID0gdGhpcy5wYW5lbCA9CiAgICAgICAgICAgICBwZ0Jy b3dzZXIuQmFja2dyb3VuZFByb2Nlc3NPYnNvcnZlci5jcmVhdGVfcGFuZWwoKTsKIAotICAgICAg ICAgIHBhbmVsLnRpdGxlKCdQcm9jZXNzIFdhdGNoZXIgLSAnICsgXy5lc2NhcGUoc2VsZi5kZXNj KSk7CisgICAgICAgICAgcGFuZWwudGl0bGUoJ1Byb2Nlc3MgV2F0Y2hlciAtICcgKyBfLmVzY2Fw ZShzZWxmLnR5cGVfZGVzYykpOwogICAgICAgICAgIHBhbmVsLmZvY3VzKCk7CiAgICAgICAgIH0K IApkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vbWlzYy9iZ3Byb2Nlc3Mvc3RhdGljL3Njc3MvX2Jn cHJvY2Vzcy5zY3NzIGIvd2ViL3BnYWRtaW4vbWlzYy9iZ3Byb2Nlc3Mvc3RhdGljL3Njc3MvX2Jn cHJvY2Vzcy5zY3NzCmluZGV4IGNhZjU0ZjIzLi43ODIxODUzZSAxMDA2NDQKLS0tIGEvd2ViL3Bn YWRtaW4vbWlzYy9iZ3Byb2Nlc3Mvc3RhdGljL3Njc3MvX2JncHJvY2Vzcy5zY3NzCisrKyBiL3dl Yi9wZ2FkbWluL21pc2MvYmdwcm9jZXNzL3N0YXRpYy9zY3NzL19iZ3Byb2Nlc3Muc2NzcwpAQCAt Niw2ICs2LDggQEAgJGJncHJvYy1jb250YWluZXItcGFkOiAycHg7CiAgIHBhZGRpbmc6IDBweCAh aW1wb3J0YW50OwogICB0ZXh0LWFsaWduOiBsZWZ0OwogICBjb2xvcjogJGNvbG9yLWZnLXRoZW1l OworICBtaW4td2lkdGg6IDUwMHB4OworICBtYXgtd2lkdGg6IDUwMHB4OwogICAuY2FyZCB7CiAg ICAgYm9yZGVyOm5vbmU7CiAgICAgJiAuY2FyZC1oZWFkZXIgewpkaWZmIC0tZ2l0IGEvd2ViL3Bn YWRtaW4vbWlzYy9maWxlX21hbmFnZXIvc3RhdGljL2pzL3V0aWxpdHkuanMgYi93ZWIvcGdhZG1p bi9taXNjL2ZpbGVfbWFuYWdlci9zdGF0aWMvanMvdXRpbGl0eS5qcwppbmRleCAyNDY2YjE0OC4u YzcxNGYxNTQgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL21pc2MvZmlsZV9tYW5hZ2VyL3N0YXRp Yy9qcy91dGlsaXR5LmpzCisrKyBiL3dlYi9wZ2FkbWluL21pc2MvZmlsZV9tYW5hZ2VyL3N0YXRp Yy9qcy91dGlsaXR5LmpzCkBAIC02NzAsMTIgKzY3MCwxNSBAQCBkZWZpbmUoWwogICAgICAgICBp ZiAoJCgnLmZpbGVpbmZvJykuZGF0YSgndmlldycpID09ICdncmlkJykgewogICAgICAgICAgIHJl c3VsdCArPSAnPHVsIGlkPSJjb250ZW50cyIgY2xhc3M9ImdyaWQiPjwvdWw+JzsKICAgICAgICAg fSBlbHNlIHsKLSAgICAgICAgICByZXN1bHQgKz0gJzx0YWJsZSBpZD0iY29udGVudHMiIGNsYXNz PSJ0YWJsZSB0YWJsZS1ib3JkZXJlZCB0YWJsZS1ub291dGVyLWJvcmRlciB0YWJsZS1lbXB0eS1y b3dzIGFibGVzb3J0ZXIiPic7CisgICAgICAgICAgLyogZmlsZV9saXN0aW5nX3RhYmxlIGNsYXNz IG1ha2VzIGhlaWdodCAxMDAlLCBiZWNhdXNlIG9mIHdoaWNoIE5vIGZvbGRlciBtZXNzYWdlIGlz IG5vdCBkaXNwbGF5ZWQKKyAgICAgICAgICAgKiBmaWxlX2xpc3RpbmdfdGFibGVfbm9fZGF0YSB3 aWxsIGJlIHJlbW92ZWQgd2hlbiBuZXcgZm9sZGVyIGlzIGNyZWF0ZWQKKyAgICAgICAgICAgKi8K KyAgICAgICAgICByZXN1bHQgKz0gJzx0YWJsZSBpZD0iY29udGVudHMiIGNsYXNzPSJ0YWJsZSB0 YWJsZS1ib3JkZXJlZCB0YWJsZS1ub291dGVyLWJvcmRlciB0YWJsZS1ib3R0b20tYm9yZGVyIHRh YmxlLWhvdmVyIHRhYmxlc29ydGVyIGZpbGVfbGlzdGluZ190YWJsZSBmaWxlX2xpc3RpbmdfdGFi bGVfbm9fZGF0YSI+JzsKICAgICAgICAgICByZXN1bHQgKz0gJzx0aGVhZD48dHI+PHRoPjxzcGFu PicgKyBsZy5uYW1lICsgJzwvc3Bhbj48L3RoPicgKwogICAgICAgICAgICAgICAgICAgICAnPHRo PjxzcGFuPicgKyBsZy5zaXplICsgJzwvc3Bhbj48L3RoPicgKwogICAgICAgICAgICAgICAgICAg ICAnPHRoPjxzcGFuPicgKyBsZy5tb2RpZmllZCArICc8L3NwYW4+PC90aD4nICsKLSAgICAgICAg ICAgICAgICAgICAgJzwvdHI+PC90aGVhZD4nOwotICAgICAgICAgIHJlc3VsdCArPSAnPC90Ym9k eT4nOworICAgICAgICAgICAgICAgICAgICAnPC90cj48L3RoZWFkPicgKworICAgICAgICAgICAg ICAgICAgICAnPHRib2R5PjwvdGJvZHk+JzsKICAgICAgICAgICByZXN1bHQgKz0gJzwvdGFibGU+ JzsKICAgICAgICAgfQogICAgICAgICByZXN1bHQgKz0gJzxkaXYgY2xhc3M9Im5vX2ZvbGRlcl9m b3VuZCI+JyArIGxnLmNvdWxkX25vdF9yZXRyaWV2ZV9mb2xkZXIgKyAnPC9kaXY+JzsKQEAgLTE1 NzYsNiArMTU3OSw3IEBAIGRlZmluZShbCiAKIAogICAgICAgICAkKCcuZmlsZV9tYW5hZ2VyIGJ1 dHRvbi5jcmVhdGUnKS5hdHRyKCdkaXNhYmxlZCcsICdkaXNhYmxlZCcpOworICAgICAgICAkKCcu bm9fZm9sZGVyX2ZvdW5kJykuYWRkQ2xhc3MoJ2Qtbm9uZScpOwogICAgICAgICBpZiAoJCgnLmZp bGVpbmZvJykuZGF0YSgndmlldycpID09ICdncmlkJykgewogCiAgICAgICAgICAgLy8gdGVtcGxh dGUgZm9yIGNyZWF0aW5nIG5ldyBmb2xkZXIKQEAgLTE2MzAsNyArMTYzNCwxMCBAQCBkZWZpbmUo WwogICAgICAgICAgICk7CiAKICAgICAgICAgICAkZmlsZV9lbGVtZW50X2xpc3QgPSAkKGZvbGRl cl9kaXYpOwotICAgICAgICAgICQoJy5maWxlaW5mbyAjY29udGVudHMuZmlsZV9saXN0aW5nX3Rh YmxlIHRib2R5JykucHJlcGVuZCgkZmlsZV9lbGVtZW50X2xpc3QpOworICAgICAgICAgIGxldCB0 YWJsZUVsID0gJCgnLmZpbGVpbmZvICNjb250ZW50cy5maWxlX2xpc3RpbmdfdGFibGUnKTsKKyAg ICAgICAgICB0YWJsZUVsLnJlbW92ZUNsYXNzKCdmaWxlX2xpc3RpbmdfdGFibGVfbm9fZGF0YScp OworICAgICAgICAgIHRhYmxlRWwuZmluZCgndGJvZHknKS5wcmVwZW5kKCRmaWxlX2VsZW1lbnRf bGlzdCk7CisKICAgICAgICAgICAkZmlsZV9lbGVtZW50X2xpc3QuZmluZCgndGQgc3Bhbi5sZXNz X3RleHQnKS50b2dnbGUoKTsKICAgICAgICAgICAkZmlsZV9lbGVtZW50X2xpc3QuZmluZCgndGQg aW5wdXQnKS50b2dnbGUoKS52YWwobGcubmV3X2ZvbGRlcikuc2VsZWN0KCk7CiAKZGlmZiAtLWdp dCBhL3dlYi9wZ2FkbWluL21pc2MvZmlsZV9tYW5hZ2VyL3N0YXRpYy9zY3NzL19maWxlX21hbmFn ZXIuc2NzcyBiL3dlYi9wZ2FkbWluL21pc2MvZmlsZV9tYW5hZ2VyL3N0YXRpYy9zY3NzL19maWxl X21hbmFnZXIuc2NzcwppbmRleCAzYTc3YmZhMS4uYWI0OGZmOTggMTAwNjQ0Ci0tLSBhL3dlYi9w Z2FkbWluL21pc2MvZmlsZV9tYW5hZ2VyL3N0YXRpYy9zY3NzL19maWxlX21hbmFnZXIuc2Nzcwor KysgYi93ZWIvcGdhZG1pbi9taXNjL2ZpbGVfbWFuYWdlci9zdGF0aWMvc2Nzcy9fZmlsZV9tYW5h Z2VyLnNjc3MKQEAgLTYsNiArNiwxMCBAQAogLmZpbGVfbGlzdGluZyB7CiAgIG1pbi13aWR0aDog MTAwJTsKIAorICAuZmlsZV9saXN0aW5nX3RhYmxlX25vX2RhdGEgeworICAgIGhlaWdodDogdW5z ZXQgIWltcG9ydGFudDsKKyAgfQorCiAgIC5maWxlX2xpc3RpbmdfdGFibGUgewogICAgIGhlaWdo dDogMTAwJTsKICAgICBkaXNwbGF5OiBibG9jazsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3By ZWZlcmVuY2VzL3N0YXRpYy9qcy9wcmVmZXJlbmNlcy5qcyBiL3dlYi9wZ2FkbWluL3ByZWZlcmVu Y2VzL3N0YXRpYy9qcy9wcmVmZXJlbmNlcy5qcwppbmRleCAzM2I3ZTc0Ny4uYzMzODVmYWMgMTAw NjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL3ByZWZlcmVuY2VzL3N0YXRpYy9qcy9wcmVmZXJlbmNlcy5q cworKysgYi93ZWIvcGdhZG1pbi9wcmVmZXJlbmNlcy9zdGF0aWMvanMvcHJlZmVyZW5jZXMuanMK QEAgLTMyOSw2ICszMjksMTcgQEAgZGVmaW5lKCdwZ2FkbWluLnByZWZlcmVuY2VzJywgWwogICAg ICAgICAgICAgICBpZiAoIWQpCiAgICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7CiAKKyAgICAg ICAgICAgICAgLyogQmluZCBldmVudHMgdG8gZW5hYmxlIGNsaWNraW5nIGFueXdoZXJlIGFuZCBu b3Qgb25seSB0ZXh0LCBidXR0b24gKi8KKyAgICAgICAgICAgICAgaXRlbS5vbignZGJsY2xpY2sn LCBmdW5jdGlvbihlKSB7CisgICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpOworICAg ICAgICAgICAgICAgIGUuc3RvcFByb3BhZ2F0aW9uKCk7CisgICAgICAgICAgICAgICAgYXBpLnRv Z2dsZShpdGVtKTsKKyAgICAgICAgICAgICAgfSk7CisgICAgICAgICAgICAgIGl0ZW0ub24oJ2Ns aWNrJywgZnVuY3Rpb24oZSkgeworICAgICAgICAgICAgICAgIGUucHJldmVudERlZmF1bHQoKTsK KyAgICAgICAgICAgICAgICBlLnN0b3BQcm9wYWdhdGlvbigpOworICAgICAgICAgICAgICAgIGFw aS5zZWxlY3QoaXRlbSk7CisgICAgICAgICAgICAgIH0pOwogICAgICAgICAgICAgICAgIC8vIFdl IHdpbGwgYWRkIHRoZSBwcmVmZXJlbmNlcyBpbiB0byB0aGUgcHJlZmVyZW5jZXMgZGF0YQogICAg ICAgICAgICAgICAgIC8vIGNvbGxlY3Rpb24uCiAgICAgICAgICAgICAgIGlmIChkLnByZWZlcmVu Y2VzICYmIF8uaXNBcnJheShkLnByZWZlcmVuY2VzKSkgewpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRt aW4vc3RhdGljL2pzL3RyZWUvdHJlZS5qcyBiL3dlYi9wZ2FkbWluL3N0YXRpYy9qcy90cmVlL3Ry ZWUuanMKaW5kZXggNzgyZjRkNTkuLjA5ZDIzOGJhIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9z dGF0aWMvanMvdHJlZS90cmVlLmpzCisrKyBiL3dlYi9wZ2FkbWluL3N0YXRpYy9qcy90cmVlL3Ry ZWUuanMKQEAgLTEyNCwxMCArMTI0LDI5IEBAIGV4cG9ydCBjbGFzcyBUcmVlIHsKICAgICByZXR1 cm4gdGhpcy5hY2lUcmVlQXBpLnNlbGVjdGVkKCk7CiAgIH0KIAorICB0b2dnbGVOb2RlKGFjaVRy ZWVJZGVudGlmaWVyKSB7CisgICAgdGhpcy5hY2lUcmVlQXBpLnRvZ2dsZShhY2lUcmVlSWRlbnRp Zmllcik7CisgIH0KKwogICBzZWxlY3ROb2RlKGFjaVRyZWVJZGVudGlmaWVyKSB7CiAgICAgdGhp cy5hY2lUcmVlQXBpLnNlbGVjdChhY2lUcmVlSWRlbnRpZmllcik7CiAgIH0KIAorICBiaW5kQ2xp Y2tFdmVudHMoYWNpVHJlZUlkZW50aWZpZXIpIHsKKyAgICAvKiBCaW5kIGV2ZW50cyB0byBlbmFi bGUgY2xpY2tpbmcgYW55d2hlcmUgYW5kIG5vdCBvbmx5IHRleHQsIGJ1dHRvbiAqLworICAgIGFj aVRyZWVJZGVudGlmaWVyLm9mZignZGJsY2xpY2snKS5vbignZGJsY2xpY2snLCBmdW5jdGlvbihl KSB7CisgICAgICBlLnByZXZlbnREZWZhdWx0KCk7CisgICAgICBlLnN0b3BQcm9wYWdhdGlvbigp OworICAgICAgdGhpcy50b2dnbGVOb2RlKGFjaVRyZWVJZGVudGlmaWVyKTsKKyAgICB9LmJpbmQo dGhpcykpOworCisgICAgYWNpVHJlZUlkZW50aWZpZXIub2ZmKCdjbGljaycpLm9uKCdjbGljaycs IGZ1bmN0aW9uKGUpIHsKKyAgICAgIGUucHJldmVudERlZmF1bHQoKTsKKyAgICAgIGUuc3RvcFBy b3BhZ2F0aW9uKCk7CisgICAgICB0aGlzLnNlbGVjdE5vZGUoYWNpVHJlZUlkZW50aWZpZXIpOwor ICAgIH0uYmluZCh0aGlzKSk7CisgIH0KKwogICBjcmVhdGVPclVwZGF0ZU5vZGUoaWQsIGRhdGEs IHBhcmVudCwgZG9tTm9kZSkgewogICAgIGxldCBvbGROb2RlUGF0aCA9IFtpZF07CiAgICAgaWYo cGFyZW50ICE9PSBudWxsICYmIHBhcmVudCAhPT0gdW5kZWZpbmVkKSB7CkBAIC0xNDAsNiArMTU5 LDggQEAgZXhwb3J0IGNsYXNzIFRyZWUgewogICAgIH0KIAogICAgIGNvbnN0IG5vZGUgPSBuZXcg VHJlZU5vZGUoaWQsIGRhdGEsIGRvbU5vZGUsIHBhcmVudCk7CisgICAgdGhpcy5iaW5kQ2xpY2tF dmVudHMoZG9tTm9kZSk7CisKICAgICBpZiAocGFyZW50ID09PSB0aGlzLnJvb3ROb2RlKSB7CiAg ICAgICBub2RlLnBhcmVudE5vZGUgPSBudWxsOwogICAgIH0KZGlmZiAtLWdpdCBhL3dlYi9wZ2Fk bWluL3N0YXRpYy9qc3gvaGlzdG9yeS9xdWVyeV9oaXN0b3J5LmpzeCBiL3dlYi9wZ2FkbWluL3N0 YXRpYy9qc3gvaGlzdG9yeS9xdWVyeV9oaXN0b3J5LmpzeAppbmRleCBiMjQ2MzliYi4uY2RiZjdh ZTIgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL3N0YXRpYy9qc3gvaGlzdG9yeS9xdWVyeV9oaXN0 b3J5LmpzeAorKysgYi93ZWIvcGdhZG1pbi9zdGF0aWMvanN4L2hpc3RvcnkvcXVlcnlfaGlzdG9y eS5qc3gKQEAgLTEzLDYgKzEzLDcgQEAgaW1wb3J0IFJlYWN0IGZyb20gJ3JlYWN0JzsKIGltcG9y dCBSZWFjdERPTSBmcm9tICdyZWFjdC1kb20nOwogaW1wb3J0IFNwbGl0UGFuZSBmcm9tICdyZWFj dC1zcGxpdC1wYW5lJzsKIGltcG9ydCBfIGZyb20gJ3VuZGVyc2NvcmUnOworaW1wb3J0IGdldHRl eHQgZnJvbSAnc291cmNlcy9nZXR0ZXh0JzsKIAogaW1wb3J0IFF1ZXJ5SGlzdG9yeURldGFpbCBm cm9tICcuL3F1ZXJ5X2hpc3RvcnlfZGV0YWlsJzsKIGltcG9ydCBRdWVyeUhpc3RvcnlFbnRyaWVz IGZyb20gJy4vcXVlcnlfaGlzdG9yeV9lbnRyaWVzJzsKQEAgLTkwLDE3ICs5MSwyMyBAQCBleHBv cnQgZGVmYXVsdCBjbGFzcyBRdWVyeUhpc3RvcnkgZXh0ZW5kcyBSZWFjdC5Db21wb25lbnQgewog ICB9CiAKICAgcmVuZGVyKCkgewotICAgIHJldHVybiAoCi0gICAgICA8U3BsaXRQYW5lIGRlZmF1 bHRTaXplPSc1MCUnIHNwbGl0PSd2ZXJ0aWNhbCcgcGFuZTFTdHlsZT17cXVlcnlFbnRyeUxpc3RE aXZTdHlsZX0KLSAgICAgICAgcGFuZTJTdHlsZT17cXVlcnlEZXRhaWxEaXZTdHlsZX0+Ci0gICAg ICAgIDxRdWVyeUhpc3RvcnlFbnRyaWVzIGhpc3RvcnlFbnRyaWVzPXt0aGlzLnN0YXRlLmhpc3Rv cnl9Ci0gICAgICAgICAgc2VsZWN0ZWRFbnRyeT17dGhpcy5zdGF0ZS5zZWxlY3RlZEVudHJ5fQot ICAgICAgICAgIG9uU2VsZWN0RW50cnk9e3RoaXMuc2VsZWN0SGlzdG9yeUVudHJ5fQotICAgICAg ICAvPgotICAgICAgICA8UXVlcnlIaXN0b3J5RGV0YWlsIGhpc3RvcnlFbnRyeT17dGhpcy5zdGF0 ZS5jdXJyZW50SGlzdG9yeURldGFpbH0KLSAgICAgICAgICAgIHNxbEVkaXRvclByZWY9e3RoaXMu cHJvcHMuc3FsRWRpdG9yUHJlZn0KLSAgICAgICAgLz4KLSAgICAgIDwvU3BsaXRQYW5lPik7Cisg ICAgaWYodGhpcy5zdGF0ZS5oaXN0b3J5Lmxlbmd0aCA9PSAwKSB7CisgICAgICByZXR1cm4oCisg ICAgICAgIDxkaXYgY2xhc3NOYW1lPSJhbGVydCBhbGVydC1pbmZvIHBnLXBhbmVsLW1lc3NhZ2Ui PntnZXR0ZXh0KCdObyBoaXN0b3J5IGZvdW5kJyl9PC9kaXY+CisgICAgICApOworICAgIH0gZWxz ZSB7CisgICAgICByZXR1cm4gKAorICAgICAgICA8U3BsaXRQYW5lIGRlZmF1bHRTaXplPSc1MCUn IHNwbGl0PSd2ZXJ0aWNhbCcgcGFuZTFTdHlsZT17cXVlcnlFbnRyeUxpc3REaXZTdHlsZX0KKyAg ICAgICAgICBwYW5lMlN0eWxlPXtxdWVyeURldGFpbERpdlN0eWxlfT4KKyAgICAgICAgICA8UXVl cnlIaXN0b3J5RW50cmllcyBoaXN0b3J5RW50cmllcz17dGhpcy5zdGF0ZS5oaXN0b3J5fQorICAg ICAgICAgICAgc2VsZWN0ZWRFbnRyeT17dGhpcy5zdGF0ZS5zZWxlY3RlZEVudHJ5fQorICAgICAg ICAgICAgb25TZWxlY3RFbnRyeT17dGhpcy5zZWxlY3RIaXN0b3J5RW50cnl9CisgICAgICAgICAg Lz4KKyAgICAgICAgICA8UXVlcnlIaXN0b3J5RGV0YWlsIGhpc3RvcnlFbnRyeT17dGhpcy5zdGF0 ZS5jdXJyZW50SGlzdG9yeURldGFpbH0KKyAgICAgICAgICAgICAgc3FsRWRpdG9yUHJlZj17dGhp cy5wcm9wcy5zcWxFZGl0b3JQcmVmfQorICAgICAgICAgIC8+CisgICAgICAgIDwvU3BsaXRQYW5l Pik7CisgICAgfQogICB9CiB9CiAKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3N0YXRpYy9zY3Nz L19hY2lfdHJlZS5vdmVycmlkZXMuc2NzcyBiL3dlYi9wZ2FkbWluL3N0YXRpYy9zY3NzL19hY2lf dHJlZS5vdmVycmlkZXMuc2NzcwppbmRleCA3MGEwYzkxNi4uYzQzYWVmOTYgMTAwNjQ0Ci0tLSBh L3dlYi9wZ2FkbWluL3N0YXRpYy9zY3NzL19hY2lfdHJlZS5vdmVycmlkZXMuc2NzcworKysgYi93 ZWIvcGdhZG1pbi9zdGF0aWMvc2Nzcy9fYWNpX3RyZWUub3ZlcnJpZGVzLnNjc3MKQEAgLTEsMjIg KzEsMTggQEAKIC5hY2lUcmVlIC5hY2lUcmVlTGkgewogICBkaXNwbGF5OiBncmlkICFpbXBvcnRh bnQ7CisgIGN1cnNvcjogcG9pbnRlcjsKIH0KIC5hY2lUcmVlIC5hY2lUcmVlVGV4dCB7CiAJZm9u dC1mYW1pbHk6ICRmb250LWZhbWlseS1wcmltYXJ5OwogCWZvbnQtc2l6ZTogMC44MTVyZW07CiB9 CiAuYWNpVHJlZS5hY2lUcmVlRm9jdXMgLmFjaVRyZWVGb2N1cyA+IC5hY2lUcmVlTGluZSAgewot ICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeS1saWdodDsKLQlib3JkZXItcmlnaHQ6 ICRhY3RpdmUtYm9yZGVyOworICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeS1saWdo dCAhaW1wb3J0YW50OwogfQorCiAuYWNpVHJlZSAuYWNpVHJlZVNlbGVjdGVkID4gLmFjaVRyZWVM aW5lIHsKLQliYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItcHJpbWFyeS1saWdodDsKLQlib3JkZXIt Y29sb3I6ICRjb2xvci1wcmltYXJ5LWxpZ2h0OwotCWJvcmRlci1yaWdodDogJGFjdGl2ZS1ib3Jk ZXI7Ci0JYm9yZGVyLWxlZnQ6IG5vbmUgIWltcG9ydGFudDsKLQlib3JkZXItdG9wOiBub25lICFp bXBvcnRhbnQ7Ci0JYm9yZGVyLWJvdHRvbTogbm9uZSAhaW1wb3J0YW50OwotCS13ZWJraXQtYm9y ZGVyLXJhZGl1czogbm9uZSAhaW1wb3J0YW50OworICBiYWNrZ3JvdW5kLWNvbG9yOiAkY29sb3It cHJpbWFyeS1saWdodCAhaW1wb3J0YW50OworICAtd2Via2l0LWJvcmRlci1yYWRpdXM6IG5vbmUg IWltcG9ydGFudDsKICAgLW1vei1ib3JkZXItcmFkaXVzOiBub25lICFpbXBvcnRhbnQ7CiAgIGJv cmRlci1yYWRpdXM6IG5vbmUgIWltcG9ydGFudDsKIH0KZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWlu L3N0YXRpYy9zY3NzL19hbGVydC5zY3NzIGIvd2ViL3BnYWRtaW4vc3RhdGljL3Njc3MvX2FsZXJ0 LnNjc3MKaW5kZXggNGY1OTAxMWQuLmU4Njc2YjhjIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9z dGF0aWMvc2Nzcy9fYWxlcnQuc2NzcworKysgYi93ZWIvcGdhZG1pbi9zdGF0aWMvc2Nzcy9fYWxl cnQuc2NzcwpAQCAtMjIsNyArMjIsNyBAQAogfQogCiAuYWxlcnQuYWxlcnQtaW5mbyB7Ci0gIHBh ZGRpbmc6IDE1cHg7CisgIHBhZGRpbmc6IDAuNXJlbTsKIH0KIAogLnN1Y2Nlc3MtaWNvbiB7CkBA IC00OCw3ICs0OCw3IEBACiAuYWxlcnQtaW5mbyB7CiAgIGJvcmRlci1jb2xvcjogJGNvbG9yLXBy aW1hcnk7CiAgIGJhY2tncm91bmQtY29sb3I6ICRjb2xvci1wcmltYXJ5LWxpZ2h0OwotICBjb2xv ciA6ICRjb2xvci1wcmltYXJ5OworICBjb2xvciA6ICRjb2xvci1mZy10aGVtZTsKICAgYmFja2dy b3VuZC1pbWFnZTogbm9uZTsKIH0KIApkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vc3RhdGljL3Nj c3MvX2FsZXJ0aWZ5Lm92ZXJyaWRlcy5zY3NzIGIvd2ViL3BnYWRtaW4vc3RhdGljL3Njc3MvX2Fs ZXJ0aWZ5Lm92ZXJyaWRlcy5zY3NzCmluZGV4IDIzNWM5ZmRiLi41ZTQ4ODc5OSAxMDA2NDQKLS0t IGEvd2ViL3BnYWRtaW4vc3RhdGljL3Njc3MvX2FsZXJ0aWZ5Lm92ZXJyaWRlcy5zY3NzCisrKyBi L3dlYi9wZ2FkbWluL3N0YXRpYy9zY3NzL19hbGVydGlmeS5vdmVycmlkZXMuc2NzcwpAQCAtMjgs MTIgKzI4LDEzIEBACiAgICAgICAmIC5hanMtY29udGVudCB7CiAgICAgICAgIHRvcDogJHRpdGxl LWhlaWdodDsKICAgICAgIH0KLSAgICAgICYucGdhZG1pbl9ncmFudF93aXphcmRfYm9keSB7Cisg ICAgICAmLnBnYWRtaW4td2l6YXJkLWJvZHkgewogICAgICAgICBib3JkZXItdG9wLWxlZnQtcmFk aXVzOiAkcGFuZWwtYm9yZGVyLXJhZGl1czsKICAgICAgICAgYm9yZGVyLXRvcC1yaWdodC1yYWRp dXM6ICRwYW5lbC1ib3JkZXItcmFkaXVzOwogICAgICAgICAmIC5hanMtY29udGVudCB7CiAgICAg ICAgICAgdG9wOiAwICFpbXBvcnRhbnQ7CiAgICAgICAgICAgYm9yZGVyLXJhZGl1czogaW5oZXJp dDsKKyAgICAgICAgICBwYWRkaW5nOiAwcHg7CiAgICAgICAgIH0KICAgICAgIH0KICAgICB9CkBA IC0yMjEsNCArMjIyLDkgQEAKIAogLmFsZXJ0aWZ5IC5hanMtZGltbWVyIHsKICAgYmFja2dyb3Vu ZC1jb2xvcjogJGxvYWRpbmctYmc7Cit9CisKKy8qIEl0IHNvbWV0aW1lcyBpcyBhcHBsaWVkIHRv IGRpYWxvZyBhbmQgYmxvY2tzIHRoZSBkaWFsb2cgZnJvbSBlZGl0aW5nICovCisuYWxlcnRpZnkg LmFqcy1kaWFsb2cuYWpzLWNhcHR1cmU6YmVmb3JlIHsKKyAgZGlzcGxheTogbm9uZTsKIH0KXCBO byBuZXdsaW5lIGF0IGVuZCBvZiBmaWxlCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9zdGF0aWMv c2Nzcy9fYm9vdHN0cmFwLm92ZXJyaWRlcy5zY3NzIGIvd2ViL3BnYWRtaW4vc3RhdGljL3Njc3Mv X2Jvb3RzdHJhcC5vdmVycmlkZXMuc2NzcwppbmRleCBmZWJlN2FkNy4uMmJkOGI3NjAgMTAwNjQ0 Ci0tLSBhL3dlYi9wZ2FkbWluL3N0YXRpYy9zY3NzL19ib290c3RyYXAub3ZlcnJpZGVzLnNjc3MK KysrIGIvd2ViL3BnYWRtaW4vc3RhdGljL3Njc3MvX2Jvb3RzdHJhcC5vdmVycmlkZXMuc2NzcwpA QCAtMjg1LDExICsyODUsMTIgQEAgdGQuc3dpdGNoLWNlbGwgPiBkaXYuYm9vdHN0cmFwLXN3aXRj aCB7CiAKIC5uYXZiYXItYnJhbmQgewogCWNvbG9yOiAkY29sb3ItYnJhbmQgIWltcG9ydGFudDsK LQliYWNrZ3JvdW5kOiAkY29sb3ItYnJhbmQtYmcgIWltcG9ydGFudDsKKwliYWNrZ3JvdW5kOiAk bmF2YmFyLWJyYW5kLWJnICFpbXBvcnRhbnQ7CiAJbWFyZ2luLXJpZ2h0OiAwcmVtOwogCXBhZGRp bmctbGVmdDogMC41cmVtICFpbXBvcnRhbnQ7CiAJcGFkZGluZy1yaWdodDogMXJlbSAhaW1wb3J0 YW50OwogCW1pbi1oZWlnaHQ6ICRuYXZiYXItaGVpZ2h0OworCWhlaWdodDogJG5hdmJhci1oZWln aHQ7CiAJcGFkZGluZzogMHJlbTsKIAlkaXNwbGF5OiBmbGV4OwogCWFsaWduLWl0ZW1zOiBjZW50 ZXIgIWltcG9ydGFudDsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3N0YXRpYy9zY3NzL19wZ2Fk bWluLnN0eWxlLnNjc3MgYi93ZWIvcGdhZG1pbi9zdGF0aWMvc2Nzcy9fcGdhZG1pbi5zdHlsZS5z Y3NzCmluZGV4IDFhZDRiOTFmLi5iYTYzNjk0NiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vc3Rh dGljL3Njc3MvX3BnYWRtaW4uc3R5bGUuc2NzcworKysgYi93ZWIvcGdhZG1pbi9zdGF0aWMvc2Nz cy9fcGdhZG1pbi5zdHlsZS5zY3NzCkBAIC0xNTUsNiArMTU1LDcgQEAKIAogLnBnLW5hdmJhciB7 CiAgIGZvbnQtc2l6ZTogJG5hdmJhci1mb250LXNpemU7CisgIGJhY2tncm91bmQtY29sb3I6ICRu YXZiYXItY29sb3ItYmc7CiAgIHBhZGRpbmctbGVmdDogMHJlbTsKICAgcGFkZGluZy1yaWdodDog MC41cmVtOwogICAmIC5uYXYtaXRlbSAubmF2LWxpbmt7CkBAIC0xNjIsNyArMTYzLDcgQEAKICAg fQogCiAgIC5wZy1uYXZiYXItYnJhbmQtYXJyb3cgewotICAgIGJvcmRlcjogJG5hdmJhci1oZWln aHQvMiBzb2xpZCAkY29sb3ItZmc7CisgICAgYm9yZGVyOiAkbmF2YmFyLWhlaWdodC8yIHNvbGlk ICRuYXZiYXItYnJhbmQtYXJyb3ctYmc7CiAgICAgYm9yZGVyLXJpZ2h0LWNvbG9yOiB0cmFuc3Bh cmVudDsKICAgICBib3JkZXItYm90dG9tLWNvbG9yOiB0cmFuc3BhcmVudDsKICAgICBib3JkZXIt dG9wLWNvbG9yOiB0cmFuc3BhcmVudDsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3N0YXRpYy9z Y3NzL193ZWJjYWJpbi5wZ2FkbWluLnNjc3MgYi93ZWIvcGdhZG1pbi9zdGF0aWMvc2Nzcy9fd2Vi Y2FiaW4ucGdhZG1pbi5zY3NzCmluZGV4IDM0YjU1YTdiLi40ZmQ5MmNkYiAxMDA2NDQKLS0tIGEv d2ViL3BnYWRtaW4vc3RhdGljL3Njc3MvX3dlYmNhYmluLnBnYWRtaW4uc2NzcworKysgYi93ZWIv cGdhZG1pbi9zdGF0aWMvc2Nzcy9fd2ViY2FiaW4ucGdhZG1pbi5zY3NzCkBAIC02Myw2ICs2Mywx MCBAQAogfQogCiAKKy53Y0xheW91dCB7CisgIGRpc3BsYXk6IGJsb2NrOworfQorCiAud2NMYXlv dXRHcmlkLCAud2NMYXlvdXRHcmlkIHRyLCAud2NMYXlvdXRHcmlkIHRkIHsKICAgYm9yZGVyOiAx cHggc29saWQgJHBhbmVsLWJvcmRlci1jb2xvcjsKIH0KZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWlu L3N0YXRpYy9zY3NzL3Jlc291cmNlcy9fZGVmYXVsdC52YXJpYWJsZXMuc2NzcyBiL3dlYi9wZ2Fk bWluL3N0YXRpYy9zY3NzL3Jlc291cmNlcy9fZGVmYXVsdC52YXJpYWJsZXMuc2NzcwppbmRleCA1 YWE2NTMzMy4uY2Y5NjczYWYgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL3N0YXRpYy9zY3NzL3Jl c291cmNlcy9fZGVmYXVsdC52YXJpYWJsZXMuc2NzcworKysgYi93ZWIvcGdhZG1pbi9zdGF0aWMv c2Nzcy9yZXNvdXJjZXMvX2RlZmF1bHQudmFyaWFibGVzLnNjc3MKQEAgLTM3LDcgKzM3LDYgQEAg JGNvbG9yLWdyYXktbGlnaHQ6ICNlYmVlZjM7CiAkY29sb3ItZ3JheS1saWdodGVyOiAjZjNmNWY5 OwogCiAkY29sb3ItYnJhbmQ6ICR3aGl0ZSAhZGVmYXVsdDsKLSRjb2xvci1icmFuZC1iZzogIzIy MjIyMjsKIAogJGNvbG9yLWVkaXRvci1iZzogJGNvbG9yLWJnICFkZWZhdWx0OwogJGNvbG9yLWVk aXRvci1rZXl3b3JkOiAjOTA4ICFkZWZhdWx0OwpAQCAtNjgsNiArNjcsNyBAQCAkYm9yZGVyLXJh ZGl1czogMC4yNXJlbTsgLy9ubyBjaGFuZ2UKIAogJHRleHQtY29sb3I6ICRjb2xvci1mZy10aGVt ZTsKICR0ZXh0LW11dGVkOiAkY29sb3ItZ3JheS1kYXJrOworCiAkbmF2YmFyLWRhcmstY29sb3I6 ICNmZmY7CiAkbmF2YmFyLWRhcmstaG92ZXItY29sb3I6ICNmZmY7CiAkbmF2YmFyLWRhcmstYWN0 aXZlLWNvbG9yOiAjZmZmOwpAQCAtMTUzLDYgKzE1MywxMCBAQCAkdGl0bGUtaGVpZ2h0OiAoJGxp bmUtaGVpZ2h0LWJhc2UqMTZweCkgKyA1cHggKyAycHggKyAkYm9yZGVyLXdpZHRoOwogJGZvb3Rl ci1wYWRkaW5nOiAwLjVyZW07CiAkZm9vdGVyLW1pbi1oZWlnaHQ6IDJyZW07CiAkZm9vdGVyLWhl aWdodC1jYWxjOiAkZm9vdGVyLW1pbi1oZWlnaHQrJGZvb3Rlci1wYWRkaW5nKjI7CisKKyRuYXZi YXItYnJhbmQtYmc6ICMyMjIyMjI7IC8vcGxhY2UgaW1hZ2UgdXJsIGlmIGltYWdlCiskbmF2YmFy LWJyYW5kLWFycm93LWJnOiAjMjIyMjIyOworJG5hdmJhci1jb2xvci1iZzogJGNvbG9yLXByaW1h cnk7CiAkbmF2YmFyLWZvbnQtc2l6ZTogMC45MjVyZW07CiAkbmF2YmFyLXVzZXItZm9udC1zaXpl OiAwLjg3NXJlbTsKIApkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdG9vbHMvYmFja3VwL19faW5p dF9fLnB5IGIvd2ViL3BnYWRtaW4vdG9vbHMvYmFja3VwL19faW5pdF9fLnB5CmluZGV4IDYwYmZk NWJmLi5lNzBlYWVkYSAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vdG9vbHMvYmFja3VwL19faW5p dF9fLnB5CisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL2JhY2t1cC9fX2luaXRfXy5weQpAQCAtMTI1 LDYgKzEyNSwxOCBAQCBjbGFzcyBCYWNrdXBNZXNzYWdlKElQcm9jZXNzRGVzYyk6CiAKICAgICAg ICAgcmV0dXJuIHMubmFtZSwgaG9zdCwgcG9ydAogCisgICAgQHByb3BlcnR5CisgICAgZGVmIHR5 cGVfZGVzYyhzZWxmKToKKyAgICAgICAgaWYgc2VsZi5iYWNrdXBfdHlwZSA9PSBCQUNLVVAuT0JK RUNUOgorICAgICAgICAgICAgcmV0dXJuIF8oIkJhY2tpbmcgdXAgYW4gb2JqZWN0IG9uIHRoZSBz ZXJ2ZXIiKQorICAgICAgICBpZiBzZWxmLmJhY2t1cF90eXBlID09IEJBQ0tVUC5HTE9CQUxTOgor ICAgICAgICAgICAgcmV0dXJuIF8oIkJhY2tpbmcgdXAgdGhlIGdsb2JhbCBvYmplY3RzIikKKyAg ICAgICAgZWxpZiBzZWxmLmJhY2t1cF90eXBlID09IEJBQ0tVUC5TRVJWRVI6CisgICAgICAgICAg ICByZXR1cm4gXygiQmFja2luZyB1cCB0aGUgc2VydmVyIikKKyAgICAgICAgZWxzZToKKyAgICAg ICAgICAgICMgSXQgc2hvdWxkIG5ldmVyIHJlYWNoIGhlcmUuCisgICAgICAgICAgICByZXR1cm4g IF8oIlVua25vd24gQmFja3VwIikKKwogICAgIEBwcm9wZXJ0eQogICAgIGRlZiBtZXNzYWdlKHNl bGYpOgogICAgICAgICBuYW1lLCBob3N0LCBwb3J0ID0gc2VsZi5nZXRfc2VydmVyX2RldGFpbHMo KQpAQCAtMTMyLDcgKzE0NCw3IEBAIGNsYXNzIEJhY2t1cE1lc3NhZ2UoSVByb2Nlc3NEZXNjKToK ICAgICAgICAgaWYgc2VsZi5iYWNrdXBfdHlwZSA9PSBCQUNLVVAuT0JKRUNUOgogICAgICAgICAg ICAgcmV0dXJuIF8oCiAgICAgICAgICAgICAgICAgIkJhY2tpbmcgdXAgYW4gb2JqZWN0IG9uIHRo ZSBzZXJ2ZXIgJ3swfScgIgotICAgICAgICAgICAgICAgICJmcm9tIGRhdGFiYXNlICd7MX0nLi4u IgorICAgICAgICAgICAgICAgICJmcm9tIGRhdGFiYXNlICd7MX0nIgogICAgICAgICAgICAgKS5m b3JtYXQoCiAgICAgICAgICAgICAgICAgInswfSAoezF9OnsyfSkiLmZvcm1hdCgKICAgICAgICAg ICAgICAgICAgICAgbmFtZSwgaG9zdCwgcG9ydApAQCAtMTQxLDEzICsxNTMsMTMgQEAgY2xhc3Mg QmFja3VwTWVzc2FnZShJUHJvY2Vzc0Rlc2MpOgogICAgICAgICAgICAgKQogICAgICAgICBpZiBz ZWxmLmJhY2t1cF90eXBlID09IEJBQ0tVUC5HTE9CQUxTOgogICAgICAgICAgICAgcmV0dXJuIF8o IkJhY2tpbmcgdXAgdGhlIGdsb2JhbCBvYmplY3RzIG9uICIKLSAgICAgICAgICAgICAgICAgICAg ICJ0aGUgc2VydmVyICd7MH0nLi4uIikuZm9ybWF0KAorICAgICAgICAgICAgICAgICAgICAgInRo ZSBzZXJ2ZXIgJ3swfSciKS5mb3JtYXQoCiAgICAgICAgICAgICAgICAgInswfSAoezF9OnsyfSki LmZvcm1hdCgKICAgICAgICAgICAgICAgICAgICAgbmFtZSwgaG9zdCwgcG9ydAogICAgICAgICAg ICAgICAgICkKICAgICAgICAgICAgICkKICAgICAgICAgZWxpZiBzZWxmLmJhY2t1cF90eXBlID09 IEJBQ0tVUC5TRVJWRVI6Ci0gICAgICAgICAgICByZXR1cm4gXygiQmFja2luZyB1cCB0aGUgc2Vy dmVyICd7MH0nLi4uIikuZm9ybWF0KAorICAgICAgICAgICAgcmV0dXJuIF8oIkJhY2tpbmcgdXAg dGhlIHNlcnZlciAnezB9JyIpLmZvcm1hdCgKICAgICAgICAgICAgICAgICAiezB9ICh7MX06ezJ9 KSIuZm9ybWF0KAogICAgICAgICAgICAgICAgICAgICBuYW1lLCBob3N0LCBwb3J0CiAgICAgICAg ICAgICAgICAgKQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdG9vbHMvZ3JhbnRfd2l6YXJkL3N0 YXRpYy9qcy9ncmFudF93aXphcmQuanMgYi93ZWIvcGdhZG1pbi90b29scy9ncmFudF93aXphcmQv c3RhdGljL2pzL2dyYW50X3dpemFyZC5qcwppbmRleCA1MjgwNmJiZi4uNTJlZTUwMTEgMTAwNjQ0 Ci0tLSBhL3dlYi9wZ2FkbWluL3Rvb2xzL2dyYW50X3dpemFyZC9zdGF0aWMvanMvZ3JhbnRfd2l6 YXJkLmpzCisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL2dyYW50X3dpemFyZC9zdGF0aWMvanMvZ3Jh bnRfd2l6YXJkLmpzCkBAIC0yMTgsMTQgKzIxOCw2IEBAIGRlZmluZShbCiAgICAgICAgICAgICAg ICAgfSwKICAgICAgICAgICAgICAgfTsKICAgICAgICAgICAgIH0sCi0gICAgICAgICAgICBob29r czogewotICAgICAgICAgICAgICBvbnNob3c6IGZ1bmN0aW9uKCkgewotCi0gICAgICAgICAgICAg ICAgLy8gQWRkIHBnYWRtaW5fZ3JhbnRfd2l6YXJkX2JvZHkgY2xhc3MgdG8gZGlhbG9nCi0gICAg ICAgICAgICAgICAgJCh0aGlzLmVsZW1lbnRzLmJvZHkpLmFkZENsYXNzKCdwZ2FkbWluX2dyYW50 X3dpemFyZF9ib2R5Jyk7Ci0gICAgICAgICAgICAgIH0sCi0gICAgICAgICAgICB9LAotCiAgICAg ICAgICAgICAvKioKICAgICAgICAgICAgICAgUmV0dXJucyBhIFBhZ2luYXRvciBDbGFzcyBPYmpl Y3Qgd2hpY2ggaXMgYWdhaW4gdG8gYmUgcmVuZGVyZWQKIApAQCAtNDA5LDYgKzQwMSw3IEBAIGRl ZmluZShbCiAgICAgICAgICAgICAqLwogICAgICAgICAgICAgYnVpbGQ6IGZ1bmN0aW9uKCkgewog ICAgICAgICAgICAgICB0aGlzLmVsZW1lbnRzLmNvbnRlbnQuYXBwZW5kQ2hpbGQoJGNvbnRhaW5l ci5nZXQoMCkpOworICAgICAgICAgICAgICAkKHRoaXMuZWxlbWVudHMuYm9keSkuYWRkQ2xhc3Mo J3BnYWRtaW4td2l6YXJkLWJvZHknKTsKICAgICAgICAgICAgICAgQWxlcnRpZnkucGdEaWFsb2dC dWlsZC5hcHBseSh0aGlzKTsKICAgICAgICAgICAgIH0sCiAKZGlmZiAtLWdpdCBhL3dlYi9wZ2Fk bWluL3Rvb2xzL2ltcG9ydF9leHBvcnQvX19pbml0X18ucHkgYi93ZWIvcGdhZG1pbi90b29scy9p bXBvcnRfZXhwb3J0L19faW5pdF9fLnB5CmluZGV4IDNhODc0NjYwLi40ZTliMmQwYSAxMDA2NDQK LS0tIGEvd2ViL3BnYWRtaW4vdG9vbHMvaW1wb3J0X2V4cG9ydC9fX2luaXRfXy5weQorKysgYi93 ZWIvcGdhZG1pbi90b29scy9pbXBvcnRfZXhwb3J0L19faW5pdF9fLnB5CkBAIC0xMTQsMTEgKzEx NCwxNSBAQCBjbGFzcyBJRU1lc3NhZ2UoSVByb2Nlc3NEZXNjKToKIAogICAgICAgICByZXR1cm4g XygKICAgICAgICAgICAgICJDb3B5aW5nIHRhYmxlIGRhdGEgJ3swfS57MX0nIG9uIGRhdGFiYXNl ICd7Mn0nICIKLSAgICAgICAgICAgICJhbmQgc2VydmVyICh7M306ezR9KS4uLiIKKyAgICAgICAg ICAgICJhbmQgc2VydmVyICh7M306ezR9KSIKICAgICAgICAgKS5mb3JtYXQoCiAgICAgICAgICAg ICBzZWxmLnNjaGVtYSwgc2VsZi50YWJsZSwgc2VsZi5kYXRhYmFzZSwgcy5ob3N0LCBzLnBvcnQK ICAgICAgICAgKQogCisgICAgQHByb3BlcnR5CisgICAgZGVmIHR5cGVfZGVzYyhzZWxmKToKKyAg ICAgICAgcmV0dXJuIF8oIkNvcHlpbmcgdGFibGUgZGF0YSIpCisKICAgICBkZWYgZGV0YWlscyhz ZWxmLCBjbWQsIGFyZ3MpOgogICAgICAgICAjIEZldGNoIHRoZSBzZXJ2ZXIgZGV0YWlscyBsaWtl IGhvc3RuYW1lLCBwb3J0LCByb2xlcyBldGMKICAgICAgICAgcyA9IFNlcnZlci5xdWVyeS5maWx0 ZXJfYnkoCkBAIC0xMjgsNyArMTMyLDcgQEAgY2xhc3MgSUVNZXNzYWdlKElQcm9jZXNzRGVzYyk6 CiAgICAgICAgIHJlcyA9ICc8ZGl2PicKICAgICAgICAgcmVzICs9IF8oCiAgICAgICAgICAgICAi Q29weWluZyB0YWJsZSBkYXRhICd7MH0uezF9JyBvbiBkYXRhYmFzZSAnezJ9JyAiCi0gICAgICAg ICAgICAiZm9yIHRoZSBzZXJ2ZXIgJ3szfScuLi4iCisgICAgICAgICAgICAiZm9yIHRoZSBzZXJ2 ZXIgJ3szfSciCiAgICAgICAgICkuZm9ybWF0KAogICAgICAgICAgICAgaHRtbC5zYWZlX3N0cihz ZWxmLnNjaGVtYSksCiAgICAgICAgICAgICBodG1sLnNhZmVfc3RyKHNlbGYudGFibGUpLApAQCAt MTQwLDExICsxNDQsMTEgQEAgY2xhc3MgSUVNZXNzYWdlKElQcm9jZXNzRGVzYyk6CiAgICAgICAg ICAgICApCiAgICAgICAgICkKIAotICAgICAgICByZXMgKz0gJzwvZGl2PjxkaXY+JworICAgICAg ICByZXMgKz0gJzwvZGl2PjxkaXYgY2xhc3M9InB5LTEiPicKICAgICAgICAgcmVzICs9IF8oIlJ1 bm5pbmcgY29tbWFuZDoiKQotICAgICAgICByZXMgKz0gJzwvYj48YnI+PHNwYW4gY2xhc3M9InBn LWJnLWNtZCBlbmFibGUtc2VsZWN0aW9uIj4nCisgICAgICAgIHJlcyArPSAnPGRpdiBjbGFzcz0i cGctYmctY21kIGVuYWJsZS1zZWxlY3Rpb24gcC0xIj4nCiAgICAgICAgIHJlcyArPSBodG1sLnNh ZmVfc3RyKHNlbGYuX2NtZCkKLSAgICAgICAgcmVzICs9ICc8L3NwYW4+PC9kaXY+JworICAgICAg ICByZXMgKz0gJzwvZGl2PjwvZGl2PicKIAogICAgICAgICByZXR1cm4gcmVzCiAKZGlmZiAtLWdp dCBhL3dlYi9wZ2FkbWluL3Rvb2xzL21haW50ZW5hbmNlL19faW5pdF9fLnB5IGIvd2ViL3BnYWRt aW4vdG9vbHMvbWFpbnRlbmFuY2UvX19pbml0X18ucHkKaW5kZXggNmFlMDE1OWUuLjVkMzYyZjll IDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi90b29scy9tYWludGVuYW5jZS9fX2luaXRfXy5weQor KysgYi93ZWIvcGdhZG1pbi90b29scy9tYWludGVuYW5jZS9fX2luaXRfXy5weQpAQCAtOTMsNiAr OTMsMTAgQEAgY2xhc3MgTWVzc2FnZShJUHJvY2Vzc0Rlc2MpOgogICAgICAgICBpZiBzZWxmLmRh dGFbJ29wJ10gPT0gIkNMVVNURVIiOgogICAgICAgICAgICAgcmV0dXJuIHJlcy5mb3JtYXQoXygn Q2x1c3RlcicpKQogCisgICAgQHByb3BlcnR5CisgICAgZGVmIHR5cGVfZGVzYyhzZWxmKToKKyAg ICAgICAgcmV0dXJuIF8oIk1haW50ZW5hbmNlIikKKwogICAgIGRlZiBkZXRhaWxzKHNlbGYsIGNt ZCwgYXJncyk6CiAKICAgICAgICAgcmVzID0gTm9uZQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4v dG9vbHMvc3FsZWRpdG9yL3N0YXRpYy9jc3Mvc3FsZWRpdG9yLmNzcyBiL3dlYi9wZ2FkbWluL3Rv b2xzL3NxbGVkaXRvci9zdGF0aWMvY3NzL3NxbGVkaXRvci5jc3MKaW5kZXggOTFjNTE1ZjQuLjMz N2M2NTgyIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi90b29scy9zcWxlZGl0b3Ivc3RhdGljL2Nz cy9zcWxlZGl0b3IuY3NzCisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9zdGF0aWMv Y3NzL3NxbGVkaXRvci5jc3MKQEAgLTE0LDEwICsxNCw2IEBACiAgIGJvdHRvbTogMDsKIH0KIAot I2VkaXRvci1wYW5lbCB7Ci0gIHotaW5kZXg6IDA7Ci19Ci0KIC5zcWwtZWRpdG9yLWdyaWQtY29u dGFpbmVyIHsKICAgaGVpZ2h0OiAxMDAlOwogICBvdmVyZmxvdzogYXV0bzsKQEAgLTU1LDEyICs1 MSw2IEBACiAgIG1heC13aWR0aDogMzVweCAhaW1wb3J0YW50OwogICBtaW4td2lkdGg6IDM1cHgg IWltcG9ydGFudDsKIH0KLQotLnNxbC1lZGl0b3ItaGlzdG9yeS1jb250YWluZXIgewotICBoZWln aHQ6IDEwMCU7Ci0gIG92ZXJmbG93OiBhdXRvOwotfQotCiAuc3FsLXN0YXR1cy1jZWxsIHsKICAg bWF4LXdpZHRoOiAzMHB4OwogfQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdG9vbHMvc3FsZWRp dG9yL3N0YXRpYy9qcy9zcWxlZGl0b3IuanMgYi93ZWIvcGdhZG1pbi90b29scy9zcWxlZGl0b3Iv c3RhdGljL2pzL3NxbGVkaXRvci5qcwppbmRleCA3ZmYzZGMwYi4uNjMyNzhkZjMgMTAwNjQ0Ci0t LSBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9zdGF0aWMvanMvc3FsZWRpdG9yLmpzCisr KyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9zdGF0aWMvanMvc3FsZWRpdG9yLmpzCkBA IC0xODUsNyArMTg1LDcgQEAgZGVmaW5lKCd0b29scy5xdWVyeXRvb2wnLCBbCiAgICAgICAgIG5h bWU6ICdzcWxfcGFuZWwnLAogICAgICAgICB0aXRsZTogZ2V0dGV4dCgnUXVlcnkgRWRpdG9yJyks CiAgICAgICAgIHdpZHRoOiAnMTAwJScsCi0gICAgICAgIGhlaWdodDogJzIwJScsCisgICAgICAg IGhlaWdodDogJzUwJScsCiAgICAgICAgIGlzQ2xvc2VhYmxlOiBmYWxzZSwKICAgICAgICAgaXNQ cml2YXRlOiB0cnVlLAogICAgICAgfSk7CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi90b29scy9z cWxlZGl0b3Ivc3RhdGljL3Njc3MvX2hpc3Rvcnkuc2NzcyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3Nx bGVkaXRvci9zdGF0aWMvc2Nzcy9faGlzdG9yeS5zY3NzCmluZGV4IDAxZGQwYzE4Li4wMzAyNGYw MyAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vdG9vbHMvc3FsZWRpdG9yL3N0YXRpYy9zY3NzL19o aXN0b3J5LnNjc3MKKysrIGIvd2ViL3BnYWRtaW4vdG9vbHMvc3FsZWRpdG9yL3N0YXRpYy9zY3Nz L19oaXN0b3J5LnNjc3MKQEAgLTIsNiArMiw3IEBACiAgIGhlaWdodDogMTAwJTsKICAgLmxpc3Qt aXRlbSB7CiAgICAgYm9yZGVyLWJvdHRvbTogJHBhbmVsLWJvcmRlcjsKKyAgICBiYWNrZ3JvdW5k LWNvbG9yOiAkY29sb3ItYmctdGhlbWU7CiAgIH0KIAogICAuZW50cnkgewpAQCAtNzYsMTEgKzc3 LDE5IEBACiAgIGRpc3BsYXk6IGJsb2NrOwogfQogCisKKy5zcWwtZWRpdG9yLWhpc3RvcnktY29u dGFpbmVyIHsKKyAgaGVpZ2h0OiAxMDAlOworICBvdmVyZmxvdzogYXV0bzsKKyAgYmFja2dyb3Vu ZC1jb2xvcjogJG5lZ2F0aXZlLWJnOworfQorCisKIC5xdWVyeS1kZXRhaWwgewogICB3aWR0aDog MTAwJTsKICAgZGlzcGxheTogZmxleDsKICAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjsKLQorICBi YWNrZ3JvdW5kLWNvbG9yOiAkY29sb3ItYmctdGhlbWU7CiAgIC5lcnJvci1tZXNzYWdlLWJsb2Nr IHsKICAgICBiYWNrZ3JvdW5kOiAkc3FsLWhpc3RvcnktZXJyb3ItYmc7CiAgICAgZmxleDogMC4z OwpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdG9vbHMvc3FsZWRpdG9yL3N0YXRpYy9zY3NzL19z cWxlZGl0b3Iuc2NzcyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9zdGF0aWMvc2Nzcy9f c3FsZWRpdG9yLnNjc3MKaW5kZXggYTFjYWMwNGQuLmQwMTdlNjY3IDEwMDY0NAotLS0gYS93ZWIv cGdhZG1pbi90b29scy9zcWxlZGl0b3Ivc3RhdGljL3Njc3MvX3NxbGVkaXRvci5zY3NzCisrKyBi L3dlYi9wZ2FkbWluL3Rvb2xzL3NxbGVkaXRvci9zdGF0aWMvc2Nzcy9fc3FsZWRpdG9yLnNjc3MK QEAgLTE4LDYgKzE4LDE0IEBACiAgIHotaW5kZXg6IDA7CiB9CiAKKworLmVkaXRvci10aXRsZSB7 CisgIHBhZGRpbmc6ICRzcWwtdGl0bGUtcGFkZGluZzsKKyAgYmFja2dyb3VuZDogJHNxbC10aXRs ZS1iZzsKKyAgY29sb3I6ICRzcWwtdGl0bGUtZmc7Cit9CisKKwogI2VkaXRvci1wYW5lbCB7CiAg IHotaW5kZXg6IDA7CiAgIHBvc2l0aW9uOiBhYnNvbHV0ZTsKQEAgLTIwOSw2ICsyMTcsNyBAQCBs aS5Db2RlTWlycm9yLWhpbnQtYWN0aXZlIHsKIC8qIGNvbG9yIHRoZSBmaXJzdCBjb2x1bW4gKi8K ICNkYXRhZ3JpZCAuc2xpY2stcm93IC5zbGljay1jZWxsLmwwLnIwLnNlbGVjdGVkIHsKICAgYmFj a2dyb3VuZC1jb2xvcjogJGNvbG9yLXByaW1hcnk7CisgIGNvbG9yOiAkY29sb3ItcHJpbWFyeS1m ZzsKIH0KIAogI2RhdGFncmlkIC5zbGljay1yb3cgPiAuc2xpY2stY2VsbDpub3QoLmwwKTpub3Qo LnIwKS5zZWxlY3RlZCB7CkBAIC0yMzMsMTIgKzI0Miw2IEBAIGxpLkNvZGVNaXJyb3ItaGludC1h Y3RpdmUgewogICBib3gtc2hhZG93OiAkZHJvcGRvd24tYm94LXNoYWRvdzsKIH0KIAotLmVkaXRv ci10aXRsZSB7Ci0gIHBhZGRpbmc6ICRzcWwtdGl0bGUtcGFkZGluZzsKLSAgYmFja2dyb3VuZDog JHNxbC10aXRsZS1iZzsKLSAgY29sb3I6ICRzcWwtdGl0bGUtZmc7Ci19Ci0KIC5wZ190ZXh0X2Vk aXRvciB0ZXh0YXJlYSB7CiAgIHJlc2l6ZTogYm90aDsKIH0KZGlmZiAtLWdpdCBhL3dlYi9yZWdy ZXNzaW9uL2phdmFzY3JpcHQvaGlzdG9yeS9xdWVyeV9oaXN0b3J5X3NwZWMuanN4IGIvd2ViL3Jl Z3Jlc3Npb24vamF2YXNjcmlwdC9oaXN0b3J5L3F1ZXJ5X2hpc3Rvcnlfc3BlYy5qc3gKaW5kZXgg MGIxNzlmNGYuLjdkZWYyZTQzIDEwMDY0NAotLS0gYS93ZWIvcmVncmVzc2lvbi9qYXZhc2NyaXB0 L2hpc3RvcnkvcXVlcnlfaGlzdG9yeV9zcGVjLmpzeAorKysgYi93ZWIvcmVncmVzc2lvbi9qYXZh c2NyaXB0L2hpc3RvcnkvcXVlcnlfaGlzdG9yeV9zcGVjLmpzeApAQCAtNjEsNyArNjEsNyBAQCBk ZXNjcmliZSgnUXVlcnlIaXN0b3J5JywgKCkgPT4gewogCiAgICAgaXQoJ25vdGhpbmcgaXMgZGlz cGxheWVkIGluIHRoZSBoaXN0b3J5IGRldGFpbHMgcGFuZWwnLCAoZG9uZSkgPT4gewogICAgICAg bGV0IGZvdW5kQ2hpbGRyZW4gPSBoaXN0b3J5V3JhcHBlci5maW5kKFF1ZXJ5SGlzdG9yeURldGFp bCk7Ci0gICAgICBleHBlY3QoZm91bmRDaGlsZHJlbi5sZW5ndGgpLnRvQmUoMSk7CisgICAgICBl eHBlY3QoZm91bmRDaGlsZHJlbi5sZW5ndGgpLnRvQmUoMCk7CiAgICAgICBkb25lKCk7CiAgICAg fSk7CiAgIH0pOwpkaWZmIC0tZ2l0IGEvd2ViL3JlZ3Jlc3Npb24vamF2YXNjcmlwdC90cmVlL3Ry ZWVfZmFrZS5qcyBiL3dlYi9yZWdyZXNzaW9uL2phdmFzY3JpcHQvdHJlZS90cmVlX2Zha2UuanMK aW5kZXggZmM5NGQzZjEuLjQzN2Q1Mzc4IDEwMDY0NAotLS0gYS93ZWIvcmVncmVzc2lvbi9qYXZh c2NyaXB0L3RyZWUvdHJlZV9mYWtlLmpzCisrKyBiL3dlYi9yZWdyZXNzaW9uL2phdmFzY3JpcHQv dHJlZS90cmVlX2Zha2UuanMKQEAgLTQzLDYgKzQzLDEwIEBAIGV4cG9ydCBjbGFzcyBUcmVlRmFr ZSBleHRlbmRzIFRyZWUgewogICAgICAgWydBQ0lUcmVlQXBpJ10sIFsnc2V0SW5vZGUnLCAndW5s b2FkJywgJ2Rlc2VsZWN0JywgJ3NlbGVjdCddKTsKICAgfQogCisgIGJpbmRDbGlja0V2ZW50cyhk b21Ob2RlKSB7CisgICAgcmV0dXJuIGRvbU5vZGU7CisgIH0KKwogICBhZGROZXdOb2RlKGlkLCBk YXRhLCBkb21Ob2RlLCBwYXRoKSB7CiAgICAgdGhpcy5hY2lUcmVlVG9PdXJUcmVlVHJhbnNsYXRv cltpZF0gPSBbaWRdOwogICAgIGlmIChwYXRoICE9PSBudWxsICYmIHBhdGggIT09IHVuZGVmaW5l ZCkgewpkaWZmIC0tZ2l0IGEvd2ViL3JlZ3Jlc3Npb24vamF2YXNjcmlwdC90cmVlL3RyZWVfc3Bl Yy5qcyBiL3dlYi9yZWdyZXNzaW9uL2phdmFzY3JpcHQvdHJlZS90cmVlX3NwZWMuanMKaW5kZXgg NTMxNTI1YTYuLjIxNTkzODI0IDEwMDY0NAotLS0gYS93ZWIvcmVncmVzc2lvbi9qYXZhc2NyaXB0 L3RyZWUvdHJlZV9zcGVjLmpzCisrKyBiL3dlYi9yZWdyZXNzaW9uL2phdmFzY3JpcHQvdHJlZS90 cmVlX3NwZWMuanMKQEAgLTE2LDYgKzE2LDcgQEAgY29uc3QgdHJlZVRlc3RzID0gKHRyZWVDbGFz cywgc2V0RGVmYXVsdENhbGxCYWNrKSA9PiB7CiAgIGxldCB0cmVlOwogICBiZWZvcmVFYWNoKCgp ID0+IHsKICAgICB0cmVlID0gbmV3IHRyZWVDbGFzcygpOworICAgIHNweU9uKHRyZWUsICdiaW5k Q2xpY2tFdmVudHMnKTsKICAgfSk7CiAKICAgZGVzY3JpYmUoJyNhZGROZXdOb2RlJywgKCkgPT4g ewo= --000000000000687b92057f644414--