Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtp (Exim 4.84_2) (envelope-from ) id 1bSi43-0003UF-Fi for pgadmin-hackers@arkaria.postgresql.org; Thu, 28 Jul 2016 09:57:15 +0000 Received: from localhost ([127.0.0.1] helo=postgresql.org) by malur.postgresql.org with smtp (Exim 4.84_2) (envelope-from ) id 1bSi42-0006Ca-SK for pgadmin-hackers@arkaria.postgresql.org; Thu, 28 Jul 2016 09:57: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 1bSi3l-0005e3-LU for pgadmin-hackers@postgresql.org; Thu, 28 Jul 2016 09:56:58 +0000 Received: from mail-qt0-x230.google.com ([2607:f8b0:400d:c0d::230]) by makus.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.84_2) (envelope-from ) id 1bSi3j-0000VL-0m for pgadmin-hackers@postgresql.org; Thu, 28 Jul 2016 09:56:56 +0000 Received: by mail-qt0-x230.google.com with SMTP id x25so45197307qtx.2 for ; Thu, 28 Jul 2016 02:56:54 -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=z78p5u7lUxRTYvtuJioGtLIqvvG+iOz4vvVd1rEUz6A=; b=AkpuT2cFA4V+QeNRDjLx1egXGTwx8fkkYOg1J4zhYIq7C/1JPkCfHsM3ZUb40dIrP1 dP2PITK8HYylywwAPPO++0GMDRvdIGrLq2GnAYlzMG+rWEJaHQFMnmJmE9RPEPz6xiBX egdw6JkOAP1V1lFPQIhaYT0njhtwHUWYE5GjTzDWN0XGsjSZtLLaGOxzePlfq0pZiIju UoEfeeKbOPhlJLXKwpwCE18ZsiR8oVTwntoVRxOypgQsQvT4pbHCBL+Af2t78OYxFeSO VrMQsKqP8qiIOHGnWh9DQdKG7Twd4adH5HK6edjnSuk6E83aKKqfvo/ToKT8GpmMF3OW cG6Q== 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=z78p5u7lUxRTYvtuJioGtLIqvvG+iOz4vvVd1rEUz6A=; b=I8v1TVITcuF2pfZFn2P6Boyq0d79h46ASvaOM62UL6BO9GYdKFGAbiUbYrT1JpHZrN o+fW6arNrZ35p6CRreAtM+cQHDCa/r/nC1dmJBpTIVVLArhlE0KuSeYWuIrQUHsB49W3 hoMsbB5t6996P+asRdt9/ec5JxjmdtVhDpukHd7VM3ohaeyXvDUqoNpBUN4SfvMvS3fg ZTyJTnA4iOVnONc7afiFiBAfzDS8HbSiJVkcXQvNBWiWxQY9LDFJ9zok/bLBlcf8doZK aT1utePB3jdO6yIPtSxD9Z2kSDy1xtoiJ4mLf+CIq0rNyeA66l5cxbFaQ7x4/rdTkZ8c VsAw== X-Gm-Message-State: AEkoouvxX+64jSD/jS6vWKNg7TgZPD3rGmII8jJ5m0BLjlAMF+G4m+ey0JTNciwSQ2SUfU9U0e57vwgbmO8jIpl2 X-Received: by 10.200.35.44 with SMTP id a41mr57357819qta.25.1469699813887; Thu, 28 Jul 2016 02:56:53 -0700 (PDT) MIME-Version: 1.0 Received: by 10.55.8.3 with HTTP; Thu, 28 Jul 2016 02:56:33 -0700 (PDT) In-Reply-To: References: From: Murtuza Zabuawala Date: Thu, 28 Jul 2016 15:26:33 +0530 Message-ID: Subject: Re: PATCH: Encoding issue with qtLiteral function (pgAdmin4) To: Dave Page Cc: pgadmin-hackers Content-Type: multipart/mixed; boundary=001a113df2aa5598c50538af2729 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 --001a113df2aa5598c50538af2729 Content-Type: multipart/alternative; boundary=001a113df2aa5598c00538af2727 --001a113df2aa5598c00538af2727 Content-Type: text/plain; charset=UTF-8 Hi Dave, PFA updated patch to fix issue in functions which was due to improper handing of nested quoting of types in templates. I also fixed it in Table/Column node. Please review. Regards, Murtuza --001a113df2aa5598c00538af2727 Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
Hi Dave,

PFA updated patch to fix iss= ue in functions which was due to improper handing of nested quoting of type= s in templates.
I also fixed it in Table/Co= lumn node.

Please review.

Regards,
Murtuza

