Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bQVJg-0001rn-IS for pgadmin-hackers@arkaria.postgresql.org; Fri, 22 Jul 2016 07:56:16 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1bQVJe-0002ya-UD for pgadmin-hackers@arkaria.postgresql.org; Fri, 22 Jul 2016 07:56:14 +0000 Received: from makus.postgresql.org ([2001:4800:1501:1::229]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA384:256) (Exim 4.84_2) (envelope-from ) id 1bQVJc-0002yM-3q for pgadmin-hackers@postgresql.org; Fri, 22 Jul 2016 07:56:12 +0000 Received: from mail-oi0-x22b.google.com ([2607:f8b0:4003:c06::22b]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1bQVJX-0004Yj-Mr for pgadmin-hackers@postgresql.org; Fri, 22 Jul 2016 07:56:10 +0000 Received: by mail-oi0-x22b.google.com with SMTP id j185so152398819oih.0 for ; Fri, 22 Jul 2016 00:56:07 -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:from:date:message-id:subject:to :cc; bh=ASIFsN2IThhSyf2JNtJhJwFv4BmZC5OELatlZvLEjKo=; b=AfzsW3U8ner69gyRN91JFj+ry2Y2yg6T2+/G7orv/vR6el0y3nAyIf56m/Pqp/t+IN MiN6sqCKI7vcF9wTM20bl4WeykfUrSn/hwqKfQQHBXmebKJ1/I7eTPrlBjnhpfENesvm 5o+X7jaS+/PPT4Bc1Dv38brX+BtVwPiGNkjnNkm9x7MKkAazazv3Ou565I2Kk1+9zF8u v3ES7QstGQY1ANUoz6dOpekCtDcogpLsXtc5aNcEJjQ6TpdWz0MYrABH19KQzwnu4IR0 T1aDbljpmIv5GM6fTdFYsvyOs2zKHhRCn/2PiEWo+9DWki56JuNjRlBtS+GnjK9YJpu/ 8s5Q== 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:from:date :message-id:subject:to:cc; bh=ASIFsN2IThhSyf2JNtJhJwFv4BmZC5OELatlZvLEjKo=; b=AniUrAKGa5MEqp/Z/ckxwQHfx4prVL6s9tSZk3ufpaBOXgbn1369kSuCOcXfD+Kgfx wl+XXYaA4GKDSH0VA5z8vmQR97q1IOGzQxRNWXS3w+zKmm5s3EgISdC2747YwHhN2x+9 2TZnOHvEGbKy1cRdBH9zZyqGtKLGGiKf7eC415hRCDpX4deX0AJZIo2JQKWK3zdFdNww lA/rcF8tdsQk4TEv7bGq3YWQlf4CPcV4MiNE+qlBNrtMhBULDx+732Th+nKc0lS39tHM j1HH3wxBlyGwPFXXTXxzMzVgjPH7R70fTlJekFZWeFM/yoOf4PMI4D1V17/0HRkhPs4k R6EA== X-Gm-Message-State: AEkoouv9yxwxJXjWLVuFDHpyuhH1MqFQ9hhSHUfTHr5Cf0AsbxwHjU9IO2TQMt1b/MTXwSS1YW3numWfOt0H7Jow X-Received: by 10.202.64.138 with SMTP id n132mr1319280oia.2.1469174166975; Fri, 22 Jul 2016 00:56:06 -0700 (PDT) MIME-Version: 1.0 Received: by 10.157.5.99 with HTTP; Fri, 22 Jul 2016 00:56:06 -0700 (PDT) In-Reply-To: References: From: Harshal Dhumal Date: Fri, 22 Jul 2016 13:26:06 +0530 Message-ID: Subject: Re: Re: [pgAdmin4][Patch]: RM#1293 - SQL pane is not displaying GRANT queries in Function, Procedure and Trigger node To: Surinder Kumar Cc: pgadmin-hackers Content-Type: multipart/mixed; boundary=001a113ddd7a562a51053834c439 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 --001a113ddd7a562a51053834c439 Content-Type: multipart/alternative; boundary=001a113ddd7a562a4a053834c437 --001a113ddd7a562a4a053834c437 Content-Type: text/plain; charset=UTF-8 Hi, PFA rebased patch for RM1293 and RM1294. -- *Harshal Dhumal* *Software Engineer* EnterpriseDB India: http://www.enterprisedb.com The Enterprise PostgreSQL Company On Mon, Jun 6, 2016 at 7:17 PM, Surinder Kumar < surinder.kumar@enterprisedb.com> wrote: > Hi, > > Please find updated patch: > *Issue*: Code changes are not consistent with the present code in > functions/__init__.py, like don't rename variable func_def to > func_defintion until it is required. > Review comment given by Ashesh personally. > > Please review. > > On Fri, Jun 3, 2016 at 3:31 PM, Surinder Kumar < > surinder.kumar@enterprisedb.com> wrote: > >> Hi, >> >> Please find attached patch for: >> 1. RM#1293 - SQL pane is not displaying GRANT queries in functions node >> 2. RM#1294 - Comments are not visible in sql pane for trigger functions >> and functions >> >> Explanation: >> Previously we we using 'get_defintion.sql' template to generate SQL for >> SQL pane for functions, procedure & trigger functions node. >> but GRANT statements and COMMENTS changes were missing. In order to fix >> that, now we have used both 'create.sql' and 'get_definition.sql' templates >> to generate full SQL query >> for SQL pane. >> >> Please review. >> >> On Thu, Jun 2, 2016 at 7:32 PM, Surinder Kumar < >> surinder.kumar@enterprisedb.com> wrote: >> >>> Please ignore this patch. I will send another patch. >>> >>> On Thu, Jun 2, 2016 at 7:25 PM, Surinder Kumar < >>> surinder.kumar@enterprisedb.com> wrote: >>> >>>> Hi, >>>> >>>> Please find attached patch for RM#1293. >>>> Add support to display GRANT privilege query in SQL Pane. >>>> >>>> Please review. >>>> >>>> Thanks, >>>> Surinder Kumar >>>> >>> >>> >> > > > -- > Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org) > To make changes to your subscription: > http://www.postgresql.org/mailpref/pgadmin-hackers > > --001a113ddd7a562a4a053834c437 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi,

PFA rebased patch for RM1293 and RM1= 294.

--=C2=A0
Harshal Dhumal<= /b>
Software Engineer

EnterpriseDB India:=C2= =A0http://www.enterprisedb.comThe Enterprise PostgreSQL Company
<= /div>

On Mon, Jun 6, 2016 at 7:17 PM, Surinder Kum= ar <surinder.kumar@enterprisedb.com> wrote:
Hi,

Please find updated patch:
Issue: Code changes are not consis= tent with the present code in functions/__init__.py, like don't rename = variable func_def to func_defintion until it is required.
Review = comment given by Ashesh personally.

Please review.=

On Fri, Jun 3, 2016 at 3:31 PM, Surinder= Kumar <surinder.kumar@enterprisedb.com> wrote= :
Hi,

Please find attached patch for:
1. RM#1293 -=C2=A0SQL pane is no= t displaying GRANT queries in functions node
2. RM#1294 -=C2=A0Co= mments are not visible in sql pane for trigger functions and functions

Explanation:
Previously we we using 'get= _defintion.sql' template to generate SQL for SQL pane for functions, pr= ocedure & trigger functions node.
but GRANT statements and CO= MMENTS changes were missing. In order to fix that, now we have used both &#= 39;create.sql' and 'get_definition.sql' templates to generate f= ull SQL query
for SQL pane.

Please revie= w.

On Thu, Jun 2, 2016 at 7:32 PM, Surinder Kumar <= ;surin= der.kumar@enterprisedb.com> wrote:
Please ignore this patch. I will send another patc= h.

On Thu, Jun 2, 2016 at 7:25 PM, Surinder Kumar <surinder.ku= mar@enterprisedb.com> wrote:
Hi,

Please find attached patch for RM= #1293.
Add support to display GRANT privilege query in SQL Pane.<= /div>

Please review.

Thanks,
Surinder Kumar





--
Sent via pgadmin-hackers mailing list (pgadmin-hackers@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgadmin-hackers=


--001a113ddd7a562a4a053834c437-- --001a113ddd7a562a51053834c439 Content-Type: text/x-patch; charset=US-ASCII; name="fix_for_RM#1293_and_RM#1294_v2.patch" Content-Disposition: attachment; filename="fix_for_RM#1293_and_RM#1294_v2.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_iqxgcdk91 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vw cy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy9fX2luaXRf Xy5weSBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2 ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy9fX2luaXRfXy5weQpp bmRleCA3ZDVkMTI5Li43NWJhMDIyIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1p bi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2No ZW1hcy9mdW5jdGlvbnMvX19pbml0X18ucHkKKysrIGIvd2ViL3BnYWRtaW4v YnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVt YXMvZnVuY3Rpb25zL19faW5pdF9fLnB5CkBAIC04ODksMTAgKzg4OSwzMSBA QCBjbGFzcyBGdW5jdGlvblZpZXcoUEdDaGlsZE5vZGVWaWV3LCBEYXRhVHlw ZVJlYWRlcik6CiAgICAgICAgICAgICBzY2lkOiBTY2hlbWEgSWQKICAgICAg ICAgICAgIGZuaWQ6IEZ1bmN0aW9uIElkCiAgICAgICAgICIiIgorICAgICAg ICByZXNwX2RhdGEgPSBzZWxmLl9mZXRjaF9wcm9wZXJ0aWVzKGdpZCwgc2lk LCBkaWQsIHNjaWQsIGZuaWQpCisgICAgICAgICMgRmV0Y2ggdGhlIGZ1bmN0 aW9uIGRlZmluaXRpb24uCisgICAgICAgIGFyZ3MgPSAnJworICAgICAgICBj bnQgPSAxCisgICAgICAgIGlmICdhcmd1bWVudHMnIGluIHJlc3BfZGF0YToK KyAgICAgICAgICAgIGZvciBhIGluIHJlc3BfZGF0YVsnYXJndW1lbnRzJ106 CisgICAgICAgICAgICAgICAgaWYgKCgnYXJnbW9kZScgaW4gYSBhbmQgYVsn YXJnbW9kZSddICE9ICdPVVQnIGFuZAorICAgICAgICAgICAgICAgICAgICBh Wydhcmdtb2RlJ10gaXMgbm90IE5vbmUKKyAgICAgICAgICAgICAgICAgICAg ICApIG9yICdhcmdub2RlJyBub3QgaW4gYSk6CisgICAgICAgICAgICAgICAg ICAgIGlmICdhcmdtb2RlJyBpbiBhOgorICAgICAgICAgICAgICAgICAgICAg ICAgYXJncyArPSBhWydhcmdtb2RlJ10gKyAiICIKKyAgICAgICAgICAgICAg ICAgICAgaWYgJ2FyZ25hbWUnIGluIGEgYW5kIGFbJ2FyZ25hbWUnXSAhPSAn J1wKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbmQgYVsnYXJnbmFt ZSddIGlzIG5vdCBOb25lOgorICAgICAgICAgICAgICAgICAgICAgICAgYXJn cyArPSBzZWxmLnF0SWRlbnQoCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgc2VsZi5jb25uLCBhWydhcmduYW1lJ10pICsgIiAiCisgICAgICAgICAg ICAgICAgICAgIGlmICdhcmd0eXBlJyBpbiBhOgorICAgICAgICAgICAgICAg ICAgICAgICAgYXJncyArPSBhWydhcmd0eXBlJ10KKyAgICAgICAgICAgICAg ICAgICAgaWYgY250IDwgbGVuKHJlc3BfZGF0YVsnYXJndW1lbnRzJ10pOgor ICAgICAgICAgICAgICAgICAgICAgICAgYXJncyArPSAnLCAnCisgICAgICAg ICAgICAgICAgY250ICs9IDEKKworICAgICAgICByZXNwX2RhdGFbJ2Z1bmNf YXJncyddID0gYXJncy5zdHJpcCgnICcpCiAKICAgICAgICAgaWYgc2VsZi5u b2RlX3R5cGUgPT0gJ3Byb2NlZHVyZSc6CiAgICAgICAgICAgICBvYmplY3Rf dHlwZSA9ICdwcm9jZWR1cmUnCi0gICAgICAgICAgICByZXNwX2RhdGEgPSBz ZWxmLl9mZXRjaF9wcm9wZXJ0aWVzKGdpZCwgc2lkLCBkaWQsIHNjaWQsIGZu aWQpCiAKICAgICAgICAgICAgICMgR2V0IFNRTCB0byBjcmVhdGUgRnVuY3Rp b24KICAgICAgICAgICAgIHN0YXR1cywgZnVuY19kZWYgPSBzZWxmLl9nZXRf c3FsKGdpZCwgc2lkLCBkaWQsIHNjaWQsIHJlc3BfZGF0YSwKQEAgLTkwMSwx NiArOTIyLDM4IEBAIGNsYXNzIEZ1bmN0aW9uVmlldyhQR0NoaWxkTm9kZVZp ZXcsIERhdGFUeXBlUmVhZGVyKToKICAgICAgICAgICAgICAgICByZXR1cm4g aW50ZXJuYWxfc2VydmVyX2Vycm9yKGVycm9ybXNnPWZ1bmNfZGVmKQogCiAg ICAgICAgICAgICBuYW1lID0gcmVzcF9kYXRhWydwcm9uYW1lc3BhY2UnXSAr ICIuIiArIHJlc3BfZGF0YVsnbmFtZV93aXRoX2FyZ3MnXQorCisgICAgICAg ICAgICAjIENyZWF0ZSBtb2RlCisgICAgICAgICAgICBmdW5jX2RlZiA9IHJl bmRlcl90ZW1wbGF0ZSgiLyIuam9pbihbc2VsZi5zcWxfdGVtcGxhdGVfcGF0 aCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICdjcmVhdGUuc3FsJ10pLAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZGF0YT1yZXNwX2RhdGEsIHF1ZXJ5X3R5cGU9 ImNyZWF0ZSIpCiAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICBvYmplY3Rf dHlwZSA9ICdmdW5jdGlvbicKLSAgICAgICAgICAgICMgRmV0Y2ggdGhlIGZ1 bmN0aW9uIGRlZmluaXRpb24uCisKKyAgICAgICAgICAgICMgR2V0IFNjaGVt YSBOYW1lIGZyb20gaXRzIE9JRC4KKyAgICAgICAgICAgIGlmICdwcm9uYW1l c3BhY2UnIGluIHJlc3BfZGF0YToKKyAgICAgICAgICAgICAgICByZXNwX2Rh dGFbJ3Byb25hbWVzcGFjZSddID0gc2VsZi5fZ2V0X3NjaGVtYShyZXNwX2Rh dGFbCisgICAgICAgICAgICAgICAgICAgICdwcm9uYW1lc3BhY2UnXSkKKwor ICAgICAgICAgICAgIyBQYXJzZSBwcml2aWxlZ2UgZGF0YQorICAgICAgICAg ICAgaWYgJ2FjbCcgaW4gcmVzcF9kYXRhOgorICAgICAgICAgICAgICAgIHJl c3BfZGF0YVsnYWNsJ10gPSBwYXJzZV9wcml2X3RvX2RiKHJlc3BfZGF0YVsn YWNsJ10sIFsnWCddKQorCisgICAgICAgICAgICAjIENyZWF0ZSBtb2RlCiAg ICAgICAgICAgICBTUUwgPSByZW5kZXJfdGVtcGxhdGUoIi8iLmpvaW4oW3Nl bGYuc3FsX3RlbXBsYXRlX3BhdGgsCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICdnZXRfZGVmaW5pdGlvbi5zcWwnXSks IGZuaWQ9Zm5pZCwgc2NpZD1zY2lkKQorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAnZ2V0X2RlZmluaXRpb24uc3FsJ10K KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAp LCBkYXRhPXJlc3BfZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBmbmlkPWZuaWQsIHNjaWQ9c2NpZCkKKwogICAgICAgICAgICAg c3RhdHVzLCByZXMgPSBzZWxmLmNvbm4uZXhlY3V0ZV8yZGFycmF5KFNRTCkK ICAgICAgICAgICAgIGlmIG5vdCBzdGF0dXM6CiAgICAgICAgICAgICAgICAg cmV0dXJuIGludGVybmFsX3NlcnZlcl9lcnJvcihlcnJvcm1zZz1yZXMpCiAK ICAgICAgICAgICAgIGZ1bmNfZGVmLCBuYW1lID0gcmVzWydyb3dzJ11bMF0K KyAgICAgICAgICAgICMgQ3JlYXRlIG1vZGUKKyAgICAgICAgICAgIGZ1bmNf ZGVmID0gcmVuZGVyX3RlbXBsYXRlKCIvIi5qb2luKFtzZWxmLnNxbF90ZW1w bGF0ZV9wYXRoLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICdjcmVhdGUuc3FsJ10pLAorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YT1yZXNwX2RhdGEsIHF1 ZXJ5X3R5cGU9ImNyZWF0ZSIpCiAKICAgICAgICAgc3FsX2hlYWRlciA9ICIi Ii0tIHswfTogezF9CiAKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1 bmN0aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcGcvc3FsLzkuMV9wbHVzL2Ny ZWF0ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMv c2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVz L2Z1bmN0aW9uL3BnL3NxbC85LjFfcGx1cy9jcmVhdGUuc3FsCmluZGV4IDYy ZTYxZDMuLmVmZDc3NzUgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1 bmN0aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcGcvc3FsLzkuMV9wbHVzL2Ny ZWF0ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3Jv dXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBs YXRlcy9mdW5jdGlvbi9wZy9zcWwvOS4xX3BsdXMvY3JlYXRlLnNxbApAQCAt MywyMiArMywzMyBAQAogeyUgaW1wb3J0ICdtYWNyb3MvZnVuY3Rpb25zL3Zh cmlhYmxlLm1hY3JvcycgYXMgVkFSSUFCTEUgJX0KIHslIHNldCBpc19jb2x1 bW5zID0gW10gJX0KIHslIGlmIGRhdGEgJX0KLUNSRUFURSBGVU5DVElPTiB7 eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEubmFtZSkg fX0oeyUgaWYgZGF0YS5hcmdzICV9Ci17JSBmb3IgcCBpbiBkYXRhLmFyZ3Mg JX17JSBpZiBwLmFyZ21vZGUgJX17e3AuYXJnbW9kZX19IHslIGVuZGlmICV9 eyUgaWYgcC5hcmduYW1lICV9e3sgY29ubnxxdElkZW50KHAuYXJnbmFtZSl9 fSB7JSBlbmRpZiAlfXslIGlmIHAuYXJndHlwZSAlfXt7IGNvbm58cXRUeXBl SWRlbnQocC5hcmd0eXBlKSB9fXslIGVuZGlmICV9eyUgaWYgcC5hcmdkZWZ2 YWwgJX0gREVGQVVMVCB7e3AuYXJnZGVmdmFsfX17JSBlbmRpZiAlfQorQ1JF QVRFeyUgaWYgcXVlcnlfdHlwZSBpcyBkZWZpbmVkICV9e3snIE9SIFJFUExB Q0UnfX17JSBlbmRpZiAlfSBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0 YS5wcm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX0oeyUgaWYgZGF0YS5hcmdz ICV9Cit7JSBmb3IgcCBpbiBkYXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUg JX17e3AuYXJnbW9kZX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9 e3sgY29ubnxxdElkZW50KHAuYXJnbmFtZSl9fXslIGVuZGlmICV9eyUgaWYg cC5hcmd0eXBlICV9e3sgY29ubnxxdElkZW50KHAuYXJndHlwZSkgfX17JSBl bmRpZiAlfXslIGlmIHAuYXJnZGVmdmFsICV9IERFRkFVTFQge3twLmFyZ2Rl ZnZhbH19eyUgZW5kaWYgJX0KIHslIGlmIG5vdCBsb29wLmxhc3QgJX0seyUg ZW5kaWYgJX0KIHslIGVuZGZvciAlfQogeyUgZW5kaWYgLSV9Ci0gICAgKQot ICAgIFJFVFVSTlN7JSBpZiBkYXRhLnByb3JldHNldCAlfSBTRVRPRnslIGVu ZGlmICV9IHt7IGNvbm58cXRUeXBlSWRlbnQoZGF0YS5wcm9yZXR0eXBlbmFt ZSkgfX0KLSAgICBMQU5HVUFHRSB7eyBkYXRhLmxhbm5hbWV8cXRMaXRlcmFs IH19Ci0gICAgeyUgaWYgZGF0YS5wcm92b2xhdGlsZSAlfXt7IGRhdGEucHJv dm9sYXRpbGUgfX0geyUgZW5kaWYgJX17JSBpZiBkYXRhLnByb2lzc3RyaWN0 ICV9U1RSSUNUIHslIGVuZGlmICV9eyUgaWYgZGF0YS5wcm9zZWNkZWYgJX1T RUNVUklUWSBERUZJTkVSIHslIGVuZGlmICV9eyUgaWYgZGF0YS5wcm9pc3dp bmRvdyAlfVdJTkRPV3slIGVuZGlmIC0lfXslIGlmIGRhdGEucHJvY29zdCAl fQoreyUgaWYgZGF0YS5mdW5jX2FyZ3MgJX0KK3slIHNldCBmdW5jX2FyZ3Mg PSBkYXRhLmZ1bmNfYXJncy5zcGxpdCgnLCcpICV9CiAKLSAgICBDT1NUIHt7 ZGF0YS5wcm9jb3N0fX17JSBlbmRpZiAlfXslIGlmIGRhdGEucHJvcm93cyAl fQoreyUgZm9yIGYgaW4gZnVuY19hcmdzICV9CisgICAge3sgZnx0cmltIH19 eyUgaWYgbm90IGxvb3AubGFzdCAlfSwKK3slIGVuZGlmICV9Cit7JSBlbmRm b3IgJX0KIAoreyUgZW5kaWYgJX0KKykKKyAgICBSRVRVUk5TeyUgaWYgZGF0 YS5wcm9yZXRzZXQgJX0gU0VUT0Z7JSBlbmRpZiAlfSB7eyBjb25ufHF0VHlw ZUlkZW50KGRhdGEucHJvcmV0dHlwZW5hbWUpIH19CisgICAgTEFOR1VBR0Ug e3sgZGF0YS5sYW5uYW1lfHF0TGl0ZXJhbCB9fQoreyUgaWYgZGF0YS5wcm9j b3N0ICV9CisgICAgQ09TVCB7e2RhdGEucHJvY29zdH19Cit7JSBlbmRpZiAl fQoreyUgaWYgcXVlcnlfdHlwZSAhPSAnY3JlYXRlJyAlfQorICAgIHslIGlm IGRhdGEucHJvdm9sYXRpbGUgJX17eyBkYXRhLnByb3ZvbGF0aWxlIH19IHsl IGVuZGlmICV9eyUgaWYgZGF0YS5wcm9pc3N0cmljdCAlfVNUUklDVCB7JSBl bmRpZiAlfXslIGlmIGRhdGEucHJvc2VjZGVmICV9U0VDVVJJVFkgREVGSU5F UiB7JSBlbmRpZiAlfXslIGlmIGRhdGEucHJvaXN3aW5kb3cgJX1XSU5ET1d7 JSBlbmRpZiAtJX0KK3slIGlmIGRhdGEucHJvcm93cyAlfQogICAgIFJPV1Mg e3tkYXRhLnByb3Jvd3N9fXslIGVuZGlmIC0lfXslIGlmIGRhdGEudmFyaWFi bGVzICV9eyUgZm9yIHYgaW4gZGF0YS52YXJpYWJsZXMgJX0KIAogICAgIFNF VCB7eyBjb25ufHF0SWRlbnQodi5uYW1lKSB9fT17eyB2LnZhbHVlfHF0TGl0 ZXJhbCB9fXslIGVuZGZvciAlfQoteyUgZW5kaWYgJX0KK3slIGVuZGlmICV9 eyUgZW5kaWYgJX0KIAogQVMgeyUgaWYgZGF0YS5sYW5uYW1lID09ICdjJyAl fQoge3sgZGF0YS5wcm9iaW58cXRMaXRlcmFsIH19LCB7eyBkYXRhLnByb3Ny Y19jfHF0TGl0ZXJhbCB9fQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMv ZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5jdGlvbi9wZy9zcWwvOS4yX3BsdXMv Y3JlYXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vw cy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0 ZXMvZnVuY3Rpb24vcGcvc3FsLzkuMl9wbHVzL2NyZWF0ZS5zcWwKaW5kZXgg Njk3NmE3NS4uNjM1ODVhZCAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMv ZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5jdGlvbi9wZy9zcWwvOS4yX3BsdXMv Y3JlYXRlLnNxbAorKysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9n cm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVt cGxhdGVzL2Z1bmN0aW9uL3BnL3NxbC85LjJfcGx1cy9jcmVhdGUuc3FsCkBA IC0zLDI1ICszLDM3IEBACiB7JSBpbXBvcnQgJ21hY3Jvcy9mdW5jdGlvbnMv dmFyaWFibGUubWFjcm9zJyBhcyBWQVJJQUJMRSAlfQogeyUgc2V0IGlzX2Nv bHVtbnMgPSBbXSAlfQogeyUgaWYgZGF0YSAlfQotQ1JFQVRFIEZVTkNUSU9O IHt7IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1l KSB9fSh7JSBpZiBkYXRhLmFyZ3MgJX0KLXslIGZvciBwIGluIGRhdGEuYXJn cyAlfXslIGlmIHAuYXJnbW9kZSAlfXt7cC5hcmdtb2RlfX0geyUgZW5kaWYg JX17JSBpZiBwLmFyZ25hbWUgJX17eyBjb25ufHF0SWRlbnQocC5hcmduYW1l KX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmd0eXBlICV9e3sgY29ubnxxdFR5 cGVJZGVudChwLmFyZ3R5cGUpIH19eyUgZW5kaWYgJX17JSBpZiBwLmFyZ2Rl ZnZhbCAlfSBERUZBVUxUIHt7cC5hcmdkZWZ2YWx9fXslIGVuZGlmICV9CitD UkVBVEV7JSBpZiBxdWVyeV90eXBlIGlzIGRlZmluZWQgJX17eycgT1IgUkVQ TEFDRSd9fXslIGVuZGlmICV9IEZVTkNUSU9OIHt7IGNvbm58cXRJZGVudChk YXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9fSh7JSBpZiBkYXRhLmFy Z3MgJX0KK3slIGZvciBwIGluIGRhdGEuYXJncyAlfXslIGlmIHAuYXJnbW9k ZSAlfXt7cC5hcmdtb2RlfX0geyUgZW5kaWYgJX17JSBpZiBwLmFyZ25hbWUg JX17eyBjb25ufHF0SWRlbnQocC5hcmduYW1lKX19eyUgZW5kaWYgJX17JSBp ZiBwLmFyZ3R5cGUgJX17eyBjb25ufHF0SWRlbnQocC5hcmd0eXBlKSB9fXsl IGVuZGlmICV9eyUgaWYgcC5hcmdkZWZ2YWwgJX0gREVGQVVMVCB7e3AuYXJn ZGVmdmFsfX17JSBlbmRpZiAlfQogeyUgaWYgbm90IGxvb3AubGFzdCAlfSx7 JSBlbmRpZiAlfQogeyUgZW5kZm9yICV9CiB7JSBlbmRpZiAtJX0KLSAgICAp Cit7JSBpZiBkYXRhLmZ1bmNfYXJncyAlfQoreyUgc2V0IGZ1bmNfYXJncyA9 IGRhdGEuZnVuY19hcmdzLnNwbGl0KCcsJykgJX0KKworeyUgZm9yIGYgaW4g ZnVuY19hcmdzICV9CisgICAge3sgZnx0cmltIH19eyUgaWYgbm90IGxvb3Au bGFzdCAlfSwKK3slIGVuZGlmICV9Cit7JSBlbmRmb3IgJX0KKworeyUgZW5k aWYgJX0KKykKICAgICBSRVRVUk5TeyUgaWYgZGF0YS5wcm9yZXRzZXQgJX0g U0VUT0Z7JSBlbmRpZiAlfSB7eyBjb25ufHF0VHlwZUlkZW50KGRhdGEucHJv cmV0dHlwZW5hbWUpIH19CiAgICAgTEFOR1VBR0Uge3sgZGF0YS5sYW5uYW1l fHF0TGl0ZXJhbCB9fQoreyUgaWYgZGF0YS5wcm9jb3N0ICV9CisgICAgQ09T VCB7e2RhdGEucHJvY29zdH19Cit7JSBlbmRpZiAlfQoreyUgaWYgcXVlcnlf dHlwZSAhPSAnY3JlYXRlJyAlfQogICAgIHslIGlmIGRhdGEucHJvdm9sYXRp bGUgJX17eyBkYXRhLnByb3ZvbGF0aWxlIH19IHslIGVuZGlmICV9eyUgaWYg ZGF0YS5wcm9sZWFrcHJvb2YgJX1MRUFLUFJPT0YgeyUgZWxzZSAlfU5PVCBM RUFLUFJPT0YgeyUgZW5kaWYgJX0KIHslIGlmIGRhdGEucHJvaXNzdHJpY3Qg JX1TVFJJQ1QgeyUgZW5kaWYgJX0KIHslIGlmIGRhdGEucHJvc2VjZGVmICV9 U0VDVVJJVFkgREVGSU5FUiB7JSBlbmRpZiAlfQoteyUgaWYgZGF0YS5wcm9p c3dpbmRvdyAlfVdJTkRPV3slIGVuZGlmICV9eyUgaWYgZGF0YS5wcm9jb3N0 ICV9Ci0KLSAgICBDT1NUIHt7ZGF0YS5wcm9jb3N0fX17JSBlbmRpZiAlfXsl IGlmIGRhdGEucHJvcm93cyAlfQoreyUgaWYgZGF0YS5wcm9pc3dpbmRvdyAl fVdJTkRPV3slIGVuZGlmICV9Cit7JSBpZiBkYXRhLnByb3Jvd3MgJX0KIAog ICAgIFJPV1Mge3tkYXRhLnByb3Jvd3N9fXslIGVuZGlmIC0lfXslIGlmIGRh dGEudmFyaWFibGVzICV9eyUgZm9yIHYgaW4gZGF0YS52YXJpYWJsZXMgJX0K IAogICAgIFNFVCB7eyBjb25ufHF0SWRlbnQodi5uYW1lKSB9fT17eyB2LnZh bHVlfHF0TGl0ZXJhbCB9fXslIGVuZGZvciAlfQoteyUgZW5kaWYgJX0KK3sl IGVuZGlmICV9eyUgZW5kaWYgJX0KIAogQVMgeyUgaWYgZGF0YS5sYW5uYW1l ID09ICdjJyAlfQoge3sgZGF0YS5wcm9iaW58cXRMaXRlcmFsIH19LCB7eyBk YXRhLnByb3NyY19jfHF0TGl0ZXJhbCB9fQpkaWZmIC0tZ2l0IGEvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5jdGlvbi9wZy9zcWwv OS41X3BsdXMvY3JlYXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2Vy dmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9u cy90ZW1wbGF0ZXMvZnVuY3Rpb24vcGcvc3FsLzkuNV9wbHVzL2NyZWF0ZS5z cWwKaW5kZXggMTAyZGM3YS4uNDVhOWM2MSAxMDA2NDQKLS0tIGEvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5jdGlvbi9wZy9zcWwv OS41X3BsdXMvY3JlYXRlLnNxbAorKysgYi93ZWIvcGdhZG1pbi9icm93c2Vy L3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5j dGlvbnMvdGVtcGxhdGVzL2Z1bmN0aW9uL3BnL3NxbC85LjVfcGx1cy9jcmVh dGUuc3FsCkBAIC0zLDI2ICszLDM3IEBACiB7JSBpbXBvcnQgJ21hY3Jvcy9m dW5jdGlvbnMvdmFyaWFibGUubWFjcm9zJyBhcyBWQVJJQUJMRSAlfQogeyUg c2V0IGlzX2NvbHVtbnMgPSBbXSAlfQogeyUgaWYgZGF0YSAlfQotQ1JFQVRF IEZVTkNUSU9OIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwg ZGF0YS5uYW1lKSB9fSh7JSBpZiBkYXRhCi0uYXJncyAlfQorQ1JFQVRFeyUg aWYgcXVlcnlfdHlwZSBpcyBkZWZpbmVkICV9e3snIE9SIFJFUExBQ0UnfX17 JSBlbmRpZiAlfSBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9u YW1lc3BhY2UsIGRhdGEubmFtZSkgfX0oeyUgaWYgZGF0YS5hcmdzICV9CiB7 JSBmb3IgcCBpbiBkYXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUgJX17e3Au YXJnbW9kZX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9e3sgY29u bnxxdElkZW50KHAuYXJnbmFtZSkgfX0geyUgZW5kaWYgJX17JSBpZiBwLmFy Z3R5cGUgJX17eyBjb25ufHF0VHlwZUlkZW50KHAuYXJndHlwZSkgfX17JSBl bmRpZiAlfXslIGlmIHAuYXJnZGVmdmFsICV9IERFRkFVTFQge3twLmFyZ2Rl ZnZhbH19eyUgZW5kaWYgJX0KIHslIGlmIG5vdCBsb29wLmxhc3QgJX0seyUg ZW5kaWYgJX0KIHslIGVuZGZvciAlfQogeyUgZW5kaWYgLSV9Ci0gICAgKQor eyUgaWYgZGF0YS5mdW5jX2FyZ3MgJX0KK3slIHNldCBmdW5jX2FyZ3MgPSBk YXRhLmZ1bmNfYXJncy5zcGxpdCgnLCcpICV9CisKK3slIGZvciBmIGluIGZ1 bmNfYXJncyAlfQorICAgIHt7IGZ8dHJpbSB9fXslIGlmIG5vdCBsb29wLmxh c3QgJX0sCit7JSBlbmRpZiAlfQoreyUgZW5kZm9yICV9CisKK3slIGVuZGlm ICV9CispCiAgICAgUkVUVVJOU3slIGlmIGRhdGEucHJvcmV0c2V0ICV9IFNF VE9GeyUgZW5kaWYgJX0ge3sgY29ubnxxdFR5cGVJZGVudChkYXRhLnByb3Jl dHR5cGVuYW1lKSB9fQogICAgIExBTkdVQUdFIHt7IGRhdGEubGFubmFtZXxx dExpdGVyYWwgfX0KK3slIGlmIGRhdGEucHJvY29zdCAlfQorICAgIENPU1Qg e3tkYXRhLnByb2Nvc3R9fQoreyUgZW5kaWYgJX0KK3slIGlmIHF1ZXJ5X3R5 cGUgIT0gJ2NyZWF0ZScgJX0KICAgICB7JSBpZiBkYXRhLnByb3ZvbGF0aWxl ICV9e3sgZGF0YS5wcm92b2xhdGlsZSB9fSB7JSBlbmRpZiAlfXslIGlmIGRh dGEucHJvbGVha3Byb29mICV9TEVBS1BST09GIHslIGVsc2UgJX1OT1QgTEVB S1BST09GIHslIGVuZGlmICV9CiB7JSBpZiBkYXRhLnByb2lzc3RyaWN0ICV9 U1RSSUNUIHslIGVuZGlmICV9CiB7JSBpZiBkYXRhLnByb3NlY2RlZiAlfVNF Q1VSSVRZIERFRklORVIgeyUgZW5kaWYgJX0KLXslIGlmIGRhdGEucHJvaXN3 aW5kb3cgJX1XSU5ET1d7JSBlbmRpZiAlfXslIGlmIGRhdGEucHJvY29zdCAl fQotCi0gICAgQ09TVCB7e2RhdGEucHJvY29zdH19eyUgZW5kaWYgJX17JSBp ZiBkYXRhLnByb3Jvd3MgJX0KK3slIGlmIGRhdGEucHJvaXN3aW5kb3cgJX1X SU5ET1d7JSBlbmRpZiAlfQoreyUgaWYgZGF0YS5wcm9yb3dzICV9CiAKICAg ICBST1dTIHt7ZGF0YS5wcm9yb3dzfX17JSBlbmRpZiAtJX17JSBpZiBkYXRh LnZhcmlhYmxlcyAlfXslIGZvciB2IGluIGRhdGEudmFyaWFibGVzICV9CiAK ICAgICBTRVQge3sgY29ubnxxdElkZW50KHYubmFtZSkgfX09e3sgdi52YWx1 ZXxxdExpdGVyYWwgfX17JSBlbmRmb3IgJX0KLXslIGVuZGlmICV9Cit7JSBl bmRpZiAlfXslIGVuZGlmICV9CiAKIEFTIHslIGlmIGRhdGEubGFubmFtZSA9 PSAnYycgJX0KIHt7IGRhdGEucHJvYmlufHF0TGl0ZXJhbCB9fSwge3sgZGF0 YS5wcm9zcmNfY3xxdExpdGVyYWwgfX0KZGlmZiAtLWdpdCBhL3dlYi9wZ2Fk bWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9z Y2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcHBhcy9zcWwv OS4xX3BsdXMvY3JlYXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2Vy dmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9u cy90ZW1wbGF0ZXMvZnVuY3Rpb24vcHBhcy9zcWwvOS4xX3BsdXMvY3JlYXRl LnNxbAppbmRleCA2MmU2MWQzLi5lZmQ3Nzc1IDEwMDY0NAotLS0gYS93ZWIv cGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFz ZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL2Z1bmN0aW9uL3BwYXMv c3FsLzkuMV9wbHVzL2NyZWF0ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMv ZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5jdGlvbi9wcGFzL3NxbC85LjFfcGx1 cy9jcmVhdGUuc3FsCkBAIC0zLDIyICszLDMzIEBACiB7JSBpbXBvcnQgJ21h Y3Jvcy9mdW5jdGlvbnMvdmFyaWFibGUubWFjcm9zJyBhcyBWQVJJQUJMRSAl fQogeyUgc2V0IGlzX2NvbHVtbnMgPSBbXSAlfQogeyUgaWYgZGF0YSAlfQot Q1JFQVRFIEZVTkNUSU9OIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVz cGFjZSwgZGF0YS5uYW1lKSB9fSh7JSBpZiBkYXRhLmFyZ3MgJX0KLXslIGZv ciBwIGluIGRhdGEuYXJncyAlfXslIGlmIHAuYXJnbW9kZSAlfXt7cC5hcmdt b2RlfX0geyUgZW5kaWYgJX17JSBpZiBwLmFyZ25hbWUgJX17eyBjb25ufHF0 SWRlbnQocC5hcmduYW1lKX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmd0eXBl ICV9e3sgY29ubnxxdFR5cGVJZGVudChwLmFyZ3R5cGUpIH19eyUgZW5kaWYg JX17JSBpZiBwLmFyZ2RlZnZhbCAlfSBERUZBVUxUIHt7cC5hcmdkZWZ2YWx9 fXslIGVuZGlmICV9CitDUkVBVEV7JSBpZiBxdWVyeV90eXBlIGlzIGRlZmlu ZWQgJX17eycgT1IgUkVQTEFDRSd9fXslIGVuZGlmICV9IEZVTkNUSU9OIHt7 IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9 fSh7JSBpZiBkYXRhLmFyZ3MgJX0KK3slIGZvciBwIGluIGRhdGEuYXJncyAl fXslIGlmIHAuYXJnbW9kZSAlfXt7cC5hcmdtb2RlfX0geyUgZW5kaWYgJX17 JSBpZiBwLmFyZ25hbWUgJX17eyBjb25ufHF0SWRlbnQocC5hcmduYW1lKX19 eyUgZW5kaWYgJX17JSBpZiBwLmFyZ3R5cGUgJX17eyBjb25ufHF0SWRlbnQo cC5hcmd0eXBlKSB9fXslIGVuZGlmICV9eyUgaWYgcC5hcmdkZWZ2YWwgJX0g REVGQVVMVCB7e3AuYXJnZGVmdmFsfX17JSBlbmRpZiAlfQogeyUgaWYgbm90 IGxvb3AubGFzdCAlfSx7JSBlbmRpZiAlfQogeyUgZW5kZm9yICV9CiB7JSBl bmRpZiAtJX0KLSAgICApCi0gICAgUkVUVVJOU3slIGlmIGRhdGEucHJvcmV0 c2V0ICV9IFNFVE9GeyUgZW5kaWYgJX0ge3sgY29ubnxxdFR5cGVJZGVudChk YXRhLnByb3JldHR5cGVuYW1lKSB9fQotICAgIExBTkdVQUdFIHt7IGRhdGEu bGFubmFtZXxxdExpdGVyYWwgfX0KLSAgICB7JSBpZiBkYXRhLnByb3ZvbGF0 aWxlICV9e3sgZGF0YS5wcm92b2xhdGlsZSB9fSB7JSBlbmRpZiAlfXslIGlm IGRhdGEucHJvaXNzdHJpY3QgJX1TVFJJQ1QgeyUgZW5kaWYgJX17JSBpZiBk YXRhLnByb3NlY2RlZiAlfVNFQ1VSSVRZIERFRklORVIgeyUgZW5kaWYgJX17 JSBpZiBkYXRhLnByb2lzd2luZG93ICV9V0lORE9XeyUgZW5kaWYgLSV9eyUg aWYgZGF0YS5wcm9jb3N0ICV9Cit7JSBpZiBkYXRhLmZ1bmNfYXJncyAlfQor eyUgc2V0IGZ1bmNfYXJncyA9IGRhdGEuZnVuY19hcmdzLnNwbGl0KCcsJykg JX0KIAotICAgIENPU1Qge3tkYXRhLnByb2Nvc3R9fXslIGVuZGlmICV9eyUg aWYgZGF0YS5wcm9yb3dzICV9Cit7JSBmb3IgZiBpbiBmdW5jX2FyZ3MgJX0K KyAgICB7eyBmfHRyaW0gfX17JSBpZiBub3QgbG9vcC5sYXN0ICV9LAoreyUg ZW5kaWYgJX0KK3slIGVuZGZvciAlfQogCit7JSBlbmRpZiAlfQorKQorICAg IFJFVFVSTlN7JSBpZiBkYXRhLnByb3JldHNldCAlfSBTRVRPRnslIGVuZGlm ICV9IHt7IGNvbm58cXRUeXBlSWRlbnQoZGF0YS5wcm9yZXR0eXBlbmFtZSkg fX0KKyAgICBMQU5HVUFHRSB7eyBkYXRhLmxhbm5hbWV8cXRMaXRlcmFsIH19 Cit7JSBpZiBkYXRhLnByb2Nvc3QgJX0KKyAgICBDT1NUIHt7ZGF0YS5wcm9j b3N0fX0KK3slIGVuZGlmICV9Cit7JSBpZiBxdWVyeV90eXBlICE9ICdjcmVh dGUnICV9CisgICAgeyUgaWYgZGF0YS5wcm92b2xhdGlsZSAlfXt7IGRhdGEu cHJvdm9sYXRpbGUgfX0geyUgZW5kaWYgJX17JSBpZiBkYXRhLnByb2lzc3Ry aWN0ICV9U1RSSUNUIHslIGVuZGlmICV9eyUgaWYgZGF0YS5wcm9zZWNkZWYg JX1TRUNVUklUWSBERUZJTkVSIHslIGVuZGlmICV9eyUgaWYgZGF0YS5wcm9p c3dpbmRvdyAlfVdJTkRPV3slIGVuZGlmIC0lfQoreyUgaWYgZGF0YS5wcm9y b3dzICV9CiAgICAgUk9XUyB7e2RhdGEucHJvcm93c319eyUgZW5kaWYgLSV9 eyUgaWYgZGF0YS52YXJpYWJsZXMgJX17JSBmb3IgdiBpbiBkYXRhLnZhcmlh YmxlcyAlfQogCiAgICAgU0VUIHt7IGNvbm58cXRJZGVudCh2Lm5hbWUpIH19 PXt7IHYudmFsdWV8cXRMaXRlcmFsIH19eyUgZW5kZm9yICV9Ci17JSBlbmRp ZiAlfQoreyUgZW5kaWYgJX17JSBlbmRpZiAlfQogCiBBUyB7JSBpZiBkYXRh Lmxhbm5hbWUgPT0gJ2MnICV9CiB7eyBkYXRhLnByb2JpbnxxdExpdGVyYWwg fX0sIHt7IGRhdGEucHJvc3JjX2N8cXRMaXRlcmFsIH19CmRpZmYgLS1naXQg YS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9k YXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL2Z1bmN0aW9u L3BwYXMvc3FsLzkuMl9wbHVzL2NyZWF0ZS5zcWwgYi93ZWIvcGdhZG1pbi9i cm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1h cy9mdW5jdGlvbnMvdGVtcGxhdGVzL2Z1bmN0aW9uL3BwYXMvc3FsLzkuMl9w bHVzL2NyZWF0ZS5zcWwKaW5kZXggOTUxNDM0NC4uNTE2ZTZkNCAxMDA2NDQK LS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZl cnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5j dGlvbi9wcGFzL3NxbC85LjJfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9w Z2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNl cy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcHBhcy9z cWwvOS4yX3BsdXMvY3JlYXRlLnNxbApAQCAtMywyNSArMywzNyBAQAogeyUg aW1wb3J0ICdtYWNyb3MvZnVuY3Rpb25zL3ZhcmlhYmxlLm1hY3JvcycgYXMg VkFSSUFCTEUgJX0KIHslIHNldCBpc19jb2x1bW5zID0gW10gJX0KIHslIGlm IGRhdGEgJX0KLUNSRUFURSBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0 YS5wcm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX0oeyUgaWYgZGF0YS5hcmdz ICV9Ci17JSBmb3IgcCBpbiBkYXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUg JX17e3AuYXJnbW9kZX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9 e3sgY29ubnxxdElkZW50KHAuYXJnbmFtZSl9fSB7JSBlbmRpZiAlfXslIGlm IHAuYXJndHlwZSAlfXt7IGNvbm58cXRUeXBlSWRlbnQocC5hcmd0eXBlKSB9 fXslIGVuZGlmICV9eyUgaWYgcC5hcmdkZWZ2YWwgJX0gREVGQVVMVCB7e3Au YXJnZGVmdmFsfX17JSBlbmRpZiAlfQorQ1JFQVRFeyUgaWYgcXVlcnlfdHlw ZSBpcyBkZWZpbmVkICV9e3snIE9SIFJFUExBQ0UnfX17JSBlbmRpZiAlfSBG VU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRh dGEubmFtZSkgfX0oeyUgaWYgZGF0YS5hcmdzICV9Cit7JSBmb3IgcCBpbiBk YXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUgJX17e3AuYXJnbW9kZX19IHsl IGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9e3sgY29ubnxxdElkZW50KHAu YXJnbmFtZSl9fXslIGVuZGlmICV9eyUgaWYgcC5hcmd0eXBlICV9e3sgY29u bnxxdElkZW50KHAuYXJndHlwZSkgfX17JSBlbmRpZiAlfXslIGlmIHAuYXJn ZGVmdmFsICV9IERFRkFVTFQge3twLmFyZ2RlZnZhbH19eyUgZW5kaWYgJX0K IHslIGlmIG5vdCBsb29wLmxhc3QgJX0seyUgZW5kaWYgJX0KIHslIGVuZGZv ciAlfQogeyUgZW5kaWYgLSV9Ci0gICAgKQoreyUgaWYgZGF0YS5mdW5jX2Fy Z3MgJX0KK3slIHNldCBmdW5jX2FyZ3MgPSBkYXRhLmZ1bmNfYXJncy5zcGxp dCgnLCcpICV9CisKK3slIGZvciBmIGluIGZ1bmNfYXJncyAlfQorICAgIHt7 IGZ8dHJpbSB9fXslIGlmIG5vdCBsb29wLmxhc3QgJX0sCit7JSBlbmRpZiAl fQoreyUgZW5kZm9yICV9CisKK3slIGVuZGlmICV9CispCiAgICAgUkVUVVJO U3slIGlmIGRhdGEucHJvcmV0c2V0ICV9IFNFVE9GeyUgZW5kaWYgJX0ge3sg Y29ubnxxdFR5cGVJZGVudChkYXRhLnByb3JldHR5cGVuYW1lKSB9fQogICAg IExBTkdVQUdFIHt7IGRhdGEubGFubmFtZXxxdExpdGVyYWwgfX0KK3slIGlm IGRhdGEucHJvY29zdCAlfQorICAgIENPU1Qge3tkYXRhLnByb2Nvc3R9fQor eyUgZW5kaWYgJX0KK3slIGlmIHF1ZXJ5X3R5cGUgIT0gJ2NyZWF0ZScgJX0K ICAgICB7JSBpZiBkYXRhLnByb3ZvbGF0aWxlICV9e3sgZGF0YS5wcm92b2xh dGlsZSB9fSB7JSBlbmRpZiAlfXslIGlmIGRhdGEucHJvbGVha3Byb29mICV9 IExFQUtQUk9PRiB7JSBlbHNlICV9IE5PVCBMRUFLUFJPT0YgeyUgZW5kaWYg JX0KIHslIGlmIGRhdGEucHJvaXNzdHJpY3QgJX1TVFJJQ1QgeyUgZW5kaWYg JX0KIHslIGlmIGRhdGEucHJvc2VjZGVmICV9U0VDVVJJVFkgREVGSU5FUiB7 JSBlbmRpZiAlfQoteyUgaWYgZGF0YS5wcm9pc3dpbmRvdyAlfVdJTkRPV3sl IGVuZGlmICV9eyUgaWYgZGF0YS5wcm9jb3N0ICV9Ci0KLSAgICBDT1NUIHt7 ZGF0YS5wcm9jb3N0fX17JSBlbmRpZiAlfXslIGlmIGRhdGEucHJvcm93cyAl fQoreyUgaWYgZGF0YS5wcm9pc3dpbmRvdyAlfVdJTkRPV3slIGVuZGlmICV9 Cit7JSBpZiBkYXRhLnByb3Jvd3MgJX0KIAogICAgIFJPV1Mge3tkYXRhLnBy b3Jvd3N9fXslIGVuZGlmIC0lfXslIGlmIGRhdGEudmFyaWFibGVzICV9eyUg Zm9yIHYgaW4gZGF0YS52YXJpYWJsZXMgJX0KIAogICAgIFNFVCB7eyBjb25u fHF0SWRlbnQodi5uYW1lKSB9fT17eyB2LnZhbHVlfHF0TGl0ZXJhbCB9fXsl IGVuZGZvciAlfQoteyUgZW5kaWYgJX0KK3slIGVuZGlmICV9eyUgZW5kaWYg JX0KIAogQVMgeyUgaWYgZGF0YS5sYW5uYW1lID09ICdjJyAlfQoge3sgZGF0 YS5wcm9iaW58cXRMaXRlcmFsIH19LCB7eyBkYXRhLnByb3NyY19jfHF0TGl0 ZXJhbCB9fQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2 ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25z L3RlbXBsYXRlcy9mdW5jdGlvbi9wcGFzL3NxbC85LjVfcGx1cy9jcmVhdGUu c3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZl cnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5j dGlvbi9wcGFzL3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsCmluZGV4IDEwMmRj N2EuLmI1YjcxNzYgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0 aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcHBhcy9zcWwvOS41X3BsdXMvY3Jl YXRlLnNxbAorKysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxh dGVzL2Z1bmN0aW9uL3BwYXMvc3FsLzkuNV9wbHVzL2NyZWF0ZS5zcWwKQEAg LTMsOCArMyw3IEBACiB7JSBpbXBvcnQgJ21hY3Jvcy9mdW5jdGlvbnMvdmFy aWFibGUubWFjcm9zJyBhcyBWQVJJQUJMRSAlfQogeyUgc2V0IGlzX2NvbHVt bnMgPSBbXSAlfQogeyUgaWYgZGF0YSAlfQotQ1JFQVRFIEZVTkNUSU9OIHt7 IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9 fSh7JSBpZiBkYXRhCi0uYXJncyAlfQorQ1JFQVRFeyUgaWYgcXVlcnlfdHlw ZSBpcyBkZWZpbmVkICV9e3snIE9SIFJFUExBQ0UnfX17JSBlbmRpZiAlfSBG VU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRh dGEubmFtZSkgfX0oeyUgaWYgZGF0YS5hcmdzICV9CiB7JSBmb3IgcCBpbiBk YXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUgJX17e3AuYXJnbW9kZX19IHsl IGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9e3sgY29ubnxxdElkZW50KHAu YXJnbmFtZSkgfX0geyUgZW5kaWYgJX17JSBpZiBwLmFyZ3R5cGUgJX17eyBj b25ufHF0VHlwZUlkZW50KHAuYXJndHlwZSkgfX17JSBlbmRpZiAlfXslIGlm IHAuYXJnZGVmdmFsICV9IERFRkFVTFQge3twLmFyZ2RlZnZhbH19eyUgZW5k aWYgJX0KIHslIGlmIG5vdCBsb29wLmxhc3QgJX0seyUgZW5kaWYgJX0KIHsl IGVuZGZvciAlfQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9z ZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rp b25zL3RlbXBsYXRlcy9wcm9jZWR1cmUvcHBhcy9zcWwvOS4xX3BsdXMvY3Jl YXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9z ZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMv cHJvY2VkdXJlL3BwYXMvc3FsLzkuMV9wbHVzL2NyZWF0ZS5zcWwKaW5kZXgg YTk3MWI1NS4uMGE4Y2IyMCAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMv ZnVuY3Rpb25zL3RlbXBsYXRlcy9wcm9jZWR1cmUvcHBhcy9zcWwvOS4xX3Bs dXMvY3JlYXRlLnNxbAorKysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZl cl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMv dGVtcGxhdGVzL3Byb2NlZHVyZS9wcGFzL3NxbC85LjFfcGx1cy9jcmVhdGUu c3FsCkBAIC0zLDExICszLDEyIEBACiB7JSBpbXBvcnQgJ21hY3Jvcy9mdW5j dGlvbnMvdmFyaWFibGUubWFjcm9zJyBhcyBWQVJJQUJMRSAlfQogeyUgc2V0 IGlzX2NvbHVtbnMgPSBbXSAlfQogeyUgaWYgZGF0YSAlfQotQ1JFQVRFIE9S IFJFUExBQ0UgUFJPQ0VEVVJFIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25h bWVzcGFjZSwgZGF0YS5uYW1lKSB9fXslIGlmIGRhdGEuYXJncyAlfSgKLXsl IGZvciBwIGluIGRhdGEuYXJncyAlfXslIGlmIHAuYXJnbW9kZSAlfXt7cC5h cmdtb2RlfX0geyUgZW5kaWYgJX17JSBpZiBwLmFyZ25hbWUgJX17eyBjb25u fHF0SWRlbnQocC5hcmduYW1lKX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmd0 eXBlICV9e3sgY29ubnxxdFR5cGVJZGVudChwLmFyZ3R5cGUpIH19eyUgZW5k aWYgJX17JSBpZiBwLmFyZ2RlZnZhbCAlfSBERUZBVUxUIHt7cC5hcmdkZWZ2 YWx9fXslIGVuZGlmICV9Ci17JSBpZiBub3QgbG9vcC5sYXN0ICV9LHslIGVu ZGlmICV9Ci17JSBlbmRmb3IgJX0pCi17JSBlbmRpZiAlfQorQ1JFQVRFIE9S IFJFUExBQ0UgUFJPQ0VEVVJFIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25h bWVzcGFjZSwgZGF0YS5uYW1lKSB9fXslIGlmIGRhdGEuYXJncyBpcyBkZWZp bmVkIG9yIGRhdGEuZnVuY19hcmdzIGlzIGRlZmluZWQgJX0KKyh7JSBmb3Ig cCBpbiBkYXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUgJX17e3AuYXJnbW9k ZX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9e3sgY29ubnxxdElk ZW50KHAuYXJnbmFtZSl9fSB7JSBlbmRpZiAlfXslIGlmIHAuYXJndHlwZSAl fXt7IGNvbm58cXRJZGVudChwLmFyZ3R5cGUpIH19eyUgZW5kaWYgJX17JSBp ZiBwLmFyZ2RlZnZhbCAlfSBERUZBVUxUIHt7cC5hcmdkZWZ2YWx9fXslIGVu ZGlmICV9Cit7JSBpZiBub3QgbG9vcC5sYXN0ICV9LCB7JSBlbmRpZiAlfQor eyUgZW5kZm9yIC0lfQoreyUgaWYgZGF0YS5mdW5jX2FyZ3MgJX17eyBkYXRh LmZ1bmNfYXJncyB9fXslIGVuZGlmICV9CispeyUgZW5kaWYgJX0KIAogQVMK IHt7IGRhdGEucHJvc3JjIH19OwpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4v YnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVt YXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9wcm9jZWR1cmUvcHBhcy9zcWwvOS4y X3BsdXMvY3JlYXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVy X2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90 ZW1wbGF0ZXMvcHJvY2VkdXJlL3BwYXMvc3FsLzkuMl9wbHVzL2NyZWF0ZS5z cWwKaW5kZXggMjM5NjUxNy4uMDczY2UxZCAxMDA2NDQKLS0tIGEvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9wcm9jZWR1cmUvcHBhcy9z cWwvOS4yX3BsdXMvY3JlYXRlLnNxbAorKysgYi93ZWIvcGdhZG1pbi9icm93 c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9m dW5jdGlvbnMvdGVtcGxhdGVzL3Byb2NlZHVyZS9wcGFzL3NxbC85LjJfcGx1 cy9jcmVhdGUuc3FsCkBAIC0zLDEwICszLDEyIEBACiB7JSBpbXBvcnQgJ21h Y3Jvcy9mdW5jdGlvbnMvdmFyaWFibGUubWFjcm9zJyBhcyBWQVJJQUJMRSAl fQogeyUgc2V0IGlzX2NvbHVtbnMgPSBbXSAlfQogeyUgaWYgZGF0YSAlfQot Q1JFQVRFIE9SIFJFUExBQ0UgUFJPQ0VEVVJFIHt7IGNvbm58cXRJZGVudChk YXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9fXslIGlmIGRhdGEuYXJn cyAlfQotKHslIGZvciBwIGluIGRhdGEuYXJncyAlfXslIGlmIHAuYXJnbW9k ZSAlfXt7cC5hcmdtb2RlfX0geyUgZW5kaWYgJX17JSBpZiBwLmFyZ25hbWUg JX0ge3sgY29ubnxxdElkZW50KHAuYXJnbmFtZSl9fSB7JSBlbmRpZiAlfXsl IGlmIHAuYXJndHlwZSAlfXt7IGNvbm58cXRUeXBlSWRlbnQocC5hcmd0eXBl KSB9fXslIGVuZGlmICV9eyUgaWYgcC5hcmdkZWZ2YWwgJX0gREVGQVVMVCB7 e3AuYXJnZGVmdmFsfX17JSBlbmRpZiAlfQoteyUgaWYgbm90IGxvb3AubGFz dCAlfSwgeyUgZW5kaWYgJX0KLXslIGVuZGZvciAtJX0peyUgZW5kaWYgJX0K K0NSRUFURSBPUiBSRVBMQUNFIFBST0NFRFVSRSB7eyBjb25ufHF0SWRlbnQo ZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX17JSBpZiBkYXRhLmFy Z3MgaXMgZGVmaW5lZCBvciBkYXRhLmZ1bmNfYXJncyBpcyBkZWZpbmVkICV9 CisoeyUgZm9yIHAgaW4gZGF0YS5hcmdzICV9eyUgaWYgcC5hcmdtb2RlICV9 e3twLmFyZ21vZGV9fSB7JSBlbmRpZiAlfXslIGlmIHAuYXJnbmFtZSAlfXt7 IGNvbm58cXRJZGVudChwLmFyZ25hbWUpfX0geyUgZW5kaWYgJX17JSBpZiBw LmFyZ3R5cGUgJX17eyBjb25ufHF0SWRlbnQocC5hcmd0eXBlKSB9fXslIGVu ZGlmICV9eyUgaWYgcC5hcmdkZWZ2YWwgJX0gREVGQVVMVCB7e3AuYXJnZGVm dmFsfX17JSBlbmRpZiAlfQorIHslIGlmIG5vdCBsb29wLmxhc3QgJX0sIHsl IGVuZGlmICV9Cit7JSBlbmRmb3IgLSV9Cit7JSBpZiBkYXRhLmZ1bmNfYXJn cyAlfXt7IGRhdGEuZnVuY19hcmdzIH19eyUgZW5kaWYgJX0KKyl7JSBlbmRp ZiAlfQogCiBBUwoge3sgZGF0YS5wcm9zcmMgfX07CmRpZmYgLS1naXQgYS93 ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRh YmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3Byb2NlZHVyZS9w cGFzL3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsIGIvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMv ZnVuY3Rpb25zL3RlbXBsYXRlcy9wcm9jZWR1cmUvcHBhcy9zcWwvOS41X3Bs dXMvY3JlYXRlLnNxbAppbmRleCBjNWYwMDg0Li5mMWE0MGFmIDEwMDY0NAot LS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVy cy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3Byb2Nl ZHVyZS9wcGFzL3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9w Z2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNl cy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvcHJvY2VkdXJlL3BwYXMv c3FsLzkuNV9wbHVzL2NyZWF0ZS5zcWwKQEAgLTMsMTAgKzMsMTMgQEAKIHsl IGltcG9ydCAnbWFjcm9zL2Z1bmN0aW9ucy92YXJpYWJsZS5tYWNyb3MnIGFz IFZBUklBQkxFICV9CiB7JSBzZXQgaXNfY29sdW1ucyA9IFtdICV9CiB7JSBp ZiBkYXRhICV9Ci1DUkVBVEUgT1IgUkVQTEFDRSBQUk9DRURVUkUge3sgY29u bnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19eyUg aWYgZGF0YS5hcmdzICV9CitDUkVBVEUgT1IgUkVQTEFDRSBQUk9DRURVUkUg e3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUp IH19eyUgaWYgZGF0YS5hcmdzIGlzIGRlZmluZWQgb3IgZGF0YS5mdW5jX2Fy Z3MgaXMgZGVmaW5lZCAlfQogKHslIGZvciBwIGluIGRhdGEuYXJncyAlfXsl IGlmIHAuYXJnbW9kZSAlfXt7cC5hcmdtb2RlfX0geyUgZW5kaWYgJX17JSBp ZiBwLmFyZ25hbWUgJX17eyBjb25ufHF0SWRlbnQocC5hcmduYW1lKX19IHsl IGVuZGlmICV9eyUgaWYgcC5hcmd0eXBlICV9e3sgY29ubnxxdFR5cGVJZGVu dChwLmFyZ3R5cGUpIH19eyUgZW5kaWYgJX17JSBpZiBwLmFyZ2RlZnZhbCAl fSBERUZBVUxUIHt7cC5hcmdkZWZ2YWx9fXslIGVuZGlmICV9CiB7JSBpZiBu b3QgbG9vcC5sYXN0ICV9LCB7JSBlbmRpZiAlfQoteyUgZW5kZm9yIC0lfSl7 JSBlbmRpZiAlfQoreyUgZW5kZm9yIC0lfQoreyUgaWYgZGF0YS5mdW5jX2Fy Z3MgJX17eyBkYXRhLmZ1bmNfYXJncyB9fXslIGVuZGlmICV9CispeyUgZW5k aWYgJX0KK3slIGlmIHF1ZXJ5X3R5cGUgIT0gJ2NyZWF0ZScgJX0KIAogICAg IHt7IGRhdGEucHJvdm9sYXRpbGUgfX17JSBpZiBkYXRhLnByb2xlYWtwcm9v ZiAlfSBMRUFLUFJPT0YgeyUgZWxpZiBub3QgZGF0YS5wcm9sZWFrcHJvb2Yg JX0gTk9UIExFQUtQUk9PRiB7JSBlbmRpZiAlfQogeyUgaWYgZGF0YS5wcm9p c3N0cmljdCAlfVNUUklDVCB7JSBlbmRpZiAlfQpAQCAtMTcsNyArMjAsNyBA QCBDUkVBVEUgT1IgUkVQTEFDRSBQUk9DRURVUkUge3sgY29ubnxxdElkZW50 KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19eyUgaQogICAgIFJP V1Mge3tkYXRhLnByb3Jvd3N9fXslIGVuZGlmIC0lfXslIGlmIGRhdGEudmFy aWFibGVzICV9eyUgZm9yIHYgaW4gZGF0YS52YXJpYWJsZXMgJX0KIAogICAg IFNFVCB7eyBjb25ufHF0SWRlbnQodi5uYW1lKSB9fT17eyB2LnZhbHVlfHF0 TGl0ZXJhbCB9fXslIGVuZGZvciAtJX0KLXslIGVuZGlmICV9Cit7JSBlbmRp ZiAlfXslIGVuZGlmICV9CiAKIEFTCiB7eyBkYXRhLnByb3NyYyB9fTsKZGlm ZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9z ZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMv dHJpZ2dlcl9mdW5jdGlvbi9wZy9zcWwvOS4xX3BsdXMvY3JlYXRlLnNxbCBi L3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9m dW5jdGlvbi9wZy9zcWwvOS4xX3BsdXMvY3JlYXRlLnNxbAppbmRleCA4ZTUx YTQ5Li42ZTlmZDc4IDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2Vy L3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5j dGlvbnMvdGVtcGxhdGVzL3RyaWdnZXJfZnVuY3Rpb24vcGcvc3FsLzkuMV9w bHVzL2NyZWF0ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2 ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25z L3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3BnL3NxbC85LjFfcGx1cy9j cmVhdGUuc3FsCkBAIC02LDE2ICs2LDE5IEBACiBDUkVBVEUgRlVOQ1RJT04g e3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUp IH19KCkKICAgICBSRVRVUk5TeyUgaWYgZGF0YS5wcm9yZXRzZXQgJX0gU0VU T0Z7JSBlbmRpZiAlfSB7eyBjb25ufHF0VHlwZUlkZW50KGRhdGEucHJvcmV0 dHlwZW5hbWUpIH19CiAgICAgTEFOR1VBR0Uge3sgZGF0YS5sYW5uYW1lfHF0 TGl0ZXJhbCB9fQotICAgIHslIGlmIGRhdGEucHJvdm9sYXRpbGUgJX17eyBk YXRhLnByb3ZvbGF0aWxlIH19IHslIGVuZGlmICV9eyUgaWYgZGF0YS5wcm9p c3N0cmljdCAlfVNUUklDVCB7JSBlbmRpZiAlfXslIGlmIGRhdGEucHJvc2Vj ZGVmICV9U0VDVVJJVFkgREVGSU5FUiB7JSBlbmRpZiAlfXslIGlmIGRhdGEu cHJvaXN3aW5kb3cgJX1XSU5ET1d7JSBlbmRpZiAtJX17JSBpZiBkYXRhLnBy b2Nvc3QgJX0KLQotICAgIENPU1Qge3tkYXRhLnByb2Nvc3R9fXslIGVuZGlm ICV9eyUgaWYgZGF0YS5wcm9yb3dzICV9Cit7JSBpZiBkYXRhLnByb2Nvc3Qg JX0KKyAgICBDT1NUIHt7ZGF0YS5wcm9jb3N0fX0KK3slIGVuZGlmICV9Cit7 JSBpZiBxdWVyeV90eXBlICE9ICdjcmVhdGUnICV9CisgICAgeyUgaWYgZGF0 YS5wcm92b2xhdGlsZSAlfXt7IGRhdGEucHJvdm9sYXRpbGUgfX0geyUgZW5k aWYgJX17JSBpZiBkYXRhLnByb2lzc3RyaWN0ICV9U1RSSUNUIHslIGVuZGlm ICV9eyUgaWYgZGF0YS5wcm9zZWNkZWYgJX1TRUNVUklUWSBERUZJTkVSIHsl IGVuZGlmICV9eyUgaWYgZGF0YS5wcm9pc3dpbmRvdyAlfVdJTkRPV3slIGVu ZGlmIC0lfQoreyUgaWYgZGF0YS5wcm9yb3dzICV9CiAKICAgICBST1dTIHt7 ZGF0YS5wcm9yb3dzfX17JSBlbmRpZiAtJX17JSBpZiBkYXRhLnZhcmlhYmxl cyAlfXslIGZvciB2IGluIGRhdGEudmFyaWFibGVzICV9CiAKICAgICBTRVQg e3sgY29ubnxxdElkZW50KHYubmFtZSkgfX09e3sgdi52YWx1ZXxxdExpdGVy YWwgfX17JSBlbmRmb3IgJX0KIHslIGVuZGlmICV9CiAKLUFTIHslIGlmIGRh dGEubGFubmFtZSA9PSAnYycgJX0KK0FTIHslIGVuZGlmICV9eyUgaWYgZGF0 YS5sYW5uYW1lID09ICdjJyAlfQoge3sgZGF0YS5wcm9iaW58cXRMaXRlcmFs IH19LCB7eyBkYXRhLnByb3NyY19jfHF0TGl0ZXJhbCB9fQogeyUgZWxzZSAl fQogJEJPRFkkCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3Nl cnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlv bnMvdGVtcGxhdGVzL3RyaWdnZXJfZnVuY3Rpb24vcGcvc3FsLzkuMl9wbHVz L2NyZWF0ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxh dGVzL3RyaWdnZXJfZnVuY3Rpb24vcGcvc3FsLzkuMl9wbHVzL2NyZWF0ZS5z cWwKaW5kZXggMTQ5YzIwNC4uN2NhNGJmMSAxMDA2NDQKLS0tIGEvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9u L3BnL3NxbC85LjJfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWlu L2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hl bWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wZy9z cWwvOS4yX3BsdXMvY3JlYXRlLnNxbApAQCAtNiw2ICs2LDEwIEBACiBDUkVB VEUgRlVOQ1RJT04ge3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNl LCBkYXRhLm5hbWUpIH19KCkKICAgICBSRVRVUk5TeyUgaWYgZGF0YS5wcm9y ZXRzZXQgJX0gU0VUT0Z7JSBlbmRpZiAlfSB7eyBjb25ufHF0VHlwZUlkZW50 KGRhdGEucHJvcmV0dHlwZW5hbWUpIH19CiAgICAgTEFOR1VBR0Uge3sgZGF0 YS5sYW5uYW1lfHF0TGl0ZXJhbCB9fQoreyUgaWYgZGF0YS5wcm9jb3N0ICV9 CisgICAgQ09TVCB7e2RhdGEucHJvY29zdH19Cit7JSBlbmRpZiAlfQoreyUg aWYgcXVlcnlfdHlwZSAhPSAnY3JlYXRlJyAlfQogICAgIHslIGlmIGRhdGEu cHJvdm9sYXRpbGUgJX17eyBkYXRhLnByb3ZvbGF0aWxlIH19IHslIGVuZGlm ICV9eyUgaWYgZGF0YS5wcm9sZWFrcHJvb2YgJX1MRUFLUFJPT0YgeyUgZWxz ZSAlfU5PVCBMRUFLUFJPT0YgeyUgZW5kaWYgJX0KIHslIGlmIGRhdGEucHJv aXNzdHJpY3QgJX1TVFJJQ1QgeyUgZW5kaWYgJX0KIHslIGlmIGRhdGEucHJv c2VjZGVmICV9U0VDVVJJVFkgREVGSU5FUiB7JSBlbmRpZiAlfQpAQCAtMTgs NyArMjIsNyBAQCBDUkVBVEUgRlVOQ1RJT04ge3sgY29ubnxxdElkZW50KGRh dGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19KCkKICAgICBTRVQge3sg Y29ubnxxdElkZW50KHYubmFtZSkgfX09e3sgdi52YWx1ZXxxdExpdGVyYWwg fX17JSBlbmRmb3IgJX0KIHslIGVuZGlmICV9CiAKLUFTIHslIGlmIGRhdGEu bGFubmFtZSA9PSAnYycgJX0KK0FTIHslIGVuZGlmICV9eyUgaWYgZGF0YS5s YW5uYW1lID09ICdjJyAlfQoge3sgZGF0YS5wcm9iaW58cXRMaXRlcmFsIH19 LCB7eyBkYXRhLnByb3NyY19jfHF0TGl0ZXJhbCB9fQogeyUgZWxzZSAlfQog JEJPRFkkCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZl cl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMv dGVtcGxhdGVzL3RyaWdnZXJfZnVuY3Rpb24vcGcvc3FsLzkuNV9wbHVzL2Ny ZWF0ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMv c2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVz L3RyaWdnZXJfZnVuY3Rpb24vcGcvc3FsLzkuNV9wbHVzL2NyZWF0ZS5zcWwK aW5kZXggZmEzNmFkOC4uNTQ0NTg1NSAxMDA2NDQKLS0tIGEvd2ViL3BnYWRt aW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3Nj aGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3Bn L3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWluL2Jy b3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFz L2Z1bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wZy9zcWwv OS41X3BsdXMvY3JlYXRlLnNxbApAQCAtMywyMiArMywyNSBAQAogeyUgaW1w b3J0ICdtYWNyb3MvZnVuY3Rpb25zL3ZhcmlhYmxlLm1hY3JvcycgYXMgVkFS SUFCTEUgJX0KIHslIHNldCBpc19jb2x1bW5zID0gW10gJX0KIHslIGlmIGRh dGEgJX0KLUNSRUFURSBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5w cm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX0oKQorQ1JFQVRFIEZVTkNUSU9O IHt7IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1l KSB9fSh7JSBpZiBkYXRhLnByb2FyZ25hbWVzICV9e3tkYXRhLnByb2FyZ25h bWVzfX17JSBlbmRpZiAlfSkKICAgICBSRVRVUk5TeyUgaWYgZGF0YS5wcm9y ZXRzZXQgJX0gU0VUT0Z7JSBlbmRpZiAlfSB7eyBjb25ufHF0VHlwZUlkZW50 KGRhdGEucHJvcmV0dHlwZW5hbWUpIH19CiAgICAgTEFOR1VBR0Uge3sgZGF0 YS5sYW5uYW1lfHF0TGl0ZXJhbCB9fQoreyUgaWYgZGF0YS5wcm9jb3N0ICV9 CisgICAgQ09TVCB7e2RhdGEucHJvY29zdH19Cit7JSBlbmRpZiAlfQoreyUg aWYgcXVlcnlfdHlwZSAhPSAnY3JlYXRlJyAlfQogICAgIHslIGlmIGRhdGEu cHJvdm9sYXRpbGUgJX17eyBkYXRhLnByb3ZvbGF0aWxlIH19IHslIGVuZGlm ICV9eyUgaWYgZGF0YS5wcm9sZWFrcHJvb2YgJX1MRUFLUFJPT0YgeyUgZWxz ZSAlfU5PVCBMRUFLUFJPT0YgeyUgZW5kaWYgJX0KIHslIGlmIGRhdGEucHJv aXNzdHJpY3QgJX1TVFJJQ1QgeyUgZW5kaWYgJX0KIHslIGlmIGRhdGEucHJv c2VjZGVmICV9U0VDVVJJVFkgREVGSU5FUiB7JSBlbmRpZiAlfQoteyUgaWYg ZGF0YS5wcm9pc3dpbmRvdyAlfVdJTkRPV3slIGVuZGlmICV9eyUgaWYgZGF0 YS5wcm9jb3N0ICV9Ci0KLSAgICBDT1NUIHt7ZGF0YS5wcm9jb3N0fX17JSBl bmRpZiAlfXslIGlmIGRhdGEucHJvcm93cyAlfQoreyUgaWYgZGF0YS5wcm9p c3dpbmRvdyAlfVdJTkRPV3slIGVuZGlmICV9Cit7JSBpZiBkYXRhLnByb3Jv d3MgJX0KIAogICAgIFJPV1Mge3tkYXRhLnByb3Jvd3N9fXslIGVuZGlmIC0l fXslIGlmIGRhdGEudmFyaWFibGVzICV9eyUgZm9yIHYgaW4gZGF0YS52YXJp YWJsZXMgJX0KIAogICAgIFNFVCB7eyBjb25ufHF0SWRlbnQodi5uYW1lKSB9 fT17eyB2LnZhbHVlfHF0TGl0ZXJhbCB9fXslIGVuZGZvciAlfQogeyUgZW5k aWYgJX0KIAotQVMgeyUgaWYgZGF0YS5sYW5uYW1lID09ICdjJyAlfQorQVMg eyUgZW5kaWYgJX17JSBpZiBkYXRhLmxhbm5hbWUgPT0gJ2MnICV9CiB7eyBk YXRhLnByb2JpbnxxdExpdGVyYWwgfX0sIHt7IGRhdGEucHJvc3JjX2N8cXRM aXRlcmFsIH19CiB7JSBlbHNlICV9CiAkQk9EWSQKZGlmZiAtLWdpdCBhL3dl Yi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFi YXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5j dGlvbi9wcGFzL3NxbC85LjFfcGx1cy9jcmVhdGUuc3FsIGIvd2ViL3BnYWRt aW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3Nj aGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3Bw YXMvc3FsLzkuMV9wbHVzL2NyZWF0ZS5zcWwKaW5kZXggOGU1MWE0OS4uNmU5 ZmQ3OCAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3Rl bXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3BwYXMvc3FsLzkuMV9wbHVzL2Ny ZWF0ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3Jv dXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBs YXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3BwYXMvc3FsLzkuMV9wbHVzL2NyZWF0 ZS5zcWwKQEAgLTYsMTYgKzYsMTkgQEAKIENSRUFURSBGVU5DVElPTiB7eyBj b25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX0o KQogICAgIFJFVFVSTlN7JSBpZiBkYXRhLnByb3JldHNldCAlfSBTRVRPRnsl IGVuZGlmICV9IHt7IGNvbm58cXRUeXBlSWRlbnQoZGF0YS5wcm9yZXR0eXBl bmFtZSkgfX0KICAgICBMQU5HVUFHRSB7eyBkYXRhLmxhbm5hbWV8cXRMaXRl cmFsIH19Ci0gICAgeyUgaWYgZGF0YS5wcm92b2xhdGlsZSAlfXt7IGRhdGEu cHJvdm9sYXRpbGUgfX0geyUgZW5kaWYgJX17JSBpZiBkYXRhLnByb2lzc3Ry aWN0ICV9U1RSSUNUIHslIGVuZGlmICV9eyUgaWYgZGF0YS5wcm9zZWNkZWYg JX1TRUNVUklUWSBERUZJTkVSIHslIGVuZGlmICV9eyUgaWYgZGF0YS5wcm9p c3dpbmRvdyAlfVdJTkRPV3slIGVuZGlmIC0lfXslIGlmIGRhdGEucHJvY29z dCAlfQotCi0gICAgQ09TVCB7e2RhdGEucHJvY29zdH19eyUgZW5kaWYgJX17 JSBpZiBkYXRhLnByb3Jvd3MgJX0KK3slIGlmIGRhdGEucHJvY29zdCAlfQor ICAgIENPU1Qge3tkYXRhLnByb2Nvc3R9fQoreyUgZW5kaWYgJX0KK3slIGlm IHF1ZXJ5X3R5cGUgIT0gJ2NyZWF0ZScgJX0KKyAgICB7JSBpZiBkYXRhLnBy b3ZvbGF0aWxlICV9e3sgZGF0YS5wcm92b2xhdGlsZSB9fSB7JSBlbmRpZiAl fXslIGlmIGRhdGEucHJvaXNzdHJpY3QgJX1TVFJJQ1QgeyUgZW5kaWYgJX17 JSBpZiBkYXRhLnByb3NlY2RlZiAlfVNFQ1VSSVRZIERFRklORVIgeyUgZW5k aWYgJX17JSBpZiBkYXRhLnByb2lzd2luZG93ICV9V0lORE9XeyUgZW5kaWYg LSV9Cit7JSBpZiBkYXRhLnByb3Jvd3MgJX0KIAogICAgIFJPV1Mge3tkYXRh LnByb3Jvd3N9fXslIGVuZGlmIC0lfXslIGlmIGRhdGEudmFyaWFibGVzICV9 eyUgZm9yIHYgaW4gZGF0YS52YXJpYWJsZXMgJX0KIAogICAgIFNFVCB7eyBj b25ufHF0SWRlbnQodi5uYW1lKSB9fT17eyB2LnZhbHVlfHF0TGl0ZXJhbCB9 fXslIGVuZGZvciAlfQogeyUgZW5kaWYgJX0KIAotQVMgeyUgaWYgZGF0YS5s YW5uYW1lID09ICdjJyAlfQorQVMgeyUgZW5kaWYgJX17JSBpZiBkYXRhLmxh bm5hbWUgPT0gJ2MnICV9CiB7eyBkYXRhLnByb2JpbnxxdExpdGVyYWwgfX0s IHt7IGRhdGEucHJvc3JjX2N8cXRMaXRlcmFsIH19CiB7JSBlbHNlICV9CiAk Qk9EWSQKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVy X2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90 ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wcGFzL3NxbC85LjJfcGx1cy9j cmVhdGUuc3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBz L3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRl cy90cmlnZ2VyX2Z1bmN0aW9uL3BwYXMvc3FsLzkuMl9wbHVzL2NyZWF0ZS5z cWwKaW5kZXggZjdkNDk3ZS4uMjEwY2YzYSAxMDA2NDQKLS0tIGEvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9u L3BwYXMvc3FsLzkuMl9wbHVzL2NyZWF0ZS5zcWwKKysrIGIvd2ViL3BnYWRt aW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3Nj aGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3Bw YXMvc3FsLzkuMl9wbHVzL2NyZWF0ZS5zcWwKQEAgLTYsMTkgKzYsMjIgQEAK IENSRUFURSBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1l c3BhY2UsIGRhdGEubmFtZSkgfX0oKQogICAgIFJFVFVSTlN7JSBpZiBkYXRh LnByb3JldHNldCAlfSBTRVRPRnslIGVuZGlmICV9IHt7IGNvbm58cXRUeXBl SWRlbnQoZGF0YS5wcm9yZXR0eXBlbmFtZSkgfX0KICAgICBMQU5HVUFHRSB7 eyBkYXRhLmxhbm5hbWV8cXRMaXRlcmFsIH19Cit7JSBpZiBkYXRhLnByb2Nv c3QgJX0KKyAgICBDT1NUIHt7ZGF0YS5wcm9jb3N0fX0KK3slIGVuZGlmICV9 Cit7JSBpZiBxdWVyeV90eXBlICE9ICdjcmVhdGUnICV9CiAgICAgeyUgaWYg ZGF0YS5wcm92b2xhdGlsZSAlfXt7IGRhdGEucHJvdm9sYXRpbGUgfX0geyUg ZW5kaWYgJX17JSBpZiBkYXRhLnByb2xlYWtwcm9vZiAlfSBMRUFLUFJPT0Yg eyUgZWxzZSAlfSBOT1QgTEVBS1BST09GIHslIGVuZGlmICV9CiB7JSBpZiBk YXRhLnByb2lzc3RyaWN0ICV9U1RSSUNUIHslIGVuZGlmICV9CiB7JSBpZiBk YXRhLnByb3NlY2RlZiAlfVNFQ1VSSVRZIERFRklORVIgeyUgZW5kaWYgJX0K LXslIGlmIGRhdGEucHJvaXN3aW5kb3cgJX1XSU5ET1d7JSBlbmRpZiAlfXsl IGlmIGRhdGEucHJvY29zdCAlfQotCi0gICAgQ09TVCB7e2RhdGEucHJvY29z dH19eyUgZW5kaWYgJX17JSBpZiBkYXRhLnByb3Jvd3MgJX0KK3slIGlmIGRh dGEucHJvaXN3aW5kb3cgJX1XSU5ET1d7JSBlbmRpZiAlfQoreyUgaWYgZGF0 YS5wcm9yb3dzICV9CiAKICAgICBST1dTIHt7ZGF0YS5wcm9yb3dzfX17JSBl bmRpZiAtJX17JSBpZiBkYXRhLnZhcmlhYmxlcyAlfXslIGZvciB2IGluIGRh dGEudmFyaWFibGVzICV9CiAKICAgICBTRVQge3sgY29ubnxxdElkZW50KHYu bmFtZSkgfX09e3sgdi52YWx1ZXxxdExpdGVyYWwgfX17JSBlbmRmb3IgJX0K IHslIGVuZGlmICV9CiAKLUFTIHslIGlmIGRhdGEubGFubmFtZSA9PSAnYycg JX0KK0FTIHslIGVuZGlmICV9eyUgaWYgZGF0YS5sYW5uYW1lID09ICdjJyAl fQoge3sgZGF0YS5wcm9iaW58cXRMaXRlcmFsIH19LCB7eyBkYXRhLnByb3Ny Y19jfHF0TGl0ZXJhbCB9fQogeyUgZWxzZSAlfQogJEJPRFkkCmRpZmYgLS1n aXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVy cy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3RyaWdn ZXJfZnVuY3Rpb24vcHBhcy9zcWwvOS41X3BsdXMvY3JlYXRlLnNxbCBiL3dl Yi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFi YXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5j dGlvbi9wcGFzL3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsCmluZGV4IGZhMzZh ZDguLjVjN2M1NjggMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0 aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wcGFzL3NxbC85LjVf cGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2Vy dmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9u cy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wcGFzL3NxbC85LjVfcGx1 cy9jcmVhdGUuc3FsCkBAIC02LDIzICs2LDI2IEBACiBDUkVBVEUgRlVOQ1RJ T04ge3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5h bWUpIH19KCkKICAgICBSRVRVUk5TeyUgaWYgZGF0YS5wcm9yZXRzZXQgJX0g U0VUT0Z7JSBlbmRpZiAlfSB7eyBjb25ufHF0VHlwZUlkZW50KGRhdGEucHJv cmV0dHlwZW5hbWUpIH19CiAgICAgTEFOR1VBR0Uge3sgZGF0YS5sYW5uYW1l fHF0TGl0ZXJhbCB9fQoreyUgaWYgZGF0YS5wcm9jb3N0ICV9CisgICAgQ09T VCB7e2RhdGEucHJvY29zdH19Cit7JSBlbmRpZiAlfQoreyUgaWYgcXVlcnlf dHlwZSAhPSAnY3JlYXRlJyAlfQogICAgIHslIGlmIGRhdGEucHJvdm9sYXRp bGUgJX17eyBkYXRhLnByb3ZvbGF0aWxlIH19IHslIGVuZGlmICV9eyUgaWYg ZGF0YS5wcm9sZWFrcHJvb2YgJX1MRUFLUFJPT0YgeyUgZWxzZSAlfU5PVCBM RUFLUFJPT0YgeyUgZW5kaWYgJX0KIHslIGlmIGRhdGEucHJvaXNzdHJpY3Qg JX1TVFJJQ1QgeyUgZW5kaWYgJX0KIHslIGlmIGRhdGEucHJvc2VjZGVmICV9 U0VDVVJJVFkgREVGSU5FUiB7JSBlbmRpZiAlfQoteyUgaWYgZGF0YS5wcm9p c3dpbmRvdyAlfVdJTkRPV3slIGVuZGlmICV9eyUgaWYgZGF0YS5wcm9jb3N0 ICV9Ci0KLSAgICBDT1NUIHt7ZGF0YS5wcm9jb3N0fX17JSBlbmRpZiAlfXsl IGlmIGRhdGEucHJvcm93cyAlfQoreyUgaWYgZGF0YS5wcm9pc3dpbmRvdyAl fVdJTkRPV3slIGVuZGlmICV9Cit7JSBpZiBkYXRhLnByb3Jvd3MgJX0KIAog ICAgIFJPV1Mge3tkYXRhLnByb3Jvd3N9fXslIGVuZGlmIC0lfXslIGlmIGRh dGEudmFyaWFibGVzICV9eyUgZm9yIHYgaW4gZGF0YS52YXJpYWJsZXMgJX0K IAogICAgIFNFVCB7eyBjb25ufHF0SWRlbnQodi5uYW1lKSB9fT17eyB2LnZh bHVlfHF0TGl0ZXJhbCB9fXslIGVuZGZvciAlfQogeyUgZW5kaWYgJX0KIAot QVMgeyUgaWYgZGF0YS5sYW5uYW1lID09ICdjJyAlfQorK0FTIHslIGVuZGlm ICV9eyUgaWYgZGF0YS5sYW5uYW1lID09ICdjJyAlfQoge3sgZGF0YS5wcm9i aW58cXRMaXRlcmFsIH19LCB7eyBkYXRhLnByb3NyY19jfHF0TGl0ZXJhbCB9 fQogeyUgZWxzZSAlfQogJEJPRFkkCi17eyBkYXRhLnByb3NyYyB9fQore3sg ZGF0YS5wcm9zcmMgfX07CiAkQk9EWSR7JSBlbmRpZiAtJX07CiB7JSBpZiBk YXRhLmZ1bmNvd25lciAlfQogCg== --001a113ddd7a562a51053834c439 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 --001a113ddd7a562a51053834c439--