From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp12.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 GDmTDBjFcmWlyAAAauVa8A:P1 (envelope-from ) for ; Fri, 08 Dec 2023 08:26:16 +0100 Received: from aspmx1.migadu.com ([2001:41d0:403:4876::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp12.migadu.com with LMTPS id GDmTDBjFcmWlyAAAauVa8A (envelope-from ) for ; Fri, 08 Dec 2023 08:26:16 +0100 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 7D38D58697 for ; Fri, 8 Dec 2023 08:26:15 +0100 (CET) Authentication-Results: aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20230601 header.b=EFJqi7os; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1702020376; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:mime-version:mime-version: content-type:content-type: content-transfer-encoding:content-transfer-encoding:resent-cc: resent-from:resent-sender:resent-message-id:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=Z7GYD0pAtl8qERbUNsHVzaEpFT/HwZcBghZbkdwK7cI=; b=tlKpt5x5xQgvrshcl3Zw9B91DlxjsJawsxCMONzpvwY7N6qi5xj3MsZwRMSUmbGDdBpU5N WjGzvwLZmEoHDDG6qNDIkr3bjecAyNqzFIe4uKW/M22chJ5l28gr3yMRVS/ZEmqM4laTqb CNGD/g7vglE7mSi8+I0GNSqSECIy8gx8czD16bm+J6G1yHDRzKGZgl2A1tEu6FLA9fGA2I 1Cvn8UDSmLSusGSxQhIa24z71K46L02jlunmF6oZXQoTR6ErV/0x65MauA95MA4D8OqapK pfjIzBWm2Eh/vaHkEniwV+4uC3zlN1f5u3HfAg5v38Nau7OC5Ifbs/cqe4OAog== ARC-Authentication-Results: i=1; aspmx1.migadu.com; dkim=fail ("headers rsa verify failed") header.d=gmail.com header.s=20230601 header.b=EFJqi7os; spf=pass (aspmx1.migadu.com: domain of "guix-patches-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="guix-patches-bounces+larch=yhetil.org@gnu.org"; dmarc=fail reason="SPF not aligned (relaxed)" header.from=gmail.com (policy=none) ARC-Seal: i=1; s=key1; d=yhetil.org; t=1702020376; a=rsa-sha256; cv=none; b=G3htWmG8UBNtCJe2paM6sYJ507wIYXQXGaMggBrfbVfl0/M1wbe+WGdw3KICnkt74+TSTm lgi745QGuFoscWndRVMeQdrqjq/mXNqWvrM1AHATq5gnPF2tb5F1m/fGfc6p5f7fhbo1i0 jrNba3kppfskBt8UKUp69dhmPZlWBVCvgeW3vvJg573bhcoC6ze9DgJtUZaGUx2iZRNfj/ of1zHZpYUjoDiobOUD7JHp58jzaABdKasgzzTEk6EohslwUJ6b/OcwDJm0NoM8svObK0ax NOx5vBU0xEXvpeWp4Jwhr+mwkv5MExAg2X/+8dHeWJS63G0a03ayGqgR0wZI5w== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1rBVFB-0001v2-FP; Fri, 08 Dec 2023 02:25:53 -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 1rBVF8-0001uj-AP for guix-patches@gnu.org; Fri, 08 Dec 2023 02:25:51 -0500 Received: from debbugs.gnu.org ([2001:470:142:5::43]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128) (Exim 4.90_1) (envelope-from ) id 1rBVF8-0007Nl-2B for guix-patches@gnu.org; Fri, 08 Dec 2023 02:25:50 -0500 Received: from Debian-debbugs by debbugs.gnu.org with local (Exim 4.84_2) (envelope-from ) id 1rBVFK-0001I1-Iz for guix-patches@gnu.org; Fri, 08 Dec 2023 02:26:02 -0500 X-Loop: help-debbugs@gnu.org Subject: [bug#66801] [PATCH] build-system: Add mix-build-system. Resent-From: Liliana Marie Prikler Original-Sender: "Debbugs-submit" Resent-CC: guix-patches@gnu.org Resent-Date: Fri, 08 Dec 2023 07:26:02 +0000 Resent-Message-ID: Resent-Sender: help-debbugs@gnu.org X-GNU-PR-Message: followup 66801 X-GNU-PR-Package: guix-patches X-GNU-PR-Keywords: patch To: Pierre-Henry =?UTF-8?Q?Fr=C3=B6hring?= , 66801@debbugs.gnu.org Received: via spool by 66801-submit@debbugs.gnu.org id=B66801.17020203384907 (code B ref 66801); Fri, 08 Dec 2023 07:26:02 +0000 Received: (at 66801) by debbugs.gnu.org; 8 Dec 2023 07:25:38 +0000 Received: from localhost ([127.0.0.1]:43698 helo=debbugs.gnu.org) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rBVEv-0001H1-8v for submit@debbugs.gnu.org; Fri, 08 Dec 2023 02:25:38 -0500 Received: from mail-lj1-x242.google.com ([2a00:1450:4864:20::242]:47540) by debbugs.gnu.org with esmtp (Exim 4.84_2) (envelope-from ) id 1rBVEq-0001GV-4U for 66801@debbugs.gnu.org; Fri, 08 Dec 2023 02:25:35 -0500 Received: by mail-lj1-x242.google.com with SMTP id 38308e7fff4ca-2c9f7fe6623so20844751fa.3 for <66801@debbugs.gnu.org>; Thu, 07 Dec 2023 23:25:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1702020313; x=1702625113; darn=debbugs.gnu.org; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:from:to:cc:subject:date :message-id:reply-to; bh=Z7GYD0pAtl8qERbUNsHVzaEpFT/HwZcBghZbkdwK7cI=; b=EFJqi7osLO6sGLg446jMDud6Y7Ll3GCh5ew6QbGXt9pcDFn1dBYdXeuRgZS5+mFoQa 8Z4F+DP+b1XwLs39ZweP4l5qGj+NJy49ti8RPxw9HjesCvbcogfDpXULsoPNMt+hB1XT svQ+hUM6orIg7Z586zozLrfn9VYUTEdVUmH4T5VifKiH/eSpQzZIfkZCWc2jFFRSYH4d XKmh+G8FTHngahc02czRH251rIQpBHYpVeV0BYmSeIQbpFS8R9cjyB26o5gxDDYyFQE0 39JyPjESut4cytO6Ekh/tMJeuSEzlZgci6pSJlBLhYpneScU8iMHBvY8wZ4dNibIYEi6 7u5g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1702020313; x=1702625113; h=mime-version:user-agent:content-transfer-encoding:references :in-reply-to:date:to:from:subject:message-id:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=Z7GYD0pAtl8qERbUNsHVzaEpFT/HwZcBghZbkdwK7cI=; b=ASqdea67X8j4B8l7I32JEAPSvPJCNWki3JQuXyq2P3Y5D/k4fvpxgDeeLJDWcnSVKn MGTJxzbZwNepUDpY5wGGLyggB6r3nNAuff1LS3Qg98tXzKSsjJCmjpl2TP/qdGD35akR wUWQmCIjTzzFPhbzHduRSQPueYiuOOnk9nIS8JiBwtFvpcu8lasqgclVsxTQSx1fotVQ hS8zPqN+jJ/Le41IzNW5bCMYPvAJQv5jxAPpPjOLJPj8Ta4tx3dNuK2vBnrTlPZPinfF VbNhuN/LQaT8Xu/Ok0zVYeITaptj5Uqf+xXnx8FblBJDgDpKmPPE5MfFUavQLkaeich0 ZhrA== X-Gm-Message-State: AOJu0Yx1zBMgvJomBjnNNv37xFwX+Ib6N/ptrNMzGYxmK5k34Q7+8G3d eGzxar7Rp2e9eOrUrVg69P8= X-Google-Smtp-Source: AGHT+IHOOl/ytWIf0CadOfhnAzg13QRcVRM3doiSc5pd5o/cqyKgqR2z/J3/GYrGSOLshsQX3IG07g== X-Received: by 2002:a19:6715:0:b0:50b:eb40:441a with SMTP id b21-20020a196715000000b0050beb40441amr1360226lfc.127.1702020312433; Thu, 07 Dec 2023 23:25:12 -0800 (PST) Received: from lumine.fritz.box (85-127-52-93.dsl.dynamic.surfer.at. [85.127.52.93]) by smtp.gmail.com with ESMTPSA id r25-20020a50d699000000b0054b50b024b1sm572909edi.89.2023.12.07.23.25.11 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 07 Dec 2023 23:25:11 -0800 (PST) Message-ID: <444e529266b85742d32e4ca2102d83fac010352b.camel@gmail.com> From: Liliana Marie Prikler Date: Fri, 08 Dec 2023 08:25:10 +0100 In-Reply-To: <1b3bc0974f5c26e61c95e10a376c7b28f43d2e06.1701988060.git.contact@phfrohring.com> References: <1b3bc0974f5c26e61c95e10a376c7b28f43d2e06.1701988060.git.contact@phfrohring.com> Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: base64 User-Agent: Evolution 3.46.4 MIME-Version: 1.0 X-BeenThere: debbugs-submit@debbugs.gnu.org X-Mailman-Version: 2.1.18 Precedence: list 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-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-Migadu-Queue-Id: 7D38D58697 X-Spam-Score: -4.95 X-Migadu-Scanner: mx10.migadu.com X-Migadu-Spam-Score: -4.95 X-TUID: 8I8/cXrZzjS1 QW0gRG9ubmVyc3RhZywgZGVtIDA3LjEyLjIwMjMgdW0gMjM6MzQgKzAxMDAgc2NocmllYiBQaWVy cmUtSGVucnkKRnLDtmhyaW5nOgo+ICogZ3VpeC9idWlsZC1zeXN0ZW0vbWl4LnNjbTogTmV3IGZp bGUuCj4gKiBndWl4L2J1aWxkL21peC1idWlsZC1zeXN0ZW0uc2NtOiBOZXcgZmlsZS4KPiAKPiBD aGFuZ2UtSWQ6IEk4MDY2ZDAwZjdhZGE0YTM4NDYyMWJmNTQxZTY3OWJjNTEyZTkzNDM1Cj4gLS0t ClByZXR0eSBzdXJlIHlvdSBmb3Jnb3QgdGhlIHJlcm9sbC1jb3VudCBpbiB0aGUgaGVhZGVyLiAg UGxlYXNlIGRvbid0IDopCgo+IMKgZ3VpeC9idWlsZC1zeXN0ZW0vbWl4LnNjbcKgwqDCoMKgwqDC oCB8IDE4Ngo+ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrCj4gwqBndWl4L2J1aWxk L21peC1idWlsZC1zeXN0ZW0uc2NtIHwgMTYxICsrKysrKysrKysrKysrKysrKysrKysrKysrKwo+ IMKgMiBmaWxlcyBjaGFuZ2VkLCAzNDcgaW5zZXJ0aW9ucygrKQo+IMKgY3JlYXRlIG1vZGUgMTAw NjQ0IGd1aXgvYnVpbGQtc3lzdGVtL21peC5zY20KPiDCoGNyZWF0ZSBtb2RlIDEwMDY0NCBndWl4 L2J1aWxkL21peC1idWlsZC1zeXN0ZW0uc2NtCj4gCj4gZGlmZiAtLWdpdCBhL2d1aXgvYnVpbGQt c3lzdGVtL21peC5zY20gYi9ndWl4L2J1aWxkLXN5c3RlbS9taXguc2NtCj4gbmV3IGZpbGUgbW9k ZSAxMDA2NDQKPiBpbmRleCAwMDAwMDAwMDAuLjFiMDQwNTNkNwo+IC0tLSAvZGV2L251bGwKPiAr KysgYi9ndWl4L2J1aWxkLXN5c3RlbS9taXguc2NtCj4gQEAgLTAsMCArMSwxODYgQEAKPiArOzs7 IEdOVSBHdWl4IC0tLSBGdW5jdGlvbmFsIHBhY2thZ2UgbWFuYWdlbWVudCBmb3IgR05VCj4gKzs7 OyBDb3B5cmlnaHQgwqkgMjAyMyBQaWVycmUtSGVucnkgRnLDtmhyaW5nIDxjb250YWN0QHBoZnJv aHJpbmcuY29tPgo+ICs7OzsKPiArOzs7IFRoaXMgZmlsZSBpcyBwYXJ0IG9mIEdOVSBHdWl4Lgo+ ICs7OzsKPiArOzs7IEdOVSBHdWl4IGlzIGZyZWUgc29mdHdhcmU7IHlvdSBjYW4gcmVkaXN0cmli dXRlIGl0IGFuZC9vciBtb2RpZnkKPiBpdAo+ICs7OzsgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBH TlUgR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhcyBwdWJsaXNoZWQKPiBieQo+ICs7OzsgdGhlIEZy ZWUgU29mdHdhcmUgRm91bmRhdGlvbjsgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSwK PiBvciAoYXQKPiArOzs7IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi4KPiArOzs7Cj4g Kzs7OyBHTlUgR3VpeCBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUg dXNlZnVsLCBidXQKPiArOzs7IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhl IGltcGxpZWQgd2FycmFudHkgb2YKPiArOzs7IE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZP UiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS7CoCBTZWUgdGhlCj4gKzs7OyBHTlUgR2VuZXJhbCBQdWJs aWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLgo+ICs7OzsKPiArOzs7IFlvdSBzaG91bGQgaGF2 ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBHZW5lcmFsIFB1YmxpYwo+IExpY2Vuc2UKPiAr Ozs7IGFsb25nIHdpdGggR05VIEd1aXguwqAgSWYgbm90LCBzZWUKPiA8aHR0cDovL3d3dy5nbnUu b3JnL2xpY2Vuc2VzLz4uCj4gKwo+ICs7OyBDb21tZW50YXJ5Ogo+ICs7Owo+ICs7OyBTdGFuZGFy ZCBidWlsZCBwcm9jZWR1cmUgZm9yIEVsaXhpciBwYWNrYWdlcyB1c2luZyAnbWl4Jy7CoCBUaGlz Cj4gaXMKPiArOzsgaW1wbGVtZW50ZWQgYXMgYW4gZXh0ZW5zaW9uIG9mICdnbnUtYnVpbGQtc3lz dGVtJy4KPiArOzsKPiArOzsgQ29kZToKPiArCj4gKyhkZWZpbmUtbW9kdWxlIChndWl4IGJ1aWxk LXN5c3RlbSBtaXgpCj4gK8KgICM6dXNlLW1vZHVsZSAoZ3VpeCBidWlsZCBtaXgtYnVpbGQtc3lz dGVtKQo+ICvCoCAjOnVzZS1tb2R1bGUgKGd1aXggYnVpbGQtc3lzdGVtIGdudSkKPiArwqAgIzp1 c2UtbW9kdWxlIChndWl4IGJ1aWxkLXN5c3RlbSkKPiArwqAgIzp1c2UtbW9kdWxlIChndWl4IGdl eHApCj4gK8KgICM6dXNlLW1vZHVsZSAoZ3VpeCBtb25hZHMpCj4gK8KgICM6dXNlLW1vZHVsZSAo Z3VpeCBwYWNrYWdlcykKPiArwqAgIzp1c2UtbW9kdWxlIChndWl4IHNlYXJjaC1wYXRocykKPiAr wqAgIzp1c2UtbW9kdWxlIChndWl4IHN0b3JlKQo+ICvCoCAjOnVzZS1tb2R1bGUgKGd1aXggdXRp bHMpCj4gK8KgICM6dXNlLW1vZHVsZSAoaWNlLTkgbWF0Y2gpCj4gK8KgICM6dXNlLW1vZHVsZSAo c3JmaSBzcmZpLTEpCj4gK8KgICM6dXNlLW1vZHVsZSAoc3JmaSBzcmZpLTI2KQo+ICvCoCAjOmV4 cG9ydCAobWl4LWJ1aWxkLXN5c3RlbSBoZXhwbS11cmkpKQo+ICsKPiArOzsgTGF6aWx5IHJlc29s dmUgYmluZGluZ3MgdG8gYXZvaWQgY2lyY3VsYXIgZGVwZW5kZW5jaWVzLgo+ICsoZGVmaW5lIChk ZWZhdWx0LWdsaWJjLXV0ZjgtbG9jYWxlcykKPiArwqAgKGxldCogKChiYXNlIChyZXNvbHZlLWlu dGVyZmFjZSAnKGdudSBwYWNrYWdlcyBiYXNlKSkpKQo+ICvCoMKgwqAgKG1vZHVsZS1yZWYgYmFz ZSAnZ2xpYmMtdXRmOC1sb2NhbGVzKSkpCj4gKwo+ICsoZGVmaW5lIChkZWZhdWx0LWVsaXhpci1o ZXgpCj4gK8KgIChsZXQgKChlbGl4aXIgKHJlc29sdmUtaW50ZXJmYWNlICcoZ251IHBhY2thZ2Vz IGVsaXhpcikpKSkKPiArwqDCoMKgIChtb2R1bGUtcmVmIGVsaXhpciAnZWxpeGlyLWhleCkpKQo+ ICsKPiArKGRlZmluZSAoZGVmYXVsdC1yZWJhcjMpCj4gK8KgIChsZXQgKChlcmxhbmcgKHJlc29s dmUtaW50ZXJmYWNlICcoZ251IHBhY2thZ2VzIGVybGFuZykpKSkKPiArwqDCoMKgIChtb2R1bGUt cmVmIGVybGFuZyAncmViYXIzKSkpCj4gKwo+ICsoZGVmaW5lIChkZWZhdWx0LWVsaXhpcikKPiAr wqAgKGxldCAoKGVsaXhpciAocmVzb2x2ZS1pbnRlcmZhY2UgJyhnbnUgcGFja2FnZXMgZWxpeGly KSkpKQo+ICvCoMKgwqAgKG1vZHVsZS1yZWYgZWxpeGlyICdlbGl4aXIpKSkKPiArCj4gKyhkZWZp bmUqIChzdHJpcC1wcmVmaXggbmFtZSAjOm9wdGlvbmFsIChwcmVmaXggImVsaXhpci0iKSkKPiAr wqAgIlJldHVybiBOQU1FIHdpdGhvdXQgdGhlIHByZWZpeCBQUkVGSVguIgo+ICvCoCAoaWYgKHN0 cmluZy1wcmVmaXg/IHByZWZpeCBuYW1lKQo+ICvCoMKgwqDCoMKgIChzdHJpbmctZHJvcCBuYW1l IChzdHJpbmctbGVuZ3RoIHByZWZpeCkpCj4gK8KgwqDCoMKgwqAgbmFtZSkpCj4gKwo+ICsoZGVm aW5lIChoZXhwbS11cmkgbmFtZSB2ZXJzaW9uKQo+ICvCoCAiUmV0dXJuIHRoZSBVUkkgd2hlcmUg dG8gZmV0Y2ggdGhlIHNvdXJjZXMgb2YgYSBIZXggcGFja2FnZSBOQU1FCj4gYXQgVkVSU0lPTi4K PiArTkFNRSBpcyB0aGUgbmFtZSBvZiB0aGUgcGFja2FnZSB3aGljaCBzaG91bGQgbG9vayBsaWtl OiBlbGl4aXItcGtnLQo+IG5hbWUtWC5ZLloKPiArU2VlOiBodHRwczovL2dpdGh1Yi5jb20vaGV4 cG0vc3BlY2lmaWNhdGlvbnMvYmxvYi9tYWluL2VuZHBvaW50cy5tZCIKPiArwqAgKChjb21wb3Nl Cj4gK8KgwqDCoCAoY3V0ZSBzdHJpbmctYXBwZW5kICJodHRwczovL3JlcG8uaGV4LnBtL3RhcmJh bGxzLyIgPD4gIi0iCj4gdmVyc2lvbiAiLnRhciIpCj4gK8KgwqDCoCAoY3V0ZSBzdHJpbmctcmVw bGFjZS1zdWJzdHJpbmcgPD4gIi0iICJfIikKPiArwqDCoMKgIHN0cmlwLXByZWZpeCkKPiArwqDC oCBuYW1lKSkKPiArCj4gKzs7IEEgbnVtYmVyIG9mIGVudmlyb25tZW50IHZhcmlhYmxlcyBzcGVj aWZpYyB0byB0aGUgTWl4IGJ1aWxkCj4gc3lzdGVtIGFyZQo+ICs7OyByZWZsZWN0ZWQgaGVyZS7C oCBUaGV5IGFyZSBkb2N1bWVudGVkIGF0Cj4gKzs7Cj4gaHR0cHM6Ly9oZXhkb2NzLnBtL21peC8x LjE1LjcvTWl4Lmh0bWwjbW9kdWxlLWVudmlyb25tZW50LXZhcmlhYmxlcy7CoAo+IE90aGVyCj4g Kzs7IHBhcmFtZXRlcnMgbG9jYXRlZCBpbiBtaXguZXhzIGFyZSBkZWZpbmVkIGF0Cj4gKzs7Cj4g aHR0cHM6Ly9oZXhkb2NzLnBtL21peC8xLjE1LjcvTWl4LlByb2plY3QuaHRtbCNtb2R1bGUtY29u ZmlndXJhdGlvbgo+ICsoZGVmaW5lKiAobWl4LWJ1aWxkIG5hbWUKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaW5wdXRzCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICM6a2V5Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIHNvdXJjZQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAo dGVzdHM/ICN0KQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobWl4 LXBhdGggI2YpIDtTZWUgTUlYX1BBVEguCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgIChtaXgtZXhzICJtaXguZXhzIikgO1NlZSBNSVhfRVhTLgo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoYnVpbGQtcGVyLWVudmlyb25tZW50ICN0KSA7 U2VlCj4gOmJ1aWxkX3Blcl9lbnZpcm9ubWVudC4KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqAgKHBoYXNlcyAnJXN0YW5kYXJkLXBoYXNlcykKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKG91dHB1dHMgJygib3V0IikpCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZWFyY2gtcGF0aHMgJygpKQo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoc3lzdGVtICglY3VycmVudC1zeXN0 ZW0pKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoZ3VpbGUgI2Yp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChpbXBvcnRlZC1tb2R1 bGVzIGAoKGd1aXggYnVpbGQgbWl4LWJ1aWxkLQo+IHN5c3RlbSkKPiArwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgICxAJWdudS1idWlsZC1zeXN0ZW0tCj4gbW9kdWxlcykpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtb2R1bGVzICcoKGd1aXggYnVpbGQgbWl4LWJ1aWxk LXN5c3RlbSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgIChndWl4IGJ1aWxkIHV0aWxzKSkpKQo+ICvCoCAiQnVpbGQgU09VUkNF IHVzaW5nIEVsaXhpciwgYW5kIHdpdGggSU5QVVRTLiIKPiArCj4gK8KgIDs7IENoZWNrIHRoZSBk b2N1bWVudGF0aW9uIG9mIDpidWlsZF9wZXJfZW52aXJvbm1lbnQgaGVyZToKPiArwqAgOzsKPiBo dHRwczovL2hleGRvY3MucG0vbWl4LzEuMTUuNy9NaXguUHJvamVjdC5odG1sI21vZHVsZS1jb25m aWd1cmF0aW9uwqBBCj4gbmQKPiArwqAgOzsgIkVudmlyb25tZW50cyIgaGVyZToKPiArwqAgOzsg aHR0cHM6Ly9oZXhkb2NzLnBtL21peC8xLjE1LjcvTWl4Lmh0bWwjbW9kdWxlLWVudmlyb25tZW50 cwo+ICvCoCAoZGVmaW5lIG1peC1lbnZpcm9ubWVudHMKPiArwqDCoMKgIChpZiBidWlsZC1wZXIt ZW52aXJvbm1lbnQKPiArwqDCoMKgwqDCoMKgwqAgYCgicHJvZCIgLEAoaWYgdGVzdHM/ICcoInRl c3QiKSAnKCkpKQo+ICvCoMKgwqDCoMKgwqDCoCAnKCJzaGFyZWQiKSkpCj4gKwo+ICvCoCAoZGVm aW5lIGJ1aWxkZXIKPiArwqDCoMKgICh3aXRoLWltcG9ydGVkLW1vZHVsZXMgaW1wb3J0ZWQtbW9k dWxlcwo+ICvCoMKgwqDCoMKgICN+KGJlZ2luCj4gKwo+ICvCoMKgwqDCoMKgwqDCoMKgwqAgKHVz ZS1tb2R1bGVzICMkQChzZXhwLT5nZXhwIG1vZHVsZXMpKQo+ICsKPiArwqDCoMKgwqDCoMKgwqDC oMKgICMkKHdpdGgtYnVpbGQtdmFyaWFibGVzIGlucHV0cyBvdXRwdXRzCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgICN+KG1peC1idWlsZCAjOm5hbWUgIyRuYW1lCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIzpzb3VyY2UgIytzb3Vy Y2UKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAjOnN5c3RlbSAjJHN5c3RlbQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICM6dGVzdHM/ICMkdGVzdHM/Cj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIzptaXgtcGF0aCAjJG1peC1wYXRo Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg IzptaXgtZXhzICMkbWl4LWV4cwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgICM6bWl4LWVudmlyb25tZW50cyAnIyRtaXgtZW52aXJvbm1lbnRz Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg IzpidWlsZC1wZXItZW52aXJvbm1lbnQgIyRidWlsZC1wZXItCj4gZW52aXJvbm1lbnQKPiArwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjOnBoYXNl cyAjJChpZiAocGFpcj8gcGhhc2VzKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChzZXhw LT5nZXhwIHBoYXNlcykKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBwaGFzZXMpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIzpvdXRw dXRzICVvdXRwdXRzCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgIzpzZWFyY2gtcGF0aHMgJyMkKHNleHAtPmdleHAKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIChtYXAKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgc2VhcmNoLXBhdGgtCj4gc3BlY2lmaWNhdGlvbi0+c2V4cAo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzZWFyY2gtcGF0aHMpKQo+ICvCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICM6aW5wdXRzCj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgJWJ1aWxkLWlu cHV0cykpKSkpCj4gKwo+ICvCoCAobWxldCAlc3RvcmUtbW9uYWQgKChndWlsZSAocGFja2FnZS0+ ZGVyaXZhdGlvbiAob3IgZ3VpbGUKPiAoZGVmYXVsdC1ndWlsZSkpCj4gK8KgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHN5c3RlbQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjOmdyYWZ0PyAjZikpKQo+ICvCoMKgwqAgKGdleHAtPmRl cml2YXRpb24gbmFtZQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqAgYnVpbGRlcgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAg IzpzeXN0ZW0gc3lzdGVtCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoCAjOmdyYWZ0PyAjZsKgwqDCoMKgwqDCoCA7Y29uc2lzdGVudCB3aXRoICdnbnUtYnVpbGQn Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjOnRhcmdldCAj Zgo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgIzpndWlsZS1m b3ItYnVpbGQgZ3VpbGUpKSkKPiArCj4gKyhkZWZpbmUqIChsb3dlciBuYW1lCj4gK8KgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjOmtleQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqAgKGVsaXhpciAoZGVmYXVsdC1lbGl4aXIpKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGVsaXhpci1oZXggKGRlZmF1bHQtZWxpeGlyLWhleCkpCj4gK8KgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoCAoZ2xpYmMtdXRmOC1sb2NhbGVzIChkZWZhdWx0LWdsaWJjLXV0 ZjgtbG9jYWxlcykpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAoaW5wdXRzICco KSkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChuYXRpdmUtaW5wdXRzICcoKSkK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChwcm9wYWdhdGVkLWlucHV0cyAnKCkp Cj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAocmViYXIzIChkZWZhdWx0LXJlYmFy MykpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAodGVzdHM/ICN0KQo+ICvCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgb3V0cHV0cwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgc291cmNlCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBzeXN0 ZW0KPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIHRhcmdldAo+ICvCoMKgwqDCoMKg wqDCoMKgwqDCoMKgwqDCoMKgwqAgIzphbGxvdy1vdGhlci1rZXlzICM6cmVzdCBhcmd1bWVudHMp Cj4gK8KgICJSZXR1cm4gYSBiYWcgZm9yIE5BTUUuIgo+ICvCoCAobGV0ICgocHJpdmF0ZS1rZXl3 b3Jkcwo+ICvCoMKgwqDCoMKgwqDCoMKgICcoIzppbnB1dHMgIzpuYXRpdmUtaW5wdXRzCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgICM6b3V0cHV0cyAjOnN5c3RlbSAjOnRhcmdldAo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoCAjOmVsaXhpciAjOmVsaXhpci1oZXggIzpnbGliYy11dGY4LWxvY2FsZXMK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgIzpyZWJhcjMgIzplcmxhbmcpKQo+ICvCoMKgwqDCoMKg wqDCoCAoYnVpbGQtaW5wdXRzCj4gK8KgwqDCoMKgwqDCoMKgwqAgYCgsQChzdGFuZGFyZC1wYWNr YWdlcykKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCJnbGliYy11dGY4LWxvY2FsZXMiICxnbGli Yy11dGY4LWxvY2FsZXMpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgICgiZXJsYW5nIiAsKGxvb2t1 cC1wYWNrYWdlLWlucHV0IGVsaXhpciAiZXJsYW5nIikpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKg ICgicmViYXIzIiAscmViYXIzKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoCAoImVsaXhpciIgLGVs aXhpcikKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgKCJlbGl4aXItaGV4IiAsZWxpeGlyLWhleCkK PiArwqDCoMKgwqDCoMKgwqDCoMKgwqAgLEBpbnB1dHMKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqAg LEBuYXRpdmUtaW5wdXRzKSkpCj4gK8KgIChiYWcgKG5hbWUgbmFtZSkKPiArwqDCoMKgwqDCoMKg IChzeXN0ZW0gc3lzdGVtKQo+ICvCoMKgwqDCoMKgwqAgKGJ1aWxkLWlucHV0cyBidWlsZC1pbnB1 dHMpCj4gK8KgwqDCoMKgwqDCoCAoaG9zdC1pbnB1dHMgKGlmIHRhcmdldCBpbnB1dHMgJygpKSkK PiArwqDCoMKgwqDCoMKgIChvdXRwdXRzIG91dHB1dHMpCj4gK8KgwqDCoMKgwqDCoCAoYnVpbGQg bWl4LWJ1aWxkKQo+ICvCoMKgwqDCoMKgwqAgKGFyZ3VtZW50cyAoc3RyaXAta2V5d29yZC1hcmd1 bWVudHMgcHJpdmF0ZS1rZXl3b3Jkcwo+IGFyZ3VtZW50cykpKSkpCj4gKwo+ICsoZGVmaW5lIG1p eC1idWlsZC1zeXN0ZW0KPiArwqAgKGJ1aWxkLXN5c3RlbSAobmFtZSAnbWl4KQo+ICvCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgKGRlc2NyaXB0aW9uICJUaGUgc3RhbmRhcmQgTWl4IGJ1 aWxkIHN5c3RlbSIpCj4gK8KgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAobG93ZXIgbG93 ZXIpKSkKPiArCj4gKzs7OyBtaXguc2NtIGVuZHMgaGVyZQo+IGRpZmYgLS1naXQgYS9ndWl4L2J1 aWxkL21peC1idWlsZC1zeXN0ZW0uc2NtIGIvZ3VpeC9idWlsZC9taXgtYnVpbGQtCj4gc3lzdGVt LnNjbQo+IG5ldyBmaWxlIG1vZGUgMTAwNjQ0Cj4gaW5kZXggMDAwMDAwMDAwLi5mZTJlMzZkMTgK PiAtLS0gL2Rldi9udWxsCj4gKysrIGIvZ3VpeC9idWlsZC9taXgtYnVpbGQtc3lzdGVtLnNjbQo+ IEBAIC0wLDAgKzEsMTYxIEBACj4gKzs7OyBHTlUgR3VpeCAtLS0gRnVuY3Rpb25hbCBwYWNrYWdl IG1hbmFnZW1lbnQgZm9yIEdOVQo+ICs7OzsgQ29weXJpZ2h0IMKpIDIwMjMgUGllcnJlLUhlbnJ5 IEZyw7ZocmluZyA8Y29udGFjdEBwaGZyb2hyaW5nLmNvbT4KPiArOzs7Cj4gKzs7OyBUaGlzIGZp bGUgaXMgcGFydCBvZiBHTlUgR3VpeC4KPiArOzs7Cj4gKzs7OyBHTlUgR3VpeCBpcyBmcmVlIHNv ZnR3YXJlOyB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3IgbW9kaWZ5Cj4gaXQKPiArOzs7 IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXMgcHVi bGlzaGVkCj4gYnkKPiArOzs7IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb247IGVpdGhlciB2 ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsCj4gb3IgKGF0Cj4gKzs7OyB5b3VyIG9wdGlvbikgYW55 IGxhdGVyIHZlcnNpb24uCj4gKzs7Owo+ICs7OzsgR05VIEd1aXggaXMgZGlzdHJpYnV0ZWQgaW4g dGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCwgYnV0Cj4gKzs7OyBXSVRIT1VUIEFOWSBX QVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mCj4gKzs7OyBNRVJD SEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuwqAgU2VlIHRo ZQo+ICs7OzsgR05VIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy4KPiAr Ozs7Cj4gKzs7OyBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgR2Vu ZXJhbCBQdWJsaWMKPiBMaWNlbnNlCj4gKzs7OyBhbG9uZyB3aXRoIEdOVSBHdWl4LsKgIElmIG5v dCwgc2VlCj4gPGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8+Lgo+ICsKPiArOzsgQ29tbWVu dGFyeToKPiArOzsKPiArOzsgQ29kZToKPiArCj4gKyhkZWZpbmUtbW9kdWxlIChndWl4IGJ1aWxk IG1peC1idWlsZC1zeXN0ZW0pCj4gK8KgICM6dXNlLW1vZHVsZSAoKGd1aXggYnVpbGQgZ251LWJ1 aWxkLXN5c3RlbSkgIzpwcmVmaXggZ251OikKPiArwqAgIzp1c2UtbW9kdWxlIChndWl4IGJ1aWxk IHV0aWxzKQo+ICvCoCAjOnVzZS1tb2R1bGUgKGljZS05IGZ0dykKPiArwqAgIzp1c2UtbW9kdWxl IChpY2UtOSBtYXRjaCkKPiArwqAgIzp1c2UtbW9kdWxlIChpY2UtOSByZWdleCkKPiArwqAgIzp1 c2UtbW9kdWxlIChpY2UtOSBzdHJpbmctZnVuKQo+ICvCoCAjOnVzZS1tb2R1bGUgKHNyZmkgc3Jm aS0xKQo+ICvCoCAjOnVzZS1tb2R1bGUgKHNyZmkgc3JmaS0yNikKPiArwqAgIzp1c2UtbW9kdWxl IChzcmZpIHNyZmktNzEpCj4gK8KgICM6ZXhwb3J0IChtaXgtYnVpbGQKPiArwqDCoMKgwqDCoMKg wqDCoMKgwqDCoCAlc3RhbmRhcmQtcGhhc2VzKSkKPiArCj4gKzs7IFRoZSBFbGl4aXIgdmVyc2lv biBpcyBjb25zdGFudCBhcyBzb29uIGFzIGl0IGlzIGNvbXB1dGFibGUgZnJvbQo+IHRoZSBjdXJy ZW50Cj4gKzs7IGV4ZWN1dGlvbi7CoCBJdCBpcyBhIFguWSBzdHJpbmcgd2hlcmUgWCBhbmQgWSBh cmUgcmVzcGVjdGl2ZWx5IHRoZQo+IG1ham9yIGFuZAo+ICs7OyBtaW5vciB2ZXJzaW9uIG51bWJl ciBvZiB0aGUgRWxpeGlyIHVzZWQgaW4gdGhlIGJ1aWxkLgo+ICsoZGVmaW5lICVlbGl4aXItdmVy c2lvbiAobWFrZS1wYXJhbWV0ZXIgIlguWSIpKQo+ICsKPiArKGRlZmluZSogKGVsaXhpci1saWJk aXIgcGF0aCAjOm9wdGlvbmFsICh2ZXJzaW9uICglZWxpeGlyLXZlcnNpb24pKSkKPiArwqAgIlJl dHVybiB0aGUgcGF0aCB3aGVyZSBhbGwgbGlicmFyaWVzIHVuZGVyIFBBVEggZm9yIGEgc3BlY2lm aWVkCj4gRWxpeGlyCj4gK1ZFUlNJT04gYXJlIGluc3RhbGxlZC4iCj4gK8KgIChzdHJpbmctYXBw ZW5kIHBhdGggIi9saWIvZWxpeGlyLyIgdmVyc2lvbikpCj4gKwo+ICsoZGVmaW5lKiAoc3RyaXAt cHJlZml4IG5hbWUgIzpvcHRpb25hbCAocHJlZml4ICJlbGl4aXItIikpCj4gK8KgICJSZXR1cm4g TkFNRSB3aXRob3V0IHRoZSBwcmVmaXggUFJFRklYLiIKPiArwqAgKGlmIChzdHJpbmctcHJlZml4 PyBwcmVmaXggbmFtZSkKPiArwqDCoMKgwqDCoCAoc3RyaW5nLWRyb3AgbmFtZSAoc3RyaW5nLWxl bmd0aCBwcmVmaXgpKQo+ICvCoMKgwqDCoMKgIG5hbWUpKQo+ICsKPiArKGRlZmluZSAobWl4LWJ1 aWxkLWRpciBtaXgtYnVpbGQtcm9vdCBtaXgtZW52KQo+ICvCoCAiUmV0dXJuIHRoZSBkaXJlY3Rv cnkgd2hlcmUgYnVpbGQgYXJ0aWZhY3RzIGFyZSB0byBiZSBpbnN0YWxsZWQKPiBhY2NvcmRpbmcg dG8KPiArZW4gZW52aXJvbm1lbnQgTUlYLUVOViBpbiB0aGUgY3VycmVudCBkaXJlY3RvcnkuwqAg TUlYLUJVSUxELVJPT1QKPiBkZXBlbmRzIG9uIHRoZQo+ICtwYWNrYWdlIGFyZ3VtZW50cy7CoCBT ZWU6Cj4gaHR0cHM6Ly9oZXhkb2NzLnBtL21peC8xLjE1L01peC5odG1sI21vZHVsZS1lbnZpcm9u bWVudC12YXJpYWJsZXMiCj4gK8KgIChzdHJpbmctYXBwZW5kIG1peC1idWlsZC1yb290ICIvIiBt aXgtZW52ICIvbGliIikpCj4gKwo+ICsoZGVmaW5lIChlbGl4aXItdmVyc2lvbiBpbnB1dHMpCj4g K8KgICJSZXR1cm4gYW4gWC5ZIHN0cmluZyB3aGVyZSBYIGFuZCBZIGFyZSByZXNwZWN0aXZlbHkg dGhlIG1ham9yIGFuZAo+IG1pbm9yIHZlcnNpb24gbnVtYmVyIG9mIFBBQ0tBR0UuCj4gK0V4YW1w bGU6IC9nbnUvc3RvcmUv4oCmLWVsaXhpci0xLjE0LjAg4oaSIDEuMTQiCj4gK8KgICgoY29tcG9z ZQo+ICvCoMKgwqAgKGN1dGUgc3RyaW5nLWpvaW4gPD4gIi4iKQo+ICvCoMKgwqAgKGN1dGUgdGFr ZSA8PiAyKQo+ICvCoMKgwqAgKGN1dGUgc3RyaW5nLXNwbGl0IDw+ICNcLikKPiArwqDCoMKgIHN0 cmlwLXByZWZpeAo+ICvCoMKgwqAgc3RyaXAtc3RvcmUtZmlsZS1uYW1lKQo+ICvCoMKgIChhc3Nv Yy1yZWYgaW5wdXRzICJlbGl4aXIiKSkpCk5vdGUgdGhhdCB3aGVuIGNyb3NzLWNvbXBpbGluZywg ZWxpeGlyIHdvdWxkIGxpa2VseSBiZSBhIG5hdGl2ZS1pbnB1dApyYXRoZXIgdGhhbiBhbiBpbnB1 dC4gIE5laXRoZXIgdGhpcyBwcm9jZWR1cmUgbm9yIGl0cyBjYWxsZXJzIGFwcGVhciB0bwpiZSBh d2FyZSBvZiB0aGF0LgoKWW91IGNhbiBrZWVwIHRoZSBjb21wb3NlIGludGFjdCBpZiB5b3UgZG8K ICAoYW5kPT4gKGFzc29jLXJlZiBpbnB1dHMgImVsaXhpciIpCiAgICAgICAgIChjb21wb3NlIC4u LikpClRoZW4geW91IGNhbiBjYWxsIGl0IGFzwqAKICAob3IgKGVsaXhpci12ZXJzaW9uIG5hdGl2 ZS1pbnB1dHMpIChlbGl4aXItdmVyc2lvbiBpbnB1dHMpKQoKCj4gKyhkZWZpbmUqICh1bnBhY2sg IzprZXkgc291cmNlIG1peC1wYXRoICM6YWxsb3ctb3RoZXIta2V5cykKPiArwqAgIlVucGFjayBT T1VSQ0UgaW4gdGhlIHdvcmtpbmcgZGlyZWN0b3J5LCBhbmQgY2hhbmdlIGRpcmVjdG9yeQo+IHdp dGhpbiB0aGUKPiArc291cmNlLsKgIFdoZW4gU09VUkNFIGlzIGEgZGlyZWN0b3J5LCBjb3B5IGl0 IGluIGEgc3ViLWRpcmVjdG9yeSBvZgo+IHRoZSBjdXJyZW50Cj4gK3dvcmtpbmcgZGlyZWN0b3J5 LiIKPiArwqAgKGxldCAoKGdudS11bnBhY2sgKGFzc29jLXJlZiBnbnU6JXN0YW5kYXJkLXBoYXNl cyAndW5wYWNrKSkpCj4gK8KgwqDCoCAoZ251LXVucGFjayAjOnNvdXJjZSBzb3VyY2UpCj4gK8Kg wqDCoCAod2hlbiAoZmlsZS1leGlzdHM/ICJjb250ZW50cy50YXIuZ3oiKQo+ICvCoMKgwqDCoMKg IChpbnZva2UgInRhciIgInh2ZiIgImNvbnRlbnRzLnRhci5neiIpKSkpCj4gKwo+ICsoZGVmaW5l IChsaXN0LWRpcmVjdG9yaWVzIGRpcikKPiArwqAgIkxpc3QgYWJzb2x1dGUgcGF0aHMgb2YgZGly ZWN0b3JpZXMgZGlyZWN0bHkgdW5kZXIgdGhlIGRpcmVjdG9yeQo+IERJUi4iCj4gK8KgIChtYXAg KGN1dGUgc3RyaW5nLWFwcGVuZCBkaXIgIi8iIDw+KQo+ICvCoMKgwqDCoMKgwqAgKHNjYW5kaXIg ZGlyIChsYW1iZGEgKGZpbGVuYW1lKQo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqAgKGFuZCAobm90IChtZW1iZXIgZmlsZW5hbWUgJygiLiIgIi4uIikpKQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgIChkaXJl Y3RvcnktZXhpc3RzPyAoc3RyaW5nLWFwcGVuZCBkaXIgIi8iCj4gZmlsZW5hbWUpKSkpKSkpCj4g Kwo+ICsoZGVmaW5lKiAoc2V0LW1peC1lbnYgIzprZXkgaW5wdXRzIG1peC1wYXRoIG1peC1leHMg IzphbGxvdy1vdGhlci0KPiBrZXlzKQo+ICvCoCAiU2V0IGVudmlyb25tZW50IHZhcmlhYmxlcy4K PiArU2VlOgo+IGh0dHBzOi8vaGV4ZG9jcy5wbS9taXgvMS4xNS43L01peC5odG1sI21vZHVsZS1l bnZpcm9ubWVudC12YXJpYWJsZXMiCj4gK8KgIChzZXRlbnYgIk1JWF9BUkNISVZFUyIgImFyY2hp dmVzIikKPiArwqAgKHNldGVudiAiTUlYX0JVSUxEX1JPT1QiICJfYnVpbGQiKQo+ICvCoCAoc2V0 ZW52ICJNSVhfREVQU19QQVRIIiAiZGVwcyIpCj4gK8KgIChzZXRlbnYgIk1JWF9FWFMiIG1peC1l eHMpCj4gK8KgIChzZXRlbnYgIk1JWF9IT01FIiAoZ2V0Y3dkKSkKPiArwqAgKHNldGVudiAiTUlY X1BBVEgiIChvciBtaXgtcGF0aCAiIikpCj4gK8KgIChzZXRlbnYgIk1JWF9SRUJBUjMiIChzdHJp bmctYXBwZW5kIChhc3NvYy1yZWYgaW5wdXRzICJyZWJhcjMiKQo+ICIvYmluL3JlYmFyMyIpKSkK PiArCj4gKyhkZWZpbmUqIChzZXQtZWxpeGlyLXZlcnNpb24gIzprZXkgaW5wdXRzICM6YWxsb3ct b3RoZXIta2V5cykKPiArwqAgIlN0b3JlIHRoZSB2ZXJzaW9uIG51bWJlciBvZiB0aGUgRWxpeGly IGlucHV0IGluIGEgcGFyYW1ldGVyLiIKPiArwqAgKCVlbGl4aXItdmVyc2lvbiAoZWxpeGlyLXZl cnNpb24gaW5wdXRzKSkKPiArwqAgKGZvcm1hdCAjdCAiRWxpeGlyIHZlcnNpb246IH5hfiUiICgl ZWxpeGlyLXZlcnNpb24pKSkKPiArCj4gKyhkZWZpbmUqIChidWlsZCAjOmtleSBtaXgtZW52aXJv bm1lbnRzICM6YWxsb3ctb3RoZXIta2V5cykKPiArwqAgIkJ1aWxkcyB0aGUgTWl4IHByb2plY3Qu Igo+ICvCoCAoZm9yLWVhY2ggKGxhbWJkYSAobWl4LWVudikKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKHNldGVudiAiTUlYX0VOViIgbWl4LWVudikKPiArwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgwqAgKGludm9rZSAibWl4IiAiY29tcGlsZSIgIi0tbm8tZGVwcy1jaGVjayIpKQo+ICvC oMKgwqDCoMKgwqDCoMKgwqDCoMKgIG1peC1lbnZpcm9ubWVudHMpKQo+ICsKPiArKGRlZmluZSog KGNoZWNrICM6a2V5ICh0ZXN0cz8gI3QpICM6YWxsb3ctb3RoZXIta2V5cykKPiArwqAgIlRlc3Qg dGhlIE1peCBwcm9qZWN0LiIKPiArwqAgKGlmIHRlc3RzPwo+ICvCoMKgwqDCoMKgIChpbnZva2Ug Im1peCIgInRlc3QiICItLW5vLWRlcHMtY2hlY2siKQo+ICvCoMKgwqDCoMKgIChmb3JtYXQgI3Qg InRlc3RzPyA9IH5hfiUiIHRlc3RzPykpKQo+ICsKPiArKGRlZmluZSogKHJlbW92ZS1taXgtZGly cyAuIF8pCj4gK8KgICJSZW1vdmUgYWxsIC5taXgvIGRpcmVjdG9yaWVzLgo+ICtXZSBkbyBub3Qg d2FudCB0byBjb3B5IHRoZW0gdG8gdGhlIGluc3RhbGxhdGlvbiBkaXJlY3RvcnkuIgo+ICvCoCAo Zm9yLWVhY2ggZGVsZXRlLWZpbGUtcmVjdXJzaXZlbHkKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDC oCAoZmluZC1maWxlcyAiLiIgKGZpbGUtbmFtZS1wcmVkaWNhdGUgIlxcLm1peCQiKQo+ICM6ZGly ZWN0b3JpZXM/ICN0KSkpCj4gKwo+ICsoZGVmaW5lIChwYWNrYWdlLW5hbWUtPmVsaXhpci1uYW1l IG5hbWUrdmVyKQo+ICvCoCAiQ29udmVydCB0aGUgR3VpeCBwYWNrYWdlIE5BTUUtVkVSIHRvIHRo ZSBjb3JyZXNwb25kaW5nIEVsaXhpcgo+IG5hbWUtdmVyc2lvbgo+ICtmb3JtYXQuwqAgRXhhbXBs ZTogZWxpeGlyLWEtcGtnLTEuMi4zIC0+IGFfcGtnIgo+ICvCoCAoKGNvbXBvc2UKPiArwqDCoMKg IChjdXRlIHN0cmluZy1qb2luIDw+ICJfIikKPiArwqDCoMKgIChjdXRlIGRyb3AtcmlnaHQgPD4g MSkKPiArwqDCoMKgIChjdXRlIHN0cmluZy1zcGxpdCA8PiAjXC0pKQo+ICvCoMKgIChzdHJpcC1w cmVmaXggbmFtZSt2ZXIpKSkKPiArCj4gKyhkZWZpbmUqIChpbnN0YWxsICM6a2V5Cj4gK8KgwqDC oMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqAgaW5wdXRzCj4gK8KgwqDCoMKgwqDCoMKgwqDC oMKgwqDCoMKgwqDCoMKgwqAgb3V0cHV0cwo+ICvCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKg wqDCoMKgIG5hbWUKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCBidWlsZC1w ZXItZW52aXJvbm1lbnQKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoCAjOmFs bG93LW90aGVyLWtleXMpCj4gK8KgICJJbnN0YWxsIGJ1aWxkIGFydGlmYWN0cyBpbiB0aGUgc3Rv cmUuIgo+ICvCoCAobGV0KiAoKGxpYi1uYW1lIChwYWNrYWdlLW5hbWUtPmVsaXhpci1uYW1lIG5h bWUpKQo+ICvCoMKgwqDCoMKgwqDCoMKgIChsaWItZGlyIChzdHJpbmctYXBwZW5kIChlbGl4aXIt bGliZGlyIChhc3NvYy1yZWYgb3V0cHV0cwo+ICJvdXQiKSkgIi8iIGxpYi1uYW1lKSkKPiArwqDC oMKgwqDCoMKgwqDCoCAocm9vdCAoZ2V0ZW52ICJNSVhfQlVJTERfUk9PVCIpKQo+ICvCoMKgwqDC oMKgwqDCoMKgIChlbnYgKGlmIGJ1aWxkLXBlci1lbnZpcm9ubWVudCAicHJvZCIgInNoYXJlZCIp KSkKPiArwqDCoMKgIChta2Rpci1wIGxpYi1kaXIpCj4gK8KgwqDCoCAoY29weS1yZWN1cnNpdmVs eSAoc3RyaW5nLWFwcGVuZCAobWl4LWJ1aWxkLWRpciByb290IGVudikgIi8iCj4gbGliLW5hbWUp IGxpYi1kaXIKPiArwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICM6 Zm9sbG93LXN5bWxpbmtzPyAjdCkpKQo+ICsKPiArKGRlZmluZSAlc3RhbmRhcmQtcGhhc2VzCj4g K8KgIChtb2RpZnktcGhhc2VzIGdudTolc3RhbmRhcmQtcGhhc2VzCj4gK8KgwqDCoCAoZGVsZXRl ICdib290c3RyYXApCj4gK8KgwqDCoCAoZGVsZXRlICdjb25maWd1cmUpCj4gK8KgwqDCoCAoYWRk LWFmdGVyICdpbnN0YWxsLWxvY2FsZSAnc2V0LW1peC1lbnYgc2V0LW1peC1lbnYpCj4gK8KgwqDC oCAoYWRkLWFmdGVyICdzZXQtbWl4LWVudiAnc2V0LWVsaXhpci12ZXJzaW9uIHNldC1lbGl4aXIt dmVyc2lvbikKPiArwqDCoMKgIChyZXBsYWNlICd1bnBhY2sgdW5wYWNrKQo+ICvCoMKgwqAgKHJl cGxhY2UgJ2J1aWxkIGJ1aWxkKQo+ICvCoMKgwqAgKHJlcGxhY2UgJ2NoZWNrIGNoZWNrKQo+ICvC oMKgwqAgKGFkZC1iZWZvcmUgJ2luc3RhbGwgJ3JlbW92ZS1taXgtZGlycyByZW1vdmUtbWl4LWRp cnMpCj4gK8KgwqDCoCAocmVwbGFjZSAnaW5zdGFsbCBpbnN0YWxsKSkpCj4gKwo+ICsoZGVmaW5l KiAobWl4LWJ1aWxkICM6a2V5IGlucHV0cyAocGhhc2VzICVzdGFuZGFyZC1waGFzZXMpCj4gK8Kg wqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgwqDCoMKgICM6YWxsb3ctb3RoZXIta2V5cyAj OnJlc3QgYXJncykKPiArwqAgIkJ1aWxkIHRoZSBnaXZlbiBNaXggcGFja2FnZSwgYXBwbHlpbmcg YWxsIG9mIFBIQVNFUyBpbiBvcmRlci4iCj4gK8KgIChhcHBseSBnbnU6Z251LWJ1aWxkICM6aW5w dXRzIGlucHV0cyAjOnBoYXNlcyBwaGFzZXMgYXJncykpCj4gKwo+ICs7OzsgbWl4LWJ1aWxkLXN5 c3RlbS5zY20gZW5kcyBoZXJlCj4gCj4gYmFzZS1jb21taXQ6IDA2ZjI1YTlhODViZTFiYmU3YTcw OWU1OGNlNDFjMWE4MzRlNWYxYWUKV291bGQgeW91IGJlIHNvIG5pY2UgYXMgdG8gc2VuZCBhIGNv bXBsZXRlIHNlcmllcyBhcyBhIHJldmlzaW9uPyAgV2UKaGF2ZSBmb2N1c2VkIHF1aXRlIGEgbG90 IG9uIHRoZSBpbnRyaWNhY2llcyBvZiByZWJhci1idWlsZC1zeXN0ZW0gYW5kCm1peC1idWlsZC1z eXN0ZW0gaW4gdGhlIHBhc3QgcmV2aWV3LCBidXQgZm9yIHRlc3RpbmcgcHVycG9zZXMsIGl0IHdv dWxkCmJlIG5pY2UgdG8gaGF2ZSBzb21lIChtaW5pbWFsIHNldCBvZikgcGFja2FnZXMgdGhhdCB3 ZSBjYW4gYnVpbGQgd2l0aAp0aG9zZSBpbXByb3ZlbWVudHMuCgpDaGVlcnMK