--001a113df2aa5598c00538af2727-- --001a113df2aa5598c50538af2729 Content-Type: application/octet-stream; name="misc_fixes_encoding_and_ident.patch" Content-Disposition: attachment; filename="misc_fixes_encoding_and_ident.patch" Content-Transfer-Encoding: base64 X-Attachment-Id: f_ir6595o81 ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vw cy9zZXJ2ZXJzL2RhdGFiYXNlcy9fX2luaXRfXy5weSBiL3dlYi9wZ2FkbWlu L2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9fX2lu aXRfXy5weQppbmRleCAzM2YxZDE1Li4zYjdjNTdiIDEwMDY0NAotLS0gYS93 ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRh YmFzZXMvX19pbml0X18ucHkKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9z ZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL19faW5pdF9fLnB5CkBA IC0xODcsNiArMTg3LDggQEAgY2xhc3MgRGF0YWJhc2VWaWV3KFBHQ2hpbGRO b2RlVmlldyk6CiAKICAgICAgICAgZm9yIHJvdyBpbiByc2V0Wydyb3dzJ106 CiAgICAgICAgICAgICBkYm5hbWUgPSByb3dbJ25hbWUnXQorICAgICAgICAg ICAgaWYgaGFzYXR0cihzdHIsICdkZWNvZGUnKToKKyAgICAgICAgICAgICAg ICBkYm5hbWUgPSBkYm5hbWUuZGVjb2RlKCd1dGYtOCcpCiAgICAgICAgICAg ICBpZiBzZWxmLm1hbmFnZXIuZGIgPT0gZGJuYW1lOgogICAgICAgICAgICAg ICAgIGNvbm5lY3RlZCA9IFRydWUKICAgICAgICAgICAgICAgICBjYW5Ecm9w ID0gY2FuRGlzQ29ubiA9IEZhbHNlCkBAIC0yMjgsNyArMjMwLDEwIEBAIGNs YXNzIERhdGFiYXNlVmlldyhQR0NoaWxkTm9kZVZpZXcpOgogICAgICAgICAg ICAgcmV0dXJuIGludGVybmFsX3NlcnZlcl9lcnJvcihlcnJvcm1zZz1yc2V0 KQogCiAgICAgICAgIGZvciByb3cgaW4gcnNldFsncm93cyddOgotICAgICAg ICAgICAgaWYgc2VsZi5tYW5hZ2VyLmRiID09IHJvd1snbmFtZSddOgorICAg ICAgICAgICAgZGIgPSByb3dbJ25hbWUnXQorICAgICAgICAgICAgaWYgaGFz YXR0cihzdHIsICdkZWNvZGUnKToKKyAgICAgICAgICAgICAgICBkYiA9IGRi LmRlY29kZSgndXRmLTgnKQorICAgICAgICAgICAgaWYgc2VsZi5tYW5hZ2Vy LmRiID09IGRiOgogICAgICAgICAgICAgICAgIGNvbm5lY3RlZCA9IFRydWUK ICAgICAgICAgICAgIGVsc2U6CiAgICAgICAgICAgICAgICAgY29ubiA9IHNl bGYubWFuYWdlci5jb25uZWN0aW9uKHJvd1snbmFtZSddKQpkaWZmIC0tZ2l0 IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMv ZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL19faW5pdF9fLnB5IGIvd2Vi L3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvZnVuY3Rpb25zL19faW5pdF9fLnB5CmluZGV4IGFhZGQ0 NjYuLjgxMGJiNDkgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0 aW9ucy9fX2luaXRfXy5weQorKysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3Nl cnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlv bnMvX19pbml0X18ucHkKQEAgLTkwMiwyNiArOTAyLDM1IEBAIGNsYXNzIEZ1 bmN0aW9uVmlldyhQR0NoaWxkTm9kZVZpZXcsIERhdGFUeXBlUmVhZGVyKToK ICAgICAgICAgIiIiCiAgICAgICAgIHJlc3BfZGF0YSA9IHNlbGYuX2ZldGNo X3Byb3BlcnRpZXMoZ2lkLCBzaWQsIGRpZCwgc2NpZCwgZm5pZCkKICAgICAg ICAgIyBGZXRjaCB0aGUgZnVuY3Rpb24gZGVmaW5pdGlvbi4KLSAgICAgICAg YXJncyA9ICcnCisgICAgICAgIGFyZ3MgPSB1JycKKyAgICAgICAgYXJnc193 aXRob3V0X25hbWUgPSB1JycKICAgICAgICAgY250ID0gMQotICAgICAgICBp ZiAnYXJndW1lbnRzJyBpbiByZXNwX2RhdGE6Ci0gICAgICAgICAgICBmb3Ig YSBpbiByZXNwX2RhdGFbJ2FyZ3VtZW50cyddOgotICAgICAgICAgICAgICAg IGlmICgoJ2FyZ21vZGUnIGluIGEgYW5kIGFbJ2FyZ21vZGUnXSAhPSAnT1VU JyBhbmQKLSAgICAgICAgICAgICAgICAgICAgYVsnYXJnbW9kZSddIGlzIG5v dCBOb25lCi0gICAgICAgICAgICAgICAgICAgICAgKSBvciAnYXJnbm9kZScg bm90IGluIGEpOgotICAgICAgICAgICAgICAgICAgICBpZiAnYXJnbW9kZScg aW4gYToKLSAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MgKz0gYVsnYXJn bW9kZSddICsgIiAiCi0gICAgICAgICAgICAgICAgICAgIGlmICdhcmduYW1l JyBpbiBhIGFuZCBhWydhcmduYW1lJ10gIT0gJydcCi0gICAgICAgICAgICAg ICAgICAgICAgICAgICAgYW5kIGFbJ2FyZ25hbWUnXSBpcyBub3QgTm9uZToK LSAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MgKz0gc2VsZi5xdElkZW50 KAotICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNlbGYuY29ubiwgYVsn YXJnbmFtZSddKSArICIgIgotICAgICAgICAgICAgICAgICAgICBpZiAnYXJn dHlwZScgaW4gYToKLSAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MgKz0g YVsnYXJndHlwZSddCi0gICAgICAgICAgICAgICAgICAgIGlmIGNudCA8IGxl bihyZXNwX2RhdGFbJ2FyZ3VtZW50cyddKToKLSAgICAgICAgICAgICAgICAg ICAgICAgIGFyZ3MgKz0gJywgJwotICAgICAgICAgICAgICAgIGNudCArPSAx CisgICAgICAgIGFyZ3NfbGlzdCA9IFtdCisgICAgICAgIGlmICdhcmd1bWVu dHMnIGluIHJlc3BfZGF0YSBhbmQgbGVuKHJlc3BfZGF0YVsnYXJndW1lbnRz J10pID4gMDoKKyAgICAgICAgICAgIGFyZ3NfbGlzdCA9IHJlc3BfZGF0YVsn YXJndW1lbnRzJ10KKyAgICAgICAgICAgIHJlc3BfZGF0YVsnYXJncyddID0g cmVzcF9kYXRhWydhcmd1bWVudHMnXQorCisgICAgICAgIGZvciBhIGluIGFy Z3NfbGlzdDoKKyAgICAgICAgICAgIGlmICgoJ2FyZ21vZGUnIGluIGEgYW5k IGFbJ2FyZ21vZGUnXSAhPSAnT1VUJyBhbmQKKyAgICAgICAgICAgICAgICAg ICAgICAgICBhWydhcmdtb2RlJ10gaXMgbm90IE5vbmUKKyAgICAgICAgICAg ICAgICAgKSBvciAnYXJnbW9kZScgbm90IGluIGEpOgorICAgICAgICAgICAg ICAgIGlmICdhcmdtb2RlJyBpbiBhOgorICAgICAgICAgICAgICAgICAgICBh cmdzICs9IGFbJ2FyZ21vZGUnXSArICIgIgorICAgICAgICAgICAgICAgICAg ICBhcmdzX3dpdGhvdXRfbmFtZSArPSBhWydhcmdtb2RlJ10gKyAiICIKKyAg ICAgICAgICAgICAgICBpZiAnYXJnbmFtZScgaW4gYSBhbmQgYVsnYXJnbmFt ZSddICE9ICcnIFwKKyAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBhWydh cmduYW1lJ10gaXMgbm90IE5vbmU6CisgICAgICAgICAgICAgICAgICAgIGFy Z3MgKz0gc2VsZi5xdElkZW50KAorICAgICAgICAgICAgICAgICAgICAgICAg c2VsZi5jb25uLCBhWydhcmduYW1lJ10pICsgIiAiCisgICAgICAgICAgICAg ICAgaWYgJ2FyZ3R5cGUnIGluIGE6CisgICAgICAgICAgICAgICAgICAgIGFy Z3MgKz0gYVsnYXJndHlwZSddCisgICAgICAgICAgICAgICAgICAgIGFyZ3Nf d2l0aG91dF9uYW1lICs9IGFbJ2FyZ3R5cGUnXQorICAgICAgICAgICAgICAg IGlmIGNudCA8IGxlbihhcmdzX2xpc3QpOgorICAgICAgICAgICAgICAgICAg ICBhcmdzICs9ICcsICcKKyAgICAgICAgICAgICAgICAgICAgYXJnc193aXRo b3V0X25hbWUgKz0gJywgJworICAgICAgICAgICAgY250ICs9IDEKIAogICAg ICAgICByZXNwX2RhdGFbJ2Z1bmNfYXJncyddID0gYXJncy5zdHJpcCgnICcp CisgICAgICAgIHJlc3BfZGF0YVsnZnVuY19hcmdzX3dpdGhvdXQnXSA9IGFy Z3Nfd2l0aG91dF9uYW1lLnN0cmlwKCcgJykKIAogICAgICAgICBpZiBzZWxm Lm5vZGVfdHlwZSA9PSAncHJvY2VkdXJlJzoKICAgICAgICAgICAgIG9iamVj dF90eXBlID0gJ3Byb2NlZHVyZScKQEAgLTk2MCw4ICs5NjksMTcgQEAgY2xh c3MgRnVuY3Rpb25WaWV3KFBHQ2hpbGROb2RlVmlldywgRGF0YVR5cGVSZWFk ZXIpOgogICAgICAgICAgICAgaWYgbm90IHN0YXR1czoKICAgICAgICAgICAg ICAgICByZXR1cm4gaW50ZXJuYWxfc2VydmVyX2Vycm9yKGVycm9ybXNnPXJl cykKIAotICAgICAgICAgICAgZnVuY19kZWYsIG5hbWUgPSByZXNbJ3Jvd3Mn XVswXQorICAgICAgICAgICAgbmFtZSA9IHJlc1sncm93cyddWzBdWyduYW1l J10KICAgICAgICAgICAgICMgQ3JlYXRlIG1vZGUKKyAgICAgICAgICAgIGlm IGhhc2F0dHIoc3RyLCAnZGVjb2RlJyk6CisgICAgICAgICAgICAgICAgaWYg cmVzcF9kYXRhWydwcm9zcmMnXToKKyAgICAgICAgICAgICAgICAgICAgcmVz cF9kYXRhWydwcm9zcmMnXSA9IHJlc3BfZGF0YVsncHJvc3JjJ10uZGVjb2Rl KAorICAgICAgICAgICAgICAgICAgICAgICAgJ3V0Zi04JworICAgICAgICAg ICAgICAgICAgICApCisgICAgICAgICAgICAgICAgaWYgcmVzcF9kYXRhWydw cm9zcmNfYyddOgorICAgICAgICAgICAgICAgICAgICByZXNwX2RhdGFbJ3By b3NyY19jJ10gPSByZXNwX2RhdGFbJ3Byb3NyY19jJ10uZGVjb2RlKAorICAg ICAgICAgICAgICAgICAgICAgICAgJ3V0Zi04JworICAgICAgICAgICAgICAg ICAgICApCiAgICAgICAgICAgICBmdW5jX2RlZiA9IHJlbmRlcl90ZW1wbGF0 ZSgiLyIuam9pbihbc2VsZi5zcWxfdGVtcGxhdGVfcGF0aCwKICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAnY3Jl YXRlLnNxbCddKSwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGRhdGE9cmVzcF9kYXRhLCBxdWVyeV90eXBlPSJjcmVhdGUiKQpA QCAtMTEzOCwyNSArMTE1NiwzNCBAQCBjbGFzcyBGdW5jdGlvblZpZXcoUEdD aGlsZE5vZGVWaWV3LCBEYXRhVHlwZVJlYWRlcik6CiAgICAgICAgICAgICAg ICAgICAgIGRhdGFbJ2FjbCddID0gcGFyc2VfcHJpdl90b19kYihkYXRhWydh Y2wnXSwgWyJYIl0pCiAKICAgICAgICAgICAgICAgICBhcmdzID0gdScnCisg ICAgICAgICAgICAgICAgYXJnc193aXRob3V0X25hbWUgPSB1JycKICAgICAg ICAgICAgICAgICBjbnQgPSAxCi0gICAgICAgICAgICAgICAgaWYgJ2FyZ3Vt ZW50cycgaW4gZGF0YToKLSAgICAgICAgICAgICAgICAgICAgZm9yIGEgaW4g ZGF0YVsnYXJndW1lbnRzJ106Ci0gICAgICAgICAgICAgICAgICAgICAgICBp ZiAoKCdhcmdtb2RlJyBpbiBhIGFuZCBhWydhcmdtb2RlJ10gIT0gJ09VVCcg YW5kCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgYVsn YXJnbW9kZSddIGlzIG5vdCBOb25lCi0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICkgb3IgJ2FyZ25vZGUnIG5vdCBpbiBhKToKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICBpZiAnYXJnbW9kZScgaW4gYToKLSAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgYXJncyArPSBhWydhcmdtb2RlJ10g KyAiICIKLSAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiAnYXJnbmFt ZScgaW4gYSBhbmQgYVsnYXJnbmFtZSddICE9ICcnIFwKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGFuZCBhWydhcmduYW1lJ10gaXMg bm90IE5vbmU6Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFy Z3MgKz0gc2VsZi5xdElkZW50KAotICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgc2VsZi5jb25uLCBhWydhcmduYW1lJ10pICsgIiAiCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgJ2FyZ3R5cGUnIGluIGE6 Ci0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MgKz0gYVsn YXJndHlwZSddCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgY250 IDwgbGVuKGRhdGFbJ2FyZ3VtZW50cyddKToKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgYXJncyArPSAnLCAnCi0gICAgICAgICAgICAgICAg ICAgICAgICBjbnQgKz0gMQorICAgICAgICAgICAgICAgIGFyZ3NfbGlzdCA9 IFtdCisgICAgICAgICAgICAgICAgaWYgJ2FyZ3VtZW50cycgaW4gZGF0YSBh bmQgbGVuKGRhdGFbJ2FyZ3VtZW50cyddKSA+IDA6CisgICAgICAgICAgICAg ICAgICAgIGFyZ3NfbGlzdCA9IGRhdGFbJ2FyZ3VtZW50cyddCisgICAgICAg ICAgICAgICAgZWxpZiAnYXJncycgaW4gZGF0YSBhbmQgbGVuKGRhdGFbJ2Fy Z3MnXSkgPiAwOgorICAgICAgICAgICAgICAgICAgICBhcmdzX2xpc3QgPSBk YXRhWydhcmdzJ10KKyAgICAgICAgICAgICAgICBmb3IgYSBpbiBhcmdzX2xp c3Q6CisgICAgICAgICAgICAgICAgICAgIGlmICgoJ2FyZ21vZGUnIGluIGEg YW5kIGFbJ2FyZ21vZGUnXSAhPSAnT1VUJyBhbmQKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGFbJ2FyZ21vZGUnXSBpcyBub3QgTm9uZQor ICAgICAgICAgICAgICAgICAgICAgICAgICkgb3IgJ2FyZ21vZGUnIG5vdCBp biBhKToKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmICdhcmdtb2RlJyBp biBhOgorICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFyZ3MgKz0gYVsn YXJnbW9kZSddICsgIiAiCisgICAgICAgICAgICAgICAgICAgICAgICAgICAg YXJnc193aXRob3V0X25hbWUgKz0gYVsnYXJnbW9kZSddICsgIiAiCisgICAg ICAgICAgICAgICAgICAgICAgICBpZiAnYXJnbmFtZScgaW4gYSBhbmQgYVsn YXJnbmFtZSddICE9ICcnIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgYW5kIGFbJ2FyZ25hbWUnXSBpcyBub3QgTm9uZToKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICBhcmdzICs9IHNlbGYucXRJZGVudCgKKyAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2VsZi5jb25uLCBhWydh cmduYW1lJ10pICsgIiAiCisgICAgICAgICAgICAgICAgICAgICAgICBpZiAn YXJndHlwZScgaW4gYToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBh cmdzICs9IGFbJ2FyZ3R5cGUnXQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGFyZ3Nfd2l0aG91dF9uYW1lICs9IGFbJ2FyZ3R5cGUnXQorICAgICAg ICAgICAgICAgICAgICAgICAgaWYgY250IDwgbGVuKGFyZ3NfbGlzdCk6Cisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgYXJncyArPSAnLCAnCisgICAg ICAgICAgICAgICAgICAgICAgICAgICAgYXJnc193aXRob3V0X25hbWUgKz0g JywgJworICAgICAgICAgICAgICAgICAgICBjbnQgKz0gMQogCiAgICAgICAg ICAgICAgICAgZGF0YVsnZnVuY19hcmdzJ10gPSBhcmdzLnN0cmlwKCcgJykK KyAgICAgICAgICAgICAgICBkYXRhWydmdW5jX2FyZ3Nfd2l0aG91dCddID0g YXJnc193aXRob3V0X25hbWUuc3RyaXAoJyAnKQogICAgICAgICAgICAgICAg ICMgQ3JlYXRlIG1vZGUKICAgICAgICAgICAgICAgICBTUUwgPSByZW5kZXJf dGVtcGxhdGUoIi8iLmpvaW4oW3NlbGYuc3FsX3RlbXBsYXRlX3BhdGgsCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAnY3JlYXRlLnNxbCddKSwKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jy b3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFz L2Z1bmN0aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcGcvc3FsLzkuMV9wbHVz L2NyZWF0ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxh dGVzL2Z1bmN0aW9uL3BnL3NxbC85LjFfcGx1cy9jcmVhdGUuc3FsCmluZGV4 IGVmZDc3NzUuLjQ1NjZkMDYgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jy b3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFz L2Z1bmN0aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcGcvc3FsLzkuMV9wbHVz L2NyZWF0ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3Rl bXBsYXRlcy9mdW5jdGlvbi9wZy9zcWwvOS4xX3BsdXMvY3JlYXRlLnNxbApA QCAtNCwxOSArNCwxMCBAQAogeyUgc2V0IGlzX2NvbHVtbnMgPSBbXSAlfQog eyUgaWYgZGF0YSAlfQogQ1JFQVRFeyUgaWYgcXVlcnlfdHlwZSBpcyBkZWZp bmVkICV9e3snIE9SIFJFUExBQ0UnfX17JSBlbmRpZiAlfSBGVU5DVElPTiB7 eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEubmFtZSkg fX0oeyUgaWYgZGF0YS5hcmdzICV9Ci17JSBmb3IgcCBpbiBkYXRhLmFyZ3Mg JX17JSBpZiBwLmFyZ21vZGUgJX17e3AuYXJnbW9kZX19IHslIGVuZGlmICV9 eyUgaWYgcC5hcmduYW1lICV9e3sgY29ubnxxdElkZW50KHAuYXJnbmFtZSl9 fXslIGVuZGlmICV9eyUgaWYgcC5hcmd0eXBlICV9e3sgY29ubnxxdElkZW50 KHAuYXJndHlwZSkgfX17JSBlbmRpZiAlfXslIGlmIHAuYXJnZGVmdmFsICV9 IERFRkFVTFQge3twLmFyZ2RlZnZhbH19eyUgZW5kaWYgJX0KK3slIGZvciBw IGluIGRhdGEuYXJncyAlfXslIGlmIHAuYXJnbW9kZSAlfXt7cC5hcmdtb2Rl fX0geyUgZW5kaWYgJX17JSBpZiBwLmFyZ25hbWUgJX17eyBjb25ufHF0SWRl bnQocC5hcmduYW1lKX19eyUgZW5kaWYgJX17JSBpZiBwLmFyZ3R5cGUgJX17 eyBjb25ufHF0VHlwZUlkZW50KHAuYXJndHlwZSkgfX17JSBlbmRpZiAlfXsl IGlmIHAuYXJnZGVmdmFsICV9IERFRkFVTFQge3twLmFyZ2RlZnZhbH19eyUg ZW5kaWYgJX0KIHslIGlmIG5vdCBsb29wLmxhc3QgJX0seyUgZW5kaWYgJX0K IHslIGVuZGZvciAlfQogeyUgZW5kaWYgLSV9Ci17JSBpZiBkYXRhLmZ1bmNf YXJncyAlfQoteyUgc2V0IGZ1bmNfYXJncyA9IGRhdGEuZnVuY19hcmdzLnNw bGl0KCcsJykgJX0KLQoteyUgZm9yIGYgaW4gZnVuY19hcmdzICV9Ci0gICAg e3sgZnx0cmltIH19eyUgaWYgbm90IGxvb3AubGFzdCAlfSwKLXslIGVuZGlm ICV9Ci17JSBlbmRmb3IgJX0KLQoteyUgZW5kaWYgJX0KICkKICAgICBSRVRV Uk5TeyUgaWYgZGF0YS5wcm9yZXRzZXQgJX0gU0VUT0Z7JSBlbmRpZiAlfSB7 eyBjb25ufHF0VHlwZUlkZW50KGRhdGEucHJvcmV0dHlwZW5hbWUpIH19CiAg ICAgTEFOR1VBR0Uge3sgZGF0YS5sYW5uYW1lfHF0TGl0ZXJhbCB9fQpAQCAt MzksMjQgKzMwLDI0IEBAICRmdW5jdGlvbiQKICRmdW5jdGlvbiR7JSBlbmRp ZiAlfTsKIHslIGlmIGRhdGEuZnVuY293bmVyICV9CiAKLUFMVEVSIEZVTkNU SU9OIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5u YW1lKSB9fSh7e2RhdGEuZnVuY19hcmdzfX0pCitBTFRFUiBGVU5DVElPTiB7 eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEubmFtZSkg fX0oe3tkYXRhLmZ1bmNfYXJnc193aXRob3V0fX0pCiAgICAgT1dORVIgVE8g e3sgZGF0YS5mdW5jb3duZXIgfX07CiB7JSBlbmRpZiAlfQogeyUgaWYgZGF0 YS5hY2wgJX0KIHslIGZvciBwIGluIGRhdGEuYWNsICV9CiAKLXt7IFBSSVZJ TEVHRS5TRVQoY29ubiwgIkZVTkNUSU9OIiwgcC5ncmFudGVlLCBkYXRhLm5h bWUsIHAud2l0aG91dF9ncmFudCwgcC53aXRoX2dyYW50LCBkYXRhLnByb25h bWVzcGFjZSwgZGF0YS5mdW5jX2FyZ3MpfX0KK3t7IFBSSVZJTEVHRS5TRVQo Y29ubiwgIkZVTkNUSU9OIiwgcC5ncmFudGVlLCBkYXRhLm5hbWUsIHAud2l0 aG91dF9ncmFudCwgcC53aXRoX2dyYW50LCBkYXRhLnByb25hbWVzcGFjZSwg ZGF0YS5mdW5jX2FyZ3Nfd2l0aG91dCl9fQogeyUgZW5kZm9yICV9eyUgZW5k aWYgJX0KIHslIGlmIGRhdGEuZGVzY3JpcHRpb24gJX0KIAotQ09NTUVOVCBP TiBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2Us IGRhdGEubmFtZSkgfX0oe3tkYXRhLmZ1bmNfYXJnc319KQotICAgIElTICd7 eyBkYXRhLmRlc2NyaXB0aW9uIH19JzsKK0NPTU1FTlQgT04gRlVOQ1RJT04g e3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUp IH19KHt7ZGF0YS5mdW5jX2FyZ3Nfd2l0aG91dH19KQorICAgIElTIHt7IGRh dGEuZGVzY3JpcHRpb258cXRMaXRlcmFsICB9fTsKIHslIGVuZGlmIC0lfQog eyUgaWYgZGF0YS5zZWNsYWJlbHMgJX0KIHslIGZvciByIGluIGRhdGEuc2Vj bGFiZWxzICV9CiB7JSBpZiByLmxhYmVsIGFuZCByLnByb3ZpZGVyICV9CiAK LXt7IFNFQ0xBQkVMLlNFVChjb25uLCAnRlVOQ1RJT04nLCBkYXRhLm5hbWUs IHIucHJvdmlkZXIsIHIubGFiZWwsIGRhdGEucHJvbmFtZXNwYWNlLCBkYXRh LmZ1bmNfYXJncykgfX0KK3t7IFNFQ0xBQkVMLlNFVChjb25uLCAnRlVOQ1RJ T04nLCBkYXRhLm5hbWUsIHIucHJvdmlkZXIsIHIubGFiZWwsIGRhdGEucHJv bmFtZXNwYWNlLCBkYXRhLmZ1bmNfYXJnc193aXRob3V0KSB9fQogeyUgZW5k aWYgJX0KIHslIGVuZGZvciAlfQogeyUgZW5kaWYgLSV9CmRpZmYgLS1naXQg YS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9k YXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL2Z1bmN0aW9u L3BnL3NxbC85LjJfcGx1cy9jcmVhdGUuc3FsIGIvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMv ZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5jdGlvbi9wZy9zcWwvOS4yX3BsdXMv Y3JlYXRlLnNxbAppbmRleCA2MzU4NWFkLi5kZGEzOWNmIDEwMDY0NAotLS0g YS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9k YXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL2Z1bmN0aW9u L3BnL3NxbC85LjJfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWlu L2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hl bWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcGcvc3FsLzkuMl9w bHVzL2NyZWF0ZS5zcWwKQEAgLTQsMTkgKzQsMTAgQEAKIHslIHNldCBpc19j b2x1bW5zID0gW10gJX0KIHslIGlmIGRhdGEgJX0KIENSRUFURXslIGlmIHF1 ZXJ5X3R5cGUgaXMgZGVmaW5lZCAlfXt7JyBPUiBSRVBMQUNFJ319eyUgZW5k aWYgJX0gRlVOQ1RJT04ge3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNw YWNlLCBkYXRhLm5hbWUpIH19KHslIGlmIGRhdGEuYXJncyAlfQoteyUgZm9y IHAgaW4gZGF0YS5hcmdzICV9eyUgaWYgcC5hcmdtb2RlICV9e3twLmFyZ21v ZGV9fSB7JSBlbmRpZiAlfXslIGlmIHAuYXJnbmFtZSAlfXt7IGNvbm58cXRJ ZGVudChwLmFyZ25hbWUpfX17JSBlbmRpZiAlfXslIGlmIHAuYXJndHlwZSAl fXt7IGNvbm58cXRJZGVudChwLmFyZ3R5cGUpIH19eyUgZW5kaWYgJX17JSBp ZiBwLmFyZ2RlZnZhbCAlfSBERUZBVUxUIHt7cC5hcmdkZWZ2YWx9fXslIGVu ZGlmICV9Cit7JSBmb3IgcCBpbiBkYXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21v ZGUgJX17e3AuYXJnbW9kZX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmduYW1l ICV9e3sgY29ubnxxdElkZW50KHAuYXJnbmFtZSl9fSB7JSBlbmRpZiAlfXsl IGlmIHAuYXJndHlwZSAlfXt7IGNvbm58cXRUeXBlSWRlbnQocC5hcmd0eXBl KSB9fXslIGVuZGlmICV9eyUgaWYgcC5hcmdkZWZ2YWwgJX0gREVGQVVMVCB7 e3AuYXJnZGVmdmFsfX17JSBlbmRpZiAlfQogeyUgaWYgbm90IGxvb3AubGFz dCAlfSx7JSBlbmRpZiAlfQogeyUgZW5kZm9yICV9CiB7JSBlbmRpZiAtJX0K LXslIGlmIGRhdGEuZnVuY19hcmdzICV9Ci17JSBzZXQgZnVuY19hcmdzID0g ZGF0YS5mdW5jX2FyZ3Muc3BsaXQoJywnKSAlfQotCi17JSBmb3IgZiBpbiBm dW5jX2FyZ3MgJX0KLSAgICB7eyBmfHRyaW0gfX17JSBpZiBub3QgbG9vcC5s YXN0ICV9LAoteyUgZW5kaWYgJX0KLXslIGVuZGZvciAlfQotCi17JSBlbmRp ZiAlfQogKQogICAgIFJFVFVSTlN7JSBpZiBkYXRhLnByb3JldHNldCAlfSBT RVRPRnslIGVuZGlmICV9IHt7IGNvbm58cXRUeXBlSWRlbnQoZGF0YS5wcm9y ZXR0eXBlbmFtZSkgfX0KICAgICBMQU5HVUFHRSB7eyBkYXRhLmxhbm5hbWV8 cXRMaXRlcmFsIH19CkBAIC00MywyNSArMzQsMjUgQEAgJGZ1bmN0aW9uJAog JGZ1bmN0aW9uJHslIGVuZGlmIC0lfTsKIHslIGlmIGRhdGEuZnVuY293bmVy ICV9CiAKLUFMVEVSIEZVTkNUSU9OIHt7IGNvbm58cXRJZGVudChkYXRhLnBy b25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9fSh7e2RhdGEuZnVuY19hcmdzfX0p CitBTFRFUiBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1l c3BhY2UsIGRhdGEubmFtZSkgfX0oe3tkYXRhLmZ1bmNfYXJnc193aXRob3V0 fX0pCiAgICAgT1dORVIgVE8ge3sgZGF0YS5mdW5jb3duZXIgfX07CiB7JSBl bmRpZiAtJX0KIHslIGlmIGRhdGEuYWNsICV9CiB7JSBmb3IgcCBpbiBkYXRh LmFjbCAlfQogCi17eyBQUklWSUxFR0UuU0VUKGNvbm4sICJGVU5DVElPTiIs IHAuZ3JhbnRlZSwgZGF0YS5uYW1lLCBwLndpdGhvdXRfZ3JhbnQsIHAud2l0 aF9ncmFudCwgZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEuZnVuY19hcmdzKX19 Cit7eyBQUklWSUxFR0UuU0VUKGNvbm4sICJGVU5DVElPTiIsIHAuZ3JhbnRl ZSwgZGF0YS5uYW1lLCBwLndpdGhvdXRfZ3JhbnQsIHAud2l0aF9ncmFudCwg ZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEuZnVuY19hcmdzX3dpdGhvdXQpfX0K IHslIGVuZGZvciAtJX0KIHslIGVuZGlmIC0lfQogeyUgaWYgZGF0YS5kZXNj cmlwdGlvbiAlfQogCi1DT01NRU5UIE9OIEZVTkNUSU9OIHt7IGNvbm58cXRJ ZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9fSh7e2RhdGEu ZnVuY19hcmdzfX0pCi0gICAgSVMgJ3t7IGRhdGEuZGVzY3JpcHRpb24gfX0n OworQ09NTUVOVCBPTiBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5w cm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX0oe3tkYXRhLmZ1bmNfYXJnc193 aXRob3V0fX0pCisgICAgSVMge3sgZGF0YS5kZXNjcmlwdGlvbnxxdExpdGVy YWwgIH19OwogeyUgZW5kaWYgLSV9CiB7JSBpZiBkYXRhLnNlY2xhYmVscyAl fQogeyUgZm9yIHIgaW4gZGF0YS5zZWNsYWJlbHMgJX0KIHslIGlmIHIubGFi ZWwgYW5kIHIucHJvdmlkZXIgJX0KIAote3sgU0VDTEFCRUwuU0VUKGNvbm4s ICdGVU5DVElPTicsIGRhdGEubmFtZSwgci5wcm92aWRlciwgci5sYWJlbCwg ZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEuZnVuY19hcmdzKSB9fQore3sgU0VD TEFCRUwuU0VUKGNvbm4sICdGVU5DVElPTicsIGRhdGEubmFtZSwgci5wcm92 aWRlciwgci5sYWJlbCwgZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEuZnVuY19h cmdzX3dpdGhvdXQpIH19CiB7JSBlbmRpZiAlfQogeyUgZW5kZm9yICV9CiB7 JSBlbmRpZiAtJX0KZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0 aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcGcvc3FsLzkuNV9wbHVzL2NyZWF0 ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2Vy dmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL2Z1 bmN0aW9uL3BnL3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsCmluZGV4IDQ1YTlj NjEuLjA2NjgzMTMgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0 aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcGcvc3FsLzkuNV9wbHVzL2NyZWF0 ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBz L3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRl cy9mdW5jdGlvbi9wZy9zcWwvOS41X3BsdXMvY3JlYXRlLnNxbApAQCAtOCwx NSArOCw2IEBAIENSRUFURXslIGlmIHF1ZXJ5X3R5cGUgaXMgZGVmaW5lZCAl fXt7JyBPUiBSRVBMQUNFJ319eyUgZW5kaWYgJX0gRlVOQ1RJT04ge3sgY29u CiB7JSBpZiBub3QgbG9vcC5sYXN0ICV9LHslIGVuZGlmICV9CiB7JSBlbmRm b3IgJX0KIHslIGVuZGlmIC0lfQoteyUgaWYgZGF0YS5mdW5jX2FyZ3MgJX0K LXslIHNldCBmdW5jX2FyZ3MgPSBkYXRhLmZ1bmNfYXJncy5zcGxpdCgnLCcp ICV9Ci0KLXslIGZvciBmIGluIGZ1bmNfYXJncyAlfQotICAgIHt7IGZ8dHJp bSB9fXslIGlmIG5vdCBsb29wLmxhc3QgJX0sCi17JSBlbmRpZiAlfQoteyUg ZW5kZm9yICV9Ci0KLXslIGVuZGlmICV9CiApCiAgICAgUkVUVVJOU3slIGlm IGRhdGEucHJvcmV0c2V0ICV9IFNFVE9GeyUgZW5kaWYgJX0ge3sgY29ubnxx dFR5cGVJZGVudChkYXRhLnByb3JldHR5cGVuYW1lKSB9fQogICAgIExBTkdV QUdFIHt7IGRhdGEubGFubmFtZXxxdExpdGVyYWwgfX0KQEAgLTQzLDI0ICsz NCwyNCBAQCAkZnVuY3Rpb24kCiAkZnVuY3Rpb24keyUgZW5kaWYgLSV9Owog eyUgaWYgZGF0YS5mdW5jb3duZXIgJX0KIAotQUxURVIgRlVOQ1RJT04ge3sg Y29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19 KHt7ZGF0YS5mdW5jX2FyZ3N9fSkKK0FMVEVSIEZVTkNUSU9OIHt7IGNvbm58 cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9fSh7e2Rh dGEuZnVuY19hcmdzX3dpdGhvdXR9fSkKICAgICBPV05FUiBUTyB7eyBkYXRh LmZ1bmNvd25lciB9fTsKIHslIGVuZGlmIC0lfQogeyUgaWYgZGF0YS5hY2wg JX0KIHslIGZvciBwIGluIGRhdGEuYWNsICV9CiAKLXt7IFBSSVZJTEVHRS5T RVQoY29ubiwgIkZVTkNUSU9OIiwgcC5ncmFudGVlLCBkYXRhLm5hbWUsIHAu d2l0aG91dF9ncmFudCwgcC53aXRoX2dyYW50LCBkYXRhLnByb25hbWVzcGFj ZSwgZGF0YS5mdW5jX2FyZ3MpfX0KK3t7IFBSSVZJTEVHRS5TRVQoY29ubiwg IkZVTkNUSU9OIiwgcC5ncmFudGVlLCBkYXRhLm5hbWUsIHAud2l0aG91dF9n cmFudCwgcC53aXRoX2dyYW50LCBkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5m dW5jX2FyZ3Nfd2l0aG91dCl9fQogeyUgZW5kZm9yICV9eyUgZW5kaWYgJX0K IHslIGlmIGRhdGEuZGVzY3JpcHRpb24gJX0KIAotQ09NTUVOVCBPTiBGVU5D VElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEu bmFtZSkgfX0oe3tkYXRhLmZ1bmNfYXJnc319KQotICAgIElTICd7eyBkYXRh LmRlc2NyaXB0aW9uIH19JzsKK0NPTU1FTlQgT04gRlVOQ1RJT04ge3sgY29u bnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19KHt7 ZGF0YS5mdW5jX2FyZ3Nfd2l0aG91dH19KQorICAgIElTIHt7IGRhdGEuZGVz Y3JpcHRpb258cXRMaXRlcmFsICB9fTsKIHslIGVuZGlmIC0lfQogeyUgaWYg ZGF0YS5zZWNsYWJlbHMgJX0KIHslIGZvciByIGluIGRhdGEuc2VjbGFiZWxz ICV9CiB7JSBpZiByLmxhYmVsIGFuZCByLnByb3ZpZGVyICV9CiAKLXt7IFNF Q0xBQkVMLlNFVChjb25uLCAnRlVOQ1RJT04nLCBkYXRhLm5hbWUsIHIucHJv dmlkZXIsIHIubGFiZWwsIGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLmZ1bmNf YXJncykgfX0KK3t7IFNFQ0xBQkVMLlNFVChjb25uLCAnRlVOQ1RJT04nLCBk YXRhLm5hbWUsIHIucHJvdmlkZXIsIHIubGFiZWwsIGRhdGEucHJvbmFtZXNw YWNlLCBkYXRhLmZ1bmNfYXJnc193aXRob3V0KSB9fQogeyUgZW5kaWYgJX0K IHslIGVuZGZvciAlfQogeyUgZW5kaWYgLSV9CmRpZmYgLS1naXQgYS93ZWIv cGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFz ZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL2Z1bmN0aW9uL3BwYXMv c3FsLzkuMV9wbHVzL2NyZWF0ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2Vy L3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5j dGlvbnMvdGVtcGxhdGVzL2Z1bmN0aW9uL3BwYXMvc3FsLzkuMV9wbHVzL2Ny ZWF0ZS5zcWwKaW5kZXggZWZkNzc3NS4uMTA1ODljZSAxMDA2NDQKLS0tIGEv d2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0 YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5jdGlvbi9w cGFzL3NxbC85LjFfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWlu L2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hl bWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcHBhcy9zcWwvOS4x X3BsdXMvY3JlYXRlLnNxbApAQCAtNCwxOSArNCwxMCBAQAogeyUgc2V0IGlz X2NvbHVtbnMgPSBbXSAlfQogeyUgaWYgZGF0YSAlfQogQ1JFQVRFeyUgaWYg cXVlcnlfdHlwZSBpcyBkZWZpbmVkICV9e3snIE9SIFJFUExBQ0UnfX17JSBl bmRpZiAlfSBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1l c3BhY2UsIGRhdGEubmFtZSkgfX0oeyUgaWYgZGF0YS5hcmdzICV9Ci17JSBm b3IgcCBpbiBkYXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUgJX17e3AuYXJn bW9kZX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9e3sgY29ubnxx dElkZW50KHAuYXJnbmFtZSl9fXslIGVuZGlmICV9eyUgaWYgcC5hcmd0eXBl ICV9e3sgY29ubnxxdElkZW50KHAuYXJndHlwZSkgfX17JSBlbmRpZiAlfXsl IGlmIHAuYXJnZGVmdmFsICV9IERFRkFVTFQge3twLmFyZ2RlZnZhbH19eyUg ZW5kaWYgJX0KK3slIGZvciBwIGluIGRhdGEuYXJncyAlfXslIGlmIHAuYXJn bW9kZSAlfXt7cC5hcmdtb2RlfX0geyUgZW5kaWYgJX17JSBpZiBwLmFyZ25h bWUgJX17eyBjb25ufHF0SWRlbnQocC5hcmduYW1lKX19IHslIGVuZGlmICV9 eyUgaWYgcC5hcmd0eXBlICV9e3sgY29ubnxxdFR5cGVJZGVudChwLmFyZ3R5 cGUpIH19eyUgZW5kaWYgJX17JSBpZiBwLmFyZ2RlZnZhbCAlfSBERUZBVUxU IHt7cC5hcmdkZWZ2YWx9fXslIGVuZGlmICV9CiB7JSBpZiBub3QgbG9vcC5s YXN0ICV9LHslIGVuZGlmICV9CiB7JSBlbmRmb3IgJX0KIHslIGVuZGlmIC0l fQoteyUgaWYgZGF0YS5mdW5jX2FyZ3MgJX0KLXslIHNldCBmdW5jX2FyZ3Mg PSBkYXRhLmZ1bmNfYXJncy5zcGxpdCgnLCcpICV9Ci0KLXslIGZvciBmIGlu IGZ1bmNfYXJncyAlfQotICAgIHt7IGZ8dHJpbSB9fXslIGlmIG5vdCBsb29w Lmxhc3QgJX0sCi17JSBlbmRpZiAlfQoteyUgZW5kZm9yICV9Ci0KLXslIGVu ZGlmICV9CiApCiAgICAgUkVUVVJOU3slIGlmIGRhdGEucHJvcmV0c2V0ICV9 IFNFVE9GeyUgZW5kaWYgJX0ge3sgY29ubnxxdFR5cGVJZGVudChkYXRhLnBy b3JldHR5cGVuYW1lKSB9fQogICAgIExBTkdVQUdFIHt7IGRhdGEubGFubmFt ZXxxdExpdGVyYWwgfX0KQEAgLTM5LDI0ICszMCwyNCBAQCAkZnVuY3Rpb24k CiAkZnVuY3Rpb24keyUgZW5kaWYgJX07CiB7JSBpZiBkYXRhLmZ1bmNvd25l ciAlfQogCi1BTFRFUiBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5w cm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX0oe3tkYXRhLmZ1bmNfYXJnc319 KQorQUxURVIgRlVOQ1RJT04ge3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFt ZXNwYWNlLCBkYXRhLm5hbWUpIH19KHt7ZGF0YS5mdW5jX2FyZ3Nfd2l0aG91 dH19KQogICAgIE9XTkVSIFRPIHt7IGRhdGEuZnVuY293bmVyIH19OwogeyUg ZW5kaWYgJX0KIHslIGlmIGRhdGEuYWNsICV9CiB7JSBmb3IgcCBpbiBkYXRh LmFjbCAlfQogCi17eyBQUklWSUxFR0UuU0VUKGNvbm4sICJGVU5DVElPTiIs IHAuZ3JhbnRlZSwgZGF0YS5uYW1lLCBwLndpdGhvdXRfZ3JhbnQsIHAud2l0 aF9ncmFudCwgZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEuZnVuY19hcmdzKX19 Cit7eyBQUklWSUxFR0UuU0VUKGNvbm4sICJGVU5DVElPTiIsIHAuZ3JhbnRl ZSwgZGF0YS5uYW1lLCBwLndpdGhvdXRfZ3JhbnQsIHAud2l0aF9ncmFudCwg ZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEuZnVuY19hcmdzX3dpdGhvdXQpfX0K IHslIGVuZGZvciAlfXslIGVuZGlmICV9CiB7JSBpZiBkYXRhLmRlc2NyaXB0 aW9uICV9CiAKLUNPTU1FTlQgT04gRlVOQ1RJT04ge3sgY29ubnxxdElkZW50 KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19KHt7ZGF0YS5mdW5j X2FyZ3N9fSkKLSAgICBJUyAne3sgZGF0YS5kZXNjcmlwdGlvbiB9fSc7CitD T01NRU5UIE9OIEZVTkNUSU9OIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25h bWVzcGFjZSwgZGF0YS5uYW1lKSB9fSh7e2RhdGEuZnVuY19hcmdzX3dpdGhv dXR9fSkKKyAgICBJUyB7eyBkYXRhLmRlc2NyaXB0aW9ufHF0TGl0ZXJhbCAg fX07CiB7JSBlbmRpZiAtJX0KIHslIGlmIGRhdGEuc2VjbGFiZWxzICV9CiB7 JSBmb3IgciBpbiBkYXRhLnNlY2xhYmVscyAlfQogeyUgaWYgci5sYWJlbCBh bmQgci5wcm92aWRlciAlfQogCi17eyBTRUNMQUJFTC5TRVQoY29ubiwgJ0ZV TkNUSU9OJywgZGF0YS5uYW1lLCByLnByb3ZpZGVyLCByLmxhYmVsLCBkYXRh LnByb25hbWVzcGFjZSwgZGF0YS5mdW5jX2FyZ3MpIH19Cit7eyBTRUNMQUJF TC5TRVQoY29ubiwgJ0ZVTkNUSU9OJywgZGF0YS5uYW1lLCByLnByb3ZpZGVy LCByLmxhYmVsLCBkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5mdW5jX2FyZ3Nf d2l0aG91dCkgfX0KIHslIGVuZGlmICV9CiB7JSBlbmRmb3IgJX0KIHslIGVu ZGlmIC0lfQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2 ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25z L3RlbXBsYXRlcy9mdW5jdGlvbi9wcGFzL3NxbC85LjJfcGx1cy9jcmVhdGUu c3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZl cnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5j dGlvbi9wcGFzL3NxbC85LjJfcGx1cy9jcmVhdGUuc3FsCmluZGV4IDUxNmU2 ZDQuLjc3ZWQyODQgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0 aW9ucy90ZW1wbGF0ZXMvZnVuY3Rpb24vcHBhcy9zcWwvOS4yX3BsdXMvY3Jl YXRlLnNxbAorKysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxh dGVzL2Z1bmN0aW9uL3BwYXMvc3FsLzkuMl9wbHVzL2NyZWF0ZS5zcWwKQEAg LTQsMTkgKzQsMTAgQEAKIHslIHNldCBpc19jb2x1bW5zID0gW10gJX0KIHsl IGlmIGRhdGEgJX0KIENSRUFURXslIGlmIHF1ZXJ5X3R5cGUgaXMgZGVmaW5l ZCAlfXt7JyBPUiBSRVBMQUNFJ319eyUgZW5kaWYgJX0gRlVOQ1RJT04ge3sg Y29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19 KHslIGlmIGRhdGEuYXJncyAlfQoteyUgZm9yIHAgaW4gZGF0YS5hcmdzICV9 eyUgaWYgcC5hcmdtb2RlICV9e3twLmFyZ21vZGV9fSB7JSBlbmRpZiAlfXsl IGlmIHAuYXJnbmFtZSAlfXt7IGNvbm58cXRJZGVudChwLmFyZ25hbWUpfX17 JSBlbmRpZiAlfXslIGlmIHAuYXJndHlwZSAlfXt7IGNvbm58cXRJZGVudChw LmFyZ3R5cGUpIH19eyUgZW5kaWYgJX17JSBpZiBwLmFyZ2RlZnZhbCAlfSBE RUZBVUxUIHt7cC5hcmdkZWZ2YWx9fXslIGVuZGlmICV9Cit7JSBmb3IgcCBp biBkYXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUgJX17e3AuYXJnbW9kZX19 IHslIGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9e3sgY29ubnxxdElkZW50 KHAuYXJnbmFtZSl9fSB7JSBlbmRpZiAlfXslIGlmIHAuYXJndHlwZSAlfXt7 IGNvbm58cXRUeXBlSWRlbnQocC5hcmd0eXBlKSB9fXslIGVuZGlmICV9eyUg aWYgcC5hcmdkZWZ2YWwgJX0gREVGQVVMVCB7e3AuYXJnZGVmdmFsfX17JSBl bmRpZiAlfQogeyUgaWYgbm90IGxvb3AubGFzdCAlfSx7JSBlbmRpZiAlfQog eyUgZW5kZm9yICV9CiB7JSBlbmRpZiAtJX0KLXslIGlmIGRhdGEuZnVuY19h cmdzICV9Ci17JSBzZXQgZnVuY19hcmdzID0gZGF0YS5mdW5jX2FyZ3Muc3Bs aXQoJywnKSAlfQotCi17JSBmb3IgZiBpbiBmdW5jX2FyZ3MgJX0KLSAgICB7 eyBmfHRyaW0gfX17JSBpZiBub3QgbG9vcC5sYXN0ICV9LAoteyUgZW5kaWYg JX0KLXslIGVuZGZvciAlfQotCi17JSBlbmRpZiAlfQogKQogICAgIFJFVFVS TlN7JSBpZiBkYXRhLnByb3JldHNldCAlfSBTRVRPRnslIGVuZGlmICV9IHt7 IGNvbm58cXRUeXBlSWRlbnQoZGF0YS5wcm9yZXR0eXBlbmFtZSkgfX0KICAg ICBMQU5HVUFHRSB7eyBkYXRhLmxhbm5hbWV8cXRMaXRlcmFsIH19CkBAIC00 MywyNSArMzQsMjUgQEAgJGZ1bmN0aW9uJAogJGZ1bmN0aW9uJHslIGVuZGlm IC0lfTsKIHslIGlmIGRhdGEuZnVuY293bmVyICV9CiAKLUFMVEVSIEZVTkNU SU9OIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5u YW1lKSB9fSh7e2RhdGEuZnVuY19hcmdzfX0pCitBTFRFUiBGVU5DVElPTiB7 eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEubmFtZSkg fX0oe3tkYXRhLmZ1bmNfYXJnc193aXRob3V0fX0pCiAgICAgT1dORVIgVE8g e3sgZGF0YS5mdW5jb3duZXIgfX07CiB7JSBlbmRpZiAtJX0KIHslIGlmIGRh dGEuYWNsICV9CiB7JSBmb3IgcCBpbiBkYXRhLmFjbCAlfQogCi17eyBQUklW SUxFR0UuU0VUKGNvbm4sICJGVU5DVElPTiIsIHAuZ3JhbnRlZSwgZGF0YS5u YW1lLCBwLndpdGhvdXRfZ3JhbnQsIHAud2l0aF9ncmFudCwgZGF0YS5wcm9u YW1lc3BhY2UsIGRhdGEuZnVuY19hcmdzKX19Cit7eyBQUklWSUxFR0UuU0VU KGNvbm4sICJGVU5DVElPTiIsIHAuZ3JhbnRlZSwgZGF0YS5uYW1lLCBwLndp dGhvdXRfZ3JhbnQsIHAud2l0aF9ncmFudCwgZGF0YS5wcm9uYW1lc3BhY2Us IGRhdGEuZnVuY19hcmdzX3dpdGhvdXRzKX19CiB7JSBlbmRmb3IgLSV9CiB7 JSBlbmRpZiAtJX0KIHslIGlmIGRhdGEuZGVzY3JpcHRpb24gJX0KIAotQ09N TUVOVCBPTiBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1l c3BhY2UsIGRhdGEubmFtZSkgfX0oe3tkYXRhLmZ1bmNfYXJnc319KQotICAg IElTICd7eyBkYXRhLmRlc2NyaXB0aW9uIH19JzsKK0NPTU1FTlQgT04gRlVO Q1RJT04ge3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRh Lm5hbWUpIH19KHt7ZGF0YS5mdW5jX2FyZ3Nfd2l0aG91dH19KQorICAgIElT IHt7IGRhdGEuZGVzY3JpcHRpb258cXRMaXRlcmFsICB9fTsKIHslIGVuZGlm IC0lfQogeyUgaWYgZGF0YS5zZWNsYWJlbHMgJX0KIHslIGZvciByIGluIGRh dGEuc2VjbGFiZWxzICV9CiB7JSBpZiByLmxhYmVsIGFuZCByLnByb3ZpZGVy ICV9CiAKLXt7IFNFQ0xBQkVMLlNFVChjb25uLCAnRlVOQ1RJT04nLCBkYXRh Lm5hbWUsIHIucHJvdmlkZXIsIHIubGFiZWwsIGRhdGEucHJvbmFtZXNwYWNl LCBkYXRhLmZ1bmNfYXJncykgfX0KK3t7IFNFQ0xBQkVMLlNFVChjb25uLCAn RlVOQ1RJT04nLCBkYXRhLm5hbWUsIHIucHJvdmlkZXIsIHIubGFiZWwsIGRh dGEucHJvbmFtZXNwYWNlLCBkYXRhLmZ1bmNfYXJnc193aXRob3V0cykgfX0K IHslIGVuZGlmICV9CiB7JSBlbmRmb3IgJX0KIHslIGVuZGlmIC0lfQpkaWZm IC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3Nl cnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9m dW5jdGlvbi9wcGFzL3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsIGIvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9mdW5jdGlvbi9wcGFzL3Nx bC85LjVfcGx1cy9jcmVhdGUuc3FsCmluZGV4IGI1YjcxNzYuLjc3MDM0YmUg MTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vw cy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0 ZXMvZnVuY3Rpb24vcHBhcy9zcWwvOS41X3BsdXMvY3JlYXRlLnNxbAorKysg Yi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9k YXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL2Z1bmN0aW9u L3BwYXMvc3FsLzkuNV9wbHVzL2NyZWF0ZS5zcWwKQEAgLTMxLDI0ICszMSwy NCBAQCAkZnVuY3Rpb24kCiAkZnVuY3Rpb24keyUgZW5kaWYgLSV9OwogeyUg aWYgZGF0YS5mdW5jb3duZXIgJX0KIAotQUxURVIgRlVOQ1RJT04ge3sgY29u bnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19KHt7 ZGF0YS5mdW5jX2FyZ3N9fSkKK0FMVEVSIEZVTkNUSU9OIHt7IGNvbm58cXRJ ZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9fSh7e2RhdGEu ZnVuY19hcmdzX3dpdGhvdXR9fSkKICAgICBPV05FUiBUTyB7eyBkYXRhLmZ1 bmNvd25lciB9fTsKIHslIGVuZGlmIC0lfQogeyUgaWYgZGF0YS5hY2wgJX0K IHslIGZvciBwIGluIGRhdGEuYWNsICV9CiAKLXt7IFBSSVZJTEVHRS5TRVQo Y29ubiwgIkZVTkNUSU9OIiwgcC5ncmFudGVlLCBkYXRhLm5hbWUsIHAud2l0 aG91dF9ncmFudCwgcC53aXRoX2dyYW50LCBkYXRhLnByb25hbWVzcGFjZSwg ZGF0YS5mdW5jX2FyZ3MpfX0KK3t7IFBSSVZJTEVHRS5TRVQoY29ubiwgIkZV TkNUSU9OIiwgcC5ncmFudGVlLCBkYXRhLm5hbWUsIHAud2l0aG91dF9ncmFu dCwgcC53aXRoX2dyYW50LCBkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5mdW5j X2FyZ3Nfd2l0aG91dCl9fQogeyUgZW5kZm9yICV9eyUgZW5kaWYgJX0KIHsl IGlmIGRhdGEuZGVzY3JpcHRpb24gJX0KIAotQ09NTUVOVCBPTiBGVU5DVElP TiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEubmFt ZSkgfX0oe3tkYXRhLmZ1bmNfYXJnc319KQotICAgIElTICd7eyBkYXRhLmRl c2NyaXB0aW9uIH19JzsKK0NPTU1FTlQgT04gRlVOQ1RJT04ge3sgY29ubnxx dElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19KHt7ZGF0 YS5mdW5jX2FyZ3Nfd2l0aG91dH19KQorICAgIElTIHt7IGRhdGEuZGVzY3Jp cHRpb258cXRMaXRlcmFsICB9fTsKIHslIGVuZGlmIC0lfQogeyUgaWYgZGF0 YS5zZWNsYWJlbHMgJX0KIHslIGZvciByIGluIGRhdGEuc2VjbGFiZWxzICV9 CiB7JSBpZiByLmxhYmVsIGFuZCByLnByb3ZpZGVyICV9CiAKLXt7IFNFQ0xB QkVMLlNFVChjb25uLCAnRlVOQ1RJT04nLCBkYXRhLm5hbWUsIHIucHJvdmlk ZXIsIHIubGFiZWwsIGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLmZ1bmNfYXJn cykgfX0KK3t7IFNFQ0xBQkVMLlNFVChjb25uLCAnRlVOQ1RJT04nLCBkYXRh Lm5hbWUsIHIucHJvdmlkZXIsIHIubGFiZWwsIGRhdGEucHJvbmFtZXNwYWNl LCBkYXRhLmZ1bmNfYXJnc193aXRob3V0KSB9fQogeyUgZW5kaWYgJX0KIHsl IGVuZGZvciAlfQogeyUgZW5kaWYgLSV9CmRpZmYgLS1naXQgYS93ZWIvcGdh ZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMv c2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3Byb2NlZHVyZS9wcGFzL3Nx bC85LjFfcGx1cy9jcmVhdGUuc3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9z ZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rp b25zL3RlbXBsYXRlcy9wcm9jZWR1cmUvcHBhcy9zcWwvOS4xX3BsdXMvY3Jl YXRlLnNxbAppbmRleCAwYThjYjIwLi4yMzVmOWM2IDEwMDY0NAotLS0gYS93 ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRh YmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3Byb2NlZHVyZS9w cGFzL3NxbC85LjFfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWlu L2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hl bWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvcHJvY2VkdXJlL3BwYXMvc3FsLzku MV9wbHVzL2NyZWF0ZS5zcWwKQEAgLTMsMTEgKzMsMTAgQEAKIHslIGltcG9y dCAnbWFjcm9zL2Z1bmN0aW9ucy92YXJpYWJsZS5tYWNyb3MnIGFzIFZBUklB QkxFICV9CiB7JSBzZXQgaXNfY29sdW1ucyA9IFtdICV9CiB7JSBpZiBkYXRh ICV9Ci1DUkVBVEUgT1IgUkVQTEFDRSBQUk9DRURVUkUge3sgY29ubnxxdElk ZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19eyUgaWYgZGF0 YS5hcmdzIGlzIGRlZmluZWQgb3IgZGF0YS5mdW5jX2FyZ3MgaXMgZGVmaW5l ZCAlfQotKHslIGZvciBwIGluIGRhdGEuYXJncyAlfXslIGlmIHAuYXJnbW9k ZSAlfXt7cC5hcmdtb2RlfX0geyUgZW5kaWYgJX17JSBpZiBwLmFyZ25hbWUg JX17eyBjb25ufHF0SWRlbnQocC5hcmduYW1lKX19IHslIGVuZGlmICV9eyUg aWYgcC5hcmd0eXBlICV9e3sgY29ubnxxdElkZW50KHAuYXJndHlwZSkgfX17 JSBlbmRpZiAlfXslIGlmIHAuYXJnZGVmdmFsICV9IERFRkFVTFQge3twLmFy Z2RlZnZhbH19eyUgZW5kaWYgJX0KK0NSRUFURSBPUiBSRVBMQUNFIFBST0NF RFVSRSB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEu bmFtZSkgfX17JSBpZiBkYXRhLmFyZ3MgaXMgZGVmaW5lZCAlfQorKHslIGZv ciBwIGluIGRhdGEuYXJncyAlfXslIGlmIHAuYXJnbW9kZSAlfXt7cC5hcmdt b2RlfX0geyUgZW5kaWYgJX17JSBpZiBwLmFyZ25hbWUgJX17eyBjb25ufHF0 SWRlbnQocC5hcmduYW1lKX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmd0eXBl ICV9e3sgY29ubnxxdFR5cGVJZGVudChwLmFyZ3R5cGUpIH19eyUgZW5kaWYg JX17JSBpZiBwLmFyZ2RlZnZhbCAlfSBERUZBVUxUIHt7cC5hcmdkZWZ2YWx9 fXslIGVuZGlmICV9CiB7JSBpZiBub3QgbG9vcC5sYXN0ICV9LCB7JSBlbmRp ZiAlfQogeyUgZW5kZm9yIC0lfQoteyUgaWYgZGF0YS5mdW5jX2FyZ3MgJX17 eyBkYXRhLmZ1bmNfYXJncyB9fXslIGVuZGlmICV9CiApeyUgZW5kaWYgJX0K IAogQVMKQEAgLTE1LDE4ICsxNCwxOCBAQCBBUwogeyUgaWYgZGF0YS5hY2wg YW5kIG5vdCBpc19zcWwgJX0KIHslIGZvciBwIGluIGRhdGEuYWNsICV9CiAK LXt7IFBSSVZJTEVHRS5TRVQoY29ubiwgIlBST0NFRFVSRSIsIHAuZ3JhbnRl ZSwgZGF0YS5uYW1lLCBwLndpdGhvdXRfZ3JhbnQsIHAud2l0aF9ncmFudCwg ZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEuZnVuY19hcmdzKX19Cit7eyBQUklW SUxFR0UuU0VUKGNvbm4sICJQUk9DRURVUkUiLCBwLmdyYW50ZWUsIGRhdGEu bmFtZSwgcC53aXRob3V0X2dyYW50LCBwLndpdGhfZ3JhbnQsIGRhdGEucHJv bmFtZXNwYWNlLCBkYXRhLmZ1bmNfYXJnc193aXRob3V0KX19CiB7JSBlbmRm b3IgJX17JSBlbmRpZiAlfQogeyUgaWYgZGF0YS5kZXNjcmlwdGlvbiAlfQog CiBDT01NRU5UIE9OIFBST0NFRFVSRSB7eyBjb25ufHF0SWRlbnQoZGF0YS5w cm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX0KLSAgICBJUyAne3sgZGF0YS5k ZXNjcmlwdGlvbiB9fSc7CisgICAgSVMge3sgZGF0YS5kZXNjcmlwdGlvbnxx dExpdGVyYWwgIH19OwogeyUgZW5kaWYgLSV9CiB7JSBpZiBkYXRhLnNlY2xh YmVscyAlfQogeyUgZm9yIHIgaW4gZGF0YS5zZWNsYWJlbHMgJX0KIHslIGlm IHIubGFiZWwgYW5kIHIucHJvdmlkZXIgJX0KIAote3sgU0VDTEFCRUwuU0VU KGNvbm4sICdQUk9DRURVUkUnLCBkYXRhLm5hbWUsIHIucHJvdmlkZXIsIHIu bGFiZWwsIGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLmZ1bmNfYXJncykgfX0K K3t7IFNFQ0xBQkVMLlNFVChjb25uLCAnUFJPQ0VEVVJFJywgZGF0YS5uYW1l LCByLnByb3ZpZGVyLCByLmxhYmVsLCBkYXRhLnByb25hbWVzcGFjZSwgZGF0 YS5mdW5jX2FyZ3Nfd2l0aG91dCkgfX0KIHslIGVuZGlmICV9CiB7JSBlbmRm b3IgJX0KIHslIGVuZGlmIC0lfQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4v YnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVt YXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9wcm9jZWR1cmUvcHBhcy9zcWwvOS4y X3BsdXMvY3JlYXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVy X2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90 ZW1wbGF0ZXMvcHJvY2VkdXJlL3BwYXMvc3FsLzkuMl9wbHVzL2NyZWF0ZS5z cWwKaW5kZXggMDczY2UxZC4uM2EyMTFmMiAxMDA2NDQKLS0tIGEvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy9wcm9jZWR1cmUvcHBhcy9z cWwvOS4yX3BsdXMvY3JlYXRlLnNxbAorKysgYi93ZWIvcGdhZG1pbi9icm93 c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9m dW5jdGlvbnMvdGVtcGxhdGVzL3Byb2NlZHVyZS9wcGFzL3NxbC85LjJfcGx1 cy9jcmVhdGUuc3FsCkBAIC0zLDExICszLDEwIEBACiB7JSBpbXBvcnQgJ21h Y3Jvcy9mdW5jdGlvbnMvdmFyaWFibGUubWFjcm9zJyBhcyBWQVJJQUJMRSAl fQogeyUgc2V0IGlzX2NvbHVtbnMgPSBbXSAlfQogeyUgaWYgZGF0YSAlfQot Q1JFQVRFIE9SIFJFUExBQ0UgUFJPQ0VEVVJFIHt7IGNvbm58cXRJZGVudChk YXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9fXslIGlmIGRhdGEuYXJn cyBpcyBkZWZpbmVkIG9yIGRhdGEuZnVuY19hcmdzIGlzIGRlZmluZWQgJX0K LSh7JSBmb3IgcCBpbiBkYXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUgJX17 e3AuYXJnbW9kZX19IHslIGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9e3sg Y29ubnxxdElkZW50KHAuYXJnbmFtZSl9fSB7JSBlbmRpZiAlfXslIGlmIHAu YXJndHlwZSAlfXt7IGNvbm58cXRJZGVudChwLmFyZ3R5cGUpIH19eyUgZW5k aWYgJX17JSBpZiBwLmFyZ2RlZnZhbCAlfSBERUZBVUxUIHt7cC5hcmdkZWZ2 YWx9fXslIGVuZGlmICV9CitDUkVBVEUgT1IgUkVQTEFDRSBQUk9DRURVUkUg e3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUp IH19eyUgaWYgZGF0YS5hcmdzIGlzIGRlZmluZWQgJX0KKyh7JSBmb3IgcCBp biBkYXRhLmFyZ3MgJX17JSBpZiBwLmFyZ21vZGUgJX17e3AuYXJnbW9kZX19 IHslIGVuZGlmICV9eyUgaWYgcC5hcmduYW1lICV9e3sgY29ubnxxdElkZW50 KHAuYXJnbmFtZSl9fSB7JSBlbmRpZiAlfXslIGlmIHAuYXJndHlwZSAlfXt7 IGNvbm58cXRUeXBlSWRlbnQocC5hcmd0eXBlKSB9fXslIGVuZGlmICV9eyUg aWYgcC5hcmdkZWZ2YWwgJX0gREVGQVVMVCB7e3AuYXJnZGVmdmFsfX17JSBl bmRpZiAlfQogIHslIGlmIG5vdCBsb29wLmxhc3QgJX0sIHslIGVuZGlmICV9 CiB7JSBlbmRmb3IgLSV9Ci17JSBpZiBkYXRhLmZ1bmNfYXJncyAlfXt7IGRh dGEuZnVuY19hcmdzIH19eyUgZW5kaWYgJX0KICl7JSBlbmRpZiAlfQogCiBB UwpAQCAtMTUsMTggKzE0LDE4IEBAIEFTCiB7JSBpZiBkYXRhLmFjbCBhbmQg bm90IGlzX3NxbCAlfQogeyUgZm9yIHAgaW4gZGF0YS5hY2wgJX0KIAote3sg UFJJVklMRUdFLlNFVChjb25uLCAiUFJPQ0VEVVJFIiwgcC5ncmFudGVlLCBk YXRhLm5hbWUsIHAud2l0aG91dF9ncmFudCwgcC53aXRoX2dyYW50LCBkYXRh LnByb25hbWVzcGFjZSwgZGF0YS5mdW5jX2FyZ3MpfX0KK3t7IFBSSVZJTEVH RS5TRVQoY29ubiwgIlBST0NFRFVSRSIsIHAuZ3JhbnRlZSwgZGF0YS5uYW1l LCBwLndpdGhvdXRfZ3JhbnQsIHAud2l0aF9ncmFudCwgZGF0YS5wcm9uYW1l c3BhY2UsIGRhdGEuZnVuY19hcmdzX3dpdGhvdXQpfX0KIHslIGVuZGZvciAl fXslIGVuZGlmICV9CiB7JSBpZiBkYXRhLmRlc2NyaXB0aW9uICV9CiAKIENP TU1FTlQgT04gUFJPQ0VEVVJFIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25h bWVzcGFjZSwgZGF0YS5uYW1lKSB9fQotICAgIElTICd7eyBkYXRhLmRlc2Ny aXB0aW9uIH19JzsKKyAgICBJUyB7eyBkYXRhLmRlc2NyaXB0aW9ufHF0TGl0 ZXJhbCAgfX07CiB7JSBlbmRpZiAtJX0KIHslIGlmIGRhdGEuc2VjbGFiZWxz ICV9CiB7JSBmb3IgciBpbiBkYXRhLnNlY2xhYmVscyAlfQogeyUgaWYgci5s YWJlbCBhbmQgci5wcm92aWRlciAlfQogCi17eyBTRUNMQUJFTC5TRVQoY29u biwgJ1BST0NFRFVSRScsIGRhdGEubmFtZSwgci5wcm92aWRlciwgci5sYWJl bCwgZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEuZnVuY19hcmdzKSB9fQore3sg U0VDTEFCRUwuU0VUKGNvbm4sICdQUk9DRURVUkUnLCBkYXRhLm5hbWUsIHIu cHJvdmlkZXIsIHIubGFiZWwsIGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLmZ1 bmNfYXJnc193aXRob3V0KSB9fQogeyUgZW5kaWYgJX0KIHslIGVuZGZvciAl fQogeyUgZW5kaWYgLSV9CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93 c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9m dW5jdGlvbnMvdGVtcGxhdGVzL3Byb2NlZHVyZS9wcGFzL3NxbC85LjVfcGx1 cy9jcmVhdGUuc3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3Jv dXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBs YXRlcy9wcm9jZWR1cmUvcHBhcy9zcWwvOS41X3BsdXMvY3JlYXRlLnNxbApp bmRleCBmMWE0MGFmLi5kMDY4MmFhIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1p bi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2No ZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3Byb2NlZHVyZS9wcGFzL3NxbC85 LjVfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0 aW9ucy90ZW1wbGF0ZXMvcHJvY2VkdXJlL3BwYXMvc3FsLzkuNV9wbHVzL2Ny ZWF0ZS5zcWwKQEAgLTMsMTEgKzMsMTAgQEAKIHslIGltcG9ydCAnbWFjcm9z L2Z1bmN0aW9ucy92YXJpYWJsZS5tYWNyb3MnIGFzIFZBUklBQkxFICV9CiB7 JSBzZXQgaXNfY29sdW1ucyA9IFtdICV9CiB7JSBpZiBkYXRhICV9Ci1DUkVB VEUgT1IgUkVQTEFDRSBQUk9DRURVUkUge3sgY29ubnxxdElkZW50KGRhdGEu cHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19eyUgaWYgZGF0YS5hcmdzIGlz IGRlZmluZWQgb3IgZGF0YS5mdW5jX2FyZ3MgaXMgZGVmaW5lZCAlfQorQ1JF QVRFIE9SIFJFUExBQ0UgUFJPQ0VEVVJFIHt7IGNvbm58cXRJZGVudChkYXRh LnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9fXslIGlmIGRhdGEuYXJncyBp cyBkZWZpbmVkICV9CiAoeyUgZm9yIHAgaW4gZGF0YS5hcmdzICV9eyUgaWYg cC5hcmdtb2RlICV9e3twLmFyZ21vZGV9fSB7JSBlbmRpZiAlfXslIGlmIHAu YXJnbmFtZSAlfXt7IGNvbm58cXRJZGVudChwLmFyZ25hbWUpfX0geyUgZW5k aWYgJX17JSBpZiBwLmFyZ3R5cGUgJX17eyBjb25ufHF0VHlwZUlkZW50KHAu YXJndHlwZSkgfX17JSBlbmRpZiAlfXslIGlmIHAuYXJnZGVmdmFsICV9IERF RkFVTFQge3twLmFyZ2RlZnZhbH19eyUgZW5kaWYgJX0KIHslIGlmIG5vdCBs b29wLmxhc3QgJX0sIHslIGVuZGlmICV9CiB7JSBlbmRmb3IgLSV9Ci17JSBp ZiBkYXRhLmZ1bmNfYXJncyAlfXt7IGRhdGEuZnVuY19hcmdzIH19eyUgZW5k aWYgJX0KICl7JSBlbmRpZiAlfQogeyUgaWYgcXVlcnlfdHlwZSAhPSAnY3Jl YXRlJyAlfQogCkBAIC0yNywxOCArMjYsMTggQEAgQVMKIHslIGlmIGRhdGEu YWNsIGFuZCBub3QgaXNfc3FsICV9CiB7JSBmb3IgcCBpbiBkYXRhLmFjbCAl fQogCi17eyBQUklWSUxFR0UuU0VUKGNvbm4sICJQUk9DRURVUkUiLCBwLmdy YW50ZWUsIGRhdGEubmFtZSwgcC53aXRob3V0X2dyYW50LCBwLndpdGhfZ3Jh bnQsIGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLmZ1bmNfYXJncyl9fQore3sg UFJJVklMRUdFLlNFVChjb25uLCAiUFJPQ0VEVVJFIiwgcC5ncmFudGVlLCBk YXRhLm5hbWUsIHAud2l0aG91dF9ncmFudCwgcC53aXRoX2dyYW50LCBkYXRh LnByb25hbWVzcGFjZSwgZGF0YS5mdW5jX2FyZ3Nfd2l0aG91dCl9fQogeyUg ZW5kZm9yICV9eyUgZW5kaWYgJX0KIHslIGlmIGRhdGEuZGVzY3JpcHRpb24g JX0KIAogQ09NTUVOVCBPTiBQUk9DRURVUkUge3sgY29ubnxxdElkZW50KGRh dGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19Ci0gICAgSVMgJ3t7IGRh dGEuZGVzY3JpcHRpb24gfX0nOworICAgIElTIHt7IGRhdGEuZGVzY3JpcHRp b258cXRMaXRlcmFsICB9fTsKIHslIGVuZGlmIC0lfQogeyUgaWYgZGF0YS5z ZWNsYWJlbHMgJX0KIHslIGZvciByIGluIGRhdGEuc2VjbGFiZWxzICV9CiB7 JSBpZiByLmxhYmVsIGFuZCByLnByb3ZpZGVyICV9CiAKLXt7IFNFQ0xBQkVM LlNFVChjb25uLCAnUFJPQ0VEVVJFJywgZGF0YS5uYW1lLCByLnByb3ZpZGVy LCByLmxhYmVsLCBkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5mdW5jX2FyZ3Mp IH19Cit7eyBTRUNMQUJFTC5TRVQoY29ubiwgJ1BST0NFRFVSRScsIGRhdGEu bmFtZSwgci5wcm92aWRlciwgci5sYWJlbCwgZGF0YS5wcm9uYW1lc3BhY2Us IGRhdGEuZnVuY19hcmdzX3dpdGhvdXQpIH19CiB7JSBlbmRpZiAlfQogeyUg ZW5kZm9yICV9CiB7JSBlbmRpZiAtJX0KZGlmZiAtLWdpdCBhL3dlYi9wZ2Fk bWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9z Y2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9w Zy9zcWwvOS4xX3BsdXMvY3JlYXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1 bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wZy9zcWwvOS4x X3BsdXMvY3JlYXRlLnNxbAppbmRleCA2ZTlmZDc4Li4wYTc3NmYzIDEwMDY0 NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2Vy dmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3Ry aWdnZXJfZnVuY3Rpb24vcGcvc3FsLzkuMV9wbHVzL2NyZWF0ZS5zcWwKKysr IGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMv ZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy90cmlnZ2Vy X2Z1bmN0aW9uL3BnL3NxbC85LjFfcGx1cy9jcmVhdGUuc3FsCkBAIC0zNyw3 ICszNyw3IEBAIEFMVEVSIEZVTkNUSU9OIHt7IGNvbm58cXRJZGVudChkYXRh LnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9fSh7e2RhdGEuZnVuY19hcmdz CiB7JSBpZiBkYXRhLmRlc2NyaXB0aW9uICV9CiAKIENPTU1FTlQgT04gRlVO Q1RJT04ge3sgY29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRh Lm5hbWUpIH19KHt7ZGF0YS5mdW5jX2FyZ3N9fSkKLSAgICBJUyAne3sgZGF0 YS5kZXNjcmlwdGlvbiB9fSc7CisgICAgSVMge3sgZGF0YS5kZXNjcmlwdGlv bnxxdExpdGVyYWwgIH19OwogeyUgZW5kaWYgLSV9CiB7JSBpZiBkYXRhLnNl Y2xhYmVscyAlfQogeyUgZm9yIHIgaW4gZGF0YS5zZWNsYWJlbHMgJX0KZGlm ZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9z ZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMv dHJpZ2dlcl9mdW5jdGlvbi9wZy9zcWwvOS4yX3BsdXMvY3JlYXRlLnNxbCBi L3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9m dW5jdGlvbi9wZy9zcWwvOS4yX3BsdXMvY3JlYXRlLnNxbAppbmRleCA3Y2E0 YmYxLi40MTJiMDJlIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2Vy L3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5j dGlvbnMvdGVtcGxhdGVzL3RyaWdnZXJfZnVuY3Rpb24vcGcvc3FsLzkuMl9w bHVzL2NyZWF0ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2 ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25z L3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3BnL3NxbC85LjJfcGx1cy9j cmVhdGUuc3FsCkBAIC00Miw3ICs0Miw3IEBAIEFMVEVSIEZVTkNUSU9OIHt7 IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5uYW1lKSB9 fSh7e2RhdGEuZnVuY19hcmdzCiB7JSBpZiBkYXRhLmRlc2NyaXB0aW9uICV9 CiAKIENPTU1FTlQgT04gRlVOQ1RJT04ge3sgY29ubnxxdElkZW50KGRhdGEu cHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19KHt7ZGF0YS5mdW5jX2FyZ3N9 fSkKLSAgICBJUyAne3sgZGF0YS5kZXNjcmlwdGlvbiB9fSc7CisgICAgSVMg e3sgZGF0YS5kZXNjcmlwdGlvbnxxdExpdGVyYWwgIH19OwogeyUgZW5kaWYg LSV9CiB7JSBpZiBkYXRhLnNlY2xhYmVscyAlfQogeyUgZm9yIHIgaW4gZGF0 YS5zZWNsYWJlbHMgJX0KZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1 bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wZy9zcWwvOS41 X3BsdXMvY3JlYXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVy X2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90 ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wZy9zcWwvOS41X3BsdXMvY3Jl YXRlLnNxbAppbmRleCA1NDQ1ODU1Li5hYWEzMWUwIDEwMDY0NAotLS0gYS93 ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRh YmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3RyaWdnZXJfZnVu Y3Rpb24vcGcvc3FsLzkuNV9wbHVzL2NyZWF0ZS5zcWwKKysrIGIvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9u L3BnL3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsCkBAIC00MCw3ICs0MCw3IEBA IEFMVEVSIEZVTkNUSU9OIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVz cGFjZSwgZGF0YS5uYW1lKSB9fSh7e2RhdGEuZnVuY19hcmdzCiB7JSBpZiBk YXRhLmRlc2NyaXB0aW9uICV9CiAKIENPTU1FTlQgT04gRlVOQ1RJT04ge3sg Y29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19 KHt7ZGF0YS5mdW5jX2FyZ3N9fSkKLSAgICBJUyAne3sgZGF0YS5kZXNjcmlw dGlvbiB9fSc7CisgICAgSVMge3sgZGF0YS5kZXNjcmlwdGlvbnxxdExpdGVy YWwgIH19OwogeyUgZW5kaWYgLSV9CiB7JSBpZiBkYXRhLnNlY2xhYmVscyAl fQogeyUgZm9yIHIgaW4gZGF0YS5zZWNsYWJlbHMgJX0KZGlmZiAtLWdpdCBh L3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9m dW5jdGlvbi9wcGFzL3NxbC85LjFfcGx1cy9jcmVhdGUuc3FsIGIvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvZnVuY3Rpb25zL3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9u L3BwYXMvc3FsLzkuMV9wbHVzL2NyZWF0ZS5zcWwKaW5kZXggNmU5ZmQ3OC4u MGE3NzZmMyAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2 ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25z L3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3BwYXMvc3FsLzkuMV9wbHVz L2NyZWF0ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVuY3Rpb25zL3Rl bXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3BwYXMvc3FsLzkuMV9wbHVzL2Ny ZWF0ZS5zcWwKQEAgLTM3LDcgKzM3LDcgQEAgQUxURVIgRlVOQ1RJT04ge3sg Y29ubnxxdElkZW50KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19 KHt7ZGF0YS5mdW5jX2FyZ3MKIHslIGlmIGRhdGEuZGVzY3JpcHRpb24gJX0K IAogQ09NTUVOVCBPTiBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5w cm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX0oe3tkYXRhLmZ1bmNfYXJnc319 KQotICAgIElTICd7eyBkYXRhLmRlc2NyaXB0aW9uIH19JzsKKyAgICBJUyB7 eyBkYXRhLmRlc2NyaXB0aW9ufHF0TGl0ZXJhbCAgfX07CiB7JSBlbmRpZiAt JX0KIHslIGlmIGRhdGEuc2VjbGFiZWxzICV9CiB7JSBmb3IgciBpbiBkYXRh LnNlY2xhYmVscyAlfQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nl ci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnVu Y3Rpb25zL3RlbXBsYXRlcy90cmlnZ2VyX2Z1bmN0aW9uL3BwYXMvc3FsLzku Ml9wbHVzL2NyZWF0ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZl cl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMv dGVtcGxhdGVzL3RyaWdnZXJfZnVuY3Rpb24vcHBhcy9zcWwvOS4yX3BsdXMv Y3JlYXRlLnNxbAppbmRleCAyMTBjZjNhLi5lZjY0ZDIwIDEwMDY0NAotLS0g YS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9k YXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3RyaWdnZXJf ZnVuY3Rpb24vcHBhcy9zcWwvOS4yX3BsdXMvY3JlYXRlLnNxbAorKysgYi93 ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRh YmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3RyaWdnZXJfZnVu Y3Rpb24vcHBhcy9zcWwvOS4yX3BsdXMvY3JlYXRlLnNxbApAQCAtNDEsNyAr NDEsNyBAQCBBTFRFUiBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5w cm9uYW1lc3BhY2UsIGRhdGEubmFtZSkgfX0oe3tkYXRhLmZ1bmNfYXJncwog eyUgaWYgZGF0YS5kZXNjcmlwdGlvbiAlfQogCiBDT01NRU5UIE9OIEZVTkNU SU9OIHt7IGNvbm58cXRJZGVudChkYXRhLnByb25hbWVzcGFjZSwgZGF0YS5u YW1lKSB9fSh7e2RhdGEuZnVuY19hcmdzfX0pCi0gICAgSVMgJ3t7IGRhdGEu ZGVzY3JpcHRpb24gfX0nOworICAgIElTIHt7IGRhdGEuZGVzY3JpcHRpb258 cXRMaXRlcmFsICB9fTsKIHslIGVuZGlmIC0lfQogeyUgaWYgZGF0YS5zZWNs YWJlbHMgJX0KIHslIGZvciByIGluIGRhdGEuc2VjbGFiZWxzICV9CmRpZmYg LS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2Vy dmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdW5jdGlvbnMvdGVtcGxhdGVzL3Ry aWdnZXJfZnVuY3Rpb24vcHBhcy9zcWwvOS41X3BsdXMvY3JlYXRlLnNxbCBi L3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL2Z1bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9m dW5jdGlvbi9wcGFzL3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsCmluZGV4IDVj N2M1NjguLjkxZjFkZTYgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dz ZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1 bmN0aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wcGFzL3NxbC85 LjVfcGx1cy9jcmVhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z1bmN0 aW9ucy90ZW1wbGF0ZXMvdHJpZ2dlcl9mdW5jdGlvbi9wcGFzL3NxbC85LjVf cGx1cy9jcmVhdGUuc3FsCkBAIC0yMSw3ICsyMSw3IEBAIENSRUFURSBGVU5D VElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2UsIGRhdGEu bmFtZSkgfX0oKQogICAgIFNFVCB7eyBjb25ufHF0SWRlbnQodi5uYW1lKSB9 fT17eyB2LnZhbHVlfHF0TGl0ZXJhbCB9fXslIGVuZGZvciAlfQogeyUgZW5k aWYgJX0KIAotK0FTIHslIGVuZGlmICV9eyUgaWYgZGF0YS5sYW5uYW1lID09 ICdjJyAlfQorQVMgeyUgZW5kaWYgJX17JSBpZiBkYXRhLmxhbm5hbWUgPT0g J2MnICV9CiB7eyBkYXRhLnByb2JpbnxxdExpdGVyYWwgfX0sIHt7IGRhdGEu cHJvc3JjX2N8cXRMaXRlcmFsIH19CiB7JSBlbHNlICV9CiAkQk9EWSQKQEAg LTQwLDcgKzQwLDcgQEAgQUxURVIgRlVOQ1RJT04ge3sgY29ubnxxdElkZW50 KGRhdGEucHJvbmFtZXNwYWNlLCBkYXRhLm5hbWUpIH19KHt7ZGF0YS5mdW5j X2FyZ3MKIHslIGlmIGRhdGEuZGVzY3JpcHRpb24gJX0KIAogQ09NTUVOVCBP TiBGVU5DVElPTiB7eyBjb25ufHF0SWRlbnQoZGF0YS5wcm9uYW1lc3BhY2Us IGRhdGEubmFtZSkgfX0oe3tkYXRhLmZ1bmNfYXJnc319KQotICAgIElTICd7 eyBkYXRhLmRlc2NyaXB0aW9uIH19JzsKKyAgICBJUyB7eyBkYXRhLmRlc2Ny aXB0aW9ufHF0TGl0ZXJhbCAgfX07CiB7JSBlbmRpZiAtJX0KIHslIGlmIGRh dGEuc2VjbGFiZWxzICV9CiB7JSBmb3IgciBpbiBkYXRhLnNlY2xhYmVscyAl fQpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3Jv dXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL19faW5pdF9f LnB5IGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZl cnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL19faW5pdF9fLnB5CmluZGV4 IGQ0ZDE4ODUuLjAyMDU3YmYgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jy b3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFz L3RhYmxlcy9fX2luaXRfXy5weQorKysgYi93ZWIvcGdhZG1pbi9icm93c2Vy L3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJs ZXMvX19pbml0X18ucHkKQEAgLTY4MSw2ICs2ODEsMTAgQEAgY2xhc3MgVGFi bGVWaWV3KFBHQ2hpbGROb2RlVmlldywgRGF0YVR5cGVSZWFkZXIsIFZhY3V1 bVNldHRpbmdzKToKICAgICAgICAgICAgICAgICBpZiBpc0FycmF5OgogICAg ICAgICAgICAgICAgICAgICBjb2x1bW5bJ2NsdHlwZSddICs9ICJbXSIKIAor ICAgICAgICAgICAgICAgIGlmIGNvbHVtblsndHlwbnNwbmFtZSddICE9ICdw Z19jYXRhbG9nJzoKKyAgICAgICAgICAgICAgICAgICAgY29sdW1uWydjbHR5 cGUnXSA9IHNlbGYucXRJZGVudChzZWxmLmNvbm4sIGNvbHVtblsndHlwbnNw bmFtZSddKSBcCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICArICcuJyArIGNvbHVtblsnY2x0eXBlJ10KKwogICAgICAgICAgICAg ICAgIGlmICdpbmRrZXknIGluIGNvbHVtbjoKICAgICAgICAgICAgICAgICAg ICAgIyBDdXJyZW50IGNvbHVtbgogICAgICAgICAgICAgICAgICAgICBhdHRu dW0gPSBzdHIoY29sdW1uWydhdHRudW0nXSkKZGlmZiAtLWdpdCBhL3dlYi9w Z2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNl cy9zY2hlbWFzL3RhYmxlcy9jb2x1bW4vX19pbml0X18ucHkgYi93ZWIvcGdh ZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMv c2NoZW1hcy90YWJsZXMvY29sdW1uL19faW5pdF9fLnB5CmluZGV4IDc4NDkz YjYuLmI2Nzc4M2MgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxl cy9jb2x1bW4vX19pbml0X18ucHkKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nl ci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFi bGVzL2NvbHVtbi9fX2luaXRfXy5weQpAQCAtNDM1LDYgKzQzNSwxMCBAQCBj bGFzcyBDb2x1bW5zVmlldyhQR0NoaWxkTm9kZVZpZXcsIERhdGFUeXBlUmVh ZGVyKToKICAgICAgICAgaWYgaXNBcnJheToKICAgICAgICAgICAgIGRhdGFb J2NsdHlwZSddICs9ICJbXSIKIAorICAgICAgICBpZiBkYXRhWyd0eXBuc3Bu YW1lJ10gIT0gJ3BnX2NhdGFsb2cnOgorICAgICAgICAgICAgZGF0YVsnY2x0 eXBlJ10gPSBzZWxmLnF0SWRlbnQoc2VsZi5jb25uLCBkYXRhWyd0eXBuc3Bu YW1lJ10pXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICArICcuJyAr IGRhdGFbJ2NsdHlwZSddCisKICAgICAgICAgcmV0dXJuIGRhdGEKIAogICAg IEBjaGVja19wcmVjb25kaXRpb24KZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWlu L2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hl bWFzL3RhYmxlcy90ZW1wbGF0ZXMvY29sdW1uL3NxbC85LjFfcGx1cy9jcmVh dGUuc3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3Nl cnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3RlbXBsYXRlcy9jb2x1 bW4vc3FsLzkuMV9wbHVzL2NyZWF0ZS5zcWwKaW5kZXggNWYwNGI2ZS4uNDM0 ODU4YiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3RlbXBs YXRlcy9jb2x1bW4vc3FsLzkuMV9wbHVzL2NyZWF0ZS5zcWwKKysrIGIvd2Vi L3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvdGFibGVzL3RlbXBsYXRlcy9jb2x1bW4vc3FsLzkuMV9w bHVzL2NyZWF0ZS5zcWwKQEAgLTQsNyArNCw3IEBACiB7IyMjICBBZGQgY29s dW1uICMjI30KIHslIGlmIGRhdGEubmFtZSBhbmQgIGRhdGEuY2x0eXBlICV9 CiBBTFRFUiBUQUJMRSB7e2Nvbm58cXRJZGVudChkYXRhLnNjaGVtYSwgZGF0 YS50YWJsZSl9fQotICAgIEFERCBDT0xVTU4ge3tjb25ufHF0SWRlbnQoZGF0 YS5uYW1lKX19IHt7ZGF0YS5jbHR5cGV9fXslIGlmIGRhdGEuYXR0bGVuICV9 CisgICAgQUREIENPTFVNTiB7e2Nvbm58cXRJZGVudChkYXRhLm5hbWUpfX0g e3tjb25ufHF0VHlwZUlkZW50KGRhdGEuY2x0eXBlKX19eyUgaWYgZGF0YS5h dHRsZW4gJX0KICh7e2RhdGEuYXR0bGVufX17JSBpZiBkYXRhLmF0dHByZWNp c2lvbiV9LCB7e2RhdGEuYXR0cHJlY2lzaW9ufX17JSBlbmRpZiAlfSl7JSBl bmRpZiAlfXslIGlmIGRhdGEuaGFzU3FyQnJhY2tldCAlfQogW117JSBlbmRp ZiAlfXslIGlmIGRhdGEuY29sbHNwY25hbWUgJX0KICBDT0xMQVRFIHt7ZGF0 YS5jb2xsc3BjbmFtZX19eyUgZW5kaWYgJX17JSBpZiBkYXRhLmF0dG5vdG51 bGwgJX0KZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVy X2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy90ZW1w bGF0ZXMvY29sdW1uL3NxbC85LjFfcGx1cy91cGRhdGUuc3FsIGIvd2ViL3Bn YWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2Vz L3NjaGVtYXMvdGFibGVzL3RlbXBsYXRlcy9jb2x1bW4vc3FsLzkuMV9wbHVz L3VwZGF0ZS5zcWwKaW5kZXggN2IyNmRkNy4uNTAwZDUzNCAxMDA2NDQKLS0t IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMv ZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3RlbXBsYXRlcy9jb2x1bW4vc3Fs LzkuMV9wbHVzL3VwZGF0ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nl ci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFi bGVzL3RlbXBsYXRlcy9jb2x1bW4vc3FsLzkuMV9wbHVzL3VwZGF0ZS5zcWwK QEAgLTEwLDcgKzEwLDcgQEAgQUxURVIgVEFCTEUge3tjb25ufHF0SWRlbnQo ZGF0YS5zY2hlbWEsIGRhdGEudGFibGUpfX0KIHsjIyMgIEFsdGVyIGNvbHVt biB0eXBlIGFuZCBjb2xsYXRpb24gIyMjfQogeyUgaWYgKGRhdGEuY2x0eXBl IGFuZCBkYXRhLmNsdHlwZSAhPSBvX2RhdGEuY2x0eXBlKSBvciAoZGF0YS5h dHRsZW4gYW5kIGRhdGEuYXR0bGVuICE9IG9fZGF0YS5hdHRsZW4pIG9yIChk YXRhLmF0dHByZWNpc2lvbiBhbmQgZGF0YS5hdHRwcmVjaXNpb24gIT0gb19k YXRhLmF0dHByZWNpc2lvbikgJX0KIEFMVEVSIFRBQkxFIHt7Y29ubnxxdElk ZW50KGRhdGEuc2NoZW1hLCBkYXRhLnRhYmxlKX19Ci0gICAgQUxURVIgQ09M VU1OIHt7Y29ubnxxdElkZW50KGRhdGEubmFtZSl9fSBUWVBFIHslIGlmIGRh dGEuY2x0eXBlICV9e3tkYXRhLmNsdHlwZX19IHslIGVsc2UgJX17e29fZGF0 YS5jbHR5cGV9fSB7JSBlbmRpZiAlfXslIGlmIGRhdGEuYXR0bGVuICV9Cisg ICAgQUxURVIgQ09MVU1OIHt7Y29ubnxxdElkZW50KGRhdGEubmFtZSl9fSBU WVBFIHslIGlmIGRhdGEuY2x0eXBlICV9e3tjb25ufHF0VHlwZUlkZW50KGRh dGEuY2x0eXBlKX19IHslIGVsc2UgJX17e29fZGF0YS5jbHR5cGV9fSB7JSBl bmRpZiAlfXslIGlmIGRhdGEuYXR0bGVuICV9CiAoe3tkYXRhLmF0dGxlbn19 eyUgaWYgZGF0YS5hdHRwcmVjaXNpb24lfSwge3tkYXRhLmF0dHByZWNpc2lv bn19eyUgZW5kaWYgJX0peyUgZW5kaWYgJX17JSBpZiBkYXRhLmhhc1NxckJy YWNrZXQgJX0KIFtdeyUgZW5kaWYgJX17JSBpZiBkYXRhLmNvbGxzcGNuYW1l IGFuZCBkYXRhLmNvbGxzcGNuYW1lICE9IG9fZGF0YS5jb2xsc3BjbmFtZSAl fQogIENPTExBVEUge3tkYXRhLmNvbGxzcGNuYW1lfX17JSBlbmRpZiAlfTsK ZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vw cy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy90ZW1wbGF0ZXMv Y29sdW1uL3NxbC85LjJfcGx1cy9jcmVhdGUuc3FsIGIvd2ViL3BnYWRtaW4v YnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVt YXMvdGFibGVzL3RlbXBsYXRlcy9jb2x1bW4vc3FsLzkuMl9wbHVzL2NyZWF0 ZS5zcWwKaW5kZXggNWYwNGI2ZS4uNDM0ODU4YiAxMDA2NDQKLS0tIGEvd2Vi L3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvdGFibGVzL3RlbXBsYXRlcy9jb2x1bW4vc3FsLzkuMl9w bHVzL2NyZWF0ZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2 ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3Rl bXBsYXRlcy9jb2x1bW4vc3FsLzkuMl9wbHVzL2NyZWF0ZS5zcWwKQEAgLTQs NyArNCw3IEBACiB7IyMjICBBZGQgY29sdW1uICMjI30KIHslIGlmIGRhdGEu bmFtZSBhbmQgIGRhdGEuY2x0eXBlICV9CiBBTFRFUiBUQUJMRSB7e2Nvbm58 cXRJZGVudChkYXRhLnNjaGVtYSwgZGF0YS50YWJsZSl9fQotICAgIEFERCBD T0xVTU4ge3tjb25ufHF0SWRlbnQoZGF0YS5uYW1lKX19IHt7ZGF0YS5jbHR5 cGV9fXslIGlmIGRhdGEuYXR0bGVuICV9CisgICAgQUREIENPTFVNTiB7e2Nv bm58cXRJZGVudChkYXRhLm5hbWUpfX0ge3tjb25ufHF0VHlwZUlkZW50KGRh dGEuY2x0eXBlKX19eyUgaWYgZGF0YS5hdHRsZW4gJX0KICh7e2RhdGEuYXR0 bGVufX17JSBpZiBkYXRhLmF0dHByZWNpc2lvbiV9LCB7e2RhdGEuYXR0cHJl Y2lzaW9ufX17JSBlbmRpZiAlfSl7JSBlbmRpZiAlfXslIGlmIGRhdGEuaGFz U3FyQnJhY2tldCAlfQogW117JSBlbmRpZiAlfXslIGlmIGRhdGEuY29sbHNw Y25hbWUgJX0KICBDT0xMQVRFIHt7ZGF0YS5jb2xsc3BjbmFtZX19eyUgZW5k aWYgJX17JSBpZiBkYXRhLmF0dG5vdG51bGwgJX0KZGlmZiAtLWdpdCBhL3dl Yi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFi YXNlcy9zY2hlbWFzL3RhYmxlcy90ZW1wbGF0ZXMvY29sdW1uL3NxbC85LjJf cGx1cy91cGRhdGUuc3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3RlbXBs YXRlcy9jb2x1bW4vc3FsLzkuMl9wbHVzL3VwZGF0ZS5zcWwKaW5kZXggNGQ2 YTlmZS4uNmQwYjA0YiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nl ci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFi bGVzL3RlbXBsYXRlcy9jb2x1bW4vc3FsLzkuMl9wbHVzL3VwZGF0ZS5zcWwK KysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZl cnMvZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3RlbXBsYXRlcy9jb2x1bW4v c3FsLzkuMl9wbHVzL3VwZGF0ZS5zcWwKQEAgLTEwLDcgKzEwLDcgQEAgQUxU RVIgVEFCTEUge3tjb25ufHF0SWRlbnQoZGF0YS5zY2hlbWEsIGRhdGEudGFi bGUpfX0KIHsjIyMgIEFsdGVyIGNvbHVtbiB0eXBlIGFuZCBjb2xsYXRpb24g IyMjfQogeyUgaWYgKGRhdGEuY2x0eXBlIGFuZCBkYXRhLmNsdHlwZSAhPSBv X2RhdGEuY2x0eXBlKSBvciAoZGF0YS5hdHRsZW4gYW5kIGRhdGEuYXR0bGVu ICE9IG9fZGF0YS5hdHRsZW4pIG9yIChkYXRhLmF0dHByZWNpc2lvbiBhbmQg ZGF0YS5hdHRwcmVjaXNpb24gIT0gb19kYXRhLmF0dHByZWNpc2lvbikgJX0K IEFMVEVSIFRBQkxFIHt7Y29ubnxxdElkZW50KGRhdGEuc2NoZW1hLCBkYXRh LnRhYmxlKX19Ci0gICAgQUxURVIgQ09MVU1OIHt7Y29ubnxxdElkZW50KGRh dGEubmFtZSl9fSBUWVBFIHslIGlmIGRhdGEuY2x0eXBlICV9e3tkYXRhLmNs dHlwZX19IHslIGVsc2UgJX17e29fZGF0YS5jbHR5cGV9fSB7JSBlbmRpZiAl fXslIGlmIGRhdGEuYXR0bGVuICV9CisgICAgQUxURVIgQ09MVU1OIHt7Y29u bnxxdElkZW50KGRhdGEubmFtZSl9fSBUWVBFIHslIGlmIGRhdGEuY2x0eXBl ICV9e3tjb25ufHF0VHlwZUlkZW50KGRhdGEuY2x0eXBlKX19IHslIGVsc2Ug JX17e29fZGF0YS5jbHR5cGV9fSB7JSBlbmRpZiAlfXslIGlmIGRhdGEuYXR0 bGVuICV9CiAoe3tkYXRhLmF0dGxlbn19eyUgaWYgZGF0YS5hdHRwcmVjaXNp b24lfSwge3tkYXRhLmF0dHByZWNpc2lvbn19eyUgZW5kaWYgJX0peyUgZW5k aWYgJX17JSBpZiBkYXRhLmhhc1NxckJyYWNrZXQgJX0KIFtdeyUgZW5kaWYg JX17JSBpZiBkYXRhLmNvbGxzcGNuYW1lIGFuZCBkYXRhLmNvbGxzcGNuYW1l ICE9IG9fZGF0YS5jb2xsc3BjbmFtZSAlfQogIENPTExBVEUge3tkYXRhLmNv bGxzcGNuYW1lfX17JSBlbmRpZiAlfTsKZGlmZiAtLWdpdCBhL3dlYi9wZ2Fk bWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9z Y2hlbWFzL3RhYmxlcy90ZW1wbGF0ZXMvdGFibGUvc3FsLzkuMV9wbHVzL2Ny ZWF0ZS5zcWwgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMv c2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvdGVtcGxhdGVzL3Rh YmxlL3NxbC85LjFfcGx1cy9jcmVhdGUuc3FsCmluZGV4IDcxYWMxYzYuLjM4 MDU3NDEgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVy X2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy90ZW1w bGF0ZXMvdGFibGUvc3FsLzkuMV9wbHVzL2NyZWF0ZS5zcWwKKysrIGIvd2Vi L3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvdGFibGVzL3RlbXBsYXRlcy90YWJsZS9zcWwvOS4xX3Bs dXMvY3JlYXRlLnNxbApAQCAtMTcsNyArMTcsNyBAQAogeyUgZW5kaWYgJX0K IENSRUFURSB7JSBpZiBkYXRhLnJlbHBlcnNpc3RlbmNlICV9VU5MT0dHRUQg eyUgZW5kaWYgJX1UQUJMRSB7e2Nvbm58cXRJZGVudChkYXRhLnNjaGVtYSwg ZGF0YS5uYW1lKX19e3tlbXB0eV9icmFja2V0fX0KIHslIGlmIGRhdGEudHlw bmFtZSAlfQotICAgIE9GIHt7IGRhdGEudHlwbmFtZSB9fQorICAgIE9GIHt7 IGNvbm58cXRUeXBlSWRlbnQoZGF0YS50eXBuYW1lKSB9fQogeyUgZW5kaWYg JX0KIHslIGlmIGRhdGEubGlrZV9yZWxhdGlvbiBvciBkYXRhLmNvbGxfaW5o ZXJpdHMgb3IgZGF0YS5jb2x1bW5zfGxlbmd0aCA+IDAgb3IgZGF0YS5wcmlt YXJ5X2tleXxsZW5ndGggPiAwIG9yIGRhdGEudW5pcXVlX2NvbnN0cmFpbnR8 bGVuZ3RoID4gMCBvciBkYXRhLmZvcmVpZ25fa2V5fGxlbmd0aCA+IDAgb3Ig ZGF0YS5jaGVja19jb25zdHJhaW50fGxlbmd0aCA+IDAgb3IgZGF0YS5leGNs dWRlX2NvbnN0cmFpbnR8bGVuZ3RoID4gMCAlfQogKApAQCAtNDMsNyArNDMs NyBAQCBDUkVBVEUgeyUgaWYgZGF0YS5yZWxwZXJzaXN0ZW5jZSAlfVVOTE9H R0VEIHslIGVuZGlmICV9VEFCTEUge3tjb25ufHF0SWRlbnQoZGF0YQogeyUg aWYgYy5uYW1lIGFuZCBjLmNsdHlwZSAlfQogeyUgaWYgbG9vcC5pbmRleCAh PSAxICV9LAogeyUgZW5kaWYgJX0KLSAgICB7e2Nvbm58cXRJZGVudChjLm5h bWUpfX0ge3tjLmNsdHlwZX19eyUgaWYgYy5hdHRsZW4gJX0KKyAgICB7e2Nv bm58cXRJZGVudChjLm5hbWUpfX0ge3tjb25ufHF0VHlwZUlkZW50KGMuY2x0 eXBlKX19eyUgaWYgYy5hdHRsZW4gJX0KICh7e2MuYXR0bGVufX17JSBpZiBj LmF0dHByZWNpc2lvbiV9LCB7e2MuYXR0cHJlY2lzaW9ufX17JSBlbmRpZiAl fSl7JSBlbmRpZiAlfXslIGlmIGMuaGFzU3FyQnJhY2tldCAlfQogW117JSBl bmRpZiAlfXslIGlmIGMuY29sbHNwY25hbWUgJX0gQ09MTEFURSB7e2MuY29s bHNwY25hbWV9fXslIGVuZGlmICV9eyUgaWYgYy5hdHRub3RudWxsICV9IE5P VCBOVUxMeyUgZW5kaWYgJX17JSBpZiBjLmRlZnZhbCAlfSBERUZBVUxUIHt7 Yy5kZWZ2YWx9fXslIGVuZGlmICV9CiB7JSBlbmRpZiAlfQpkaWZmIC0tZ2l0 IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMv ZGF0YWJhc2VzL3NjaGVtYXMvdGFibGVzL3RlbXBsYXRlcy90YWJsZS9zcWwv OS41X3BsdXMvY3JlYXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2Vy dmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3RhYmxlcy90 ZW1wbGF0ZXMvdGFibGUvc3FsLzkuNV9wbHVzL2NyZWF0ZS5zcWwKaW5kZXgg NzFhYzFjNi4uMzgwNTc0MSAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMv dGFibGVzL3RlbXBsYXRlcy90YWJsZS9zcWwvOS41X3BsdXMvY3JlYXRlLnNx bAorKysgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2Vy dmVycy9kYXRhYmFzZXMvc2NoZW1hcy90YWJsZXMvdGVtcGxhdGVzL3RhYmxl L3NxbC85LjVfcGx1cy9jcmVhdGUuc3FsCkBAIC0xNyw3ICsxNyw3IEBACiB7 JSBlbmRpZiAlfQogQ1JFQVRFIHslIGlmIGRhdGEucmVscGVyc2lzdGVuY2Ug JX1VTkxPR0dFRCB7JSBlbmRpZiAlfVRBQkxFIHt7Y29ubnxxdElkZW50KGRh dGEuc2NoZW1hLCBkYXRhLm5hbWUpfX17e2VtcHR5X2JyYWNrZXR9fQogeyUg aWYgZGF0YS50eXBuYW1lICV9Ci0gICAgT0Yge3sgZGF0YS50eXBuYW1lIH19 CisgICAgT0Yge3sgY29ubnxxdFR5cGVJZGVudChkYXRhLnR5cG5hbWUpIH19 CiB7JSBlbmRpZiAlfQogeyUgaWYgZGF0YS5saWtlX3JlbGF0aW9uIG9yIGRh dGEuY29sbF9pbmhlcml0cyBvciBkYXRhLmNvbHVtbnN8bGVuZ3RoID4gMCBv ciBkYXRhLnByaW1hcnlfa2V5fGxlbmd0aCA+IDAgb3IgZGF0YS51bmlxdWVf Y29uc3RyYWludHxsZW5ndGggPiAwIG9yIGRhdGEuZm9yZWlnbl9rZXl8bGVu Z3RoID4gMCBvciBkYXRhLmNoZWNrX2NvbnN0cmFpbnR8bGVuZ3RoID4gMCBv ciBkYXRhLmV4Y2x1ZGVfY29uc3RyYWludHxsZW5ndGggPiAwICV9CiAoCkBA IC00Myw3ICs0Myw3IEBAIENSRUFURSB7JSBpZiBkYXRhLnJlbHBlcnNpc3Rl bmNlICV9VU5MT0dHRUQgeyUgZW5kaWYgJX1UQUJMRSB7e2Nvbm58cXRJZGVu dChkYXRhCiB7JSBpZiBjLm5hbWUgYW5kIGMuY2x0eXBlICV9CiB7JSBpZiBs b29wLmluZGV4ICE9IDEgJX0sCiB7JSBlbmRpZiAlfQotICAgIHt7Y29ubnxx dElkZW50KGMubmFtZSl9fSB7e2MuY2x0eXBlfX17JSBpZiBjLmF0dGxlbiAl fQorICAgIHt7Y29ubnxxdElkZW50KGMubmFtZSl9fSB7e2Nvbm58cXRUeXBl SWRlbnQoYy5jbHR5cGUpfX17JSBpZiBjLmF0dGxlbiAlfQogKHt7Yy5hdHRs ZW59fXslIGlmIGMuYXR0cHJlY2lzaW9uJX0sIHt7Yy5hdHRwcmVjaXNpb259 fXslIGVuZGlmICV9KXslIGVuZGlmICV9eyUgaWYgYy5oYXNTcXJCcmFja2V0 ICV9CiBbXXslIGVuZGlmICV9eyUgaWYgYy5jb2xsc3BjbmFtZSAlfSBDT0xM QVRFIHt7Yy5jb2xsc3BjbmFtZX19eyUgZW5kaWYgJX17JSBpZiBjLmF0dG5v dG51bGwgJX0gTk9UIE5VTEx7JSBlbmRpZiAlfXslIGlmIGMuZGVmdmFsICV9 IERFRkFVTFQge3tjLmRlZnZhbH19eyUgZW5kaWYgJX0KIHslIGVuZGlmICV9 CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy91dGlscy5weSBiL3dlYi9w Z2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNl cy9zY2hlbWFzL3V0aWxzLnB5CmluZGV4IGUxMGNmOTguLjI0MTE2MzggMTAw NjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9z ZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL3V0aWxzLnB5CisrKyBiL3dlYi9w Z2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNl cy9zY2hlbWFzL3V0aWxzLnB5CkBAIC0xMzQsOCArMTM0LDE1IEBAIGNsYXNz IERhdGFUeXBlUmVhZGVyOgogICAgICAgICAgICAgICAgICAgICBlbHNlOgog ICAgICAgICAgICAgICAgICAgICAgICAgbWF4X3ZhbCA9IDEwCiAKKyAgICAg ICAgICAgICAgICAjIElmIHNjaGVtYSBpcyBub3QgcGdfY2F0YWxvZyAmIHRo ZW4gYWRkIHNjaGVtYQorICAgICAgICAgICAgICAgIGlmIHJvd1snbnNwbmFt ZSddICE9ICdwZ19jYXRhbG9nJyBcCisgICAgICAgICAgICAgICAgICAgICAg ICBhbmQgcm93Wyduc3BuYW1lJ10gPT0gJ3B1YmxpYyc6CisgICAgICAgICAg ICAgICAgICAgIHJ0bl90eXBlID0gcm93Wyduc3BuYW1lJ10gKyAiLiIgKyBy b3dbJ3R5cG5hbWUnXQorICAgICAgICAgICAgICAgIGVsc2U6CisgICAgICAg ICAgICAgICAgICAgIHJ0bl90eXBlID0gcm93Wyd0eXBuYW1lJ10KKwogICAg ICAgICAgICAgICAgIHJlcy5hcHBlbmQoewotICAgICAgICAgICAgICAgICAg ICAnbGFiZWwnOiByb3dbJ3R5cG5hbWUnXSwgJ3ZhbHVlJzogcm93Wyd0eXBu YW1lJ10sCisgICAgICAgICAgICAgICAgICAgICdsYWJlbCc6IHJ0bl90eXBl LCAndmFsdWUnOiBydG5fdHlwZSwKICAgICAgICAgICAgICAgICAgICAgJ3R5 cHZhbCc6IHR5cGV2YWwsICdwcmVjaXNpb24nOiBwcmVjaXNpb24sCiAgICAg ICAgICAgICAgICAgICAgICdsZW5ndGgnOiBsZW5ndGgsICdtaW5fdmFsJzog bWluX3ZhbCwgJ21heF92YWwnOiBtYXhfdmFsLAogICAgICAgICAgICAgICAg ICAgICAnaXNfY29sbGF0YWJsZSc6IHJvd1snaXNfY29sbGF0YWJsZSddCmRp ZmYgLS1naXQgYS93ZWIvcGdhZG1pbi91dGlscy9kcml2ZXIvcHN5Y29wZzIv X19pbml0X18ucHkgYi93ZWIvcGdhZG1pbi91dGlscy9kcml2ZXIvcHN5Y29w ZzIvX19pbml0X18ucHkKaW5kZXggNDFhN2U2Mi4uZmJkZTYwMyAxMDA2NDQK LS0tIGEvd2ViL3BnYWRtaW4vdXRpbHMvZHJpdmVyL3BzeWNvcGcyL19faW5p dF9fLnB5CisrKyBiL3dlYi9wZ2FkbWluL3V0aWxzL2RyaXZlci9wc3ljb3Bn Mi9fX2luaXRfXy5weQpAQCAtNTkxLDcgKzU5MSw2IEBAIEF0dGVtcHQgdG8g cmVjb25uZWN0IGl0IGZhaWxlZCB3aXRoIHRoZSBlcnJvcjoKICAgICAgICAg dHJ5OgogICAgICAgICAgICAgc2VsZi5fX2ludGVybmFsX2Jsb2NraW5nX2V4 ZWN1dGUoY3VyLCBxdWVyeSwgcGFyYW1zKQogICAgICAgICBleGNlcHQgcHN5 Y29wZzIuRXJyb3IgYXMgcGU6Ci0gICAgICAgICAgICBjdXJyZW50X2FwcC5s b2dnZXIuZXhjZXB0aW9uKHBlKQogICAgICAgICAgICAgY3VyLmNsb3NlKCkK ICAgICAgICAgICAgIGVycm1zZyA9IHNlbGYuX2Zvcm1hdHRlZF9leGNlcHRp b25fbXNnKHBlLCBmb3JtYXR0ZWRfZXhjZXB0aW9uX21zZykKICAgICAgICAg ICAgIGN1cnJlbnRfYXBwLmxvZ2dlci5lcnJvcigKQEAgLTExMTUsNiArMTEx NCw5IEBAIEZhaWxlZCB0byByZXNldCB0aGUgY29ubmVjdGlvbiB0byB0aGUg c2VydmVyIGR1ZSB0byBmb2xsb3dpbmcgZXJyb3I6CiAgICAgICAgICAgICBl cnJtc2cgPSBleGNlcHRpb25fb2JqLmRpYWcubWVzc2FnZV9kZXRhaWwKICAg ICAgICAgZWxzZToKICAgICAgICAgICAgIGVycm1zZyA9IHN0cihleGNlcHRp b25fb2JqKQorICAgICAgICAjIGVycm1zZyBtaWdodCBjb250YWlucyBlbmNv ZGVkIHZhbHVlLCBsZXRzIGRlY29kZSBpdAorICAgICAgICBpZiBoYXNhdHRy KHN0ciwgJ2RlY29kZScpOgorICAgICAgICAgICAgZXJybXNnID0gZXJybXNn LmRlY29kZSgndXRmLTgnKQogCiAgICAgICAgICMgaWYgZm9ybWF0dGVkX21z ZyBpcyBmYWxzZSB0aGVuIHJldHVybiBmcm9tIHRoZSBmdW5jdGlvbgogICAg ICAgICBpZiBub3QgZm9ybWF0dGVkX21zZzoKQEAgLTE2NjMsNiArMTY2NSwx MiBAQCBjbGFzcyBEcml2ZXIoQmFzZURyaXZlcik6CiAgICAgICAgIF06CiAg ICAgICAgICAgICByZXR1cm4gRmFsc2UKIAorICAgICAgICAjIElmIGFscmVh ZHkgcXVvdGVkPywgSWYgeWVzIHRoZW4gZG8gbm90IHF1b3RlIGFnYWluCisg ICAgICAgIGlmIGZvclR5cGVzIGFuZCB2YWxOb0FycmF5OgorICAgICAgICAg ICAgaWYgdmFsTm9BcnJheS5zdGFydHN3aXRoKCciJykgXAorICAgICAgICAg ICAgICAgICAgICBvciB2YWxOb0FycmF5LmVuZHN3aXRoKCciJyk6CisgICAg ICAgICAgICAgICAgcmV0dXJuIEZhbHNlCisKICAgICAgICAgaWYgdScwJyA8 PSB2YWxOb0FycmF5WzBdIDw9IHUnOSc6CiAgICAgICAgICAgICByZXR1cm4g VHJ1ZQogCkBAIC0xNjk3LDcgKzE3MDUsMTMgQEAgY2xhc3MgRHJpdmVyKEJh c2VEcml2ZXIpOgogICAgICAgICBmb3IgdmFsIGluIGFyZ3M6CiAgICAgICAg ICAgICBpZiBsZW4odmFsKSA9PSAwOgogICAgICAgICAgICAgICAgIGNvbnRp bnVlCi0KKyAgICAgICAgICAgIGlmIGhhc2F0dHIoc3RyLCAnZGVjb2RlJykg YW5kIG5vdCBpc2luc3RhbmNlKHZhbCwgdW5pY29kZSk6CisgICAgICAgICAg ICAgICAgIyBIYW5kbGluZyBmb3IgcHl0aG9uMgorICAgICAgICAgICAgICAg IHRyeToKKyAgICAgICAgICAgICAgICAgICAgdmFsID0gc3RyKHZhbCkuZW5j b2RlKCd1dGYtOCcpCisgICAgICAgICAgICAgICAgZXhjZXB0IFVuaWNvZGVE ZWNvZGVFcnJvcjoKKyAgICAgICAgICAgICAgICAgICAgIyBJZiBhbHJlYWR5 IHVuaWNvZGUsIG1vc3QgbGlrZWx5IGNvbWluZyBmcm9tIGRiCisgICAgICAg ICAgICAgICAgICAgIHZhbCA9IHN0cih2YWwpLmRlY29kZSgndXRmLTgnKQog ICAgICAgICAgICAgdmFsdWUgPSB2YWwKIAogICAgICAgICAgICAgaWYgKERy aXZlci5uZWVkc1F1b3RpbmcodmFsLCBUcnVlKSk6Cg== --001a113df2aa5598c50538af2729 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 --001a113df2aa5598c50538af2729--