From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms8.migadu.com with LMTPS id 4IDSNSjJu2VCdQEA62LTzQ:P1 (envelope-from ) for ; Thu, 01 Feb 2024 17:39:05 +0100 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1.migadu.com with LMTPS id 4IDSNSjJu2VCdQEA62LTzQ (envelope-from ) for ; Thu, 01 Feb 2024 17:39:04 +0100 X-Envelope-To: larch@yhetil.org Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=ricklupton.name header.s=fm2 header.b="d vwyU3L"; dkim=pass header.d=messagingengine.com header.s=fm3 header.b=slph5wVp; dmarc=pass (policy=none) header.from=ricklupton.name; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Seal: i=1; s=key1; d=yhetil.org; t=1706805544; a=rsa-sha256; cv=none; b=I5/rP2J2U2KGsHSCoUaLiYlnrJA3EfjnIANxoJEPDZdQ3PVEXnsc7zsx9VOF5oY2eohCvN yzwd+1/l5SW0WmsTgdzSC/Hw55dpO5qv/OqCtmTbg1NZoPQJzJNLWnuwUgAp8qlBP/nfGE aRtweZgKxljx5USlUeEkzpQLTDnqJgLNz1BiJOukHbCALcwhQCALR0xSqHODcu2SiPl6ir Pt7ZE6kPHaQbazcHP6KsAhLmqsuQ4walVrC5CqQICcM2tuCADKm5K4KXtW13my5513OSGK lPec2IbUia6pgQPYO9M2+ytiTOUl7fo8a4jgI7Ighgp+1BJodbV+cbgj5ru4IA== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=pass header.d=ricklupton.name header.s=fm2 header.b="d vwyU3L"; dkim=pass header.d=messagingengine.com header.s=fm3 header.b=slph5wVp; dmarc=pass (policy=none) header.from=ricklupton.name; spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org" ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1706805544; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=43ZraxFqMTHKreB7wjepVvWQlWg+5Ey7vPdGdV8/EYk=; b=PxEhDsR3i1VDMzI3yfxlow0BW1PUnwPuWY2T8SL9psVXX5OG8Q2Z+y4Htg7OYs7mNRNq8Y qgJyUNfRWj4LGxQHqlhN71Dg+UaBjoOGfgW9uAVBOK86lmW+4K9in67tuRu8Axx5vBzU5E 41GIyFD0jKbdCFL4Yo3QESyA8JXKWqY4K3WYNukb5/mfdCfpuNYbekjECfaUQtY/icIoHR mSohdTH8A7Wd+2mPkFZh8UQYnZZ/YkllnFYvJ4YULw9EDBB9/+9Fz311h9ZtaLYco2JaXp RAF7EBUbX7y0AsxTsys4DFeA11GDZc/6BwSGF8zi08igTEmBQ+IwDqWSC5dDug== Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by aspmx1.migadu.com (Postfix) with ESMTPS id 8AB7EF7B5 for ; Thu, 1 Feb 2024 17:39:03 +0100 (CET) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rVa4u-0000vE-Db; Thu, 01 Feb 2024 11:38:16 -0500 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rVa4p-0000uL-MR for emacs-orgmode@gnu.org; Thu, 01 Feb 2024 11:38:11 -0500 Received: from out1-smtp.messagingengine.com ([66.111.4.25]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1rVa4m-00009I-Tk for emacs-orgmode@gnu.org; Thu, 01 Feb 2024 11:38:11 -0500 Received: from compute2.internal (compute2.nyi.internal [10.202.2.46]) by mailout.nyi.internal (Postfix) with ESMTP id 462455C0197; Thu, 1 Feb 2024 11:38:07 -0500 (EST) Received: from imap50 ([10.202.2.100]) by compute2.internal (MEProxy); Thu, 01 Feb 2024 11:38:07 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=ricklupton.name; h=cc:cc:content-type:content-type:date:date:from:from :in-reply-to:in-reply-to:message-id:mime-version:references :reply-to:subject:subject:to:to; s=fm2; t=1706805487; x= 1706891887; bh=43ZraxFqMTHKreB7wjepVvWQlWg+5Ey7vPdGdV8/EYk=; b=d vwyU3LY7R8VaTrmY23vv+cG/gpORrlpxiX4xLhKDTmfZi2LTGsM4THCGKpZsmWPu Bgxe8qz7VQAnmNvYAYjyc5f1cuXWhAoxRdmblLvy8/2fbBR9gSkZKSwTtWCoIpTl PaVHL91108VXhlY6sf+F0vhdmcLon/w9xtr50ij9OHOADElZ07x5B8hfF4eKOzrf 0/UO2/gK7+jT1iImx40rymCv0bqLNkdtWfbVXonD2oQYbzZh/B9ER5lkvWkB0qTN pr/Gdbii15CZ+hVz7qwE7udOJLbvNt+alzULSB5PAUedhXDHglV5IDdS9z+5s2N5 ZSRSm4LHPSjzAoRXVRWyA== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:cc:content-type:content-type:date:date :feedback-id:feedback-id:from:from:in-reply-to:in-reply-to :message-id:mime-version:references:reply-to:subject:subject:to :to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm3; t=1706805487; x=1706891887; bh=43ZraxFqMTHKreB7wjepVvWQlWg+ 5Ey7vPdGdV8/EYk=; b=slph5wVpWvWBLZ7nPfHQwRA9uWucx9fB+yYvwghTrC6K pnT5PEzVA2o/sH/zkQ3fv68QjgJzAIc1VV3R1wIjhk4r+irSRYrhcPeAZkXCfPJh NinEDfzwPbEItWQj2c+pSEj1aMSqIZspIqoaz/amC7DReZ8/MyvPZrR5TKaEm9nq DD72HzZVwCwqhVkw+KcgSqzLsBNLDA5XwgRY0gHYo1YQp5If/v8t7MAm3IlapwhI qm6a2g6j/vG08fKzIsYepDTLylodV1+NwFosgevqzRIj7NkvBJ3m6Qji7r5mC+ux aR6wocsuOFYiU3vn9fdyCPHPAsk/C1xrNdQpt7XHJw== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedvkedrfeduuddgkeejucetufdoteggodetrfdotf fvucfrrhhofhhilhgvmecuhfgrshhtofgrihhlpdfqfgfvpdfurfetoffkrfgpnffqhgen uceurghilhhouhhtmecufedttdenucenucfjughrpefofgggkfgjfhffhffvvefutgesmh dtreerreertdenucfhrhhomhepfdftihgtkhcunfhuphhtohhnfdcuoehmrghilhesrhhi tghklhhuphhtohhnrdhnrghmvgeqnecuggftrfgrthhtvghrnheptddukeeuffevgfeuie ektdffueejvdfhvedtteegvdejteejfedtieehjefgueeunecuvehluhhsthgvrhfuihii vgeptdenucfrrghrrghmpehmrghilhhfrhhomhepmhgrihhlsehrihgtkhhluhhpthhonh drnhgrmhgv X-ME-Proxy: Feedback-ID: i0143436f:Fastmail Received: by mailuser.nyi.internal (Postfix, from userid 501) id 05DAE1700093; Thu, 1 Feb 2024 11:38:06 -0500 (EST) X-Mailer: MessagingEngine.com Webmail Interface User-Agent: Cyrus-JMAP/3.11.0-alpha0-144-ge5821d614e-fm-20240125.002-ge5821d61 MIME-Version: 1.0 Message-Id: In-Reply-To: <871q9widrj.fsf@localhost> References: <118435e8-0b20-46fd-af6a-88de8e19fac6@app.fastmail.com> <87edkwsafe.fsf@localhost> <87cywh2ad6.fsf@localhost> <87jzpmqiy0.fsf@localhost> <2cdfefbf-e9e3-4aeb-a410-1ff3a9d6168e@app.fastmail.com> <87zfybzkul.fsf@localhost> <3c5737c8-f489-4144-a27f-c0e0527c79c0@app.fastmail.com> <87bkaqcjpz.fsf@localhost> <87msu7r902.fsf@localhost> <1b50d1a4-8573-4dcc-9427-8970f67e632a@app.fastmail.com> <87r0i0mgzi.fsf@localhost> <70c0e6fb-3e9f-4b84-8d00-1b1e62ec19d0@app.fastmail.com> <871q9widrj.fsf@localhost> Date: Thu, 01 Feb 2024 16:37:35 +0000 From: "Rick Lupton" To: "Ihor Radchenko" Cc: "Y. E." Subject: Re: [PATCH v2] org-id: allow using parent's existing id in links to headlines Content-Type: multipart/mixed; boundary=107db7fa0e604902bbb354e0b6b7285c Received-SPF: pass client-ip=66.111.4.25; envelope-from=mail@ricklupton.name; helo=out1-smtp.messagingengine.com X-Spam_score_int: -27 X-Spam_score: -2.8 X-Spam_bar: -- X-Spam_report: (-2.8 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_LOW=-0.7, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, SPF_HELO_PASS=-0.001, SPF_PASS=-0.001, T_SCC_BODY_TEXT_LINE=-0.01 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Scanner: mx10.migadu.com X-Spam-Score: -8.14 X-Migadu-Queue-Id: 8AB7EF7B5 X-Migadu-Spam-Score: -8.14 X-TUID: 44e1vIgmbWxd --107db7fa0e604902bbb354e0b6b7285c Content-Type: text/plain On Thu, 1 Feb 2024, at 12:13 PM, Ihor Radchenko wrote: > The patch does not apply onto the latest main. May you please update it? I have rebased onto the latest main. It changes quickly! (there were no conflicts during the rebase, which I'd have thought would mean the patches shouldn't be a problem to apply? It the problem was something else, please let me know) --107db7fa0e604902bbb354e0b6b7285c Content-Disposition: attachment; filename*0="0001-lisp-org.el-org-insert-heading-allow-specifying-head.pat"; filename*1="ch" Content-Type: application/octet-stream; name="=?UTF-8?Q?0001-lisp-org.el-org-insert-heading-allow-specifying-head.patc?= =?UTF-8?Q?h?=" Content-Transfer-Encoding: BASE64 RnJvbSAwMzY2NTljNjMzNDFmMWQ4OTU4MjVlMDJjOTA4ODNlYjhmMmY4NTZlIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSaWNrIEx1cHRvbiA8bWFpbEByaWNrbHVwdG9uLm5h bWU+CkRhdGU6IFdlZCwgMyBKYW4gMjAyNCAyMjozNzozOCArMDAwMApTdWJqZWN0OiBbUEFU Q0ggMS8yXSBsaXNwL29yZy5lbCAob3JnLWluc2VydC1oZWFkaW5nKTogYWxsb3cgc3BlY2lm eWluZwogaGVhZGluZyBsZXZlbAoKKiBsaXNwL29yZy5lbCAob3JnLWluc2VydC1oZWFkaW5n KTogQ2hhbmdlIG9wdGlvbmFsIGFyZ3VtZW50IFRPUCB0bwpMRVZFTCwgYWNjZXB0aW5nIGEg bnVtYmVyIHRvIGZvcmNlIGEgc3BlY2lmaWMgaGVhZGluZyBsZXZlbC4KKiB0ZXN0aW5nL2xp c3AvdGVzdC1vcmcuZWwgKHRlc3Qtb3JnL2luc2VydC1oZWFkaW5nKTogQWRkIHRlc3RzCiog ZXRjL09SRy1ORVdTOiBEb2N1bWVudCBjaGFuZ2VzCi0tLQogZXRjL09SRy1ORVdTICAgICAg ICAgICAgIHwgIDYgKysrKysrCiBsaXNwL29yZy5lbCAgICAgICAgICAgICAgfCAyMSArKysr KysrKysrKysrKy0tLS0tLS0KIHRlc3RpbmcvbGlzcC90ZXN0LW9yZy5lbCB8IDI2ICsrKysr KysrKysrKysrKysrKysrKysrKy0tCiAzIGZpbGVzIGNoYW5nZWQsIDQ0IGluc2VydGlvbnMo KyksIDkgZGVsZXRpb25zKC0pCgpkaWZmIC0tZ2l0IGEvZXRjL09SRy1ORVdTIGIvZXRjL09S Ry1ORVdTCmluZGV4IGFkNWEwNjg0Zi4uYWRkYTU1NTMyIDEwMDY0NAotLS0gYS9ldGMvT1JH LU5FV1MKKysrIGIvZXRjL09SRy1ORVdTCkBAIC05OTEsNiArOTkxLDEyIEBAIGFzIHRoZSBm dW5jdGlvbiBjYW4gYWxzbyBhY3Qgb24gb2JqZWN0cy4KIAogKioqIH5vcmctZXhwb3J0LWdl dC1wYXJlbnQtZWxlbWVudH4gaXMgcmVuYW1lZCB0byB+b3JnLWVsZW1lbnQtcGFyZW50LWVs ZW1lbnR+IGFuZCBtb3ZlZCB0byA9bGlzcC9vcmctZWxlbWVudC5lbD0KIAorKioqIH5vcmct aW5zZXJ0LWhlYWRpbmd+IG9wdGlvbmFsIGFyZ3VtZW50ID1UT1A9IGlzIG5vdyA9TEVWRUw9 CisKK0EgbnVtZXJpYyB2YWx1ZSBmb3JjZXMgYSBoZWFkaW5nIGF0IHRoYXQgbGV2ZWwgdG8g YmUgaW5zZXJ0ZWQuICBGb3IKK2JhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCBub24tbnVtZXJp YyBub24tbmlsIHZhbHVlcyBpbnNlcnQgbGV2ZWwgMQoraGVhZGluZ3MgYXMgYmVmb3JlLgor CiAqKiBNaXNjZWxsYW5lb3VzCiAqKiogPW9yZy1jcnlwdC5lbD0gbm93IGFwcGxpZXMgaW5p dGlhbCB2aXNpYmlsaXR5IHNldHRpbmdzIHRvIGRlY3J5cHRlZCBlbnRyaWVzCiAKZGlmZiAt LWdpdCBhL2xpc3Avb3JnLmVsIGIvbGlzcC9vcmcuZWwKaW5kZXggMmU1M2Q5OGQzLi45NmQ4 ZmFkM2EgMTAwNjQ0Ci0tLSBhL2xpc3Avb3JnLmVsCisrKyBiL2xpc3Avb3JnLmVsCkBAIC02 MzYwLDcgKzYzNjAsNyBAQCBoZWFkbGluZSBpbnN0ZWFkIG9mIGN1cnJlbnQgb25lLiIKICAg ICAoYChoZWFkaW5nIC4gLHZhbHVlKSB2YWx1ZSkKICAgICAoXyBuaWwpKSkKIAotKGRlZnVu IG9yZy1pbnNlcnQtaGVhZGluZyAoJm9wdGlvbmFsIGFyZyBpbnZpc2libGUtb2sgdG9wKQor KGRlZnVuIG9yZy1pbnNlcnQtaGVhZGluZyAoJm9wdGlvbmFsIGFyZyBpbnZpc2libGUtb2sg bGV2ZWwpCiAgICJJbnNlcnQgYSBuZXcgaGVhZGluZyBvciBhbiBpdGVtIHdpdGggdGhlIHNh bWUgZGVwdGggYXQgcG9pbnQuCiAKIElmIHBvaW50IGlzIGF0IHRoZSBiZWdpbm5pbmcgb2Yg YSBoZWFkaW5nLCBpbnNlcnQgYSBuZXcgaGVhZGluZwpAQCAtNjM4OSwxMiArNjM4OSwxOSBA QCBXaGVuIElOVklTSUJMRS1PSyBpcyBzZXQsIHN0b3AgYXQgaW52aXNpYmxlIGhlYWRsaW5l cyB3aGVuIGdvaW5nCiBiYWNrLiAgVGhpcyBpcyBpbXBvcnRhbnQgZm9yIG5vbi1pbnRlcmFj dGl2ZSB1c2VzIG9mIHRoZQogY29tbWFuZC4KIAotV2hlbiBvcHRpb25hbCBhcmd1bWVudCBU T1AgaXMgbm9uLW5pbCwgaW5zZXJ0IGEgbGV2ZWwgMSBoZWFkaW5nLAotdW5jb25kaXRpb25h bGx5LiIKK1doZW4gb3B0aW9uYWwgYXJndW1lbnQgTEVWRUwgaXMgYSBudW1iZXIsIGluc2Vy dCBhIGhlYWRpbmcgYXQKK3RoYXQgbGV2ZWwuICBGb3IgYmFja3dhcmRzIGNvbXBhdGliaWxp dHksIHdoZW4gTEVWRUwgaXMgbm9uLW5pbAorYnV0IG5vdCBhIG51bWJlciwgaW5zZXJ0IGEg bGV2ZWwtMSBoZWFkaW5nLiIKICAgKGludGVyYWN0aXZlICJQIikKICAgKGxldCogKChibGFu az8gKG9yZy0tYmxhbmstYmVmb3JlLWhlYWRpbmctcCAoZXF1YWwgYXJnICcoMTYpKSkpCi0J IChsZXZlbCAob3JnLWN1cnJlbnQtbGV2ZWwpKQotCSAoc3RhcnMgKG1ha2Utc3RyaW5nIChp ZiAoYW5kIGxldmVsIChub3QgdG9wKSkgbGV2ZWwgMSkgPyopKSkKKyAgICAgICAgIChjdXJy ZW50LWxldmVsIChvcmctY3VycmVudC1sZXZlbCkpCisgICAgICAgICAobnVtLXN0YXJzIChv cgorICAgICAgICAgICAgICAgICAgICAgOzsgQmFja3dhcmRzIGNvbXBhdDogaWYgTEVWRUwg bm9uLW5pbCwgbGV2ZWwgaXMgMQorICAgICAgICAgICAgICAgICAgICAgKGFuZCBsZXZlbCAo aWYgKHdob2xlbnVtcCBsZXZlbCkgbGV2ZWwgMSkpCisgICAgICAgICAgICAgICAgICAgICBj dXJyZW50LWxldmVsCisgICAgICAgICAgICAgICAgICAgICA7OyBUaGlzIGAxJyBpcyBmb3Ig d2hlbiBiZWZvcmUgZmlyc3QgaGVhZGxpbmUKKyAgICAgICAgICAgICAgICAgICAgIDEpKQor ICAgICAgICAgKHN0YXJzIChtYWtlLXN0cmluZyBudW0tc3RhcnMgPyopKSkKICAgICAoY29u ZAogICAgICAoKG9yIG9yZy1pbnNlcnQtaGVhZGluZy1yZXNwZWN0LWNvbnRlbnQKIAkgICht ZW1iZXIgYXJnICcoKDQpICgxNikpKQpAQCAtNjQwMyw3ICs2NDEwLDcgQEAgdW5jb25kaXRp b25hbGx5LiIKICAgICAgIDs7IFBvc2l0aW9uIHBvaW50IGF0IHRoZSBsb2NhdGlvbiBvZiBp bnNlcnRpb24uICBNYWtlIHN1cmUgd2UKICAgICAgIDs7IGVuZCB1cCBvbiBhIHZpc2libGUg aGVhZGxpbmUgaWYgSU5WSVNJQkxFLU9LIGlzIG5pbC4KICAgICAgIChvcmctd2l0aC1saW1p dGVkLWxldmVscwotICAgICAgIChpZiAobm90IGxldmVsKSAob3V0bGluZS1uZXh0LWhlYWRp bmcpIDtiZWZvcmUgZmlyc3QgaGVhZGxpbmUKKyAgICAgICAoaWYgKG5vdCBjdXJyZW50LWxl dmVsKSAob3V0bGluZS1uZXh0LWhlYWRpbmcpIDtiZWZvcmUgZmlyc3QgaGVhZGxpbmUKIAkg KG9yZy1iYWNrLXRvLWhlYWRpbmcgaW52aXNpYmxlLW9rKQogCSAod2hlbiAoZXF1YWwgYXJn ICcoMTYpKSAob3JnLXVwLWhlYWRpbmctc2FmZSkpCiAJIChvcmctZW5kLW9mLXN1YnRyZWUg aW52aXNpYmxlLW9rICd0by1oZWFkaW5nKSkpCkBAIC02NDE2LDcgKzY0MjMsNyBAQCB1bmNv bmRpdGlvbmFsbHkuIgogICAgICAgICAgICAgICAgICAgICAgICAgICAob3JnLWJlZm9yZS1m aXJzdC1oZWFkaW5nLXApKSkKICAgICAgICAgKGluc2VydCAiXG4iKQogICAgICAgICAoYmFj a3dhcmQtY2hhcikpCi0gICAgICAod2hlbiAoYW5kIChub3QgbGV2ZWwpIChub3QgKGVvYnAp KSAobm90IChib2JwKSkpCisgICAgICAod2hlbiAoYW5kIChub3QgY3VycmVudC1sZXZlbCkg KG5vdCAoZW9icCkpIChub3QgKGJvYnApKSkKICAgICAgICAgKHdoZW4gKG9yZy1hdC1oZWFk aW5nLXApIChpbnNlcnQgIlxuIikpCiAgICAgICAgIChiYWNrd2FyZC1jaGFyKSkKICAgICAg ICh1bmxlc3MgKGFuZCBibGFuaz8gKG9yZy1wcmV2aW91cy1saW5lLWVtcHR5LXApKQpkaWZm IC0tZ2l0IGEvdGVzdGluZy9saXNwL3Rlc3Qtb3JnLmVsIGIvdGVzdGluZy9saXNwL3Rlc3Qt b3JnLmVsCmluZGV4IDgyMmNiYzY3YS4uZmM1MGRjNzg3IDEwMDY0NAotLS0gYS90ZXN0aW5n L2xpc3AvdGVzdC1vcmcuZWwKKysrIGIvdGVzdGluZy9saXNwL3Rlc3Qtb3JnLmVsCkBAIC0x OTgwLDggKzE5ODAsMzAgQEAgQ0xPQ0s6IFsyMDIyLTA5LTE3IHNhbS4gMTE6MDBdLS1bMjAy Mi0wOS0xNyBzYW0uIDExOjQ2XSA9PiAgMDo0NiIKIAkgICAgKGxldCAoKG9yZy1pbnNlcnQt aGVhZGluZy1yZXNwZWN0LWNvbnRlbnQgbmlsKSkKIAkgICAgICAob3JnLWluc2VydC1oZWFk aW5nICcoMTYpKSkKIAkgICAgKGJ1ZmZlci1zdHJpbmcpKSkpCi0gIDs7IFdoZW4gb3B0aW9u YWwgVE9QLUxFVkVMIGFyZ3VtZW50IGlzIG5vbi1uaWwsIGFsd2F5cyBpbnNlcnQKLSAgOzsg YSBsZXZlbCAxIGhlYWRpbmcuCisgIDs7IFdoZW4gb3B0aW9uYWwgTEVWRUwgYXJndW1lbnQg aXMgYSBudW1iZXIsIGluc2VydCBhIGhlYWRpbmcgYXQKKyAgOzsgdGhhdCBsZXZlbC4KKyAg KHNob3VsZAorICAgKGVxdWFsICIqIEgxXG4qKiBIMlxuKiAiCisJICAob3JnLXRlc3Qtd2l0 aC10ZW1wLXRleHQgIiogSDFcbioqIEgyPHBvaW50PiIKKwkgICAgKG9yZy1pbnNlcnQtaGVh ZGluZyBuaWwgbmlsIDEpCisJICAgIChidWZmZXItc3RyaW5nKSkpKQorICAoc2hvdWxkCisg ICAoZXF1YWwgIiogSDFcbioqIEgyXG4qKiAiCisJICAob3JnLXRlc3Qtd2l0aC10ZW1wLXRl eHQgIiogSDFcbioqIEgyPHBvaW50PiIKKwkgICAgKG9yZy1pbnNlcnQtaGVhZGluZyBuaWwg bmlsIDIpCisJICAgIChidWZmZXItc3RyaW5nKSkpKQorICAoc2hvdWxkCisgICAoZXF1YWwg IiogSDFcbioqIEgyXG4qKiogIgorCSAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICIqIEgx XG4qKiBIMjxwb2ludD4iCisJICAgIChvcmctaW5zZXJ0LWhlYWRpbmcgbmlsIG5pbCAzKQor CSAgICAoYnVmZmVyLXN0cmluZykpKSkKKyAgKHNob3VsZAorICAgKGVxdWFsICIqIEgxXG4t IGl0ZW1cbiogIgorCSAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICIqIEgxXG4tIGl0ZW08 cG9pbnQ+IgorCSAgICAob3JnLWluc2VydC1oZWFkaW5nIG5pbCBuaWwgMSkKKwkgICAgKGJ1 ZmZlci1zdHJpbmcpKSkpCisgIDs7IFdoZW4gb3B0aW9uYWwgTEVWRUwgYXJndW1lbnQgaXMg bm9uLW5pbCwgYWx3YXlzIGluc2VydCBhIGxldmVsIDEKKyAgOzsgaGVhZGluZy4KICAgKHNo b3VsZAogICAgKGVxdWFsICIqIEgxXG4qKiBIMlxuKiAiCiAJICAob3JnLXRlc3Qtd2l0aC10 ZW1wLXRleHQgIiogSDFcbioqIEgyPHBvaW50PiIKLS0gCjIuMzcuMSAoQXBwbGUgR2l0LTEz Ny4xKQoK --107db7fa0e604902bbb354e0b6b7285c Content-Disposition: attachment; filename*0="0002-org-id.el-Extend-links-with-search-strings-inherit-p.pat"; filename*1="ch" Content-Type: application/octet-stream; name="=?UTF-8?Q?0002-org-id.el-Extend-links-with-search-strings-inherit-p.patc?= =?UTF-8?Q?h?=" Content-Transfer-Encoding: BASE64 RnJvbSBlNjMwZGM4MDcxODA4ODkzYjQ0YmI4ZGJlNWRhOGY5NTUxNzExOGEzIE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBSaWNrIEx1cHRvbiA8bWFpbEByaWNrbHVwdG9uLm5h bWU+CkRhdGU6IFN1biwgMTkgTm92IDIwMjMgMTQ6NTI6MDUgKzAwMDAKU3ViamVjdDogW1BB VENIIDIvMl0gb3JnLWlkLmVsOiBFeHRlbmQgbGlua3Mgd2l0aCBzZWFyY2ggc3RyaW5ncywg aW5oZXJpdAogcGFyZW50IElEcwoKKiBsaXNwL29sLmVsIChvcmctc3RvcmUtbGluayk6IFJl ZmFjdG9yIG9yZy1pZCBsaW5rcyB0byB1c2Ugc3RhbmRhcmQKYG9yZy1zdG9yZS1saW5rLWZ1 bmN0aW9ucycuCihvcmctbGluay1zZWFyY2gpOiBDcmVhdGUgbmV3IGhlYWRpbmdzIGF0IGFw cHJvcHJpYXRlIGxldmVsLgoob3JnLWxpbmstcHJlY2lzZS1saW5rLXRhcmdldCk6IE5ldyBm dW5jdGlvbiBleHRyYWN0aW5nIGxvZ2ljIHRvCmlkZW50aWZ5IGEgcHJlY2lzZSBsaW5rIHRh cmdldCwgZS5nLiBhIGhlYWRpbmcsIG5hbWVkIG9iamVjdCwgb3IgdGV4dApzZWFyY2guCihv cmctbGluay10cnktbGluay1zdG9yZS1mdW5jdGlvbnMpOiBFeHRyYWN0IGxvZ2ljIHRvIGNh bGwgZXh0ZXJuYWwKbGluayBzdG9yZSBmdW5jdGlvbnMuIFBhc3MgdGhlbSBhIG5ldyBgaW50 ZXJhY3RpdmU/JyBhcmd1bWVudC4KKiBsaXNwL29sLWJiZGIuZWwgKG9yZy1iYmRiLXN0b3Jl LWxpbmspOgoqIGxpc3Avb2wtYmlidGV4LmVsIChvcmctYmlidGV4LXN0b3JlLWxpbmspOgoq IGxpc3Avb2wtZG9jdmlldy5lbCAob3JnLWRvY3ZpZXctc3RvcmUtbGluayk6CiogbGlzcC9v bC1lc2hlbGwuZWwgKG9yZy1lc2hlbGwtc3RvcmUtbGluayk6CiogbGlzcC9vbC1ld3cuZWwg KG9yZy1ld3ctc3RvcmUtbGluayk6CiogbGlzcC9vbC1nbnVzLmVsIChvcmctZ251cy1zdG9y ZS1saW5rKToKKiBsaXNwL29sLWluZm8uZWwgKG9yZy1pbmZvLXN0b3JlLWxpbmspOgoqIGxp c3Avb2wtaXJjLmVsIChvcmctaXJjLXN0b3JlLWxpbmspOgoqIGxpc3Avb2wtbWFuLmVsIChv cmctbWFuLXN0b3JlLWxpbmspOgoqIGxpc3Avb2wtbWhlLmVsIChvcmctbWhlLXN0b3JlLWxp bmspOgoqIGxpc3Avb2wtcm1haWwuZWwgKG9yZy1ybWFpbC1zdG9yZS1saW5rKTogQWNjZXB0 IG9wdGlvbmFsIGFyZy4KKiBsaXNwL29yZy1pZC5lbCAob3JnLWlkLWxpbmstY29uc2lkZXIt cGFyZW50LWlkKTogTmV3IG9wdGlvbiB0byBhbGxvdwphIHBhcmVudCBoZWFkaW5nIHdpdGgg YW4gaWQgdG8gYmUgY29uc2lkZXJlZCBhcyBhIGxpbmsgdGFyZ2V0Lgoob3JnLWlkLWxpbmst dXNlLWNvbnRleHQpOiBOZXcgb3B0aW9uIHRvIGFkZCBjb250ZXh0IHRvIG9yZy1pZCBsaW5r cy4KKG9yZy1pZC1nZXQpOiBBZGQgb3B0aW9uYWwgYGluaGVyaXQnIGFyZ3VtZW50IHdoaWNo IGNvbnNpZGVycyBwYXJlbnRzJwpJRHMgaWYgdGhlIGN1cnJlbnQgZW50cnkgZG9lcyBub3Qg aGF2ZSBvbmUuCihvcmctaWQtc3RvcmUtbGluayk6IENvbnNpZGVyIElEcyBvZiBwYXJlbnQg aGVhZGluZ3MgYXMgbGluayB0YXJnZXRzCndoZW4gY3VycmVudCBoZWFkaW5nIGhhcyBubyBJ RCBhbmQgYG9yZy1pZC1saW5rLWNvbnNpZGVyLXBhcmVudC1pZCcgaXMKc2V0LiBBZGQgYSBz ZWFyY2ggc3RyaW5nIHRvIHRoZSBsaW5rIHdoZW4gZW5hYmxlZC4KKG9yZy1pZC1zdG9yZS1s aW5rLW1heWJlKTogRnVuY3Rpb24gc2V0IGFzIDpzdG9yZSBvcHRpb24gZm9yIGN1c3RvbSBp ZApsaW5rIHByb3BlcnR5LiBNb3ZlIGxvZ2ljIGZyb20gYG9yZy1zdG9yZS1saW5rJyBoZXJl IHRvIGRldGVybWluZSB3aGVuCmFuIG9yZy1pZCBsaW5rIHNob3VsZCBiZSBzdG9yZWQgdXNp bmcgYG9yZy1pZC1zdG9yZS1saW5rJy4KKG9yZy1pZC1vcGVuKTogUmVjb2duaXNlIHNlYXJj aCBzdHJpbmdzIGFmdGVyICI6OiIgaW4gb3JnLWlkIGxpbmtzLgoqIGxpc3Avb3JnLWxpbnQu ZWw6IGFkZCBjaGVja2VyIGZvciAiOjoiIGluIElEIHByb3BlcnRpZXMuCiogdGVzdGluZy9s aXNwL3Rlc3Qtb2wuZWw6IEFkZCB0ZXN0cyBmb3IKYG9yZy1saW5rLXByZWNpc2UtbGluay10 YXJnZXQnIGFuZCBgb3JnLWlkLXN0b3JlLWxpbmsnIGZ1bmN0aW9ucywKdGVzdGluZyBuZXcg b3B0aW9ucy4KKiBkb2Mvb3JnLW1hbnVhbC5vcmc6IFVwZGF0ZSBkb2N1bWVudGF0aW9uIGFi b3V0IGxpbmtzLgoqIGV0Yy9PUkctTkVXUzogRG9jdW1lbnQgY2hhbmdlcyBhbmQgbmV3IG9w dGlvbnMuCgpUaGVzZSBmZWF0dXJlIGFsbG93cyBmb3IgbW9yZSBwcmVjaXNlIGxpbmtzIHdo ZW4gdXNpbmcgb3JnLWlkIHRvIGxpbmsgdG8Kb3JnIGhlYWRpbmdzLCB3aXRob3V0IHJlcXVp cmluZyBldmVyeSBzaW5nbGUgaGVhZGxpbmUgdG8gaGF2ZSBhbiBpZC4KCkxpbms6IGh0dHBz Oi8vbGlzdC5vcmdtb2RlLm9yZy8xMTg0MzVlOC0wYjIwLTQ2ZmQtYWY2YS04OGRlOGUxOWZh YzZAYXBwLmZhc3RtYWlsLmNvbS8KLS0tCiBkb2Mvb3JnLW1hbnVhbC5vcmcgICAgICB8IDEz MyArKysrKysrKysrLS0tLS0tLQogZXRjL09SRy1ORVdTICAgICAgICAgICAgfCAgNjQgKysr KysrKysrCiBsaXNwL29sLWJiZGIuZWwgICAgICAgICB8ICAgMiArLQogbGlzcC9vbC1iaWJ0 ZXguZWwgICAgICAgfCAgIDIgKy0KIGxpc3Avb2wtZG9jdmlldy5lbCAgICAgIHwgICAyICst CiBsaXNwL29sLWVzaGVsbC5lbCAgICAgICB8ICAgMiArLQogbGlzcC9vbC1ld3cuZWwgICAg ICAgICAgfCAgIDIgKy0KIGxpc3Avb2wtZ251cy5lbCAgICAgICAgIHwgICAyICstCiBsaXNw L29sLWluZm8uZWwgICAgICAgICB8ICAgMiArLQogbGlzcC9vbC1pcmMuZWwgICAgICAgICAg fCAgIDIgKy0KIGxpc3Avb2wtbWFuLmVsICAgICAgICAgIHwgICAyICstCiBsaXNwL29sLW1o ZS5lbCAgICAgICAgICB8ICAgMiArLQogbGlzcC9vbC1ybWFpbC5lbCAgICAgICAgfCAgIDIg Ky0KIGxpc3Avb2wuZWwgICAgICAgICAgICAgIHwgMzEyICsrKysrKysrKysrKysrKysrKysr KysrKystLS0tLS0tLS0tLS0tLS0KIGxpc3Avb3JnLWlkLmVsICAgICAgICAgIHwgMTc4ICsr KysrKysrKysrKysrKysrKysrLS0tCiBsaXNwL29yZy1saW50LmVsICAgICAgICB8ICAxNiAr KysKIHRlc3RpbmcvbGlzcC90ZXN0LW9sLmVsIHwgMTMwICsrKysrKysrKysrKysrKysrCiAx NyBmaWxlcyBjaGFuZ2VkLCA2NTggaW5zZXJ0aW9ucygrKSwgMTk3IGRlbGV0aW9ucygtKQoK ZGlmZiAtLWdpdCBhL2RvYy9vcmctbWFudWFsLm9yZyBiL2RvYy9vcmctbWFudWFsLm9yZwpp bmRleCA2NGI0ZmQwZjUuLjQ1OTZiNDAxYiAxMDA2NDQKLS0tIGEvZG9jL29yZy1tYW51YWwu b3JnCisrKyBiL2RvYy9vcmctbWFudWFsLm9yZwpAQCAtMzI5NywxMCArMzI5Nyw2IEBAIEhl cmUgaXMgdGhlIGZ1bGwgc2V0IG9mIGJ1aWx0LWluIGxpbmsgdHlwZXM6CiAKICAgRmlsZSBs aW5rcy4gIEZpbGUgbmFtZSBtYXkgYmUgcmVtb3RlLCBhYnNvbHV0ZSwgb3IgcmVsYXRpdmUu CiAKLSAgQWRkaXRpb25hbGx5LCB5b3UgY2FuIHNwZWNpZnkgYSBsaW5lIG51bWJlciwgb3Ig YSB0ZXh0IHNlYXJjaC4KLSAgSW4gT3JnIGZpbGVzLCB5b3UgbWF5IGxpbmsgdG8gYSBoZWFk bGluZSBuYW1lLCBhIGN1c3RvbSBJRCwgb3IgYQotICBjb2RlIHJlZmVyZW5jZSBpbnN0ZWFk LgotCiAgIEFzIGEgc3BlY2lhbCBjYXNlLCAiZmlsZSIgcHJlZml4IG1heSBiZSBvbWl0dGVk IGlmIHRoZSBmaWxlIG5hbWUKICAgaXMgY29tcGxldGUsIGUuZy4sIGl0IHN0YXJ0cyB3aXRo ID0uLz0sIG9yID0vPS4KIApAQCAtMzM2NCw0NCArMzM2MCw1MCBAQCBIZXJlIGlzIHRoZSBm dWxsIHNldCBvZiBidWlsdC1pbiBsaW5rIHR5cGVzOgogCiAgIEV4ZWN1dGUgYSBzaGVsbCBj b21tYW5kIHVwb24gYWN0aXZhdGlvbi4KIAorCitGb3IgPWZpbGU6PSBhbmQgPWlkOj0gbGlu a3MsIHlvdSBjYW4gYWRkaXRpb25hbGx5IHNwZWNpZnkgYSBsaW5lCitudW1iZXIsIG9yIGEg dGV4dCBzZWFyY2ggc3RyaW5nLCBzZXBhcmF0ZWQgYnkgPTo6PS4gIEluIE9yZyBmaWxlcywg eW91CittYXkgbGluayB0byBhIGhlYWRsaW5lIG5hbWUsIGEgY3VzdG9tIElELCBvciBhIGNv ZGUgcmVmZXJlbmNlIGluc3RlYWQuCisKIFRoZSBmb2xsb3dpbmcgdGFibGUgaWxsdXN0cmF0 ZXMgdGhlIGxpbmsgdHlwZXMgYWJvdmUsIGFsb25nIHdpdGggdGhlaXIKIG9wdGlvbnM6CiAK LXwgTGluayBUeXBlICB8IEV4YW1wbGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwKLXwtLS0tLS0tLS0tLS0rLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLXwKLXwgaHR0cCAgICAg ICB8ID1odHRwOi8vc3RhZmYuc2NpZW5jZS51dmEubmwvYy5kb21pbmlrLz0gICAgICAgICAg ICAgICAgIHwKLXwgaHR0cHMgICAgICB8ID1odHRwczovL29yZ21vZGUub3JnLz0gICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwgZG9pICAgICAgICB8ID1kb2k6MTAu MTAwMC8xODI9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwg ZmlsZSAgICAgICB8ID1maWxlOi9ob21lL2RvbWluaWsvaW1hZ2VzL2p1cGl0ZXIuanBnPSAg ICAgICAgICAgICAgICAgIHwKLXwgICAgICAgICAgICB8ID0vaG9tZS9kb21pbmlrL2ltYWdl cy9qdXBpdGVyLmpwZz0gKHNhbWUgYXMgYWJvdmUpICAgICAgIHwKLXwgICAgICAgICAgICB8 ID1maWxlOnBhcGVycy9sYXN0LnBkZj0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwKLXwgICAgICAgICAgICB8ID0uL3BhcGVycy9sYXN0LnBkZj0gKHNhbWUgYXMgYWJv dmUpICAgICAgICAgICAgICAgICAgICAgIHwKLXwgICAgICAgICAgICB8ID1maWxlOi9zc2g6 bWVAc29tZS53aGVyZTpwYXBlcnMvbGFzdC5wZGY9IChyZW1vdGUpICAgICAgIHwKLXwgICAg ICAgICAgICB8ID0vc3NoOm1lQHNvbWUud2hlcmU6cGFwZXJzL2xhc3QucGRmPSAoc2FtZSBh cyBhYm92ZSkgICAgIHwKLXwgICAgICAgICAgICB8ID1maWxlOnNvbWV0ZXh0ZmlsZTo6Tk5O PSAoanVtcCB0byBsaW5lIG51bWJlcikgICAgICAgICAgIHwKLXwgICAgICAgICAgICB8ID1m aWxlOnByb2plY3RzLm9yZz0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwKLXwgICAgICAgICAgICB8ID1maWxlOnByb2plY3RzLm9yZzo6c29tZSB3b3Jkcz0gKHRl eHQgc2VhcmNoKVtmbjoxMl0gICAgIHwKLXwgICAgICAgICAgICB8ID1maWxlOnByb2plY3Rz Lm9yZzo6KnRhc2sgdGl0bGU9IChoZWFkbGluZSBzZWFyY2gpICAgICAgIHwKLXwgICAgICAg ICAgICB8ID1maWxlOnByb2plY3RzLm9yZzo6I2N1c3RvbS1pZD0gKGhlYWRsaW5lIHNlYXJj aCkgICAgICAgIHwKLXwgYXR0YWNobWVudCB8ID1hdHRhY2htZW50OnByb2plY3RzLm9yZz0g ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwgICAgICAgICAgICB8ID1hdHRh Y2htZW50OnByb2plY3RzLm9yZzo6c29tZSB3b3Jkcz0gKHRleHQgc2VhcmNoKSAgICAgIHwK LXwgZG9jdmlldyAgICB8ID1kb2N2aWV3OnBhcGVycy9sYXN0LnBkZjo6Tk5OPSAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwKLXwgaWQgICAgICAgICB8ID1pZDpCNzQyM0Y0RC0yRThB LTQ3MUItODgxMC1DNDBGMDc0NzE3RTk9ICAgICAgICAgICAgICAgIHwKLXwgbmV3cyAgICAg ICB8ID1uZXdzOmNvbXAuZW1hY3M9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIHwKLXwgbWFpbHRvICAgICB8ID1tYWlsdG86YWRlbnRAZ2FsYXh5Lm5ldD0gICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwgbWhlICAgICAgICB8ID1taGU6Zm9s ZGVyPSAoZm9sZGVyIGxpbmspICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwg ICAgICAgICAgICB8ID1taGU6Zm9sZGVyI2lkPSAobWVzc2FnZSBsaW5rKSAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwKLXwgcm1haWwgICAgICB8ID1ybWFpbDpmb2xkZXI9IChmb2xk ZXIgbGluaykgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwgICAgICAgICAgICB8 ID1ybWFpbDpmb2xkZXIjaWQ9IChtZXNzYWdlIGxpbmspICAgICAgICAgICAgICAgICAgICAg ICAgIHwKLXwgZ251cyAgICAgICB8ID1nbnVzOmdyb3VwPSAoZ3JvdXAgbGluaykgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwgICAgICAgICAgICB8ID1nbnVzOmdyb3Vw I2lkPSAoYXJ0aWNsZSBsaW5rKSAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwgYmJk YiAgICAgICB8ID1iYmRiOlIuKlN0YWxsbWFuPSAocmVjb3JkIHdpdGggcmVnZXhwKSAgICAg ICAgICAgICAgICAgIHwKLXwgaXJjICAgICAgICB8ID1pcmM6L2lyYy5jb20vI2VtYWNzL2Jv Yj0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwgaGVscCAgICAgICB8ID1o ZWxwOm9yZy1zdG9yZS1saW5rPSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwKLXwgaW5mbyAgICAgICB8ID1pbmZvOm9yZyNFeHRlcm5hbCBsaW5rcz0gICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgIHwKLXwgc2hlbGwgICAgICB8ID1zaGVsbDpscyAqLm9y Zz0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKLXwgZWxpc3Ag ICAgICB8ID1lbGlzcDooZmluZC1maWxlICJFbGlzcC5vcmciKT0gKEVsaXNwIGZvcm0gdG8g ZXZhbHVhdGUpIHwKLXwgICAgICAgICAgICB8ID1lbGlzcDpvcmctYWdlbmRhPSAoaW50ZXJh Y3RpdmUgRWxpc3AgY29tbWFuZCkgICAgICAgICAgIHwKK3wgTGluayBUeXBlICB8IEV4YW1w bGUgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICB8Cit8LS0tLS0tLS0tLS0tKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tfAorfCBodHRwICAgICAg IHwgPWh0dHA6Ly9zdGFmZi5zY2llbmNlLnV2YS5ubC9jLmRvbWluaWsvPSAgICAgICAgICAg ICAgICAgICAgICAgICAgIHwKK3wgaHR0cHMgICAgICB8ID1odHRwczovL29yZ21vZGUub3Jn Lz0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8IGRv aSAgICAgICAgfCA9ZG9pOjEwLjEwMDAvMTgyPSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgfAorfCBmaWxlICAgICAgIHwgPWZpbGU6L2hvbWUv ZG9taW5pay9pbWFnZXMvanVwaXRlci5qcGc9ICAgICAgICAgICAgICAgICAgICAgICAgICAg IHwKK3wgICAgICAgICAgICB8ID0vaG9tZS9kb21pbmlrL2ltYWdlcy9qdXBpdGVyLmpwZz0g KHNhbWUgYXMgYWJvdmUpICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgfCA9Zmls ZTpwYXBlcnMvbGFzdC5wZGY9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgfAorfCAgICAgICAgICAgIHwgPS4vcGFwZXJzL2xhc3QucGRmPSAoc2FtZSBh cyBhYm92ZSkgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAg ICB8ID1maWxlOi9zc2g6bWVAc29tZS53aGVyZTpwYXBlcnMvbGFzdC5wZGY9IChyZW1vdGUp ICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgfCA9L3NzaDptZUBzb21lLndoZXJl OnBhcGVycy9sYXN0LnBkZj0gKHNhbWUgYXMgYWJvdmUpICAgICAgICAgICAgICAgfAorfCAg ICAgICAgICAgIHwgPWZpbGU6c29tZXRleHRmaWxlOjpOTk49IChqdW1wIHRvIGxpbmUgbnVt YmVyKSAgICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICB8ID1maWxlOnByb2pl Y3RzLm9yZz0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICB8Cit8ICAgICAgICAgICAgfCA9ZmlsZTpwcm9qZWN0cy5vcmc6OnNvbWUgd29yZHM9ICh0 ZXh0IHNlYXJjaClbZm46MTJdICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgIHwgPWZp bGU6cHJvamVjdHMub3JnOjoqdGFzayB0aXRsZT0gKGhlYWRsaW5lIHNlYXJjaCkgICAgICAg ICAgICAgICAgIHwKK3wgICAgICAgICAgICB8ID1maWxlOnByb2plY3RzLm9yZzo6I2N1c3Rv bS1pZD0gKGhlYWRsaW5lIHNlYXJjaCkgICAgICAgICAgICAgICAgICB8Cit8IGF0dGFjaG1l bnQgfCA9YXR0YWNobWVudDpwcm9qZWN0cy5vcmc9ICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgIHwgPWF0dGFjaG1lbnQ6cHJvamVj dHMub3JnOjpzb21lIHdvcmRzPSAodGV4dCBzZWFyY2gpICAgICAgICAgICAgICAgIHwKK3wg ZG9jdmlldyAgICB8ID1kb2N2aWV3OnBhcGVycy9sYXN0LnBkZjo6Tk5OPSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8IGlkICAgICAgICAgfCA9aWQ6Qjc0MjNG NEQtMkU4QS00NzFCLTg4MTAtQzQwRjA3NDcxN0U5PSAgICAgICAgICAgICAgICAgICAgICAg ICAgfAorfCAgICAgICAgICAgIHwgPWlkOkI3NDIzRjRELTJFOEEtNDcxQi04ODEwLUM0MEYw NzQ3MTdFOTo6KnRhc2s9IChoZWFkbGluZSBzZWFyY2gpIHwKK3wgbmV3cyAgICAgICB8ID1u ZXdzOmNvbXAuZW1hY3M9ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICB8Cit8IG1haWx0byAgICAgfCA9bWFpbHRvOmFkZW50QGdhbGF4eS5uZXQ9 ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCBtaGUgICAg ICAgIHwgPW1oZTpmb2xkZXI9IChmb2xkZXIgbGluaykgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgIHwKK3wgICAgICAgICAgICB8ID1taGU6Zm9sZGVyI2lkPSAo bWVzc2FnZSBsaW5rKSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8 IHJtYWlsICAgICAgfCA9cm1haWw6Zm9sZGVyPSAoZm9sZGVyIGxpbmspICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgfAorfCAgICAgICAgICAgIHwgPXJtYWlsOmZv bGRlciNpZD0gKG1lc3NhZ2UgbGluaykgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIHwKK3wgZ251cyAgICAgICB8ID1nbnVzOmdyb3VwPSAoZ3JvdXAgbGluaykgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICB8Cit8ICAgICAgICAgICAgfCA9 Z251czpncm91cCNpZD0gKGFydGljbGUgbGluaykgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgfAorfCBiYmRiICAgICAgIHwgPWJiZGI6Ui4qU3RhbGxtYW49IChyZWNv cmQgd2l0aCByZWdleHApICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgaXJjICAg ICAgICB8ID1pcmM6L2lyYy5jb20vI2VtYWNzL2JvYj0gICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICB8Cit8IGhlbHAgICAgICAgfCA9aGVscDpvcmctc3RvcmUt bGluaz0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgfAor fCBpbmZvICAgICAgIHwgPWluZm86b3JnI0V4dGVybmFsIGxpbmtzPSAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgIHwKK3wgc2hlbGwgICAgICB8ID1zaGVsbDps cyAqLm9yZz0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICB8Cit8IGVsaXNwICAgICAgfCA9ZWxpc3A6KGZpbmQtZmlsZSAiRWxpc3Aub3JnIik9 IChFbGlzcCBmb3JtIHRvIGV2YWx1YXRlKSAgICAgICAgICAgfAorfCAgICAgICAgICAgIHwg PWVsaXNwOm9yZy1hZ2VuZGE9IChpbnRlcmFjdGl2ZSBFbGlzcCBjb21tYW5kKSAgICAgICAg ICAgICAgICAgICAgIHwKIAogIytjaW5kZXg6IFZNIGxpbmtzCiAjK2NpbmRleDogV2FuZGVy bHVzdCBsaW5rcwpAQCAtMzQ2Miw4ICszNDY0LDkgQEAgY3VycmVudCBidWZmZXI6CiAtIC9P cmcgbW9kZSBidWZmZXJzLyA6OgogCiAgIEZvciBPcmcgZmlsZXMsIGlmIHRoZXJlIGlzIGEg PTw8dGFyZ2V0Pj49IGF0IHBvaW50LCB0aGUgbGluayBwb2ludHMKLSAgdG8gdGhlIHRhcmdl dC4gIE90aGVyd2lzZSBpdCBwb2ludHMgdG8gdGhlIGN1cnJlbnQgaGVhZGxpbmUsIHdoaWNo Ci0gIGlzIGFsc28gdGhlIGRlc2NyaXB0aW9uLgorICB0byB0aGUgdGFyZ2V0LiAgSWYgdGhl cmUgaXMgYSBuYW1lZCBibG9jayAodXNpbmcgPSMrbmFtZTo9KSBhdAorICBwb2ludCwgdGhl IGxpbmsgcG9pbnRzIHRvIHRoYXQgbmFtZS4gIE90aGVyd2lzZSBpdCBwb2ludHMgdG8gdGhl CisgIGN1cnJlbnQgaGVhZGxpbmUsIHdoaWNoIGlzIGFsc28gdGhlIGRlc2NyaXB0aW9uLgog CiAgICMrdmluZGV4OiBvcmctaWQtbGluay10by1vcmctdXNlLWlkCiAgICMrY2luZGV4OiBA c2FtcHtDVVNUT01fSUR9LCBwcm9wZXJ0eQpAQCAtMzQ4MSw2ICszNDg0LDMwIEBAIGN1cnJl bnQgYnVmZmVyOgogICB0aW1lc3RhbXAsIGRlcGVuZGluZyBvbiB+b3JnLWlkLW1ldGhvZH4u ICBMYXRlciwgd2hlbiBpbnNlcnRpbmcgdGhlCiAgIGxpbmssIHlvdSBuZWVkIHRvIGRlY2lk ZSB3aGljaCBvbmUgdG8gdXNlLgogCisgICMrdmluZGV4OiBvcmctaWQtbGluay1jb25zaWRl ci1wYXJlbnQtaWQKKyAgIyt2aW5kZXg6IG9yZy1pZC1saW5rLXVzZS1jb250ZXh0CisgIFdo ZW4gfm9yZy1pZC1saW5rLWNvbnNpZGVyLXBhcmVudC1pZH4gaXMgfnR+IChhbmQKKyAgfm9y Zy1saW5rLWNvbnRleHQtZm9yLWZpbGVzfiBhbmQgfm9yZy1pZC1saW5rLXVzZS1jb250ZXh0 fiBhcmUgYm90aAorICBlbmFibGVkKSwgcGFyZW50ID1JRD0gcHJvcGVydGllcyBhcmUgY29u c2lkZXJlZC4gIFRoaXMgYWxsb3dzCisgIGxpbmtpbmcgdG8gc3BlY2lmaWMgdGFyZ2V0cywg bmFtZWQgYmxvY2tzLCBvciBoZWFkbGluZXMgKHdoaWNoIG1heQorICBub3QgaGF2ZSBhIGds b2JhbGx5IHVuaXF1ZSA9SUQ9IHRoZW1zZWx2ZXMpIHdpdGhpbiB0aGUgY29udGV4dCBvZiBh CisgIHBhcmVudCBoZWFkbGluZSBvciBmaWxlIHdoaWNoIGRvZXMuCisKKyAgRm9yIGV4YW1w bGUsIGdpdmVuIHRoaXMgb3JnIGZpbGUgd2l0aCB0aG9zZSB2YXJpYWJsZXMgc2V0OgorCisg ICMrYmVnaW5fc3JjIG9yZworICAsKiBQYXJlbnQKKyAgOlBST1BFUlRJRVM6CisgIDpJRDog YWJjCisgIDpFTkQ6CisgICwqKiBDaGlsZCAxCisgICwqKiBDaGlsZCAyCisgICMrZW5kX3Ny YworCisgIFN0b3JpbmcgYSBsaW5rIHdpdGggcG9pbnQgYXQgIkNoaWxkIDEiIHdpbGwgcHJv ZHVjZSBhIGxpbmsKKyAgPTxpZDphYmM6OipDaGlsZCAxPj0sIHdoaWNoIHByZWNpc2VseSBs aW5rcyB0byB0aGUgIkNoaWxkIDEiCisgIGhlYWRsaW5lIGV2ZW4gdGhvdWdoIGl0IGRvZXMg bm90IGhhdmUgaXRzIG93biBJRC4KKwogLSAvRW1haWwvTmV3cyBjbGllbnRzOiBWTSwgUm1h aWwsIFdhbmRlcmx1c3QsIE1ILUUsIEdudXMvIDo6CiAKICAgIyt2aW5kZXg6IG9yZy1saW5r LWVtYWlsLWRlc2NyaXB0aW9uLWZvcm1hdApAQCAtMzc2MCw3ICszNzg3LDkgQEAgdGhlIGxp bmsgY29tcGxldGlvbiBmdW5jdGlvbiBsaWtlIHRoaXM6CiA6QUxUX1RJVExFOiBTZWFyY2gg T3B0aW9ucwogOkVORDoKICMrY2luZGV4OiBzZWFyY2ggb3B0aW9uIGluIGZpbGUgbGlua3MK KyMrY2luZGV4OiBzZWFyY2ggb3B0aW9uIGluIGlkIGxpbmtzCiAjK2NpbmRleDogZmlsZSBs aW5rcywgc2VhcmNoaW5nCisjK2NpbmRleDogaWQgbGlua3MsIHNlYXJjaGluZwogIytjaW5k ZXg6IGF0dGFjaG1lbnQgbGlua3MsIHNlYXJjaGluZwogCiBGaWxlIGxpbmtzIGNhbiBjb250 YWluIGFkZGl0aW9uYWwgaW5mb3JtYXRpb24gdG8gbWFrZSBFbWFjcyBqdW1wIHRvIGEKQEAg LTM3NzIsOCArMzgwMSw4IEBAIGV4YW1wbGUsIHdoZW4gdGhlIGNvbW1hbmQgfm9yZy1zdG9y ZS1saW5rfiBjcmVhdGVzIGEgbGluayAoc2VlCiBsaW5lIGFzIGEgc2VhcmNoIHN0cmluZyB0 aGF0IGNhbiBiZSB1c2VkIHRvIGZpbmQgdGhpcyBsaW5lIGJhY2sgbGF0ZXIKIHdoZW4gZm9s bG93aW5nIHRoZSBsaW5rIHdpdGgge3t7a2JkKEMtYyBDLW8pfX19LgogCi1Ob3RlIHRoYXQg YWxsIHNlYXJjaCBvcHRpb25zIGFwcGx5IGZvciBBdHRhY2htZW50IGxpbmtzIGluIHRoZSBz YW1lCi13YXkgdGhhdCB0aGV5IGFwcGx5IGZvciBGaWxlIGxpbmtzLgorTm90ZSB0aGF0IGFs bCBzZWFyY2ggb3B0aW9ucyBhcHBseSBmb3IgQXR0YWNobWVudCBhbmQgSUQgbGlua3MgaW4g dGhlCitzYW1lIHdheSB0aGF0IHRoZXkgYXBwbHkgZm9yIEZpbGUgbGlua3MuCiAKIEhlcmUg aXMgdGhlIHN5bnRheCBvZiB0aGUgZGlmZmVyZW50IHdheXMgdG8gYXR0YWNoIGEgc2VhcmNo IHRvIGEgZmlsZQogbGluaywgdG9nZXRoZXIgd2l0aCBleHBsYW5hdGlvbnMgZm9yIGVhY2g6 CkBAIC0yMTM2MCw3ICsyMTM4OSw3IEBAIFRoZSBmb2xsb3dpbmcgPW9sLW1hbi5lbD0gZmls ZSBpbXBsZW1lbnRzIGl0CiBQQVRIIHNob3VsZCBiZSBhIHRvcGljIHRoYXQgY2FuIGJlIHRo cm93biBhdCB0aGUgbWFuIGNvbW1hbmQuIgogICAoZnVuY2FsbCBvcmctbWFuLWNvbW1hbmQg cGF0aCkpCiAKLShkZWZ1biBvcmctbWFuLXN0b3JlLWxpbmsgKCkKKyhkZWZ1biBvcmctbWFu LXN0b3JlLWxpbmsgKCZvcHRpb25hbCBfaW50ZXJhY3RpdmU/KQogICAiU3RvcmUgYSBsaW5r IHRvIGEgbWFuIHBhZ2UuIgogICAod2hlbiAobWVtcSBtYWpvci1tb2RlICcoTWFuLW1vZGUg d29tYW4tbW9kZSkpCiAgICAgOzsgVGhpcyBpcyBhIG1hbiBwYWdlLCB3ZSBkbyBtYWtlIHRo aXMgbGluay4KQEAgLTIxNDIwLDEzICsyMTQ0OSwxNSBAQCBBIHJldmlldyBvZiA9b2wtbWFu LmVsPToKIAogICAgRm9yIGV4YW1wbGUsIH5vcmctbWFuLXN0b3JlLWxpbmt+IGlzIHJlc3Bv bnNpYmxlIGZvciBzdG9yaW5nIGEgbGluawogICAgd2hlbiB+b3JnLXN0b3JlLWxpbmt+IChz ZWUgW1sqSGFuZGxpbmcgTGlua3NdXSkgaXMgY2FsbGVkIGZyb20gYSBidWZmZXIKLSAgIGRp c3BsYXlpbmcgYSBtYW4gcGFnZS4gIEl0IGZpcnN0IGNoZWNrcyBpZiB0aGUgbWFqb3IgbW9k ZSBpcwotICAgYXBwcm9wcmlhdGUuICBJZiBjaGVjayBmYWlscywgdGhlIGZ1bmN0aW9uIHJl dHVybnMgfm5pbH4sIHdoaWNoCi0gICBtZWFucyBpdCBpc24ndCByZXNwb25zaWJsZSBmb3Ig Y3JlYXRpbmcgYSBsaW5rIHRvIHRoZSBjdXJyZW50Ci0gICBidWZmZXIuICBPdGhlcndpc2Ug dGhlIGZ1bmN0aW9uIG1ha2VzIGEgbGluayBzdHJpbmcgYnkgY29tYmluaW5nCi0gICB0aGUg PW1hbjo9IHByZWZpeCB3aXRoIHRoZSBtYW4gdG9waWMuICBJdCBhbHNvIHByb3ZpZGVzIGEg ZGVmYXVsdAotICAgZGVzY3JpcHRpb24uICBUaGUgZnVuY3Rpb24gfm9yZy1pbnNlcnQtbGlu a34gY2FuIGluc2VydCBpdCBiYWNrCi0gICBpbnRvIGFuIE9yZyBidWZmZXIgbGF0ZXIgb24u CisgICBkaXNwbGF5aW5nIGEgbWFuIHBhZ2UuICBJdCBpcyBwYXNzZWQgYW4gYXJndW1lbnQg fmludGVyYWN0aXZlP34KKyAgIHdoaWNoIHRoaXMgZnVuY3Rpb24gZG9lcyBub3QgdXNlLCBi dXQgb3RoZXIgc3RvcmUgZnVuY3Rpb25zIHVzZSB0bworICAgYmVoYXZlIGRpZmZlcmVudGx5 IHdoZW4gYSBsaW5rIGlzIHN0b3JlZCBpbnRlcmFjdGl2ZWx5IGJ5IHRoZSB1c2VyLgorICAg SXQgZmlyc3QgY2hlY2tzIGlmIHRoZSBtYWpvciBtb2RlIGlzIGFwcHJvcHJpYXRlLiAgSWYg Y2hlY2sgZmFpbHMsCisgICB0aGUgZnVuY3Rpb24gcmV0dXJucyB+bmlsfiwgd2hpY2ggbWVh bnMgaXQgaXNuJ3QgcmVzcG9uc2libGUgZm9yCisgICBjcmVhdGluZyBhIGxpbmsgdG8gdGhl IGN1cnJlbnQgYnVmZmVyLiAgT3RoZXJ3aXNlIHRoZSBmdW5jdGlvbgorICAgbWFrZXMgYSBs aW5rIHN0cmluZyBieSBjb21iaW5pbmcgdGhlID1tYW46PSBwcmVmaXggd2l0aCB0aGUgbWFu CisgICB0b3BpYy4gIEl0IGFsc28gcHJvdmlkZXMgYSBkZWZhdWx0IGRlc2NyaXB0aW9uLiAg VGhlIGZ1bmN0aW9uCisgICB+b3JnLWluc2VydC1saW5rfiBjYW4gaW5zZXJ0IGl0IGJhY2sg aW50byBhbiBPcmcgYnVmZmVyIGxhdGVyIG9uLgogCiAqKiBBZGRpbmcgRXhwb3J0IEJhY2tl bmRzCiA6UFJPUEVSVElFUzoKZGlmZiAtLWdpdCBhL2V0Yy9PUkctTkVXUyBiL2V0Yy9PUkct TkVXUwppbmRleCBhZGRhNTU1MzIuLjZhM2Q0OWY2YyAxMDA2NDQKLS0tIGEvZXRjL09SRy1O RVdTCisrKyBiL2V0Yy9PUkctTkVXUwpAQCAtMzczLDYgKzM3MywxNCBAQCB0aW1lc3RhbXAg b2JqZWN0LiAgUG9zc2libGUgdmFsdWVzOiB+dGltZXJhbmdlfiwgfmRhdGVyYW5nZX4sIH5u aWx+Lgogfm9yZy1lbGVtZW50LXRpbWVzdGFtcC1pbnRlcnByZXRlcn4gdGFrZXMgaW50byBh Y2NvdW50IHRoaXMgcHJvcGVydHkKIGFuZCByZXR1cm5zIGFuIGFwcHJvcHJpYXRlIHRpbWVz dGFtcCBzdHJpbmcuCiAKKyoqKiogPW9yZy1saW5rPSBzdG9yZSBmdW5jdGlvbnMgYXJlIHBh c3NlZCBhbiB+aW50ZXJhY3RpdmU/fiBhcmd1bWVudAorCitUaGUgfjpzdG9yZTp+IGZ1bmN0 aW9ucyBzZXQgZm9yIGxpbmsgdHlwZXMgdXNpbmcKK35vcmctbGluay1zZXQtcGFyYW1ldGVy c34gYXJlIG5vdyBwYXNzZWQgYW4gfmludGVyYWN0aXZlP34gYXJndW1lbnQsCitpbmRpY2F0 aW5nIHdoZXRoZXIgfm9yZy1zdG9yZS1saW5rfiB3YXMgY2FsbGVkIGludGVyYWN0aXZlbHku CisKK0V4aXN0aW5nIHN0b3JlIGZ1bmN0aW9ucyB3aWxsIGNvbnRpbnVlIHRvIHdvcmsuCisK ICoqKiB+b3JnLXByaW9yaXR5PXNob3d+IGNvbW1hbmQgbm8gbG9uZ2VyIGFkanVzdHMgZm9y IHNjaGVkdWxlZC9kZWFkbGluZQogCiBJbiBhZ2VuZGEgdmlld3MsIH5vcmctcHJpb3JpdHk9 c2hvd34gY29tbWFuZCBwcmV2aW91c2x5IGRpc3BsYXllZCB0aGUKQEAgLTQ1MSw2ICs0NTks MjcgQEAgVGhlIGNoYW5nZSBpcyBicmVha2luZyB3aGVuIH5vcmctdXNlLXByb3BlcnR5LWlu aGVyaXRhbmNlfiBpcyBzZXQgdG8gfnR+LgogKioqIH5vcmctYmFiZWwtbGlseXBvbmQtY29t cGlsZS1saWx5ZmlsZX4gaWdub3JlcyBvcHRpb25hbCBzZWNvbmQgYXJndW1lbnQKIAogVGhl ID1URVNUPSBwYXJhbWV0ZXIgaXMgYmV0dGVyIHNlcnZlZCBieSBFbWFjcyBkZWJ1Z2dpbmcg dG9vbHMuCisKKyoqKiB+b3JnLWlkLXN0b3JlLWxpbmt+IG5vdyBhZGRzIHNlYXJjaCBzdHJp bmdzIGZvciBwcmVjaXNlIGxpbmsgdGFyZ2V0cworCitUaGlzIG5ldyBiZWhhdmlvdXIgY2Fu IGJlIGRpc2FibGVkIGdlbmVyYWxseSBieSBzZXR0aW5nCit+b3JnLWlkLWxpbmstdXNlLWNv bnRleHR+IHRvIH5uaWx+LCBvciB0aGUgc2V0dGluZyBjYW4gYmUgdG9nZ2xlZCBmb3IKK2Eg c2luZ2xlIGNhbGwgdG8gfm9yZy1zdG9yZS1saW5rfiB3aXRoIGEgdW5pdmVyc2FsIGFyZ3Vt ZW50LgorCitXaGVuIHVzaW5nIHRoaXMgZmVhdHVyZSwgSURzIHNob3VsZCBub3QgaW5jbHVk ZSA9Ojo9LCB3aGljaCBpcyB1c2VkIGluCitsaW5rcyB0byBpbmRpY2F0ZSB0aGUgc3RhcnQg b2YgdGhlIHNlYXJjaCBzdHJpbmcuICBGb3IgYmFja3dhcmRzCitjb21wYWJpbGl0eSwgZXhp c3RpbmcgSURzIGluY2x1ZGluZyA9Ojo9IHdpbGwgc3RpbGwgYmUgbWF0Y2hlZCAoYnV0Citj YW5ub3QgYmUgdXNlZCB0b2dldGhlciB3aXRoIHByZWNpc2UgbGluayB0YXJnZXRzKS4gIEFu IG9yZy1saW50CitjaGVja2VyIGhhcyBiZWVuIGFkZGVkIHRvIHdhcm4gYWJvdXQgdGhpcy4K KworKioqIH5vcmctc3RvcmUtbGlua34gYmVoYXZpb3VyIHN0b3JpbmcgYWRkaXRpb25hbCA9 Q1VTVE9NX0lEPSBsaW5rcyBoYXMgY2hhbmdlZAorCitBcyB3ZWxsIGFzIGFuID1pZDo9IGxp bmssIH5vcmctc3RvcmUtbGlua34gc3RvcmVzIGFuIGFkZGl0aW9uYWwgImh1bWFuCityZWFk YWJsZSIgbGluayB1c2luZyBhIG5vZGUncyA9Q1VTVE9NX0lEPSBwcm9wZXJ0eSwgaWYgYXZh aWxhYmxlLgorVGhpcyBiZWhhdmlvdXIgaGFzIGJlZW4gZXhwYW5kZWQgdG8gc3RvcmUgYW4g YWRkaXRpb25hbCA9Q1VTVE9NX0lEPQorbGluayB3aGVuIHN0b3JpbmcgYW55IHR5cGUgb2Yg ZXh0ZXJuYWwgbGluayB0eXBlIGluIGFuIE9yZyBmaWxlLCBub3QKK2p1c3QgPWlkOj0gbGlu a3MuCisKICoqIE5ldyBhbmQgY2hhbmdlZCBvcHRpb25zCiAqKiogTmV3IGN1c3RvbSBzZXR0 aW5nIH5vcmctaWNhbGVuZGFyLXR0bH4gZm9yIHRoZSB+b3gtaWNhbGVuZGFyfiBiYWNrZW5k CiAKQEAgLTcwOSw2ICs3MzgsMzUgQEAgVGhpcyBvcHRpb24gc3RhcnRzIHRoZSBhZ2VuZGEg dG8gYXV0b21hdGljYWxseSBpbmNsdWRlIGFyY2hpdmVzLAogcHJvcGFnYXRpbmcgdGhlIHZh bHVlIGZvciB0aGlzIHZhcmlhYmxlIHRvIH5vcmctYWdlbmRhLWFyY2hpdmVzLW1vZGV+Lgog Rm9yIGFjY2VwdGFibGUgdmFsdWVzIGFuZCB0aGVpciBtZWFuaW5nLCBzZWUgdGhlIHZhbHVl IG9mIHRoYXQgdmFyaWFibGUuCiAKKyoqKiBOZXcgb3B0aW9uIH5vcmctaWQtbGluay1jb25z aWRlci1wYXJlbnQtaWR+IHRvIGFsbG93ID1pZDo9IGxpbmtzIHRvIHBhcmVudCBoZWFkbGlu ZXMKKworRm9yID1pZDo9IGxpbmtzLCB3aGVuIHRoaXMgb3B0aW9uIGlzIGVuYWJsZWQsIH5v cmctc3RvcmUtbGlua34gd2lsbAorbG9vayBmb3IgaWRzIGZyb20gcGFyZW50L2FuY2VzdG9y IGhlYWRsaW5lcywgaWYgdGhlIGN1cnJlbnQgaGVhZGxpbmUKK2RvZXMgbm90IGhhdmUgYW4g aWQuCisKK0NvbWJpbmVkIHdpdGggdGhlIG5ldyBhYmlsaXR5IGZvciA9aWQ6PSBsaW5rcyB0 byB1c2Ugc2VhcmNoIHN0cmluZ3MKK2ZvciBwcmVjaXNlIGxpbmsgdGFyZ2V0cyAod2hlbiA9 b3JnLWlkLWxpbmstdXNlLWNvbnRleHQ9IGlzID10PSwgd2hpY2gKK2lzIHRoZSBkZWZhdWx0 KSwgdGhpcyBhbGxvd3MgbGlua2luZyB0byBzcGVjaWZpYyBoZWFkbGluZXMgd2l0aG91dAor cmVxdWlyaW5nIGV2ZXJ5IGhlYWRsaW5lIHRvIGhhdmUgYW4gaWQgcHJvcGVydHksIGFzIGxv bmcgYXMgdGhlCitoZWFkbGluZSBpcyB1bmlxdWUgd2l0aGluIGEgc3VidHJlZSB0aGF0IGRv ZXMgaGF2ZSBhbiBpZCBwcm9wZXJ0eS4KKworRm9yIGV4YW1wbGUsIGdpdmVuIHRoaXMgb3Jn IGZpbGU6CisKKyMrYmVnaW5fc3JjIG9yZworLCogUGFyZW50Cis6UFJPUEVSVElFUzoKKzpJ RDogYWJjCis6RU5EOgorLCoqIENoaWxkIDEKKywqKiBDaGlsZCAyCisjK2VuZF9zcmMKKwor U3RvcmluZyBhIGxpbmsgd2l0aCBwb2ludCBhdCAiQ2hpbGQgMSIgd2lsbCBwcm9kdWNlIGEg bGluaworPTxpZDphYmM6OipDaGlsZCAxPj0sIHdoaWNoIHByZWNpc2VseSBsaW5rcyB0byB0 aGUgIkNoaWxkIDEiIGhlYWRsaW5lCitldmVuIHRob3VnaCBpdCBkb2VzIG5vdCBoYXZlIGl0 cyBvd24gSUQuICBCeSBnaXZpbmcgZmlsZXMgdG9wLWxldmVsIGlkCitwcm9wZXJ0aWVzLCBs aW5rcyB0byBoZWFkbGluZXMgaW4gdGhlIGZpbGUgY2FuIGFsc28gYmUgbWFkZSBtb3JlCity b2J1c3QgYnkgdXNpbmcgdGhlIGZpbGUgaWQgaW5zdGVhZCBvZiB0aGUgZmlsZSBwYXRoLgor CiAqKiBOZXcgZmVhdHVyZXMKICoqKiA9b2ItcGxhbnR1bWwuZWw9OiBTdXBwb3J0IHRpa3og ZmlsZSBmb3JtYXQgb3V0cHV0CiAKQEAgLTk5Nyw2ICsxMDU1LDEyIEBAIEEgbnVtZXJpYyB2 YWx1ZSBmb3JjZXMgYSBoZWFkaW5nIGF0IHRoYXQgbGV2ZWwgdG8gYmUgaW5zZXJ0ZWQuICBG b3IKIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5LCBub24tbnVtZXJpYyBub24tbmlsIHZhbHVl cyBpbnNlcnQgbGV2ZWwgMQogaGVhZGluZ3MgYXMgYmVmb3JlLgogCisqKiogTmV3IG9wdGlv bmFsIGFyZ3VtZW50IGZvciB+b3JnLWlkLWdldH4KKworTmV3IG9wdGlvbmFsIGFyZ3VtZW50 ID1JTkhFUklUPSBtZWFucyBpbmhlcml0ZWQgSUQgcHJvcGVydGllcyBmcm9tCitwYXJlbnQg ZW50cmllcyBhcmUgY29uc2lkZXJlZCB3aGVuIGdldHRpbmcgYW4gZW50cnkncyBJRCAoc2Vl Cit+b3JnLWlkLWxpbmstY29uc2lkZXItcGFyZW50LWlkfiBvcHRpb24pLgorCiAqKiBNaXNj ZWxsYW5lb3VzCiAqKiogPW9yZy1jcnlwdC5lbD0gbm93IGFwcGxpZXMgaW5pdGlhbCB2aXNp YmlsaXR5IHNldHRpbmdzIHRvIGRlY3J5cHRlZCBlbnRyaWVzCiAKZGlmZiAtLWdpdCBhL2xp c3Avb2wtYmJkYi5lbCBiL2xpc3Avb2wtYmJkYi5lbAppbmRleCBiZTM5MjRmYzkuLjZlYTA2 MGY3MCAxMDA2NDQKLS0tIGEvbGlzcC9vbC1iYmRiLmVsCisrKyBiL2xpc3Avb2wtYmJkYi5l bApAQCAtMjI2LDcgKzIyNiw3IEBAIGRhdGUgeWVhcikuIgogCiA7OzsgSW1wbGVtZW50YXRp b24KIAotKGRlZnVuIG9yZy1iYmRiLXN0b3JlLWxpbmsgKCkKKyhkZWZ1biBvcmctYmJkYi1z dG9yZS1saW5rICgmb3B0aW9uYWwgX2ludGVyYWN0aXZlPykKICAgIlN0b3JlIGEgbGluayB0 byBhIEJCREIgZGF0YWJhc2UgZW50cnkuIgogICAod2hlbiAoZXEgbWFqb3ItbW9kZSAnYmJk Yi1tb2RlKQogICAgIDs7IFRoaXMgaXMgQkJEQiwgd2UgbWFrZSB0aGlzIGxpbmshCmRpZmYg LS1naXQgYS9saXNwL29sLWJpYnRleC5lbCBiL2xpc3Avb2wtYmlidGV4LmVsCmluZGV4IGM1 YTk1MGUyZC4uMzg0NjhmMzJmIDEwMDY0NAotLS0gYS9saXNwL29sLWJpYnRleC5lbAorKysg Yi9saXNwL29sLWJpYnRleC5lbApAQCAtNTA3LDcgKzUwNyw3IEBAIEFSRywgd2hlbiBub24t bmlsLCBpcyBhIHVuaXZlcnNhbCBwcmVmaXggYXJndW1lbnQuICBTZWUKIGBvcmctb3Blbi1m aWxlJyBmb3IgZGV0YWlscy4iCiAgIChvcmctbGluay1vcGVuLWFzLWZpbGUgcGF0aCBhcmcp KQogCi0oZGVmdW4gb3JnLWJpYnRleC1zdG9yZS1saW5rICgpCisoZGVmdW4gb3JnLWJpYnRl eC1zdG9yZS1saW5rICgmb3B0aW9uYWwgX2ludGVyYWN0aXZlPykKICAgIlN0b3JlIGEgbGlu ayB0byBhIEJpYlRlWCBlbnRyeS4iCiAgICh3aGVuIChlcSBtYWpvci1tb2RlICdiaWJ0ZXgt bW9kZSkKICAgICAobGV0KiAoKHNlYXJjaCAob3JnLWNyZWF0ZS1maWxlLXNlYXJjaC1pbi1i aWJ0ZXgpKQpkaWZmIC0tZ2l0IGEvbGlzcC9vbC1kb2N2aWV3LmVsIGIvbGlzcC9vbC1kb2N2 aWV3LmVsCmluZGV4IGIzMWYxY2U1ZS4uMDkwN2RkZWUxIDEwMDY0NAotLS0gYS9saXNwL29s LWRvY3ZpZXcuZWwKKysrIGIvbGlzcC9vbC1kb2N2aWV3LmVsCkBAIC04Myw3ICs4Myw3IEBA CiAgICAgICAoZXJyb3IgIk5vIHN1Y2ggZmlsZTogJXMiIHBhdGgpKQogICAgICh3aGVuIHBh Z2UgKGRvYy12aWV3LWdvdG8tcGFnZSBwYWdlKSkpKQogCi0oZGVmdW4gb3JnLWRvY3ZpZXct c3RvcmUtbGluayAoKQorKGRlZnVuIG9yZy1kb2N2aWV3LXN0b3JlLWxpbmsgKCZvcHRpb25h bCBfaW50ZXJhY3RpdmU/KQogICAiU3RvcmUgYSBsaW5rIHRvIGEgZG9jdmlldyBidWZmZXIu IgogICAod2hlbiAoZXEgbWFqb3ItbW9kZSAnZG9jLXZpZXctbW9kZSkKICAgICA7OyBUaGlz IGJ1ZmZlciBpcyBpbiBkb2Mtdmlldy1tb2RlCmRpZmYgLS1naXQgYS9saXNwL29sLWVzaGVs bC5lbCBiL2xpc3Avb2wtZXNoZWxsLmVsCmluZGV4IDJjN2VjNmJlZi4uNTk1ZGQwZWUwIDEw MDY0NAotLS0gYS9saXNwL29sLWVzaGVsbC5lbAorKysgYi9saXNwL29sLWVzaGVsbC5lbApA QCAtNjAsNyArNjAsNyBAQCBmb2xsb3dlZCBieSBhIGNvbG9uLiIKICAgICAoaW5zZXJ0IGNv bW1hbmQpCiAgICAgKGVzaGVsbC1zZW5kLWlucHV0KSkpCiAKLShkZWZ1biBvcmctZXNoZWxs LXN0b3JlLWxpbmsgKCkKKyhkZWZ1biBvcmctZXNoZWxsLXN0b3JlLWxpbmsgKCZvcHRpb25h bCBfaW50ZXJhY3RpdmU/KQogICAiU3RvcmUgZXNoZWxsIGxpbmsuCiBXaGVuIG9wZW5lZCwg dGhlIGxpbmsgc3dpdGNoZXMgYmFjayB0byB0aGUgY3VycmVudCBlc2hlbGwgYnVmZmVyIGFu ZAogdGhlIGN1cnJlbnQgd29ya2luZyBkaXJlY3RvcnkuIgpkaWZmIC0tZ2l0IGEvbGlzcC9v bC1ld3cuZWwgYi9saXNwL29sLWV3dy5lbAppbmRleCA0MGI4MjBkMmIuLmMxM2RiZjMzOSAx MDA2NDQKLS0tIGEvbGlzcC9vbC1ld3cuZWwKKysrIGIvbGlzcC9vbC1ld3cuZWwKQEAgLTYy LDcgKzYyLDcgQEAKICAgIk9wZW4gVVJMIHdpdGggRXd3IGluIHRoZSBjdXJyZW50IGJ1ZmZl ci4iCiAgIChld3cgdXJsKSkKIAotKGRlZnVuIG9yZy1ld3ctc3RvcmUtbGluayAoKQorKGRl ZnVuIG9yZy1ld3ctc3RvcmUtbGluayAoJm9wdGlvbmFsIF9pbnRlcmFjdGl2ZT8pCiAgICJT dG9yZSBhIGxpbmsgdG8gdGhlIHVybCBvZiBhbiBFV1cgYnVmZmVyLiIKICAgKHdoZW4gKGVx IG1ham9yLW1vZGUgJ2V3dy1tb2RlKQogICAgIChvcmctbGluay1zdG9yZS1wcm9wcwpkaWZm IC0tZ2l0IGEvbGlzcC9vbC1nbnVzLmVsIGIvbGlzcC9vbC1nbnVzLmVsCmluZGV4IGUxMDVm ZGIyYy4uYjllZTg2ODNmIDEwMDY0NAotLS0gYS9saXNwL29sLWdudXMuZWwKKysrIGIvbGlz cC9vbC1nbnVzLmVsCkBAIC0xMjMsNyArMTIzLDcgQEAgSWYgYG9yZy1zdG9yZS1saW5rJyB3 YXMgY2FsbGVkIHdpdGggYSBwcmVmaXggYXJnIHRoZSBtZWFuaW5nIG9mCiAJICAgICAgKHVy bC1lbmNvZGUtdXJsIG1lc3NhZ2UtaWQpKQogICAgIChjb25jYXQgImdudXM6IiBncm91cCAi IyIgbWVzc2FnZS1pZCkpKQogCi0oZGVmdW4gb3JnLWdudXMtc3RvcmUtbGluayAoKQorKGRl ZnVuIG9yZy1nbnVzLXN0b3JlLWxpbmsgKCZvcHRpb25hbCBfaW50ZXJhY3RpdmU/KQogICAi U3RvcmUgYSBsaW5rIHRvIGEgR251cyBmb2xkZXIgb3IgbWVzc2FnZS4iCiAgIChwY2FzZSBt YWpvci1tb2RlCiAgICAgKGBnbnVzLWdyb3VwLW1vZGUKZGlmZiAtLWdpdCBhL2xpc3Avb2wt aW5mby5lbCBiL2xpc3Avb2wtaW5mby5lbAppbmRleCAwZWRmOWExM2YuLjYwNjJjYWIzNCAx MDA2NDQKLS0tIGEvbGlzcC9vbC1pbmZvLmVsCisrKyBiL2xpc3Avb2wtaW5mby5lbApAQCAt NTAsNyArNTAsNyBAQAogICAgICAgICAgICAgICAgICAgICAgICAgIDppbnNlcnQtZGVzY3Jp cHRpb24gIydvcmctaW5mby1kZXNjcmlwdGlvbi1hcy1jb21tYW5kKQogCiA7OyBJbXBsZW1l bnRhdGlvbgotKGRlZnVuIG9yZy1pbmZvLXN0b3JlLWxpbmsgKCkKKyhkZWZ1biBvcmctaW5m by1zdG9yZS1saW5rICgmb3B0aW9uYWwgX2ludGVyYWN0aXZlPykKICAgIlN0b3JlIGEgbGlu ayB0byBhbiBJbmZvIGZpbGUgYW5kIG5vZGUuIgogICAod2hlbiAoZXEgbWFqb3ItbW9kZSAn SW5mby1tb2RlKQogICAgIChsZXQgKChsaW5rIChjb25jYXQgImluZm86IgpkaWZmIC0tZ2l0 IGEvbGlzcC9vbC1pcmMuZWwgYi9saXNwL29sLWlyYy5lbAppbmRleCA3OGM0ODg0YjAuLmIy NjNlNTJkYiAxMDA2NDQKLS0tIGEvbGlzcC9vbC1pcmMuZWwKKysrIGIvbGlzcC9vbC1pcmMu ZWwKQEAgLTEwMyw3ICsxMDMsNyBAQCBhdHRyaWJ1dGVzIHRoYXQgYXJlIGZvdW5kLiIKICAg ICBwYXJ0cykpCiAKIDs7OyMjI2F1dG9sb2FkCi0oZGVmdW4gb3JnLWlyYy1zdG9yZS1saW5r ICgpCisoZGVmdW4gb3JnLWlyYy1zdG9yZS1saW5rICgmb3B0aW9uYWwgX2ludGVyYWN0aXZl PykKICAgIkRpc3BhdGNoIHRvIHRoZSBhcHByb3ByaWF0ZSBmdW5jdGlvbiB0byBzdG9yZSBh IGxpbmsgdG8gYW4gSVJDIHNlc3Npb24uIgogICAoY29uZAogICAgKChlcSBtYWpvci1tb2Rl ICdlcmMtbW9kZSkKZGlmZiAtLWdpdCBhL2xpc3Avb2wtbWFuLmVsIGIvbGlzcC9vbC1tYW4u ZWwKaW5kZXggZTNmMTM4MTVlLi40MmFhY2VhODEgMTAwNjQ0Ci0tLSBhL2xpc3Avb2wtbWFu LmVsCisrKyBiL2xpc3Avb2wtbWFuLmVsCkBAIC04Miw3ICs4Miw3IEBAIG1hdGNoZWQgc3Ry aW5ncyBpbiBtYW4gYnVmZmVyLiIKICAgICAgICAgICAgIChzZXQtd2luZG93LXBvaW50IHdp bmRvdyBwb2ludCkKICAgICAgICAgICAgIChzZXQtd2luZG93LXN0YXJ0IHdpbmRvdyBwb2lu dCkpKSkpKSkKIAotKGRlZnVuIG9yZy1tYW4tc3RvcmUtbGluayAoKQorKGRlZnVuIG9yZy1t YW4tc3RvcmUtbGluayAoJm9wdGlvbmFsIF9pbnRlcmFjdGl2ZT8pCiAgICJTdG9yZSBhIGxp bmsgdG8gYSBSRUFETUUgZmlsZS4iCiAgICh3aGVuIChtZW1xIG1ham9yLW1vZGUgJyhNYW4t bW9kZSB3b21hbi1tb2RlKSkKICAgICA7OyBUaGlzIGlzIGEgbWFuIHBhZ2UsIHdlIGRvIG1h a2UgdGhpcyBsaW5rCmRpZmYgLS1naXQgYS9saXNwL29sLW1oZS5lbCBiL2xpc3Avb2wtbWhl LmVsCmluZGV4IDEwNmNmZWRjOS4uYTMyNDgxMzI0IDEwMDY0NAotLS0gYS9saXNwL29sLW1o ZS5lbAorKysgYi9saXNwL29sLW1oZS5lbApAQCAtODAsNyArODAsNyBAQCBzdXBwb3J0ZWQg YnkgTUgtRS4iCiAob3JnLWxpbmstc2V0LXBhcmFtZXRlcnMgIm1oZSIgOmZvbGxvdyAjJ29y Zy1taGUtb3BlbiA6c3RvcmUgIydvcmctbWhlLXN0b3JlLWxpbmspCiAKIDs7IEltcGxlbWVu dGF0aW9uCi0oZGVmdW4gb3JnLW1oZS1zdG9yZS1saW5rICgpCisoZGVmdW4gb3JnLW1oZS1z dG9yZS1saW5rICgmb3B0aW9uYWwgX2ludGVyYWN0aXZlPykKICAgIlN0b3JlIGEgbGluayB0 byBhbiBNSC1FIGZvbGRlciBvciBtZXNzYWdlLiIKICAgKHdoZW4gKG9yIChlcSBtYWpvci1t b2RlICdtaC1mb2xkZXItbW9kZSkKIAkgICAgKGVxIG1ham9yLW1vZGUgJ21oLXNob3ctbW9k ZSkpCmRpZmYgLS1naXQgYS9saXNwL29sLXJtYWlsLmVsIGIvbGlzcC9vbC1ybWFpbC5lbApp bmRleCBmNjAzMWFiNTIuLmYxZjc1M2I2ZiAxMDA2NDQKLS0tIGEvbGlzcC9vbC1ybWFpbC5l bAorKysgYi9saXNwL29sLXJtYWlsLmVsCkBAIC01MSw3ICs1MSw3IEBACiAJCQkgOnN0b3Jl ICMnb3JnLXJtYWlsLXN0b3JlLWxpbmspCiAKIDs7IEltcGxlbWVudGF0aW9uCi0oZGVmdW4g b3JnLXJtYWlsLXN0b3JlLWxpbmsgKCkKKyhkZWZ1biBvcmctcm1haWwtc3RvcmUtbGluayAo Jm9wdGlvbmFsIF9pbnRlcmFjdGl2ZT8pCiAgICJTdG9yZSBhIGxpbmsgdG8gYW4gUm1haWwg Zm9sZGVyIG9yIG1lc3NhZ2UuIgogICAod2hlbiAob3IgKGVxIG1ham9yLW1vZGUgJ3JtYWls LW1vZGUpCiAJICAgIChlcSBtYWpvci1tb2RlICdybWFpbC1zdW1tYXJ5LW1vZGUpKQpkaWZm IC0tZ2l0IGEvbGlzcC9vbC5lbCBiL2xpc3Avb2wuZWwKaW5kZXggY2Y1OWM4NTU2Li43ZTdk ZjQ2OGEgMTAwNjQ0Ci0tLSBhL2xpc3Avb2wuZWwKKysrIGIvbGlzcC9vbC5lbApAQCAtNjMs NyArNjMsNiBAQAogKGRlY2xhcmUtZnVuY3Rpb24gb3JnLWZpbmQtcHJvcGVydHkgIm9yZyIg KHByb3BlcnR5ICZvcHRpb25hbCB2YWx1ZSkpCiAoZGVjbGFyZS1mdW5jdGlvbiBvcmctZ2V0 LWhlYWRpbmcgIm9yZyIgKCZvcHRpb25hbCBuby10YWdzIG5vLXRvZG8gbm8tcHJpb3JpdHkg bm8tY29tbWVudCkpCiAoZGVjbGFyZS1mdW5jdGlvbiBvcmctaWQtZmluZC1pZC1maWxlICJv cmctaWQiIChpZCkpCi0oZGVjbGFyZS1mdW5jdGlvbiBvcmctaWQtc3RvcmUtbGluayAib3Jn LWlkIiAoKSkKIChkZWNsYXJlLWZ1bmN0aW9uIG9yZy1pbnNlcnQtaGVhZGluZyAib3JnIiAo Jm9wdGlvbmFsIGFyZyBpbnZpc2libGUtb2sgdG9wKSkKIChkZWNsYXJlLWZ1bmN0aW9uIG9y Zy1sb2FkLW1vZHVsZXMtbWF5YmUgIm9yZyIgKCZvcHRpb25hbCBmb3JjZSkpCiAoZGVjbGFy ZS1mdW5jdGlvbiBvcmctbWFyay1yaW5nLXB1c2ggIm9yZyIgKCZvcHRpb25hbCBwb3MgYnVm ZmVyKSkKQEAgLTYyMCw2ICs2MTksMTIgQEAgSWYgaXQgZGVjaWRlcyB0aGF0IGl0IGlzIG5v dCByZXNwb25zaWJsZSBmb3IgdGhpcyBsaW5rLCBpdCBtdXN0IHJldHVybgogbmlsIHRvIGlu ZGljYXRlIHRoYXQgT3JnIGNhbiBjb250aW51ZSB3aXRoIG90aGVyIG9wdGlvbnMgbGlrZQog ZXhhY3QgYW5kIGZ1enp5IHRleHQgc2VhcmNoLiIpCiAKKyhkZWZ2YXIgb3JnLWxpbmstcHJl Y2lzZS10YXJnZXQtbWFya2VyIChtYWtlLW1hcmtlcikKKyAgIk1hcmtlciBwb2ludGluZyB0 byB0aGUgdGFyZ2V0IGlkZW50aWZpZWQgZm9yIGEgbGluayBzZWFyY2ggc3RyaW5nLgorRWFj aCBjYWxsIHRvIGBvcmctbGluay1wcmVjaXNlLWxpbmstdGFyZ2V0JyB3aWxsIHNldCB0aGlz IG1hcmtlcgordG8gdGhlIGxvY2F0aW9uIHdoZXJlIHRoZSByZXR1cm5lZCB0YXJnZXQgd2Fz IGZvdW5kLiAgSWYgdGhlcmUKK3dhcyBubyB0YXJnZXQsIHRoZSBtYXJrZXIgd2lsbCBwb2lu dCBub3doZXJlLiIpCisKIAwKIDs7OyBJbnRlcm5hbCBWYXJpYWJsZXMKIApAQCAtODE1LDYg KzgyMCw3NCBAQCBzcGVjLiIKICAgKG9yZy13aXRoLXBvaW50LWF0IChjYXIgcmVnaW9uKQog ICAgIChub3QgKG9yZy1pbi1yZWdleHAgb3JnLWxpbmstYW55LXJlKSkpKQogCisoZGVmdW4g b3JnLWxpbmstLXRyeS1saW5rLXN0b3JlLWZ1bmN0aW9ucyAoaW50ZXJhY3RpdmU/KQorICAi VHJ5IHN0b3JpbmcgZXh0ZXJuYWwgbGlua3MsIHByb21wdGluZyBpZiBtb3JlIHRoYW4gb25l IGlzIHBvc3NpYmxlLgorCitFYWNoIGZ1bmN0aW9uIHJldHVybmVkIGJ5IGBvcmctc3RvcmUt bGluay1mdW5jdGlvbnMnIGlzIGNhbGxlZCBpbgordHVybi4gIElmIG11bHRpcGxlIGZ1bmN0 aW9ucyByZXR1cm4gbm9uLW5pbCwgcHJvbXB0IGZvciB3aGljaAorbGluayBzaG91bGQgYmUg c3RvcmVkLgorCitBcmd1bWVudCBJTlRFUkFDVElWRT8gaW5kaWNhdGVzIHdoZXRoZXIgYG9y Zy1zdG9yZS1saW5rJyB3YXMKK2NhbGxlZCBpbnRlcmFjdGl2ZWx5IGFuZCBpcyBwYXNzZWQg dG8gdGhlIGxpbmsgc3RvcmUgZnVuY3Rpb25zLgorCitSZXR1cm4gdCB3aGVuIGEgbGluayBo YXMgYmVlbiBzdG9yZWQgaW4gYG9yZy1saW5rLXN0b3JlLXByb3BzJy4iCisgIChsZXQgKChy ZXN1bHRzLWFsaXN0IG5pbCkpCisgICAgKGRvbGlzdCAoZiAob3JnLXN0b3JlLWxpbmstZnVu Y3Rpb25zKSkKKyAgICAgICh3aGVuIChjb25kaXRpb24tY2FzZSBuaWwKKyAgICAgICAgICAg ICAgICAoZnVuY2FsbCBmIGludGVyYWN0aXZlPykKKyAgICAgICAgICAgICAgOzsgRklYTUU6 IFRoZSBzdG9yZSBmdW5jdGlvbiB1c2VkICg8IE9yZyA5LjcpIHRvIGFjY2VwdAorICAgICAg ICAgICAgICA7OyBubyBhcmd1bWVudHM7IHByb3ZpZGUgYmFja3dhcmQgY29tcGF0aWJpbGl0 eSBzdXBwb3J0CisgICAgICAgICAgICAgIDs7IGZvciB0aGVtLgorICAgICAgICAgICAgICAo d3JvbmctbnVtYmVyLW9mLWFyZ3VtZW50cworICAgICAgICAgICAgICAgKGZ1bmNhbGwgZikp KQorICAgICAgICA7OyBGSVhNRTogcmV0dXJuIHZhbHVlIGlzIG5vdCBsaW5rJ3MgcGxpc3Qs IHNvIHdlIHN0b3JlIHRoZQorICAgICAgICA7OyBuZXcgdmFsdWUgYmVmb3JlIGl0IGlzIG1v ZGlmaWVkLiAgSXQgd291bGQgYmUgY2xlYW5lciB0bworICAgICAgICA7OyBhc2sgc3RvcmUg bGluayBmdW5jdGlvbnMgdG8gcmV0dXJuIHRoZSBwbGlzdCBpbnN0ZWFkLgorICAgICAgICAo cHVzaCAoY29ucyBmIChjb3B5LXNlcXVlbmNlIG9yZy1zdG9yZS1saW5rLXBsaXN0KSkKKyAg ICAgICAgICAgICAgcmVzdWx0cy1hbGlzdCkpKQorICAgIChwY2FzZSByZXN1bHRzLWFsaXN0 CisgICAgICAoYG5pbCBuaWwpCisgICAgICAoYCgoLF8gLiAsXykpIHQpCTtzaW5nbGUgY2hv aWNlOiBub3RoaW5nIHRvIGRvCisgICAgICAoYCgoLG5hbWUgLiAsXykgLiAsXykKKyAgICAg ICA7OyBSZWluc3RhdGUgbGluayBwbGlzdCBhc3NvY2lhdGVkIHRvIHRoZSBjaG9zZW4KKyAg ICAgICA7OyBmdW5jdGlvbi4KKyAgICAgICAoYXBwbHkgIydvcmctbGluay1zdG9yZS1wcm9w cworICAgICAgICAgICAgICAoY2RyIChhc3NvYy1zdHJpbmcKKyAgICAgICAgICAgICAgICAg ICAgKGNvbXBsZXRpbmctcmVhZAorICAgICAgICAgICAgICAgICAgICAgKGZvcm1hdCAiU3Rv cmUgbGluayB3aXRoIChkZWZhdWx0ICVzKTogIiBuYW1lKQorICAgICAgICAgICAgICAgICAg ICAgKG1hcGNhciAjJ2NhciByZXN1bHRzLWFsaXN0KQorICAgICAgICAgICAgICAgICAgICAg bmlsIHQgbmlsIG5pbCAoc3ltYm9sLW5hbWUgbmFtZSkpCisgICAgICAgICAgICAgICAgICAg IHJlc3VsdHMtYWxpc3QpKSkKKyAgICAgICB0KSkpKQorCisoZGVmdW4gb3JnLWxpbmstLWFk ZC10by1zdG9yZWQtbGlua3MgKGxpbmsgZGVzYykKKyAgIkFkZCBMSU5LIHRvIGBvcmctc3Rv cmVkLWxpbmtzJyB3aXRoIGRlc2NyaXB0aW9uIERFU0MuIgorICAoY29uZAorICAgKChub3Qg KG1lbWJlciAobGlzdCBsaW5rIGRlc2MpIG9yZy1zdG9yZWQtbGlua3MpKQorICAgIChwdXNo IChsaXN0IGxpbmsgZGVzYykgb3JnLXN0b3JlZC1saW5rcykKKyAgICAobWVzc2FnZSAiU3Rv cmVkOiAlcyIgKG9yIGRlc2MgbGluaykpKQorICAgKChlcXVhbCAobGlzdCBsaW5rIGRlc2Mp IChjYXIgb3JnLXN0b3JlZC1saW5rcykpCisgICAgKG1lc3NhZ2UgIlRoaXMgbGluayBoYXMg YWxyZWFkeSBiZWVuIHN0b3JlZCIpKQorICAgKHQKKyAgICAoc2V0cSBvcmctc3RvcmVkLWxp bmtzCisgICAgICAgICAgKGRlbGV0ZSAobGlzdCBsaW5rIGRlc2MpIG9yZy1zdG9yZWQtbGlu a3MpKQorICAgIChwdXNoIChsaXN0IGxpbmsgZGVzYykgb3JnLXN0b3JlZC1saW5rcykKKyAg ICAobWVzc2FnZSAiTGluayBtb3ZlZCB0byBmcm9udDogJXMiIChvciBkZXNjIGxpbmspKSkp KQorCisoZGVmdW4gb3JnLWxpbmstLWZpbGUtbGluay10by1oZXJlICgpCisgICJSZXR1cm4g YXMgKExJTksgLiBERVNDKSBhIGZpbGUgbGluayB3aXRoIHNlYXJjaCBzdHJpbmcgdG8gaGVy ZS4iCisgIChsZXQgKChsaW5rIChjb25jYXQgImZpbGU6IgorICAgICAgICAgICAgICAgICAg ICAgIChhYmJyZXZpYXRlLWZpbGUtbmFtZQorICAgICAgICAgICAgICAgICAgICAgICAoYnVm ZmVyLWZpbGUtbmFtZSAoYnVmZmVyLWJhc2UtYnVmZmVyKSkpKSkKKyAgICAgICAgZGVzYykK KyAgICAod2hlbiBvcmctbGluay1jb250ZXh0LWZvci1maWxlcworICAgICAgKHBjYXNlIChv cmctbGluay1wcmVjaXNlLWxpbmstdGFyZ2V0KQorICAgICAgICAoYG5pbCBuaWwpCisgICAg ICAgIChgKCxzZWFyY2gtc3RyaW5nIC4gLHNlYXJjaC1kZXNjKQorICAgICAgICAgKHNldHEg bGluayAoZm9ybWF0ICIlczo6JXMiIGxpbmsgc2VhcmNoLXN0cmluZykpCisgICAgICAgICAo c2V0cSBkZXNjIHNlYXJjaC1kZXNjKSkpKQorICAgIChjb25zIGxpbmsgZGVzYykpKQorCiAM CiA7OzsgUHVibGljIEFQSQogCkBAIC0xMDQxLDcgKzExMTQsOSBAQCBMSU5LIGlzIGVzY2Fw ZWQgd2l0aCBiYWNrc2xhc2hlcyBmb3IgaW5jbHVzaW9uIGluIGJ1ZmZlci4iCiAgICJMaXN0 IG9mIGZ1bmN0aW9ucyB0aGF0IGFyZSBjYWxsZWQgdG8gY3JlYXRlIGFuZCBzdG9yZSBhIGxp bmsuCiAKIFRoZSBmdW5jdGlvbnMgYXJlIGRlZmluZWQgaW4gdGhlIGA6c3RvcmUnIHByb3Bl cnR5IG9mCi1gb3JnLWxpbmstcGFyYW1ldGVycycuCitgb3JnLWxpbmstcGFyYW1ldGVycycu ICBFYWNoIGZ1bmN0aW9uIHNob3VsZCBhY2NlcHQgYW4gYXJndW1lbnQKK0lOVEVSQUNUSVZF PyB3aGljaCBpbmRpY2F0ZXMgd2hldGhlciB0aGUgdXNlciBoYXMgaW5pdGlhdGVkCitgb3Jn LXN0b3JlLWxpbmsnIGludGVyYWN0aXZlbHkuCiAKIEVhY2ggZnVuY3Rpb24gd2lsbCBiZSBj YWxsZWQgaW4gdHVybiB1bnRpbCBvbmUgcmV0dXJucyBhIG5vbi1uaWwKIHZhbHVlLiAgRWFj aCBmdW5jdGlvbiBzaG91bGQgY2hlY2sgaWYgaXQgaXMgcmVzcG9uc2libGUgZm9yCkBAIC0x MjgwLDcgKzEzNTUsMTEgQEAgcmVzcGVjdHMgYnVmZmVyIG5hcnJvd2luZy4iCiAJICAgKHll cy1vci1uby1wICJObyBtYXRjaCAtIGNyZWF0ZSB0aGlzIGFzIGEgbmV3IGhlYWRpbmc/ICIp KQogICAgICAgKGdvdG8tY2hhciAocG9pbnQtbWF4KSkKICAgICAgICh1bmxlc3MgKGJvbHAp IChuZXdsaW5lKSkKLSAgICAgIChvcmctaW5zZXJ0LWhlYWRpbmcgbmlsIHQgdCkKKyAgICAg IDs7IEZpbmQgYXBwcm9wcmlhdGUgbGV2ZWwgZm9yIG5ldyBoZWFkaW5nCisgICAgICAobGV0 ICgobGV2ZWwgKHNhdmUtZXhjdXJzaW9uCisgICAgICAgICAgICAgICAgICAgICAoZ290by1j aGFyIChwb2ludC1taW4pKQorICAgICAgICAgICAgICAgICAgICAgKCsgMSAob3IgKG9yZy1j dXJyZW50LWxldmVsKSAwKSkpKSkKKyAgICAgICAgKG9yZy1pbnNlcnQtaGVhZGluZyBuaWwg dCBsZXZlbCkpCiAgICAgICAoaW5zZXJ0IHMgIlxuIikKICAgICAgIChmb3J3YXJkLWxpbmUg LTEpKQogICAgICA7OyBPbmx5IGhlYWRsaW5lcyBhcmUgbG9va2VkIGFmdGVyLiAgTm8gbmVl ZCB0byBwcm9jZXNzCkBAIC0xMzMyLDYgKzE0MTEsNzEgQEAgcHJpb3JpdHkgY29va2llIG9y IHRhZy4iCiAJICAob3JnLWxpbmstLW5vcm1hbGl6ZS1zdHJpbmcKIAkgICAob3Igc3RyaW5n IChvcmctZ2V0LWhlYWRpbmcgdCB0IHQgdCkpKSkpCiAKKyhkZWZ1biBvcmctbGluay1wcmVj aXNlLWxpbmstdGFyZ2V0ICgpCisgICJEZXRlcm1pbmUgc2VhcmNoIHN0cmluZyBhbmQgZGVz Y3JpcHRpb24gZm9yIHN0b3JpbmcgYSBsaW5rLgorCitJZiBhIHNlYXJjaCBzdHJpbmcgKHNl ZSBgb3JnLWxpbmstc2VhcmNoJykgaXMgZm91bmQsIHJldHVybiBjb25zCitjZWxsIChTRUFS Q0gtU1RSSU5HIC4gREVTQykuICBPdGhlcndpc2UsIHJldHVybiBuaWwuCisKK0lmIHRoZXJl IGlzIGFuIGFjdGl2ZSByZWdpb24sIHRoZSBjb250ZW50cyAob3IgYSBwYXJ0IG9mIGl0LCBz ZWUKK2BvcmctbGluay1jb250ZXh0LWZvci1maWxlcycpIGlzIHVzZWQgYXMgdGhlIHNlYXJj aCBzdHJpbmcuCisKK0luIE9yZyBidWZmZXJzLCBpZiBwb2ludCBpcyBhdCBhIG5hbWVkIGVs ZW1lbnQgKHN1Y2ggYXMgYSBzb3VyY2UKK2Jsb2NrKSwgdGhlIG5hbWUgaXMgdXNlZCBmb3Ig dGhlIHNlYXJjaCBzdHJpbmcuICBJZiBhdCBhIGhlYWRpbmcsCitpdHMgQ1VTVE9NX0lEIGlz IHVzZWQgdG8gZm9ybSBhIHNlYXJjaCBzdHJpbmcgb2YgdGhlIGZvcm0KK1wiI2lkXCIsIGlm IHByZXNlbnQsIG90aGVyd2lzZSB0aGUgY3VycmVudCBoZWFkaW5nIHRleHQgaXMgdXNlZAor aW4gdGhlIGZvcm0gXCIqSGVhZGluZ1wiLgorCitJZiBub25lIG9mIHRob3NlIGZpbmRzIGEg c3VpdGFibGUgc2VhcmNoIHN0cmluZywgdGhlIGN1cnJlbnQgbGluZQoraXMgdXNlZCBhcyB0 aGUgc2VhcmNoIHN0cmluZy4KKworVGhlIGRlc2NyaXB0aW9uIERFU0MgaXMgbmlsIChtZWFu aW5nIHRoZSB1c2VyIHdpbGwgYmUgcHJvbXB0ZWQKK2ZvciBhIGRlc2NyaXB0aW9uIHdoZW4g aW5zZXJ0aW5nIHRoZSBsaW5rKSBmb3Igc2VhcmNoIHN0cmluZ3MKK2Jhc2VkIG9uIGEgcmVn aW9uIG9yIHRoZSBjdXJyZW50IGxpbmUuICBGb3Igb3RoZXIgY2FzZXMsIERFU0MgaXMKK2Eg Y2xlYW5lZC11cCB2ZXJzaW9uIG9mIHRoZSBuYW1lIG9yIGhlYWRpbmcgYXQgcG9pbnQuCisK K2BvcmctbGluay1wcmVjaXNlLXRhcmdldC1tYXJrZXInIGlzIHNldCB0byB0aGUgbG9jYXRp b24gdG8gd2hpY2ggdGhlCitzZWFyY2ggc3RyaW5nIHJlZmVycywgb3IgdG8gbm93aGVyZSBp ZiBhIHRhcmdldCBpcyBub3QgaWRlbnRpZmllZC4iCisgIChtb3ZlLW1hcmtlciBvcmctbGlu ay1wcmVjaXNlLXRhcmdldC1tYXJrZXIgbmlsKQorICAobGV0KiAoKHJlZ2lvbiAob3JnLWxp bmstLWNvbnRleHQtZnJvbS1yZWdpb24pKQorICAgICAgICAgKHJlc3VsdAorICAgICAgICAg IChjb25kCisgICAgICAgICAgIChyZWdpb24KKyAgICAgICAgICAgIChtb3ZlLW1hcmtlciBv cmctbGluay1wcmVjaXNlLXRhcmdldC1tYXJrZXIgKHJlZ2lvbi1iZWdpbm5pbmcpKQorICAg ICAgICAgICAgKGNvbnMgKG9yZy1saW5rLS1ub3JtYWxpemUtc3RyaW5nIHJlZ2lvbiB0KSBu aWwpKQorCisgICAgICAgICAgICgoZGVyaXZlZC1tb2RlLXAgJ29yZy1tb2RlKQorICAgICAg ICAgICAgKGxldCogKChlbGVtZW50IChvcmctZWxlbWVudC1hdC1wb2ludCkpCisgICAgICAg ICAgICAgICAgICAgKG5hbWUgKG9yZy1lbGVtZW50LXByb3BlcnR5IDpuYW1lIGVsZW1lbnQp KQorICAgICAgICAgICAgICAgICAgIChoZWFkaW5nIChvcmctZWxlbWVudC1saW5lYWdlIGVs ZW1lbnQgJyhoZWFkbGluZSBpbmxpbmV0YXNrKSB0KSkKKyAgICAgICAgICAgICAgICAgICAo Y3VzdG9tLWlkIChvcmctZW50cnktZ2V0IGhlYWRpbmcgIkNVU1RPTV9JRCIpKSkKKyAgICAg ICAgICAgICAgKGNvbmQKKyAgICAgICAgICAgICAgIChuYW1lCisgICAgICAgICAgICAgICAg KG1vdmUtbWFya2VyIG9yZy1saW5rLXByZWNpc2UtdGFyZ2V0LW1hcmtlcgorICAgICAgICAg ICAgICAgICAgICAgICAgICAgICAob3JnLWVsZW1lbnQtYmVnaW4gZWxlbWVudCkpCisgICAg ICAgICAgICAgICAgKGNvbnMgbmFtZSBuYW1lKSkKKyAgICAgICAgICAgICAgICgob3JnLWJl Zm9yZS1maXJzdC1oZWFkaW5nLXApCisgICAgICAgICAgICAgICAgKG1vdmUtbWFya2VyIG9y Zy1saW5rLXByZWNpc2UtdGFyZ2V0LW1hcmtlcgorICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAobGluZS1iZWdpbm5pbmctcG9zaXRpb24pKQorICAgICAgICAgICAgICAgIChjb25z IChvcmctbGluay0tbm9ybWFsaXplLXN0cmluZyAob3JnLWN1cnJlbnQtbGluZS1zdHJpbmcp IHQpIG5pbCkpCisgICAgICAgICAgICAgICAoaGVhZGluZworICAgICAgICAgICAgICAgICht b3ZlLW1hcmtlciBvcmctbGluay1wcmVjaXNlLXRhcmdldC1tYXJrZXIKKyAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKG9yZy1lbGVtZW50LWJlZ2luIGhlYWRpbmcpKQorICAgICAg ICAgICAgICAgIChjb25zIChpZiBjdXN0b20taWQgKGNvbmNhdCAiIyIgY3VzdG9tLWlkKQor ICAgICAgICAgICAgICAgICAgICAgICAgKG9yZy1saW5rLWhlYWRpbmctc2VhcmNoLXN0cmlu ZykpCisgICAgICAgICAgICAgICAgICAgICAgKG9yZy1saW5rLS1ub3JtYWxpemUtc3RyaW5n CisgICAgICAgICAgICAgICAgICAgICAgIChvcmctZ2V0LWhlYWRpbmcgdCB0IHQgdCkpKSkp KSkKKworICAgICAgICAgICA7OyBOb3QgaW4gYW4gb3JnLW1vZGUgYnVmZmVyLCBubyByZWdp b24KKyAgICAgICAgICAgKHQKKyAgICAgICAgICAgIChtb3ZlLW1hcmtlciBvcmctbGluay1w cmVjaXNlLXRhcmdldC1tYXJrZXIKKyAgICAgICAgICAgICAgICAgICAgICAgICAobGluZS1i ZWdpbm5pbmctcG9zaXRpb24pKQorICAgICAgICAgICAgKGNvbnMgKG9yZy1saW5rLS1ub3Jt YWxpemUtc3RyaW5nIChvcmctY3VycmVudC1saW5lLXN0cmluZykgdCkgbmlsKSkpKSkKKwor ICAgIDs7IE9ubHkgdXNlIHNlYXJjaCBvcHRpb24gaWYgdGhlcmUgaXMgc29tZSB0ZXh0Lgor ICAgICh3aGVuIChvcmctc3RyaW5nLW53LXAgKGNhciByZXN1bHQpKQorICAgICAgcmVzdWx0 KSkpCisKIChkZWZ1biBvcmctbGluay1vcGVuLWFzLWZpbGUgKHBhdGggaW4tZW1hY3MpCiAg ICJQcmV0ZW5kIFBBVEggaXMgYSBmaWxlIG5hbWUgYW5kIG9wZW4gaXQuCiAKQEAgLTE0MDQs NyArMTU0OCw3IEBAIFBBVEggaXMgYSBzeW1ib2wgbmFtZSwgYXMgYSBzdHJpbmcuIgogICAg ICgoYW5kIChwcmVkIGJvdW5kcCkgdmFyaWFibGUpIChkZXNjcmliZS12YXJpYWJsZSB2YXJp YWJsZSkpCiAgICAgKG5hbWUgKHVzZXItZXJyb3IgIlVua25vd24gZnVuY3Rpb24gb3IgdmFy aWFibGU6ICVzIiBuYW1lKSkpKQogCi0oZGVmdW4gb3JnLWxpbmstLXN0b3JlLWhlbHAgKCkK KyhkZWZ1biBvcmctbGluay0tc3RvcmUtaGVscCAoJm9wdGlvbmFsIF9pbnRlcmFjdGl2ZT8p CiAgICJTdG9yZSBcImhlbHBcIiB0eXBlIGxpbmsuIgogICAod2hlbiAoZXEgbWFqb3ItbW9k ZSAnaGVscC1tb2RlKQogICAgIChsZXQgKChzeW1ib2wKQEAgLTE1MzksNyArMTY4MywxMiBA QCBwcmVmaXggQVJHIGZvcmNlcyBzdG9yaW5nIGEgbGluayBmb3IgZWFjaCBsaW5lIGluIHRo ZQogYWN0aXZlIHJlZ2lvbi4KIAogQXNzdW1lIHRoZSBmdW5jdGlvbiBpcyBjYWxsZWQgaW50 ZXJhY3RpdmVseSBpZiBJTlRFUkFDVElWRT8gaXMKLW5vbi1uaWwuIgorbm9uLW5pbC4KKwor SW4gT3JnIGJ1ZmZlcnMsIGFuIGFkZGl0aW9uYWwgXCJodW1hbi1yZWFkYWJsZVwiIHNpbXBs ZSBmaWxlIGxpbmsKK2lzIHN0b3JlZCBhcyBhbiBhbHRlcm5hdGl2ZSB0byBwZXJzaXN0ZW50 IG9yZy1pZCBvciBvdGhlciBsaW5rcywKK2lmIGF0IGEgaGVhZGluZyB3aXRoIGEgQ1VTVE9N X0lEIHByb3BlcnR5IG9yIGFuIGVsZW1lbnQgd2l0aCBhCitOQU1FLiIKICAgKGludGVyYWN0 aXZlICJQXG5wIikKICAgKG9yZy1sb2FkLW1vZHVsZXMtbWF5YmUpCiAgIChpZiAoYW5kIChl cXVhbCBhcmcgJyg2NCkpIChvcmctcmVnaW9uLWFjdGl2ZS1wKSkKQEAgLTE1NTQsMzYgKzE3 MDMsMTkgQEAgbm9uLW5pbC4iCiAJICAgIChtb3ZlLWJlZ2lubmluZy1vZi1saW5lIDIpCiAJ ICAgIChzZXQtbWFyayAocG9pbnQpKSkpKQogICAgIChzZXRxIG9yZy1zdG9yZS1saW5rLXBs aXN0IG5pbCkKLSAgICAobGV0IChsaW5rIGNwbHR4dCBkZXNjIHNlYXJjaCBjdXN0b20taWQg YWdlbmRhLWxpbmspIDs7IGRlc2NyaXB0aW9uCisgICAgOzsgTmVnYXRlIGBvcmctY29udGV4 dC1pbi1maWxlLWxpbmtzJyB3aGVuIGdpdmVuIGEgc2luZ2xlIHVuaXZlcnNhbCBhcmcuCisg ICAgKGxldCAoKG9yZy1saW5rLWNvbnRleHQtZm9yLWZpbGVzIChvcmcteG9yIG9yZy1saW5r LWNvbnRleHQtZm9yLWZpbGVzCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChlcXVhbCBhcmcgJyg0KSkpKQorICAgICAgICAgIGxpbmsgY3BsdHh0 IGRlc2Mgc2VhcmNoIGFnZW5kYS1saW5rKSA7OyBkZXNjcmlwdGlvbgogICAgICAgKGNvbmQK ICAgICAgICA7OyBTdG9yZSBhIGxpbmsgdXNpbmcgYW4gZXh0ZXJuYWwgbGluayB0eXBlLCBp ZiBhbnkgZnVuY3Rpb24gaXMKLSAgICAgICA7OyBhdmFpbGFibGUuIElmIG1vcmUgdGhhbiBv bmUgY2FuIGdlbmVyYXRlIGEgbGluayBmcm9tIGN1cnJlbnQKLSAgICAgICA7OyBsb2NhdGlv biwgYXNrIHdoaWNoIG9uZSB0byB1c2UuCisgICAgICAgOzsgYXZhaWxhYmxlLCB1bmxlc3Mg ZXh0ZXJuYWwgbGluayB0eXBlcyBhcmUgc2tpcHBlZCBmb3IgdGhpcworICAgICAgIDs7IGNh bGwgdXNpbmcgdHdvIHVuaXZlcnNhbCBhcmdzLiAgSWYgbW9yZSB0aGFuIG9uZSBmdW5jdGlv bgorICAgICAgIDs7IGNhbiBnZW5lcmF0ZSBhIGxpbmsgZnJvbSBjdXJyZW50IGxvY2F0aW9u LCBhc2sgdGhlIHVzZXIKKyAgICAgICA7OyB3aGljaCBvbmUgdG8gdXNlLgogICAgICAgICgo YW5kIChub3QgKGVxdWFsIGFyZyAnKDE2KSkpCi0JICAgICAobGV0ICgocmVzdWx0cy1hbGlz dCBuaWwpKQotCSAgICAgICAoZG9saXN0IChmIChvcmctc3RvcmUtbGluay1mdW5jdGlvbnMp KQotCQkgKHdoZW4gKGZ1bmNhbGwgZikKLQkJICAgOzsgWFhYOiByZXR1cm4gdmFsdWUgaXMg bm90IGxpbmsncyBwbGlzdCwgc28gd2UKLQkJICAgOzsgc3RvcmUgdGhlIG5ldyB2YWx1ZSBi ZWZvcmUgaXQgaXMgbW9kaWZpZWQuICBJdAotCQkgICA7OyB3b3VsZCBiZSBjbGVhbmVyIHRv IGFzayBzdG9yZSBsaW5rIGZ1bmN0aW9ucyB0bwotCQkgICA7OyByZXR1cm4gdGhlIHBsaXN0 IGluc3RlYWQuCi0JCSAgIChwdXNoIChjb25zIGYgKGNvcHktc2VxdWVuY2Ugb3JnLXN0b3Jl LWxpbmstcGxpc3QpKQotCQkJIHJlc3VsdHMtYWxpc3QpKSkKLQkgICAgICAgKHBjYXNlIHJl c3VsdHMtYWxpc3QKLQkJIChgbmlsIG5pbCkKLQkJIChgKCgsXyAuICxfKSkgdCkJO3Npbmds ZSBjaG9pY2U6IG5vdGhpbmcgdG8gZG8KLQkJIChgKCgsbmFtZSAuICxfKSAuICxfKQotCQkg IDs7IFJlaW5zdGF0ZSBsaW5rIHBsaXN0IGFzc29jaWF0ZWQgdG8gdGhlIGNob3NlbgotCQkg IDs7IGZ1bmN0aW9uLgotCQkgIChhcHBseSAjJ29yZy1saW5rLXN0b3JlLXByb3BzCi0JCQkg KGNkciAoYXNzb2Mtc3RyaW5nCi0JCQkgICAgICAgKGNvbXBsZXRpbmctcmVhZAotICAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAoZm9ybWF0ICJTdG9yZSBsaW5rIHdpdGggKGRl ZmF1bHQgJXMpOiAiIG5hbWUpCi0gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICht YXBjYXIgIydjYXIgcmVzdWx0cy1hbGlzdCkKLSAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgbmlsIHQgbmlsIG5pbCAoc3ltYm9sLW5hbWUgbmFtZSkpCi0JCQkgICAgICAgcmVz dWx0cy1hbGlzdCkpKQotCQkgIHQpKSkpCi0JKHNldHEgbGluayAocGxpc3QtZ2V0IG9yZy1z dG9yZS1saW5rLXBsaXN0IDpsaW5rKSkKKyAgICAgICAgICAgICAob3JnLWxpbmstLXRyeS1s aW5rLXN0b3JlLWZ1bmN0aW9ucyBpbnRlcmFjdGl2ZT8pKQorICAgICAgICAoc2V0cSBsaW5r IChwbGlzdC1nZXQgb3JnLXN0b3JlLWxpbmstcGxpc3QgOmxpbmspKQogICAgICAgICA7OyBJ ZiBzdG9yZSBmdW5jdGlvbiBhY3R1YWxseSBzZXQgYDpkZXNjcmlwdGlvbicgcHJvcGVydHks IHVzZQogICAgICAgICA7OyBpdCwgZXZlbiBpZiBpdCBpcyBuaWwuICBPdGhlcndpc2UsIGZh bGxiYWNrIHRvIG5pbCAoYXNrIHVzZXIpLgogCShzZXRxIGRlc2MgKHBsaXN0LWdldCBvcmct c3RvcmUtbGluay1wbGlzdCA6ZGVzY3JpcHRpb24pKSkKQEAgLTE2MzQsNiArMTc2Niw3IEBA IG5vbi1uaWwuIgogCSAgICAob3JnLXdpdGgtcG9pbnQtYXQgbQogCSAgICAgIChzZXRxIGFn ZW5kYS1saW5rIChvcmctc3RvcmUtbGluayBuaWwgaW50ZXJhY3RpdmU/KSkpKSkpCiAKKyAg ICAgICA7OyBDYWxlbmRhciBtb2RlCiAgICAgICAgKChlcSBtYWpvci1tb2RlICdjYWxlbmRh ci1tb2RlKQogCShsZXQgKChjZCAoY2FsZW5kYXItY3Vyc29yLXRvLWRhdGUpKSkKIAkgIChz ZXRxIGxpbmsKQEAgLTE2NDIsNiArMTc3NSw3IEBAIG5vbi1uaWwuIgogCQkgKG9yZy1lbmNv ZGUtdGltZSAwIDAgMCAobnRoIDEgY2QpIChudGggMCBjZCkgKG50aCAyIGNkKSkpKQogCSAg KG9yZy1saW5rLXN0b3JlLXByb3BzIDp0eXBlICJjYWxlbmRhciIgOmRhdGUgY2QpKSkKIAor ICAgICAgIDs7IEltYWdlIG1vZGUKICAgICAgICAoKGVxIG1ham9yLW1vZGUgJ2ltYWdlLW1v ZGUpCiAJKHNldHEgY3BsdHh0IChjb25jYXQgImZpbGU6IgogCQkJICAgICAoYWJicmV2aWF0 ZS1maWxlLW5hbWUgYnVmZmVyLWZpbGUtbmFtZSkpCkBAIC0xNjU5LDE1ICsxNzkzLDIyIEBA IG5vbi1uaWwuIgogCSAgKHNldHEgY3BsdHh0IChjb25jYXQgImZpbGU6IiBmaWxlKQogCQls aW5rIGNwbHR4dCkpKQogCisgICAgICAgOzsgVHJ5IGBvcmctY3JlYXRlLWZpbGUtc2VhcmNo LWZ1bmN0aW9uc2AuICBJZiBhbnkgYXJlCisgICAgICAgOzsgc3VjY2Vzc2Z1bCwgY3JlYXRl IGEgZmlsZSBsaW5rIHRvIHRoZSBjdXJyZW50IGJ1ZmZlciB3aXRoCisgICAgICAgOzsgdGhl IHByb3ZpZGVkIHNlYXJjaCBzdHJpbmcuICAoc2V0cyBgbGlua2AgYW5kIGBjcGx0eHRgIHRv CisgICAgICAgOzsgdGhlIHNhbWUgdGhpbmc7IGl0IGxvb2tzIGxpa2UgdGhlIGludGVudGlv biBvcmlnaW5hbGx5IHdhcworICAgICAgIDs7IHRoYXQgY3BsdHh0IHdhcyBhIGRlc2NyaXB0 aW9uLCB3aGljaCBtaWdodCBoYXZlIGJlZW4gc2V0IGJ5CisgICAgICAgOzsgdGhlIHNlYXJj aC1mdW5jdGlvbiAocmVtb3ZlZCBpbiBzd2l0Y2ggdG8gbGV4aWNhbCBiaW5kaW5nKSkuCiAg ICAgICAgKChzZXRxIHNlYXJjaCAocnVuLWhvb2std2l0aC1hcmdzLXVudGlsLXN1Y2Nlc3MK IAkJICAgICAgJ29yZy1jcmVhdGUtZmlsZS1zZWFyY2gtZnVuY3Rpb25zKSkKIAkoc2V0cSBs aW5rIChjb25jYXQgImZpbGU6IiAoYWJicmV2aWF0ZS1maWxlLW5hbWUgYnVmZmVyLWZpbGUt bmFtZSkKIAkJCSAgICI6OiIgc2VhcmNoKSkKIAkoc2V0cSBjcGx0eHQgKG9yIGxpbmspKSkg OzsgZGVzY3JpcHRpb24KIAorICAgICAgIDs7IE1haW4gbG9naWMgZm9yIHN0b3JpbmcgYnVp bHQtaW4gbGluayB0eXBlcyBpbiBvcmctbW9kZQorICAgICAgIDs7IGJ1ZmZlcnMKICAgICAg ICAoKGFuZCAoYnVmZmVyLWZpbGUtbmFtZSAoYnVmZmVyLWJhc2UtYnVmZmVyKSkgKGRlcml2 ZWQtbW9kZS1wICdvcmctbW9kZSkpCiAJKG9yZy13aXRoLWxpbWl0ZWQtbGV2ZWxzCi0JIChz ZXRxIGN1c3RvbS1pZCAob3JnLWVudHJ5LWdldCBuaWwgIkNVU1RPTV9JRCIpKQogCSAoY29u ZAogCSAgOzsgU3RvcmUgYSBsaW5rIHVzaW5nIHRoZSB0YXJnZXQgYXQgcG9pbnQKIAkgICgo b3JnLWluLXJlZ2V4cCAiW148XTw8XFwoW148Pl0rXFwpPj5bXj5dIiAxKQpAQCAtMTY4MSw3 NCArMTgyMiwyMSBAQCBub24tbmlsLiIKICAgICAgICAgICAgICAgICAgOzsgbGlua3MuICBN YXliZSB0aGUgY2FzZSBvZiBpZGVudGljYWwgdGFyZ2V0IGFuZAogICAgICAgICAgICAgICAg ICA7OyBkZXNjcmlwdGlvbiBzaG91bGQgYmUgaGFuZGxlZCBieSBgb3JnLWluc2VydC1saW5r Jy4KICAgICAgICAgICAgICAgICAgY3BsdHh0IG5pbAotICAgICAgICAgICAgICAgICBkZXNj IG5pbAotICAgICAgICAgICAgICAgICA7OyBEbyBub3QgYXBwZW5kICNDVVNUT01fSUQgbGlu ayBiZWxvdy4KLSAgICAgICAgICAgICAgICAgY3VzdG9tLWlkIG5pbCkpCi0JICAoKGFuZCAo ZmVhdHVyZXAgJ29yZy1pZCkKLQkJKG9yIChlcSBvcmctaWQtbGluay10by1vcmctdXNlLWlk IHQpCi0JCSAgICAoYW5kIGludGVyYWN0aXZlPwotCQkJIChvciAoZXEgb3JnLWlkLWxpbmst dG8tb3JnLXVzZS1pZCAnY3JlYXRlLWlmLWludGVyYWN0aXZlKQotCQkJICAgICAoYW5kIChl cSBvcmctaWQtbGluay10by1vcmctdXNlLWlkCi0JCQkJICAgICAgJ2NyZWF0ZS1pZi1pbnRl cmFjdGl2ZS1hbmQtbm8tY3VzdG9tLWlkKQotCQkJCSAgKG5vdCBjdXN0b20taWQpKSkpCi0J CSAgICAoYW5kIG9yZy1pZC1saW5rLXRvLW9yZy11c2UtaWQgKG9yZy1lbnRyeS1nZXQgbmls ICJJRCIpKSkpCi0JICAgOzsgU3RvcmUgYSBsaW5rIHVzaW5nIHRoZSBJRCBhdCBwb2ludAot CSAgIChzZXRxIGxpbmsgKGNvbmRpdGlvbi1jYXNlIG5pbAotCQkJICAocHJvZzEgKG9yZy1p ZC1zdG9yZS1saW5rKQotCQkJICAgIChzZXRxIGRlc2MgKHBsaXN0LWdldCBvcmctc3RvcmUt bGluay1wbGlzdCA6ZGVzY3JpcHRpb24pKSkKLQkJCShlcnJvcgotCQkJIDs7IFByb2JhYmx5 IGJlZm9yZSBmaXJzdCBoZWFkbGluZSwgbGluayBvbmx5IHRvIGZpbGUKLQkJCSAoY29uY2F0 ICJmaWxlOiIKLQkJCQkgKGFiYnJldmlhdGUtZmlsZS1uYW1lCi0JCQkJICAoYnVmZmVyLWZp bGUtbmFtZSAoYnVmZmVyLWJhc2UtYnVmZmVyKSkpKSkpKSkKLQkgICh0CisgICAgICAgICAg ICAgICAgIGRlc2MgbmlsKSkKKyAgICAgICAgICAodAogCSAgIDs7IEp1c3QgbGluayB0byBj dXJyZW50IGhlYWRsaW5lLgotCSAgIChzZXRxIGNwbHR4dCAoY29uY2F0ICJmaWxlOiIKLQkJ CQkoYWJicmV2aWF0ZS1maWxlLW5hbWUKLQkJCQkgKGJ1ZmZlci1maWxlLW5hbWUgKGJ1ZmZl ci1iYXNlLWJ1ZmZlcikpKSkpCi0JICAgOzsgQWRkIGEgY29udGV4dCBzZWFyY2ggc3RyaW5n LgotCSAgICh3aGVuIChvcmcteG9yIG9yZy1saW5rLWNvbnRleHQtZm9yLWZpbGVzIChlcXVh bCBhcmcgJyg0KSkpCi0JICAgICAobGV0KiAoKGVsZW1lbnQgKG9yZy1lbGVtZW50LWF0LXBv aW50KSkKLQkJICAgIChuYW1lIChvcmctZWxlbWVudC1wcm9wZXJ0eSA6bmFtZSBlbGVtZW50 KSkKLQkJICAgIChjb250ZXh0Ci0JCSAgICAgKGNvbmQKLQkJICAgICAgKChsZXQgKChyZWdp b24gKG9yZy1saW5rLS1jb250ZXh0LWZyb20tcmVnaW9uKSkpCi0JCQkgKGFuZCByZWdpb24g KG9yZy1saW5rLS1ub3JtYWxpemUtc3RyaW5nIHJlZ2lvbiB0KSkpKQotCQkgICAgICAobmFt ZSkKLQkJICAgICAgKChvcmctYmVmb3JlLWZpcnN0LWhlYWRpbmctcCkKLQkJICAgICAgIChv cmctbGluay0tbm9ybWFsaXplLXN0cmluZyAob3JnLWN1cnJlbnQtbGluZS1zdHJpbmcpIHQp KQotCQkgICAgICAodCAob3JnLWxpbmstaGVhZGluZy1zZWFyY2gtc3RyaW5nKSkpKSkKLQkg ICAgICAgKHdoZW4gKG9yZy1zdHJpbmctbnctcCBjb250ZXh0KQotCQkgKHNldHEgY3BsdHh0 IChmb3JtYXQgIiVzOjolcyIgY3BsdHh0IGNvbnRleHQpKQotCQkgKHNldHEgZGVzYwotCQkg ICAgICAgKG9yIG5hbWUKLQkJCSAgIDs7IEFsdGhvdWdoIGRlc2NyaXB0aW9uIGlzIG5vdCBh IHNlYXJjaAotCQkJICAgOzsgc3RyaW5nLCB1c2UgYG9yZy1saW5rLS1ub3JtYWxpemUtc3Ry aW5nJwotCQkJICAgOzsgdG8gcHJldHRpZnkgaXQgKGNvbnRpZ3VvdXMgd2hpdGUgc3BhY2Vz KQotCQkJICAgOzsgYW5kIHJlbW92ZSB2b2xhdGlsZSBjb250ZW50cyAoc3RhdGlzdGljcwot CQkJICAgOzsgY29va2llcykuCi0JCQkgICAoYW5kIChub3QgKG9yZy1iZWZvcmUtZmlyc3Qt aGVhZGluZy1wKSkKLQkJCQkob3JnLWxpbmstLW5vcm1hbGl6ZS1zdHJpbmcKLQkJCQkgKG9y Zy1nZXQtaGVhZGluZyB0IHQgdCB0KSkpCi0JCQkgICAiTk9ORSIpKSkpKQotCSAgIChzZXRx IGxpbmsgY3BsdHh0KSkpKSkKKyAgICAgICAgICAgKGxldCAoKGhlcmUgKG9yZy1saW5rLS1m aWxlLWxpbmstdG8taGVyZSkpKQorICAgICAgICAgICAgIChzZXRxIGNwbHR4dCAoY2FyIGhl cmUpKQorICAgICAgICAgICAgIChzZXRxIGRlc2MgKGNkciBoZXJlKSkpCisgICAgICAgICAg IChzZXRxIGxpbmsgY3BsdHh0KSkpKSkKIAorICAgICAgIDs7IEJ1ZmZlciBsaW5rZWQgdG8g ZmlsZSwgYnV0IG5vdCBhbiBvcmctbW9kZSBidWZmZXIuCiAgICAgICAgKChidWZmZXItZmls ZS1uYW1lIChidWZmZXItYmFzZS1idWZmZXIpKQogCTs7IEp1c3QgbGluayB0byB0aGlzIGZp bGUgaGVyZS4KLQkoc2V0cSBjcGx0eHQgKGNvbmNhdCAiZmlsZToiCi0JCQkgICAgIChhYmJy ZXZpYXRlLWZpbGUtbmFtZQotCQkJICAgICAgKGJ1ZmZlci1maWxlLW5hbWUgKGJ1ZmZlci1i YXNlLWJ1ZmZlcikpKSkpCi0JOzsgQWRkIGEgY29udGV4dCBzZWFyY2ggc3RyaW5nLgotCSh3 aGVuIChvcmcteG9yIG9yZy1saW5rLWNvbnRleHQtZm9yLWZpbGVzIChlcXVhbCBhcmcgJyg0 KSkpCi0JICAobGV0ICgoY29udGV4dCAob3JnLWxpbmstLW5vcm1hbGl6ZS1zdHJpbmcKLQkJ CSAgKG9yIChvcmctbGluay0tY29udGV4dC1mcm9tLXJlZ2lvbikKLQkJCSAgICAgIChvcmct Y3VycmVudC1saW5lLXN0cmluZykpCi0JCQkgIHQpKSkKLQkgICAgOzsgT25seSB1c2Ugc2Vh cmNoIG9wdGlvbiBpZiB0aGVyZSBpcyBzb21lIHRleHQuCi0JICAgICh3aGVuIChvcmctc3Ry aW5nLW53LXAgY29udGV4dCkKLQkgICAgICAoc2V0cSBjcGx0eHQgKGZvcm1hdCAiJXM6OiVz IiBjcGx0eHQgY29udGV4dCkpCi0JICAgICAgKHNldHEgZGVzYyAiTk9ORSIpKSkpCi0JKHNl dHEgbGluayBjcGx0eHQpKQorICAgICAgICAobGV0ICgoaGVyZSAob3JnLWxpbmstLWZpbGUt bGluay10by1oZXJlKSkpCisgICAgICAgICAgKHNldHEgY3BsdHh0IChjYXIgaGVyZSkpCisg ICAgICAgICAgKHNldHEgZGVzYyAoY2RyIGhlcmUpKSkKKyAgICAgICAgKHNldHEgbGluayBj cGx0eHQpKQogCiAgICAgICAgKGludGVyYWN0aXZlPwogCSh1c2VyLWVycm9yICJObyBtZXRo b2QgZm9yIHN0b3JpbmcgYSBsaW5rIGZyb20gdGhpcyBidWZmZXIiKSkKQEAgLTE3NjQsMjQg KzE4NTIsMTggQEAgbm9uLW5pbC4iCiAgICAgICA7OyBTdG9yZSBhbmQgcmV0dXJuIHRoZSBs aW5rCiAgICAgICAoaWYgKG5vdCAoYW5kIGludGVyYWN0aXZlPyBsaW5rKSkKIAkgIChvciBh Z2VuZGEtbGluayAoYW5kIGxpbmsgKG9yZy1saW5rLW1ha2Utc3RyaW5nIGxpbmsgZGVzYykp KQotICAgICAgICAoZG90aW1lcyAoXyAoaWYgY3VzdG9tLWlkIDIgMSkpIDsgU3RvcmUgMiBs aW5rcyB3aGVuIENVU1RPTS1JRCBpcyBub24tbmlsLgotICAgICAgICAgIChjb25kCi0gICAg ICAgICAgICgobm90IChtZW1iZXIgKGxpc3QgbGluayBkZXNjKSBvcmctc3RvcmVkLWxpbmtz KSkKLSAgICAgICAgICAgIChwdXNoIChsaXN0IGxpbmsgZGVzYykgb3JnLXN0b3JlZC1saW5r cykKLQkgICAgKG1lc3NhZ2UgIlN0b3JlZDogJXMiIChvciBkZXNjIGxpbmspKSkKLSAgICAg ICAgICAgKChlcXVhbCAobGlzdCBsaW5rIGRlc2MpIChjYXIgb3JnLXN0b3JlZC1saW5rcykp Ci0gICAgICAgICAgICAobWVzc2FnZSAiVGhpcyBsaW5rIGhhcyBhbHJlYWR5IGJlZW4gc3Rv cmVkIikpCi0gICAgICAgICAgICh0Ci0gICAgICAgICAgICAoc2V0cSBvcmctc3RvcmVkLWxp bmtzCi0gICAgICAgICAgICAgICAgICAoZGVsZXRlIChsaXN0IGxpbmsgZGVzYykgb3JnLXN0 b3JlZC1saW5rcykpCi0gICAgICAgICAgICAocHVzaCAobGlzdCBsaW5rIGRlc2MpIG9yZy1z dG9yZWQtbGlua3MpCi0gICAgICAgICAgICAobWVzc2FnZSAiTGluayBtb3ZlZCB0byBmcm9u dDogJXMiIChvciBkZXNjIGxpbmspKSkpCi0JICAod2hlbiBjdXN0b20taWQKLQkgICAgKHNl dHEgbGluayAoY29uY2F0ICJmaWxlOiIKLQkJCSAgICAgICAoYWJicmV2aWF0ZS1maWxlLW5h bWUKLQkJCSAgICAgICAgKGJ1ZmZlci1maWxlLW5hbWUgKGJ1ZmZlci1iYXNlLWJ1ZmZlcikp KQotCQkJICAgICAgICI6OiMiIGN1c3RvbS1pZCkpKSkKLQkoY2FyIG9yZy1zdG9yZWQtbGlu a3MpKSkpKQorICAgICAgICAob3JnLWxpbmstLWFkZC10by1zdG9yZWQtbGlua3MgbGluayBk ZXNjKQorICAgICAgICA7OyBJbiBvcmcgYnVmZmVycywgc3RvcmUgYW4gYWRkaXRpb25hbCAi aHVtYW4tcmVhZGFibGUiIGxpbmsKKyAgICAgICAgOzsgdXNpbmcgY3VzdG9tIGlkLCBpZiBh dmFpbGFibGUuCisgICAgICAgICh3aGVuIChhbmQgKGJ1ZmZlci1maWxlLW5hbWUgKGJ1ZmZl ci1iYXNlLWJ1ZmZlcikpCisgICAgICAgICAgICAgICAgICAgKGRlcml2ZWQtbW9kZS1wICdv cmctbW9kZSkKKyAgICAgICAgICAgICAgICAgICAob3JnLWVudHJ5LWdldCBuaWwgIkNVU1RP TV9JRCIpKQorICAgICAgICAgIChsZXQgKChoZXJlIChvcmctbGluay0tZmlsZS1saW5rLXRv LWhlcmUpKSkKKyAgICAgICAgICAgIChzZXRxIGxpbmsgKGNhciBoZXJlKSkKKyAgICAgICAg ICAgIChzZXRxIGRlc2MgKGNkciBoZXJlKSkpCisgICAgICAgICAgKHVubGVzcyAoZXF1YWwg KGxpc3QgbGluayBkZXNjKSAoY2FyIG9yZy1zdG9yZWQtbGlua3MpKQorICAgICAgICAgICAg KG9yZy1saW5rLS1hZGQtdG8tc3RvcmVkLWxpbmtzIGxpbmsgZGVzYykpKQorICAgICAgICAo Y2FyIG9yZy1zdG9yZWQtbGlua3MpKSkpKQogCiA7OzsjIyNhdXRvbG9hZAogKGRlZnVuIG9y Zy1pbnNlcnQtbGluayAoJm9wdGlvbmFsIGNvbXBsZXRlLWZpbGUgbGluay1sb2NhdGlvbiBk ZXNjcmlwdGlvbikKZGlmZiAtLWdpdCBhL2xpc3Avb3JnLWlkLmVsIGIvbGlzcC9vcmctaWQu ZWwKaW5kZXggODY0N2E1N2NjLi43MjAwYmUzNGQgMTAwNjQ0Ci0tLSBhL2xpc3Avb3JnLWlk LmVsCisrKyBiL2xpc3Avb3JnLWlkLmVsCkBAIC0xMjksNiArMTI5LDQ2IEBAIG5pbCAgIE5l dmVyIHVzZSBhbiBJRCB0byBtYWtlIGEgbGluaywgaW5zdGVhZCBsaW5rIHVzaW5nIGEgdGV4 dCBzZWFyY2ggZm9yCiAJICAoY29uc3QgOnRhZyAiT25seSB1c2UgZXhpc3RpbmciIHVzZS1l eGlzdGluZykKIAkgIChjb25zdCA6dGFnICJEbyBub3QgdXNlIElEIHRvIGNyZWF0ZSBsaW5r IiBuaWwpKSkKIAorKGRlZmN1c3RvbSBvcmctaWQtbGluay1jb25zaWRlci1wYXJlbnQtaWQg bmlsCisgICJOb24tbmlsIG1lYW5zIHN0b3JpbmcgYSBsaW5rIHRvIGFuIE9yZyBlbnRyeSBj b25zaWRlcnMgaW5oZXJpdGVkIElEcy4KKworV2hlbiB0aGlzIG9wdGlvbiBpcyBub24tbmls IGFuZCBgb3JnLWlkLWxpbmstdXNlLWNvbnRleHQnIGlzCitlbmFibGVkLCBJRCBwcm9wZXJ0 aWVzIGluaGVyaXRlZCBmcm9tIHBhcmVudCBlbnRyaWVzIHdpbGwgYmUKK2NvbnNpZGVyZWQg d2hlbiBzdG9yaW5nIGFuIElEIGxpbmsuICBJZiBubyBJRCBpcyBmb3VuZCBpbiB0aGlzCit3 YXksIGEgbmV3IG9uZSBtYXkgYmUgY3JlYXRlZCBhcyBub3JtYWwgKHNlZQorYG9yZy1pZC1s aW5rLXRvLW9yZy11c2UtaWQnKS4KKworRm9yIGV4YW1wbGUsIGdpdmVuIHRoaXMgb3JnIGZp bGU6CisKKyogUGFyZW50Cis6UFJPUEVSVElFUzoKKzpJRDogYWJjCis6RU5EOgorKiogQ2hp bGQgMQorKiogQ2hpbGQgMgorCitXaXRoIGBvcmctaWQtbGluay1jb25zaWRlci1wYXJlbnQt aWQnIGFuZAorYG9yZy1pZC1saW5rLXVzZS1jb250ZXh0JyBib3RoIGVuYWJsZWQsIHN0b3Jp bmcgYSBsaW5rIHdpdGggcG9pbnQKK2F0IFwiQ2hpbGQgMVwiIHdpbGwgcHJvZHVjZSBhIGxp bmsgXCI8aWQ6YWJjOjoqQ2hpbGQgMT5cIi4gIFRoaXMKK2FsbG93cyBsaW5raW5nIHRvIHVu aXF1ZWx5LW5hbWVkIHN1Yi1lbnRyaWVzIHdpdGhpbiBhIHBhcmVudAorZW50cnkgd2l0aCBh biBJRCwgd2l0aG91dCByZXF1aXJpbmcgZXZlcnkgc3ViLWVudHJ5IHRvIGhhdmUgaXRzCitv d24gSUQuIgorICA6Z3JvdXAgJ29yZy1saW5rLXN0b3JlCisgIDpncm91cCAnb3JnLWlkCisg IDpwYWNrYWdlLXZlcnNpb24gJyhPcmcgLiAiOS43IikKKyAgOnR5cGUgJ2Jvb2xlYW4pCisK KyhkZWZjdXN0b20gb3JnLWlkLWxpbmstdXNlLWNvbnRleHQgdAorICAiTm9uLW5pbCBtZWFu cyBlbmFibGVzIHNlYXJjaCBzdHJpbmcgY29udGV4dCBpbiBvcmctaWQgbGlua3MuCisKK1Nl YXJjaCBzdHJpbmdzIGFyZSBhZGRlZCBieSBgb3JnLWlkLXN0b3JlLWxpbmsnIHdoZW4gYm90 aCB0aGUKK2dlbmVyYWwgb3B0aW9uIGBvcmctbGluay1jb250ZXh0LWZvci1maWxlcycgYW5k IHRoZSBvcmctaWQgb3B0aW9uCitgb3JnLWlkLWxpbmstdXNlLWNvbnRleHQnIGFyZSBub24t bmlsLiIKKyAgOmdyb3VwICdvcmctbGluay1zdG9yZQorICA6Z3JvdXAgJ29yZy1pZAorICA6 cGFja2FnZS12ZXJzaW9uICcoT3JnIC4gIjkuNyIpCisgIDp0eXBlICdib29sZWFuKQorCiAo ZGVmY3VzdG9tIG9yZy1pZC11dWlkLXByb2dyYW0gInV1aWRnZW4iCiAgICJUaGUgdXVpZGdl biBwcm9ncmFtLiIKICAgOmdyb3VwICdvcmctaWQKQEAgLTI4MCwxNSArMzIwLDIxIEBAIFRo aXMgaXMgdXNlZnVsIHdoZW4gd29ya2luZyB3aXRoIGNvbnRlbnRzIGluIGEgdGVtcG9yYXJ5 IGJ1ZmZlcgogdGhhdCB3aWxsIGJlIGNvcGllZCBiYWNrIHRvIHRoZSBvcmlnaW5hbC4iKQog CiA7OzsjIyNhdXRvbG9hZAotKGRlZnVuIG9yZy1pZC1nZXQgKCZvcHRpb25hbCBlcG9tIGNy ZWF0ZSBwcmVmaXgpCi0gICJHZXQgdGhlIElEIHByb3BlcnR5IG9mIHRoZSBlbnRyeSBhdCBF UE9NLgotRVBPTSBpcyBhbiBlbGVtZW50LCBtYXJrZXIsIG9yIGJ1ZmZlciBwb3NpdGlvbi4K LUlmIEVQT00gaXMgbmlsLCByZWZlciB0byB0aGUgZW50cnkgYXQgcG9pbnQuCi1JZiB0aGUg ZW50cnkgZG9lcyBub3QgaGF2ZSBhbiBJRCwgdGhlIGZ1bmN0aW9uIHJldHVybnMgbmlsLgot SG93ZXZlciwgd2hlbiBDUkVBVEUgaXMgbm9uLW5pbCwgY3JlYXRlIGFuIElEIGlmIG5vbmUg aXMgcHJlc2VudCBhbHJlYWR5LgotUFJFRklYIHdpbGwgYmUgcGFzc2VkIHRocm91Z2ggdG8g YG9yZy1pZC1uZXcnLgotSW4gYW55IGNhc2UsIHRoZSBJRCBvZiB0aGUgZW50cnkgaXMgcmV0 dXJuZWQuIgotICAobGV0ICgoaWQgKG9yZy1lbnRyeS1nZXQgZXBvbSAiSUQiKSkpCisoZGVm dW4gb3JnLWlkLWdldCAoJm9wdGlvbmFsIGVwb20gY3JlYXRlIHByZWZpeCBpbmhlcml0KQor ICAiR2V0IHRoZSBJRCBvZiB0aGUgZW50cnkgYXQgRVBPTS4KKworRVBPTSBpcyBhbiBlbGVt ZW50LCBtYXJrZXIsIG9yIGJ1ZmZlciBwb3NpdGlvbi4gIElmIEVQT00gaXMgbmlsLAorcmVm ZXIgdG8gdGhlIGVudHJ5IGF0IHBvaW50LgorCitJZiBJTkhFUklUIGlzIG5vbi1uaWwsIElE IHByb3BlcnRpZXMgaW5oZXJpdGVkIGZyb20gcGFyZW50CitlbnRyaWVzIGFyZSBjb25zaWRl cmVkLiAgT3RoZXJ3aXNlLCBvbmx5IElEIHByb3BlcnRpZXMgb24gdGhlCitlbnRyeSBpdHNl bGYgYXJlIGNvbnNpZGVyZWQuCisKK1doZW4gQ1JFQVRFIGlzIG5pbCwgcmV0dXJuIHRoZSBJ RCBvZiB0aGUgZW50cnkgaWYgZm91bmQsCitvdGhlcndpc2UgbmlsLiAgV2hlbiBDUkVBVEUg aXMgbm9uLW5pbCwgY3JlYXRlIGFuIElEIGlmIG5vbmUgaGFzCitiZWVuIGZvdW5kLCBhbmQg cmV0dXJuIHRoZSBuZXcgSUQuICBQUkVGSVggd2lsbCBiZSBwYXNzZWQgdGhyb3VnaAordG8g YG9yZy1pZC1uZXcnLiIKKyAgKGxldCAoKGlkIChvcmctZW50cnktZ2V0IGVwb20gIklEIiAo YW5kIGluaGVyaXQgdCkpKSkKICAgICAoY29uZAogICAgICAoKGFuZCBpZCAoc3RyaW5ncCBp ZCkgKHN0cmluZy1tYXRjaCAiXFxTLSIgaWQpKQogICAgICAgaWQpCkBAIC03MDMsMTggKzc0 OSw1NiBAQCBvcHRpb25hbCBhcmd1bWVudCBNQVJLRVJQLCByZXR1cm4gdGhlIHBvc2l0aW9u IGFzIGEgbmV3IG1hcmtlci4iCiA7OyBDYWxsaW5nIHRoZSBmb2xsb3dpbmcgZnVuY3Rpb24g aXMgaGFyZC1jb2RlZCBpbnRvIGBvcmctc3RvcmUtbGluaycsCiA7OyBzbyB3ZSBkbyBoYXZl IHRvIGFkZCBpdCB0byBgb3JnLXN0b3JlLWxpbmstZnVuY3Rpb25zJy4KIAorKGRlZnVuIG9y Zy1pZC0tZ2V0LWlkLXRvLXN0b3JlLWxpbmsgKCZvcHRpb25hbCBjcmVhdGUpCisgICJHZXQg b3IgY3JlYXRlIHRoZSByZWxldmFudCBJRCBmb3Igc3RvcmluZyBhIGxpbmsuCisKK09wdGlv bmFsIGFyZ3VtZW50IENSRUFURSBpcyBwYXNzZWQgdG8gYG9yZy1pZC1nZXQnLgorCitJbmhl cml0ZWQgSURzIGFyZSBvbmx5IGNvbnNpZGVyZWQgd2hlbgorYG9yZy1pZC1saW5rLWNvbnNp ZGVyLXBhcmVudC1pZCcsIGBvcmctaWQtbGluay11c2UtY29udGV4dCcgYW5kCitgb3JnLWxp bmstY29udGV4dC1mb3ItZmlsZXMnIGFyZSBhbGwgZW5hYmxlZCwgc2luY2UgaW5oZXJpdGVk IElEcworYXJlIGNvbmZ1c2luZyB3aXRob3V0IHRoZSBhZGRpdGlvbmFsIHNlYXJjaCBzdHJp bmcgY29udGV4dC4KKworTm90ZSB0aGF0IHRoaXMgZnVuY3Rpb24gcmVzZXRzIHRoZQorYG9y Zy1lbnRyeS1wcm9wZXJ0eS1pbmhlcml0ZWQtZnJvbScgbWFya2VyOiBpdCB3aWxsIGVpdGhl ciBwb2ludAordG8gbmlsIChpZiB0aGUgaWQgd2FzIG5vdCBpbmhlcml0ZWQpIG9yIHRvIHRo ZSBwb2ludCBpdCB3YXMKK2luaGVyaXRlZCBmcm9tLiIKKyAgKGxldCogKChpbmhlcml0LWlk IChhbmQgb3JnLWlkLWxpbmstY29uc2lkZXItcGFyZW50LWlkCisgICAgICAgICAgICAgICAg ICAgICAgICAgIG9yZy1pZC1saW5rLXVzZS1jb250ZXh0CisgICAgICAgICAgICAgICAgICAg ICAgICAgIG9yZy1saW5rLWNvbnRleHQtZm9yLWZpbGVzKSkpCisgICAgKG1vdmUtbWFya2Vy IG9yZy1lbnRyeS1wcm9wZXJ0eS1pbmhlcml0ZWQtZnJvbSBuaWwpCisgICAgKG9yZy1pZC1n ZXQgbmlsIGNyZWF0ZSBuaWwgaW5oZXJpdC1pZCkpKQorCiA7OzsjIyNhdXRvbG9hZAogKGRl ZnVuIG9yZy1pZC1zdG9yZS1saW5rICgpCiAgICJTdG9yZSBhIGxpbmsgdG8gdGhlIGN1cnJl bnQgZW50cnksIHVzaW5nIGl0cyBJRC4KIAotSWYgYmVmb3JlIGZpcnN0IGhlYWRpbmcgc3Rv cmUgZmlyc3QgdGl0bGUta2V5d29yZCBhcyBkZXNjcmlwdGlvbgotb3IgZmlsZW5hbWUgaWYg bm8gdGl0bGUuIgorVGhlIGxpbmsgZGVzY3JpcHRpb24gaXMgYmFzZWQgb24gdGhlIGhlYWRp bmcsIG9yIGlmIGJlZm9yZSB0aGUKK2ZpcnN0IGhlYWRpbmcsIHRoZSB0aXRsZSBrZXl3b3Jk IGlmIGF2YWlsYWJsZSwgb3IgZWxzZSB0aGUKK2ZpbGVuYW1lLgorCitXaGVuIGBvcmctbGlu ay1jb250ZXh0LWZvci1maWxlcycgYW5kIGBvcmctaWQtbGluay11c2UtY29udGV4dCcKK2Fy ZSBub24tbmlsLCBhZGQgYSBzZWFyY2ggc3RyaW5nIHRvIHRoZSBsaW5rLiAgVGhlIGxpbmsK K2Rlc2NyaXB0aW9uIGlzIHRoZW4gYmFzZWQgb24gdGhlIHNlYXJjaCBzdHJpbmcgdGFyZ2V0 LgorCitXaGVuIGluIGFkZGl0aW9uIGBvcmctaWQtbGluay1jb25zaWRlci1wYXJlbnQtaWQn IGlzIG5vbi1uaWwsIHRoZQorSUQgY2FuIGJlIGluaGVyaXRlZCBmcm9tIGEgcGFyZW50IGVu dHJ5LCB3aXRoIHRoZSBzZWFyY2ggc3RyaW5nCit1c2VkIHRvIHN0aWxsIGxpbmsgdG8gdGhl IGN1cnJlbnQgbG9jYXRpb24uIgogICAoaW50ZXJhY3RpdmUpCi0gICh3aGVuIChhbmQgKGJ1 ZmZlci1maWxlLW5hbWUgKGJ1ZmZlci1iYXNlLWJ1ZmZlcikpIChkZXJpdmVkLW1vZGUtcCAn b3JnLW1vZGUpKQotICAgIChsZXQqICgobGluayAoY29uY2F0ICJpZDoiIChvcmctaWQtZ2V0 LWNyZWF0ZSkpKQorICAod2hlbiAoYW5kIChidWZmZXItZmlsZS1uYW1lIChidWZmZXItYmFz ZS1idWZmZXIpKQorICAgICAgICAgICAgIChkZXJpdmVkLW1vZGUtcCAnb3JnLW1vZGUpKQor ICAgIDs7IEdldCB0aGUgcHJlY2lzZSB0YXJnZXQgZmlyc3QsIGluIGNhc2UgbG9va2luZyBm b3IgYW4gaWQgY2F1c2VzCisgICAgOzsgYSBwcm9wZXJ0aWVzIGRyYXdlciB0byBiZSBhZGRl ZCBhdCB0aGUgY3VycmVudCBsb2NhdGlvbi4KKyAgICAobGV0KiAoKHByZWNpc2UtdGFyZ2V0 IChhbmQgb3JnLWxpbmstY29udGV4dC1mb3ItZmlsZXMKKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgb3JnLWlkLWxpbmstdXNlLWNvbnRleHQKKyAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgKG9yZy1saW5rLXByZWNpc2UtbGluay10YXJnZXQpKSkKKyAgICAg ICAgICAgKGxpbmsgKGNvbmNhdCAiaWQ6IiAob3JnLWlkLS1nZXQtaWQtdG8tc3RvcmUtbGlu ayAnY3JlYXRlKSkpCisgICAgICAgICAgIChpZC1sb2NhdGlvbiAob3IgKGFuZCBvcmctZW50 cnktcHJvcGVydHktaW5oZXJpdGVkLWZyb20KKyAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgIChtYXJrZXItcG9zaXRpb24gb3JnLWVudHJ5LXByb3BlcnR5LWluaGVyaXRlZC1m cm9tKSkKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAoc2F2ZS1leGN1cnNpb24gKG9y Zy1iYWNrLXRvLWhlYWRpbmctb3ItcG9pbnQtbWluIHQpIChwb2ludCkpKSkKIAkgICAoY2Fz ZS1mb2xkLXNlYXJjaCBuaWwpCiAJICAgKGRlc2MgKHNhdmUtZXhjdXJzaW9uCi0JCSAgIChv cmctYmFjay10by1oZWFkaW5nLW9yLXBvaW50LW1pbiB0KQorICAgICAgICAgICAgICAgICAg IChnb3RvLWNoYXIgaWQtbG9jYXRpb24pCiAgICAgICAgICAgICAgICAgICAgKGNvbmQgKChv cmctYmVmb3JlLWZpcnN0LWhlYWRpbmctcCkKICAgICAgICAgICAgICAgICAgICAgICAgICAg KGxldCAoKGtleXdvcmRzIChvcmctY29sbGVjdC1rZXl3b3JkcyAnKCJUSVRMRSIpKSkpCiAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgKGlmIGtleXdvcmRzCkBAIC03MjYsMTQgKzgx MCw2MSBAQCBvciBmaWxlbmFtZSBpZiBubyB0aXRsZS4iCiAJCQkgICAgICAobWF0Y2gtc3Ry aW5nIDQpCiAJCQkgICAgKG1hdGNoLXN0cmluZyAwKSkpCiAgICAgICAgICAgICAgICAgICAg ICAgICAgKHQgbGluaykpKSkpCisgICAgICA7OyBQcmVjaXNlIHRhcmdldHMgc2hvdWxkIGJl IGFmdGVyIGlkLWxvY2F0aW9uIHRvIGF2b2lkCisgICAgICA7OyBkdXBsaWNhdGluZyB0aGUg Y3VycmVudCBoZWFkbGluZSBhcyBhIHNlYXJjaCBzdHJpbmcKKyAgICAgICh3aGVuIChhbmQg cHJlY2lzZS10YXJnZXQKKyAgICAgICAgICAgICAgICAgb3JnLWxpbmstcHJlY2lzZS10YXJn ZXQtbWFya2VyCisgICAgICAgICAgICAgICAgICg+IChtYXJrZXItcG9zaXRpb24gb3JnLWxp bmstcHJlY2lzZS10YXJnZXQtbWFya2VyKQorICAgICAgICAgICAgICAgICAgICBpZC1sb2Nh dGlvbikpCisgICAgICAgICAoc2V0cSBsaW5rIChjb25jYXQgbGluayAiOjoiIChjYXIgcHJl Y2lzZS10YXJnZXQpKSkKKyAgICAgICAgIChzZXRxIGRlc2MgKGNkciBwcmVjaXNlLXRhcmdl dCkpKQogICAgICAgKG9yZy1saW5rLXN0b3JlLXByb3BzIDpsaW5rIGxpbmsgOmRlc2NyaXB0 aW9uIGRlc2MgOnR5cGUgImlkIikKICAgICAgIGxpbmspKSkKIAotKGRlZnVuIG9yZy1pZC1v cGVuIChpZCBfKQotICAiR28gdG8gdGhlIGVudHJ5IHdpdGggaWQgSUQuIgotICAob3JnLW1h cmstcmluZy1wdXNoKQotICAobGV0ICgobSAob3JnLWlkLWZpbmQgaWQgJ21hcmtlcikpCi0J Y21kKQorOzs7IyMjYXV0b2xvYWQKKyhkZWZ1biBvcmctaWQtc3RvcmUtbGluay1tYXliZSAo Jm9wdGlvbmFsIGludGVyYWN0aXZlPykKKyAgIlN0b3JlIGEgbGluayB0byB0aGUgY3VycmVu dCBlbnRyeSB1c2luZyBpdHMgSUQgaWYgZW5hYmxlZC4KKworVGhlIHZhbHVlIG9mIGBvcmct aWQtbGluay10by1vcmctdXNlLWlkJyBkZXRlcm1pbmVzIHdoZXRoZXIgYW4gSUQKK2xpbmsg c2hvdWxkIGJlIHN0b3JlZCwgdXNpbmcgYG9yZy1pZC1zdG9yZS1saW5rJy4KKworQXNzdW1l IHRoZSBmdW5jdGlvbiBpcyBjYWxsZWQgaW50ZXJhY3RpdmVseSBpZiBJTlRFUkFDVElWRT8g aXMKK25vbi1uaWwuIgorICAod2hlbiAoYW5kIChidWZmZXItZmlsZS1uYW1lIChidWZmZXIt YmFzZS1idWZmZXIpKQorICAgICAgICAgICAgIChkZXJpdmVkLW1vZGUtcCAnb3JnLW1vZGUp CisgICAgICAgICAgICAgKG9yIChlcSBvcmctaWQtbGluay10by1vcmctdXNlLWlkIHQpCisg ICAgICAgICAgICAgICAgIChhbmQgaW50ZXJhY3RpdmU/CisgICAgICAgICAgICAgICAgICAg ICAgKG9yIChlcSBvcmctaWQtbGluay10by1vcmctdXNlLWlkICdjcmVhdGUtaWYtaW50ZXJh Y3RpdmUpCisgICAgICAgICAgICAgICAgICAgICAgICAgIChhbmQgKGVxIG9yZy1pZC1saW5r LXRvLW9yZy11c2UtaWQKKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgJ2Ny ZWF0ZS1pZi1pbnRlcmFjdGl2ZS1hbmQtbm8tY3VzdG9tLWlkKQorICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIChub3QgKG9yZy1lbnRyeS1nZXQgbmlsICJDVVNUT01fSUQiKSkp KSkKKyAgICAgICAgICAgICAgICAgOzsgJ3VzZS1leGlzdGluZworICAgICAgICAgICAgICAg ICAoYW5kIG9yZy1pZC1saW5rLXRvLW9yZy11c2UtaWQKKyAgICAgICAgICAgICAgICAgICAg ICAob3JnLWlkLS1nZXQtaWQtdG8tc3RvcmUtbGluaykpKSkKKyAgICAob3JnLWlkLXN0b3Jl LWxpbmspKSkKKworKGRlZnVuIG9yZy1pZC1vcGVuIChsaW5rIF8pCisgICJHbyB0byB0aGUg ZW50cnkgaW5kaWNhdGVkIGJ5IGlkIGxpbmsgTElOSy4KKworVGhlIGxpbmsgY2FuIGluY2x1 ZGUgYSBzZWFyY2ggc3RyaW5nIGFmdGVyIFwiOjpcIiwgd2hpY2ggaXMKK3Bhc3NlZCB0byBg b3JnLWxpbmstc2VhcmNoJy4KKworRm9yIGJhY2t3YXJkcyBjb21wYXRpYmlsaXR5IHdpdGgg SURzIHRoYXQgY29udGFpbiBcIjo6XCIsIGlmIG5vCittYXRjaCBpcyBmb3VuZCBmb3IgdGhl IElELCB0aGUgZnVsbCBsaW5rIHN0cmluZyBpbmNsdWRpbmcgXCI6OlwiCit3aWxsIGJlIHRy aWVkIGFzIGFuIElELiIKKyAgKGxldCogKChvcHRpb24gKGFuZCAoc3RyaW5nLW1hdGNoICI6 OlxcKC4qXFwpXFwnIiBsaW5rKQorCQkgICAgICAobWF0Y2gtc3RyaW5nIDEgbGluaykpKQor CSAoaWQgKGlmIChub3Qgb3B0aW9uKSBsaW5rCisgICAgICAgICAgICAgICAoc3Vic3RyaW5n IGxpbmsgMCAobWF0Y2gtYmVnaW5uaW5nIDApKSkpCisgICAgICAgICBtIGNtZCkKKyAgICAo b3JnLW1hcmstcmluZy1wdXNoKQorICAgIChzZXRxIG0gKG9yZy1pZC1maW5kIGlkICdtYXJr ZXIpKQorICAgICh3aGVuIChhbmQgKG5vdCBtKSBvcHRpb24pCisgICAgICA7OyBCYWNrd2Fy ZHMgY29tcGF0aWJpbGl0eTogaWYgaWQgaXMgbm90IGZvdW5kLCB0cnkgdHJlYXRpbmcKKyAg ICAgIDs7IHdob2xlIGxpbmsgYXMgYW4gaWQuCisgICAgICAoc2V0cSBtIChvcmctaWQtZmlu ZCBsaW5rICdtYXJrZXIpKQorICAgICAgKHdoZW4gbQorICAgICAgICAoc2V0cSBvcHRpb24g bmlsKSkpCiAgICAgKHVubGVzcyBtCiAgICAgICAoZXJyb3IgIkNhbm5vdCBmaW5kIGVudHJ5 IHdpdGggSUQgXCIlc1wiIiBpZCkpCiAgICAgOzsgVXNlIGEgYnVmZmVyLXN3aXRjaGluZyBj b21tYW5kIGluIGFuYWxvZ3kgdG8gZmluZGluZyBmaWxlcwpAQCAtNzUwLDkgKzg4MSwxNiBA QCBvciBmaWxlbmFtZSBpZiBubyB0aXRsZS4iCiAJKGZ1bmNhbGwgY21kIChtYXJrZXItYnVm ZmVyIG0pKSkKICAgICAoZ290by1jaGFyIG0pCiAgICAgKG1vdmUtbWFya2VyIG0gbmlsKQor ICAgICh3aGVuIG9wdGlvbgorICAgICAgKHNhdmUtcmVzdHJpY3Rpb24KKyAgICAgICAgKHVu bGVzcyAob3JnLWJlZm9yZS1maXJzdC1oZWFkaW5nLXApCisgICAgICAgICAgKG9yZy1uYXJy b3ctdG8tc3VidHJlZSkpCisgICAgICAgIChvcmctbGluay1zZWFyY2ggb3B0aW9uKSkpCiAg ICAgKG9yZy1mb2xkLXNob3ctY29udGV4dCkpKQogCi0ob3JnLWxpbmstc2V0LXBhcmFtZXRl cnMgImlkIiA6Zm9sbG93ICMnb3JnLWlkLW9wZW4pCisob3JnLWxpbmstc2V0LXBhcmFtZXRl cnMgImlkIgorICA6Zm9sbG93ICMnb3JnLWlkLW9wZW4KKyAgOnN0b3JlICMnb3JnLWlkLXN0 b3JlLWxpbmstbWF5YmUpCiAKIChwcm92aWRlICdvcmctaWQpCiAKZGlmZiAtLWdpdCBhL2xp c3Avb3JnLWxpbnQuZWwgYi9saXNwL29yZy1saW50LmVsCmluZGV4IDRkMmE1NWQxNS4uYjIz YWZjY2EzIDEwMDY0NAotLS0gYS9saXNwL29yZy1saW50LmVsCisrKyBiL2xpc3Avb3JnLWxp bnQuZWwKQEAgLTY1LDYgKzY1LDcgQEAKIDs7IC0gc3BlY2lhbCBwcm9wZXJ0aWVzIGluIHBy b3BlcnRpZXMgZHJhd2VycywKIDs7IC0gb2Jzb2xldGUgc3ludGF4IGZvciBwcm9wZXJ0aWVz IGRyYXdlcnMsCiA7OyAtIGludmFsaWQgZHVyYXRpb24gaW4gRUZGT1JUIHByb3BlcnR5LAor OzsgLSBpbnZhbGlkIElEIHByb3BlcnR5IHdpdGggYSBkb3VibGUgY29sb24sCiA7OyAtIG1p c3NpbmcgZGVmaW5pdGlvbiBmb3IgZm9vdG5vdGUgcmVmZXJlbmNlcywKIDs7IC0gbWlzc2lu ZyByZWZlcmVuY2UgZm9yIGZvb3Rub3RlIGRlZmluaXRpb25zLAogOzsgLSBub24tZm9vdG5v dGUgZGVmaW5pdGlvbnMgaW4gZm9vdG5vdGUgc2VjdGlvbiwKQEAgLTY4Niw2ICs2ODcsMTYg QEAgVXNlIDpoZWFkZXItYXJnczogaW5zdGVhZCIKIAkgICAgICAgKGxpc3QgKG9yZy1lbGVt ZW50LWJlZ2luIHApCiAJCSAgICAgKGZvcm1hdCAiSW52YWxpZCBlZmZvcnQgZHVyYXRpb24g Zm9ybWF0OiAlUyIgdmFsdWUpKSkpKSkpKQogCisoZGVmdW4gb3JnLWxpbnQtaW52YWxpZC1p ZC1wcm9wZXJ0eSAoYXN0KQorICAob3JnLWVsZW1lbnQtbWFwIGFzdCAnbm9kZS1wcm9wZXJ0 eQorICAgIChsYW1iZGEgKHApCisgICAgICAod2hlbiAoZXF1YWwgIklEIiAob3JnLWVsZW1l bnQtcHJvcGVydHkgOmtleSBwKSkKKwkobGV0ICgodmFsdWUgKG9yZy1lbGVtZW50LXByb3Bl cnR5IDp2YWx1ZSBwKSkpCisJICAoYW5kIChvcmctc3RyaW5nLW53LXAgdmFsdWUpCisgICAg ICAgICAgICAgICAoc3RyaW5nLW1hdGNoLXAgIjo6IiB2YWx1ZSkKKwkgICAgICAgKGxpc3Qg KG9yZy1lbGVtZW50LWJlZ2luIHApCisJCSAgICAgKGZvcm1hdCAiSURzIHNob3VsZCBub3Qg aW5jbHVkZSBcIjo6XCI6ICVTIiB2YWx1ZSkpKSkpKSkpCisKIChkZWZ1biBvcmctbGludC1s aW5rLXRvLWxvY2FsLWZpbGUgKGFzdCkKICAgKG9yZy1lbGVtZW50LW1hcCBhc3QgJ2xpbmsK ICAgICAobGFtYmRhIChsKQpAQCAtMTY4NCw2ICsxNjk1LDExIEBAIEFTVCBpcyB0aGUgYnVm ZmVyIHBhcnNlIHRyZWUuIgogICAjJ29yZy1saW50LWludmFsaWQtZWZmb3J0LXByb3BlcnR5 CiAgIDpjYXRlZ29yaWVzICcocHJvcGVydGllcykpCiAKKyhvcmctbGludC1hZGQtY2hlY2tl ciAnaW52YWxpZC1pZC1wcm9wZXJ0eQorICAiUmVwb3J0IHNlYXJjaCBzdHJpbmcgZGVsaW1p dGVyIFwiOjpcIiBpbiBJRCBwcm9wZXJ0eSIKKyAgIydvcmctbGludC1pbnZhbGlkLWlkLXBy b3BlcnR5CisgIDpjYXRlZ29yaWVzICcocHJvcGVydGllcykpCisKIChvcmctbGludC1hZGQt Y2hlY2tlciAndW5kZWZpbmVkLWZvb3Rub3RlLXJlZmVyZW5jZQogICAiUmVwb3J0IG1pc3Np bmcgZGVmaW5pdGlvbiBmb3IgZm9vdG5vdGUgcmVmZXJlbmNlcyIKICAgIydvcmctbGludC11 bmRlZmluZWQtZm9vdG5vdGUtcmVmZXJlbmNlCmRpZmYgLS1naXQgYS90ZXN0aW5nL2xpc3Av dGVzdC1vbC5lbCBiL3Rlc3RpbmcvbGlzcC90ZXN0LW9sLmVsCmluZGV4IGUwY2VjMDg1NC4u NGJlNmIzMDU1IDEwMDY0NAotLS0gYS90ZXN0aW5nL2xpc3AvdGVzdC1vbC5lbAorKysgYi90 ZXN0aW5nL2xpc3AvdGVzdC1vbC5lbApAQCAtMzgxLDYgKzM4MSwxMzYgQEAgU2VlIGh0dHBz Oi8vZ2l0aHViLmNvbS95YW50YXI5Mi9vcmcvaXNzdWVzLzQuIgogCSAoZXF1YWwgKGZvcm1h dCAiW1tmaWxlOiVzOjoqZm9vIGJhcl1bZm9vIGJhcl1dIiBmaWxlIGZpbGUpCiAJCShvcmct c3RvcmUtbGluayBuaWwpKSkpKSkpCiAKKyhlcnQtZGVmdGVzdCB0ZXN0LW9yZy1saW5rL3By ZWNpc2UtbGluay10YXJnZXQgKCkKKyAgIlRlc3QgYG9yZy1saW5rLXByZWNpc2UtbGluay10 YXJnZXRgIHNwZWNpZmljYXRpb25zLiIKKyAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICIq IEgxPHBvaW50PlxuKiBIMlxuIgorICAgIChzaG91bGQKKyAgICAgKGVxdWFsICcoIipIMSIg LiAiSDEiKQorICAgICAgICAgICAgKG9yZy1saW5rLXByZWNpc2UtbGluay10YXJnZXQpKSkK KyAgICAoc2hvdWxkCisgICAgIChlcXVhbCAxIChtYXJrZXItcG9zaXRpb24gb3JnLWxpbmst cHJlY2lzZS10YXJnZXQtbWFya2VyKSkpKQorICAob3JnLXRlc3Qtd2l0aC10ZW1wLXRleHQg IiogSDFcbiMrbmFtZTogZm9vPHBvaW50PlxuIytiZWdpbl9leGFtcGxlXG5oaVxuIytlbmRf ZXhhbXBsZVxuIgorICAgIChzaG91bGQKKyAgICAgKGVxdWFsICcoImZvbyIgLiAiZm9vIikK KyAgICAgICAgICAgIChvcmctbGluay1wcmVjaXNlLWxpbmstdGFyZ2V0KSkpCisgICAgKHNo b3VsZAorICAgICAoZXF1YWwgNiAobWFya2VyLXBvc2l0aW9uIG9yZy1saW5rLXByZWNpc2Ut dGFyZ2V0LW1hcmtlcikpKSkKKyAgKG9yZy10ZXN0LXdpdGgtdGVtcC10ZXh0ICJcblRleHQ8 cG9pbnQ+XG4qIEgxXG4iCisgICAgKHNob3VsZAorICAgICAoZXF1YWwgJygiVGV4dCIgLiBu aWwpCisgICAgICAgICAgICAob3JnLWxpbmstcHJlY2lzZS1saW5rLXRhcmdldCkpKQorICAg IChzaG91bGQKKyAgICAgKGVxdWFsIDIgKG1hcmtlci1wb3NpdGlvbiBvcmctbGluay1wcmVj aXNlLXRhcmdldC1tYXJrZXIpKSkpCisgIChvcmctdGVzdC13aXRoLXRlbXAtdGV4dCAiXG48 cG9pbnQ+XG4qIEgxXG4iCisgICAgKHNob3VsZAorICAgICAoZXF1YWwgbmlsIChvcmctbGlu ay1wcmVjaXNlLWxpbmstdGFyZ2V0KSkpCisgICAgKHNob3VsZAorICAgICAoZXF1YWwgMiAo bWFya2VyLXBvc2l0aW9uIG9yZy1saW5rLXByZWNpc2UtdGFyZ2V0LW1hcmtlcikpKSkpCisK KyhkZWZtYWNybyB0ZXN0LW9sLXN0b3JlZC1saW5rLXdpdGgtdGV4dCAodGV4dCAmcmVzdCBi b2R5KQorICAiUmV0dXJuIDpsaW5rIGFuZCA6ZGVzY3JpcHRpb24gZnJvbSBsaW5rIHN0b3Jl ZCBpbiBib2R5LiIKKyAgKGRlY2xhcmUgKGluZGVudCAxKSkKKyAgYChsZXQgKG9yZy1zdG9y ZS1saW5rLXBsaXN0KQorICAgICAob3JnLXRlc3Qtd2l0aC10ZW1wLXRleHQtaW4tZmlsZSAs dGV4dAorICAgICAgICxAYm9keQorICAgICAgIChsaXN0IChwbGlzdC1nZXQgb3JnLXN0b3Jl LWxpbmstcGxpc3QgOmxpbmspCisgICAgICAgICAgICAgKHBsaXN0LWdldCBvcmctc3RvcmUt bGluay1wbGlzdCA6ZGVzY3JpcHRpb24pKSkpKQorCisoZXJ0LWRlZnRlc3QgdGVzdC1vcmct bGluay9pZC1zdG9yZS1saW5rICgpCisgICJUZXN0IGBvcmctaWQtc3RvcmUtbGluaycgc3Bl Y2lmaWNhdGlvbnMuIgorICAobGV0ICgob3JnLWlkLWxpbmstdG8tb3JnLXVzZS1pZCBuaWwp KQorICAgIChzaG91bGQKKyAgICAgKGVxdWFsICcobmlsIG5pbCkKKyAgICAgICAgICAgICh0 ZXN0LW9sLXN0b3JlZC1saW5rLXdpdGgtdGV4dCAiKiBIMVxuOlBST1BFUlRJRVM6XG46SUQ6 IGFiY1xuOkVORDpcbiIKKyAgICAgICAgICAgICAgKG9yZy1pZC1zdG9yZS1saW5rLW1heWJl IHQpKSkpKQorICA7OyBPbiBhIGhlYWRsaW5lLCBsaW5rIHRvIHRoYXQgaGVhZGxpbmUncyBJ RC4gIFVzZSBoZWFkaW5nIGFzIHRoZQorICA7OyBkZXNjcmlwdGlvbiBvZiB0aGUgbGluay4K KyAgKGxldCAoKG9yZy1pZC1saW5rLXRvLW9yZy11c2UtaWQgdCkpCisgICAgKHNob3VsZAor ICAgICAoZXF1YWwgJygiaWQ6YWJjIiAiSDEiKQorICAgICAgICAgICAgKHRlc3Qtb2wtc3Rv cmVkLWxpbmstd2l0aC10ZXh0ICIqIEgxXG46UFJPUEVSVElFUzpcbjpJRDogYWJjXG46RU5E OlxuIgorICAgICAgICAgICAgICAob3JnLWlkLXN0b3JlLWxpbmstbWF5YmUgdCkpKSkpCisg IDs7IFJlbW92ZSBUT0RPIGtleXdvcmRzIGV0YyBmcm9tIGRlc2NyaXB0aW9uIG9mIHRoZSBs aW5rLgorICAobGV0ICgob3JnLWlkLWxpbmstdG8tb3JnLXVzZS1pZCB0KSkKKyAgICAoc2hv dWxkCisgICAgIChlcXVhbCAnKCJpZDphYmMiICJIMSIpCisgICAgICAgICAgICAodGVzdC1v bC1zdG9yZWQtbGluay13aXRoLXRleHQgIiogVE9ETyBbI0FdIEgxIDp0YWc6XG46UFJPUEVS VElFUzpcbjpJRDogYWJjXG46RU5EOlxuIgorICAgICAgICAgICAgICAob3JnLWlkLXN0b3Jl LWxpbmstbWF5YmUgdCkpKSkpCisgIDs7IGNyZWF0ZS1pZi1pbnRlcmFjdGl2ZQorICAobGV0 ICgob3JnLWlkLWxpbmstdG8tb3JnLXVzZS1pZCAnY3JlYXRlLWlmLWludGVyYWN0aXZlKSkK KyAgICAoc2hvdWxkCisgICAgIChlcXVhbCAnKCJpZDphYmMiICJIMSIpCisgICAgICAgICAg ICAoY2wtbGV0ZiAoKChzeW1ib2wtZnVuY3Rpb24gJ29yZy1pZC1uZXcpCisgICAgICAgICAg ICAgICAgICAgICAgIChsYW1iZGEgKCZyZXN0IF9yZXN0KSAiYWJjIikpKQorICAgICAgICAg ICAgICAodGVzdC1vbC1zdG9yZWQtbGluay13aXRoLXRleHQgIiogSDFcbiIKKyAgICAgICAg ICAgICAgICAob3JnLWlkLXN0b3JlLWxpbmstbWF5YmUgdCkpKSkpCisgICAgKHNob3VsZAor ICAgICAoZXF1YWwgJyhuaWwgbmlsKQorICAgICAgICAgICAgKHRlc3Qtb2wtc3RvcmVkLWxp bmstd2l0aC10ZXh0ICIqIEgxXG4iCisgICAgICAgICAgICAgIChvcmctaWQtc3RvcmUtbGlu ay1tYXliZSBuaWwpKSkpKQorICA7OyBjcmVhdGUtaWYtaW50ZXJhY3RpdmUtYW5kLW5vLWN1 c3RvbS1pZAorICAobGV0ICgob3JnLWlkLWxpbmstdG8tb3JnLXVzZS1pZCAnY3JlYXRlLWlm LWludGVyYWN0aXZlLWFuZC1uby1jdXN0b20taWQpKQorICAgIChzaG91bGQKKyAgICAgKGVx dWFsICcoImlkOmFiYyIgIkgxIikKKyAgICAgICAgICAgIChjbC1sZXRmICgoKHN5bWJvbC1m dW5jdGlvbiAnb3JnLWlkLW5ldykKKyAgICAgICAgICAgICAgICAgICAgICAgKGxhbWJkYSAo JnJlc3QgX3Jlc3QpICJhYmMiKSkpCisgICAgICAgICAgICAgICh0ZXN0LW9sLXN0b3JlZC1s aW5rLXdpdGgtdGV4dCAiKiBIMVxuIgorICAgICAgICAgICAgICAgIChvcmctaWQtc3RvcmUt bGluay1tYXliZSB0KSkpKSkKKyAgICAoc2hvdWxkCisgICAgIChlcXVhbCAnKG5pbCBuaWwp CisgICAgICAgICAgICAodGVzdC1vbC1zdG9yZWQtbGluay13aXRoLXRleHQgIiogSDFcbjpQ Uk9QRVJUSUVTOlxuOkNVU1RPTV9JRDogeHl6XG46RU5EOlxuIgorICAgICAgICAgICAgICAo b3JnLWlkLXN0b3JlLWxpbmstbWF5YmUgdCkpKSkKKyAgICAoc2hvdWxkCisgICAgIChlcXVh bCAnKG5pbCBuaWwpCisgICAgICAgICAgICAodGVzdC1vbC1zdG9yZWQtbGluay13aXRoLXRl eHQgIiogSDFcbiIKKyAgICAgICAgICAgICAgKG9yZy1pZC1zdG9yZS1saW5rLW1heWJlIG5p bCkpKSkpCisgIDs7IHVzZS1jb250ZXh0IHNob3VsZCBoYXZlIG5vIGVmZmVjdCB3aGVuIG9u IHRoZSBoZWFkbGluZSB3aXRoIGFuIGlkCisgIChsZXQgKChvcmctaWQtbGluay10by1vcmct dXNlLWlkIHQpCisgICAgICAgIChvcmctaWQtbGluay11c2UtY29udGV4dCB0KSkKKyAgICAo c2hvdWxkCisgICAgIChlcXVhbCAnKCJpZDphYmMiICJIMiIpCisgICAgICAgICAgICAodGVz dC1vbC1zdG9yZWQtbGluay13aXRoLXRleHQgIiogSDFcbioqIEgyPHBvaW50PlxuOlBST1BF UlRJRVM6XG46SUQ6IGFiY1xuOkVORDpcbiIKKyAgICAgICAgICAgICAgOzsgc2ltdWxhdGUg cHJldmlvdXNseSBnZXR0aW5nIGFuIGluaGVyaXRlZCB2YWx1ZQorICAgICAgICAgICAgICAo bW92ZS1tYXJrZXIgb3JnLWVudHJ5LXByb3BlcnR5LWluaGVyaXRlZC1mcm9tIDEpCisgICAg ICAgICAgICAgIChvcmctaWQtc3RvcmUtbGluay1tYXliZSB0KSkpKSkpCisKKyhlcnQtZGVm dGVzdCB0ZXN0LW9yZy1saW5rL2lkLXN0b3JlLWxpbmstdXNpbmctcGFyZW50ICgpCisgICJU ZXN0IGBvcmctaWQtc3RvcmUtbGluaycgc3BlY2lmaWNhdGlvbnMgd2l0aCBgb3JnLWlkLWxp bmstY29uc2lkZXItcGFyZW50LWlkYCBzZXQuIgorICA7OyB3aGVuIHVzaW5nIGNvbnRleHQg dG8gc3RpbGwgZmluZCBzcGVjaWZpYyBoZWFkaW5nCisgIChsZXQgKChvcmctaWQtbGluay10 by1vcmctdXNlLWlkIHQpCisgICAgICAgIChvcmctaWQtbGluay1jb25zaWRlci1wYXJlbnQt aWQgdCkKKyAgICAgICAgKG9yZy1pZC1saW5rLXVzZS1jb250ZXh0IHQpKQorICAgIChzaG91 bGQKKyAgICAgKGVxdWFsICcoImlkOmFiYzo6KkgyIiAiSDIiKQorICAgICAgICAgICAgKHRl c3Qtb2wtc3RvcmVkLWxpbmstd2l0aC10ZXh0ICIqIEgxXG46UFJPUEVSVElFUzpcbjpJRDog YWJjXG46RU5EOlxuKiogSDJcbjxwb2ludD4iCisgICAgICAgICAgICAgIChvcmctaWQtc3Rv cmUtbGluaykpKSkKKyAgICAoc2hvdWxkCisgICAgIChlcXVhbCAnKCJpZDphYmM6Om5hbWUi ICJuYW1lIikKKyAgICAgICAgICAgICh0ZXN0LW9sLXN0b3JlZC1saW5rLXdpdGgtdGV4dCAi KiBIMVxuOlBST1BFUlRJRVM6XG46SUQ6IGFiY1xuOkVORDpcblxuIytuYW1lOiBuYW1lXG48 cG9pbnQ+IytiZWdpbl9leGFtcGxlXG5oaVxuIytlbmRfZXhhbXBsZVxuIgorICAgICAgICAg ICAgICAob3JnLWlkLXN0b3JlLWxpbmspKSkpCisgICAgKHNob3VsZAorICAgICAoZXF1YWwg JygiaWQ6YWJjIiAiSDEiKQorICAgICAgICAgICAgKHRlc3Qtb2wtc3RvcmVkLWxpbmstd2l0 aC10ZXh0ICIqIEgxPHBvaW50PlxuOlBST1BFUlRJRVM6XG46SUQ6IGFiY1xuOkVORDpcbioq IEgyXG4iCisgICAgICAgICAgICAgIChvcmctaWQtc3RvcmUtbGluaykpKSkKKyAgICA7OyBz aG91bGQgbm90IHVzZSBuZXdseSBhZGRlZCBpZHMgYXMgc2VhcmNoIHN0cmluZywgZS5nLiBp biBhbiBlbXB0eSBmaWxlCisgICAgKHNob3VsZAorICAgICAobGV0IChuYW1lIHJlc3VsdCkK KyAgICAgICAoc2V0cSByZXN1bHQKKyAgICAgICAgICAgICAoY2wtbGV0ZiAoKChzeW1ib2wt ZnVuY3Rpb24gJ29yZy1pZC1uZXcpCisgICAgICAgICAgICAgICAgICAgICAgICAobGFtYmRh ICgmcmVzdCBfcmVzdCkgImFiYyIpKSkKKyAgICAgICAgICAgICAgICh0ZXN0LW9sLXN0b3Jl ZC1saW5rLXdpdGgtdGV4dCAiPHBvaW50PiIKKyAgICAgICAgICAgICAgICAgKHNldHEgbmFt ZSAoYnVmZmVyLW5hbWUpKQorICAgICAgICAgICAgICAgICAob3JnLWlkLXN0b3JlLWxpbmsp KSkpCisgICAgICAgKGVxdWFsIGAoImlkOmFiYyIgLG5hbWUpIHJlc3VsdCkpKSkKKyAgOzsg c2hvdWxkIG5vdCBmaW5kIHRhcmdldHMgaW4gdGhlIG5leHQgc2VjdGlvbgorICAobGV0ICgo b3JnLWlkLWxpbmstdG8tb3JnLXVzZS1pZCAndXNlLWV4aXN0aW5nKQorICAgICAgICAob3Jn LWlkLWxpbmstY29uc2lkZXItcGFyZW50LWlkIHQpCisgICAgICAgIChvcmctaWQtbGluay11 c2UtY29udGV4dCB0KSkKKyAgICAoc2hvdWxkCisgICAgIChlcXVhbCAnKG5pbCBuaWwpCisg ICAgICAgICAgICAodGVzdC1vbC1zdG9yZWQtbGluay13aXRoLXRleHQgIiogSDFcbjpQUk9Q RVJUSUVTOlxuOklEOiBhYmNcbjpFTkQ6XG4qIEgyXG4qKiA8cG9pbnQ+VGFyZ2V0XG4iCisg ICAgICAgICAgICAgIChvcmctaWQtc3RvcmUtbGluay1tYXliZSB0KSkpKSkpCisKIAwKIDs7 OyBSYWRpbyBUYXJnZXRzCiAKLS0gCjIuMzcuMSAoQXBwbGUgR2l0LTEzNy4xKQoK --107db7fa0e604902bbb354e0b6b7285c--