From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp1 ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms11 with LMTPS id MLiRIZ78gV/BWQAA0tVLHw (envelope-from ) for ; Sat, 10 Oct 2020 18:25:34 +0000 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp1 with LMTPS id EAd7HZ78gV+8GwAAbx9fmQ (envelope-from ) for ; Sat, 10 Oct 2020 18:25:34 +0000 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 9A06E940717 for ; Sat, 10 Oct 2020 18:25:33 +0000 (UTC) Received: from localhost ([::1]:33356 helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1kRJYh-000217-E1 for larch@yhetil.org; Sat, 10 Oct 2020 14:25:31 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]:33434) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1kRJYE-0001zX-OX for guix-patches@gnu.org; Sat, 10 Oct 2020 14:25:02 -0400 Received: from debbugs.gnu.org ([209.51.188.43]:55196) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1kRJYE-0000wa-FG for guix-patches@gnu.org; Sat, 10 Oct 2020 14:25:02 -0400 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1kRJYE-0005BN-CR for guix-patches@gnu.org; Sat, 10 Oct 2020 14:25:02 -0400 X-Loop: help-debbugs@gnu.org Subject: [bug#43872] Closing due to consistency issues Resent-From: Helio Machado <0x2b3bfa0@gmail.com> Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Sat, 10 Oct 2020 18:25:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 43872 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Marius Bakke , 43872-done@debbugs.gnu.org Received: via spool by 43872-done@debbugs.gnu.org id=D43872.160235424219842 (code D ref 43872); Sat, 10 Oct 2020 18:25:02 +0000 Received: (at 43872-done) by debbugs.gnu.org; 10 Oct 2020 18:24:02 +0000 Received: from localhost ([127.0.0.1]:38509 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1kRJXF-00059q-0W for submit@debbugs.gnu.org; Sat, 10 Oct 2020 14:24:02 -0400 Received: from mail-qv1-f47.google.com ([209.85.219.47]:40808) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from <0x2b3bfa0@gmail.com>) id 1kRJHn-0004l3-Ge for 43872-done@debbugs.gnu.org; Sat, 10 Oct 2020 14:08:06 -0400 Received: by mail-qv1-f47.google.com with SMTP id j3so6418262qvi.7 for <43872-done@debbugs.gnu.org>; Sat, 10 Oct 2020 11:08:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:sender:from:date:message-id :subject:to; bh=FxlCC9v1MD913M1Yu7LwQ67MZorjOVqigNNPzVdjsB0=; b=lN+VMmkpdAfZ6d2lrtIc14UhqokAHuqP4UT4nw2TFqLNO8jWo27inDCtRR68iGhxL+ M/eZnn1/OOOJF+3nCozA2KtR8qQXfRt4X/t2ZMXnew+q+425eZ3t9E/D29fGR9bc/YP4 XKu9EM3BSrP75Ai0KgvQ6fdnA3ckoSPSMv79r4Tcg/ALuW9IxWtgwhYts7mcgMNRaunI ZvP+XEqsJ/LJOtiDrzm1XT89IazPH8h5WQ8t6USYyGpHuwrDgRD4XZ8sSeviZFKL2l15 IZBs96xr2IFo8xEsOFnwFA3IGeJDiGufELcSzLpn2tqfZ9RVyIrNw20Rys4FIRL907G5 QLeQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:sender:from :date:message-id:subject:to; bh=FxlCC9v1MD913M1Yu7LwQ67MZorjOVqigNNPzVdjsB0=; b=JmE9qEW7+dO/9XZ4fLtL13dSTkT7meaGJjxlYe3IU2iGXb/kv2KeXXRB8t7tXsqdWR K4cGSt/IWGym5GFZrnGJl7D/XGiAkpzZPhN2/swSLBPEzKl+3azrOkjckNqcFqi97K3j ehR262+Eo4UgjaVR1gznEGFIEYR7WypXuHOBxqd+tFFW0BoAY6lKTnAL7USzB2E2TIsH cyjjTJbx+hcOPTk1zkYQTCqzrQXzbR4meRkNR5c1+twHxtW6zul5Sf+/LURqvDzF42bj tpchXalDkI39GZpwdFYpIIRExhjd0vgHdUVAWESTQmqIwroBVZTfMrmVVoxXfu3PCQvL BxhQ== X-Gm-Message-State: AOAM530M9rdWkGKzQ3lNd21h/uVPDEREZPcGb4qQS7oDdBYXWTrJoxnk vcfhR2ZVz/N0NGDZczE8UF2lefwPM9QS03ujlRjZsZGNg9KtKQ2G X-Google-Smtp-Source: ABdhPJybWYbaz4Sf3Ry7xLle/PzwA1HbR4xN0hOOOqOWeo+jSg2VlDm/h7UUW7i/vIRmkXPjYBjUivVRJWTgG3eFSTs= X-Received: by 2002:ad4:4e73:: with SMTP id ec19mr17167327qvb.58.1602353278004; Sat, 10 Oct 2020 11:07:58 -0700 (PDT) MIME-Version: 1.0 References: <87eem7fdt8.fsf@gnu.org> In-Reply-To: <87eem7fdt8.fsf@gnu.org> X-Google-Sender-Delegation: heliomachadomegias@gmail.com From: Helio Machado <0x2b3bfa0@gmail.com> Date: Sat, 10 Oct 2020 20:07:22 +0200 X-Google-Sender-Auth: 6LFGB5pR0lavKmKj5Y4z6EUH7EI Message-ID: Content-Type: multipart/mixed; boundary="000000000000f0ca0205b154f1d6" X-Spam-Score: 0.3 (/) X-Mailman-Approved-At: Sat, 10 Oct 2020 14:24:00 -0400 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list X-Spam-Score: -0.7 (/) X-BeenThere: guix-patches@gnu.org List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-patches-bounces+larch=yhetil.org@gnu.org Sender: "Guix-patches" X-Scanner: scn0 Authentication-Results: aspmx1.migadu.com; dkim=fail (body hash did not verify) header.d=gmail.com header.s=20161025 header.b=lN+VMmkp; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none); spf=pass (aspmx1.migadu.com: domain of guix-patches-bounces@gnu.org designates 209.51.188.17 as permitted sender) smtp.mailfrom=guix-patches-bounces@gnu.org X-Spam-Score: 1.69 X-TUID: ggwQV+kw/6DN --000000000000f0ca0205b154f1d6 Content-Type: multipart/alternative; boundary="000000000000f0c9ff05b154f1d4" --000000000000f0c9ff05b154f1d4 Content-Type: text/plain; charset="UTF-8" Hi! I started yesterday to improve the Go build system and create a solid recursive importer. It implies some structural change for every package, but it's probably worth it and I'll submit a new patch once it's ready. I'm attaching some internal documentation for my hack for historical purposes. Thank you very much for your advice! --000000000000f0c9ff05b154f1d4 Content-Type: text/html; charset="UTF-8" Content-Transfer-Encoding: quoted-printable
Hi!
I started yesterday to improve the Go build system= and create a solid recursive importer. It implies some structural change f= or every package, but it's probably worth it and I'll submit a new = patch once it's ready.
I'm attaching some internal documentatio= n for my hack for historical purposes.
Thank you very much = for your advice!
--000000000000f0c9ff05b154f1d4-- --000000000000f0ca0205b154f1d6 Content-Type: text/markdown; charset="UTF-8"; name="Guix-go-modules.md" Content-Disposition: attachment; filename="Guix-go-modules.md" Content-Transfer-Encoding: base64 Content-ID: X-Attachment-Id: f_kg3zik760 IyBHbyBtb2R1bGVzIHdpdGhpbiBHdWl4CgpVc2luZyB0aGUgbmV3IFtHbyBtb2R1bGVzXVs0XSB3 aXRoIHRoZSBHdWl4IHBhY2thZ2UgbWFuYWdlciBwb3NlcyBzb21lIGludGVyZXN0aW5nIGlzc3Vl cywgYXMgdGhlIHBhY2thZ2UgaW1wb3J0ZXIgaXMgbm90IGltcGxlbWVudGVkIHlldCBhbmQgR28n cyBvd24gcGFja2FnZSBtYW5hZ2VyIGNsYXNoZXMgaGVhdmlseSB3aXRoIHRoZSBHdWl4IHBhY2th Z2UgbWFuYWdlci4KCkkgd2FudGVkIHRvIHBvcnQgYSBwYWNrYWdlIHdpdGhvdXQgbmVlZGluZyB0 byBmb2xsb3cgdGhlIGN1bWJlcnNvbWUgcHJvY2VzcyBvZiBtYW51YWxseSBpbXBvcnRpbmcgZG96 ZW5zIG9mIGRlcGVuZGVuY2llcywgc28gdGhlIGxlc3MtZnJpY3Rpb24gaGFjayB0dXJuZWQgdG8g YmUgdGhlIHJlcHVycG9zaW5nIG9mIHRoZSBidWlsZCBkZXJpdmF0aW9uIGFzIGEgZGV0ZXJtaW5p c3RpYyBkb3dubG9hZGVyIG1vZHVsZSwgYWJsZSB0byBwdWxsIGFsbCB0aGUgZGVwZW5kZW5jaWVz IHdpdGggdGhlIG5hdGl2ZSBHbyBwYWNrYWdlIG1hbmFnZXIgYXMgaWYgaXQgd2VyZSBvbmUgb2Yg dGhlIEd1aXggb2ZmaWNpYWwgZG93bmxvYWQgbWV0aG9kcy4KClRoZSBzdWdnZXN0ZWQgYXBwcm9h Y2ggaXMgcmF0aGVyIHVub3J0aG9kb3ggYW5kIG1heSBub3QgYmUgYSBnb29kIGxvbmctdGVybSBz b2x1dGlvbjogYWZ0ZXIgYWxsLCBpdCByZXNvcnRzIHRvIGFsbCB0aGUgcG9zc2libGUgdHJpY2tl cnkgdG8gcmVkdWNlIGNoYW5nZXMgb3V0c2lkZSBvZiB0aGUgcGFja2FnZSB0byBhIG1pbmltdW0u CgojIyBOZXR3b3JrIGFjY2VzcyBpbnNpZGUgdGhlIGJ1aWxkIGNvbnRhaW5lcgpbQXMgcGVyIHRo ZSBgbGlic3RvcmVgIHNvdXJjZSBjb2RlXVswXSwgZml4ZWQtb3V0cHV0IGRlcml2YXRpb25zIGhh dmUgdW5yZXN0cmljdGVkIG5ldHdvcmsgYWNjZXNzIGFzIGxvbmcgYXMgdGhlaXIgY29udGVudHMg YXJlIGtlcHQgZGV0ZXJtaW5pc3RpYyBhbmQgeW91IHByb3ZpZGUgYSBoYXNoIG9mIHRoZSBmaW5h bCBzdGF0ZS4gX0lkIGVzdF8sIHlvdSBjYW4gZ2F0aGVyIGZpbGVzIGZyb20gYSByZW1vdGUgcmVw b3NpdG9yeSBhcyBsb25nIGFzIHlvdSdyZSBhYmxlIHRvIGdldCB0aGUgc2FtZSBjb21taXQgb3Ig dmVyc2lvbiBldmVyeSB0aW1lLgoKPiBfV2hlbiBgaGFzaGAgYW5kIGBoYXNoLWFsZ29gIGFyZSBn aXZlbiwgYSBmaXhlZC1vdXRwdXQgZGVyaXZhdGlvbiBpcyBjcmVhdGVkIOKAlGkuZS4sIG9uZSB3 aG9zZSByZXN1bHQgaXMga25vd24gaW4gYWR2YW5jZSwgc3VjaCBhcyBhIGZpbGUgZG93bmxvYWQu IElmLCBpbiBhZGRpdGlvbiwgYHJlY3Vyc2l2ZT9gYCBpcyB0cnVlLCB0aGVuIHRoYXQgZml4ZWQg b3V0cHV0IG1heSBiZSBhbiBleGVjdXRhYmxlIGZpbGUgb3IgYSBkaXJlY3RvcnkgYW5kIGhhc2gg bXVzdCBiZSB0aGUgaGFzaCBvZiBhbiBhcmNoaXZlIGNvbnRhaW5pbmcgdGhpcyBvdXRwdXQuIFso U291cmNlKV1bMV1fCgpCeSBleHRlbmRpbmcgW2BndWl4L2J1aWxkLXN5c3RlbS9nby5zY21gXVsy XSwgd2UgY2FuIHBhc3MgdGhyb3VnaCB0aHJlZSBhZGRpdGlvbmFsIGtleXdvcmQgYXJndW1lbnRz IHRvIGBidWlsZC1leHByZXNzaW9uLT5kZXJpdmF0aW9uYCBzcGVjaWZ5aW5nIHRoZSBkZXJpdmF0 aW9uIGhhc2g6CgpgYGBwYXRjaApkaWZmIC0tZ2l0IGEvZ3VpeC9idWlsZC1zeXN0ZW0vZ28uc2Nt IGIvZ3VpeC9idWlsZC1zeXN0ZW0vZ28uc2NtCmluZGV4IGY4ZWJhZWZiMjcuLmY2YjZhNzgwOWQg MTAwNjQ0Ci0tLSBhL2d1aXgvYnVpbGQtc3lzdGVtL2dvLnNjbQorKysgYi9ndWl4L2J1aWxkLXN5 c3RlbS9nby5zY20KQEAgLTg4LDYgKzg4LDkgQEAKICAgICAgICAgICAgICAgICAgICAoYWxsb3ct Z28tcmVmZXJlbmNlPyAjZikKICAgICAgICAgICAgICAgICAgICAoc3lzdGVtICglY3VycmVudC1z eXN0ZW0pKQogICAgICAgICAgICAgICAgICAgIChndWlsZSAjZikKKyAgICAgICAgICAgICAgICAg ICAoZGVyaXZhdGlvbi1oYXNoICNmKQorICAgICAgICAgICAgICAgICAgIChkZXJpdmF0aW9uLWhh c2gtYWxnb3JpdGhtICNmKQorICAgICAgICAgICAgICAgICAgIChkZXJpdmF0aW9uLWhhc2gtcmVj dXJzaXZlPyAjZikKICAgICAgICAgICAgICAgICAgICAoaW1wb3J0ZWQtbW9kdWxlcyAlZ28tYnVp bGQtc3lzdGVtLW1vZHVsZXMpCiAgICAgICAgICAgICAgICAgICAgKG1vZHVsZXMgJygoZ3VpeCBi dWlsZCBnby1idWlsZC1zeXN0ZW0pCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoZ3Vp eCBidWlsZCB1bmlvbikKQEAgLTExNCw2ICsxMTcsOSBAQAogICAgICAgICAgICAgICAgICM6YnVp bGQtZmxhZ3MgLGJ1aWxkLWZsYWdzCiAgICAgICAgICAgICAgICAgIzp0ZXN0cz8gLHRlc3RzPwog ICAgICAgICAgICAgICAgICM6YWxsb3ctZ28tcmVmZXJlbmNlPyAsYWxsb3ctZ28tcmVmZXJlbmNl PworICAgICAgICAgICAgICAgICM6ZGVyaXZhdGlvbi1oYXNoICxkZXJpdmF0aW9uLWhhc2gKKyAg ICAgICAgICAgICAgICA7ICM6ZGVyaXZhdGlvbi1oYXNoLWFsZ29yaXRobSAsZGVyaXZhdGlvbi1o YXNoLWFsZ29yaXRobSA7IEZJWE1FCisgICAgICAgICAgICAgICAgIzpkZXJpdmF0aW9uLWhhc2gt cmVjdXJzaXZlPyAsZGVyaXZhdGlvbi1oYXNoLXJlY3Vyc2l2ZT8KICAgICAgICAgICAgICAgICAj OmlucHV0cyAlYnVpbGQtaW5wdXRzKSkpCgogICAoZGVmaW5lIGd1aWxlLWZvci1idWlsZApAQCAt MTMxLDYgKzEzNyw5IEBACiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM6c3lzdGVt IHN5c3RlbQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjOm1vZHVsZXMgaW1wb3J0 ZWQtbW9kdWxlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjOm91dHB1dHMgb3V0 cHV0cworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAjOmhhc2ggZGVyaXZhdGlvbi1o YXNoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM6aGFzaC1hbGdvIGRlcml2YXRp b24taGFzaC1hbGdvcml0aG0KKyAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIzpyZWN1 cnNpdmU/IGRlcml2YXRpb24taGFzaC1yZWN1cnNpdmU/CiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICM6Z3VpbGUtZm9yLWJ1aWxkIGd1aWxlLWZvci1idWlsZCkpCgogKGRlZmluZSBn by1idWlsZC1zeXN0ZW0KYGBgCgpUaGlzIHdheSwgYW55IHBhY2thZ2UgY2FuIGNyZWF0ZSBhIGZp eGVkLW91dHB1dCBidWlsZCBkZXJpdmF0aW9uIHdpdGggbmV0d29yayBhY2Nlc3MgaW4gb3JkZXIg dG8gcHVsbCBhZGRpdGlvbmFsIGZpbGVzIGR1cmluZyB0aGUgYnVpbGQgcHJvY2VzcyB3aXRob3V0 IGJyZWFraW5nIHRoZSBidWlsZCBkZXRlcm1pbmlzbToKCmBgYHNjaGVtZQoocGFja2FnZQogIChi dWlsZC1zeXN0ZW0gZ28tYnVpbGQtc3lzdGVtKQogIChhcmd1bWVudHMKICAgICgjOmRlcml2YXRp b24taGFzaCAoYmFzZTMyICLCt8K3wrciKQogICAgICM6ZGVyaXZhdGlvbi1oYXNoLWFsZ29yaXRo bSAnc2hhMjU2CiAgICAgIzpkZXJpdmF0aW9uLWhhc2gtcmVjdXJzaXZlPyAjdCkpKQpgYGAKCiMj IFg1MDkgY2VydGlmaWNhdGVzIGZvciBuZXR3b3JrIHJlcXVlc3RzCgpPbmNlIHdlIGludHJvZHVj ZSBuZXR3b3JraW5nIGNhcGFiaWxpdGllcyBpbnNpZGUgdGhlIGNvbnRhaW5lciwgd2UgbmVlZCB0 byBwcm92aXNpb24gaXQgd2l0aCBjZXJ0aWZpY2F0ZXMgc28gaXQncyBhYmxlIHRvIGF1dGhlbnRp Y2F0ZSBzZWN1cmUgY29ubmVjdGlvbnMgdG8gdGhlIG91dHNpZGUgd29ybGQuIEluIG9yZGVyIHRv IGFjaGlldmUgdGhpcywgd2Ugd291bGQgbmVlZCB0byBpbmNsdWRlIHRoZSBgY2VydHNgIHBhY2th Z2UgZmlyc3Q6CgpgYGBwYXRjaApkaWZmIC0tZ2l0IGEvZ251L3BhY2thZ2VzL2dvbGFuZy5zY20g Yi9nbnUvcGFja2FnZXMvZ29sYW5nLnNjbQppbmRleCBmZTM0ZDM0NDkxLi4wM2Y4OTU5YjdmIDEw MDY0NAotLS0gYS9nbnUvcGFja2FnZXMvZ29sYW5nLnNjbQorKysgYi9nbnUvcGFja2FnZXMvZ29s YW5nLnNjbQpAQCAtNDYsNiArNDYsNyBAQAogICAjOnVzZS1tb2R1bGUgKGd1aXggYnVpbGQtc3lz dGVtIGdvKQogICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcykKICAgIzp1c2UtbW9kdWxlIChn bnUgcGFja2FnZXMgYWRtaW4pCisgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGNlcnRzKQog ICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBnY2MpCiAgICM6dXNlLW1vZHVsZSAoZ251IHBh Y2thZ2VzIGdsaWIpCiAgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGJhc2UpCmBgYAoKVGhl biwgd2UgY2FuIGluY2x1ZGUgdGhlIGNlcnRpZmljYXRlIGJ1bmRsZSBhdCB0aGUgcGFja2FnZSBs ZXZlbCB0aHJvdWdoIHRoZSBgaW5wdXRzYCBrZXl3b3JkIGFyZ3VtZW50OgoKYGBgc2NoZW1lCihw YWNrYWdlCiAgKGJ1aWxkLXN5c3RlbSBnby1idWlsZC1zeXN0ZW0pCiAgKGlucHV0cyBgKCgibnNz LWNlcnRzIiAsbnNzLWNlcnRzKSkpKQpgYGAKCkFkZGl0aW9uYWxseSwgd2UncmUgZ29pbmcgdG8g bmVlZCBhIGZldyBlbnZpcm9ubWVudCB2YXJpYWJsZXMgcG9pbnRpbmcgdG8gdGhlIGFjdHVhbCBj ZXJ0aWZpY2F0ZSBkaXJlY3RvcnksIGJlY2F1c2UgaXQgd29uJ3QgYmUgYXQgdGhlIHN0YW5kYXJk IGxvY2F0aW9uOgoKYGBgc2NoZW1lCihwYWNrYWdlCiAgKGJ1aWxkLXN5c3RlbSBnby1idWlsZC1z eXN0ZW0pCiAgKGFyZ3VtZW50cwogICBgKCM6cGhhc2VzCiAgICAgIChtb2RpZnktcGhhc2VzICVz dGFuZGFyZC1waGFzZXMKICAgICAgICAoYWRkLWFmdGVyICdzZXR1cC1nby1lbnZpcm9ubWVudCAn YWRkLWNlcnRpZmljYXRlcwogICAgICAgICAgKGxhbWJkYSBfCiAgICAgICAgICAgIChzZXRlbnYg IlNTTF9DRVJUX0RJUiIgKHN0cmluZy1hcHBlbmQKICAgICAgICAgICAgICAoYXNzb2MtcmVmICVi dWlsZC1pbnB1dHMgIm5zcy1jZXJ0cyIpCiAgICAgICAgICAgICAgIi9ldGMvc3NsL2NlcnRzIikp CiAgICAgICAgICAgIChzZXRlbnYgIlNTTF9DRVJUX0ZJTEUiIChzdHJpbmctYXBwZW5kCiAgICAg ICAgICAgICAgKGdldGVudiAiU1NMX0NFUlRfRElSIikKICAgICAgICAgICAgICAiL2NhLWNlcnRp ZmljYXRlcy5jcnQiKSkKICAgICAgICAgICAgI3QpKSkpKSkKYGBgCgojIyBTdXBwb3J0IGZvciB0 aGUgbmV3IG1vZHVsZSBzeXN0ZW0KCk5vdywgd2UgbmVlZCB0byBlbmFibGUgdGhlIG5ldyBtb2R1 bGUgc3lzdGVtIHRocm91Z2ggdGhlIGBHTzExMU1PRFVMRWAgZW52aXJvbm1lbnQgdmFyaWFibGUs IGFzIGl0J3MgYmVpbmcgZGlzYWJsZWQgYnkgZGVmYXVsdCBmcm9tIFtgZ3VpeC9idWlsZC9nby1i dWlsZC1zeXN0ZW0uc2NtYF1bM10gZHVlIHRvIHRoZSBwcmV2aW91cyBsYWNrIG9mIHN1cHBvcnQu IEFzIHRoaXMgcHJvcG9zYWwgaXMgaGlnaGx5IGV4cGVyaW1lbnRhbCBhbmQgZXZlcnkgcGFja2Fn ZSBleHBlY3RzIGl0IHNldCB0byBgb2ZmYCwgaXQncyBwcm9iYWJseSBiZXR0ZXIgdG8gdG9nZ2xl IGl0IG9uIGFuIHRoZSBwYWNrYWdlIGxldmVsOgoKYGBgc2NoZW1lCihwYWNrYWdlCiAgKGJ1aWxk LXN5c3RlbSBnby1idWlsZC1zeXN0ZW0pCiAgKGFyZ3VtZW50cwogICBgKCM6cGhhc2VzCiAgICAg IChtb2RpZnktcGhhc2VzICVzdGFuZGFyZC1waGFzZXMKICAgICAgICAoYWRkLWFmdGVyICdzZXR1 cC1nby1lbnZpcm9ubWVudCAnZW5hYmxlLW1vZHVsZXMKICAgICAgICAgIChsYW1iZGEgXwogICAg ICAgICAgICAoc2V0ZW52ICJHTzExMU1PRFVMRSIgIm9uIikKICAgICAgICAgICAgI3QpKSkpKSkK YGBgCgojIyBFeGFtcGxlIHBhY2thZ2U6IGBnby1ldGhlcmV1bWAKCmBgYHNjaGVtZQooZGVmaW5l LXB1YmxpYyBnby1naXRodWItY29tLWV0aGVyZXVtLWdvLWV0aGVyZXVtCiAgKHBhY2thZ2UKICAg IChuYW1lICJnby1naXRodWItY29tLWV0aGVyZXVtLWdvLWV0aGVyZXVtIikKICAgICh2ZXJzaW9u ICIxLjkuMjIiKQogICAgKHNvdXJjZSAob3JpZ2luCiAgICAgICAgICAgICAgKG1ldGhvZCBnaXQt ZmV0Y2gpCiAgICAgICAgICAgICAgKHVyaSAoZ2l0LXJlZmVyZW5jZQogICAgICAgICAgICAgICAg ICAgICh1cmwgImh0dHBzOi8vZ2l0aHViLmNvbS9ldGhlcmV1bS9nby1ldGhlcmV1bSIpCiAgICAg ICAgICAgICAgICAgICAgKGNvbW1pdCAoc3RyaW5nLWFwcGVuZCAidiIgdmVyc2lvbikpKSkKICAg ICAgICAgICAgICAoZmlsZS1uYW1lIChnaXQtZmlsZS1uYW1lIG5hbWUgdmVyc2lvbikpCiAgICAg ICAgICAgICAgKHNoYTI1NgogICAgICAgICAgICAgICAoYmFzZTMyCiAgICAgICAgICAgICAgICAi MDhpMzF4aWwybHlnZmNuMmlnc3ZuNGhwZzh4bmY4bDZnOTE0Zjc4aGdsNHdqNnYxZGphOSIpKSkp CiAgICAoYnVpbGQtc3lzdGVtIGdvLWJ1aWxkLXN5c3RlbSkKICAgIChhcmd1bWVudHMKICAgICBg KCM6aW1wb3J0LXBhdGggImdpdGh1Yi5jb20vZXRoZXJldW0vZ28tZXRoZXJldW0iCiAgICAgICAj OnRlc3RzPyAjZiA7IHRlc3RzIGFyZSBicm9rZW4KICAgICAgICM6ZGVyaXZhdGlvbi1oYXNoICwo YmFzZTMyICIxYWI3Z2Q5MGc4NWNpd3NydzZ6amF4czc2ajd5MGExMWthdnA1MHhrd21tMjZ4MzRz anNzIikKICAgICAgICM6ZGVyaXZhdGlvbi1oYXNoLWFsZ29yaXRobSBzaGEyNTYKICAgICAgICM6 ZGVyaXZhdGlvbi1oYXNoLXJlY3Vyc2l2ZT8gLCN0CiAgICAgICAjOnBoYXNlcwogICAgICAgKG1v ZGlmeS1waGFzZXMgJXN0YW5kYXJkLXBoYXNlcwogICAgICAgICAoYWRkLWFmdGVyICdzZXR1cC1n by1lbnZpcm9ubWVudCAnbW9kaWZ5LWdvLWVudmlyb25tZW50CiAgICAgICAgICAgKGxhbWJkYSBf CiAgICAgICAgICAgICAoc2V0ZW52ICJHTzExMU1PRFVMRSIgIm9uIikKICAgICAgICAgICAgIChz ZXRlbnYgIlNTTF9DRVJUX0RJUiIgKHN0cmluZy1hcHBlbmQKICAgICAgICAgICAgICAgKGFzc29j LXJlZiAlYnVpbGQtaW5wdXRzICJuc3MtY2VydHMiKQogICAgICAgICAgICAgICAiL2V0Yy9zc2wv Y2VydHMiKSkKICAgICAgICAgICAgIChzZXRlbnYgIlNTTF9DRVJUX0ZJTEUiIChzdHJpbmctYXBw ZW5kCiAgICAgICAgICAgICAgIChnZXRlbnYgIlNTTF9DRVJUX0RJUiIpCiAgICAgICAgICAgICAg ICIvY2EtY2VydGlmaWNhdGVzLmNydCIpKQogICAgICAgICAgICAgI3QpKQogICAgICAgICAocmVw bGFjZSAnYnVpbGQKICAgICAgICAgICAobGFtYmRhKiAoIzprZXkgaW1wb3J0LXBhdGggYnVpbGQt ZmxhZ3MgIzphbGxvdy1vdGhlci1rZXlzKQogICAgICAgICAgICAgKHdpdGgtZGlyZWN0b3J5LWV4 Y3Vyc2lvbiAoc3RyaW5nLWFwcGVuZCAic3JjLyIgaW1wb3J0LXBhdGgpCiAgICAgICAgICAgICAg IChpbnZva2UgImdvIiAicnVuIiAiYnVpbGQvY2kuZ28iICJpbnN0YWxsIikpKSkKICAgICAgICAg KHJlcGxhY2UgJ2luc3RhbGwKICAgICAgICAgICAobGFtYmRhKiAoIzprZXkgb3V0cHV0cyBpbXBv cnQtcGF0aCAjOmFsbG93LW90aGVyLWtleXMpCiAgICAgICAgICAgICAobGV0KiAoKG91dCAoYXNz b2MtcmVmIG91dHB1dHMgIm91dCIpKQogICAgICAgICAgICAgICAoc291cmNlIChzdHJpbmctYXBw ZW5kIChnZXRlbnYgIkdPUEFUSCIpICIvc3JjLyIgaW1wb3J0LXBhdGggIi9idWlsZCIpKQogICAg ICAgICAgICAgICAoZGVzdCBvdXQpKQogICAgICAgICAgICAgKG1rZGlyLXAgZGVzdCkKICAgICAg ICAgICAgIChjb3B5LXJlY3Vyc2l2ZWx5IHNvdXJjZSBkZXN0ICM6a2VlcC1tdGltZT8gI3QpKSkp CiAgICAgICAgIChyZXBsYWNlICdjaGVjawogICAgICAgICAgIChsYW1iZGEqICgjOmtleSB0ZXN0 cz8gaW1wb3J0LXBhdGggIzphbGxvdy1vdGhlci1rZXlzKQogICAgICAgICAgICAgKGlmIHRlc3Rz PwogICAgICAgICAgICAgICAod2l0aC1kaXJlY3RvcnktZXhjdXJzaW9uIChzdHJpbmctYXBwZW5k ICJzcmMvIiBpbXBvcnQtcGF0aCkKICAgICAgICAgICAgICAgICAoaW52b2tlICJnbyIgInJ1biIg ImJ1aWxkL2NpLmdvIiAidGVzdCIpKQogICAgICAgICAgICAgICAjdCkpKSkpKQogICAgKGlucHV0 cyBgKCgibnNzLWNlcnRzIiAsbnNzLWNlcnRzKSkpCiAgICAoaG9tZS1wYWdlICJodHRwczovL2dp dGh1Yi5jb20vZXRoZXJldW0vZ28tZXRoZXJldW0iKQogICAgKHN5bm9wc2lzICJPZmZpY2lhbCBH byBpbXBsZW1lbnRhdGlvbiBvZiB0aGUgRXRoZXJldW0gcHJvdG9jb2wiKQogICAgKGRlc2NyaXB0 aW9uICJUaGlzIHJlcG9zaXRvcnkgY29udGFpbnMgdGhlIG9mZmljaWFsCkdvIGltcGxlbWVudGF0 aW9uIG9mIHRoZSBFdGhlcmV1bSBwcm90b2NvbCBhbmQgY29tbWFuZApsaW5lIHRvb2xzIGZvciBp bnRlcmFjdGluZyB3aXRoIHRoZSBibG9ja2NoYWluLiIpCiAgICAobGljZW5zZSBsaWNlbnNlOmxn cGwzKSkpCmBgYAoKIyMgRnVsbCBwYXRjaGVzLCByZWFkeSB0byBhcHBseQoKYGBgcGF0Y2gKZGlm ZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9nb2xhbmcuc2NtIGIvZ251L3BhY2thZ2VzL2dvbGFuZy5z Y20KaW5kZXggZmUzNGQzNDQ5MS4uODVjMzY4OTQyYiAxMDA2NDQKLS0tIGEvZ251L3BhY2thZ2Vz L2dvbGFuZy5zY20KKysrIGIvZ251L3BhY2thZ2VzL2dvbGFuZy5zY20KQEAgLTQ2LDYgKzQ2LDcg QEAKICAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSBnbykKICAgIzp1c2UtbW9kdWxl IChnbnUgcGFja2FnZXMpCiAgICM6dXNlLW1vZHVsZSAoZ251IHBhY2thZ2VzIGFkbWluKQorICAj OnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBjZXJ0cykKICAgIzp1c2UtbW9kdWxlIChnbnUgcGFj a2FnZXMgZ2NjKQogICAjOnVzZS1tb2R1bGUgKGdudSBwYWNrYWdlcyBnbGliKQogICAjOnVzZS1t b2R1bGUgKGdudSBwYWNrYWdlcyBiYXNlKQpAQCAtOTMzLDYgKzkzNCw2MiBAQCB0aW1lLiIpCiBp cyBzaW1pbGFyIHRvIEdvJ3Mgc3RhbmRhcmQgbGlicmFyeSBAY29kZXtqc29ufSBhbmQgQGNvZGV7 eG1sfSBwYWNrYWdlLiIpCiAgICAgKGxpY2Vuc2UgbGljZW5zZTpleHBhdCkpKQoKKyhkZWZpbmUt cHVibGljIGdvLWdpdGh1Yi1jb20tZXRoZXJldW0tZ28tZXRoZXJldW0KKyAgKHBhY2thZ2UKKyAg ICAobmFtZSAiZ28tZ2l0aHViLWNvbS1ldGhlcmV1bS1nby1ldGhlcmV1bSIpCisgICAgKHZlcnNp b24gIjEuOS4yMiIpCisgICAgKHNvdXJjZSAob3JpZ2luCisgICAgICAgICAgICAgIChtZXRob2Qg Z2l0LWZldGNoKQorICAgICAgICAgICAgICAodXJpIChnaXQtcmVmZXJlbmNlCisgICAgICAgICAg ICAgICAgICAgICh1cmwgImh0dHBzOi8vZ2l0aHViLmNvbS9ldGhlcmV1bS9nby1ldGhlcmV1bSIp CisgICAgICAgICAgICAgICAgICAgIChjb21taXQgKHN0cmluZy1hcHBlbmQgInYiIHZlcnNpb24p KSkpCisgICAgICAgICAgICAgIChmaWxlLW5hbWUgKGdpdC1maWxlLW5hbWUgbmFtZSB2ZXJzaW9u KSkKKyAgICAgICAgICAgICAgKHNoYTI1NgorICAgICAgICAgICAgICAgKGJhc2UzMgorICAgICAg ICAgICAgICAgICIwOGkzMXhpbDJseWdmY24yaWdzdm40aHBnOHhuZjhsNmc5MTRmNzhoZ2w0d2o2 djFkamE5IikpKSkKKyAgICAoYnVpbGQtc3lzdGVtIGdvLWJ1aWxkLXN5c3RlbSkKKyAgICAoYXJn dW1lbnRzCisgICAgIGAoIzppbXBvcnQtcGF0aCAiZ2l0aHViLmNvbS9ldGhlcmV1bS9nby1ldGhl cmV1bSIKKyAgICAgICAjOnRlc3RzPyAjZiA7IHRlc3RzIGFyZSBicm9rZW4KKyAgICAgICAjOmRl cml2YXRpb24taGFzaCAsKGJhc2UzMiAiMWFiN2dkOTBnODVjaXdzcnc2empheHM3Nmo3eTBhMTFr YXZwNTB4a3dtbTI2eDM0c2pzcyIpCisgICAgICAgIzpkZXJpdmF0aW9uLWhhc2gtYWxnb3JpdGht IHNoYTI1NgorICAgICAgICM6ZGVyaXZhdGlvbi1oYXNoLXJlY3Vyc2l2ZT8gLCN0CisgICAgICAg IzpwaGFzZXMKKyAgICAgICAobW9kaWZ5LXBoYXNlcyAlc3RhbmRhcmQtcGhhc2VzCisgICAgICAg ICAoYWRkLWFmdGVyICdzZXR1cC1nby1lbnZpcm9ubWVudCAnbW9kaWZ5LWdvLWVudmlyb25tZW50 CisgICAgICAgICAgIChsYW1iZGEgXworICAgICAgICAgICAgIChzZXRlbnYgIkdPMTExTU9EVUxF IiAib24iKQorICAgICAgICAgICAgIChzZXRlbnYgIlNTTF9DRVJUX0RJUiIgKHN0cmluZy1hcHBl bmQKKyAgICAgICAgICAgICAgIChhc3NvYy1yZWYgJWJ1aWxkLWlucHV0cyAibnNzLWNlcnRzIikK KyAgICAgICAgICAgICAgICIvZXRjL3NzbC9jZXJ0cyIpKQorICAgICAgICAgICAgIChzZXRlbnYg IlNTTF9DRVJUX0ZJTEUiIChzdHJpbmctYXBwZW5kCisgICAgICAgICAgICAgICAoZ2V0ZW52ICJT U0xfQ0VSVF9ESVIiKQorICAgICAgICAgICAgICAgIi9jYS1jZXJ0aWZpY2F0ZXMuY3J0IikpCisg ICAgICAgICAgICAgI3QpKQorICAgICAgICAgKHJlcGxhY2UgJ2J1aWxkCisgICAgICAgICAgIChs YW1iZGEqICgjOmtleSBpbXBvcnQtcGF0aCBidWlsZC1mbGFncyAjOmFsbG93LW90aGVyLWtleXMp CisgICAgICAgICAgICAgKHdpdGgtZGlyZWN0b3J5LWV4Y3Vyc2lvbiAoc3RyaW5nLWFwcGVuZCAi c3JjLyIgaW1wb3J0LXBhdGgpCisgICAgICAgICAgICAgICAoaW52b2tlICJnbyIgInJ1biIgImJ1 aWxkL2NpLmdvIiAiaW5zdGFsbCIpKSkpCisgICAgICAgICAocmVwbGFjZSAnaW5zdGFsbAorICAg ICAgICAgICAobGFtYmRhKiAoIzprZXkgb3V0cHV0cyBpbXBvcnQtcGF0aCAjOmFsbG93LW90aGVy LWtleXMpCisgICAgICAgICAgICAgKGxldCogKChvdXQgKGFzc29jLXJlZiBvdXRwdXRzICJvdXQi KSkKKyAgICAgICAgICAgICAgIChzb3VyY2UgKHN0cmluZy1hcHBlbmQgKGdldGVudiAiR09QQVRI IikgIi9zcmMvIiBpbXBvcnQtcGF0aCAiL2J1aWxkIikpCisgICAgICAgICAgICAgICAoZGVzdCBv dXQpKQorICAgICAgICAgICAgIChta2Rpci1wIGRlc3QpCisgICAgICAgICAgICAgKGNvcHktcmVj dXJzaXZlbHkgc291cmNlIGRlc3QgIzprZWVwLW10aW1lPyAjdCkpKSkKKyAgICAgICAgIChyZXBs YWNlICdjaGVjaworICAgICAgICAgICAobGFtYmRhKiAoIzprZXkgdGVzdHM/IGltcG9ydC1wYXRo ICM6YWxsb3ctb3RoZXIta2V5cykKKyAgICAgICAgICAgICAoaWYgdGVzdHM/CisgICAgICAgICAg ICAgICAod2l0aC1kaXJlY3RvcnktZXhjdXJzaW9uIChzdHJpbmctYXBwZW5kICJzcmMvIiBpbXBv cnQtcGF0aCkKKyAgICAgICAgICAgICAgICAgKGludm9rZSAiZ28iICJydW4iICJidWlsZC9jaS5n byIgInRlc3QiKSkKKyAgICAgICAgICAgICAgICN0KSkpKSkpCisgICAgKGlucHV0cyBgKCgibnNz LWNlcnRzIiAsbnNzLWNlcnRzKSkpCisgICAgKGhvbWUtcGFnZSAiaHR0cHM6Ly9naXRodWIuY29t L2V0aGVyZXVtL2dvLWV0aGVyZXVtIikKKyAgICAoc3lub3BzaXMgIk9mZmljaWFsIEdvIGltcGxl bWVudGF0aW9uIG9mIHRoZSBFdGhlcmV1bSBwcm90b2NvbCIpCisgICAgKGRlc2NyaXB0aW9uICJU aGlzIHJlcG9zaXRvcnkgY29udGFpbnMgdGhlIG9mZmljaWFsIEdvIGltcGxlbWVudGF0aW9uIG9m Cit0aGUgRXRoZXJldW0gcHJvdG9jb2wgYW5kIGNvbW1hbmQgbGluZSB0b29scyBmb3IgaW50ZXJh Y3Rpbmcgd2l0aCB0aGUgYmxvY2tjaGFpbi4iKQorICAgIChsaWNlbnNlIGxpY2Vuc2U6bGdwbDMp KSkKKwogKGRlZmluZS1wdWJsaWMgZ28tZ2l0aHViLWNvbS1nZXRzZW50cnktcmF2ZW4tZ28KICAg KGxldCAoKGNvbW1pdCAiNWMyNGQ1MTEwZTBlMTk4ZDlhZTE2ZjFmMzQ2NTM2NjA4NTAwMWQ5MiIp CiAgICAgICAgIChyZXZpc2lvbiAiMCIpKQpgYGAKCmBgYHBhdGNoCmRpZmYgLS1naXQgYS9ndWl4 L2J1aWxkLXN5c3RlbS9nby5zY20gYi9ndWl4L2J1aWxkLXN5c3RlbS9nby5zY20KaW5kZXggZjhl YmFlZmIyNy4uZTg3NDNlMzkyOSAxMDA2NDQKLS0tIGEvZ3VpeC9idWlsZC1zeXN0ZW0vZ28uc2Nt CisrKyBiL2d1aXgvYnVpbGQtc3lzdGVtL2dvLnNjbQpAQCAtODgsNiArODgsOSBAQAogICAgICAg ICAgICAgICAgICAgIChhbGxvdy1nby1yZWZlcmVuY2U/ICNmKQogICAgICAgICAgICAgICAgICAg IChzeXN0ZW0gKCVjdXJyZW50LXN5c3RlbSkpCiAgICAgICAgICAgICAgICAgICAgKGd1aWxlICNm KQorICAgICAgICAgICAgICAgICAgIChkZXJpdmF0aW9uLWhhc2ggI2YpCisgICAgICAgICAgICAg ICAgICAgKGRlcml2YXRpb24taGFzaC1hbGdvcml0aG0gI2YpCisgICAgICAgICAgICAgICAgICAg KGRlcml2YXRpb24taGFzaC1yZWN1cnNpdmU/ICNmKQogICAgICAgICAgICAgICAgICAgIChpbXBv cnRlZC1tb2R1bGVzICVnby1idWlsZC1zeXN0ZW0tbW9kdWxlcykKICAgICAgICAgICAgICAgICAg ICAobW9kdWxlcyAnKChndWl4IGJ1aWxkIGdvLWJ1aWxkLXN5c3RlbSkKICAgICAgICAgICAgICAg ICAgICAgICAgICAgICAgIChndWl4IGJ1aWxkIHVuaW9uKQpAQCAtMTE0LDYgKzExNyw5IEBACiAg ICAgICAgICAgICAgICAgIzpidWlsZC1mbGFncyAsYnVpbGQtZmxhZ3MKICAgICAgICAgICAgICAg ICAjOnRlc3RzPyAsdGVzdHM/CiAgICAgICAgICAgICAgICAgIzphbGxvdy1nby1yZWZlcmVuY2U/ ICxhbGxvdy1nby1yZWZlcmVuY2U/CisgICAgICAgICAgICAgICAgIzpkZXJpdmF0aW9uLWhhc2gg LGRlcml2YXRpb24taGFzaAorICAgICAgICAgICAgICAgIDsgRklYTUUgIzpkZXJpdmF0aW9uLWhh c2gtYWxnb3JpdGhtICxkZXJpdmF0aW9uLWhhc2gtYWxnb3JpdGhtCisgICAgICAgICAgICAgICAg IzpkZXJpdmF0aW9uLWhhc2gtcmVjdXJzaXZlPyAsZGVyaXZhdGlvbi1oYXNoLXJlY3Vyc2l2ZT8K ICAgICAgICAgICAgICAgICAjOmlucHV0cyAlYnVpbGQtaW5wdXRzKSkpCgogICAoZGVmaW5lIGd1 aWxlLWZvci1idWlsZApAQCAtMTMxLDYgKzEzNyw5IEBACiAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICM6c3lzdGVtIHN5c3RlbQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAjOm1vZHVsZXMgaW1wb3J0ZWQtbW9kdWxlcwogICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAjOm91dHB1dHMgb3V0cHV0cworICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAj Omhhc2ggZGVyaXZhdGlvbi1oYXNoCisgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICM6 aGFzaC1hbGdvIGRlcml2YXRpb24taGFzaC1hbGdvcml0aG0KKyAgICAgICAgICAgICAgICAgICAg ICAgICAgICAgICAgIzpyZWN1cnNpdmU/IGRlcml2YXRpb24taGFzaC1yZWN1cnNpdmU/CiAgICAg ICAgICAgICAgICAgICAgICAgICAgICAgICAgICM6Z3VpbGUtZm9yLWJ1aWxkIGd1aWxlLWZvci1i dWlsZCkpCgogKGRlZmluZSBnby1idWlsZC1zeXN0ZW0KYGBgCgojIyBQZW5kaW5nIGxvb3NlIGVu ZHMKCiogSSd2ZSBiZWVuIHVuYWJsZSB0byB1bmNvbW1lbnQgdGhlIGBGSVhNRWAgbGluZSBhdCBg Z3VpeC9idWlsZC1zeXN0ZW0vZ28uc2NtYCB3aXRob3V0IGdldHRpbmcgYW4gdW5kZWNpcGhlcmFi bGUgW2ZvciBtZV0gc3RhY2sgdHJhY2UuIFRoaXMgc2hvdWxkIGJlIGZpeGVkIHRvIGtlZXAgY29t cGF0aWJpbGl0eSB3aXRoIG90aGVyIGhhc2hpbmcgYWxnb3JpdGhtcy4KCiogV2UncmUgb25seSBp bnN0YWxsaW5nIHRoZSBidWlsdCBiaW5hcnkgcGFja2FnZXMgdG8gdGhlIHJvb3Qgb2YgdGhlIGRl cml2YXRpb24gb3V0cHV0LCBidXQgdGhlcmUgbWlnaHQgYmUgbW9yZSBpbnRlcmVzdGluZyBidWls ZCBhcnRpZmFjdHMgdG8gYmUgYWRkZWQgdG8gdXNlIHRoaXMgcGFja2FnZSBhcyBhIG1vZHVsZS4K CgojIEd1aXggdGVzdGluZyBlbnZpcm9ubWVudAoKSSdtIGRvY3VtZW50aW5nIG15IHJlY2lwZSBm b3IgY3JlYXRpbmcgYSB0ZXN0aW5nIGVudmlyb25tZW50IGZyb20gYSBjbGVhbiBpbnN0YWxsLgoK IyMgVXBncmFkaW5nIHRoZSBzeXN0ZW0KYGBgYmFzaApleHBvcnQgUEFUSD0iL2hvbWUvJFVTRVIv LmNvbmZpZy9ndWl4L2N1cnJlbnQvYmluOiRQQVRIIgpgYGAKYGBgYmFzaApndWl4IHB1bGwKaGFz aCBndWl4Cmd1aXggcHVsbApgYGAKYGBgYmFzaApHVUlYX1BST0ZJTEU9Ii9ob21lLyRVU0VSLy5n dWl4LXByb2ZpbGUiCnNvdXJjZSAiJEdVSVhfUFJPRklMRS9ldGMvcHJvZmlsZSIKYGBgCgojIyBJ bnN0YWxsaW5nIHRoZSBidWlsZCBkZXBlbmRlbmNpZXMKYGBgYmFzaApndWl4IGluc3RhbGwgZ2l0 IGF1dG9jb25mIGF1dG9tYWtlIGdldHRleHQgdGV4aW5mbyBncmFwaHZpeiBoZWxwMm1hbgpgYGAK CiMjIEdldHRpbmcgdGhlIHNvdXJjZSBjb2RlCmBgYGJhc2gKZ2l0IGNsb25lIGh0dHBzOi8vZ2l0 LnNhdmFubmFoLmdudS5vcmcvZ2l0L2d1aXguZ2l0CmNkIGd1aXgKYGBgCgojIyBFbnRlcmluZyBp bnNpZGUgYSBjb250YWluZXIKYGBgYmFzaApndWl4IGVudmlyb25tZW50IGd1aXggLS1wdXJlCmBg YAoKIyMgU2V0dGluZyB1cCB0aGUgcHJvamVjdApgYGBiYXNoCi4vYm9vdHN0cmFwCi4vY29uZmln dXJlIC0tbG9jYWxzdGF0ZWRpcj0vdmFyCm1ha2UKYGBgCgojIyBTb3VyY2luZyBgZ3VpeGAgcHJv ZmlsZSBpbnNpZGUgdGhlIGNvbnRhaW5lcgpgYGBiYXNoCkdVSVhfUFJPRklMRT0iL2hvbWUvJFVT RVIvLmd1aXgtcHJvZmlsZSIKc291cmNlICIkR1VJWF9QUk9GSUxFL2V0Yy9wcm9maWxlIgpgYGAK CiMjIFJ1bm5pbmcgY29tbWFuZHMKYGBgYmFzaAouL3ByZS1pbnN0LWVudiBndWl4IC0tdmVyc2lv bgpgYGAKClswXTogaHR0cHM6Ly9naXQuc2F2YW5uYWguZ251Lm9yZy9jZ2l0L2d1aXguZ2l0L3Ry ZWUvbml4L2xpYnN0b3JlL2J1aWxkLmNjI24xOTE1ClsxXTogaHR0cHM6Ly9ndWl4LmdudS5vcmcv bWFudWFsL2VuL2h0bWxfbm9kZS9EZXJpdmF0aW9ucy5odG1sClsyXTogaHR0cHM6Ly9naXQuc2F2 YW5uYWguZ251Lm9yZy9jZ2l0L2d1aXguZ2l0L3RyZWUvZ3VpeC9idWlsZC1zeXN0ZW0vZ28uc2Nt I24xMjkKWzNdOiBodHRwczovL2dpdC5zYXZhbm5haC5nbnUub3JnL2NnaXQvZ3VpeC5naXQvdHJl ZS9ndWl4L2J1aWxkL2dvLWJ1aWxkLXN5c3RlbS5zY20jbjE0OQpbNF06IGh0dHBzOi8vYmxvZy5n b2xhbmcub3JnL3VzaW5nLWdvLW1vZHVsZXMK --000000000000f0ca0205b154f1d6--