Received: from malur.postgresql.org ([217.196.149.56]) by arkaria.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.92) (envelope-from ) id 1jEWPS-00054T-NQ for pgadmin-hackers@arkaria.postgresql.org; Wed, 18 Mar 2020 10:58:51 +0000 Received: from localhost ([127.0.0.1] helo=malur.postgresql.org) by malur.postgresql.org with esmtp (Exim 4.89) (envelope-from ) id 1jEWPQ-0007wz-QB for pgadmin-hackers@arkaria.postgresql.org; Wed, 18 Mar 2020 10:58:48 +0000 Received: from magus.postgresql.org ([2a02:c0:301:0:ffff::29]) by malur.postgresql.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1jEWPQ-0007wq-CX for pgadmin-hackers@lists.postgresql.org; Wed, 18 Mar 2020 10:58:48 +0000 Received: from mail-io1-xd2c.google.com ([2607:f8b0:4864:20::d2c]) by magus.postgresql.org with esmtps (TLS1.3:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.92) (envelope-from ) id 1jEWPL-00009U-QX for pgadmin-hackers@postgresql.org; Wed, 18 Mar 2020 10:58:47 +0000 Received: by mail-io1-xd2c.google.com with SMTP id q128so24435127iof.9 for ; Wed, 18 Mar 2020 03:58:43 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enterprisedb-com.20150623.gappssmtp.com; s=20150623; h=mime-version:from:date:message-id:subject:to; bh=K9fZTjjLwrLT5b4lwXL1uyH7FSArRmv+fHW3yOQmZsw=; b=akfj0IOGAl/Qn414Vz9rmiK6uKGHiBaGSeQjQq5UxBXHMSVnXPAMsnZOOQxSGH3E1y rkhnIshbnAGQtMxQcMkM0A+mM/LoJ791rd1CUqMPYSsQ+q5mlNrBlMVBjgcgAB2MDCr2 KSAW7B9pMyOwSZmnTT6PeYQxRYwdGSxSVRKAPW9pnKNkdRch0n59b2pWZImVXmlUXJNP oBACmCTIOLbWlnruNtBKaIG8Qk8X/khZ1jrqYmXreCYVs8NKPczvNT47bbHqVtk9aHpi i7ew3HCNSnPmiQsIIm8Kn3LnWclild1XFAAis2FkJfejHaq/YiD/f7cUVs5mNbk46DQG Yl1A== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:from:date:message-id:subject:to; bh=K9fZTjjLwrLT5b4lwXL1uyH7FSArRmv+fHW3yOQmZsw=; b=ti5qLwMelpmE60dQCoEefpvYrcFY4YYHcJTx6ES4EsFwgynawOTxqXraZTxtMSi4y4 a6xGC7dSTYrlOYeS0Ppz8rfAfw2u8PYtU8mvfLYKsJG7kWDRqeLWuUA9z82opFaQTd3p K036yPUxp+TQS6Yq6lLt2PvHnMnxviDfIUxOczKWW1Q2AzHeliKn0iZJitx68fSrGQ3x rIUeOAoEVFaSSJYowTXqDeyFyCAqXzY0wef2lF6hlI1xp7+lzHXX55ZaTwD1C295N9KM K/86DK50Fv0/uYkKcgrD4ztMUIR9kl8svLbTYje/6GI5o+nTbkATRPqgL5/TKgij92nw qLxg== X-Gm-Message-State: ANhLgQ02HLLaD3xz+vrULf5RK9E2T3SSyZExksxedap+swxC6eR+XTh3 FeCZzXYCQ8/I+2Op+FZ3Gu6vGNAvlPrF6r79bHcjOwapMjhtVR1RKDGZd7gRg213BCyn+PKLxVQ 0tXUgp9Go9DnIrQh2pXqCUccXL17kUdMwsFv5cwgfa5lPNTll3Q42cBQjtTin/TNaa7YLKB3tRm LBD7EcZp3wqSyodF9T5KK2D2VbkyT8HdSTdP8lOmLsLG49lbtSv36r1mN/ X-Google-Smtp-Source: ADFU+vvxpWdUa6x9Fy36WxCWRN3fwByUATHaE/qiQp0MLmc4nLgoUt7KCU3J4xN7A3dhquMxnmwwnfBk/93JQNNEeLs= X-Received: by 2002:a02:a99e:: with SMTP id q30mr3858272jam.53.1584529120511; Wed, 18 Mar 2020 03:58:40 -0700 (PDT) MIME-Version: 1.0 From: Akshay Joshi Date: Wed, 18 Mar 2020 16:28:28 +0530 Message-ID: Subject: [pgAdmin4][RM#5261] Support for Collation, FTS Templates, FTS Dictionaries, FTS Configurations and FTS Parsers To: pgadmin-hackers Content-Type: multipart/mixed; boundary="0000000000005db78a05a11eef80" X-CLOUD-SEC-AV-Info: edb,google_mail,monitor X-CLOUD-SEC-AV-Sent: true X-Gm-Spam: 0 X-Gm-Phishy: 0 List-Id: List-Help: List-Subscribe: List-Post: List-Owner: List-Archive: Precedence: bulk --0000000000005db78a05a11eef80 Content-Type: multipart/alternative; boundary="0000000000005db77e05a11eef7e" --0000000000005db77e05a11eef7e Content-Type: text/plain; charset="UTF-8" Hi Hackers, Attached is the patch to add support for Collation, FTS Templates, FTS Dictionaries, FTS Configurations and FTS Parsers in Schema Diff Tool. The patch contains some minor fix where parameters are added in the difference list even though it's size is zero. I have also added the test cases. Please review it. -- *Thanks & Regards* *Akshay Joshi* *Sr. Software Architect* *EnterpriseDB Software India Private Limited* *Mobile: +91 976-788-8246* --0000000000005db77e05a11eef7e Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi Hackers,=C2=A0

Attached is the patch= to add support for Collation, FTS Templates, FTS Dictionaries, FTS Configu= rations and FTS Parsers in Schema Diff Tool.

The p= atch contains some minor=C2=A0fix where parameters are added in the differe= nce list even though it's size is zero. I have also added the test case= s.

Please review it.

--
<= div dir=3D"ltr">
Thanks & Regards
Akshay Joshi=
Sr. Softwa= re Architect
Enterprise= DB Software India Private Limited
Mobile: +91 976-788-82= 46
--0000000000005db77e05a11eef7e-- --0000000000005db78a05a11eef80 Content-Type: application/octet-stream; name="RM_5261.patch" Content-Disposition: attachment; filename="RM_5261.patch" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_k7x62bzi0 ZGlmZiAtLWdpdCBhL2RvY3MvZW5fVVMvcmVsZWFzZV9ub3Rlc180XzIwLnJzdCBiL2RvY3MvZW5f VVMvcmVsZWFzZV9ub3Rlc180XzIwLnJzdAppbmRleCBiZTFhNThjMGQuLmYyMmQ1NWViYiAxMDA2 NDQKLS0tIGEvZG9jcy9lbl9VUy9yZWxlYXNlX25vdGVzXzRfMjAucnN0CisrKyBiL2RvY3MvZW5f VVMvcmVsZWFzZV9ub3Rlc180XzIwLnJzdApAQCAtOSw2ICs5LDcgQEAgVGhpcyByZWxlYXNlIGNv bnRhaW5zIGEgbnVtYmVyIG9mIGJ1ZyBmaXhlcyBhbmQgbmV3IGZlYXR1cmVzIHNpbmNlIHRoZSBy ZWxlYXNlIG8KIE5ldyBmZWF0dXJlcwogKioqKioqKioqKioqCiAKK3wgYElzc3VlICM1MjYxIDxo dHRwczovL3JlZG1pbmUucG9zdGdyZXNxbC5vcmcvaXNzdWVzLzUyNjE+YF8gLSAgQWRkZWQgc3Vw cG9ydCBvZiBDb2xsYXRpb24sIEZUUyBDb25maWd1cmF0aW9uLCBGVFMgRGljdGlvbmFyeSwgRlRT IFBhcnNlciwgYW5kIEZUUyBUZW1wbGF0ZSB0byB0aGUgU2NoZW1hIERpZmYuCiAKIEhvdXNla2Vl cGluZwogKioqKioqKioqKioqCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZl cl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9jb2xsYXRpb25zL19faW5pdF9fLnB5 IGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3Nj aGVtYXMvY29sbGF0aW9ucy9fX2luaXRfXy5weQppbmRleCA4YzJkZTA3ZjcuLjRjNjc0ODBiMyAx MDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0 YWJhc2VzL3NjaGVtYXMvY29sbGF0aW9ucy9fX2luaXRfXy5weQorKysgYi93ZWIvcGdhZG1pbi9i cm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9jb2xsYXRpb25z L19faW5pdF9fLnB5CkBAIC01MDEsNyArNTAxLDcgQEAgY2xhc3MgQ29sbGF0aW9uVmlldyhQR0No aWxkTm9kZVZpZXcsIFNjaGVtYURpZmZPYmplY3RDb21wYXJlKToKICAgICAgICAgKQogCiAgICAg QGNoZWNrX3ByZWNvbmRpdGlvbgotICAgIGRlZiBkZWxldGUoc2VsZiwgZ2lkLCBzaWQsIGRpZCwg c2NpZCwgY29pZD1Ob25lKToKKyAgICBkZWYgZGVsZXRlKHNlbGYsIGdpZCwgc2lkLCBkaWQsIHNj aWQsIGNvaWQ9Tm9uZSwgb25seV9zcWw9RmFsc2UpOgogICAgICAgICAiIiIKICAgICAgICAgVGhp cyBmdW5jdGlvbiB3aWxsIGRlbGV0ZSBleGlzdGluZyB0aGUgY29sbGF0aW9uIG9iamVjdAogCkBA IC01MTEsNiArNTExLDcgQEAgY2xhc3MgQ29sbGF0aW9uVmlldyhQR0NoaWxkTm9kZVZpZXcsIFNj aGVtYURpZmZPYmplY3RDb21wYXJlKToKICAgICAgICAgICAgZGlkOiBEYXRhYmFzZSBJRAogICAg ICAgICAgICBzY2lkOiBTY2hlbWEgSUQKICAgICAgICAgICAgY29pZDogQ29sbGF0aW9uIElECisg ICAgICAgICAgIG9ubHlfc3FsOiBSZXR1cm4gb25seSBzcWwgaWYgVHJ1ZQogICAgICAgICAiIiIK ICAgICAgICAgaWYgY29pZCBpcyBOb25lOgogICAgICAgICAgICAgZGF0YSA9IHJlcXVlc3QuZm9y bSBpZiByZXF1ZXN0LmZvcm0gZWxzZSBqc29uLmxvYWRzKApAQCAtNTQ4LDYgKzU0OSwxMSBAQCBj bGFzcyBDb2xsYXRpb25WaWV3KFBHQ2hpbGROb2RlVmlldywgU2NoZW1hRGlmZk9iamVjdENvbXBh cmUpOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuc3BuYW1lPWRhdGFb J3NjaGVtYSddLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjYXNjYWRl PWNhc2NhZGUsCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbm49c2Vs Zi5jb25uKQorCisgICAgICAgICAgICAgICAgIyBVc2VkIGZvciBzY2hlbWEgZGlmZiB0b29sCisg ICAgICAgICAgICAgICAgaWYgb25seV9zcWw6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBT UUwKKwogICAgICAgICAgICAgICAgIHN0YXR1cywgcmVzID0gc2VsZi5jb25uLmV4ZWN1dGVfc2Nh bGFyKFNRTCkKICAgICAgICAgICAgICAgICBpZiBub3Qgc3RhdHVzOgogICAgICAgICAgICAgICAg ICAgICByZXR1cm4gaW50ZXJuYWxfc2VydmVyX2Vycm9yKGVycm9ybXNnPXJlcykKQEAgLTY4NSw3 ICs2OTEsOCBAQCBjbGFzcyBDb2xsYXRpb25WaWV3KFBHQ2hpbGROb2RlVmlldywgU2NoZW1hRGlm Zk9iamVjdENvbXBhcmUpOgogICAgICAgICAgICAgcmV0dXJuIFNRTC5zdHJpcCgnXG4nKSwgZGF0 YVsnbmFtZSddCiAKICAgICBAY2hlY2tfcHJlY29uZGl0aW9uCi0gICAgZGVmIHNxbChzZWxmLCBn aWQsIHNpZCwgZGlkLCBzY2lkLCBjb2lkKToKKyAgICBkZWYgc3FsKHNlbGYsIGdpZCwgc2lkLCBk aWQsIHNjaWQsIGNvaWQsIGRpZmZfc2NoZW1hPU5vbmUsCisgICAgICAgICAgICBqc29uX3Jlc3A9 VHJ1ZSk6CiAgICAgICAgICIiIgogICAgICAgICBUaGlzIGZ1bmN0aW9uIHdpbGwgZ2VuZXJhdGVz IHJldmVyc2UgZW5naW5lZXJlZCBzcWwgZm9yIGNvbGxhdGlvbgogICAgICAgICBvYmplY3QKQEAg LTY5Niw2ICs3MDMsOCBAQCBjbGFzcyBDb2xsYXRpb25WaWV3KFBHQ2hpbGROb2RlVmlldywgU2No ZW1hRGlmZk9iamVjdENvbXBhcmUpOgogICAgICAgICAgICBkaWQ6IERhdGFiYXNlIElECiAgICAg ICAgICAgIHNjaWQ6IFNjaGVtYSBJRAogICAgICAgICAgICBjb2lkOiBDb2xsYXRpb24gSUQKKyAg ICAgICAgICAgZGlmZl9zY2hlbWE6IFRhcmdldCBTY2hlbWEgZm9yIHNjaGVtYSBkaWZmCisgICAg ICAgICAgIGpzb25fcmVzcDogVHJ1ZSB0aGVuIHJldHVybiBqc29uIHJlc3BvbnNlCiAgICAgICAg ICIiIgogICAgICAgICBTUUwgPSByZW5kZXJfdGVtcGxhdGUoIi8iLmpvaW4oW3NlbGYudGVtcGxh dGVfcGF0aCwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAncHJvcGVy dGllcy5zcWwnXSksCkBAIC03MTAsNiArNzE5LDkgQEAgY2xhc3MgQ29sbGF0aW9uVmlldyhQR0No aWxkTm9kZVZpZXcsIFNjaGVtYURpZmZPYmplY3RDb21wYXJlKToKIAogICAgICAgICBkYXRhID0g cmVzWydyb3dzJ11bMF0KIAorICAgICAgICBpZiBkaWZmX3NjaGVtYToKKyAgICAgICAgICAgIGRh dGFbJ3NjaGVtYSddID0gZGlmZl9zY2hlbWEKKwogICAgICAgICBTUUwgPSByZW5kZXJfdGVtcGxh dGUoIi8iLmpvaW4oW3NlbGYudGVtcGxhdGVfcGF0aCwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAnY3JlYXRlLnNxbCddKSwKICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIGRhdGE9ZGF0YSwgY29ubj1zZWxmLmNvbm4pCkBAIC03MjIsNiArNzM0LDkgQEAgY2xh c3MgQ29sbGF0aW9uVmlldyhQR0NoaWxkTm9kZVZpZXcsIFNjaGVtYURpZmZPYmplY3RDb21wYXJl KToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbnNwbmFtZT1kYXRhWydz Y2hlbWEnXSkKICAgICAgICAgU1FMID0gc3FsX2hlYWRlciArICdcblxuJyArIFNRTC5zdHJpcCgn XG4nKQogCisgICAgICAgIGlmIG5vdCBqc29uX3Jlc3A6CisgICAgICAgICAgICByZXR1cm4gU1FM CisKICAgICAgICAgcmV0dXJuIGFqYXhfcmVzcG9uc2UocmVzcG9uc2U9U1FMKQogCiAgICAgQGNo ZWNrX3ByZWNvbmRpdGlvbgpAQCAtNzkzLDUgKzgwOCwzOCBAQCBjbGFzcyBDb2xsYXRpb25WaWV3 KFBHQ2hpbGROb2RlVmlldywgU2NoZW1hRGlmZk9iamVjdENvbXBhcmUpOgogCiAgICAgICAgIHJl dHVybiByZXMKIAotCisgICAgZGVmIGdldF9zcWxfZnJvbV9kaWZmKHNlbGYsIGdpZCwgc2lkLCBk aWQsIHNjaWQsIG9pZCwgZGF0YT1Ob25lLAorICAgICAgICAgICAgICAgICAgICAgICAgICBkaWZm X3NjaGVtYT1Ob25lLCBkcm9wX3NxbD1GYWxzZSk6CisgICAgICAgICIiIgorICAgICAgICBUaGlz IGZ1bmN0aW9uIGlzIHVzZWQgdG8gZ2V0IHRoZSBEREwvRE1MIHN0YXRlbWVudHMuCisgICAgICAg IDpwYXJhbSBnaWQ6IEdyb3VwIElECisgICAgICAgIDpwYXJhbSBzaWQ6IFNlcnZlIElECisgICAg ICAgIDpwYXJhbSBkaWQ6IERhdGFiYXNlIElECisgICAgICAgIDpwYXJhbSBzY2lkOiBTY2hlbWEg SUQKKyAgICAgICAgOnBhcmFtIG9pZDogQ29sbGF0aW9uIElECisgICAgICAgIDpwYXJhbSBkYXRh OiBEaWZmZXJlbmNlIGRhdGEKKyAgICAgICAgOnBhcmFtIGRpZmZfc2NoZW1hOiBUYXJnZXQgU2No ZW1hCisgICAgICAgIDpwYXJhbSBkcm9wX3NxbDogVHJ1ZSBpZiBuZWVkIHRvIGRyb3AgdGhlIGNv bGxhdGlvbgorICAgICAgICA6cmV0dXJuOgorICAgICAgICAiIiIKKyAgICAgICAgc3FsID0gJycK KyAgICAgICAgaWYgZGF0YToKKyAgICAgICAgICAgIGlmIGRpZmZfc2NoZW1hOgorICAgICAgICAg ICAgICAgIGRhdGFbJ3NjaGVtYSddID0gZGlmZl9zY2hlbWEKKyAgICAgICAgICAgIHNxbCwgbmFt ZSA9IHNlbGYuZ2V0X3NxbChnaWQ9Z2lkLCBzaWQ9c2lkLCBkYXRhPWRhdGEsIHNjaWQ9c2NpZCwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb2lkPW9pZCkKKyAgICAgICAg ZWxzZToKKyAgICAgICAgICAgIGlmIGRyb3Bfc3FsOgorICAgICAgICAgICAgICAgIHNxbCA9IHNl bGYuZGVsZXRlKGdpZD1naWQsIHNpZD1zaWQsIGRpZD1kaWQsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgc2NpZD1zY2lkLCBjb2lkPW9pZCwgb25seV9zcWw9VHJ1ZSkKKyAgICAg ICAgICAgIGVsaWYgZGlmZl9zY2hlbWE6CisgICAgICAgICAgICAgICAgc3FsID0gc2VsZi5zcWwo Z2lkPWdpZCwgc2lkPXNpZCwgZGlkPWRpZCwgc2NpZD1zY2lkLCBjb2lkPW9pZCwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBkaWZmX3NjaGVtYT1kaWZmX3NjaGVtYSwganNvbl9yZXNw PUZhbHNlKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzcWwgPSBzZWxmLnNx bChnaWQ9Z2lkLCBzaWQ9c2lkLCBkaWQ9ZGlkLCBzY2lkPXNjaWQsIGNvaWQ9b2lkLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGpzb25fcmVzcD1GYWxzZSkKKyAgICAgICAgcmV0dXJu IHNxbAorCisKK1NjaGVtYURpZmZSZWdpc3RyeShibHVlcHJpbnQubm9kZV90eXBlLCBDb2xsYXRp b25WaWV3KQogQ29sbGF0aW9uVmlldy5yZWdpc3Rlcl9ub2RlX3ZpZXcoYmx1ZXByaW50KQpkaWZm IC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvY29sbGF0aW9ucy90ZW1wbGF0ZXMvY29sbGF0aW9ucy9zcWwvZGVmYXVsdC91 cGRhdGUuc3FsIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0 YWJhc2VzL3NjaGVtYXMvY29sbGF0aW9ucy90ZW1wbGF0ZXMvY29sbGF0aW9ucy9zcWwvZGVmYXVs dC91cGRhdGUuc3FsCmluZGV4IDllZTFjY2IyNy4uMjU4NTlmODliIDEwMDY0NAotLS0gYS93ZWIv cGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9j b2xsYXRpb25zL3RlbXBsYXRlcy9jb2xsYXRpb25zL3NxbC9kZWZhdWx0L3VwZGF0ZS5zcWwKKysr IGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3Nj aGVtYXMvY29sbGF0aW9ucy90ZW1wbGF0ZXMvY29sbGF0aW9ucy9zcWwvZGVmYXVsdC91cGRhdGUu c3FsCkBAIC0xLDUgKzEsMjMgQEAKIHslIGlmIGRhdGEgJX0KIHsjIENoYW5nZSBvYmplY3QncyBv d25lciAjfQoreyUgaWYgKGRhdGEubGNfY29sbGF0ZSBhbmQgZGF0YS5sY190eXBlKSBvciBkYXRh LmxvY2FsZSBvciBkYXRhLmNvcHlfY29sbGF0aW9uICV9CistLSBXQVJOSU5HOgorLS0gV2UgaGF2 ZSBmb3VuZCB0aGUgZGlmZmVyZW5jZSBpbiBlaXRoZXIgb2YgTENfQ09MTEFURSBvciBMQ19DVFlQ RSBvciBMT0NBTEUsCistLSBzbyB3ZSBuZWVkIHRvIGRyb3AgdGhlIGV4aXN0aW5nIGNvbGxhdGlv biBmaXJzdCBhbmQgcmUtY3JlYXRlIGl0LgorRFJPUCBDT0xMQVRJT04ge3sgY29ubnxxdElkZW50 KG9fZGF0YS5zY2hlbWEsIG9fZGF0YS5uYW1lKSB9fTsKKworQ1JFQVRFIENPTExBVElPTiB7eyBj b25ufHF0SWRlbnQob19kYXRhLnNjaGVtYSwgb19kYXRhLm5hbWUpIH19Cit7JSBpZiBkYXRhLmxj X2NvbGxhdGUgYW5kIGRhdGEubGNfdHlwZSAlfQorICAgIChMQ19DT0xMQVRFID0ge3sgZGF0YS5s Y19jb2xsYXRlfHF0TGl0ZXJhbCB9fSwgTENfQ1RZUEUgPSB7eyBkYXRhLmxjX3R5cGV8cXRMaXRl cmFsIH19KTsKK3slIGVuZGlmICV9Cit7JSBpZiBkYXRhLmxvY2FsZSAlfQorICAgIChMT0NBTEUg PSB7eyBkYXRhLmxvY2FsZXxxdExpdGVyYWwgfX0pOworeyUgZW5kaWYgJX0KK3slIGlmIGRhdGEu Y29weV9jb2xsYXRpb24gJX0KKyAgICBGUk9NIHt7IGRhdGEuY29weV9jb2xsYXRpb24gfX07Cit7 JSBlbmRpZiAlfQorCit7JSBlbmRpZiAlfQogeyUgaWYgZGF0YS5vd25lciBhbmQgZGF0YS5vd25l ciAhPSBvX2RhdGEub3duZXIgJX0KIEFMVEVSIENPTExBVElPTiB7eyBjb25ufHF0SWRlbnQob19k YXRhLnNjaGVtYSwgb19kYXRhLm5hbWUpIH19CiAgICAgT1dORVIgVE8ge3sgY29ubnxxdElkZW50 KGRhdGEub3duZXIpIH19OwpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJf Z3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnRzX2NvbmZpZ3VyYXRpb25zL19faW5p dF9fLnB5IGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvZnRzX2NvbmZpZ3VyYXRpb25zL19faW5pdF9fLnB5CmluZGV4IGNhZTE0OWYy OS4uNzA2NWM2NjMwIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdHNfY29uZmlndXJhdGlvbnMvX19pbml0X18u cHkKKysrIGIvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJh c2VzL3NjaGVtYXMvZnRzX2NvbmZpZ3VyYXRpb25zL19faW5pdF9fLnB5CkBAIC01MzIsNyArNTMy LDcgQEAgY2xhc3MgRnRzQ29uZmlndXJhdGlvblZpZXcoUEdDaGlsZE5vZGVWaWV3LCBTY2hlbWFE aWZmT2JqZWN0Q29tcGFyZSk6CiAgICAgICAgICkKIAogICAgIEBjaGVja19wcmVjb25kaXRpb24K LSAgICBkZWYgZGVsZXRlKHNlbGYsIGdpZCwgc2lkLCBkaWQsIHNjaWQsIGNmZ2lkPU5vbmUpOgor ICAgIGRlZiBkZWxldGUoc2VsZiwgZ2lkLCBzaWQsIGRpZCwgc2NpZCwgY2ZnaWQ9Tm9uZSwgb25s eV9zcWw9RmFsc2UpOgogICAgICAgICAiIiIKICAgICAgICAgVGhpcyBmdW5jdGlvbiB3aWxsIGRy b3AgdGhlIEZUUyBDb25maWd1cmF0aW9uIG9iamVjdAogICAgICAgICA6cGFyYW0gZ2lkOiBncm91 cCBpZApAQCAtNTQwLDYgKzU0MCw3IEBAIGNsYXNzIEZ0c0NvbmZpZ3VyYXRpb25WaWV3KFBHQ2hp bGROb2RlVmlldywgU2NoZW1hRGlmZk9iamVjdENvbXBhcmUpOgogICAgICAgICA6cGFyYW0gZGlk OiBkYXRhYmFzZSBpZAogICAgICAgICA6cGFyYW0gc2NpZDogc2NoZW1hIGlkCiAgICAgICAgIDpw YXJhbSBjZmdpZDogRlRTIENvbmZpZ3VyYXRpb24gaWQKKyAgICAgICAgOnBhcmFtIG9ubHlfc3Fs OiBSZXR1cm4gb25seSBzcWwgaWYgVHJ1ZQogICAgICAgICAiIiIKICAgICAgICAgaWYgY2ZnaWQg aXMgTm9uZToKICAgICAgICAgICAgIGRhdGEgPSByZXF1ZXN0LmZvcm0gaWYgcmVxdWVzdC5mb3Jt IGVsc2UganNvbi5sb2FkcygKQEAgLTU4Nyw2ICs1ODgsMTAgQEAgY2xhc3MgRnRzQ29uZmlndXJh dGlvblZpZXcoUEdDaGlsZE5vZGVWaWV3LCBTY2hlbWFEaWZmT2JqZWN0Q29tcGFyZSk6CiAgICAg ICAgICAgICAgICAgICAgIGNhc2NhZGU9Y2FzY2FkZQogICAgICAgICAgICAgICAgICkKIAorICAg ICAgICAgICAgICAgICMgVXNlZCBmb3Igc2NoZW1hIGRpZmYgdG9vbAorICAgICAgICAgICAgICAg IGlmIG9ubHlfc3FsOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gc3FsCisKICAgICAgICAg ICAgICAgICBzdGF0dXMsIHJlcyA9IHNlbGYuY29ubi5leGVjdXRlX3NjYWxhcihzcWwpCiAgICAg ICAgICAgICAgICAgaWYgbm90IHN0YXR1czoKICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGlu dGVybmFsX3NlcnZlcl9lcnJvcihlcnJvcm1zZz1yZXMpCkBAIC04NjksNyArODc0LDggQEAgY2xh c3MgRnRzQ29uZmlndXJhdGlvblZpZXcoUEdDaGlsZE5vZGVWaWV3LCBTY2hlbWFEaWZmT2JqZWN0 Q29tcGFyZSk6CiAgICAgICAgICkKIAogICAgIEBjaGVja19wcmVjb25kaXRpb24KLSAgICBkZWYg c3FsKHNlbGYsIGdpZCwgc2lkLCBkaWQsIHNjaWQsIGNmZ2lkKToKKyAgICBkZWYgc3FsKHNlbGYs IGdpZCwgc2lkLCBkaWQsIHNjaWQsIGNmZ2lkLCBkaWZmX3NjaGVtYT1Ob25lLAorICAgICAgICAg ICAganNvbl9yZXNwPVRydWUpOgogICAgICAgICAiIiIKICAgICAgICAgVGhpcyBmdW5jdGlvbiB3 aWxsIHJldmVyc2UgZ2VuZXJhdGUgc3FsIGZvciBzcWwgcGFuZWwKICAgICAgICAgOnBhcmFtIGdp ZDogZ3JvdXAgaWQKQEAgLTg3Nyw2ICs4ODMsOCBAQCBjbGFzcyBGdHNDb25maWd1cmF0aW9uVmll dyhQR0NoaWxkTm9kZVZpZXcsIFNjaGVtYURpZmZPYmplY3RDb21wYXJlKToKICAgICAgICAgOnBh cmFtIGRpZDogZGF0YWJhc2UgaWQKICAgICAgICAgOnBhcmFtIHNjaWQ6IHNjaGVtYSBpZAogICAg ICAgICA6cGFyYW0gY2ZnaWQ6IEZUUyBDb25maWd1cmF0aW9uIGlkCisgICAgICAgIDpwYXJhbSBk aWZmX3NjaGVtYTogVGFyZ2V0IFNjaGVtYSBmb3Igc2NoZW1hIGRpZmYKKyAgICAgICAgOnBhcmFt IGpzb25fcmVzcDogVHJ1ZSB0aGVuIHJldHVybiBqc29uIHJlc3BvbnNlCiAgICAgICAgICIiIgog ICAgICAgICB0cnk6CiAgICAgICAgICAgICBzcWwgPSByZW5kZXJfdGVtcGxhdGUoCkBAIC05MDEs NiArOTA5LDI1IEBAIGNsYXNzIEZ0c0NvbmZpZ3VyYXRpb25WaWV3KFBHQ2hpbGROb2RlVmlldywg U2NoZW1hRGlmZk9iamVjdENvbXBhcmUpOgogICAgICAgICAgICAgICAgICAgICAgICAgIkZUUyBD b25maWd1cmF0aW9uIG5vZGUuIikKICAgICAgICAgICAgICAgICApCiAKKyAgICAgICAgICAgICMg VXNlZCBmb3Igc2NoZW1hIGRpZmYgdG9vbAorICAgICAgICAgICAgaWYgZGlmZl9zY2hlbWE6Cisg ICAgICAgICAgICAgICAgZGF0YSA9IHsnc2NoZW1hJzogc2NpZH0KKyAgICAgICAgICAgICAgICAj IEZldGNoIHNjaGVtYSBuYW1lIGZyb20gc2NoZW1hIG9pZAorICAgICAgICAgICAgICAgIHNxbCA9 IHJlbmRlcl90ZW1wbGF0ZSgiLyIuam9pbihbc2VsZi50ZW1wbGF0ZV9wYXRoLAorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ3NjaGVtYS5zcWwnXSksCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE9ZGF0YSwKKyAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29ubj1zZWxmLmNvbm4sCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKKworICAgICAgICAgICAgICAgIHN0YXR1cywg c2NoZW1hID0gc2VsZi5jb25uLmV4ZWN1dGVfc2NhbGFyKHNxbCkKKyAgICAgICAgICAgICAgICBp ZiBub3Qgc3RhdHVzOgorICAgICAgICAgICAgICAgICAgICByZXR1cm4gaW50ZXJuYWxfc2VydmVy X2Vycm9yKGVycm9ybXNnPXNjaGVtYSkKKworICAgICAgICAgICAgICAgIHJlcyA9IHJlcy5yZXBs YWNlKHNjaGVtYSwgZGlmZl9zY2hlbWEpCisKKyAgICAgICAgICAgIGlmIG5vdCBqc29uX3Jlc3A6 CisgICAgICAgICAgICAgICAgcmV0dXJuIHJlcworCiAgICAgICAgICAgICByZXR1cm4gYWpheF9y ZXNwb25zZShyZXNwb25zZT1yZXMpCiAKICAgICAgICAgZXhjZXB0IEV4Y2VwdGlvbiBhcyBlOgpA QCAtOTcwLDUgKzk5NywzOCBAQCBjbGFzcyBGdHNDb25maWd1cmF0aW9uVmlldyhQR0NoaWxkTm9k ZVZpZXcsIFNjaGVtYURpZmZPYmplY3RDb21wYXJlKToKIAogICAgICAgICByZXR1cm4gcmVzCiAK KyAgICBkZWYgZ2V0X3NxbF9mcm9tX2RpZmYoc2VsZiwgZ2lkLCBzaWQsIGRpZCwgc2NpZCwgb2lk LCBkYXRhPU5vbmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZmZfc2NoZW1hPU5vbmUs IGRyb3Bfc3FsPUZhbHNlKToKKyAgICAgICAgIiIiCisgICAgICAgIFRoaXMgZnVuY3Rpb24gaXMg dXNlZCB0byBnZXQgdGhlIERETC9ETUwgc3RhdGVtZW50cy4KKyAgICAgICAgOnBhcmFtIGdpZDog R3JvdXAgSUQKKyAgICAgICAgOnBhcmFtIHNpZDogU2VydmUgSUQKKyAgICAgICAgOnBhcmFtIGRp ZDogRGF0YWJhc2UgSUQKKyAgICAgICAgOnBhcmFtIHNjaWQ6IFNjaGVtYSBJRAorICAgICAgICA6 cGFyYW0gb2lkOiBDb2xsYXRpb24gSUQKKyAgICAgICAgOnBhcmFtIGRhdGE6IERpZmZlcmVuY2Ug ZGF0YQorICAgICAgICA6cGFyYW0gZGlmZl9zY2hlbWE6IFRhcmdldCBTY2hlbWEKKyAgICAgICAg OnBhcmFtIGRyb3Bfc3FsOiBUcnVlIGlmIG5lZWQgdG8gZHJvcCB0aGUgZnRzIGNvbmZpZ3VyYXRp b24KKyAgICAgICAgOnJldHVybjoKKyAgICAgICAgIiIiCisgICAgICAgIHNxbCA9ICcnCisgICAg ICAgIGlmIGRhdGE6CisgICAgICAgICAgICBpZiBkaWZmX3NjaGVtYToKKyAgICAgICAgICAgICAg ICBkYXRhWydzY2hlbWEnXSA9IGRpZmZfc2NoZW1hCisgICAgICAgICAgICBzcWwsIG5hbWUgPSBz ZWxmLmdldF9zcWwoZ2lkPWdpZCwgc2lkPXNpZCwgZGlkPWRpZCwgc2NpZD1zY2lkLAorICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRhdGE9ZGF0YSwgY2ZnaWQ9b2lkKQorICAg ICAgICBlbHNlOgorICAgICAgICAgICAgaWYgZHJvcF9zcWw6CisgICAgICAgICAgICAgICAgc3Fs ID0gc2VsZi5kZWxldGUoZ2lkPWdpZCwgc2lkPXNpZCwgZGlkPWRpZCwKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBzY2lkPXNjaWQsIGNmZ2lkPW9pZCwgb25seV9zcWw9VHJ1ZSkK KyAgICAgICAgICAgIGVsaWYgZGlmZl9zY2hlbWE6CisgICAgICAgICAgICAgICAgc3FsID0gc2Vs Zi5zcWwoZ2lkPWdpZCwgc2lkPXNpZCwgZGlkPWRpZCwgc2NpZD1zY2lkLCBjZmdpZD1vaWQsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZl9zY2hlbWE9ZGlmZl9zY2hlbWEsIGpz b25fcmVzcD1GYWxzZSkKKyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc3FsID0g c2VsZi5zcWwoZ2lkPWdpZCwgc2lkPXNpZCwgZGlkPWRpZCwgc2NpZD1zY2lkLCBjZmdpZD1vaWQs CisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAganNvbl9yZXNwPUZhbHNlKQorICAgICAg ICByZXR1cm4gc3FsCisKIAorU2NoZW1hRGlmZlJlZ2lzdHJ5KGJsdWVwcmludC5ub2RlX3R5cGUs IEZ0c0NvbmZpZ3VyYXRpb25WaWV3KQogRnRzQ29uZmlndXJhdGlvblZpZXcucmVnaXN0ZXJfbm9k ZV92aWV3KGJsdWVwcmludCkKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVy X2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z0c19kaWN0aW9uYXJpZXMvX19pbml0 X18ucHkgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFz ZXMvc2NoZW1hcy9mdHNfZGljdGlvbmFyaWVzL19faW5pdF9fLnB5CmluZGV4IDg0ZDZlZGVhZC4u NmI4MjMyZjA3IDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMv c2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdHNfZGljdGlvbmFyaWVzL19faW5pdF9fLnB5Cisr KyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9z Y2hlbWFzL2Z0c19kaWN0aW9uYXJpZXMvX19pbml0X18ucHkKQEAgLTUyNyw3ICs1MjcsNyBAQCBj bGFzcyBGdHNEaWN0aW9uYXJ5VmlldyhQR0NoaWxkTm9kZVZpZXcsIFNjaGVtYURpZmZPYmplY3RD b21wYXJlKToKICAgICAgICAgKQogCiAgICAgQGNoZWNrX3ByZWNvbmRpdGlvbgotICAgIGRlZiBk ZWxldGUoc2VsZiwgZ2lkLCBzaWQsIGRpZCwgc2NpZCwgZGNpZD1Ob25lKToKKyAgICBkZWYgZGVs ZXRlKHNlbGYsIGdpZCwgc2lkLCBkaWQsIHNjaWQsIGRjaWQ9Tm9uZSwgb25seV9zcWw9RmFsc2Up OgogICAgICAgICAiIiIKICAgICAgICAgVGhpcyBmdW5jdGlvbiB3aWxsIGRyb3AgdGhlIEZUUyBE aWN0aW9uYXJ5IG9iamVjdAogICAgICAgICA6cGFyYW0gZ2lkOiBncm91cCBpZApAQCAtNTM1LDYg KzUzNSw3IEBAIGNsYXNzIEZ0c0RpY3Rpb25hcnlWaWV3KFBHQ2hpbGROb2RlVmlldywgU2NoZW1h RGlmZk9iamVjdENvbXBhcmUpOgogICAgICAgICA6cGFyYW0gZGlkOiBkYXRhYmFzZSBpZAogICAg ICAgICA6cGFyYW0gc2NpZDogc2NoZW1hIGlkCiAgICAgICAgIDpwYXJhbSBkY2lkOiBGVFMgRGlj dGlvbmFyeSBpZAorICAgICAgICA6cGFyYW0gb25seV9zcWw6IFJldHVybiBvbmx5IHNxbCBpZiBU cnVlCiAgICAgICAgICIiIgogICAgICAgICBpZiBkY2lkIGlzIE5vbmU6CiAgICAgICAgICAgICBk YXRhID0gcmVxdWVzdC5mb3JtIGlmIHJlcXVlc3QuZm9ybSBlbHNlIGpzb24ubG9hZHMoCkBAIC01 ODEsNiArNTgyLDEwIEBAIGNsYXNzIEZ0c0RpY3Rpb25hcnlWaWV3KFBHQ2hpbGROb2RlVmlldywg U2NoZW1hRGlmZk9iamVjdENvbXBhcmUpOgogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjYXNjYWRlPWNhc2NhZGUKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKQogCisgICAgICAgICAgICAgICAgIyBVc2VkIGZvciBzY2hlbWEgZGlmZiB0b29sCisg ICAgICAgICAgICAgICAgaWYgb25seV9zcWw6CisgICAgICAgICAgICAgICAgICAgIHJldHVybiBz cWwKKwogICAgICAgICAgICAgICAgIHN0YXR1cywgcmVzID0gc2VsZi5jb25uLmV4ZWN1dGVfc2Nh bGFyKHNxbCkKICAgICAgICAgICAgICAgICBpZiBub3Qgc3RhdHVzOgogICAgICAgICAgICAgICAg ICAgICByZXR1cm4gaW50ZXJuYWxfc2VydmVyX2Vycm9yKGVycm9ybXNnPXJlcykKQEAgLTc2Niw3 ICs3NzEsOCBAQCBjbGFzcyBGdHNEaWN0aW9uYXJ5VmlldyhQR0NoaWxkTm9kZVZpZXcsIFNjaGVt YURpZmZPYmplY3RDb21wYXJlKToKICAgICAgICAgKQogCiAgICAgQGNoZWNrX3ByZWNvbmRpdGlv bgotICAgIGRlZiBzcWwoc2VsZiwgZ2lkLCBzaWQsIGRpZCwgc2NpZCwgZGNpZCk6CisgICAgZGVm IHNxbChzZWxmLCBnaWQsIHNpZCwgZGlkLCBzY2lkLCBkY2lkLCBkaWZmX3NjaGVtYT1Ob25lLAor ICAgICAgICAgICAganNvbl9yZXNwPVRydWUpOgogICAgICAgICAiIiIKICAgICAgICAgVGhpcyBm dW5jdGlvbiB3aWxsIHJldmVyc2UgZ2VuZXJhdGUgc3FsIGZvciBzcWwgcGFuZWwKICAgICAgICAg OnBhcmFtIGdpZDogZ3JvdXAgaWQKQEAgLTc3NCw2ICs3ODAsOCBAQCBjbGFzcyBGdHNEaWN0aW9u YXJ5VmlldyhQR0NoaWxkTm9kZVZpZXcsIFNjaGVtYURpZmZPYmplY3RDb21wYXJlKToKICAgICAg ICAgOnBhcmFtIGRpZDogZGF0YWJhc2UgaWQKICAgICAgICAgOnBhcmFtIHNjaWQ6IHNjaGVtYSBp ZAogICAgICAgICA6cGFyYW0gZGNpZDogRlRTIERpY3Rpb25hcnkgaWQKKyAgICAgICAgOnBhcmFt IGRpZmZfc2NoZW1hOiBUYXJnZXQgU2NoZW1hIGZvciBzY2hlbWEgZGlmZgorICAgICAgICA6cGFy YW0ganNvbl9yZXNwOiBUcnVlIHRoZW4gcmV0dXJuIGpzb24gcmVzcG9uc2UKICAgICAgICAgIiIi CiAKICAgICAgICAgc3FsID0gcmVuZGVyX3RlbXBsYXRlKApAQCAtODE5LDYgKzgyNyw5IEBAIGNs YXNzIEZ0c0RpY3Rpb25hcnlWaWV3KFBHQ2hpbGROb2RlVmlldywgU2NoZW1hRGlmZk9iamVjdENv bXBhcmUpOgogICAgICAgICAjIFJlcGxhY2Ugc2NoZW1hIG9pZCB3aXRoIHNjaGVtYSBuYW1lCiAg ICAgICAgIHJlc1sncm93cyddWzBdWydzY2hlbWEnXSA9IHNjaGVtYQogCisgICAgICAgIGlmIGRp ZmZfc2NoZW1hOgorICAgICAgICAgICAgcmVzWydyb3dzJ11bMF1bJ3NjaGVtYSddID0gZGlmZl9z Y2hlbWEKKwogICAgICAgICBzcWwgPSByZW5kZXJfdGVtcGxhdGUoIi8iLmpvaW4oW3NlbGYudGVt cGxhdGVfcGF0aCwgJ2NyZWF0ZS5zcWwnXSksCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBkYXRhPXJlc1sncm93cyddWzBdLAogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY29u bj1zZWxmLmNvbm4sIGlzX2Rpc3BsYXlpbmc9VHJ1ZSkKQEAgLTgzMiw2ICs4NDMsOSBAQCBjbGFz cyBGdHNEaWN0aW9uYXJ5VmlldyhQR0NoaWxkTm9kZVZpZXcsIFNjaGVtYURpZmZPYmplY3RDb21w YXJlKToKIAogICAgICAgICBzcWwgPSBzcWxfaGVhZGVyICsgc3FsCiAKKyAgICAgICAgaWYgbm90 IGpzb25fcmVzcDoKKyAgICAgICAgICAgIHJldHVybiBzcWwKKwogICAgICAgICByZXR1cm4gYWph eF9yZXNwb25zZShyZXNwb25zZT1zcWwuc3RyaXAoJ1xuJykpCiAKICAgICBAY2hlY2tfcHJlY29u ZGl0aW9uCkBAIC04OTcsNSArOTExLDM4IEBAIGNsYXNzIEZ0c0RpY3Rpb25hcnlWaWV3KFBHQ2hp bGROb2RlVmlldywgU2NoZW1hRGlmZk9iamVjdENvbXBhcmUpOgogCiAgICAgICAgIHJldHVybiBy ZXMKIAorICAgIGRlZiBnZXRfc3FsX2Zyb21fZGlmZihzZWxmLCBnaWQsIHNpZCwgZGlkLCBzY2lk LCBvaWQsIGRhdGE9Tm9uZSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZl9zY2hlbWE9 Tm9uZSwgZHJvcF9zcWw9RmFsc2UpOgorICAgICAgICAiIiIKKyAgICAgICAgVGhpcyBmdW5jdGlv biBpcyB1c2VkIHRvIGdldCB0aGUgRERML0RNTCBzdGF0ZW1lbnRzLgorICAgICAgICA6cGFyYW0g Z2lkOiBHcm91cCBJRAorICAgICAgICA6cGFyYW0gc2lkOiBTZXJ2ZSBJRAorICAgICAgICA6cGFy YW0gZGlkOiBEYXRhYmFzZSBJRAorICAgICAgICA6cGFyYW0gc2NpZDogU2NoZW1hIElECisgICAg ICAgIDpwYXJhbSBvaWQ6IENvbGxhdGlvbiBJRAorICAgICAgICA6cGFyYW0gZGF0YTogRGlmZmVy ZW5jZSBkYXRhCisgICAgICAgIDpwYXJhbSBkaWZmX3NjaGVtYTogVGFyZ2V0IFNjaGVtYQorICAg ICAgICA6cGFyYW0gZHJvcF9zcWw6IFRydWUgaWYgbmVlZCB0byBkcm9wIHRoZSBmdHMgY29uZmln dXJhdGlvbgorICAgICAgICA6cmV0dXJuOgorICAgICAgICAiIiIKKyAgICAgICAgc3FsID0gJycK KyAgICAgICAgaWYgZGF0YToKKyAgICAgICAgICAgIGlmIGRpZmZfc2NoZW1hOgorICAgICAgICAg ICAgICAgIGRhdGFbJ3NjaGVtYSddID0gZGlmZl9zY2hlbWEKKyAgICAgICAgICAgIHNxbCwgbmFt ZSA9IHNlbGYuZ2V0X3NxbChnaWQ9Z2lkLCBzaWQ9c2lkLCBkaWQ9ZGlkLCBzY2lkPXNjaWQsCisg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGF0YT1kYXRhLCBkY2lkPW9pZCkK KyAgICAgICAgZWxzZToKKyAgICAgICAgICAgIGlmIGRyb3Bfc3FsOgorICAgICAgICAgICAgICAg IHNxbCA9IHNlbGYuZGVsZXRlKGdpZD1naWQsIHNpZD1zaWQsIGRpZD1kaWQsCisgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgc2NpZD1zY2lkLCBkY2lkPW9pZCwgb25seV9zcWw9VHJ1 ZSkKKyAgICAgICAgICAgIGVsaWYgZGlmZl9zY2hlbWE6CisgICAgICAgICAgICAgICAgc3FsID0g c2VsZi5zcWwoZ2lkPWdpZCwgc2lkPXNpZCwgZGlkPWRpZCwgc2NpZD1zY2lkLCBkY2lkPW9pZCwK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBkaWZmX3NjaGVtYT1kaWZmX3NjaGVtYSwg anNvbl9yZXNwPUZhbHNlKQorICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAgICAgICBzcWwg PSBzZWxmLnNxbChnaWQ9Z2lkLCBzaWQ9c2lkLCBkaWQ9ZGlkLCBzY2lkPXNjaWQsIGRjaWQ9b2lk LAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGpzb25fcmVzcD1GYWxzZSkKKyAgICAg ICAgcmV0dXJuIHNxbAorCiAKK1NjaGVtYURpZmZSZWdpc3RyeShibHVlcHJpbnQubm9kZV90eXBl LCBGdHNEaWN0aW9uYXJ5VmlldykKIEZ0c0RpY3Rpb25hcnlWaWV3LnJlZ2lzdGVyX25vZGVfdmll dyhibHVlcHJpbnQpCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91 cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdHNfcGFyc2Vycy9fX2luaXRfXy5weSBiL3dl Yi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFz L2Z0c19wYXJzZXJzL19faW5pdF9fLnB5CmluZGV4IGZkN2NmZDBiNy4uZDRhMTE1MWY2IDEwMDY0 NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFz ZXMvc2NoZW1hcy9mdHNfcGFyc2Vycy9fX2luaXRfXy5weQorKysgYi93ZWIvcGdhZG1pbi9icm93 c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMvc2NoZW1hcy9mdHNfcGFyc2Vycy9f X2luaXRfXy5weQpAQCAtNDc2LDcgKzQ3Niw3IEBAIGNsYXNzIEZ0c1BhcnNlclZpZXcoUEdDaGls ZE5vZGVWaWV3LCBTY2hlbWFEaWZmT2JqZWN0Q29tcGFyZSk6CiAgICAgICAgICkKIAogICAgIEBj aGVja19wcmVjb25kaXRpb24KLSAgICBkZWYgZGVsZXRlKHNlbGYsIGdpZCwgc2lkLCBkaWQsIHNj aWQsIHBpZD1Ob25lKToKKyAgICBkZWYgZGVsZXRlKHNlbGYsIGdpZCwgc2lkLCBkaWQsIHNjaWQs IHBpZD1Ob25lLCBvbmx5X3NxbD1GYWxzZSk6CiAgICAgICAgICIiIgogICAgICAgICBUaGlzIGZ1 bmN0aW9uIHdpbGwgZHJvcCB0aGUgZnRzX3BhcnNlciBvYmplY3QKICAgICAgICAgOnBhcmFtIGdp ZDogZ3JvdXAgaWQKQEAgLTQ4NCw2ICs0ODQsNyBAQCBjbGFzcyBGdHNQYXJzZXJWaWV3KFBHQ2hp bGROb2RlVmlldywgU2NoZW1hRGlmZk9iamVjdENvbXBhcmUpOgogICAgICAgICA6cGFyYW0gZGlk OiBkYXRhYmFzZSBpZAogICAgICAgICA6cGFyYW0gc2NpZDogc2NoZW1hIGlkCiAgICAgICAgIDpw YXJhbSBwaWQ6IGZ0cyB0ZW1wYXRlIGlkCisgICAgICAgIDpwYXJhbSBvbmx5X3NxbDogUmV0dXJu IG9ubHkgc3FsIGlmIFRydWUKICAgICAgICAgIiIiCiAgICAgICAgIGlmIHBpZCBpcyBOb25lOgog ICAgICAgICAgICAgZGF0YSA9IHJlcXVlc3QuZm9ybSBpZiByZXF1ZXN0LmZvcm0gZWxzZSBqc29u LmxvYWRzKApAQCAtNTMwLDYgKzUzMSwxMCBAQCBjbGFzcyBGdHNQYXJzZXJWaWV3KFBHQ2hpbGRO b2RlVmlldywgU2NoZW1hRGlmZk9iamVjdENvbXBhcmUpOgogICAgICAgICAgICAgICAgICAgICBj YXNjYWRlPWNhc2NhZGUKICAgICAgICAgICAgICAgICApCiAKKyAgICAgICAgICAgICAgICAjIFVz ZWQgZm9yIHNjaGVtYSBkaWZmIHRvb2wKKyAgICAgICAgICAgICAgICBpZiBvbmx5X3NxbDoKKyAg ICAgICAgICAgICAgICAgICAgcmV0dXJuIHNxbAorCiAgICAgICAgICAgICAgICAgc3RhdHVzLCBy ZXMgPSBzZWxmLmNvbm4uZXhlY3V0ZV9zY2FsYXIoc3FsKQogICAgICAgICAgICAgICAgIGlmIG5v dCBzdGF0dXM6CiAgICAgICAgICAgICAgICAgICAgIHJldHVybiBpbnRlcm5hbF9zZXJ2ZXJfZXJy b3IoZXJyb3Jtc2c9cmVzKQpAQCAtODEzLDcgKzgxOCw4IEBAIGNsYXNzIEZ0c1BhcnNlclZpZXco UEdDaGlsZE5vZGVWaWV3LCBTY2hlbWFEaWZmT2JqZWN0Q29tcGFyZSk6CiAgICAgICAgICkKIAog ICAgIEBjaGVja19wcmVjb25kaXRpb24KLSAgICBkZWYgc3FsKHNlbGYsIGdpZCwgc2lkLCBkaWQs IHNjaWQsIHBpZCk6CisgICAgZGVmIHNxbChzZWxmLCBnaWQsIHNpZCwgZGlkLCBzY2lkLCBwaWQs IGRpZmZfc2NoZW1hPU5vbmUsCisgICAgICAgICAgICBqc29uX3Jlc3A9VHJ1ZSk6CiAgICAgICAg ICIiIgogICAgICAgICBUaGlzIGZ1bmN0aW9uIHdpbGwgcmV2ZXJzZSBnZW5lcmF0ZSBzcWwgZm9y IHNxbCBwYW5lbAogICAgICAgICA6cGFyYW0gZ2lkOiBncm91cCBpZApAQCAtODIxLDYgKzgyNyw4 IEBAIGNsYXNzIEZ0c1BhcnNlclZpZXcoUEdDaGlsZE5vZGVWaWV3LCBTY2hlbWFEaWZmT2JqZWN0 Q29tcGFyZSk6CiAgICAgICAgIDpwYXJhbSBkaWQ6IGRhdGFiYXNlIGlkCiAgICAgICAgIDpwYXJh bSBzY2lkOiBzY2hlbWEgaWQKICAgICAgICAgOnBhcmFtIHBpZDogZnRzIHRlbXBhdGUgaWQKKyAg ICAgICAgOnBhcmFtIGRpZmZfc2NoZW1hOiBUYXJnZXQgU2NoZW1hIGZvciBzY2hlbWEgZGlmZgor ICAgICAgICA6cGFyYW0ganNvbl9yZXNwOiBUcnVlIHRoZW4gcmV0dXJuIGpzb24gcmVzcG9uc2UK ICAgICAgICAgIiIiCiAgICAgICAgIHRyeToKICAgICAgICAgICAgIHNxbCA9IHJlbmRlcl90ZW1w bGF0ZSgKQEAgLTg0Niw2ICs4NTQsMjUgQEAgY2xhc3MgRnRzUGFyc2VyVmlldyhQR0NoaWxkTm9k ZVZpZXcsIFNjaGVtYURpZmZPYmplY3RDb21wYXJlKToKICAgICAgICAgICAgICAgICAgICAgKQog ICAgICAgICAgICAgICAgICkKIAorICAgICAgICAgICAgIyBVc2VkIGZvciBzY2hlbWEgZGlmZiB0 b29sCisgICAgICAgICAgICBpZiBkaWZmX3NjaGVtYToKKyAgICAgICAgICAgICAgICBkYXRhID0g eydzY2hlbWEnOiBzY2lkfQorICAgICAgICAgICAgICAgICMgRmV0Y2ggc2NoZW1hIG5hbWUgZnJv bSBzY2hlbWEgb2lkCisgICAgICAgICAgICAgICAgc3FsID0gcmVuZGVyX3RlbXBsYXRlKCIvIi5q b2luKFtzZWxmLnRlbXBsYXRlX3BhdGgsCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAnc2NoZW1hLnNxbCddKSwKKyAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZGF0YT1kYXRhLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25uPXNlbGYuY29ubiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgKQorCisgICAgICAgICAgICAgICAgc3RhdHVzLCBzY2hlbWEgPSBzZWxmLmNvbm4uZXhl Y3V0ZV9zY2FsYXIoc3FsKQorICAgICAgICAgICAgICAgIGlmIG5vdCBzdGF0dXM6CisgICAgICAg ICAgICAgICAgICAgIHJldHVybiBpbnRlcm5hbF9zZXJ2ZXJfZXJyb3IoZXJyb3Jtc2c9c2NoZW1h KQorCisgICAgICAgICAgICAgICAgcmVzID0gcmVzLnJlcGxhY2Uoc2NoZW1hLCBkaWZmX3NjaGVt YSkKKworICAgICAgICAgICAgaWYgbm90IGpzb25fcmVzcDoKKyAgICAgICAgICAgICAgICByZXR1 cm4gcmVzCisKICAgICAgICAgICAgIHJldHVybiBhamF4X3Jlc3BvbnNlKHJlc3BvbnNlPXJlcykK IAogICAgICAgICBleGNlcHQgRXhjZXB0aW9uIGFzIGU6CkBAIC05MTUsNSArOTQyLDM4IEBAIGNs YXNzIEZ0c1BhcnNlclZpZXcoUEdDaGlsZE5vZGVWaWV3LCBTY2hlbWFEaWZmT2JqZWN0Q29tcGFy ZSk6CiAKICAgICAgICAgcmV0dXJuIHJlcwogCisgICAgZGVmIGdldF9zcWxfZnJvbV9kaWZmKHNl bGYsIGdpZCwgc2lkLCBkaWQsIHNjaWQsIG9pZCwgZGF0YT1Ob25lLAorICAgICAgICAgICAgICAg ICAgICAgICAgICBkaWZmX3NjaGVtYT1Ob25lLCBkcm9wX3NxbD1GYWxzZSk6CisgICAgICAgICIi IgorICAgICAgICBUaGlzIGZ1bmN0aW9uIGlzIHVzZWQgdG8gZ2V0IHRoZSBEREwvRE1MIHN0YXRl bWVudHMuCisgICAgICAgIDpwYXJhbSBnaWQ6IEdyb3VwIElECisgICAgICAgIDpwYXJhbSBzaWQ6 IFNlcnZlIElECisgICAgICAgIDpwYXJhbSBkaWQ6IERhdGFiYXNlIElECisgICAgICAgIDpwYXJh bSBzY2lkOiBTY2hlbWEgSUQKKyAgICAgICAgOnBhcmFtIG9pZDogQ29sbGF0aW9uIElECisgICAg ICAgIDpwYXJhbSBkYXRhOiBEaWZmZXJlbmNlIGRhdGEKKyAgICAgICAgOnBhcmFtIGRpZmZfc2No ZW1hOiBUYXJnZXQgU2NoZW1hCisgICAgICAgIDpwYXJhbSBkcm9wX3NxbDogVHJ1ZSBpZiBuZWVk IHRvIGRyb3AgdGhlIGZ0cyBjb25maWd1cmF0aW9uCisgICAgICAgIDpyZXR1cm46CisgICAgICAg ICIiIgorICAgICAgICBzcWwgPSAnJworICAgICAgICBpZiBkYXRhOgorICAgICAgICAgICAgaWYg ZGlmZl9zY2hlbWE6CisgICAgICAgICAgICAgICAgZGF0YVsnc2NoZW1hJ10gPSBkaWZmX3NjaGVt YQorICAgICAgICAgICAgc3FsLCBuYW1lID0gc2VsZi5nZXRfc3FsKGdpZD1naWQsIHNpZD1zaWQs IGRpZD1kaWQsIHNjaWQ9c2NpZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBkYXRhPWRhdGEsIHBpZD1vaWQpCisgICAgICAgIGVsc2U6CisgICAgICAgICAgICBpZiBkcm9w X3NxbDoKKyAgICAgICAgICAgICAgICBzcWwgPSBzZWxmLmRlbGV0ZShnaWQ9Z2lkLCBzaWQ9c2lk LCBkaWQ9ZGlkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHNjaWQ9c2NpZCwg cGlkPW9pZCwgb25seV9zcWw9VHJ1ZSkKKyAgICAgICAgICAgIGVsaWYgZGlmZl9zY2hlbWE6Cisg ICAgICAgICAgICAgICAgc3FsID0gc2VsZi5zcWwoZ2lkPWdpZCwgc2lkPXNpZCwgZGlkPWRpZCwg c2NpZD1zY2lkLCBwaWQ9b2lkLAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZmZf c2NoZW1hPWRpZmZfc2NoZW1hLCBqc29uX3Jlc3A9RmFsc2UpCisgICAgICAgICAgICBlbHNlOgor ICAgICAgICAgICAgICAgIHNxbCA9IHNlbGYuc3FsKGdpZD1naWQsIHNpZD1zaWQsIGRpZD1kaWQs IHNjaWQ9c2NpZCwgcGlkPW9pZCwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBqc29u X3Jlc3A9RmFsc2UpCisgICAgICAgIHJldHVybiBzcWwKKwogCitTY2hlbWFEaWZmUmVnaXN0cnko Ymx1ZXByaW50Lm5vZGVfdHlwZSwgRnRzUGFyc2VyVmlldykKIEZ0c1BhcnNlclZpZXcucmVnaXN0 ZXJfbm9kZV92aWV3KGJsdWVwcmludCkKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z0c19wYXJzZXJzL3RlbXBs YXRlcy9mdHNfcGFyc2Vycy9zcWwvZGVmYXVsdC91cGRhdGUuc3FsIGIvd2ViL3BnYWRtaW4vYnJv d3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3NjaGVtYXMvZnRzX3BhcnNlcnMv dGVtcGxhdGVzL2Z0c19wYXJzZXJzL3NxbC9kZWZhdWx0L3VwZGF0ZS5zcWwKaW5kZXggYmNlNTU4 ZGEwLi40OGUzMzViMWQgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dy b3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z0c19wYXJzZXJzL3RlbXBsYXRlcy9mdHNf cGFyc2Vycy9zcWwvZGVmYXVsdC91cGRhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIv c2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z0c19wYXJzZXJzL3RlbXBs YXRlcy9mdHNfcGFyc2Vycy9zcWwvZGVmYXVsdC91cGRhdGUuc3FsCkBAIC0xNSw2ICsxNSwyMyBA QCBBTFRFUiBURVhUIFNFQVJDSCBQQVJTRVIge3tjb25ufHF0SWRlbnQob19kYXRhLnNjaGVtYSl9 fS57e2Nvbm58cXRJZGVudChvX2RhdGEubgogQUxURVIgVEVYVCBTRUFSQ0ggUEFSU0VSIHt7Y29u bnxxdElkZW50KG9fZGF0YS5zY2hlbWEpfX0ue3tjb25ufHF0SWRlbnQobmFtZSl9fQogICAgIFNF VCBTQ0hFTUEge3tkYXRhLnNjaGVtYX19OwogeyUgZW5kaWYgJX0KK3sjIFNjaGVtYSBEaWZmIFNR TCBmb3IgRlRTIFBBUlNFUiAjfQoreyUgaWYgZGF0YS5wcnNzdGFydCBvciBkYXRhLnByc3Rva2Vu IG9yIGRhdGEucHJzZW5kIG9yIGRhdGEucHJzbGV4dHlwZSBvciBkYXRhLnByc2hlYWRsaW5lICV9 CistLSBXQVJOSU5HOgorLS0gV2UgaGF2ZSBmb3VuZCB0aGUgZGlmZmVyZW5jZSBpbiBlaXRoZXIg b2YgU1RBUlQgb3IgR0VUVE9LRU4gb3IgRU5EIG9yCistLSBMRVhUWVBFUyBvciBIRUFETElORSwg c28gd2UgbmVlZCB0byBkcm9wIHRoZSBleGlzdGluZyBwYXJzZXIgZmlyc3QKKy0tIGFuZCByZS1j cmVhdGUgaXQuCitEUk9QIFRFWFQgU0VBUkNIIFBBUlNFUiB7e2Nvbm58cXRJZGVudChvX2RhdGEu c2NoZW1hKX19Lnt7Y29ubnxxdElkZW50KG5hbWUpfX07CisKK0NSRUFURSBURVhUIFNFQVJDSCBQ QVJTRVIge3sgY29ubnxxdElkZW50KG9fZGF0YS5zY2hlbWEsIG5hbWUpIH19ICgKKyAgICBTVEFS VCA9IHslIGlmIGRhdGEucHJzc3RhcnQgaXMgZGVmaW5lZCAlfXt7ZGF0YS5wcnNzdGFydH19eyUg ZWxzZSAlfXt7b19kYXRhLnByc3N0YXJ0fX17JSBlbmRpZiAlfSwKKyAgICBHRVRUT0tFTiA9IHsl IGlmIGRhdGEucHJzdG9rZW4gaXMgZGVmaW5lZCAlfXt7ZGF0YS5wcnN0b2tlbn19eyUgZWxzZSAl fXt7b19kYXRhLnByc3Rva2VufX17JSBlbmRpZiAlfSwKKyAgICBFTkQgPSB7JSBpZiBkYXRhLnBy c2VuZCBpcyBkZWZpbmVkICV9e3tkYXRhLnByc2VuZH19eyUgZWxzZSAlfXt7b19kYXRhLnByc2Vu ZH19eyUgZW5kaWYgJX0sCisgICAgTEVYVFlQRVMgPSB7JSBpZiBkYXRhLnByc2xleHR5cGUgaXMg ZGVmaW5lZCAlfXt7ZGF0YS5wcnNsZXh0eXBlfX17JSBlbHNlICV9e3tvX2RhdGEucHJzbGV4dHlw ZX19eyUgZW5kaWYgJX17JSBpZiAoZGF0YS5wcnNoZWFkbGluZSBhbmQgZGF0YS5wcnNoZWFkbGlu ZSAhPSAnLScpIG9yIChvX2RhdGEucHJzaGVhZGxpbmUgYW5kIG9fZGF0YS5wcnNoZWFkbGluZSAh PSAnLScpICV9LAorICAgIEhFQURMSU5FID0geyUgaWYgZGF0YS5wcnNoZWFkbGluZSBpcyBkZWZp bmVkICV9e3tkYXRhLnByc2hlYWRsaW5lfX17JSBlbHNlICV9e3tvX2RhdGEucHJzaGVhZGxpbmV9 fXslIGVuZGlmICV9eyUgZW5kaWYgJX0KKworKTsKK3slIGVuZGlmICV9CiB7JSBpZiAiZGVzY3Jp cHRpb24iIGluIGRhdGEgYW5kIGRhdGEuZGVzY3JpcHRpb24gIT0gb19kYXRhLmRlc2NyaXB0aW9u ICV9CiBDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFBBUlNFUiB7e2Nvbm58cXRJZGVudChvX2RhdGEu c2NoZW1hKX19Lnt7Y29ubnxxdElkZW50KG5hbWUpfX0KICAgICBJUyB7eyBkYXRhLmRlc2NyaXB0 aW9ufHF0TGl0ZXJhbCB9fTsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVy X2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z0c190ZW1wbGF0ZXMvX19pbml0X18u cHkgYi93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVycy9kYXRhYmFzZXMv c2NoZW1hcy9mdHNfdGVtcGxhdGVzL19faW5pdF9fLnB5CmluZGV4IGRkNWVjNzk4MC4uNzAzMjY4 MmYxIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi9icm93c2VyL3NlcnZlcl9ncm91cHMvc2VydmVy cy9kYXRhYmFzZXMvc2NoZW1hcy9mdHNfdGVtcGxhdGVzL19faW5pdF9fLnB5CisrKyBiL3dlYi9w Z2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9zY2hlbWFzL2Z0 c190ZW1wbGF0ZXMvX19pbml0X18ucHkKQEAgLTQ0Myw3ICs0NDMsNyBAQCBjbGFzcyBGdHNUZW1w bGF0ZVZpZXcoUEdDaGlsZE5vZGVWaWV3LCBTY2hlbWFEaWZmT2JqZWN0Q29tcGFyZSk6CiAgICAg ICAgICkKIAogICAgIEBjaGVja19wcmVjb25kaXRpb24KLSAgICBkZWYgZGVsZXRlKHNlbGYsIGdp ZCwgc2lkLCBkaWQsIHNjaWQsIHRpZD1Ob25lKToKKyAgICBkZWYgZGVsZXRlKHNlbGYsIGdpZCwg c2lkLCBkaWQsIHNjaWQsIHRpZD1Ob25lLCBvbmx5X3NxbD1GYWxzZSk6CiAgICAgICAgICIiIgog ICAgICAgICBUaGlzIGZ1bmN0aW9uIHdpbGwgZHJvcCB0aGUgZnRzX3RlbXBsYXRlIG9iamVjdAog ICAgICAgICA6cGFyYW0gZ2lkOiBncm91cCBpZApAQCAtNDUxLDYgKzQ1MSw3IEBAIGNsYXNzIEZ0 c1RlbXBsYXRlVmlldyhQR0NoaWxkTm9kZVZpZXcsIFNjaGVtYURpZmZPYmplY3RDb21wYXJlKToK ICAgICAgICAgOnBhcmFtIGRpZDogZGF0YWJhc2UgaWQKICAgICAgICAgOnBhcmFtIHNjaWQ6IHNj aGVtYSBpZAogICAgICAgICA6cGFyYW0gdGlkOiBmdHMgdGVtcGF0ZSBpZAorICAgICAgICA6cGFy YW0gb25seV9zcWw6IFJldHVybiBvbmx5IHNxbCBpZiBUcnVlCiAgICAgICAgICIiIgogICAgICAg ICBpZiB0aWQgaXMgTm9uZToKICAgICAgICAgICAgIGRhdGEgPSByZXF1ZXN0LmZvcm0gaWYgcmVx dWVzdC5mb3JtIGVsc2UganNvbi5sb2FkcygKQEAgLTQ5Myw2ICs0OTQsMTAgQEAgY2xhc3MgRnRz VGVtcGxhdGVWaWV3KFBHQ2hpbGROb2RlVmlldywgU2NoZW1hRGlmZk9iamVjdENvbXBhcmUpOgog ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNhc2NhZGU9Y2FzY2FkZQogICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICkKIAorICAgICAgICAgICAgIyBVc2VkIGZvciBz Y2hlbWEgZGlmZiB0b29sCisgICAgICAgICAgICBpZiBvbmx5X3NxbDoKKyAgICAgICAgICAgICAg ICByZXR1cm4gc3FsCisKICAgICAgICAgICAgIHN0YXR1cywgcmVzID0gc2VsZi5jb25uLmV4ZWN1 dGVfc2NhbGFyKHNxbCkKICAgICAgICAgICAgIGlmIG5vdCBzdGF0dXM6CiAgICAgICAgICAgICAg ICAgcmV0dXJuIGludGVybmFsX3NlcnZlcl9lcnJvcihlcnJvcm1zZz1yZXMpCkBAIC02OTEsNyAr Njk2LDggQEAgY2xhc3MgRnRzVGVtcGxhdGVWaWV3KFBHQ2hpbGROb2RlVmlldywgU2NoZW1hRGlm Zk9iamVjdENvbXBhcmUpOgogICAgICAgICApCiAKICAgICBAY2hlY2tfcHJlY29uZGl0aW9uCi0g ICAgZGVmIHNxbChzZWxmLCBnaWQsIHNpZCwgZGlkLCBzY2lkLCB0aWQpOgorICAgIGRlZiBzcWwo c2VsZiwgZ2lkLCBzaWQsIGRpZCwgc2NpZCwgdGlkLCBkaWZmX3NjaGVtYT1Ob25lLAorICAgICAg ICAgICAganNvbl9yZXNwPVRydWUpOgogICAgICAgICAiIiIKICAgICAgICAgVGhpcyBmdW5jdGlv biB3aWxsIHJldmVyc2UgZ2VuZXJhdGUgc3FsIGZvciBzcWwgcGFuZWwKICAgICAgICAgOnBhcmFt IGdpZDogZ3JvdXAgaWQKQEAgLTY5OSw2ICs3MDUsOCBAQCBjbGFzcyBGdHNUZW1wbGF0ZVZpZXco UEdDaGlsZE5vZGVWaWV3LCBTY2hlbWFEaWZmT2JqZWN0Q29tcGFyZSk6CiAgICAgICAgIDpwYXJh bSBkaWQ6IGRhdGFiYXNlIGlkCiAgICAgICAgIDpwYXJhbSBzY2lkOiBzY2hlbWEgaWQKICAgICAg ICAgOnBhcmFtIHRpZDogZnRzIHRlbXBhdGUgaWQKKyAgICAgICAgOnBhcmFtIGRpZmZfc2NoZW1h OiBUYXJnZXQgU2NoZW1hIGZvciBzY2hlbWEgZGlmZgorICAgICAgICA6cGFyYW0ganNvbl9yZXNw OiBUcnVlIHRoZW4gcmV0dXJuIGpzb24gcmVzcG9uc2UKICAgICAgICAgIiIiCiAgICAgICAgIHNx bCA9IHJlbmRlcl90ZW1wbGF0ZSgKICAgICAgICAgICAgICIvIi5qb2luKFtzZWxmLnRlbXBsYXRl X3BhdGgsICdzcWwuc3FsJ10pLApAQCAtNzIxLDYgKzcyOSwyNSBAQCBjbGFzcyBGdHNUZW1wbGF0 ZVZpZXcoUEdDaGlsZE5vZGVWaWV3LCBTY2hlbWFEaWZmT2JqZWN0Q29tcGFyZSk6CiAgICAgICAg ICAgICAgICAgICAgICJGVFMgVGVtcGxhdGUgbm9kZS4iKQogICAgICAgICAgICAgKQogCisgICAg ICAgICMgVXNlZCBmb3Igc2NoZW1hIGRpZmYgdG9vbAorICAgICAgICBpZiBkaWZmX3NjaGVtYToK KyAgICAgICAgICAgIGRhdGEgPSB7J3NjaGVtYSc6IHNjaWR9CisgICAgICAgICAgICAjIEZldGNo IHNjaGVtYSBuYW1lIGZyb20gc2NoZW1hIG9pZAorICAgICAgICAgICAgc3FsID0gcmVuZGVyX3Rl bXBsYXRlKCIvIi5qb2luKFtzZWxmLnRlbXBsYXRlX3BhdGgsCisgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICdzY2hlbWEuc3FsJ10pLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGRhdGE9ZGF0YSwKKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBjb25uPXNlbGYuY29ubiwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICApCisKKyAgICAgICAgICAgIHN0YXR1cywgc2NoZW1hID0gc2VsZi5jb25uLmV4ZWN1dGVfc2Nh bGFyKHNxbCkKKyAgICAgICAgICAgIGlmIG5vdCBzdGF0dXM6CisgICAgICAgICAgICAgICAgcmV0 dXJuIGludGVybmFsX3NlcnZlcl9lcnJvcihlcnJvcm1zZz1zY2hlbWEpCisKKyAgICAgICAgICAg IHJlcyA9IHJlcy5yZXBsYWNlKHNjaGVtYSwgZGlmZl9zY2hlbWEpCisKKyAgICAgICAgaWYgbm90 IGpzb25fcmVzcDoKKyAgICAgICAgICAgIHJldHVybiByZXMKKwogICAgICAgICByZXR1cm4gYWph eF9yZXNwb25zZShyZXNwb25zZT1yZXMpCiAKICAgICBAY2hlY2tfcHJlY29uZGl0aW9uCkBAIC03 ODYsNSArODEzLDM4IEBAIGNsYXNzIEZ0c1RlbXBsYXRlVmlldyhQR0NoaWxkTm9kZVZpZXcsIFNj aGVtYURpZmZPYmplY3RDb21wYXJlKToKIAogICAgICAgICByZXR1cm4gcmVzCiAKKyAgICBkZWYg Z2V0X3NxbF9mcm9tX2RpZmYoc2VsZiwgZ2lkLCBzaWQsIGRpZCwgc2NpZCwgb2lkLCBkYXRhPU5v bmUsCisgICAgICAgICAgICAgICAgICAgICAgICAgIGRpZmZfc2NoZW1hPU5vbmUsIGRyb3Bfc3Fs PUZhbHNlKToKKyAgICAgICAgIiIiCisgICAgICAgIFRoaXMgZnVuY3Rpb24gaXMgdXNlZCB0byBn ZXQgdGhlIERETC9ETUwgc3RhdGVtZW50cy4KKyAgICAgICAgOnBhcmFtIGdpZDogR3JvdXAgSUQK KyAgICAgICAgOnBhcmFtIHNpZDogU2VydmUgSUQKKyAgICAgICAgOnBhcmFtIGRpZDogRGF0YWJh c2UgSUQKKyAgICAgICAgOnBhcmFtIHNjaWQ6IFNjaGVtYSBJRAorICAgICAgICA6cGFyYW0gb2lk OiBDb2xsYXRpb24gSUQKKyAgICAgICAgOnBhcmFtIGRhdGE6IERpZmZlcmVuY2UgZGF0YQorICAg ICAgICA6cGFyYW0gZGlmZl9zY2hlbWE6IFRhcmdldCBTY2hlbWEKKyAgICAgICAgOnBhcmFtIGRy b3Bfc3FsOiBUcnVlIGlmIG5lZWQgdG8gZHJvcCB0aGUgZnRzIGNvbmZpZ3VyYXRpb24KKyAgICAg ICAgOnJldHVybjoKKyAgICAgICAgIiIiCisgICAgICAgIHNxbCA9ICcnCisgICAgICAgIGlmIGRh dGE6CisgICAgICAgICAgICBpZiBkaWZmX3NjaGVtYToKKyAgICAgICAgICAgICAgICBkYXRhWydz Y2hlbWEnXSA9IGRpZmZfc2NoZW1hCisgICAgICAgICAgICBzcWwsIG5hbWUgPSBzZWxmLmdldF9z cWwoZ2lkPWdpZCwgc2lkPXNpZCwgZGlkPWRpZCwgc2NpZD1zY2lkLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIGRhdGE9ZGF0YSwgdGlkPW9pZCkKKyAgICAgICAgZWxzZToK KyAgICAgICAgICAgIGlmIGRyb3Bfc3FsOgorICAgICAgICAgICAgICAgIHNxbCA9IHNlbGYuZGVs ZXRlKGdpZD1naWQsIHNpZD1zaWQsIGRpZD1kaWQsCisgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgc2NpZD1zY2lkLCB0aWQ9b2lkLCBvbmx5X3NxbD1UcnVlKQorICAgICAgICAgICAg ZWxpZiBkaWZmX3NjaGVtYToKKyAgICAgICAgICAgICAgICBzcWwgPSBzZWxmLnNxbChnaWQ9Z2lk LCBzaWQ9c2lkLCBkaWQ9ZGlkLCBzY2lkPXNjaWQsIHRpZD1vaWQsCisgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgZGlmZl9zY2hlbWE9ZGlmZl9zY2hlbWEsIGpzb25fcmVzcD1GYWxzZSkK KyAgICAgICAgICAgIGVsc2U6CisgICAgICAgICAgICAgICAgc3FsID0gc2VsZi5zcWwoZ2lkPWdp ZCwgc2lkPXNpZCwgZGlkPWRpZCwgc2NpZD1zY2lkLCB0aWQ9b2lkLAorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGpzb25fcmVzcD1GYWxzZSkKKyAgICAgICAgcmV0dXJuIHNxbAorCiAK K1NjaGVtYURpZmZSZWdpc3RyeShibHVlcHJpbnQubm9kZV90eXBlLCBGdHNUZW1wbGF0ZVZpZXcp CiBGdHNUZW1wbGF0ZVZpZXcucmVnaXN0ZXJfbm9kZV92aWV3KGJsdWVwcmludCkKZGlmZiAtLWdp dCBhL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2RhdGFiYXNlcy9z Y2hlbWFzL2Z0c190ZW1wbGF0ZXMvdGVtcGxhdGVzL2Z0c190ZW1wbGF0ZXMvc3FsL2RlZmF1bHQv dXBkYXRlLnNxbCBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJzL2Rh dGFiYXNlcy9zY2hlbWFzL2Z0c190ZW1wbGF0ZXMvdGVtcGxhdGVzL2Z0c190ZW1wbGF0ZXMvc3Fs L2RlZmF1bHQvdXBkYXRlLnNxbAppbmRleCBkNjc1NGYwZjIuLmQ3NmYxMjExNSAxMDA2NDQKLS0t IGEvd2ViL3BnYWRtaW4vYnJvd3Nlci9zZXJ2ZXJfZ3JvdXBzL3NlcnZlcnMvZGF0YWJhc2VzL3Nj aGVtYXMvZnRzX3RlbXBsYXRlcy90ZW1wbGF0ZXMvZnRzX3RlbXBsYXRlcy9zcWwvZGVmYXVsdC91 cGRhdGUuc3FsCisrKyBiL3dlYi9wZ2FkbWluL2Jyb3dzZXIvc2VydmVyX2dyb3Vwcy9zZXJ2ZXJz L2RhdGFiYXNlcy9zY2hlbWFzL2Z0c190ZW1wbGF0ZXMvdGVtcGxhdGVzL2Z0c190ZW1wbGF0ZXMv c3FsL2RlZmF1bHQvdXBkYXRlLnNxbApAQCAtMTUsNiArMTUsMjEgQEAgQUxURVIgVEVYVCBTRUFS Q0ggVEVNUExBVEUge3tjb25ufHF0SWRlbnQob19kYXRhLnNjaGVtYSl9fS57e2Nvbm58cXRJZGVu dChvX2RhdGEKIEFMVEVSIFRFWFQgU0VBUkNIIFRFTVBMQVRFIHt7Y29ubnxxdElkZW50KG9fZGF0 YS5zY2hlbWEpfX0ue3tjb25ufHF0SWRlbnQobmFtZSl9fQogICAgIFNFVCBTQ0hFTUEge3tjb25u fHF0SWRlbnQoZGF0YS5zY2hlbWEpfX07CiB7JSBlbmRpZiAlfQoreyMgU2NoZW1hIERpZmYgU1FM IGZvciBGVFMgUEFSU0VSICN9Cit7JSBpZiBkYXRhLnRtcGxpbml0IG9yIGRhdGEudG1wbGxleGl6 ZSAlfQorLS0gV0FSTklORzoKKy0tIFdlIGhhdmUgZm91bmQgdGhlIGRpZmZlcmVuY2UgaW4gZWl0 aGVyIG9mIElOSVQgb3IgTEVYSVpFLAorLS0gc28gd2UgbmVlZCB0byBkcm9wIHRoZSBleGlzdGlu ZyB0ZW1wbGF0ZSBmaXJzdCBhbmQgcmUtY3JlYXRlIGl0LgorRFJPUCBURVhUIFNFQVJDSCBURU1Q TEFURSB7e2Nvbm58cXRJZGVudChvX2RhdGEuc2NoZW1hKX19Lnt7Y29ubnxxdElkZW50KG5hbWUp fX07CisKK0NSRUFURSBURVhUIFNFQVJDSCBURU1QTEFURSB7eyBjb25ufHF0SWRlbnQob19kYXRh LnNjaGVtYSwgbmFtZSkgfX0gKAoreyUgaWYgZGF0YS50bXBsaW5pdCBhbmQgZGF0YS50bXBsaW5p dCAhPSAnLSclfQorICAgIElOSVQgPSB7e2RhdGEudG1wbGluaXR9fSwKK3slIGVuZGlmICV9Cisg ICAgTEVYSVpFID0geyUgaWYgZGF0YS50bXBsbGV4aXplIGlzIGRlZmluZWQgJX17e2RhdGEudG1w bGxleGl6ZX19eyUgZWxzZSAlfXt7b19kYXRhLnRtcGxsZXhpemV9fXslIGVuZGlmICV9CisKKyk7 Cit7JSBlbmRpZiAlfQogeyUgaWYgJ2Rlc2NyaXB0aW9uJyBpbiBkYXRhIGFuZCBkYXRhLmRlc2Ny aXB0aW9uICE9IG9fZGF0YS5kZXNjcmlwdGlvbiAlfQogQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBU RU1QTEFURSB7e2Nvbm58cXRJZGVudChvX2RhdGEuc2NoZW1hKX19Lnt7Y29ubnxxdElkZW50KG5h bWUpfX0KICAgICBJUyB7eyBkYXRhLmRlc2NyaXB0aW9ufHF0TGl0ZXJhbCB9fTsKZGlmZiAtLWdp dCBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL19faW5pdF9fLnB5IGIvd2ViL3BnYWRt aW4vdG9vbHMvc2NoZW1hX2RpZmYvX19pbml0X18ucHkKaW5kZXggMDRmZjY0NGNlLi4xNGYwNDFl OTIgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL19faW5pdF9fLnB5 CisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL19faW5pdF9fLnB5CkBAIC00MzUs NyArNDM1LDcgQEAgZGVmIGNvbXBhcmUodHJhbnNfaWQsIHNvdXJjZV9zaWQsIHNvdXJjZV9kaWQs IHNvdXJjZV9zY2lkLAogICAgIHN0YXR1cywgbXNnID0gY2hlY2tfdmVyc2lvbl9jb21wYXRpYmls aXR5KHNvdXJjZV9zaWQsIHRhcmdldF9zaWQpCiAKICAgICBpZiBub3Qgc3RhdHVzOgotICAgICAg ICByZXR1cm4gbWFrZV9qc29uX3Jlc3BvbnNlKHN1Y2Nlc3M9MCwgZXJyb3Jtc2c9bXNnLCBzdGF0 dXM9NDA0KQorICAgICAgICByZXR1cm4gbWFrZV9qc29uX3Jlc3BvbnNlKHN1Y2Nlc3M9MCwgZXJy b3Jtc2c9bXNnLCBzdGF0dXM9NDI4KQogCiAgICAgY29tcGFyaXNvbl9yZXN1bHQgPSBbXQogCmRp ZmYgLS1naXQgYS93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi9kaXJlY3RvcnlfY29tcGFy ZS5weSBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL2RpcmVjdG9yeV9jb21wYXJlLnB5 CmluZGV4IGViMGQ3ZDIyMC4uMTEyNjA5YjliIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi90b29s cy9zY2hlbWFfZGlmZi9kaXJlY3RvcnlfY29tcGFyZS5weQorKysgYi93ZWIvcGdhZG1pbi90b29s cy9zY2hlbWFfZGlmZi9kaXJlY3RvcnlfY29tcGFyZS5weQpAQCAtMzE4LDM3ICszMTgsNDAgQEAg ZGVmIGRpcmVjdG9yeV9kaWZmKHNvdXJjZV9kaWN0LCB0YXJnZXRfZGljdCwgaWdub3JlX2tleXM9 W10sIGRpZmZlcmVuY2U9e30pOgogICAgICAgICAgICAgKSkKIAogICAgICAgICAgICAgaWYgbGVu KHRtcF9saXN0KSA+IDA6CisgICAgICAgICAgICAgICAgdG1wX3RhcmdldCA9IGNvcHkuZGVlcGNv cHkodGFyZ2V0X2RpY3Rba2V5XSkKICAgICAgICAgICAgICAgICBmb3IgaW5kZXggaW4gcmFuZ2Uo bGVuKHNvdXJjZV9kaWN0W2tleV0pKToKICAgICAgICAgICAgICAgICAgICAgc291cmNlID0gY29w eS5kZWVwY29weShzb3VyY2VfZGljdFtrZXldW2luZGV4XSkKICAgICAgICAgICAgICAgICAgICAg aWYgdHlwZShzb3VyY2UpIGlzIGxpc3Q6CiAgICAgICAgICAgICAgICAgICAgICAgICAjIFRPRE8K ICAgICAgICAgICAgICAgICAgICAgICAgIHBhc3MKICAgICAgICAgICAgICAgICAgICAgZWxpZiB0 eXBlKHNvdXJjZSkgaXMgZGljdDoKLSAgICAgICAgICAgICAgICAgICAgICAgIHRtcF9rZXlfYXJy YXkgPSBbJ25hbWUnLCAnY29sbmFtZScsICdhcmdpZCddCi0gICAgICAgICAgICAgICAgICAgICAg ICBmb3IgdG1wX2tleSBpbiB0bXBfa2V5X2FycmF5OgotICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGlmIHRtcF9rZXkgaW4gc291cmNlOgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICBpZiB0eXBlKHRhcmdldF9kaWN0W2tleV0pIGlzIGxpc3QgYW5kIFwKLSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBsZW4odGFyZ2V0X2RpY3Rba2V5XSkgPiAwOgotICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG1wID0gTm9uZQotICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdG1wX3RhcmdldCA9IFwKLSAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICBjb3B5LmRlZXBjb3B5KHRhcmdldF9kaWN0W2tleV0pCi0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBmb3IgaXRlbSBpbiB0bXBfdGFyZ2V0 OgotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRtcF9rZXkgaW4g aXRlbSBhbmQgXAotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgaXRlbVt0bXBfa2V5XSA9PSBcCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICBzb3VyY2VbdG1wX2tleV06Ci0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHRtcCA9IGNvcHkuZGVlcGNvcHkoaXRlbSkKLSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRtcCBhbmQgc291cmNlICE9IHRtcDoKLSAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB1cGRhdGVkLmFwcGVuZChjb3B5LmRl ZXBjb3B5KHNvdXJjZSkpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg dG1wX3RhcmdldC5yZW1vdmUodG1wKQotICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgZWxpZiB0bXAgYW5kIHNvdXJjZSA9PSB0bXA6Ci0gICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgdG1wX3RhcmdldC5yZW1vdmUodG1wKQotICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgZWxpZiB0bXAgaXMgTm9uZToKLSAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICBhZGRlZC5hcHBlbmQoc291cmNlKQotICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgICAgICAgICAgICAgdG1wX2tleV9h cnJheSA9IFsnbmFtZScsICdjb2xuYW1lJywgJ2FyZ2lkJywgJ3Rva2VuJywKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ29wdGlvbiddCisgICAgICAgICAgICAgICAg ICAgICAgICAjIENoZWNrIHRoZSBhYm92ZSBrZXlzIGFyZSBleGlzdCBpbiB0aGUgZGljdGlvbmFy eQorICAgICAgICAgICAgICAgICAgICAgICAgdG1wX2tleSA9IGlzX2tleV9leGlzdHModG1wX2tl eV9hcnJheSwgc291cmNlKQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgdG1wX2tleSBpcyBu b3QgTm9uZToKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICBpZiB0eXBlKHRhcmdldF9kaWN0 W2tleV0pIGlzIGxpc3QgYW5kIFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IGxlbih0YXJnZXRfZGljdFtrZXldKSA+IDA6CisgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHRtcCA9IE5vbmUKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZm9yIGl0ZW0g aW4gdG1wX3RhcmdldDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGlmIHRt cF9rZXkgaW4gaXRlbSBhbmQgXAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICBpdGVtW3RtcF9rZXldID09IFwKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgc291cmNlW3RtcF9rZXldOgorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIHRtcCA9IGNvcHkuZGVlcGNvcHkoaXRlbSkKKyAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgaWYgdG1wIGFuZCBzb3VyY2UgIT0gdG1wOgorICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgdXBkYXRlZC5hcHBlbmQoY29weS5kZWVwY29weShzb3Vy Y2UpKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdG1wX3RhcmdldC5yZW1v dmUodG1wKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbGlmIHRtcCBhbmQgc291 cmNlID09IHRtcDoKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHRtcF90YXJn ZXQucmVtb3ZlKHRtcCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxpZiB0bXAg aXMgTm9uZToKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFkZGVkLmFwcGVu ZChzb3VyY2UpCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgZWxzZToKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgYWRkZWQuYXBwZW5kKHNvdXJjZSkKIAotICAgICAgICAgICAg ICAgICAgICAgICAgICAgIGRpZmZlcmVuY2Vba2V5XSA9IHt9CisgICAgICAgICAgICAgICAgICAg ICAgICBkaWZmZXJlbmNlW2tleV0gPSB7fQorICAgICAgICAgICAgICAgICAgICAgICAgaWYgbGVu KGFkZGVkKSA+IDA6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZmVyZW5jZVtrZXld WydhZGRlZCddID0gYWRkZWQKKyAgICAgICAgICAgICAgICAgICAgICAgIGlmIGxlbih1cGRhdGVk KSA+IDA6CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgZGlmZmVyZW5jZVtrZXldWydjaGFu Z2VkJ10gPSB1cGRhdGVkCiAgICAgICAgICAgICAgICAgICAgIGVsaWYgdGFyZ2V0X2RpY3Rba2V5 XSBpcyBOb25lIG9yIFwKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAodHlwZSh0YXJnZXRf ZGljdFtrZXldKSBpcyBsaXN0IGFuZApAQCAtMzU4LDcgKzM2MSw3IEBAIGRlZiBkaXJlY3Rvcnlf ZGlmZihzb3VyY2VfZGljdCwgdGFyZ2V0X2RpY3QsIGlnbm9yZV9rZXlzPVtdLCBkaWZmZXJlbmNl PXt9KToKICAgICAgICAgICAgICAgICAgICAgZWxpZiB0eXBlKHRhcmdldF9kaWN0W2tleV0pIGlz IGxpc3QgYW5kXAogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGxlbih0YXJnZXRfZGljdFtr ZXldKSA+IGluZGV4OgogICAgICAgICAgICAgICAgICAgICAgICAgZGlmZmVyZW5jZVtrZXldID0g c291cmNlCi0gICAgICAgICAgICBlbHNlOgorICAgICAgICAgICAgZWxpZiBsZW4oc291cmNlX2Rp Y3Rba2V5XSkgPiAwOgogICAgICAgICAgICAgICAgIGRpZmZlcmVuY2Vba2V5XSA9IHNvdXJjZV9k aWN0W2tleV0KIAogICAgICAgICAgICAgaWYgdHlwZShzb3VyY2UpIGlzIGRpY3QgYW5kIHRtcF90 YXJnZXQgYW5kIGtleSBpbiB0bXBfdGFyZ2V0IGFuZCBcCkBAIC0zODMsNiArMzg2LDIxIEBAIGRl ZiBkaXJlY3RvcnlfZGlmZihzb3VyY2VfZGljdCwgdGFyZ2V0X2RpY3QsIGlnbm9yZV9rZXlzPVtd LCBkaWZmZXJlbmNlPXt9KToKICAgICByZXR1cm4gZGlmZmVyZW5jZQogCiAKK2RlZiBpc19rZXlf ZXhpc3RzKGtleV9saXN0LCB0YXJnZXRfZGljdCk6CisgICAgIiIiCisgICAgVGhpcyBmdW5jdGlv biBpcyB1c2VkIHRvIGl0ZXJhdGUgdGhlIGtleSBsaXN0IGFuZCBjaGVjayB0aGF0IGtleSBpcwor ICAgIHByZXNlbnQgaW4gdGhlIGdpdmVuIGRpY3Rpb25hcnkKKyAgICA6cGFyYW0ga2V5X2xpc3Q6 CisgICAgOnBhcmFtIHRhcmdldF9kaWN0OgorICAgIDpyZXR1cm46CisgICAgIiIiCisgICAgZm9y IGtleSBpbiBrZXlfbGlzdDoKKyAgICAgICAgaWYga2V5IGluIHRhcmdldF9kaWN0OgorICAgICAg ICAgICAgcmV0dXJuIGtleQorCisgICAgcmV0dXJuIE5vbmUKKworCiBkZWYgcGFyY2VfYWNsKHNv dXJjZSwgdGFyZ2V0KToKICAgICBrZXkgPSAnYWNsJwogCmRpZmYgLS1naXQgYS93ZWIvcGdhZG1p bi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wZy8xMF9wbHVzL3NvdXJjZS5zcWwgYi93ZWIvcGdh ZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wZy8xMF9wbHVzL3NvdXJjZS5zcWwKaW5kZXgg OTk3NTdjZWIyLi5kZTU2YzU4NzYgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVt YV9kaWZmL3Rlc3RzL3BnLzEwX3BsdXMvc291cmNlLnNxbAorKysgYi93ZWIvcGdhZG1pbi90b29s cy9zY2hlbWFfZGlmZi90ZXN0cy9wZy8xMF9wbHVzL3NvdXJjZS5zcWwKQEAgLTQzOCwzICs0Mzgs OTEgQEAgQUxURVIgVEFCTEUgc291cmNlLiJ0ZXN0IHZpZXcgZiIgT1dORVIgVE8gcG9zdGdyZXM7 CiAtLQogCiBDT01NRU5UIE9OIFZJRVcgc291cmNlLiJ0ZXN0IHZpZXcgZiIgSVMgJ2Ntbic7CisK Ky0tIENvbGxhdGlvbiBzY3JpcHRzCitDUkVBVEUgQ09MTEFUSU9OIHNvdXJjZS5jb2xsX3NyYwor ICAgIEZST00gcGdfY2F0YWxvZy4iUE9TSVgiOworCitBTFRFUiBDT0xMQVRJT04gc291cmNlLmNv bGxfc3JjCisgICAgT1dORVIgVE8gcG9zdGdyZXM7CisKK0NPTU1FTlQgT04gQ09MTEFUSU9OIHNv dXJjZS5jb2xsX3NyYworICAgIElTICdUZXN0IENvbW1lbnQnOworCitDUkVBVEUgQ09MTEFUSU9O IHNvdXJjZS5jb2xsX2RpZmYKKyAgICAoTENfQ09MTEFURSA9ICdQT1NJWCcsIExDX0NUWVBFID0g J1BPU0lYJyk7CisKK0FMVEVSIENPTExBVElPTiBzb3VyY2UuY29sbF9kaWZmCisgICAgT1dORVIg VE8gcG9zdGdyZXM7CisKK0NPTU1FTlQgT04gQ09MTEFUSU9OIHNvdXJjZS5jb2xsX2RpZmYKKyAg ICBJUyAnVGVzdCBDb21tZW50JzsKKworLS0gRlRTIENvbmZpZ3VyYXRpb24gc2NyaXB0cworQ1JF QVRFIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25fc3JjICgKKyAgICBD T1BZPWdlcm1hbgorKTsKKworQUxURVIgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiBzb3VyY2Uu ZnRzX2Nvbl9zcmMgT1dORVIgVE8gcG9zdGdyZXM7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0gg Q09ORklHVVJBVElPTiBzb3VyY2UuZnRzX2Nvbl9zcmMKKyAgICBJUyAnVGVzdCBDb21tZW50JzsK KworCitDUkVBVEUgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiBzb3VyY2UuZnRzX2Nvbl9kaWZm ICgKKwlQQVJTRVIgPSBkZWZhdWx0CispOworQUxURVIgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElP TiBzb3VyY2UuZnRzX2Nvbl9kaWZmIEFERCBNQVBQSU5HIEZPUiBhc2NpaXdvcmQgV0lUSCBnZXJt YW5fc3RlbTsKK0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25f ZGlmZiBBREQgTUFQUElORyBGT1IgZW1haWwgV0lUSCBzaW1wbGU7CitBTFRFUiBURVhUIFNFQVJD SCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGh3b3Jk IFdJVEggZHV0Y2hfc3RlbTsKKworLS0gRlRTIERpY3Rpb25hcnkgc2NyaXB0cworQ1JFQVRFIFRF WFQgU0VBUkNIIERJQ1RJT05BUlkgc291cmNlLmZ0c19kaWN0X3NyYyAoCisgICAgVEVNUExBVEUg PSBzaW1wbGUsCisgICAgc3RvcHdvcmRzID0gJ2VuZ2xpc2gnCispOworCitDT01NRU5UIE9OIFRF WFQgU0VBUkNIIERJQ1RJT05BUlkgc291cmNlLmZ0c19kaWN0X3NyYworICAgIElTICdUZXN0IENv bW1lbnQnOworCitDUkVBVEUgVEVYVCBTRUFSQ0ggRElDVElPTkFSWSBzb3VyY2UuZnRzX2RpY3Rf ZGlmZiAoCisgICAgVEVNUExBVEUgPSBzaW1wbGUsCisgICAgc3RvcHdvcmRzID0gJ2VuZ2xpc2gn CispOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIERJQ1RJT05BUlkgc291cmNlLmZ0c19kaWN0 X2RpZmYKKyAgICBJUyAnVGVzdCBDb21tZW50JzsKKworLS0gRlRTIFBhcnNlciBzY3JpcHRzCitD UkVBVEUgVEVYVCBTRUFSQ0ggUEFSU0VSIHNvdXJjZS5mdHNfcGFyX3NyYyAoCisgICAgU1RBUlQg PSBwcnNkX3N0YXJ0LAorICAgIEdFVFRPS0VOID0gcHJzZF9uZXh0dG9rZW4sCisgICAgRU5EID0g cHJzZF9lbmQsCisgICAgTEVYVFlQRVMgPSBwcnNkX2xleHR5cGUpOworCitDT01NRU5UIE9OIFRF WFQgU0VBUkNIIFBBUlNFUiBzb3VyY2UuZnRzX3Bhcl9zcmMKKyAgICAgIElTICdUZXN0IENvbW1l bnQnOworCitDUkVBVEUgVEVYVCBTRUFSQ0ggUEFSU0VSIHNvdXJjZS5mdHNfcGFyX2RpZmYgKAor ICAgIFNUQVJUID0gcHJzZF9zdGFydCwKKyAgICBHRVRUT0tFTiA9IHByc2RfbmV4dHRva2VuLAor ICAgIEVORCA9IHByc2RfZW5kLAorICAgIExFWFRZUEVTID0gcHJzZF9sZXh0eXBlKTsKKworQ09N TUVOVCBPTiBURVhUIFNFQVJDSCBQQVJTRVIgc291cmNlLmZ0c19wYXJfZGlmZgorICAgICAgSVMg J1Rlc3QgQ29tbWVudCc7CisKKy0tIEZUUyBUZW1wbGF0ZSBzY3JpcHRzCitDUkVBVEUgVEVYVCBT RUFSQ0ggVEVNUExBVEUgc291cmNlLmZ0c190ZW1wbF9zcmMgKAorICAgIElOSVQgPSBkaXNwZWxs X2luaXQsCisgICAgTEVYSVpFID0gZGlzcGVsbF9sZXhpemUKKyk7CisKK0NPTU1FTlQgT04gVEVY VCBTRUFSQ0ggVEVNUExBVEUgc291cmNlLmZ0c190ZW1wbF9zcmMgSVMgJ1Rlc3QgQ29tbWVudCc7 CisKK0NSRUFURSBURVhUIFNFQVJDSCBURU1QTEFURSBzb3VyY2UuZnRzX3RlbXBsX2RpZmYgKAor ICAgIElOSVQgPSBkaXNwZWxsX2luaXQsCisgICAgTEVYSVpFID0gZGlzcGVsbF9sZXhpemUKKyk7 CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggVEVNUExBVEUgc291cmNlLmZ0c190ZW1wbF9kaWZm IElTICdUZXN0IENvbW1lbnQnOwpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1h X2RpZmYvdGVzdHMvcGcvMTBfcGx1cy90YXJnZXQuc3FsIGIvd2ViL3BnYWRtaW4vdG9vbHMvc2No ZW1hX2RpZmYvdGVzdHMvcGcvMTBfcGx1cy90YXJnZXQuc3FsCmluZGV4IGMzMDQyYWI2MC4uZmI1 YTc5MThmIDEwMDY0NAotLS0gYS93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9w Zy8xMF9wbHVzL3RhcmdldC5zcWwKKysrIGIvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYv dGVzdHMvcGcvMTBfcGx1cy90YXJnZXQuc3FsCkBAIC00MjcsMyArNDI3LDczIEBAIEFMVEVSIFRB QkxFIHRhcmdldC4idGVzdCB2aWV3IGYiIE9XTkVSIFRPIHBvc3RncmVzOwogLS0KIAogQ09NTUVO VCBPTiBWSUVXIHRhcmdldC4idGVzdCB2aWV3IGYiIElTICdjbW4nOworCistLSBDb2xsYXRpb24g c2NyaXB0cworQ1JFQVRFIENPTExBVElPTiB0YXJnZXQuY29sbF90YXIKKyAgICBGUk9NIHBnX2Nh dGFsb2cuIlBPU0lYIjsKKworQUxURVIgQ09MTEFUSU9OIHRhcmdldC5jb2xsX3RhcgorICAgIE9X TkVSIFRPIHBvc3RncmVzOworCitDUkVBVEUgQ09MTEFUSU9OIHRhcmdldC5jb2xsX2RpZmYKKyAg ICAoTENfQ09MTEFURSA9ICdDJywgTENfQ1RZUEUgPSAnQycpOworCitBTFRFUiBDT0xMQVRJT04g dGFyZ2V0LmNvbGxfZGlmZgorICAgIE9XTkVSIFRPIHBvc3RncmVzOworCistLSBGVFMgQ29uZmln dXJhdGlvbiBzY3JpcHRzCitDUkVBVEUgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiB0YXJnZXQu ZnRzX2Nvbl90YXIgKAorICAgIENPUFk9Z2VybWFuCispOworCitBTFRFUiBURVhUIFNFQVJDSCBD T05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX3RhciBPV05FUiBUTyBwb3N0Z3JlczsKKworQ1JF QVRFIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gdGFyZ2V0LmZ0c19jb25fZGlmZiAoCisJUEFS U0VSID0gZGVmYXVsdAorKTsKK0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gdGFyZ2V0 LmZ0c19jb25fZGlmZiBBREQgTUFQUElORyBGT1IgYXNjaWl3b3JkIFdJVEggZHV0Y2hfc3RlbTsK K0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gdGFyZ2V0LmZ0c19jb25fZGlmZiBBREQg TUFQUElORyBGT1IgZW1haWwgV0lUSCBzaW1wbGU7CitBTFRFUiBURVhUIFNFQVJDSCBDT05GSUdV UkFUSU9OIHRhcmdldC5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGh3b3JkIFdJVEggZ2Vy bWFuX3N0ZW07CisKKy0tIEZUUyBEaWN0aW9uYXJ5IHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJD SCBESUNUSU9OQVJZIHRhcmdldC5mdHNfZGljdF90YXIgKAorICAgIFRFTVBMQVRFID0gc2ltcGxl LAorICAgIHN0b3B3b3JkcyA9ICdlbmdsaXNoJworKTsKKworQ1JFQVRFIFRFWFQgU0VBUkNIIERJ Q1RJT05BUlkgdGFyZ2V0LmZ0c19kaWN0X2RpZmYgKAorICAgIFRFTVBMQVRFID0gc2ltcGxlLAor ICAgIHN0b3B3b3JkcyA9ICdnZXJtYW4nCispOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIERJ Q1RJT05BUlkgdGFyZ2V0LmZ0c19kaWN0X2RpZmYKKyAgICBJUyAnQ29tbWVudCc7CisKKy0tIEZU UyBQYXJzZXIgc2NyaXB0cworQ1JFQVRFIFRFWFQgU0VBUkNIIFBBUlNFUiB0YXJnZXQuZnRzX3Bh cl90YXIgKAorICAgIFNUQVJUID0gcHJzZF9zdGFydCwKKyAgICBHRVRUT0tFTiA9IHByc2RfbmV4 dHRva2VuLAorICAgIEVORCA9IHByc2RfZW5kLAorICAgIExFWFRZUEVTID0gcHJzZF9sZXh0eXBl KTsKKworQ1JFQVRFIFRFWFQgU0VBUkNIIFBBUlNFUiB0YXJnZXQuZnRzX3Bhcl9kaWZmICgKKyAg ICBTVEFSVCA9IGludDRfYWNjdW0sCisgICAgR0VUVE9LRU4gPSBpbmV0X2dpc3RfcGVuYWx0eSwK KyAgICBFTkQgPSBidGludDJzb3J0c3VwcG9ydCwKKyAgICBMRVhUWVBFUyA9IGRpc3BlbGxfaW5p dCk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggUEFSU0VSIHRhcmdldC5mdHNfcGFyX2RpZmYK KyAgICAgIElTICdDb21tZW50JzsKKworLS0gRlRTIFRlbXBsYXRlIHNjcmlwdHMKK0NSRUFURSBU RVhUIFNFQVJDSCBURU1QTEFURSB0YXJnZXQuZnRzX3RlbXBsX3RhciAoCisgICAgSU5JVCA9IGRp c3BlbGxfaW5pdCwKKyAgICBMRVhJWkUgPSBkaXNwZWxsX2xleGl6ZQorKTsKKworQ1JFQVRFIFRF WFQgU0VBUkNIIFRFTVBMQVRFIHRhcmdldC5mdHNfdGVtcGxfZGlmZiAoCisgICAgSU5JVCA9IGRz aW1wbGVfaW5pdCwKKyAgICBMRVhJWkUgPSBkc2ltcGxlX2xleGl6ZQorKTsKKworQ09NTUVOVCBP TiBURVhUIFNFQVJDSCBURU1QTEFURSB0YXJnZXQuZnRzX3RlbXBsX2RpZmYgSVMgJ0NvbW1lbnQn OwpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvcGcvMTFf cGx1cy9zb3VyY2Uuc3FsIGIvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvcGcv MTFfcGx1cy9zb3VyY2Uuc3FsCmluZGV4IDI0MjllYjc5OS4uYzAwMDJkNjI0IDEwMDY0NAotLS0g YS93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wZy8xMV9wbHVzL3NvdXJjZS5z cWwKKysrIGIvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvcGcvMTFfcGx1cy9z b3VyY2Uuc3FsCkBAIC00MzcsMyArNDM3LDkxIEBAIEFMVEVSIFRBQkxFIHNvdXJjZS4idGVzdCB2 aWV3IGYiIE9XTkVSIFRPIHBvc3RncmVzOwogLS0KIAogQ09NTUVOVCBPTiBWSUVXIHNvdXJjZS4i dGVzdCB2aWV3IGYiIElTICdjbW4nOworCistLSBDb2xsYXRpb24gc2NyaXB0cworQ1JFQVRFIENP TExBVElPTiBzb3VyY2UuY29sbF9zcmMKKyAgICBGUk9NIHBnX2NhdGFsb2cuIlBPU0lYIjsKKwor QUxURVIgQ09MTEFUSU9OIHNvdXJjZS5jb2xsX3NyYworICAgIE9XTkVSIFRPIHBvc3RncmVzOwor CitDT01NRU5UIE9OIENPTExBVElPTiBzb3VyY2UuY29sbF9zcmMKKyAgICBJUyAnVGVzdCBDb21t ZW50JzsKKworQ1JFQVRFIENPTExBVElPTiBzb3VyY2UuY29sbF9kaWZmCisgICAgKExDX0NPTExB VEUgPSAnUE9TSVgnLCBMQ19DVFlQRSA9ICdQT1NJWCcpOworCitBTFRFUiBDT0xMQVRJT04gc291 cmNlLmNvbGxfZGlmZgorICAgIE9XTkVSIFRPIHBvc3RncmVzOworCitDT01NRU5UIE9OIENPTExB VElPTiBzb3VyY2UuY29sbF9kaWZmCisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKKy0tIEZUUyBD b25maWd1cmF0aW9uIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNv dXJjZS5mdHNfY29uX3NyYyAoCisgICAgQ09QWT1nZXJtYW4KKyk7CisKK0FMVEVSIFRFWFQgU0VB UkNIIENPTkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25fc3JjIE9XTkVSIFRPIHBvc3RncmVzOwor CitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25fc3Jj CisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKKworQ1JFQVRFIFRFWFQgU0VBUkNIIENPTkZJR1VS QVRJT04gc291cmNlLmZ0c19jb25fZGlmZiAoCisJUEFSU0VSID0gZGVmYXVsdAorKTsKK0FMVEVS IFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25fZGlmZiBBREQgTUFQUElO RyBGT1IgYXNjaWl3b3JkIFdJVEggZ2VybWFuX3N0ZW07CitBTFRFUiBURVhUIFNFQVJDSCBDT05G SUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGVtYWlsIFdJVEgg c2ltcGxlOworQUxURVIgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiBzb3VyY2UuZnRzX2Nvbl9k aWZmIEFERCBNQVBQSU5HIEZPUiBod29yZCBXSVRIIGR1dGNoX3N0ZW07CisKKy0tIEZUUyBEaWN0 aW9uYXJ5IHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBESUNUSU9OQVJZIHNvdXJjZS5mdHNf ZGljdF9zcmMgKAorICAgIFRFTVBMQVRFID0gc2ltcGxlLAorICAgIHN0b3B3b3JkcyA9ICdlbmds aXNoJworKTsKKworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBESUNUSU9OQVJZIHNvdXJjZS5mdHNf ZGljdF9zcmMKKyAgICBJUyAnVGVzdCBDb21tZW50JzsKKworQ1JFQVRFIFRFWFQgU0VBUkNIIERJ Q1RJT05BUlkgc291cmNlLmZ0c19kaWN0X2RpZmYgKAorICAgIFRFTVBMQVRFID0gc2ltcGxlLAor ICAgIHN0b3B3b3JkcyA9ICdlbmdsaXNoJworKTsKKworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBE SUNUSU9OQVJZIHNvdXJjZS5mdHNfZGljdF9kaWZmCisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisK Ky0tIEZUUyBQYXJzZXIgc2NyaXB0cworQ1JFQVRFIFRFWFQgU0VBUkNIIFBBUlNFUiBzb3VyY2Uu ZnRzX3Bhcl9zcmMgKAorICAgIFNUQVJUID0gcHJzZF9zdGFydCwKKyAgICBHRVRUT0tFTiA9IHBy c2RfbmV4dHRva2VuLAorICAgIEVORCA9IHByc2RfZW5kLAorICAgIExFWFRZUEVTID0gcHJzZF9s ZXh0eXBlKTsKKworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBQQVJTRVIgc291cmNlLmZ0c19wYXJf c3JjCisgICAgICBJUyAnVGVzdCBDb21tZW50JzsKKworQ1JFQVRFIFRFWFQgU0VBUkNIIFBBUlNF UiBzb3VyY2UuZnRzX3Bhcl9kaWZmICgKKyAgICBTVEFSVCA9IHByc2Rfc3RhcnQsCisgICAgR0VU VE9LRU4gPSBwcnNkX25leHR0b2tlbiwKKyAgICBFTkQgPSBwcnNkX2VuZCwKKyAgICBMRVhUWVBF UyA9IHByc2RfbGV4dHlwZSk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggUEFSU0VSIHNvdXJj ZS5mdHNfcGFyX2RpZmYKKyAgICAgIElTICdUZXN0IENvbW1lbnQnOworCistLSBGVFMgVGVtcGxh dGUgc2NyaXB0cworQ1JFQVRFIFRFWFQgU0VBUkNIIFRFTVBMQVRFIHNvdXJjZS5mdHNfdGVtcGxf c3JjICgKKyAgICBJTklUID0gZGlzcGVsbF9pbml0LAorICAgIExFWElaRSA9IGRpc3BlbGxfbGV4 aXplCispOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFRFTVBMQVRFIHNvdXJjZS5mdHNfdGVt cGxfc3JjIElTICdUZXN0IENvbW1lbnQnOworCitDUkVBVEUgVEVYVCBTRUFSQ0ggVEVNUExBVEUg c291cmNlLmZ0c190ZW1wbF9kaWZmICgKKyAgICBJTklUID0gZGlzcGVsbF9pbml0LAorICAgIExF WElaRSA9IGRpc3BlbGxfbGV4aXplCispOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFRFTVBM QVRFIHNvdXJjZS5mdHNfdGVtcGxfZGlmZiBJUyAnVGVzdCBDb21tZW50JzsKZGlmZiAtLWdpdCBh L3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL3Rlc3RzL3BnLzExX3BsdXMvdGFyZ2V0LnNx bCBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL3Rlc3RzL3BnLzExX3BsdXMvdGFyZ2V0 LnNxbAppbmRleCA4OWEwMjkyMzIuLjE3MGFlOGQ5ZiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4v dG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvcGcvMTFfcGx1cy90YXJnZXQuc3FsCisrKyBiL3dlYi9w Z2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL3Rlc3RzL3BnLzExX3BsdXMvdGFyZ2V0LnNxbApAQCAt NDI2LDMgKzQyNiw3MyBAQCBBTFRFUiBUQUJMRSB0YXJnZXQuInRlc3QgdmlldyBmIiBPV05FUiBU TyBwb3N0Z3JlczsKIC0tCiAKIENPTU1FTlQgT04gVklFVyB0YXJnZXQuInRlc3QgdmlldyBmIiBJ UyAnY21uJzsKKworLS0gQ29sbGF0aW9uIHNjcmlwdHMKK0NSRUFURSBDT0xMQVRJT04gdGFyZ2V0 LmNvbGxfdGFyCisgICAgRlJPTSBwZ19jYXRhbG9nLiJQT1NJWCI7CisKK0FMVEVSIENPTExBVElP TiB0YXJnZXQuY29sbF90YXIKKyAgICBPV05FUiBUTyBwb3N0Z3JlczsKKworQ1JFQVRFIENPTExB VElPTiB0YXJnZXQuY29sbF9kaWZmCisgICAgKExDX0NPTExBVEUgPSAnQycsIExDX0NUWVBFID0g J0MnKTsKKworQUxURVIgQ09MTEFUSU9OIHRhcmdldC5jb2xsX2RpZmYKKyAgICBPV05FUiBUTyBw b3N0Z3JlczsKKworLS0gRlRTIENvbmZpZ3VyYXRpb24gc2NyaXB0cworQ1JFQVRFIFRFWFQgU0VB UkNIIENPTkZJR1VSQVRJT04gdGFyZ2V0LmZ0c19jb25fdGFyICgKKyAgICBDT1BZPWdlcm1hbgor KTsKKworQUxURVIgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiB0YXJnZXQuZnRzX2Nvbl90YXIg T1dORVIgVE8gcG9zdGdyZXM7CisKK0NSRUFURSBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHRh cmdldC5mdHNfY29uX2RpZmYgKAorCVBBUlNFUiA9IGRlZmF1bHQKKyk7CitBTFRFUiBURVhUIFNF QVJDSCBDT05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGFz Y2lpd29yZCBXSVRIIGR1dGNoX3N0ZW07CitBTFRFUiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9O IHRhcmdldC5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGVtYWlsIFdJVEggc2ltcGxlOwor QUxURVIgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiB0YXJnZXQuZnRzX2Nvbl9kaWZmIEFERCBN QVBQSU5HIEZPUiBod29yZCBXSVRIIGdlcm1hbl9zdGVtOworCistLSBGVFMgRGljdGlvbmFyeSBz Y3JpcHRzCitDUkVBVEUgVEVYVCBTRUFSQ0ggRElDVElPTkFSWSB0YXJnZXQuZnRzX2RpY3RfdGFy ICgKKyAgICBURU1QTEFURSA9IHNpbXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZW5nbGlzaCcKKyk7 CisKK0NSRUFURSBURVhUIFNFQVJDSCBESUNUSU9OQVJZIHRhcmdldC5mdHNfZGljdF9kaWZmICgK KyAgICBURU1QTEFURSA9IHNpbXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZ2VybWFuJworKTsKKwor Q09NTUVOVCBPTiBURVhUIFNFQVJDSCBESUNUSU9OQVJZIHRhcmdldC5mdHNfZGljdF9kaWZmCisg ICAgSVMgJ0NvbW1lbnQnOworCistLSBGVFMgUGFyc2VyIHNjcmlwdHMKK0NSRUFURSBURVhUIFNF QVJDSCBQQVJTRVIgdGFyZ2V0LmZ0c19wYXJfdGFyICgKKyAgICBTVEFSVCA9IHByc2Rfc3RhcnQs CisgICAgR0VUVE9LRU4gPSBwcnNkX25leHR0b2tlbiwKKyAgICBFTkQgPSBwcnNkX2VuZCwKKyAg ICBMRVhUWVBFUyA9IHByc2RfbGV4dHlwZSk7CisKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJTRVIg dGFyZ2V0LmZ0c19wYXJfZGlmZiAoCisgICAgU1RBUlQgPSBpbnQ0X2FjY3VtLAorICAgIEdFVFRP S0VOID0gaW5ldF9naXN0X3BlbmFsdHksCisgICAgRU5EID0gYnRpbnQyc29ydHN1cHBvcnQsCisg ICAgTEVYVFlQRVMgPSBkaXNwZWxsX2luaXQpOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFBB UlNFUiB0YXJnZXQuZnRzX3Bhcl9kaWZmCisgICAgICBJUyAnQ29tbWVudCc7CisKKy0tIEZUUyBU ZW1wbGF0ZSBzY3JpcHRzCitDUkVBVEUgVEVYVCBTRUFSQ0ggVEVNUExBVEUgdGFyZ2V0LmZ0c190 ZW1wbF90YXIgKAorICAgIElOSVQgPSBkaXNwZWxsX2luaXQsCisgICAgTEVYSVpFID0gZGlzcGVs bF9sZXhpemUKKyk7CisKK0NSRUFURSBURVhUIFNFQVJDSCBURU1QTEFURSB0YXJnZXQuZnRzX3Rl bXBsX2RpZmYgKAorICAgIElOSVQgPSBkc2ltcGxlX2luaXQsCisgICAgTEVYSVpFID0gZHNpbXBs ZV9sZXhpemUKKyk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggVEVNUExBVEUgdGFyZ2V0LmZ0 c190ZW1wbF9kaWZmIElTICdDb21tZW50JzsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3Rvb2xz L3NjaGVtYV9kaWZmL3Rlc3RzL3BnLzEyX3BsdXMvc291cmNlLnNxbCBiL3dlYi9wZ2FkbWluL3Rv b2xzL3NjaGVtYV9kaWZmL3Rlc3RzL3BnLzEyX3BsdXMvc291cmNlLnNxbAppbmRleCA4ZWY4N2Uz YmMuLjQzZDUxZTRlYiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYv dGVzdHMvcGcvMTJfcGx1cy9zb3VyY2Uuc3FsCisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVt YV9kaWZmL3Rlc3RzL3BnLzEyX3BsdXMvc291cmNlLnNxbApAQCAtNDM4LDMgKzQzOCw5MSBAQCBD UkVBVEUgUFJPQ0VEVVJFIHNvdXJjZS5wcm9jMShhcmcxIGJpZ2ludCkKIAogCiBBTFRFUiBQUk9D RURVUkUgc291cmNlLnByb2MxKGFyZzEgYmlnaW50KSBPV05FUiBUTyBwb3N0Z3JlczsKKworLS0g Q29sbGF0aW9uIHNjcmlwdHMKK0NSRUFURSBDT0xMQVRJT04gc291cmNlLmNvbGxfc3JjCisgICAg RlJPTSBwZ19jYXRhbG9nLiJQT1NJWCI7CisKK0FMVEVSIENPTExBVElPTiBzb3VyY2UuY29sbF9z cmMKKyAgICBPV05FUiBUTyBwb3N0Z3JlczsKKworQ09NTUVOVCBPTiBDT0xMQVRJT04gc291cmNl LmNvbGxfc3JjCisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKK0NSRUFURSBDT0xMQVRJT04gc291 cmNlLmNvbGxfZGlmZgorICAgIChMQ19DT0xMQVRFID0gJ1BPU0lYJywgTENfQ1RZUEUgPSAnUE9T SVgnKTsKKworQUxURVIgQ09MTEFUSU9OIHNvdXJjZS5jb2xsX2RpZmYKKyAgICBPV05FUiBUTyBw b3N0Z3JlczsKKworQ09NTUVOVCBPTiBDT0xMQVRJT04gc291cmNlLmNvbGxfZGlmZgorICAgIElT ICdUZXN0IENvbW1lbnQnOworCistLSBGVFMgQ29uZmlndXJhdGlvbiBzY3JpcHRzCitDUkVBVEUg VEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiBzb3VyY2UuZnRzX2Nvbl9zcmMgKAorICAgIENPUFk9 Z2VybWFuCispOworCitBTFRFUiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNf Y29uX3NyYyBPV05FUiBUTyBwb3N0Z3JlczsKKworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBDT05G SUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX3NyYworICAgIElTICdUZXN0IENvbW1lbnQnOworCisK K0NSRUFURSBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX2RpZmYgKAor CVBBUlNFUiA9IGRlZmF1bHQKKyk7CitBTFRFUiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNv dXJjZS5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGFzY2lpd29yZCBXSVRIIGdlcm1hbl9z dGVtOworQUxURVIgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiBzb3VyY2UuZnRzX2Nvbl9kaWZm IEFERCBNQVBQSU5HIEZPUiBlbWFpbCBXSVRIIHNpbXBsZTsKK0FMVEVSIFRFWFQgU0VBUkNIIENP TkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25fZGlmZiBBREQgTUFQUElORyBGT1IgaHdvcmQgV0lU SCBkdXRjaF9zdGVtOworCistLSBGVFMgRGljdGlvbmFyeSBzY3JpcHRzCitDUkVBVEUgVEVYVCBT RUFSQ0ggRElDVElPTkFSWSBzb3VyY2UuZnRzX2RpY3Rfc3JjICgKKyAgICBURU1QTEFURSA9IHNp bXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZW5nbGlzaCcKKyk7CisKK0NPTU1FTlQgT04gVEVYVCBT RUFSQ0ggRElDVElPTkFSWSBzb3VyY2UuZnRzX2RpY3Rfc3JjCisgICAgSVMgJ1Rlc3QgQ29tbWVu dCc7CisKK0NSRUFURSBURVhUIFNFQVJDSCBESUNUSU9OQVJZIHNvdXJjZS5mdHNfZGljdF9kaWZm ICgKKyAgICBURU1QTEFURSA9IHNpbXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZW5nbGlzaCcKKyk7 CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggRElDVElPTkFSWSBzb3VyY2UuZnRzX2RpY3RfZGlm ZgorICAgIElTICdUZXN0IENvbW1lbnQnOworCistLSBGVFMgUGFyc2VyIHNjcmlwdHMKK0NSRUFU RSBURVhUIFNFQVJDSCBQQVJTRVIgc291cmNlLmZ0c19wYXJfc3JjICgKKyAgICBTVEFSVCA9IHBy c2Rfc3RhcnQsCisgICAgR0VUVE9LRU4gPSBwcnNkX25leHR0b2tlbiwKKyAgICBFTkQgPSBwcnNk X2VuZCwKKyAgICBMRVhUWVBFUyA9IHByc2RfbGV4dHlwZSk7CisKK0NPTU1FTlQgT04gVEVYVCBT RUFSQ0ggUEFSU0VSIHNvdXJjZS5mdHNfcGFyX3NyYworICAgICAgSVMgJ1Rlc3QgQ29tbWVudCc7 CisKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJTRVIgc291cmNlLmZ0c19wYXJfZGlmZiAoCisgICAg U1RBUlQgPSBwcnNkX3N0YXJ0LAorICAgIEdFVFRPS0VOID0gcHJzZF9uZXh0dG9rZW4sCisgICAg RU5EID0gcHJzZF9lbmQsCisgICAgTEVYVFlQRVMgPSBwcnNkX2xleHR5cGUpOworCitDT01NRU5U IE9OIFRFWFQgU0VBUkNIIFBBUlNFUiBzb3VyY2UuZnRzX3Bhcl9kaWZmCisgICAgICBJUyAnVGVz dCBDb21tZW50JzsKKworLS0gRlRTIFRlbXBsYXRlIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJD SCBURU1QTEFURSBzb3VyY2UuZnRzX3RlbXBsX3NyYyAoCisgICAgSU5JVCA9IGRpc3BlbGxfaW5p dCwKKyAgICBMRVhJWkUgPSBkaXNwZWxsX2xleGl6ZQorKTsKKworQ09NTUVOVCBPTiBURVhUIFNF QVJDSCBURU1QTEFURSBzb3VyY2UuZnRzX3RlbXBsX3NyYyBJUyAnVGVzdCBDb21tZW50JzsKKwor Q1JFQVRFIFRFWFQgU0VBUkNIIFRFTVBMQVRFIHNvdXJjZS5mdHNfdGVtcGxfZGlmZiAoCisgICAg SU5JVCA9IGRpc3BlbGxfaW5pdCwKKyAgICBMRVhJWkUgPSBkaXNwZWxsX2xleGl6ZQorKTsKKwor Q09NTUVOVCBPTiBURVhUIFNFQVJDSCBURU1QTEFURSBzb3VyY2UuZnRzX3RlbXBsX2RpZmYgSVMg J1Rlc3QgQ29tbWVudCc7CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlm Zi90ZXN0cy9wZy8xMl9wbHVzL3RhcmdldC5zcWwgYi93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFf ZGlmZi90ZXN0cy9wZy8xMl9wbHVzL3RhcmdldC5zcWwKaW5kZXggZDU3ODQxNzQ0Li5iOWU4NjNh YTEgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL3Rlc3RzL3BnLzEy X3BsdXMvdGFyZ2V0LnNxbAorKysgYi93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0 cy9wZy8xMl9wbHVzL3RhcmdldC5zcWwKQEAgLTQxNSwzICs0MTUsNzMgQEAgQ1JFQVRFIFBST0NF RFVSRSB0YXJnZXQuZG9kYWpfa2xpamVudGEodl9uYXppdiBjaGFyYWN0ZXIgdmFyeWluZywgdl9v aWIgY2hhcmFjdGUKIAogCiBBTFRFUiBQUk9DRURVUkUgdGFyZ2V0LmRvZGFqX2tsaWplbnRhKHZf bmF6aXYgY2hhcmFjdGVyIHZhcnlpbmcsIHZfb2liIGNoYXJhY3RlciB2YXJ5aW5nLCB2X3Bkdl9p ZCBjaGFyYWN0ZXIgdmFyeWluZywgdl9hZHJlc2EgY2hhcmFjdGVyIHZhcnlpbmcsIHZfbWplc3Rv IGludGVnZXIsIHZfZHJ6YXZhIGNoYXJhY3RlciB2YXJ5aW5nLCB2X3RpcF9wX3N1YiBjaGFyYWN0 ZXIgdmFyeWluZywgdl92bGFzbmlrIGNoYXJhY3RlciB2YXJ5aW5nLCB2X3BkdiBib29sZWFuLCB2 X2Zpc2sgYm9vbGVhbiwgdl9pYmFuIGNoYXJhY3RlciB2YXJ5aW5nLCB2X2tfb3NvYmEgY2hhcmFj dGVyIHZhcnlpbmcsIHZfZW1haWwgY2hhcmFjdGVyIHZhcnlpbmcsIHZfYnJfdGVsIGNoYXJhY3Rl ciB2YXJ5aW5nLCB2X3JhZG5hX2dvZCBudW1lcmljLCB2X3NjaGVtYSBjaGFyYWN0ZXIgdmFyeWlu ZykgT1dORVIgVE8gcG9zdGdyZXM7CisKKy0tIENvbGxhdGlvbiBzY3JpcHRzCitDUkVBVEUgQ09M TEFUSU9OIHRhcmdldC5jb2xsX3RhcgorICAgIEZST00gcGdfY2F0YWxvZy4iUE9TSVgiOworCitB TFRFUiBDT0xMQVRJT04gdGFyZ2V0LmNvbGxfdGFyCisgICAgT1dORVIgVE8gcG9zdGdyZXM7CisK K0NSRUFURSBDT0xMQVRJT04gdGFyZ2V0LmNvbGxfZGlmZgorICAgIChMQ19DT0xMQVRFID0gJ0Mn LCBMQ19DVFlQRSA9ICdDJyk7CisKK0FMVEVSIENPTExBVElPTiB0YXJnZXQuY29sbF9kaWZmCisg ICAgT1dORVIgVE8gcG9zdGdyZXM7CisKKy0tIEZUUyBDb25maWd1cmF0aW9uIHNjcmlwdHMKK0NS RUFURSBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX3RhciAoCisgICAg Q09QWT1nZXJtYW4KKyk7CisKK0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gdGFyZ2V0 LmZ0c19jb25fdGFyIE9XTkVSIFRPIHBvc3RncmVzOworCitDUkVBVEUgVEVYVCBTRUFSQ0ggQ09O RklHVVJBVElPTiB0YXJnZXQuZnRzX2Nvbl9kaWZmICgKKwlQQVJTRVIgPSBkZWZhdWx0CispOwor QUxURVIgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiB0YXJnZXQuZnRzX2Nvbl9kaWZmIEFERCBN QVBQSU5HIEZPUiBhc2NpaXdvcmQgV0lUSCBkdXRjaF9zdGVtOworQUxURVIgVEVYVCBTRUFSQ0gg Q09ORklHVVJBVElPTiB0YXJnZXQuZnRzX2Nvbl9kaWZmIEFERCBNQVBQSU5HIEZPUiBlbWFpbCBX SVRIIHNpbXBsZTsKK0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gdGFyZ2V0LmZ0c19j b25fZGlmZiBBREQgTUFQUElORyBGT1IgaHdvcmQgV0lUSCBnZXJtYW5fc3RlbTsKKworLS0gRlRT IERpY3Rpb25hcnkgc2NyaXB0cworQ1JFQVRFIFRFWFQgU0VBUkNIIERJQ1RJT05BUlkgdGFyZ2V0 LmZ0c19kaWN0X3RhciAoCisgICAgVEVNUExBVEUgPSBzaW1wbGUsCisgICAgc3RvcHdvcmRzID0g J2VuZ2xpc2gnCispOworCitDUkVBVEUgVEVYVCBTRUFSQ0ggRElDVElPTkFSWSB0YXJnZXQuZnRz X2RpY3RfZGlmZiAoCisgICAgVEVNUExBVEUgPSBzaW1wbGUsCisgICAgc3RvcHdvcmRzID0gJ2dl cm1hbicKKyk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggRElDVElPTkFSWSB0YXJnZXQuZnRz X2RpY3RfZGlmZgorICAgIElTICdDb21tZW50JzsKKworLS0gRlRTIFBhcnNlciBzY3JpcHRzCitD UkVBVEUgVEVYVCBTRUFSQ0ggUEFSU0VSIHRhcmdldC5mdHNfcGFyX3RhciAoCisgICAgU1RBUlQg PSBwcnNkX3N0YXJ0LAorICAgIEdFVFRPS0VOID0gcHJzZF9uZXh0dG9rZW4sCisgICAgRU5EID0g cHJzZF9lbmQsCisgICAgTEVYVFlQRVMgPSBwcnNkX2xleHR5cGUpOworCitDUkVBVEUgVEVYVCBT RUFSQ0ggUEFSU0VSIHRhcmdldC5mdHNfcGFyX2RpZmYgKAorICAgIFNUQVJUID0gaW50NF9hY2N1 bSwKKyAgICBHRVRUT0tFTiA9IGluZXRfZ2lzdF9wZW5hbHR5LAorICAgIEVORCA9IGJ0aW50MnNv cnRzdXBwb3J0LAorICAgIExFWFRZUEVTID0gZGlzcGVsbF9pbml0KTsKKworQ09NTUVOVCBPTiBU RVhUIFNFQVJDSCBQQVJTRVIgdGFyZ2V0LmZ0c19wYXJfZGlmZgorICAgICAgSVMgJ0NvbW1lbnQn OworCistLSBGVFMgVGVtcGxhdGUgc2NyaXB0cworQ1JFQVRFIFRFWFQgU0VBUkNIIFRFTVBMQVRF IHRhcmdldC5mdHNfdGVtcGxfdGFyICgKKyAgICBJTklUID0gZGlzcGVsbF9pbml0LAorICAgIExF WElaRSA9IGRpc3BlbGxfbGV4aXplCispOworCitDUkVBVEUgVEVYVCBTRUFSQ0ggVEVNUExBVEUg dGFyZ2V0LmZ0c190ZW1wbF9kaWZmICgKKyAgICBJTklUID0gZHNpbXBsZV9pbml0LAorICAgIExF WElaRSA9IGRzaW1wbGVfbGV4aXplCispOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFRFTVBM QVRFIHRhcmdldC5mdHNfdGVtcGxfZGlmZiBJUyAnQ29tbWVudCc7CmRpZmYgLS1naXQgYS93ZWIv cGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wZy85LjJfcGx1cy9zb3VyY2Uuc3FsIGIv d2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvcGcvOS4yX3BsdXMvc291cmNlLnNx bAppbmRleCBhZjkwNTRlZWIuLjQ1MTFmYjBiYiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vdG9v bHMvc2NoZW1hX2RpZmYvdGVzdHMvcGcvOS4yX3BsdXMvc291cmNlLnNxbAorKysgYi93ZWIvcGdh ZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wZy85LjJfcGx1cy9zb3VyY2Uuc3FsCkBAIC0z MDksMyArMzA5LDg5IEBAIENPTU1FTlQgT04gUlVMRSBydWxlMSBPTiBzb3VyY2UudGFibGVfZm9y X3J1bGUgSVMgJ2NvbW1lbnRzJzsKIENSRUFURSBSVUxFIHJ1bGUyIEFTCiAgICAgT04gSU5TRVJU IFRPIHNvdXJjZS50YWJsZV9mb3JfcnVsZSBETyBOT1RISU5HOwogCistLSBDb2xsYXRpb24gc2Ny aXB0cworQ1JFQVRFIENPTExBVElPTiBzb3VyY2UuY29sbF9zcmMKKyAgICBGUk9NIHBnX2NhdGFs b2cuIlBPU0lYIjsKKworQUxURVIgQ09MTEFUSU9OIHNvdXJjZS5jb2xsX3NyYworICAgIE9XTkVS IFRPIHBvc3RncmVzOworCitDT01NRU5UIE9OIENPTExBVElPTiBzb3VyY2UuY29sbF9zcmMKKyAg ICBJUyAnVGVzdCBDb21tZW50JzsKKworQ1JFQVRFIENPTExBVElPTiBzb3VyY2UuY29sbF9kaWZm CisgICAgKExDX0NPTExBVEUgPSAnUE9TSVgnLCBMQ19DVFlQRSA9ICdQT1NJWCcpOworCitBTFRF UiBDT0xMQVRJT04gc291cmNlLmNvbGxfZGlmZgorICAgIE9XTkVSIFRPIHBvc3RncmVzOworCitD T01NRU5UIE9OIENPTExBVElPTiBzb3VyY2UuY29sbF9kaWZmCisgICAgSVMgJ1Rlc3QgQ29tbWVu dCc7CisKKy0tIEZUUyBDb25maWd1cmF0aW9uIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBD T05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX3NyYyAoCisgICAgQ09QWT1nZXJtYW4KKyk7CisK K0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25fc3JjIE9XTkVS IFRPIHBvc3RncmVzOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gc291 cmNlLmZ0c19jb25fc3JjCisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKK0NSRUFURSBURVhUIFNF QVJDSCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX2RpZmYgKAorCVBBUlNFUiA9IGRlZmF1 bHQKKyk7CitBTFRFUiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX2Rp ZmYgQUREIE1BUFBJTkcgRk9SIGFzY2lpd29yZCBXSVRIIGdlcm1hbl9zdGVtOworQUxURVIgVEVY VCBTRUFSQ0ggQ09ORklHVVJBVElPTiBzb3VyY2UuZnRzX2Nvbl9kaWZmIEFERCBNQVBQSU5HIEZP UiBlbWFpbCBXSVRIIHNpbXBsZTsKK0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gc291 cmNlLmZ0c19jb25fZGlmZiBBREQgTUFQUElORyBGT1IgaHdvcmQgV0lUSCBkdXRjaF9zdGVtOwor CistLSBGVFMgRGljdGlvbmFyeSBzY3JpcHRzCitDUkVBVEUgVEVYVCBTRUFSQ0ggRElDVElPTkFS WSBzb3VyY2UuZnRzX2RpY3Rfc3JjICgKKyAgICBURU1QTEFURSA9IHNpbXBsZSwKKyAgICBzdG9w d29yZHMgPSAnZW5nbGlzaCcKKyk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggRElDVElPTkFS WSBzb3VyY2UuZnRzX2RpY3Rfc3JjCisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKK0NSRUFURSBU RVhUIFNFQVJDSCBESUNUSU9OQVJZIHNvdXJjZS5mdHNfZGljdF9kaWZmICgKKyAgICBURU1QTEFU RSA9IHNpbXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZW5nbGlzaCcKKyk7CisKK0NPTU1FTlQgT04g VEVYVCBTRUFSQ0ggRElDVElPTkFSWSBzb3VyY2UuZnRzX2RpY3RfZGlmZgorICAgIElTICdUZXN0 IENvbW1lbnQnOworCistLSBGVFMgUGFyc2VyIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBQ QVJTRVIgc291cmNlLmZ0c19wYXJfc3JjICgKKyAgICBTVEFSVCA9IHByc2Rfc3RhcnQsCisgICAg R0VUVE9LRU4gPSBwcnNkX25leHR0b2tlbiwKKyAgICBFTkQgPSBwcnNkX2VuZCwKKyAgICBMRVhU WVBFUyA9IHByc2RfbGV4dHlwZSk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggUEFSU0VSIHNv dXJjZS5mdHNfcGFyX3NyYworICAgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKK0NSRUFURSBURVhU IFNFQVJDSCBQQVJTRVIgc291cmNlLmZ0c19wYXJfZGlmZiAoCisgICAgU1RBUlQgPSBwcnNkX3N0 YXJ0LAorICAgIEdFVFRPS0VOID0gcHJzZF9uZXh0dG9rZW4sCisgICAgRU5EID0gcHJzZF9lbmQs CisgICAgTEVYVFlQRVMgPSBwcnNkX2xleHR5cGUpOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNI IFBBUlNFUiBzb3VyY2UuZnRzX3Bhcl9kaWZmCisgICAgICBJUyAnVGVzdCBDb21tZW50JzsKKwor LS0gRlRTIFRlbXBsYXRlIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBURU1QTEFURSBzb3Vy Y2UuZnRzX3RlbXBsX3NyYyAoCisgICAgSU5JVCA9IGRpc3BlbGxfaW5pdCwKKyAgICBMRVhJWkUg PSBkaXNwZWxsX2xleGl6ZQorKTsKKworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBURU1QTEFURSBz b3VyY2UuZnRzX3RlbXBsX3NyYyBJUyAnVGVzdCBDb21tZW50JzsKKworQ1JFQVRFIFRFWFQgU0VB UkNIIFRFTVBMQVRFIHNvdXJjZS5mdHNfdGVtcGxfZGlmZiAoCisgICAgSU5JVCA9IGRpc3BlbGxf aW5pdCwKKyAgICBMRVhJWkUgPSBkaXNwZWxsX2xleGl6ZQorKTsKKworQ09NTUVOVCBPTiBURVhU IFNFQVJDSCBURU1QTEFURSBzb3VyY2UuZnRzX3RlbXBsX2RpZmYgSVMgJ1Rlc3QgQ29tbWVudCc7 CmRpZmYgLS1naXQgYS93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wZy85LjJf cGx1cy90YXJnZXQuc3FsIGIvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvcGcv OS4yX3BsdXMvdGFyZ2V0LnNxbAppbmRleCBkZGM0ZmRhMjguLjBhNDc5ZGRkZCAxMDA2NDQKLS0t IGEvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvcGcvOS4yX3BsdXMvdGFyZ2V0 LnNxbAorKysgYi93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wZy85LjJfcGx1 cy90YXJnZXQuc3FsCkBAIC0zMzUsMyArMzM1LDczIEBAIENSRUFURSBSVUxFIHJ1bGUzIEFTCiAt LQogCiBSRUZSRVNIIE1BVEVSSUFMSVpFRCBWSUVXIHRhcmdldC4iTVZpZXciOworCistLSBDb2xs YXRpb24gc2NyaXB0cworQ1JFQVRFIENPTExBVElPTiB0YXJnZXQuY29sbF90YXIKKyAgICBGUk9N IHBnX2NhdGFsb2cuIlBPU0lYIjsKKworQUxURVIgQ09MTEFUSU9OIHRhcmdldC5jb2xsX3Rhcgor ICAgIE9XTkVSIFRPIHBvc3RncmVzOworCitDUkVBVEUgQ09MTEFUSU9OIHRhcmdldC5jb2xsX2Rp ZmYKKyAgICAoTENfQ09MTEFURSA9ICdDJywgTENfQ1RZUEUgPSAnQycpOworCitBTFRFUiBDT0xM QVRJT04gdGFyZ2V0LmNvbGxfZGlmZgorICAgIE9XTkVSIFRPIHBvc3RncmVzOworCistLSBGVFMg Q29uZmlndXJhdGlvbiBzY3JpcHRzCitDUkVBVEUgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiB0 YXJnZXQuZnRzX2Nvbl90YXIgKAorICAgIENPUFk9Z2VybWFuCispOworCitBTFRFUiBURVhUIFNF QVJDSCBDT05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX3RhciBPV05FUiBUTyBwb3N0Z3JlczsK KworQ1JFQVRFIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gdGFyZ2V0LmZ0c19jb25fZGlmZiAo CisJUEFSU0VSID0gZGVmYXVsdAorKTsKK0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04g dGFyZ2V0LmZ0c19jb25fZGlmZiBBREQgTUFQUElORyBGT1IgYXNjaWl3b3JkIFdJVEggZHV0Y2hf c3RlbTsKK0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gdGFyZ2V0LmZ0c19jb25fZGlm ZiBBREQgTUFQUElORyBGT1IgZW1haWwgV0lUSCBzaW1wbGU7CitBTFRFUiBURVhUIFNFQVJDSCBD T05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGh3b3JkIFdJ VEggZ2VybWFuX3N0ZW07CisKKy0tIEZUUyBEaWN0aW9uYXJ5IHNjcmlwdHMKK0NSRUFURSBURVhU IFNFQVJDSCBESUNUSU9OQVJZIHRhcmdldC5mdHNfZGljdF90YXIgKAorICAgIFRFTVBMQVRFID0g c2ltcGxlLAorICAgIHN0b3B3b3JkcyA9ICdlbmdsaXNoJworKTsKKworQ1JFQVRFIFRFWFQgU0VB UkNIIERJQ1RJT05BUlkgdGFyZ2V0LmZ0c19kaWN0X2RpZmYgKAorICAgIFRFTVBMQVRFID0gc2lt cGxlLAorICAgIHN0b3B3b3JkcyA9ICdnZXJtYW4nCispOworCitDT01NRU5UIE9OIFRFWFQgU0VB UkNIIERJQ1RJT05BUlkgdGFyZ2V0LmZ0c19kaWN0X2RpZmYKKyAgICBJUyAnQ29tbWVudCc7CisK Ky0tIEZUUyBQYXJzZXIgc2NyaXB0cworQ1JFQVRFIFRFWFQgU0VBUkNIIFBBUlNFUiB0YXJnZXQu ZnRzX3Bhcl90YXIgKAorICAgIFNUQVJUID0gcHJzZF9zdGFydCwKKyAgICBHRVRUT0tFTiA9IHBy c2RfbmV4dHRva2VuLAorICAgIEVORCA9IHByc2RfZW5kLAorICAgIExFWFRZUEVTID0gcHJzZF9s ZXh0eXBlKTsKKworQ1JFQVRFIFRFWFQgU0VBUkNIIFBBUlNFUiB0YXJnZXQuZnRzX3Bhcl9kaWZm ICgKKyAgICBTVEFSVCA9IGludDRfYWNjdW0sCisgICAgR0VUVE9LRU4gPSBpbmV0X2dpc3RfcGVu YWx0eSwKKyAgICBFTkQgPSBidGludDJzb3J0c3VwcG9ydCwKKyAgICBMRVhUWVBFUyA9IGRpc3Bl bGxfaW5pdCk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggUEFSU0VSIHRhcmdldC5mdHNfcGFy X2RpZmYKKyAgICAgIElTICdDb21tZW50JzsKKworLS0gRlRTIFRlbXBsYXRlIHNjcmlwdHMKK0NS RUFURSBURVhUIFNFQVJDSCBURU1QTEFURSB0YXJnZXQuZnRzX3RlbXBsX3RhciAoCisgICAgSU5J VCA9IGRpc3BlbGxfaW5pdCwKKyAgICBMRVhJWkUgPSBkaXNwZWxsX2xleGl6ZQorKTsKKworQ1JF QVRFIFRFWFQgU0VBUkNIIFRFTVBMQVRFIHRhcmdldC5mdHNfdGVtcGxfZGlmZiAoCisgICAgSU5J VCA9IGRzaW1wbGVfaW5pdCwKKyAgICBMRVhJWkUgPSBkc2ltcGxlX2xleGl6ZQorKTsKKworQ09N TUVOVCBPTiBURVhUIFNFQVJDSCBURU1QTEFURSB0YXJnZXQuZnRzX3RlbXBsX2RpZmYgSVMgJ0Nv bW1lbnQnOwpkaWZmIC0tZ2l0IGEvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMv cHBhcy8xMF9wbHVzL3NvdXJjZS5zcWwgYi93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90 ZXN0cy9wcGFzLzEwX3BsdXMvc291cmNlLnNxbAppbmRleCBiNjBkYmNkNTUuLjJhMTQ4ZDRhMiAx MDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvcHBhcy8xMF9w bHVzL3NvdXJjZS5zcWwKKysrIGIvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMv cHBhcy8xMF9wbHVzL3NvdXJjZS5zcWwKQEAgLTM3NCwzICszNzQsOTEgQEAgQ09NTUVOVCBPTiBS VUxFIHJ1bGUxIE9OIHNvdXJjZS50YWJsZV9mb3JfcnVsZSBJUyAnY29tbWVudHMnOwogCiBDUkVB VEUgUlVMRSBydWxlMiBBUwogICAgIE9OIElOU0VSVCBUTyBzb3VyY2UudGFibGVfZm9yX3J1bGUg RE8gTk9USElORzsKKworLS0gQ29sbGF0aW9uIHNjcmlwdHMKK0NSRUFURSBDT0xMQVRJT04gc291 cmNlLmNvbGxfc3JjCisgICAgRlJPTSBwZ19jYXRhbG9nLiJQT1NJWCI7CisKK0FMVEVSIENPTExB VElPTiBzb3VyY2UuY29sbF9zcmMKKyAgICBPV05FUiBUTyBlbnRlcnByaXNlZGI7CisKK0NPTU1F TlQgT04gQ09MTEFUSU9OIHNvdXJjZS5jb2xsX3NyYworICAgIElTICdUZXN0IENvbW1lbnQnOwor CitDUkVBVEUgQ09MTEFUSU9OIHNvdXJjZS5jb2xsX2RpZmYKKyAgICAoTENfQ09MTEFURSA9ICdQ T1NJWCcsIExDX0NUWVBFID0gJ1BPU0lYJyk7CisKK0FMVEVSIENPTExBVElPTiBzb3VyY2UuY29s bF9kaWZmCisgICAgT1dORVIgVE8gZW50ZXJwcmlzZWRiOworCitDT01NRU5UIE9OIENPTExBVElP TiBzb3VyY2UuY29sbF9kaWZmCisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKKy0tIEZUUyBDb25m aWd1cmF0aW9uIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNvdXJj ZS5mdHNfY29uX3NyYyAoCisgICAgQ09QWT1nZXJtYW4KKyk7CisKK0FMVEVSIFRFWFQgU0VBUkNI IENPTkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25fc3JjIE9XTkVSIFRPIGVudGVycHJpc2VkYjsK KworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX3Ny YworICAgIElTICdUZXN0IENvbW1lbnQnOworCisKK0NSRUFURSBURVhUIFNFQVJDSCBDT05GSUdV UkFUSU9OIHNvdXJjZS5mdHNfY29uX2RpZmYgKAorCVBBUlNFUiA9IGRlZmF1bHQKKyk7CitBTFRF UiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX2RpZmYgQUREIE1BUFBJ TkcgRk9SIGFzY2lpd29yZCBXSVRIIGdlcm1hbl9zdGVtOworQUxURVIgVEVYVCBTRUFSQ0ggQ09O RklHVVJBVElPTiBzb3VyY2UuZnRzX2Nvbl9kaWZmIEFERCBNQVBQSU5HIEZPUiBlbWFpbCBXSVRI IHNpbXBsZTsKK0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25f ZGlmZiBBREQgTUFQUElORyBGT1IgaHdvcmQgV0lUSCBkdXRjaF9zdGVtOworCistLSBGVFMgRGlj dGlvbmFyeSBzY3JpcHRzCitDUkVBVEUgVEVYVCBTRUFSQ0ggRElDVElPTkFSWSBzb3VyY2UuZnRz X2RpY3Rfc3JjICgKKyAgICBURU1QTEFURSA9IHNpbXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZW5n bGlzaCcKKyk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggRElDVElPTkFSWSBzb3VyY2UuZnRz X2RpY3Rfc3JjCisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKK0NSRUFURSBURVhUIFNFQVJDSCBE SUNUSU9OQVJZIHNvdXJjZS5mdHNfZGljdF9kaWZmICgKKyAgICBURU1QTEFURSA9IHNpbXBsZSwK KyAgICBzdG9wd29yZHMgPSAnZW5nbGlzaCcKKyk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0gg RElDVElPTkFSWSBzb3VyY2UuZnRzX2RpY3RfZGlmZgorICAgIElTICdUZXN0IENvbW1lbnQnOwor CistLSBGVFMgUGFyc2VyIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJTRVIgc291cmNl LmZ0c19wYXJfc3JjICgKKyAgICBTVEFSVCA9IHByc2Rfc3RhcnQsCisgICAgR0VUVE9LRU4gPSBw cnNkX25leHR0b2tlbiwKKyAgICBFTkQgPSBwcnNkX2VuZCwKKyAgICBMRVhUWVBFUyA9IHByc2Rf bGV4dHlwZSk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggUEFSU0VSIHNvdXJjZS5mdHNfcGFy X3NyYworICAgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJT RVIgc291cmNlLmZ0c19wYXJfZGlmZiAoCisgICAgU1RBUlQgPSBwcnNkX3N0YXJ0LAorICAgIEdF VFRPS0VOID0gcHJzZF9uZXh0dG9rZW4sCisgICAgRU5EID0gcHJzZF9lbmQsCisgICAgTEVYVFlQ RVMgPSBwcnNkX2xleHR5cGUpOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFBBUlNFUiBzb3Vy Y2UuZnRzX3Bhcl9kaWZmCisgICAgICBJUyAnVGVzdCBDb21tZW50JzsKKworLS0gRlRTIFRlbXBs YXRlIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBURU1QTEFURSBzb3VyY2UuZnRzX3RlbXBs X3NyYyAoCisgICAgSU5JVCA9IGRpc3BlbGxfaW5pdCwKKyAgICBMRVhJWkUgPSBkaXNwZWxsX2xl eGl6ZQorKTsKKworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBURU1QTEFURSBzb3VyY2UuZnRzX3Rl bXBsX3NyYyBJUyAnVGVzdCBDb21tZW50JzsKKworQ1JFQVRFIFRFWFQgU0VBUkNIIFRFTVBMQVRF IHNvdXJjZS5mdHNfdGVtcGxfZGlmZiAoCisgICAgSU5JVCA9IGRpc3BlbGxfaW5pdCwKKyAgICBM RVhJWkUgPSBkaXNwZWxsX2xleGl6ZQorKTsKKworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBURU1Q TEFURSBzb3VyY2UuZnRzX3RlbXBsX2RpZmYgSVMgJ1Rlc3QgQ29tbWVudCc7CmRpZmYgLS1naXQg YS93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wcGFzLzEwX3BsdXMvdGFyZ2V0 LnNxbCBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL3Rlc3RzL3BwYXMvMTBfcGx1cy90 YXJnZXQuc3FsCmluZGV4IDU3ZWYwNWQ2YS4uMjdjNWIzNmFkIDEwMDY0NAotLS0gYS93ZWIvcGdh ZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wcGFzLzEwX3BsdXMvdGFyZ2V0LnNxbAorKysg Yi93ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wcGFzLzEwX3BsdXMvdGFyZ2V0 LnNxbApAQCAtMzYyLDMgKzM2Miw3MyBAQCBDUkVBVEUgUlVMRSBydWxlMyBBUwogLS0KIAogUkVG UkVTSCBNQVRFUklBTElaRUQgVklFVyB0YXJnZXQuIk1WaWV3IjsKKworLS0gQ29sbGF0aW9uIHNj cmlwdHMKK0NSRUFURSBDT0xMQVRJT04gdGFyZ2V0LmNvbGxfdGFyCisgICAgRlJPTSBwZ19jYXRh bG9nLiJQT1NJWCI7CisKK0FMVEVSIENPTExBVElPTiB0YXJnZXQuY29sbF90YXIKKyAgICBPV05F UiBUTyBlbnRlcnByaXNlZGI7CisKK0NSRUFURSBDT0xMQVRJT04gdGFyZ2V0LmNvbGxfZGlmZgor ICAgIChMQ19DT0xMQVRFID0gJ0MnLCBMQ19DVFlQRSA9ICdDJyk7CisKK0FMVEVSIENPTExBVElP TiB0YXJnZXQuY29sbF9kaWZmCisgICAgT1dORVIgVE8gZW50ZXJwcmlzZWRiOworCistLSBGVFMg Q29uZmlndXJhdGlvbiBzY3JpcHRzCitDUkVBVEUgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiB0 YXJnZXQuZnRzX2Nvbl90YXIgKAorICAgIENPUFk9Z2VybWFuCispOworCitBTFRFUiBURVhUIFNF QVJDSCBDT05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX3RhciBPV05FUiBUTyBlbnRlcnByaXNl ZGI7CisKK0NSRUFURSBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX2Rp ZmYgKAorCVBBUlNFUiA9IGRlZmF1bHQKKyk7CitBTFRFUiBURVhUIFNFQVJDSCBDT05GSUdVUkFU SU9OIHRhcmdldC5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGFzY2lpd29yZCBXSVRIIGR1 dGNoX3N0ZW07CitBTFRFUiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29u X2RpZmYgQUREIE1BUFBJTkcgRk9SIGVtYWlsIFdJVEggc2ltcGxlOworQUxURVIgVEVYVCBTRUFS Q0ggQ09ORklHVVJBVElPTiB0YXJnZXQuZnRzX2Nvbl9kaWZmIEFERCBNQVBQSU5HIEZPUiBod29y ZCBXSVRIIGdlcm1hbl9zdGVtOworCistLSBGVFMgRGljdGlvbmFyeSBzY3JpcHRzCitDUkVBVEUg VEVYVCBTRUFSQ0ggRElDVElPTkFSWSB0YXJnZXQuZnRzX2RpY3RfdGFyICgKKyAgICBURU1QTEFU RSA9IHNpbXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZW5nbGlzaCcKKyk7CisKK0NSRUFURSBURVhU IFNFQVJDSCBESUNUSU9OQVJZIHRhcmdldC5mdHNfZGljdF9kaWZmICgKKyAgICBURU1QTEFURSA9 IHNpbXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZ2VybWFuJworKTsKKworQ09NTUVOVCBPTiBURVhU IFNFQVJDSCBESUNUSU9OQVJZIHRhcmdldC5mdHNfZGljdF9kaWZmCisgICAgSVMgJ0NvbW1lbnQn OworCistLSBGVFMgUGFyc2VyIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJTRVIgdGFy Z2V0LmZ0c19wYXJfdGFyICgKKyAgICBTVEFSVCA9IHByc2Rfc3RhcnQsCisgICAgR0VUVE9LRU4g PSBwcnNkX25leHR0b2tlbiwKKyAgICBFTkQgPSBwcnNkX2VuZCwKKyAgICBMRVhUWVBFUyA9IHBy c2RfbGV4dHlwZSk7CisKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJTRVIgdGFyZ2V0LmZ0c19wYXJf ZGlmZiAoCisgICAgU1RBUlQgPSBpbnQ0X2FjY3VtLAorICAgIEdFVFRPS0VOID0gaW5ldF9naXN0 X3BlbmFsdHksCisgICAgRU5EID0gYnRpbnQyc29ydHN1cHBvcnQsCisgICAgTEVYVFlQRVMgPSBk aXNwZWxsX2luaXQpOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFBBUlNFUiB0YXJnZXQuZnRz X3Bhcl9kaWZmCisgICAgICBJUyAnQ29tbWVudCc7CisKKy0tIEZUUyBUZW1wbGF0ZSBzY3JpcHRz CitDUkVBVEUgVEVYVCBTRUFSQ0ggVEVNUExBVEUgdGFyZ2V0LmZ0c190ZW1wbF90YXIgKAorICAg IElOSVQgPSBkaXNwZWxsX2luaXQsCisgICAgTEVYSVpFID0gZGlzcGVsbF9sZXhpemUKKyk7CisK K0NSRUFURSBURVhUIFNFQVJDSCBURU1QTEFURSB0YXJnZXQuZnRzX3RlbXBsX2RpZmYgKAorICAg IElOSVQgPSBkc2ltcGxlX2luaXQsCisgICAgTEVYSVpFID0gZHNpbXBsZV9sZXhpemUKKyk7CisK K0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggVEVNUExBVEUgdGFyZ2V0LmZ0c190ZW1wbF9kaWZmIElT ICdDb21tZW50JzsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL3Rl c3RzL3BwYXMvOS4yX3BsdXMvc291cmNlLnNxbCBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9k aWZmL3Rlc3RzL3BwYXMvOS4yX3BsdXMvc291cmNlLnNxbAppbmRleCA2N2VjMjE2ZDYuLjdiOWFk Mjk1NCAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvcHBh cy85LjJfcGx1cy9zb3VyY2Uuc3FsCisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZm L3Rlc3RzL3BwYXMvOS4yX3BsdXMvc291cmNlLnNxbApAQCAtMzA5LDMgKzMwOSw5MCBAQCBDT01N RU5UIE9OIFJVTEUgcnVsZTEgT04gc291cmNlLnRhYmxlX2Zvcl9ydWxlIElTICdjb21tZW50cyc7 CiBDUkVBVEUgUlVMRSBydWxlMiBBUwogICAgIE9OIElOU0VSVCBUTyBzb3VyY2UudGFibGVfZm9y X3J1bGUgRE8gTk9USElORzsKIAorLS0gQ29sbGF0aW9uIHNjcmlwdHMKK0NSRUFURSBDT0xMQVRJ T04gc291cmNlLmNvbGxfc3JjCisgICAgRlJPTSBwZ19jYXRhbG9nLiJkZWZhdWx0IjsKKworQUxU RVIgQ09MTEFUSU9OIHNvdXJjZS5jb2xsX3NyYworICAgIE9XTkVSIFRPIGVudGVycHJpc2VkYjsK KworQ09NTUVOVCBPTiBDT0xMQVRJT04gc291cmNlLmNvbGxfc3JjCisgICAgSVMgJ1Rlc3QgQ29t bWVudCc7CisKK0NSRUFURSBDT0xMQVRJT04gc291cmNlLmNvbGxfZGlmZgorICAgIEZST00gcGdf Y2F0YWxvZy4iZGVmYXVsdCI7CisKK0FMVEVSIENPTExBVElPTiBzb3VyY2UuY29sbF9kaWZmCisg ICAgT1dORVIgVE8gZW50ZXJwcmlzZWRiOworCitDT01NRU5UIE9OIENPTExBVElPTiBzb3VyY2Uu Y29sbF9kaWZmCisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKKy0tIEZUUyBDb25maWd1cmF0aW9u IHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29u X3NyYyAoCisgICAgQ09QWT1nZXJtYW4KKyk7CisKK0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VS QVRJT04gc291cmNlLmZ0c19jb25fc3JjIE9XTkVSIFRPIGVudGVycHJpc2VkYjsKKworQ09NTUVO VCBPTiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX3NyYworICAgIElT ICdUZXN0IENvbW1lbnQnOworCisKK0NSRUFURSBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHNv dXJjZS5mdHNfY29uX2RpZmYgKAorCVBBUlNFUiA9IGRlZmF1bHQKKyk7CitBTFRFUiBURVhUIFNF QVJDSCBDT05GSUdVUkFUSU9OIHNvdXJjZS5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGFz Y2lpd29yZCBXSVRIIGdlcm1hbl9zdGVtOworQUxURVIgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElP TiBzb3VyY2UuZnRzX2Nvbl9kaWZmIEFERCBNQVBQSU5HIEZPUiBlbWFpbCBXSVRIIHNpbXBsZTsK K0FMVEVSIFRFWFQgU0VBUkNIIENPTkZJR1VSQVRJT04gc291cmNlLmZ0c19jb25fZGlmZiBBREQg TUFQUElORyBGT1IgaHdvcmQgV0lUSCBkdXRjaF9zdGVtOworCistLSBGVFMgRGljdGlvbmFyeSBz Y3JpcHRzCitDUkVBVEUgVEVYVCBTRUFSQ0ggRElDVElPTkFSWSBzb3VyY2UuZnRzX2RpY3Rfc3Jj ICgKKyAgICBURU1QTEFURSA9IHNpbXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZW5nbGlzaCcKKyk7 CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggRElDVElPTkFSWSBzb3VyY2UuZnRzX2RpY3Rfc3Jj CisgICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKK0NSRUFURSBURVhUIFNFQVJDSCBESUNUSU9OQVJZ IHNvdXJjZS5mdHNfZGljdF9kaWZmICgKKyAgICBURU1QTEFURSA9IHNpbXBsZSwKKyAgICBzdG9w d29yZHMgPSAnZW5nbGlzaCcKKyk7CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggRElDVElPTkFS WSBzb3VyY2UuZnRzX2RpY3RfZGlmZgorICAgIElTICdUZXN0IENvbW1lbnQnOworCistLSBGVFMg UGFyc2VyIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJTRVIgc291cmNlLmZ0c19wYXJf c3JjICgKKyAgICBTVEFSVCA9IHByc2Rfc3RhcnQsCisgICAgR0VUVE9LRU4gPSBwcnNkX25leHR0 b2tlbiwKKyAgICBFTkQgPSBwcnNkX2VuZCwKKyAgICBMRVhUWVBFUyA9IHByc2RfbGV4dHlwZSk7 CisKK0NPTU1FTlQgT04gVEVYVCBTRUFSQ0ggUEFSU0VSIHNvdXJjZS5mdHNfcGFyX3NyYworICAg ICAgSVMgJ1Rlc3QgQ29tbWVudCc7CisKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJTRVIgc291cmNl LmZ0c19wYXJfZGlmZiAoCisgICAgU1RBUlQgPSBwcnNkX3N0YXJ0LAorICAgIEdFVFRPS0VOID0g cHJzZF9uZXh0dG9rZW4sCisgICAgRU5EID0gcHJzZF9lbmQsCisgICAgTEVYVFlQRVMgPSBwcnNk X2xleHR5cGUpOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFBBUlNFUiBzb3VyY2UuZnRzX3Bh cl9kaWZmCisgICAgICBJUyAnVGVzdCBDb21tZW50JzsKKworLS0gRlRTIFRlbXBsYXRlIHNjcmlw dHMKK0NSRUFURSBURVhUIFNFQVJDSCBURU1QTEFURSBzb3VyY2UuZnRzX3RlbXBsX3NyYyAoCisg ICAgSU5JVCA9IGRpc3BlbGxfaW5pdCwKKyAgICBMRVhJWkUgPSBkaXNwZWxsX2xleGl6ZQorKTsK KworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBURU1QTEFURSBzb3VyY2UuZnRzX3RlbXBsX3NyYyBJ UyAnVGVzdCBDb21tZW50JzsKKworQ1JFQVRFIFRFWFQgU0VBUkNIIFRFTVBMQVRFIHNvdXJjZS5m dHNfdGVtcGxfZGlmZiAoCisgICAgSU5JVCA9IGRpc3BlbGxfaW5pdCwKKyAgICBMRVhJWkUgPSBk aXNwZWxsX2xleGl6ZQorKTsKKworQ09NTUVOVCBPTiBURVhUIFNFQVJDSCBURU1QTEFURSBzb3Vy Y2UuZnRzX3RlbXBsX2RpZmYgSVMgJ1Rlc3QgQ29tbWVudCc7CmRpZmYgLS1naXQgYS93ZWIvcGdh ZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wcGFzLzkuMl9wbHVzL3RhcmdldC5zcWwgYi93 ZWIvcGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wcGFzLzkuMl9wbHVzL3RhcmdldC5z cWwKaW5kZXggZjY0NzY1MjI0Li5kZjUzZjAxZDUgMTAwNjQ0Ci0tLSBhL3dlYi9wZ2FkbWluL3Rv b2xzL3NjaGVtYV9kaWZmL3Rlc3RzL3BwYXMvOS4yX3BsdXMvdGFyZ2V0LnNxbAorKysgYi93ZWIv cGdhZG1pbi90b29scy9zY2hlbWFfZGlmZi90ZXN0cy9wcGFzLzkuMl9wbHVzL3RhcmdldC5zcWwK QEAgLTMzNSwzICszMzUsNzMgQEAgQ1JFQVRFIFJVTEUgcnVsZTMgQVMKIC0tCiAKIFJFRlJFU0gg TUFURVJJQUxJWkVEIFZJRVcgdGFyZ2V0LiJNVmlldyI7CisKKy0tIENvbGxhdGlvbiBzY3JpcHRz CitDUkVBVEUgQ09MTEFUSU9OIHRhcmdldC5jb2xsX3RhcgorICAgIEZST00gcGdfY2F0YWxvZy4i ZGVmYXVsdCI7CisKK0FMVEVSIENPTExBVElPTiB0YXJnZXQuY29sbF90YXIKKyAgICBPV05FUiBU TyBlbnRlcnByaXNlZGI7CisKK0NSRUFURSBDT0xMQVRJT04gdGFyZ2V0LmNvbGxfZGlmZgorICAg IChMQ19DT0xMQVRFID0gJ0MnLCBMQ19DVFlQRSA9ICdDJyk7CisKK0FMVEVSIENPTExBVElPTiB0 YXJnZXQuY29sbF9kaWZmCisgICAgT1dORVIgVE8gZW50ZXJwcmlzZWRiOworCistLSBGVFMgQ29u ZmlndXJhdGlvbiBzY3JpcHRzCitDUkVBVEUgVEVYVCBTRUFSQ0ggQ09ORklHVVJBVElPTiB0YXJn ZXQuZnRzX2Nvbl90YXIgKAorICAgIENPUFk9Z2VybWFuCispOworCitBTFRFUiBURVhUIFNFQVJD SCBDT05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX3RhciBPV05FUiBUTyBlbnRlcnByaXNlZGI7 CisKK0NSRUFURSBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX2RpZmYg KAorCVBBUlNFUiA9IGRlZmF1bHQKKyk7CitBTFRFUiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9O IHRhcmdldC5mdHNfY29uX2RpZmYgQUREIE1BUFBJTkcgRk9SIGFzY2lpd29yZCBXSVRIIGR1dGNo X3N0ZW07CitBTFRFUiBURVhUIFNFQVJDSCBDT05GSUdVUkFUSU9OIHRhcmdldC5mdHNfY29uX2Rp ZmYgQUREIE1BUFBJTkcgRk9SIGVtYWlsIFdJVEggc2ltcGxlOworQUxURVIgVEVYVCBTRUFSQ0gg Q09ORklHVVJBVElPTiB0YXJnZXQuZnRzX2Nvbl9kaWZmIEFERCBNQVBQSU5HIEZPUiBod29yZCBX SVRIIGdlcm1hbl9zdGVtOworCistLSBGVFMgRGljdGlvbmFyeSBzY3JpcHRzCitDUkVBVEUgVEVY VCBTRUFSQ0ggRElDVElPTkFSWSB0YXJnZXQuZnRzX2RpY3RfdGFyICgKKyAgICBURU1QTEFURSA9 IHNpbXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZW5nbGlzaCcKKyk7CisKK0NSRUFURSBURVhUIFNF QVJDSCBESUNUSU9OQVJZIHRhcmdldC5mdHNfZGljdF9kaWZmICgKKyAgICBURU1QTEFURSA9IHNp bXBsZSwKKyAgICBzdG9wd29yZHMgPSAnZ2VybWFuJworKTsKKworQ09NTUVOVCBPTiBURVhUIFNF QVJDSCBESUNUSU9OQVJZIHRhcmdldC5mdHNfZGljdF9kaWZmCisgICAgSVMgJ0NvbW1lbnQnOwor CistLSBGVFMgUGFyc2VyIHNjcmlwdHMKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJTRVIgdGFyZ2V0 LmZ0c19wYXJfdGFyICgKKyAgICBTVEFSVCA9IHByc2Rfc3RhcnQsCisgICAgR0VUVE9LRU4gPSBw cnNkX25leHR0b2tlbiwKKyAgICBFTkQgPSBwcnNkX2VuZCwKKyAgICBMRVhUWVBFUyA9IHByc2Rf bGV4dHlwZSk7CisKK0NSRUFURSBURVhUIFNFQVJDSCBQQVJTRVIgdGFyZ2V0LmZ0c19wYXJfZGlm ZiAoCisgICAgU1RBUlQgPSBpbnQ0X2FjY3VtLAorICAgIEdFVFRPS0VOID0gaW5ldF9naXN0X3Bl bmFsdHksCisgICAgRU5EID0gYnRpbnQyc29ydHN1cHBvcnQsCisgICAgTEVYVFlQRVMgPSBkaXNw ZWxsX2luaXQpOworCitDT01NRU5UIE9OIFRFWFQgU0VBUkNIIFBBUlNFUiB0YXJnZXQuZnRzX3Bh cl9kaWZmCisgICAgICBJUyAnQ29tbWVudCc7CisKKy0tIEZUUyBUZW1wbGF0ZSBzY3JpcHRzCitD UkVBVEUgVEVYVCBTRUFSQ0ggVEVNUExBVEUgdGFyZ2V0LmZ0c190ZW1wbF90YXIgKAorICAgIElO SVQgPSBkaXNwZWxsX2luaXQsCisgICAgTEVYSVpFID0gZGlzcGVsbF9sZXhpemUKKyk7CisKK0NS RUFURSBURVhUIFNFQVJDSCBURU1QTEFURSB0YXJnZXQuZnRzX3RlbXBsX2RpZmYgKAorICAgIElO SVQgPSBkc2ltcGxlX2luaXQsCisgICAgTEVYSVpFID0gZHNpbXBsZV9sZXhpemUKKyk7CisKK0NP TU1FTlQgT04gVEVYVCBTRUFSQ0ggVEVNUExBVEUgdGFyZ2V0LmZ0c190ZW1wbF9kaWZmIElTICdD b21tZW50JzsKZGlmZiAtLWdpdCBhL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL3Rlc3Rz L3Rlc3Rfc2NoZW1hX2RpZmZfY29tcC5weSBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZm L3Rlc3RzL3Rlc3Rfc2NoZW1hX2RpZmZfY29tcC5weQppbmRleCA1N2RlYzQ1OTkuLmYxNWUyYjUx NiAxMDA2NDQKLS0tIGEvd2ViL3BnYWRtaW4vdG9vbHMvc2NoZW1hX2RpZmYvdGVzdHMvdGVzdF9z Y2hlbWFfZGlmZl9jb21wLnB5CisrKyBiL3dlYi9wZ2FkbWluL3Rvb2xzL3NjaGVtYV9kaWZmL3Rl c3RzL3Rlc3Rfc2NoZW1hX2RpZmZfY29tcC5weQpAQCAtMTY1LDYgKzE2NSw4IEBAIGNsYXNzIFNj aGVtYURpZmZUZXN0Q2FzZShCYXNlVGVzdEdlbmVyYXRvcik6CiAgICAgICAgICAgICAgICAgICAg IHNlbGYuYXNzZXJ0RXF1YWxzKHJlc3BvbnNlLnN0YXR1c19jb2RlLCAyMDApCiAgICAgICAgICAg ICAgICAgICAgIHJlc3BvbnNlX2RhdGEgPSBqc29uLmxvYWRzKHJlc3BvbnNlLmRhdGEuZGVjb2Rl KCd1dGYtOCcpKQogICAgICAgICAgICAgICAgICAgICBmaWxlX29iai53cml0ZShyZXNwb25zZV9k YXRhWydkaWZmX2RkbCddKQorICAgICAgICAgICAgZWxpZiAnZGlmZl9kZGwnIGluIGRpZmY6Cisg ICAgICAgICAgICAgICAgZmlsZV9vYmoud3JpdGUoZGlmZlsnZGlmZl9kZGwnXSkKIAogICAgICAg ICBmaWxlX29iai5jbG9zZSgpCiAgICAgICAgIHRyeToK --0000000000005db78a05a11eef80--