From mboxrd@z Thu Jan 1 00:00:00 1970 Path: news.gmane.org!.POSTED.ciao.gmane.org!not-for-mail From: Paul Eggert Newsgroups: gmane.emacs.devel Subject: Re: what make-dist should include [was Re: Emacs pretest 26.1.91 is out] Date: Tue, 22 Jan 2019 13:58:49 -0800 Organization: UCLA Computer Science Department Message-ID: References: <87ftu430u6.fsf@petton.fr> <12614070-f1bc-9e26-7f38-5dded990a65a@cs.ucla.edu> <4745c966-4531-f946-8eca-de996c3958d2@cs.ucla.edu> <7zfttsgahx.fsf_-_@fencepost.gnu.org> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="------------8018EF905AC6CAFB04FC3D13" Injection-Info: ciao.gmane.org; posting-host="ciao.gmane.org:195.159.176.228"; logging-data="59575"; mail-complaints-to="usenet@ciao.gmane.org" User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:60.0) Gecko/20100101 Thunderbird/60.4.0 Cc: Emacs Devel To: Glenn Morris Original-X-From: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Tue Jan 22 23:07:54 2019 Return-path: Envelope-to: ged-emacs-devel@m.gmane.org Original-Received: from lists.gnu.org ([209.51.188.17]) by ciao.gmane.org with esmtps (TLS1.0:RSA_AES_256_CBC_SHA1:256) (Exim 4.89) (envelope-from ) id 1gm4D2-000FNT-VH for ged-emacs-devel@m.gmane.org; Tue, 22 Jan 2019 23:07:53 +0100 Original-Received: from localhost ([127.0.0.1]:51100 helo=lists.gnu.org) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gm4D1-0004dt-Sh for ged-emacs-devel@m.gmane.org; Tue, 22 Jan 2019 17:07:51 -0500 Original-Received: from eggs.gnu.org ([209.51.188.92]:39130) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1gm44U-000797-N6 for emacs-devel@gnu.org; Tue, 22 Jan 2019 16:59:05 -0500 Original-Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1gm44R-0002ap-8c for emacs-devel@gnu.org; Tue, 22 Jan 2019 16:59:02 -0500 Original-Received: from zimbra.cs.ucla.edu ([131.179.128.68]:59414) by eggs.gnu.org with esmtps (TLS1.0:DHE_RSA_AES_256_CBC_SHA1:32) (Exim 4.71) (envelope-from ) id 1gm44Q-0002Yg-N8; Tue, 22 Jan 2019 16:58:59 -0500 Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 2A394161122; Tue, 22 Jan 2019 13:58:57 -0800 (PST) Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10032) with ESMTP id LPPpHmT3tNNP; Tue, 22 Jan 2019 13:58:53 -0800 (PST) Original-Received: from localhost (localhost [127.0.0.1]) by zimbra.cs.ucla.edu (Postfix) with ESMTP id 6321F161128; Tue, 22 Jan 2019 13:58:53 -0800 (PST) X-Virus-Scanned: amavisd-new at zimbra.cs.ucla.edu Original-Received: from zimbra.cs.ucla.edu ([127.0.0.1]) by localhost (zimbra.cs.ucla.edu [127.0.0.1]) (amavisd-new, port 10026) with ESMTP id 4vaWYZ_Ftcvx; Tue, 22 Jan 2019 13:58:53 -0800 (PST) Original-Received: from Penguin.CS.UCLA.EDU (Penguin.CS.UCLA.EDU [131.179.64.200]) by zimbra.cs.ucla.edu (Postfix) with ESMTPSA id 3023E161095; Tue, 22 Jan 2019 13:58:53 -0800 (PST) Openpgp: preference=signencrypt Autocrypt: addr=eggert@cs.ucla.edu; prefer-encrypt=mutual; keydata= xsFNBEyAcmQBEADAAyH2xoTu7ppG5D3a8FMZEon74dCvc4+q1XA2J2tBy2pwaTqfhpxxdGA9 Jj50UJ3PD4bSUEgN8tLZ0san47l5XTAFLi2456ciSl5m8sKaHlGdt9XmAAtmXqeZVIYX/UFS 96fDzf4xhEmm/y7LbYEPQdUdxu47xA5KhTYp5bltF3WYDz1Ygd7gx07Auwp7iw7eNvnoDTAl KAl8KYDZzbDNCQGEbpY3efZIvPdeI+FWQN4W+kghy+P6au6PrIIhYraeua7XDdb2LS1en3Ss mE3QjqfRqI/A2ue8JMwsvXe/WK38Ezs6x74iTaqI3AFH6ilAhDqpMnd/msSESNFt76DiO1ZK QMr9amVPknjfPmJISqdhgB1DlEdw34sROf6V8mZw0xfqT6PKE46LcFefzs0kbg4GORf8vjG2 Sf1tk5eU8MBiyN/bZ03bKNjNYMpODDQQwuP84kYLkX2wBxxMAhBxwbDVZudzxDZJ1C2VXujC OJVxq2kljBM9ETYuUGqd75AW2LXrLw6+MuIsHFAYAgRr7+KcwDgBAfwhPBYX34nSSiHlmLC+ KaHLeCLF5ZI2vKm3HEeCTtlOg7xZEONgwzL+fdKo+D6SoC8RRxJKs8a3sVfI4t6CnrQzvJbB n6gxdgCu5i29J1QCYrCYvql2UyFPAK+do99/1jOXT4m2836j1wARAQABzSBQYXVsIEVnZ2Vy dCA8ZWdnZXJ0QGNzLnVjbGEuZWR1PsLBfgQTAQIAKAUCTIByZAIbAwUJEswDAAYLCQgHAwIG FQgCCQoLBBYCAwECH In-Reply-To: <7zfttsgahx.fsf_-_@fencepost.gnu.org> Content-Language: en-US X-detected-operating-system: by eggs.gnu.org: GNU/Linux 3.x X-Received-From: 131.179.128.68 X-BeenThere: emacs-devel@gnu.org X-Mailman-Version: 2.1.21 Precedence: list List-Id: "Emacs development discussions." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: emacs-devel-bounces+ged-emacs-devel=m.gmane.org@gnu.org Original-Sender: "Emacs-devel" Xref: news.gmane.org gmane.emacs.devel:232614 Archived-At: This is a multi-part message in MIME format. --------------8018EF905AC6CAFB04FC3D13 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 7bit On 1/16/19 2:30 AM, Glenn Morris wrote: > I see zero practical advantages to a switch to a "distribute everything" > approach (which Emacs has never done, and nor when I check do eg tar, > texinfo, coreutils); unless it will drastically simplify make-dist and > avoid problems like the one fixed in 021f34b. If it does then I am all > for it. :) OK, proposed make-dist patch attached. This patch drastically simplifies the list of files in make-dist that needs to be maintained manually, by relying on Git to keep track of files under version control. This should help avoid problems like the one you mentioned. --------------8018EF905AC6CAFB04FC3D13 Content-Type: text/plain; charset=UTF-8; name="0001-Make-make-dist-more-automatic.txt" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="0001-Make-make-dist-more-automatic.txt" RnJvbSAyMzI1MTcyZjU5ZmFhNGYzYzFkNDEyNjJjY2YxZWJkNTIwZDViNzM2IE1vbiBTZXAg MTcgMDA6MDA6MDAgMjAwMQpGcm9tOiBQYXVsIEVnZ2VydCA8ZWdnZXJ0QGNzLnVjbGEuZWR1 PgpEYXRlOiBUdWUsIDIyIEphbiAyMDE5IDEzOjUyOjI0IC0wODAwClN1YmplY3Q6IFtQQVRD SF0gTWFrZSBtYWtlLWRpc3QgbW9yZSBhdXRvbWF0aWMKTUlNRS1WZXJzaW9uOiAxLjAKQ29u dGVudC1UeXBlOiB0ZXh0L3BsYWluOyBjaGFyc2V0PVVURi04CkNvbnRlbnQtVHJhbnNmZXIt RW5jb2Rpbmc6IDhiaXQKClNpbXBsaWZ5IG1ha2UtZGlzdCBtYWludGVuYW5jZSBieSBoYXZp bmcgaXQgZ2VuZXJhdGUgaXRzCmxpc3Qgb2YgZmlsZXMgbW9yZSBhdXRvbWF0aWNhbGx5LiAg UHV0IHRoZSBsaXN0IG9mIGRpc3RyaWJ1dGVkCmZpbGVzIGludG8gYSBmaWxlIE1BTklGRVNU IHRoYXQgY2FuIGJlIHVzZWQgaW4gdGhlIHVudXN1YWwKc2l0dWF0aW9ucyB3aGVuIHlvdeKA mXJlIG1ha2luZyBhIGRpc3RyaWJ1dGlvbiB3aXRob3V0IGhhdmluZwphY2Nlc3MgdG8gYSBH aXQgcmVwb3NpdG9yeS4KKiBtYWtlLWRpc3QgKHRvcF9sZXZlbF9DaGFuZ2VMb2cpOiBOb3cg bm9uZW1wdHkgaWYgdGhlCmRpc3RyaWJ1dGlvbiB0YXJiYWxsIHdpbGwgY29udGFpbiBhIENo YW5nZUxvZywgaW5zdGVhZCBvZgpiZWluZyBub25lbXB0eSB3aGVuIGEgQ2hhbmdlTG9nIGlz IHJlcXVlc3RlZCwgR2l0IGlzIHByZXNlbnQKYW5kIGEgcmVhZGFibGUgQ2hhbmdlTG9nIGV4 aXN0cy4gIFRoZSBuZXcgaW50ZXJwcmV0YXRpb24gbWFrZXMKdGhlIHNjcmlwdCBhIGJpdCBl YXNpZXIgdG8gZm9sbG93LgoocG9zc2libHlfbm9uX3ZjX2ZpbGVzLCBpbmZvX2ZpbGVzLCBt a2Rpcl92ZXJib3NlKQooZmlsZV90b19za2lwLCBNQU5JRkVTVF9zdWJkaXJfc2VkLCB0ZW1w c3ViZGlycyk6Ck5ldyB2YXJpYWJsZXMuCihNQU5JRkVTVCk6IFVwZGF0ZSBhbmQgdXNlIHRo aXMgZmlsZSwgd2hpY2ggbm93IHJlY29yZHMgd2hhdApmaWxlcyBhcmUgZGlzdHJpYnV0ZWQu Cih0b3BfbGV2ZWwsIHN1YmRpciwgZmlsZXMsIGZpbGUpOiBSZW1vdmUuCi0tLQogbWFrZS1k aXN0IHwgMzQ2ICsrKysrKysrKysrKy0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLQogMSBmaWxlIGNoYW5nZWQsIDc1IGluc2VydGlvbnMoKyksIDI3MSBkZWxl dGlvbnMoLSkKCmRpZmYgLS1naXQgYS9tYWtlLWRpc3QgYi9tYWtlLWRpc3QKaW5kZXggMjBi ZTYyZGExZi4uNjJlNDdiNGQxNCAxMDA3NTUKLS0tIGEvbWFrZS1kaXN0CisrKyBiL21ha2Ut ZGlzdApAQCAtMzU4LDYgKzM1OCw1MCBAQCB0ZW1wcGFyZW50PQogICAkRU1BQ1MgLWJhdGNo IC1mIGJhdGNoLWJ5dGUtcmVjb21waWxlLWRpcmVjdG9yeSBsaXNwCiBmaSAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgICMgJHVwZGF0ZSA9IHllcwogCitpZiBbICIkY2hhbmdlbG9n IiA9IHllcyBdICYmIFsgLXIgLmdpdCBdOyB0aGVuCisgIHRvcF9sZXZlbF9DaGFuZ2VMb2c9 Q2hhbmdlTG9nCitlbHNlCisgIHRvcF9sZXZlbF9DaGFuZ2VMb2c9CitmaQorCisjIEZpbGVz IHRvIGRpc3RyaWJ1dGUgdGhhdCBtaWdodCBub3QgYmUgdW5kZXIgdmVyc2lvbiBjb250cm9s LgorIyBEb24ndCBkaXN0cmlidXRlIHNpdGUtaW5pdC5lbCwgc2l0ZS1sb2FkLmVsLCBvciBk ZWZhdWx0LmVsLgorcG9zc2libHlfbm9uX3ZjX2ZpbGVzPSIKKyAgJHRvcF9sZXZlbF9DaGFu Z2VMb2cKKyAgTUFOSUZFU1QgYWNsb2NhbC5tNCBjb25maWd1cmUKKyAgYWRtaW4vY2hhcnNl dHMvamlzeDIxMzEtZmlsdGVyCisgIHNyYy9jb25maWcuaW4gc3JjL2RtcHN0cnVjdC5oIHNy Yy9lbWFjcy1tb2R1bGUuaAorICBzcmMvZmluZ2VycHJpbnQuYyBzcmMvc3RhbXAtaC5pbgor IiQoCisgIGZpbmQgYWRtaW4gZG9jIGV0YyBsaXNwIFwKKyAgICBcKCAtbmFtZSAnKi5lbCcg LW8gLW5hbWUgJyouZWxjJyAtbyAtbmFtZSAnKi5tYXAnIC1vIC1uYW1lICcqLnN0YW1wJyBc CisgICAgICAgLW8gLW5hbWUgJyoudGV4aScgLW8gLW5hbWUgJyoudGV4JyAtbyAtbmFtZSAn Ki50eHQnIFwpIFwKKyAgICAhIC1uYW1lICdzaXRlLWluaXQqJyAhIC1uYW1lICdzaXRlLWxv YWQqJyAhIC1uYW1lICdkZWZhdWx0KicKKykgfHwgZXhpdAorCitpZiBbICR3aXRoX2luZm8g PSB5ZXMgXTsgdGhlbgorICBpbmZvX2ZpbGVzPSJpbmZvL2RpciAkKGVjaG8gaW5mby8qLmlu Zm8pIiB8fCBleGl0CitlbHNlCisgIGluZm9fZmlsZXM9CitmaQorCisjIElmIEdpdCBpcyBp biB1c2UgdXBkYXRlIHRoZSBmaWxlIE1BTklGRVNULCB3aGljaCBjYW4gc3Vic3RpdHV0ZSBm b3IKKyMgJ2dpdCBscy1maWxlcycgbGF0ZXIgKGUuZy4sIGFmdGVyIGV4dHJhY3Rpb24gZnJv bSBhIHRhcmJhbGwpLgorIyBPdGhlcndpc2UsIHJlbHkgb24gdGhlIGV4aXN0aW5nIE1BTklG RVNULCB3aGljaCBzaG91bGQgYmUgbWFpbnRhaW5lZCBzb21lCisjIG90aGVyIHdheSB3aGVu IGFkZGluZyBvciBkZWxldGluZyBhIGRpc3RyaWJ1dGVkIGZpbGUgd2hpbGUgbm90IHVzaW5n IEdpdC4KK2lmIFsgJHVwZGF0ZSA9IHllcyBdICYmIFsgLXIgLmdpdCBdOyB0aGVuCisgIGVj aG8gIlVwZGF0aW5nIE1BTklGRVNUIgorICBpZiBbICR3aXRoX3Rlc3RzID0geWVzIF07IHRo ZW4KKyAgICBnaXQgbHMtZmlsZXMgPk1BTklGRVNUCisgIGVsc2UKKyAgICBnaXQgbHMtZmls ZXMgfCBncmVwIC12ICdedGVzdCcgPk1BTklGRVNUCisgIGZpIHx8IGV4aXQKKyAgcHJpbnRm ICclc1xuJyAkcG9zc2libHlfbm9uX3ZjX2ZpbGVzICRpbmZvX2ZpbGVzID4+TUFOSUZFU1Qg fHwgZXhpdAorICBzb3J0IC11IC1vIE1BTklGRVNUIE1BTklGRVNUIHx8IGV4aXQKK2ZpCisK KzxNQU5JRkVTVCB8fCBleGl0CisKIGVjaG8gIkNyZWF0aW5nIHN0YWdpbmcgZGlyZWN0b3J5 OiAnJHt0ZW1wcGFyZW50fSciCiAKIG1rZGlyICR7dGVtcHBhcmVudH0gfHwgZXhpdApAQCAt MzcwLDI5MCArNDE0LDUyIEBAIHRlbXBkaXI9CiBmaQogCiBlY2hvICJDcmVhdGluZyB0b3Ag ZGlyZWN0b3J5OiAnJHt0ZW1wZGlyfSciCi1ta2RpciAke3RlbXBkaXJ9IHx8IGV4aXQKK2lm IFsgJHZlcmJvc2UgPSB5ZXMgXSAmJiAobWtkaXIgLS12ZXJib3NlICR7dGVtcGRpcn0pID4v ZGV2L251bGwgMj4mMTsgdGhlbgorICBta2Rpcl92ZXJib3NlPSdta2RpciAtLXZlcmJvc2Un CitlbHNlCisgIG1rZGlyICR0ZW1wZGlyIHx8IGV4aXQKKyAgbWtkaXJfdmVyYm9zZT1ta2Rp cgorZmkKKworIyBmaWxlX3RvX3NraXAgaXMgbm9ybWFsbHkgZW1wdHkgdG8gbGluayBldmVy eSBmaWxlLAorIyBidXQgaXQgY2FuIGJlICdDaGFuZ2VMb2cnIGlmIHdlIGRvIG5vdCB3YW50 IHRvIGxpbmsgdGhlCisjIHRvcC1sZXZlbCBDaGFuZ2VMb2cuCitmaWxlX3RvX3NraXA9CiAK LXRvcF9sZXZlbF9DaGFuZ2VMb2c9CiBpZiBbICIkY2hhbmdlbG9nIiA9IHllcyBdOyB0aGVu CiAgIGlmIHRlc3QgLXIgLmdpdDsgdGhlbgogICAgICMjIFdoZW4gbWFraW5nIGEgcmVsZWFz ZSBvciBwcmV0ZXN0IHRoZSBDaGFuZ2VMb2cgc2hvdWxkIGFscmVhZHkKICAgICAjIyBoYXZl IGJlZW4gY3JlYXRlZCBhbmQgZWRpdGVkIGFzIG5lZWRlZC4gIERvbid0IGlnbm9yZSBpdC4K LSAgICBpZiB0ZXN0IC1yIENoYW5nZUxvZzsgdGhlbgorICAgIGlmIFsgLXIgQ2hhbmdlTG9n IF0gJiYgWyAhIC1MIENoYW5nZUxvZyBdOyB0aGVuCiAgICAgICBlY2hvICJVc2luZyBleGlz dGluZyB0b3AtbGV2ZWwgQ2hhbmdlTG9nIgotICAgICAgdG9wX2xldmVsX0NoYW5nZUxvZz1D aGFuZ2VMb2cKICAgICBlbHNlCiAgICAgICBlY2hvICJNYWtpbmcgdG9wLWxldmVsIENoYW5n ZUxvZyIKICAgICAgIG1ha2UgQ2hhbmdlTG9nIENIQU5HRUxPRz0ke3RlbXBkaXJ9L0NoYW5n ZUxvZyB8fCBcCiAgICAgICAgIHsgeD0kPzsgZWNobyAibWFrZSBDaGFuZ2VMb2cgRkFJTEVE ICh0cnkgLS1uby1jaGFuZ2Vsb2c/KSIgPiYyOyBleGl0ICR4OyB9CisgICAgICBmaWxlX3Rv X3NraXA9Q2hhbmdlTG9nCiAgICAgZmkKICAgZWxzZQogICAgIGVjaG8gIk5vIHJlcG9zaXRv cnksIHNvIG9taXR0aW5nIHRvcC1sZXZlbCBDaGFuZ2VMb2ciCiAgIGZpCiBmaQogCi0jIyMg V2UgY29weSBpbiB0aGUgdG9wLWxldmVsIGZpbGVzIGJlZm9yZSBjcmVhdGluZyB0aGUgc3Vi ZGlyZWN0b3JpZXMgaW4KLSMjIyBob3BlcyB0aGF0IHRoaXMgd2lsbCBtYWtlIHRoZSB0b3At bGV2ZWwgZmlsZXMgYXBwZWFyIGZpcnN0IGluIHRoZQotIyMjIHRhciBmaWxlOyB0aGlzIG1l YW5zIHRoYXQgcGVvcGxlIGNhbiBzdGFydCByZWFkaW5nIHRoZSBJTlNUQUxMIGFuZAotIyMj IFJFQURNRSB3aGlsZSB0aGUgcmVzdCBvZiB0aGUgdGFyIGZpbGUgaXMgc3RpbGwgdW5wYWNr aW5nLiAgV2hvb3BlZS4KLWVjaG8gIk1ha2luZyBsaW5rcyB0byB0b3AtbGV2ZWwgZmlsZXMi Ci10b3BfbGV2ZWw9JwotICBJTlNUQUxMIFJFQURNRSBCVUdTCi0gIENoYW5nZUxvZy4qWzAt OV0gTWFrZWZpbGUuaW4gYXV0b2dlbi5zaCBjb25maWd1cmUgY29uZmlndXJlLmFjCi0gIGNv bmZpZy5iYXQgbWFrZS1kaXN0IC5kaXItbG9jYWxzLmVsCi0gIGFjbG9jYWwubTQgQ09OVFJJ QlVURQotJwotbG4gJHRvcF9sZXZlbCAkdG9wX2xldmVsX0NoYW5nZUxvZyAkdGVtcGRpciB8 fCBleGl0Ci0KIGVjaG8gIkNyZWF0aW5nIHN1YmRpcmVjdG9yaWVzIgotZm9yIHN1YmRpciBp biBzaXRlLWxpc3AgXAotCSAgICAgIGxlaW0gbGVpbS9DWFRFUk0tRElDIGxlaW0vTUlTQy1E SUMgbGVpbS9TS0stRElDIFwKLQkgICAgICBidWlsZC1hdXggXAotCSAgICAgIHNyYyBzcmMv Yml0bWFwcyBsaWIgbGliLXNyYyBvbGRYTWVudSBsd2xpYiBcCi0JICAgICAgbnQgbnQvaW5j IG50L2luYy9zeXMgbnQvaW5jL2FycGEgbnQvaW5jL25ldGluZXQgbnQvaWNvbnMgXAotCSAg ICAgIGBmaW5kIGV0YyBsaXNwIGFkbWluIHRlc3QgLXR5cGUgZGAgXAotCSAgICAgIGRvYyBk b2MvZW1hY3MgZG9jL21pc2MgZG9jL21hbiBkb2MvbGlzcHJlZiBkb2MvbGlzcGludHJvIFwK LQkgICAgICBpbmZvIG00IG1vZHVsZXMgbXNkb3MgXAotCSAgICAgIG5leHRzdGVwIG5leHRz dGVwL3RlbXBsYXRlcyBcCi0JICAgICAgbmV4dHN0ZXAvQ29jb2EgbmV4dHN0ZXAvQ29jb2Ev RW1hY3MuYmFzZSBcCi0JICAgICAgbmV4dHN0ZXAvQ29jb2EvRW1hY3MuYmFzZS9Db250ZW50 cyBcCi0JICAgICAgbmV4dHN0ZXAvQ29jb2EvRW1hY3MuYmFzZS9Db250ZW50cy9SZXNvdXJj ZXMgXAotCSAgICAgIG5leHRzdGVwL0dOVXN0ZXAgXAotCSAgICAgIG5leHRzdGVwL0dOVXN0 ZXAvRW1hY3MuYmFzZSBcCi0JICAgICAgbmV4dHN0ZXAvR05Vc3RlcC9FbWFjcy5iYXNlL1Jl c291cmNlcwotZG8KLQotICBpZiBbICIkd2l0aF90ZXN0cyIgIT0gInllcyIgXTsgdGhlbgot ICAgIGNhc2UgJHN1YmRpciBpbgotICAgICAgICB0ZXN0KikgY29udGludWUgOzsKLSAgICBl c2FjCi0gIGZpCi0KLSAgIyMgc2l0ZS1saXNwIGZvciBpbi1wbGFjZSBpbnN0YWxscyAoPyku Ci0gIFsgIiRzdWJkaXIiID0gInNpdGUtbGlzcCIgXSB8fCBbIC1kICIkc3ViZGlyIiBdIHx8 IFwKLSAgICAgIGVjaG8gIldBUk5JTkc6ICRzdWJkaXIgbm90IGZvdW5kLCBtYWtpbmcgYW55 d2F5IgotICBbICIkdmVyYm9zZSIgPSAieWVzIiBdICYmIGVjaG8gIiAgJHt0ZW1wZGlyfS8k e3N1YmRpcn0iCi0gIG1rZGlyICR7dGVtcGRpcn0vJHtzdWJkaXJ9IHx8IGV4aXQKLWRvbmUK LQotZWNobyAiTWFraW5nIGxpbmtzIHRvICdsaXNwJyBhbmQgaXRzIHN1YmRpcmVjdG9yaWVz IgotZmlsZXM9YGZpbmQgbGlzcCBcKCAtbmFtZSAnKi5lbCcgLW8gLW5hbWUgJyouZWxjJyAt byAtbmFtZSAnQ2hhbmdlTG9nKicgXAotIC1vIC1uYW1lICdSRUFETUUnIFwpYCB8fCBleGl0 Ci0KLSMjIyBEb24ndCBkaXN0cmlidXRlIHNpdGUtaW5pdC5lbCwgc2l0ZS1sb2FkLmVsLCBv ciBkZWZhdWx0LmVsLgotZm9yIGZpbGUgaW4gbGlzcC9NYWtlZmlsZS5pbiAkZmlsZXM7IGRv Ci0gIGNhc2UgJGZpbGUgaW4KLSAgICAqL3NpdGUtaW5pdCp8Ki9zaXRlLWxvYWQqfCovZGVm YXVsdCopIGNvbnRpbnVlIDs7Ci0gIGVzYWMKLSAgbG4gJGZpbGUgJHRlbXBkaXIvJGZpbGUg fHwgZXhpdAotZG9uZQotCi1lY2hvICJNYWtpbmcgbGlua3MgdG8gJ2xlaW0nIGFuZCBpdHMg c3ViZGlyZWN0b3JpZXMiCi0oY2QgbGVpbSAmJgotIGxuIENoYW5nZUxvZy4qWzAtOV0gUkVB RE1FIC4uLyR7dGVtcGRpcn0vbGVpbSAmJgotIGxuIENYVEVSTS1ESUMvUkVBRE1FIENYVEVS TS1ESUMvKi50aXQgLi4vJHt0ZW1wZGlyfS9sZWltL0NYVEVSTS1ESUMgJiYKLSBsbiBTS0st RElDL1JFQURNRSBTS0stRElDL1NLSy1KSVNZTy5MIC4uLyR7dGVtcGRpcn0vbGVpbS9TS0st RElDICYmCi0gbG4gTUlTQy1ESUMvUkVBRE1FIE1JU0MtRElDLyouKiAuLi8ke3RlbXBkaXJ9 L2xlaW0vTUlTQy1ESUMgJiYKLSBsbiBNYWtlZmlsZS5pbiAuLi8ke3RlbXBkaXJ9L2xlaW0v TWFrZWZpbGUuaW4gJiYKLSBsbiBsZWltLWV4dC5lbCAuLi8ke3RlbXBkaXJ9L2xlaW0vbGVp bS1leHQuZWwgJiYKLTopIHx8IGV4aXQKLQotIyMgRklYTUUgQ2FuIHdlIG5vdCBqdXN0IHVz ZSB0aGUgImZpbmQgLXR5cGUgZiIgbWV0aG9kIGZvciB0aGlzIG9uZT8KLWVjaG8gIk1ha2lu ZyBsaW5rcyB0byAnYnVpbGQtYXV4JyIKLShjZCBidWlsZC1hdXggJiYKLSBsbiBjb25maWcu Z3Vlc3MgY29uZmlnLnN1YiBtc3lzLXRvLXczMiAuLi8ke3RlbXBkaXJ9L2J1aWxkLWF1eCAm JgotIGxuIGdpdGxvZy10by1jaGFuZ2Vsb2cgZ2l0bG9nLXRvLWVtYWNzbG9nIC4uLyR7dGVt cGRpcn0vYnVpbGQtYXV4ICYmCi0gbG4gaW5zdGFsbC1zaCBtb3ZlLWlmLWNoYW5nZSAuLi8k e3RlbXBkaXJ9L2J1aWxkLWF1eCAmJgotIGxuIHVwZGF0ZS1jb3B5cmlnaHQgdXBkYXRlLXN1 YmRpcnMgLi4vJHt0ZW1wZGlyfS9idWlsZC1hdXggJiYKLSBsbiBkaXJfdG9wIG1ha2UtaW5m by1kaXIgLi4vJHt0ZW1wZGlyfS9idWlsZC1hdXggJiYKLTopIHx8IGV4aXQKLQotZWNobyAi TWFraW5nIGxpbmtzIHRvICdzcmMnIgotIyMjIERvbid0IGRpc3RyaWJ1dGUgdGhlIGNvbmZp Z3VyZWQgdmVyc2lvbnMgb2YKLSMjIyBjb25maWcuaW4sIHBhdGhzLmluLCBidWlsZG9iai5o LCBvciBNYWtlZmlsZS5pbi4KLShjZCBzcmMgJiYKLSBsbiBbYS16QS1aXSouW2NobV0gLi4v JHt0ZW1wZGlyfS9zcmMgJiYKLSBsbiBbYS16QS1aXSouaW4gLi4vJHt0ZW1wZGlyfS9zcmMg JiYKLSBsbiBkZXBzLm1rIGRtcHN0cnVjdC5hd2sgLi4vJHt0ZW1wZGlyfS9zcmMgJiYKLSBs biBSRUFETUUgQ2hhbmdlTG9nLipbMC05XSAuLi8ke3RlbXBkaXJ9L3NyYyAmJgotIGxuIC5n ZGJpbml0IC5kYnhpbml0IC4uLyR7dGVtcGRpcn0vc3JjICYmCi0gY2QgLi4vJHt0ZW1wZGly fS9zcmMgJiYKLSBybSAtZiBnbG9iYWxzLmggY29uZmlnLmggZXBhdGhzLmggTWFrZWZpbGUg YnVpbGRvYmouaCAmJgotOikgfHwgZXhpdAotCi1lY2hvICJNYWtpbmcgbGlua3MgdG8gJ3Ny Yy9iaXRtYXBzJyIKLShjZCBzcmMvYml0bWFwcyAmJgotIGxuIFJFQURNRSAqLnhibSAuLi8u Li8ke3RlbXBkaXJ9L3NyYy9iaXRtYXBzICYmCi06KSB8fCBleGl0Ci0KLWVjaG8gIk1ha2lu ZyBsaW5rcyB0byAnbGliJyIKLShjZCBsaWIgJiYKLSBsbiBbYS16QS1aX10qLltjaF0gLi4v JHt0ZW1wZGlyfS9saWIgJiYKLSBsbiBnbnVsaWIubWsuaW4gTWFrZWZpbGUuaW4gLi4vJHt0 ZW1wZGlyfS9saWIgJiYKLSBjZCAuLi8ke3RlbXBkaXJ9L2xpYiAmJgotIHNjcmlwdD0nL1sq XS9kOyBzL1wuaW5cLmgkLy5oLycgJiYKLSBybSAtZiBgbHMgKi5pbi5oIHwgc2VkICIkc2Ny aXB0ImAgJiYKLTopIHx8IGV4aXQKLQotZWNobyAiTWFraW5nIGxpbmtzIHRvICdsaWItc3Jj JyIKLShjZCBsaWItc3JjICYmCi0gbG4gW2EtekEtWl0qLltjaF0gLi4vJHt0ZW1wZGlyfS9s aWItc3JjICYmCi0gbG4gQ2hhbmdlTG9nLipbMC05XSBNYWtlZmlsZS5pbiBSRUFETUUgLi4v JHt0ZW1wZGlyfS9saWItc3JjICYmCi0gbG4gcmNzMmxvZyAuLi8ke3RlbXBkaXJ9L2xpYi1z cmMgJiYKLTopIHx8IGV4aXQKLQotZWNobyAiTWFraW5nIGxpbmtzIHRvICdtNCciCi0oY2Qg bTQgJiYKLSBsbiAqLm00IC4uLyR7dGVtcGRpcn0vbTQgJiYKLTopIHx8IGV4aXQKLQotZWNo byAiTWFraW5nIGxpbmtzIHRvICdtb2R1bGVzJyIKLShjZCBtb2R1bGVzICYmCi0gbG4gKi5w eSAuLi8ke3RlbXBkaXJ9L21vZHVsZXMgJiYKLTopIHx8IGV4aXQKLQotZWNobyAiTWFraW5n IGxpbmtzIHRvICdudCciCi0oY2QgbnQgJiYKLSBsbiBlbWFjcy14ODYubWFuaWZlc3QgZW1h Y3MteDY0Lm1hbmlmZXN0IC4uLyR7dGVtcGRpcn0vbnQgJiYKLSBsbiBbYS16XSouYmF0IFth LXpdKi5bY2hdIC4uLyR7dGVtcGRpcn0vbnQgJiYKLSBsbiAqLmluIGdudWxpYi1jZmcubWsg Li4vJHt0ZW1wZGlyfS9udCAmJgotIGxuIG1pbmd3LWNmZy5zaXRlIGVwYXRocy5udCBJTlNU QUxMLlc2NCAuLi8ke3RlbXBkaXJ9L250ICYmCi0gbG4gQ2hhbmdlTG9nLipbMC05XSBJTlNU QUxMIFJFQURNRSBSRUFETUUuVzMyIC4uLyR7dGVtcGRpcn0vbnQgJiYKLTopIHx8IGV4aXQK LQotZWNobyAiTWFraW5nIGxpbmtzIHRvICdudC9pbmMnIGFuZCBpdHMgc3ViZGlyZWN0b3Jp ZXMiCi1mb3IgZiBpbiBgZmluZCBudC9pbmMgLXR5cGUgZiAtbmFtZSAnW2Etel0qLmgnYDsg ZG8KLSAgbG4gJGYgJHRlbXBkaXIvJGYgfHwgZXhpdAotZG9uZQotCi1lY2hvICJNYWtpbmcg bGlua3MgdG8gJ250L2ljb25zJyIKLShjZCBudC9pY29ucyAmJgotIGxuIFJFQURNRSBbYS16 XSouaWNvIC4uLy4uLyR7dGVtcGRpcn0vbnQvaWNvbnMgJiYKLSBsbiBbYS16XSouY3VyIC4u Ly4uLyR7dGVtcGRpcn0vbnQvaWNvbnMgJiYKLTopIHx8IGV4aXQKLQotZWNobyAiTWFraW5n IGxpbmtzIHRvICdtc2RvcyciCi0oY2QgbXNkb3MgJiYKLSBsbiBDaGFuZ2VMb2cuKlswLTld IElOU1RBTEwgUkVBRE1FIGVtYWNzLmljbyBlbWFjcy5waWYgLi4vJHt0ZW1wZGlyfS9tc2Rv cyAmJgotIGxuIGRlcGZpbGVzLmJhdCBpbnR0eXBlcy5oIC4uLyR7dGVtcGRpcn0vbXNkb3Mg JiYKLSBsbiBtYWlubWFrZS52MiBzZWQqLmlucCAuLi8ke3RlbXBkaXJ9L21zZG9zICYmCi06 KSB8fCBleGl0Ci0KLWVjaG8gIk1ha2luZyBsaW5rcyB0byAnbmV4dHN0ZXAnIgotKGNkIG5l eHRzdGVwICYmCi0gbG4gQ2hhbmdlTG9nLipbMC05XSBSRUFETUUgSU5TVEFMTCBNYWtlZmls ZS5pbiAuLi8ke3RlbXBkaXJ9L25leHRzdGVwICYmCi06KSB8fCBleGl0Ci0KLWVjaG8gIk1h a2luZyBsaW5rcyB0byAnbmV4dHN0ZXAvdGVtcGxhdGVzJyIKLShjZCBuZXh0c3RlcC90ZW1w bGF0ZXMgJiYKLSBsbiBFbWFjcy5kZXNrdG9wLmluIEluZm8tZ251c3RlcC5wbGlzdC5pbiBJ bmZvLnBsaXN0LmluIEluZm9QbGlzdC5zdHJpbmdzLmluIFwKLSAgIC4uLy4uLyR7dGVtcGRp cn0vbmV4dHN0ZXAvdGVtcGxhdGVzICYmCi06KSB8fCBleGl0Ci0KLWVjaG8gIk1ha2luZyBs aW5rcyB0byAnbmV4dHN0ZXAvQ29jb2EvRW1hY3MuYmFzZS9Db250ZW50cyciCi0oY2QgbmV4 dHN0ZXAvQ29jb2EvRW1hY3MuYmFzZS9Db250ZW50cyAmJgotIGxuIFBrZ0luZm8gLi4vLi4v Li4vLi4vJHt0ZW1wZGlyfS9uZXh0c3RlcC9Db2NvYS9FbWFjcy5iYXNlL0NvbnRlbnRzICYm Ci06KSB8fCBleGl0Ci0KLWVjaG8gIk1ha2luZyBsaW5rcyB0byAnbmV4dHN0ZXAvQ29jb2Ev RW1hY3MuYmFzZS9Db250ZW50cy9SZXNvdXJjZXMnIgotKGNkIG5leHRzdGVwL0NvY29hL0Vt YWNzLmJhc2UvQ29udGVudHMvUmVzb3VyY2VzICYmCi0gbG4gQ3JlZGl0cy5odG1sICouaWNu cyBcCi0gICAuLi8uLi8uLi8uLi8uLi8ke3RlbXBkaXJ9L25leHRzdGVwL0NvY29hL0VtYWNz LmJhc2UvQ29udGVudHMvUmVzb3VyY2VzICYmCi06KSB8fCBleGl0Ci0KLWVjaG8gIk1ha2lu ZyBsaW5rcyB0byAnbmV4dHN0ZXAvR05Vc3RlcC9FbWFjcy5iYXNlL1Jlc291cmNlcyciCi0o Y2QgbmV4dHN0ZXAvR05Vc3RlcC9FbWFjcy5iYXNlL1Jlc291cmNlcyAmJgotIGxuIFJFQURN RSBlbWFjcy50aWZmIFwKLSAgIC4uLy4uLy4uLy4uLyR7dGVtcGRpcn0vbmV4dHN0ZXAvR05V c3RlcC9FbWFjcy5iYXNlL1Jlc291cmNlcyAmJgotOikgfHwgZXhpdAotCi1lY2hvICJNYWtp bmcgbGlua3MgdG8gJ29sZFhNZW51JyIKLShjZCBvbGRYTWVudSAmJgotIGxuICouW2NoXSAq LmluICoubWsgLi4vJHt0ZW1wZGlyfS9vbGRYTWVudSAmJgotIGxuIFJFQURNRSBDaGFuZ2VM b2cuKlswLTldIC4uLyR7dGVtcGRpcn0vb2xkWE1lbnUgJiYKLTopIHx8IGV4aXQKLQotZWNo byAiTWFraW5nIGxpbmtzIHRvICdsd2xpYiciCi0oY2QgbHdsaWIgJiYKLSBsbiAqLltjaF0g Ki5pbiAqLm1rIC4uLyR7dGVtcGRpcn0vbHdsaWIgJiYKLSBsbiBSRUFETUUgQ2hhbmdlTG9n LipbMC05XSAuLi8ke3RlbXBkaXJ9L2x3bGliICYmCi06KSB8fCBleGl0Ci0KLSMjIEl0IGlz IGltcG9ydGFudCB0byBkaXN0cmlidXRlIGFkbWluLyBiZWNhdXNlIGl0IGNvbnRhaW5zIHNv dXJjZXMKLSMjIGZvciBnZW5lcmF0ZWQgbGlzcC9pbnRlcm5hdGlvbmFsL3VuaS0qLmVsIGZp bGVzLgotZWNobyAiTWFraW5nIGxpbmtzIHRvICdhZG1pbicgYW5kIGl0cyBzdWJkaXJlY3Rv cmllcyIKLWZvciBmIGluIGBmaW5kIGFkbWluIC10eXBlIGZgOyBkbwotICBjYXNlICRmIGlu Ci0gICAgKi9NYWtlZmlsZSkgWyAtZiAkZi5pbiBdICYmIGNvbnRpbnVlIDs7Ci0gIGVzYWMK LSAgbG4gJGYgJHRlbXBkaXIvJGYgfHwgZXhpdAotZG9uZQotCi1pZiBbICIkd2l0aF90ZXN0 cyIgPSAieWVzIiBdOyB0aGVuCi0gIGVjaG8gIk1ha2luZyBsaW5rcyB0byAndGVzdCcgYW5k IGl0cyBzdWJkaXJlY3RvcmllcyIKLSAgZm9yIGYgaW4gYGZpbmQgdGVzdCAtdHlwZSBmICEg LW5hbWUgJyoubG9nJyAhIC1uYW1lIGEub3V0IFwKLQkgICAgICAhIC1uYW1lICcqLnNvJyAh IC1uYW1lICcqLmRsbCcgISAtbmFtZSAnKi5vJwotICBgOyBkbwotICAgIGNhc2UgJGYgaW4K LSAgICAgICAgKi9NYWtlZmlsZSkgWyAtZiAkZi5pbiBdICYmIGNvbnRpbnVlIDs7Ci0gICAg ZXNhYwotICAgIGxuICRmICR0ZW1wZGlyLyRmIHx8IGV4aXQKLSAgZG9uZQotZmkKLQotZWNo byAiTWFraW5nIGxpbmtzIHRvICdldGMnIGFuZCBpdHMgc3ViZGlyZWN0b3JpZXMiCi1mb3Ig ZiBpbiBgZmluZCBldGMgLXR5cGUgZmA7IGRvCi0gIGNhc2UgJGYgaW4KLSAgICBldGMvRE9D KnxldGMvKi5weWMpIGNvbnRpbnVlIDs7Ci0gICAgIyMgQXJndWFibHkgd2Ugc2hvdWxkIG5v dCBleGNsdWRlICoucHMuCi0gICAgZXRjL3JlZmNhcmRzLyouYXV4fGV0Yy9yZWZjYXJkcy8q LmR2aXxldGMvcmVmY2FyZHMvKi5sb2d8ZXRjL3JlZmNhcmRzLyoucHMpCi0gICAgICBjb250 aW51ZSA7OwotICBlc2FjCi0gIGxuICRmICR0ZW1wZGlyLyRmIHx8IGV4aXQKLWRvbmUKLQot aWYgWyAiJHdpdGhfaW5mbyIgPSAieWVzIiBdOyB0aGVuCi0gIGVjaG8gIk1ha2luZyBsaW5r cyB0byAnaW5mbyciCi0gIGxuIGBmaW5kIGluZm8gLXR5cGUgZiAtcHJpbnRgICR7dGVtcGRp cn0vaW5mbyB8fCBleGl0Ci1maQorTUFOSUZFU1Rfc3ViZGlyX3NlZD0nCisgICRhXAorJyR0 ZW1wZGlyJy9pbmZvXAorJyR0ZW1wZGlyJy9zaXRlLWxpc3AKKyAgcyxbXi9dKiQsLAorICBz LC8kLCwKKyAgL14kL2QKKyAgcyxeLCckdGVtcGRpcicvLAorJwordGVtcHN1YmRpcnM9JChz ZWQgIiRNQU5JRkVTVF9zdWJkaXJfc2VkIiBNQU5JRkVTVCB8IHNvcnQgLXUpCiskbWtkaXJf dmVyYm9zZSAtcCAkdGVtcHN1YmRpcnMgfHwgZXhpdAogCi1lY2hvICJNYWtpbmcgbGlua3Mg dG8gJ2RvYy9lbWFjcyciCi0oY2QgZG9jL2VtYWNzICYmCi0gbG4gKi50ZXhpICouaW4gQ2hh bmdlTG9nLipbMC05XSAuLi8uLi8ke3RlbXBkaXJ9L2RvYy9lbWFjcyAmJgotOikgfHwgZXhp dAotCi1lY2hvICJNYWtpbmcgbGlua3MgdG8gJ2RvYy9taXNjJyIKLShjZCBkb2MvbWlzYyAm JgotIGxuICoudGV4aSAqLnRleCAqLmluIGdudXMtbmV3cy5lbCBDaGFuZ2VMb2cuKlswLTld IFwKLSAgIC4uLy4uLyR7dGVtcGRpcn0vZG9jL21pc2MgJiYKLTopIHx8IGV4aXQKLQotZWNo byAiTWFraW5nIGxpbmtzIHRvICdkb2MvbGlzcHJlZiciCi0oY2QgZG9jL2xpc3ByZWYgJiYK LSBsbiAqLnRleGkgKi5pbiBSRUFETUUgQ2hhbmdlTG9nLipbMC05XSAuLi8uLi8ke3RlbXBk aXJ9L2RvYy9saXNwcmVmICYmCi0gbG4gc3BlbGxmaWxlIC4uLy4uLyR7dGVtcGRpcn0vZG9j L2xpc3ByZWYgJiYKLSBsbiB0d28tdm9sdW1lLm1ha2UgdHdvLXZvbHVtZS1jcm9zcy1yZWZz LnR4dCAuLi8uLi8ke3RlbXBkaXJ9L2RvYy9saXNwcmVmICYmCi06KSB8fCBleGl0Ci0KLWVj aG8gIk1ha2luZyBsaW5rcyB0byAnZG9jL2xpc3BpbnRybyciCi0oY2QgZG9jL2xpc3BpbnRy byAmJgotIGxuICoudGV4aSAqLmluICouZXBzICoucGRmIC4uLy4uLyR7dGVtcGRpcn0vZG9j L2xpc3BpbnRybyAmJgotIGxuIFJFQURNRSBDaGFuZ2VMb2cuKlswLTldIC4uLy4uLyR7dGVt cGRpcn0vZG9jL2xpc3BpbnRybyAmJgotIGNkIC4uLy4uLyR7dGVtcGRpcn0vZG9jL2xpc3Bp bnRybyAmJgotOikgfHwgZXhpdAotCi1lY2hvICJNYWtpbmcgbGlua3MgdG8gJ2RvYy9tYW4n IgotKGNkIGRvYy9tYW4gJiYKLSBsbiAqLipbMC05XSAqLmluIC4uLy4uLyR7dGVtcGRpcn0v ZG9jL21hbiAmJgotIGNkIC4uLy4uLyR7dGVtcGRpcn0vZG9jL21hbiAmJgotIHJtIC1mIGVt YWNzLjEgJiYKLTopIHx8IGV4aXQKLQotIyMjIEl0IHdvdWxkIGJlIG5pY2UgaWYgdGhleSBj b3VsZCBhbGwgYmUgc3ltbGlua3MgdG8gdG9wLWxldmVsIGNvcHksIGJ1dAotIyMjIHlvdSdy ZSBub3Qgc3VwcG9zZWQgdG8gaGF2ZSBhbnkgc3ltbGlua3MgaW4gZGlzdHJpYnV0aW9uIHRh ciBmaWxlcy4KLWVjaG8gIk1ha2luZyBzdXJlIGNvcHlpbmcgbm90aWNlcyBhcmUgYWxsIGNv cGllcyBvZiAnQ09QWUlORyciCi1mb3Igc3ViZGlyIGluIC4gZXRjIGxlaW0gbGliIGxpYi1z cmMgbGlzcCBsd2xpYiBtc2RvcyBudCBzcmM7IGRvCi0gIHJtIC1mICR7dGVtcGRpcn0vJHtz dWJkaXJ9L0NPUFlJTkcgfHwgZXhpdAotICBjcCBDT1BZSU5HICR7dGVtcGRpcn0vJHtzdWJk aXJ9IHx8IGV4aXQKLWRvbmUKK2VjaG8gIk1ha2luZyBsaW5rcyB0byBmaWxlcyIKK3doaWxl IHJlYWQgZmlsZTsgZG8KKyAgWyAkZmlsZSA9ICIkZmlsZV90b19za2lwIiBdIHx8IGxuICRm aWxlICR0ZW1wZGlyLyRmaWxlIHx8IGV4aXQKK2RvbmUgPE1BTklGRVNUCiAKIGlmIFsgIiR7 bmV3ZXJ9IiBdOyB0aGVuCiAgIHByaW50ZiAnJXNcbicgIlJlbW92aW5nIGZpbGVzIG9sZGVy IHRoYW4gJG5ld2VyIgpAQCAtNjY0LDEwICs0NzAsNiBAQCBmaWxlcz0KICAgICAtZXhlYyBy bSAtZiB7fSBcOyB8fCBleGl0CiBmaQogCi0jIyBEb24ndCBkaXN0cmlidXRlIGJhY2t1cHMs IGF1dG9zYXZlcywgZXRjLgotZWNobyAiUmVtb3ZpbmcgdW53YW50ZWQgZmlsZXMiCi1maW5k ICR7dGVtcGRpcn0gXCggLW5hbWUgJyp+JyAtbyAtbmFtZSAnIyojJyAtbyAtbmFtZSAnLipp Z25vcmUnIC1vIC1uYW1lICc9KicgLW8gLW5hbWUgJ1RBR1MnIFwpIC1leGVjIHJtIC1mIHt9 IFw7IHx8IGV4aXQKLQogaWYgWyAiJHttYWtlX3Rhcn0iID0geWVzIF07IHRoZW4KICAgZWNo byAiTG9va2luZyBmb3IgJGRlZmF1bHRfZ3ppcCIKICAgZm91bmQ9MApAQCAtNzE1LDQgKzUx Nyw2IEBAIGZpbGVzPQogICBybSAtcmYgJHt0ZW1wcGFyZW50fQogZmkKIAotIyMjIG1ha2Ut ZGlzdCBlbmRzIGhlcmUKKyMgTG9jYWwgVmFyaWFibGVzOgorIyBzaC1iYXNpYy1vZmZzZXQ6 IDIKKyMgRW5kOgotLSAKMi4yMC4xCgo= --------------8018EF905AC6CAFB04FC3D13--