From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.io!.POSTED.blaine.gmane.org!not-for-mail From: Jaft Newsgroups: gmane.emacs.bugs Subject: bug#55900: [PATCH] Hierarchy =?UTF-8?Q?=E2=80=93?= Defer the Computation of Children Date: Sun, 12 Jun 2022 09:07:37 +0000 (UTC) Message-ID: References: <83wndny5i7.fsf@gnu.org> <87mtei1cii.fsf@outlook.com> Reply-To: Jaft Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_2581913_1860307943.1655024858024" Injection-Info: ciao.gmane.io; posting-host="blaine.gmane.org:116.202.254.214"; logging-data="36055"; mail-complaints-to="usenet@ciao.gmane.io" Cc: "55900@debbugs.gnu.org" <55900@debbugs.gnu.org> To: Eli Zaretskii Original-X-From: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Sun Jun 12 11:13:48 2022 Return-path: Envelope-to: geb-bug-gnu-emacs@m.gmane-mx.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.io with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.92) (envelope-from ) id 1o0JfI-0009FA-7I for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 12 Jun 2022 11:13:48 +0200 Original-Received: from localhost ([::1]:50338 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1o0JfH-0006iu-B1 for geb-bug-gnu-emacs@m.gmane-mx.org; Sun, 12 Jun 2022 05:13:47 -0400 Original-Received: from eggs.gnu.org ([2001:470:142:3::10]:48540) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1o0JZi-0003TB-Et for bug-gnu-emacs@gnu.org; Sun, 12 Jun 2022 05:08:04 -0400 Original-Received: from debbugs.gnu.org ([209.51.188.43]:60835) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1o0JZh-00075U-Sj for bug-gnu-emacs@gnu.org; Sun, 12 Jun 2022 05:08:02 -0400 Original-Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1o0JZh-0007gc-Kx for bug-gnu-emacs@gnu.org; Sun, 12 Jun 2022 05:08:01 -0400 X-Loop: help-debbugs@gnu.org Resent-From: Jaft Original-Sender: "Debbugs-submit" Resent-CC: bug-gnu-emacs@gnu.org Resent-Date: Sun, 12 Jun 2022 09:08:01 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 55900 X-GNU-PR-Package: emacs X-GNU-PR-Keywords: patch Original-Received: via spool by 55900-submit@debbugs.gnu.org id=B55900.165502487529534 (code B ref 55900); Sun, 12 Jun 2022 09:08:01 +0000 Original-Received: (at 55900) by debbugs.gnu.org; 12 Jun 2022 09:07:55 +0000 Original-Received: from localhost ([127.0.0.1]:54732 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o0JZa-0007gH-Cn for submit@debbugs.gnu.org; Sun, 12 Jun 2022 05:07:55 -0400 Original-Received: from mail-co1nam11olkn2075.outbound.protection.outlook.com ([40.92.18.75]:26776 helo=NAM11-CO1-obe.outbound.protection.outlook.com) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1o0JZX-0007g3-G6 for 55900@debbugs.gnu.org; Sun, 12 Jun 2022 05:07:52 -0400 ARC-Seal: i=1; a=rsa-sha256; s=arcselector9901; d=microsoft.com; cv=none; b=daRVRnWxq6WD+R2sI62t7KxsYTfHxTdO9wnVH/Ux01RF7UPl4Fsv1w3T3QCLjYv0R7MDRlu7yL90CAWa2opx3Mpc+UvdeGM+Jmcm+M2uBcdzErLo6Ivf26tfLKn0ok+U0YUFnrabmHP5wQVZqxS7yxTrjlcaqT71KW1vT5ofmvpgkWWnYMGK91dZY9knF9UzQRqlBvL5BpUmWmwwlu0uT1a0eAsrGIY2wmJ42LylkVaX3ELPSfJOi1ZK8/EIcBwoDzK4wv+9oVIEKngt8r+HZ5myyPJEvX+5Zf+TsIBPlFv1RnTSyCqwxOVq84aIHEA16aA8+yqdr0daElLS1UcJ9g== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector9901; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=liuLLyvXkcEpiw8F1PsH+vh+tShyMBuy66R2MhkcO/M=; b=EMM8/cgmn8TfadH7BaL/bh8DGgeQ7aHQgfn6aRpUxyLfAkD3/QsWk1/jytiU5Otm1uaUzy3tcH0j4EMtCj9XHeAjE+jT4bDDGA715f39rrmFoz8LR5XgzBEIiLYR/oPO8md4WCb5vcUjlIW8DsABMYljoLbxLi3Vl1Lex2J3OaUE8P35CvVbdkISd8B9JdLj5xvbLwiftEHrzgKzd7mpYH26PsV1ENH9a7VmGokAYRB5e3zlq+Z0pfTPuZZPz/saRVWiUAoj3IruaGSiSLJF9qap2Twl1e1Ym/N7lffiVCnRHVbK8ZOoFYvYfxxQyZBDuMSDfd3VrITyUd+TwqTcQA== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=none; dmarc=none; dkim=none; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=outlook.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=liuLLyvXkcEpiw8F1PsH+vh+tShyMBuy66R2MhkcO/M=; b=Op0wjX9RjiKben0ucqe8SrVJjsoy13x3mx7vFg+aGtXbsUysGTHo+FiaebNkQhJZwt4nGCCdpcTkDI7DIslUHYQ6vXPKz0V4ag3rvEN9BjAPn7tpWhOXtMhzCwfEIZx2eOJVVqqn1FdMUv6XPDHaiPPXunxpqev9SqSwf7h2YtjR02e/yXSxbG/+EC0XLgCaGpYJcgXQXfu8I6vwokrQ/eZethd0xjZuGRCM4PzRbnXarB59A43qMqbiw2lF8wULnxGhqIwbe/pF8Dq9kPXD9tD0zy0p1bqikW8ZbpAAkk1TKmnqL0bKzSDJ2zcI2213VRB1WCla6A9YrC6tZXHA/g== Original-Received: from BY5PR07MB7029.namprd07.prod.outlook.com (2603:10b6:a03:1f0::20) by BY5PR07MB6952.namprd07.prod.outlook.com (2603:10b6:a03:1e7::18) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.5332.16; Sun, 12 Jun 2022 09:07:44 +0000 Original-Received: from BY5PR07MB7029.namprd07.prod.outlook.com ([fe80::8dc1:2aac:41b5:1e74]) by BY5PR07MB7029.namprd07.prod.outlook.com ([fe80::8dc1:2aac:41b5:1e74%3]) with mapi id 15.20.5332.019; Sun, 12 Jun 2022 09:07:44 +0000 X-YMail-OSG: 8pGSgacVM1k.zvx2D1hS1GK2PMzrbMIorIgjcUyyzfX_4YdLmyjjnLtnyVUnOvL oV0me0nR6EGWgV9g8yEhAXUR0Ydla7e94MCZ8u3eugavCqEulruOjsn_Nr.WRWH2igE_.RUHDsRZ ft2eQvyMuOHudNrAQwxu3mGHb2MpDMm_9WDk2Y2Voa8mNSh_srZ5D4E0r.2scxMvIuTZJ4Py0qwv PB4AQ2N6j3zKAwNTfcja7y6OD.iyCsAgD3WxKy5pTtkbHNMEOmsvB79g_H1hrOiKFnaYat63TJbZ y2gog4q7LwpmxLQ0MO70Lqi_GnN4FFUyJRbF6P4RJjvCqPJ5lg8aLBlmeiOkRvvPbEXAr8gAnrlv BfJy8onv1rxoZ_4KVcJ2q9Cr5wCR4XSYidpCXjEubMJc.9TirGdfg8bpmUSELXcSNQq8fUIYdZii qWbUTiyBcNc9yjX.N26NEXbcnHTg77qTUPX8yfyyjmgoVTzcQPNP0Nncs3WV4Sos4hSFUSh8vF2T cVPq62yxtA_v7r6tjlo0q45u7J8XeOVVOdu.KNJK5g4L2KOg3.xdBFookBRf40zet7bvH2klN5qS apdZFtpZHOnIbMbLXWALjgzR4IaE5pcV_hay7P4YEJmJs1aoZrWn4WXYmDz7hhGCpq5WbzM2.K4f Kzp6S0Lho8byi112cmPh3npJA79cN3PDtXeSky.8Fybaunkworr8B.9kbncRK3T8Cf6gaHpmaIMp iIbuxgSaq9UG1hdf.PpJ70KyihNHHyyGAqCOeLxgZKdOLVxnCTWKRXgtUVVi1Lr2seQx_Lw8fsHk fbTxdBPgf5pC0aj3TFoD2Wg3RyXWvxjRst1NF8KVR2 X-Sonic-MF: In-Reply-To: <87mtei1cii.fsf@outlook.com> X-Mailer: WebService/1.1.20280 YMailNorrin X-TMN: [YXIfw2bKTL9OexEJNJq5gQ+mRIzFZs4+] X-ClientProxiedBy: CH0PR03CA0361.namprd03.prod.outlook.com (2603:10b6:610:119::27) To BY5PR07MB7029.namprd07.prod.outlook.com (2603:10b6:a03:1f0::20) X-Microsoft-Original-Message-ID: <1383718586.2581914.1655024858024@mail.yahoo.com> X-MS-Exchange-MessageSentRepresentingType: 1 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: a127886b-e35b-46c9-2a2c-08da4c530306 X-MS-TrafficTypeDiagnostic: BY5PR07MB6952:EE_ X-Microsoft-Antispam: BCL:0; X-Microsoft-Antispam-Message-Info: jrgMCK3qYaeBFh0XLKXcHQQkGktQaU779ydnvpHqwpNmwktldj+ZAk4cmU+Lxb/NrTtKCd5HG5MGP+ayFZ6+Wdy0tjPe1bu7tD5Kur1T627WTtrvI+6ytRka4BGaDle0kHfRH5fq2KE0+5/l4ZLKqV8OTBR/6baNDfPGjN7si4uTnToY+JrcT7WUcaofE8alPGV033AAtei6koRU7OBDThW9WCz0TRR0/J8Flnt/pRDunsKigXWZ6CC0ICf5wq+UHCp2E2CNgh8XOnigMUIK8MuYf2Dch2G4kIjeXxUFyWh5nSqGPWP4E0PmQC1HwuqcFLJkXwRcYBwFv0yMaX7H5/mImUEC97JV+tC7zssAdg3DFBbM4lZOyyE0JATeGiosg4KJhxd2/Z/cbLrwItRec+ouvNEj/J4ftgQMZVAz0HQ1u2IVRCR0hSkxn7L3j4XDPL7VzB4EUX5aiaRXJk6XHc37HOvrLKCKB/jweM+DUtbJrx8BJHJBGu+OVCmkJqi9/dy7Tt1+pRQh6H1GUuh1/UabJyXLo2iQdSe1OM65BBNpmdzDjHg3EnrIkptd7baYGIB5Zo3IuHylm8JRv0c/Iw== X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: Kra2Zxpl43zztzzQFgqdrL/wd8/g3Yinjx7sKrYpiNKtAYo4p5eaCtSsxceGrhFXkTBxejNYvs4H+aGxypzjG8ObCoxkBt4v+KmQGUQ9UqgpW4udJLUm/E8RmxKEPcgZjBerEtyy8+mtysHpqnJ+LW1ORVy4iDET5kvOwW6UTkmZ6mPFDz/mWsYgi7bP488GdJmtCpv2BuV77FLA5Jtpscbc++ShrTuIvfRgYZXa30ocuLCPlKOECZbPWeUUJMMWIappMOpj2/CXXmY2oPXawy+3ONHHwYNdrbxW9S3YCylRdITQweti8E8OcrEZAlQ/RYvO9n0k4JH49X32Be5Idfhgsb4o9tRZEcPDN3GQZP7km1Itw8xneSqEWHDHTRFVChm8S/OoLpxquXSeu4M3WevzJZ7w7Z8L0oHzXxyUCx/GJfaNN2ELzV9XOWgB4+4IVbES69+fyPsmdpCES3afaBokfZ+sntYuM+by2OtYTRxfumrZmg/eAac6xOeblhiWe5YYf75GCxaGaMK88uvRUdrd2qswS0Iw5m3/8BUavLutmJGTba6pgisCz1CfMslG/T4zPZRFehyxvvlT1vE12M52dDckqMOV8CMRL2shh0KiTWxq9/60ikSsjwd0493N1d0dV3Nh2JvhEWDWBpj1WNdV0bh6AnzlNtYAato+mnyHXjRC8Bs2GkyeT7OsGEB9rn8pDwH67/QvSRzbPLwvbeod9/REOge2pCUxMojNArXAx8vHOQVSxTrfFB FAYWN51x2DmsCHr9Q9mWA1CZ/IcK/iSoUyebniP3iMZK3WOVBYBsVWBYz+hDfsMTkJy9GfMlr3DNm3cr9JBOAlNUz4FjXCPcbw X-OriginatorOrg: outlook.com X-MS-Exchange-CrossTenant-Network-Message-Id: a127886b-e35b-46c9-2a2c-08da4c530306 X-MS-Exchange-CrossTenant-AuthSource: BY5PR07MB7029.namprd07.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 12 Jun 2022 09:07:44.4797 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 84df9e7f-e9f6-40af-b435-aaaaaaaaaaaa X-MS-Exchange-CrossTenant-RMS-PersistedConsumerOrg: 00000000-0000-0000-0000-000000000000 X-MS-Exchange-Transport-CrossTenantHeadersStamped: BY5PR07MB6952 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-BeenThere: bug-gnu-emacs@gnu.org List-Id: "Bug reports for GNU Emacs, the Swiss army knife of text editors" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: bug-gnu-emacs-bounces+geb-bug-gnu-emacs=m.gmane-mx.org@gnu.org Original-Sender: "bug-gnu-emacs" Xref: news.gmane.io gmane.emacs.bugs:234346 Archived-At: ------=_Part_2581913_1860307943.1655024858024 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable Hmm; I tried to attach the patch with Gnus but it doesn't look like it actu= ally added it=E2=80=A6. Sending again, via the browser this time. On Sunday, June 12, 2022, 04:01:29 AM CDT, Wamm K. D. = wrote:=20 > On Sat. (Jun 11, 2022) at 04:21:59 AM -04, Eli Zaretskii w= rote: >>> From: "Wamm K. D." >>> Date: Sat, 11 Jun 2022 01:52:13 -0500 >>>=20 >>> Pretty much as the subject describes; this should allow for users to >>> lazily load hierarchy branches when loading everything at once would >>> otherwise be too consuming, up-front (or if dealing with an infinite >>> tree). >> >> Thanks. >> >>> * lisp/emacs-lisp/hierarchy.el (hierarchy-add-tree) (hierarchy-add-tree= s): >>> Add parameter 'delay-children-p'. >> >> Please use our style of commit log messages.=C2=A0 The above should be >> >> * lisp/emacs-lisp/hierarchy.el (hierarchy-add-tree) >> (hierarchy-add-trees): Add parameter 'delay-children-p'. > > Mmm; gotcha. This hadn't been clear, to me; I thought the example given > in the CONTRIBUTE file was that way because the line was long and the > main point of its demonstration was what to do with a case of more than > one function. I've adjusted the commit message appropriately, now. > >>> +(defun hierarchy--create-delayed-tree-widget (elem labelfn indent fn) >>> +=C2=A0 "Return a list of tree-widgets for a hierarchy created from the= childrenfn. >> >> The first line of the doc string should ideally mention the >> arguments.=C2=A0 This one doesn't, and it also seems to misname one >> argument: it's FN, not childrenfn, right? > > Yeah; I was referencing the fact that this function is called childrenfn > in a bunch of other functions but, for whatever reason, I didn't call it > that here so that's why it isn't all-capitalized (while the reference to > it, at the end, is and says FN). But that's weird; I don't know why I > went with that name when I could've just=E2=80=A6used the same name as ev= ery > other function. I've corrected that, standardized. > >> Can you add some tests of this new functionality? > > I've added some; I didn't created tests for children functionality since > the delayed computation means there aren't children (until someone > activates the tree-widget and the children are computed with the > provided function) but I create some tests to check that the root and > parent elements were still functioning as expected, when using delayed > children. > >> Also, I think this warrants a NEWS entry to describe the new feature. > > I've added that, as well.= ------=_Part_2581913_1860307943.1655024858024 Content-Type: text/x-patch Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-Allow-Hierarchy-to-delay-computing-children.patch" Content-ID: <497b70ec-a543-4635-f045-49f691714abf@yahoo.com> RnJvbSAxYWQ4MzQ4MzBjNWQzNWI5MmM5ZTVlZjIxNjFkODc1MjE4YzdjMWI2IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiAiV2FtbSBLLiBEIiA8amFmdC5yQG91dGxvb2suY29tPgpEYXRl OiBTdW4sIDEyIEp1biAyMDIyIDAzOjQ4OjAxIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0gQWxsb3cg SGllcmFyY2h5IHRvIGRlbGF5IGNvbXB1dGluZyBjaGlsZHJlbgoKQWRkIGFuIG9wdGlvbiB0byBh bGxvdyB1c2VycyB0byBzcGVjaWZ5IHRoYXQgY29tcHV0aW5nIHRoZSBjaGlsZHJlbiBvZgp0aGUg aGllcmFyY2h5IHNob3VsZCBiZSBkZWxheWVkIHRvIHdoZW4gdGhlIHVzZXIgY2FsbHMgZm9yIHRo ZW0sIGJ5CnV0aWxpemluZyB0aGUgdHJlZS13aWRnZXQgOmV4cGFuZGVyIHByb3BlcnR5LgoKKiBs aXNwL2VtYWNzLWxpc3AvaGllcmFyY2h5LmVsIChoaWVyYXJjaHktYWRkLXRyZWUpCihoaWVyYXJj aHktYWRkLXRyZWVzKToKQWRkIHBhcmFtZXRlciAnZGVsYXktY2hpbGRyZW4tcCcuCgoqIGxpc3Av ZW1hY3MtbGlzcC9oaWVyYXJjaHkuZWwgKGhpZXJhcmNoeS0tY3JlYXRlLWRlbGF5ZWQtdHJlZS13 aWRnZXQpOiBBZGQKZnVuY3Rpb24uCgoqIGxpc3AvZW1hY3MtbGlzcC9oaWVyYXJjaHkuZWwgKGhp ZXJhcmNoeS1jb252ZXJ0LXRvLXRyZWUtd2lkZ2V0KToKVXRpbGl6ZSAnOmV4cGFuZGVyJyBpZiBk ZWxheWluZyBjaGlsZHJlbi4KCiogdGVzdC9saXNwL2VtYWNzLWxpc3AvaGllcmFyY2h5LXRlc3Rz LmVsOiBBZGQgdGVzdHMgZm9yCmRlbGF5ZWQtY2hpbGRyZW4gZnVuY3Rpb25hbGl0eS4KLS0tCiBl dGMvTkVXUyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfCAgIDkgKysKIGxpc3AvZW1h Y3MtbGlzcC9oaWVyYXJjaHkuZWwgICAgICAgICAgICB8ICA4NiArKysrKysrKysrKystLS0KIHRl c3QvbGlzcC9lbWFjcy1saXNwL2hpZXJhcmNoeS10ZXN0cy5lbCB8IDE0MSArKysrKysrKysrKysr KysrKysrKysrKysKIDMgZmlsZXMgY2hhbmdlZCwgMjE4IGluc2VydGlvbnMoKyksIDE4IGRlbGV0 aW9ucygtKQoKZGlmZiAtLWdpdCBhL2V0Yy9ORVdTIGIvZXRjL05FV1MKaW5kZXggNDI0ZDEyNTBj My4uYThjODYzY2QyMCAxMDA2NDQKLS0tIGEvZXRjL05FV1MKKysrIGIvZXRjL05FV1MKQEAgLTE3 NTYsNiArMTc1NiwxNSBAQCBFbmFibGluZyB0aGlzIG1pbm9yIG1vZGUgdHVybnMgb24gaGlkaW5n IGhlYWRlciBtYXRlcmlhbCwgbGlrZQogSWYgbm9uLW5pbCwgZmlsZXMgdW50cmFja2VkIGJ5IGEg VkNTIGFyZSBjb25zaWRlcmVkIHRvIGJlIHBhcnQgb2YKIHRoZSBwcm9qZWN0IGJ5IGEgVkMgcHJv amVjdCBiYXNlZCBvbiB0aGF0IFZDUy4KIAorKiogSGllcmFyY2h5CisKKysrKworKioqIFRyZWUg RGlzcGxheSBjYW4gZGVsYXkgY29tcHV0YXRpb24gb2YgY2hpbGRyZW4KKydoaWVyYXJjaHktYWRk LXRyZWUnIGFuZCAnaGllcmFyY2h5LWFkZC10cmVlcycgaGF2ZSBhbiBvcHRpb25hbAorYXJndW1l bnQsICdkZWxheS1jaGlsZHJlbi1wJywgd2hpY2ggYWxsb3dzIHN0b3JpbmcgJ2NoaWxkcmVuZm4n IHRvIHRoZQorbm9kZXMgb2YgYSB0cmVlLXdpZGdldCBkaXNwbGF5IHRvIGJlIGFjdGl2YXRlZCBh bmQgY29tcHV0ZWQgb25seSB3aGVuCit0aGUgdXNlcnMgZXhwYW5kcyB0aGUgbm9kZS4KKwogLS0t CiAqKiBUaGUgYXV0b2FyZy5lbCBsaWJyYXJ5IGlzIG5vdyBtYXJrZWQgb2Jzb2xldGUuCiBUaGlz IGxpYnJhcnkgcHJvdmlkZXMgdGhlICdhdXRvYXJnLW1vZGUnIGFuZCAnYXV0b2FyZy1rcC1tb2Rl JyBtaW5vcgpkaWZmIC0tZ2l0IGEvbGlzcC9lbWFjcy1saXNwL2hpZXJhcmNoeS5lbCBiL2xpc3Av ZW1hY3MtbGlzcC9oaWVyYXJjaHkuZWwKaW5kZXggNmM5NWQ4NmI0Ny4uMzE2Y2RjYjMwYiAxMDA2 NDQKLS0tIGEvbGlzcC9lbWFjcy1saXNwL2hpZXJhcmNoeS5lbAorKysgYi9saXNwL2VtYWNzLWxp c3AvaGllcmFyY2h5LmVsCkBAIC03MSw3ICs3MSw4IEBACiAgICAgICAgICAgICAgICAoOmNvbmMt bmFtZSBoaWVyYXJjaHktLSkpCiAgIChyb290cyAobGlzdCkpIDsgbGlzdCBvZiB0aGUgaGllcmFy Y2h5IHJvb3RzIChubyBwYXJlbnQpCiAgIChwYXJlbnRzIChtYWtlLWhhc2gtdGFibGUgOnRlc3Qg J2VxdWFsKSkgOyBtYXAgYW4gaXRlbSB0byBpdHMgcGFyZW50Ci0gIChjaGlsZHJlbiAobWFrZS1o YXNoLXRhYmxlIDp0ZXN0ICdlcXVhbCkpIDsgbWFwIGFuIGl0ZW0gdG8gaXRzIGNoaWxkcmUKKyAg KGNoaWxkcmVuIChtYWtlLWhhc2gtdGFibGUgOnRlc3QgJ2VxdWFsKSkgOyBtYXAgYW4gaXRlbSB0 byBpdHMgY2hpbGRyZW4KKyAgKGRlbGF5aW5nLXBhcmVudHMgKG1ha2UtaGFzaC10YWJsZSA6dGVz dCAnZXF1YWwpKSA7IG1hcCBhbiBpdGVtIHRvIGl0cyBjaGlsZHJlbmZuCiAgIDs7IGNhY2hlIGNv bnRhaW5pbmcgdGhlIHNldCBvZiBhbGwgaXRlbXMgaW4gdGhlIGhpZXJhcmNoeQogICAoc2Vlbi1p dGVtcyAobWFrZS1oYXNoLXRhYmxlIDp0ZXN0ICdlcXVhbCkpKSAgOyBtYXAgYW4gaXRlbSB0byB0 CiAKQEAgLTEzMyw3ICsxMzQsOCBAQCBrZXlzIGFyZSA6a2V5IGFuZCA6dGVzdC4iCiAgICJDcmVh dGUgYSBoaWVyYXJjaHkgYW5kIHJldHVybiBpdC4iCiAgIChoaWVyYXJjaHktLW1ha2UpKQogCi0o ZGVmdW4gaGllcmFyY2h5LWFkZC10cmVlIChoaWVyYXJjaHkgaXRlbSBwYXJlbnRmbiAmb3B0aW9u YWwgY2hpbGRyZW5mbiBhY2NlcHRmbikKKyhkZWZ1biBoaWVyYXJjaHktYWRkLXRyZWUgKGhpZXJh cmNoeSBpdGVtIHBhcmVudGZuCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg Jm9wdGlvbmFsIGNoaWxkcmVuZm4gYWNjZXB0Zm4gZGVsYXktY2hpbGRyZW4tcCkKICAgIkluIEhJ RVJBUkNIWSwgYWRkIElURU0uCiAKIFBBUkVOVEZOIGlzIGVpdGhlciBuaWwgb3IgYSBmdW5jdGlv biBkZWZpbmluZyB0aGUgY2hpbGQtdG8tcGFyZW50CkBAIC0xNTEsMjcgKzE1MywzOSBAQCBDSElM RFJFTkZOIGFyZSBleHBlY3RlZCB0byBiZSBjb2hlcmVudCB3aXRoIGVhY2ggb3RoZXIuCiAKIEFD Q0VQVEZOIGlzIGEgZnVuY3Rpb24gcmV0dXJuaW5nIG5vbi1uaWwgaWYgaXRzIHBhcmFtZXRlciAo YW55IG9iamVjdCkKIHNob3VsZCBiZSBhbiBpdGVtIG9mIHRoZSBoaWVyYXJjaHkuICBCeSBkZWZh dWx0LCBBQ0NFUFRGTiByZXR1cm5zIG5vbi1uaWwKLWlmIGl0cyBwYXJhbWV0ZXIgaXMgbm9uLW5p bC4iCitpZiBpdHMgcGFyYW1ldGVyIGlzIG5vbi1uaWwuCisKK0RFTEFZLUNISUxEUkVOLVAgaXMg YSBwcmVkaWNhdGUgZGV0ZXJtaW5pbmcgd2hldGhlciB0aGUgY2hpbGRyZW4gdGhhdCB3b3VsZAor bm9ybWFsbHkgYmUgcHJvY2Vzc2VkIGJ5IENISUxEUkVORk4gc2hvdWxkLCBpbnN0ZWFkLCBoYXZl IHRoZWlyIHByb2Nlc3NpbmcgYmUKK2RlbGF5ZWQgYW5kIHN0b3JlZCB0byBiZSBwcm9jZXNzZWQg YnkgQ0hJTERSRU5GTiB3aGVuIHRoZSBjaGlsZCBpcyBzZWxlY3RlZAorZHVyaW5nIHVzZSBvZiB0 aGUgaGllcmFyY2h5LiIKICAgKHVubGVzcyAoaGllcmFyY2h5LWhhcy1pdGVtIGhpZXJhcmNoeSBp dGVtKQogICAgIChsZXQgKChhY2NlcHRmbiAob3IgYWNjZXB0Zm4gIydpZGVudGl0eSkpKQogICAg ICAgKGhpZXJhcmNoeS0tc2Vlbi1pdGVtcy1hZGQgaGllcmFyY2h5IGl0ZW0pCiAgICAgICAobGV0 ICgocGFyZW50IChhbmQgcGFyZW50Zm4gKGZ1bmNhbGwgcGFyZW50Zm4gaXRlbSkpKSkKICAgICAg ICAgKHdoZW4gKGZ1bmNhbGwgYWNjZXB0Zm4gcGFyZW50KQogICAgICAgICAgIChoaWVyYXJjaHkt LWFkZC1yZWxhdGlvbiBoaWVyYXJjaHkgaXRlbSBwYXJlbnQgYWNjZXB0Zm4pCi0gICAgICAgICAg KGhpZXJhcmNoeS1hZGQtdHJlZSBoaWVyYXJjaHkgcGFyZW50IHBhcmVudGZuIGNoaWxkcmVuZm4p KSkKLSAgICAgIChsZXQgKChjaGlsZHJlbiAoYW5kIGNoaWxkcmVuZm4gKGZ1bmNhbGwgY2hpbGRy ZW5mbiBpdGVtKSkpKQotICAgICAgICAobWFwYyAobGFtYmRhIChjaGlsZCkKLSAgICAgICAgICAg ICAgICAod2hlbiAoZnVuY2FsbCBhY2NlcHRmbiBjaGlsZCkKLSAgICAgICAgICAgICAgICAgICho aWVyYXJjaHktLWFkZC1yZWxhdGlvbiBoaWVyYXJjaHkgY2hpbGQgaXRlbSBhY2NlcHRmbikKLSAg ICAgICAgICAgICAgICAgIChoaWVyYXJjaHktYWRkLXRyZWUgaGllcmFyY2h5IGNoaWxkIHBhcmVu dGZuIGNoaWxkcmVuZm4pKSkKLSAgICAgICAgICAgICAgY2hpbGRyZW4pKSkpKQotCi0oZGVmdW4g aGllcmFyY2h5LWFkZC10cmVlcyAoaGllcmFyY2h5IGl0ZW1zIHBhcmVudGZuICZvcHRpb25hbCBj aGlsZHJlbmZuIGFjY2VwdGZuKQorICAgICAgICAgIChoaWVyYXJjaHktYWRkLXRyZWUgaGllcmFy Y2h5IHBhcmVudAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcGFyZW50Zm4gKGlmIGRl bGF5LWNoaWxkcmVuLXAgbmlsIGNoaWxkcmVuZm4pKSkpCisgICAgICAoaWYgKGFuZCBjaGlsZHJl bmZuIGRlbGF5LWNoaWxkcmVuLXApCisgICAgICAgICAgKG1hcC1wdXQhIChoaWVyYXJjaHktLWRl bGF5aW5nLXBhcmVudHMgaGllcmFyY2h5KSBpdGVtIGNoaWxkcmVuZm4pCisgICAgICAgIChsZXQg KChjaGlsZHJlbiAoYW5kIGNoaWxkcmVuZm4gKGZ1bmNhbGwgY2hpbGRyZW5mbiBpdGVtKSkpKQor ICAgICAgICAgIChtYXAtcHV0ISAoaGllcmFyY2h5LS1kZWxheWluZy1wYXJlbnRzIGhpZXJhcmNo eSkgaXRlbSBuaWwpCisgICAgICAgICAgKG1hcGMgKGxhbWJkYSAoY2hpbGQpCisgICAgICAgICAg ICAgICAgICAod2hlbiAoZnVuY2FsbCBhY2NlcHRmbiBjaGlsZCkKKyAgICAgICAgICAgICAgICAg ICAgKGhpZXJhcmNoeS0tYWRkLXJlbGF0aW9uIGhpZXJhcmNoeSBjaGlsZCBpdGVtIGFjY2VwdGZu KQorICAgICAgICAgICAgICAgICAgICAoaGllcmFyY2h5LWFkZC10cmVlIGhpZXJhcmNoeSBjaGls ZCBwYXJlbnRmbiBjaGlsZHJlbmZuKSkpCisgICAgICAgICAgICAgICAgY2hpbGRyZW4pKSkpKSkK KworKGRlZnVuIGhpZXJhcmNoeS1hZGQtdHJlZXMgKGhpZXJhcmNoeSBpdGVtcyBwYXJlbnRmbgor ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAmb3B0aW9uYWwgY2hpbGRyZW5m biBhY2NlcHRmbiBkZWxheS1jaGlsZHJlbi1wKQogICAiQ2FsbCBgaGllcmFyY2h5LWFkZC10cmVl JyBvbiBISUVSQVJDSFkgYW5kIGVhY2ggZWxlbWVudCBvZiBJVEVNUy4KIAotUEFSRU5URk4sIENI SUxEUkVORk4gYW5kIEFDQ0VQVEZOIGhhdmUgdGhlIHNhbWUgbWVhbmluZyBhcyBpbiBgaGllcmFy Y2h5LWFkZCcuIgorUEFSRU5URk4sIENISUxEUkVORk4sIEFDQ0VQVEZOLCBhbmQgREVMQVktQ0hJ TERSRU4tUCBoYXZlIHRoZSBzYW1lIG1lYW5pbmcgYXMgaW4KK2BoaWVyYXJjaHktYWRkJy4iCiAg IChzZXEtbWFwIChsYW1iZGEgKGl0ZW0pCi0gICAgICAgICAgICAgKGhpZXJhcmNoeS1hZGQtdHJl ZSBoaWVyYXJjaHkgaXRlbSBwYXJlbnRmbiBjaGlsZHJlbmZuIGFjY2VwdGZuKSkKKyAgICAgICAg ICAgICAoaGllcmFyY2h5LWFkZC10cmVlIGhpZXJhcmNoeSBpdGVtIHBhcmVudGZuCisgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICBjaGlsZHJlbmZuIGFjY2VwdGZuIGRlbGF5LWNoaWxk cmVuLXApKQogICAgICAgICAgICBpdGVtcykpCiAKIChkZWZ1biBoaWVyYXJjaHktYWRkLWxpc3Qg KGhpZXJhcmNoeSBsaXN0ICZvcHRpb25hbCB3cmFwIGNoaWxkcmVuZm4pCkBAIC01NDEsNiArNTU1 LDMxIEBAIG5pbC4gIFRoZSBidWZmZXIgaXMgcmV0dXJuZWQuIgogICAgIGJ1ZmZlcikpCiAKIChk ZWNsYXJlLWZ1bmN0aW9uIHdpZGdldC1jb252ZXJ0ICJ3aWQtZWRpdCIpCisoZGVmdW4gaGllcmFy Y2h5LS1jcmVhdGUtZGVsYXllZC10cmVlLXdpZGdldCAoZWxlbSBsYWJlbGZuIGluZGVudCBjaGls ZHJlbmZuKQorICAiUmV0dXJuIGEgbGlzdCBvZiB0cmVlLXdpZGdldHMgZm9yIHRoZSBjaGlsZHJl biBnZW5lcmF0ZWQgYnkgY2FsbGluZworQ0hJTERSRU5GTiBvbiBFTEVNLgorCitFTEVNIGlzIHRo ZSBlbGVtZW50IG9mIHRoZSBoaWVyYXJjaHkgcGFzc2VkIGZyb20KK2BoaWVyYXJjaHktY29udmVy dC10by10cmVlLXdpZGdldCc7IGl0IGFuZCB0aGUgQ0hJTERSRU5GTiBhcmUgdXNlZCB0byBnZW5l cmF0ZQordGhlIGNoaWxkcmVuIG9mIHRoZSBlbGVtZW50IGR5bmFtaWNhbGx5LgorCitMQUJFTEZO IGlzIHRoZSBzYW1lIGZ1bmN0aW9uIHBhc3NlZCB0byBgaGllcmFyY2h5LWNvbnZlcnQtdG8tdHJl ZS13aWRnZXQnLgorCitJTkRFTlQgaXMgdGhlIHNhbWUgZnVuY3Rpb24gcGFzc2VkIHRvIGBoaWVy YXJjaHktY29udmVydC10by10cmVlLXdpZGdldCcuCisKK0NISUxEUkVORk4gaXMgdGhlIGZ1bmN0 aW9uIHVzZWQgdG8gZGlzY292ZXIgdGhlIGNoaWxkcmVuIG9mIEVMRU0uIgorICAobGFtYmRhICh3 aWRnZXQpCisgICAgKG1hcGNhcgorICAgICAobGFtYmRhIChpdGVtKQorICAgICAgICh3aWRnZXQt Y29udmVydAorICAgICAgICAndHJlZS13aWRnZXQKKyAgICAgICAgOnRhZyAoaGllcmFyY2h5LWxh YmVsZm4tdG8tc3RyaW5nIGxhYmVsZm4gaXRlbSBpbmRlbnQpCisgICAgICAgIDpleHBhbmRlciAo aGllcmFyY2h5LS1jcmVhdGUtZGVsYXllZC10cmVlLXdpZGdldAorICAgICAgICAgICAgICAgICAg IGl0ZW0KKyAgICAgICAgICAgICAgICAgICBsYWJlbGZuCisgICAgICAgICAgICAgICAgICAgKDEr IGluZGVudCkKKyAgICAgICAgICAgICAgICAgICBjaGlsZHJlbmZuKSkpCisgICAgIChmdW5jYWxs IGNoaWxkcmVuZm4gZWxlbSkpKSkKIChkZWZ1biBoaWVyYXJjaHktY29udmVydC10by10cmVlLXdp ZGdldCAoaGllcmFyY2h5IGxhYmVsZm4pCiAgICJSZXR1cm4gYSB0cmVlLXdpZGdldCBmb3IgSElF UkFSQ0hZLgogCkBAIC01NTAsMTAgKzU4OSwyMSBAQCBub2RlIGxhYmVsLiIKICAgKHJlcXVpcmUg J3dpZC1lZGl0KQogICAocmVxdWlyZSAndHJlZS13aWRnZXQpCiAgIChoaWVyYXJjaHktbWFwLXRy ZWUgKGxhbWJkYSAoaXRlbSBpbmRlbnQgY2hpbGRyZW4pCi0gICAgICAgICAgICAgICAgICAgICAg ICAod2lkZ2V0LWNvbnZlcnQKLSAgICAgICAgICAgICAgICAgICAgICAgICAndHJlZS13aWRnZXQK LSAgICAgICAgICAgICAgICAgICAgICAgICA6dGFnIChoaWVyYXJjaHktbGFiZWxmbi10by1zdHJp bmcgbGFiZWxmbiBpdGVtIGluZGVudCkKLSAgICAgICAgICAgICAgICAgICAgICAgICA6YXJncyBj aGlsZHJlbikpCisgICAgICAgICAgICAgICAgICAgICAgICAobGV0ICgoY2hpbGRyZW5mbiAobWFw LWVsdAorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIChoaWVyYXJj aHktLWRlbGF5aW5nLXBhcmVudHMgaGllcmFyY2h5KQorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIGl0ZW0pKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgKGFw cGx5CisgICAgICAgICAgICAgICAgICAgICAgICAgICAjJ3dpZGdldC1jb252ZXJ0CisgICAgICAg ICAgICAgICAgICAgICAgICAgICAobGlzdCAndHJlZS13aWRnZXQKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIDp0YWcgKGhpZXJhcmNoeS1sYWJlbGZuLXRvLXN0cmluZyBsYWJlbGZu IGl0ZW0gaW5kZW50KQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIGNoaWxk cmVuZm4gOmV4cGFuZGVyIDphcmdzKQorICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg KGlmIGNoaWxkcmVuZm4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaGll cmFyY2h5LS1jcmVhdGUtZGVsYXllZC10cmVlLXdpZGdldAorICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICBpdGVtCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIGxhYmVsZm4KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgKDErIGlu ZGVudCkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW5mbikK KyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgY2hpbGRyZW4pKSkpKQogICAgICAg ICAgICAgICAgICAgICAgIGhpZXJhcmNoeSkpCiAKIChkZWZ1biBoaWVyYXJjaHktdHJlZS1kaXNw bGF5IChoaWVyYXJjaHkgbGFiZWxmbiAmb3B0aW9uYWwgYnVmZmVyKQpkaWZmIC0tZ2l0IGEvdGVz dC9saXNwL2VtYWNzLWxpc3AvaGllcmFyY2h5LXRlc3RzLmVsIGIvdGVzdC9saXNwL2VtYWNzLWxp c3AvaGllcmFyY2h5LXRlc3RzLmVsCmluZGV4IDQxZDNmMmYzY2MuLjhiYTg2OTY2ZWEgMTAwNjQ0 Ci0tLSBhL3Rlc3QvbGlzcC9lbWFjcy1saXNwL2hpZXJhcmNoeS10ZXN0cy5lbAorKysgYi90ZXN0 L2xpc3AvZW1hY3MtbGlzcC9oaWVyYXJjaHktdGVzdHMuZWwKQEAgLTU1Miw1ICs1NTIsMTQ2IEBA CiAgICAgKGhpZXJhcmNoeS1zb3J0IG9yZ2FuaXNtcykKICAgICAoc2hvdWxkIChlcXVhbCAoaGll cmFyY2h5LXJvb3RzIG9yZ2FuaXNtcykgJyhhbmltYWwgcGxhbnQpKSkpKQogCisoZGVmdW4gaGll cmFyY2h5LWV4YW1wbGVzLWRlbGF5ZWQtLWZpbmQtbnVtYmVyIChudW0pCisgICJGaW5kIGEgbnVt YmVyLCBOVU0sIGJ5IGFkZGluZyAxcyB0b2dldGhlciB1bnRpbCB5b3UgcmVhY2ggaXQuCitUaGlz IGlzIGVudGlyZSBjb250cml2ZWQgYW5kIG1vc3RseSBtZWFudCB0byBiZSBwdXJwb3NlZnVsbHkg aW5lZmZpY2llbnQgdG8KK25vdCBiZSBwb3NzaWJsZSBvbiBhIGxhcmdlIHNjYWxlLgorUnVubmlu ZyB0aGUgbnVtYmVyIDIwMCBjYXVzZXMgdGhpcyBmdW5jdGlvbiB0byBjcmFzaDsgcnVubmluZyB0 aGlzIGZ1bmN0aW9uIGluCitgaGllcmFyY2h5LWFkZC10cmVlJyB3aXRoIGEgcm9vdCBvZiA4MCBh bmQgbm8gZGVsYXllZCBjaGlsZHJlbiBjYXVzZXMgdGhhdCB0bworIGNyYXNoLiIKKworICAoZnVu Y2FsbCAobGFtYmRhIChmdW5jdCkgKGZ1bmNhbGwgZnVuY3QgMSBmdW5jdCkpCisgICAgICAgICAg IChsYW1iZGEgKG4gZnVuY3QpCisgICAgICAgICAgICAgKGlmICg8IG4gbnVtKQorICAgICAgICAg ICAgICAgICAoKyAxIChmdW5jYWxsIGZ1bmN0ICgrIDEgbikgZnVuY3QpKQorICAgICAgICAgICAg ICAgMSkpKSkKKworKGRlZnVuIGhpZXJhcmNoeS1leGFtcGxlcy1kZWxheWVkLS1jaGlsZHJlbmZu IChoaWVyLWVsZW0pCisgICJSZXR1cm4gdGhlIGNoaWxkcmVuIG9mIEhJRVItRUxFTS4KK0Jhc2lh bGx5LCBmZWVkIHRoZSBudW1iZXIsIG1pbnVzIDEsIHRvIGBoaWVyYXJjaHktZXhhbXBsZXMtZGVs YXllZC0tZmluZC1udW1iZXInCithbmQgdGhlbiBjcmVhdGUgYSBsaXN0IG9mIHRoZSBudW1iZXIg cGx1cyAwLjDigJMwLjkuIgorCisgICh3aGVuICg+IGhpZXItZWxlbSAxKQorICAgIChsZXQgKChu ZXh0IChoaWVyYXJjaHktZXhhbXBsZXMtZGVsYXllZC0tZmluZC1udW1iZXIgKDEtIGhpZXItZWxl bSkpKSkKKyAgICAgIChtYXBjYXIgKGxhbWJkYSAoZGVjKSAoKyBuZXh0IGRlYykpICcoLjAgLjEg LjIgLjMgLjQgLjUgLjYgLjcgLjggLjkpKSkpKQorCisoZXJ0LWRlZnRlc3QgaGllcmFyY2h5LWRl bGF5ZWQtYWRkLW9uZS1yb290ICgpCisgIChsZXQgKChwYXJlbnRmbiAobGFtYmRhIChfKSBuaWwp KQorICAgICAgICAoaGllcmFyY2h5IChoaWVyYXJjaHktbmV3KSkpCisgICAgKGhpZXJhcmNoeS1h ZGQtdHJlZSBoaWVyYXJjaHkgMTkwIHBhcmVudGZuCisgICAgICAgICAgICAgICAgICAgICAgICAj J2hpZXJhcmNoeS1leGFtcGxlcy1kZWxheWVkLS1jaGlsZHJlbmZuIG5pbCB0KQorICAgIChzaG91 bGQgKGVxdWFsIChoaWVyYXJjaHktcm9vdHMgaGllcmFyY2h5KSAnKDE5MCkpKSkpCisKKyhlcnQt ZGVmdGVzdCBoaWVyYXJjaHktZGVsYXllZC1hZGQtb25lLWl0ZW0td2l0aC1wYXJlbnQgKCkKKyAg KGxldCAoKHBhcmVudGZuIChsYW1iZGEgKGl0ZW0pCisgICAgICAgICAgICAgICAgICAgIChjbC1j YXNlIGl0ZW0KKyAgICAgICAgICAgICAgICAgICAgICAoMTkwIDE5MSkpKSkKKyAgICAgICAgKGhp ZXJhcmNoeSAoaGllcmFyY2h5LW5ldykpKQorICAgIChoaWVyYXJjaHktYWRkLXRyZWUgaGllcmFy Y2h5IDE5MCBwYXJlbnRmbgorICAgICAgICAgICAgICAgICAgICAgICAgIydoaWVyYXJjaHktZXhh bXBsZXMtZGVsYXllZC0tY2hpbGRyZW5mbiBuaWwgdCkKKyAgICAoc2hvdWxkIChlcXVhbCAoaGll cmFyY2h5LXJvb3RzIGhpZXJhcmNoeSkgJygxOTEpKSkKKyAgICAoc2hvdWxkIChlcXVhbCAoaGll cmFyY2h5LWNoaWxkcmVuIGhpZXJhcmNoeSAxOTEpICcoMTkwKSkpCisgICAgKHNob3VsZCAoZXF1 YWwgKGhpZXJhcmNoeS1jaGlsZHJlbiBoaWVyYXJjaHkgMTkwKSAnKCkpKSkpCisKKyhlcnQtZGVm dGVzdCBoaWVyYXJjaHktZGVsYXllZC1hZGQtb25lLWl0ZW0td2l0aC1wYXJlbnQtYW5kLWdyYW5k LXBhcmVudCAoKQorICAobGV0ICgocGFyZW50Zm4gKGxhbWJkYSAoaXRlbSkKKyAgICAgICAgICAg ICAgICAgICAgKGNsLWNhc2UgaXRlbQorICAgICAgICAgICAgICAgICAgICAgICgxOTAgMTkxKQor ICAgICAgICAgICAgICAgICAgICAgICgxOTEgMTkyKSkpKQorICAgICAgICAoaGllcmFyY2h5ICho aWVyYXJjaHktbmV3KSkpCisgICAgKGhpZXJhcmNoeS1hZGQtdHJlZSBoaWVyYXJjaHkgMTkwIHBh cmVudGZuCisgICAgICAgICAgICAgICAgICAgICAgICAjJ2hpZXJhcmNoeS1leGFtcGxlcy1kZWxh eWVkLS1jaGlsZHJlbmZuIG5pbCB0KQorICAgIChzaG91bGQgKGVxdWFsIChoaWVyYXJjaHktcm9v dHMgaGllcmFyY2h5KSAnKDE5MikpKQorICAgIChzaG91bGQgKGVxdWFsIChoaWVyYXJjaHktY2hp bGRyZW4gaGllcmFyY2h5IDE5MikgJygxOTEpKSkKKyAgICAoc2hvdWxkIChlcXVhbCAoaGllcmFy Y2h5LWNoaWxkcmVuIGhpZXJhcmNoeSAxOTEpICcoMTkwKSkpCisgICAgKHNob3VsZCAoZXF1YWwg KGhpZXJhcmNoeS1jaGlsZHJlbiBoaWVyYXJjaHkgMTkwKSAnKCkpKSkpCisKKyhlcnQtZGVmdGVz dCBoaWVyYXJjaHktZGVsYXllZC1hZGQtc2FtZS1yb290LXR3aWNlICgpCisgIChsZXQgKChwYXJl bnRmbiAobGFtYmRhIChfKSBuaWwpKQorICAgICAgICAoaGllcmFyY2h5IChoaWVyYXJjaHktbmV3 KSkpCisgICAgKGhpZXJhcmNoeS1hZGQtdHJlZSBoaWVyYXJjaHkgMTkwIHBhcmVudGZuCisgICAg ICAgICAgICAgICAgICAgICAgICAjJ2hpZXJhcmNoeS1leGFtcGxlcy1kZWxheWVkLS1jaGlsZHJl bmZuIG5pbCB0KQorICAgIChoaWVyYXJjaHktYWRkLXRyZWUgaGllcmFyY2h5IDE5MCBwYXJlbnRm bgorICAgICAgICAgICAgICAgICAgICAgICAgIydoaWVyYXJjaHktZXhhbXBsZXMtZGVsYXllZC0t Y2hpbGRyZW5mbiBuaWwgdCkKKyAgICAoc2hvdWxkIChlcXVhbCAoaGllcmFyY2h5LXJvb3RzIGhp ZXJhcmNoeSkgJygxOTApKSkpKQorCisoZXJ0LWRlZnRlc3QgaGllcmFyY2h5LWRlbGF5ZWQtYWRk LXNhbWUtY2hpbGQtdHdpY2UgKCkKKyAgKGxldCAoKHBhcmVudGZuIChsYW1iZGEgKGl0ZW0pCisg ICAgICAgICAgICAgICAgICAgIChjbC1jYXNlIGl0ZW0KKyAgICAgICAgICAgICAgICAgICAgICAo MTkwIDE5MSkpKSkKKyAgICAgICAgKGhpZXJhcmNoeSAoaGllcmFyY2h5LW5ldykpKQorICAgICho aWVyYXJjaHktYWRkLXRyZWUgaGllcmFyY2h5IDE5MCBwYXJlbnRmbgorICAgICAgICAgICAgICAg ICAgICAgICAgIydoaWVyYXJjaHktZXhhbXBsZXMtZGVsYXllZC0tY2hpbGRyZW5mbiBuaWwgdCkK KyAgICAoaGllcmFyY2h5LWFkZC10cmVlIGhpZXJhcmNoeSAxOTAgcGFyZW50Zm4KKyAgICAgICAg ICAgICAgICAgICAgICAgICMnaGllcmFyY2h5LWV4YW1wbGVzLWRlbGF5ZWQtLWNoaWxkcmVuZm4g bmlsIHQpCisgICAgKHNob3VsZCAoZXF1YWwgKGhpZXJhcmNoeS1yb290cyBoaWVyYXJjaHkpICco MTkxKSkpCisgICAgKHNob3VsZCAoZXF1YWwgKGhpZXJhcmNoeS1jaGlsZHJlbiBoaWVyYXJjaHkg MTkxKSAnKDE5MCkpKQorICAgIChzaG91bGQgKGVxdWFsIChoaWVyYXJjaHktY2hpbGRyZW4gaGll cmFyY2h5IDE5MCkgJygpKSkpKQorCisoZXJ0LWRlZnRlc3QgaGllcmFyY2h5LWRlbGF5ZWQtYWRk LWl0ZW0tYW5kLWl0cy1wYXJlbnQgKCkKKyAgKGxldCAoKHBhcmVudGZuIChsYW1iZGEgKGl0ZW0p CisgICAgICAgICAgICAgICAgICAgIChjbC1jYXNlIGl0ZW0KKyAgICAgICAgICAgICAgICAgICAg ICAoMTkwIDE5MSkpKSkKKyAgICAgICAgKGhpZXJhcmNoeSAoaGllcmFyY2h5LW5ldykpKQorICAg IChoaWVyYXJjaHktYWRkLXRyZWUgaGllcmFyY2h5IDE5MCBwYXJlbnRmbgorICAgICAgICAgICAg ICAgICAgICAgICAgIydoaWVyYXJjaHktZXhhbXBsZXMtZGVsYXllZC0tY2hpbGRyZW5mbiBuaWwg dCkKKyAgICAoaGllcmFyY2h5LWFkZC10cmVlIGhpZXJhcmNoeSAxOTEgcGFyZW50Zm4KKyAgICAg ICAgICAgICAgICAgICAgICAgICMnaGllcmFyY2h5LWV4YW1wbGVzLWRlbGF5ZWQtLWNoaWxkcmVu Zm4gbmlsIHQpCisgICAgKHNob3VsZCAoZXF1YWwgKGhpZXJhcmNoeS1yb290cyBoaWVyYXJjaHkp ICcoMTkxKSkpCisgICAgKHNob3VsZCAoZXF1YWwgKGhpZXJhcmNoeS1jaGlsZHJlbiBoaWVyYXJj aHkgMTkxKSAnKDE5MCkpKQorICAgIChzaG91bGQgKGVxdWFsIChoaWVyYXJjaHktY2hpbGRyZW4g aGllcmFyY2h5IDE5MCkgJygpKSkpKQorCisoZXJ0LWRlZnRlc3QgaGllcmFyY2h5LWRlbGF5ZWQt YWRkLWl0ZW0tYW5kLWl0cy1jaGlsZCAoKQorICAobGV0ICgocGFyZW50Zm4gKGxhbWJkYSAoaXRl bSkKKyAgICAgICAgICAgICAgICAgICAgKGNsLWNhc2UgaXRlbQorICAgICAgICAgICAgICAgICAg ICAgICgxOTAgMTkxKSkpKQorICAgICAgICAoaGllcmFyY2h5IChoaWVyYXJjaHktbmV3KSkpCisg ICAgKGhpZXJhcmNoeS1hZGQtdHJlZSBoaWVyYXJjaHkgMTkxIHBhcmVudGZuCisgICAgICAgICAg ICAgICAgICAgICAgICAjJ2hpZXJhcmNoeS1leGFtcGxlcy1kZWxheWVkLS1jaGlsZHJlbmZuIG5p bCB0KQorICAgIChoaWVyYXJjaHktYWRkLXRyZWUgaGllcmFyY2h5IDE5MCBwYXJlbnRmbgorICAg ICAgICAgICAgICAgICAgICAgICAgIydoaWVyYXJjaHktZXhhbXBsZXMtZGVsYXllZC0tY2hpbGRy ZW5mbiBuaWwgdCkKKyAgICAoc2hvdWxkIChlcXVhbCAoaGllcmFyY2h5LXJvb3RzIGhpZXJhcmNo eSkgJygxOTEpKSkKKyAgICAoc2hvdWxkIChlcXVhbCAoaGllcmFyY2h5LWNoaWxkcmVuIGhpZXJh cmNoeSAxOTEpICcoMTkwKSkpCisgICAgKHNob3VsZCAoZXF1YWwgKGhpZXJhcmNoeS1jaGlsZHJl biBoaWVyYXJjaHkgMTkwKSAnKCkpKSkpCisKKyhlcnQtZGVmdGVzdCBoaWVyYXJjaHktZGVsYXll ZC1hZGQtdHdvLWl0ZW1zLXNoYXJpbmctcGFyZW50ICgpCisgIChsZXQgKChwYXJlbnRmbiAobGFt YmRhIChpdGVtKQorICAgICAgICAgICAgICAgICAgICAoY2wtY2FzZSBpdGVtCisgICAgICAgICAg ICAgICAgICAgICAgKDE5MCAxOTEpCisgICAgICAgICAgICAgICAgICAgICAgKDE5MC41IDE5MSkp KSkKKyAgICAgICAgKGhpZXJhcmNoeSAoaGllcmFyY2h5LW5ldykpKQorICAgIChoaWVyYXJjaHkt YWRkLXRyZWUgaGllcmFyY2h5IDE5MCBwYXJlbnRmbgorICAgICAgICAgICAgICAgICAgICAgICAg IydoaWVyYXJjaHktZXhhbXBsZXMtZGVsYXllZC0tY2hpbGRyZW5mbiBuaWwgdCkKKyAgICAoaGll cmFyY2h5LWFkZC10cmVlIGhpZXJhcmNoeSAxOTAuNSBwYXJlbnRmbgorICAgICAgICAgICAgICAg ICAgICAgICAgIydoaWVyYXJjaHktZXhhbXBsZXMtZGVsYXllZC0tY2hpbGRyZW5mbiBuaWwgdCkK KyAgICAoc2hvdWxkIChlcXVhbCAoaGllcmFyY2h5LXJvb3RzIGhpZXJhcmNoeSkgJygxOTEpKSkK KyAgICAoc2hvdWxkIChlcXVhbCAoaGllcmFyY2h5LWNoaWxkcmVuIGhpZXJhcmNoeSAxOTEpICco MTkwIDE5MC41KSkpKSkKKworKGVydC1kZWZ0ZXN0IGhpZXJhcmNoeS1kZWxheWVkLWFkZC10d28t aGllcmFyY2hpZXMgKCkKKyAgKGxldCAoKHBhcmVudGZuIChsYW1iZGEgKGl0ZW0pCisgICAgICAg ICAgICAgICAgICAgIChjbC1jYXNlIGl0ZW0KKyAgICAgICAgICAgICAgICAgICAgICAoMTkwIDE5 MSkKKyAgICAgICAgICAgICAgICAgICAgICAoY2lyY2xlICdzaGFwZSkpKSkKKyAgICAgICAgKGhp ZXJhcmNoeSAoaGllcmFyY2h5LW5ldykpKQorICAgIChoaWVyYXJjaHktYWRkLXRyZWUgaGllcmFy Y2h5IDE5MCBwYXJlbnRmbgorICAgICAgICAgICAgICAgICAgICAgICAgIydoaWVyYXJjaHktZXhh bXBsZXMtZGVsYXllZC0tY2hpbGRyZW5mbiBuaWwgdCkKKyAgICAoaGllcmFyY2h5LWFkZC10cmVl IGhpZXJhcmNoeSAnY2lyY2xlIHBhcmVudGZuKQorICAgIChzaG91bGQgKGVxdWFsIChoaWVyYXJj aHktcm9vdHMgaGllcmFyY2h5KSAnKDE5MSBzaGFwZSkpKQorICAgIChzaG91bGQgKGVxdWFsICho aWVyYXJjaHktY2hpbGRyZW4gaGllcmFyY2h5IDE5MSkgJygxOTApKSkKKyAgICAoc2hvdWxkIChl cXVhbCAoaGllcmFyY2h5LWNoaWxkcmVuIGhpZXJhcmNoeSAnc2hhcGUpICcoY2lyY2xlKSkpKSkK KworKGVydC1kZWZ0ZXN0IGhpZXJhcmNoeS1kZWxheWVkLWFkZC10cmVlcyAoKQorICAobGV0ICgo cGFyZW50Zm4gKGxhbWJkYSAoaXRlbSkKKyAgICAgICAgICAgICAgICAgICAgKGNsLWNhc2UgaXRl bQorICAgICAgICAgICAgICAgICAgICAgICgxOTAgJzE5MSkKKyAgICAgICAgICAgICAgICAgICAg ICAoMTkwLjUgJzE5MSkKKyAgICAgICAgICAgICAgICAgICAgICAoMTkxICcxOTIpKSkpCisgICAg ICAgIChoaWVyYXJjaHkgKGhpZXJhcmNoeS1uZXcpKSkKKyAgICAoaGllcmFyY2h5LWFkZC10cmVl cyBoaWVyYXJjaHkgJygxOTEgMTkwLjUpIHBhcmVudGZuCisgICAgICAgICAgICAgICAgICAgICAg ICAgIydoaWVyYXJjaHktZXhhbXBsZXMtZGVsYXllZC0tY2hpbGRyZW5mbiBuaWwgdCkKKyAgICAo c2hvdWxkIChlcXVhbCAoaGllcmFyY2h5LXJvb3RzIGhpZXJhcmNoeSkgJygxOTIpKSkKKyAgICAo c2hvdWxkIChlcXVhbCAoaGllcmFyY2h5LWNoaWxkcmVuIGhpZXJhcmNoeSAnMTkyKSAnKDE5MSkp KQorICAgIChzaG91bGQgKGVxdWFsIChoaWVyYXJjaHktY2hpbGRyZW4gaGllcmFyY2h5ICcxOTEp ICcoMTkwIDE5MC41KSkpKSkKKwogKHByb3ZpZGUgJ2hpZXJhcmNoeS10ZXN0cykKIDs7OyBoaWVy YXJjaHktdGVzdHMuZWwgZW5kcyBoZXJlCi0tIAoyLjM2LjEKCg== ------=_Part_2581913_1860307943.1655024858024--