From mboxrd@z Thu Jan 1 00:00:00 1970 From: Petter Subject: Re: [PATCH] gnu: Remove redundancy where mkdir-p is followed by install-file . Date: Mon, 21 Nov 2016 20:06:21 +0100 Message-ID: <1a37cdc052637ac3f759b87777d35706@mykolab.ch> References: <5cf95ba2b20f58e0bfa9392ea0eb92cf@mykolab.ch> <20161120170537.GA10828@jasmine> Mime-Version: 1.0 Content-Type: multipart/mixed; boundary="=_f61d54c4c3eaefb7d60266f97e203f8a" Return-path: Received: from eggs.gnu.org ([2001:4830:134:3::10]:59277) by lists.gnu.org with esmtp (Exim 4.71) (envelope-from ) id 1c8tvD-0000WY-D1 for guix-devel@gnu.org; Mon, 21 Nov 2016 14:06:32 -0500 Received: from Debian-exim by eggs.gnu.org with spam-scanned (Exim 4.71) (envelope-from ) id 1c8tv9-0007cn-1c for guix-devel@gnu.org; Mon, 21 Nov 2016 14:06:31 -0500 In-Reply-To: <20161120170537.GA10828@jasmine> List-Id: "Development of GNU Guix and the GNU System distribution." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: guix-devel-bounces+gcggd-guix-devel=m.gmane.org@gnu.org Sender: "Guix-devel" To: Leo Famulari , ludo@gnu.org Cc: guix-devel@gnu.org --=_f61d54c4c3eaefb7d60266f97e203f8a Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset=US-ASCII; format=flowed Hi, Leo: Aha, yes you are right. I copy+pasted, and didn't realize those [source] bits referred to fields in a recipe... Now I do, thanks! :) Sure, I bring to you, two patches this time. One for master, and one for core-updates. Not sure how to name the patch files properly, so I just put branch name at the end. Ludo: I like nitpicking ;) I checked the packages with `guix refresh -l`, output below: No dependents other than itself: eigensoft-6.1.2-1.b14d1e202 No dependents other than itself: snap-aligner-1.0beta.18 No dependents other than itself: pardre-1.1.5 No dependents other than itself: piranha-1.2.1-1.0466d364b No dependents other than itself: hypre-2.11.0 No dependents other than itself: mpc123-0.2.4 No dependents other than itself: tuxguitar-1.3.2 No dependents other than itself: impressive-0.11.1 $ guix refresh -l bwa@0.7.12 A single dependent package: bamm-1.7.3 $ guix refresh -l qemu@2.7.0 Building the following 2 packages would ensure 5 dependent packages are rebuilt: virt-manager-1.4.0 python-libvirt-2.0.0 Let me know if there are any more issues. Best, Petter On 2016-11-20 18:05, Leo Famulari wrote: > On Sun, Nov 20, 2016 at 04:28:29PM +0100, Petter wrote: >> From 595d438789c7c9a293ae7fac500ace7422073624 Mon Sep 17 00:00:00 2001 >> From: Petter >> Date: Sun, 20 Nov 2016 13:39:13 +0100 >> Subject: [PATCH] gnu: Remove redundancy where mkdir-p is >> followed by >> install-file . >> >> * gnu/packages/bioinformatics.scm (bwa)[source]: Remove redundant >> mkdir-p. >> * gnu/packages/bioinformatics.scm (eigensoft)[source]: Likewise. >> * gnu/packages/bioinformatics.scm (snap-aligner)[source]: Likewise. >> * gnu/packages/bioinformatics.scm (pardre)[source]: Likewise. >> * gnu/packages/bioinformatics.scm (piranha)[source]: Likewise. >> * gnu/packages/maths.scm (hypre)[source]: Likewise. >> * gnu/packages/mp3.scm (mpc123)[source]: Likewise. >> * gnu/packages/music.scm (tuxguitar)[source]: Likewise. >> * gnu/packages/pdf.scm (impressive)[source]: Likewise. >> * gnu/packages/qemu.scm (qemu)[source]: Likewise. >> * gnu/packages/tls.scm (openssl)[source]: Likewise. > > Thanks! A few requests... > > First, I think that most, if not all, of these changes are not in the > [source] field of the changed package definitions. I bet that they are > all in the [arguments] field. Can you send a revised patch with an > updated commit message? > > Second, we can't change the OpenSSL package on the master branch, > because many things depend on it: > > $ guix refresh -l openssl@1.0.2 > Building the following 1090 packages would ensure 2981 dependent > packages are rebuilt > [...] > > We do non-security related changes to that sort of "core" package on > the > core-updates branch, which is merged into master every couple months. > Otherwise, we'd be rebuilding everything constantly, and users would be > unhappy. > > So, will you submit a separate patch for the OpenSSL change? Make sure > it applies cleanly to the core-updates branch. You don't need to try > building this; it will take forever, as you noticed. --=_f61d54c4c3eaefb7d60266f97e203f8a Content-Transfer-Encoding: base64 Content-Type: text/x-diff; name="0001-gnu-Remove-redundancy-where-mkdir-p-dir-is-[master].patch" Content-Disposition: attachment; filename="0001-gnu-Remove-redundancy-where-mkdir-p-dir-is-[master].patch"; size=5863 RnJvbSBmMGIyYWJlMWZjYmZjZDE2ZjJlNmE2MTY1Zjk4NWRkOWRkN2RjZmYyIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQZXR0ZXIgPHBldHRlckBteWtvbGFiLmNoPgpEYXRlOiBNb24s IDIxIE5vdiAyMDE2IDE5OjE4OjU1ICswMTAwClN1YmplY3Q6IFtQQVRDSF0gZ251OiBSZW1vdmUg cmVkdW5kYW5jeSB3aGVyZSBta2Rpci1wIDxkaXI+IGlzIGZvbGxvd2VkIGJ5ICAKIGluc3RhbGwt ZmlsZSA8ZmlsZT4gPGRpcj4uCgoqIGdudS9wYWNrYWdlcy9iaW9pbmZvcm1hdGljcy5zY20gKGJ3 YSlbYXJndW1lbnRzXTogUmVtb3ZlIHJlZHVuZGFudCBta2Rpci1wLgooZWlnZW5zb2Z0KVthcmd1 bWVudHNdOiBMaWtld2lzZS4KKHNuYXAtYWxpZ25lcilbYXJndW1lbnRzXTogTGlrZXdpc2UuCihw YXJkcmUpW2FyZ3VtZW50c106IExpa2V3aXNlLgoocGlyYW5oYSlbYXJndW1lbnRzXTogTGlrZXdp c2UuCiogZ251L3BhY2thZ2VzL21hdGhzLnNjbSAoaHlwcmUpW2FyZ3VtZW50c106IExpa2V3aXNl LgoqIGdudS9wYWNrYWdlcy9tcDMuc2NtIChtcGMxMjMpW2FyZ3VtZW50c106IExpa2V3aXNlLgoq IGdudS9wYWNrYWdlcy9tdXNpYy5zY20gKHR1eGd1aXRhcilbYXJndW1lbnRzXTogTGlrZXdpc2Uu CiogZ251L3BhY2thZ2VzL3BkZi5zY20gKGltcHJlc3NpdmUpW2FyZ3VtZW50c106IExpa2V3aXNl LgoqIGdudS9wYWNrYWdlcy9xZW11LnNjbSAocWVtdSlbYXJndW1lbnRzXTogTGlrZXdpc2UuCi0t LQogZ251L3BhY2thZ2VzL2Jpb2luZm9ybWF0aWNzLnNjbSB8IDcgLS0tLS0tLQogZ251L3BhY2th Z2VzL21hdGhzLnNjbSAgICAgICAgICB8IDEgLQogZ251L3BhY2thZ2VzL21wMy5zY20gICAgICAg ICAgICB8IDEgLQogZ251L3BhY2thZ2VzL211c2ljLnNjbSAgICAgICAgICB8IDEgLQogZ251L3Bh Y2thZ2VzL3BkZi5zY20gICAgICAgICAgICB8IDEgLQogZ251L3BhY2thZ2VzL3FlbXUuc2NtICAg ICAgICAgICB8IDEgLQogNiBmaWxlcyBjaGFuZ2VkLCAxMiBkZWxldGlvbnMoLSkKCmRpZmYgLS1n aXQgYS9nbnUvcGFja2FnZXMvYmlvaW5mb3JtYXRpY3Muc2NtIGIvZ251L3BhY2thZ2VzL2Jpb2lu Zm9ybWF0aWNzLnNjbQppbmRleCA2NGM3YmJhLi45N2QzZTQ4IDEwMDY0NAotLS0gYS9nbnUvcGFj a2FnZXMvYmlvaW5mb3JtYXRpY3Muc2NtCisrKyBiL2dudS9wYWNrYWdlcy9iaW9pbmZvcm1hdGlj cy5zY20KQEAgLTEyNjEsOSArMTI2MSw2IEBAIHNwbGljZSBqdW5jdGlvbnMgYmV0d2VlbiBleG9u cy4iKQogICAgICAgICAgICAgICAgICAgICAgIChhc3NvYy1yZWYgb3V0cHV0cyAib3V0IikgIi9z aGFyZS9kb2MvYndhIikpCiAgICAgICAgICAgICAgICAgKG1hbiAoc3RyaW5nLWFwcGVuZAogICAg ICAgICAgICAgICAgICAgICAgIChhc3NvYy1yZWYgb3V0cHV0cyAib3V0IikgIi9zaGFyZS9tYW4v bWFuMSIpKSkKLSAgICAgICAgICAgIChta2Rpci1wIGJpbikKLSAgICAgICAgICAgIChta2Rpci1w IGRvYykKLSAgICAgICAgICAgIChta2Rpci1wIG1hbikKICAgICAgICAgICAgIChpbnN0YWxsLWZp bGUgImJ3YSIgYmluKQogICAgICAgICAgICAgKGluc3RhbGwtZmlsZSAiUkVBRE1FLm1kIiBkb2Mp CiAgICAgICAgICAgICAoaW5zdGFsbC1maWxlICJid2EuMSIgbWFuKSkpCkBAIC0yMTU1LDcgKzIx NTIsNiBAQCBvZiBudWNsZWljIGFjaWQgYmluZGluZyBwcm90ZWlucy4iKQogICAgICAgICAgICAg IChsYW1iZGEqICgjOmtleSBvdXRwdXRzICM6YWxsb3ctb3RoZXIta2V5cykKICAgICAgICAgICAg ICAgIChsZXQqICgob3V0IChhc3NvYy1yZWYgb3V0cHV0cyAib3V0IikpCiAgICAgICAgICAgICAg ICAgICAgICAgKGJpbiAgKHN0cmluZy1hcHBlbmQgb3V0ICIvYmluIikpKQotICAgICAgICAgICAg ICAgICAobWtkaXItcCBiaW4pCiAgICAgICAgICAgICAgICAgIChmb3ItZWFjaCAobGFtYmRhIChm aWxlKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoaW5zdGFsbC1maWxlIGZpbGUgYmlu KSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgIChmaW5kLWZpbGVzICIuLi9iaW4iICIuKiIp KQpAQCAtNDgzNCw3ICs0ODMwLDYgQEAgb3B0aW9uYWxseSBjb21wcmVzc2VkIGJ5IGd6aXAuIikK ICAgICAgICAgICAgKGxhbWJkYSogKCM6a2V5IG91dHB1dHMgIzphbGxvdy1vdGhlci1rZXlzKQog ICAgICAgICAgICAgIChsZXQqICgob3V0IChhc3NvYy1yZWYgb3V0cHV0cyAib3V0IikpCiAgICAg ICAgICAgICAgICAgICAgIChiaW4gKHN0cmluZy1hcHBlbmQgb3V0ICIvYmluIikpKQotICAgICAg ICAgICAgICAgKG1rZGlyLXAgYmluKQogICAgICAgICAgICAgICAgKGluc3RhbGwtZmlsZSAic25h cC1hbGlnbmVyIiBiaW4pCiAgICAgICAgICAgICAgICAoaW5zdGFsbC1maWxlICJTTkFQQ29tbWFu ZCIgYmluKQogICAgICAgICAgICAgICAgI3QpKSkpKSkKQEAgLTU2OTQsNyArNTY4OSw2IEBAIE5l ZWRsZW1hbi1XdW5zY2gpLiIpCiAgICAgICAgICAocmVwbGFjZSAnaW5zdGFsbAogICAgICAgICAg ICAobGFtYmRhKiAoIzprZXkgb3V0cHV0cyAjOmFsbG93LW90aGVyLWtleXMpCiAgICAgICAgICAg ICAgKGxldCAoKGJpbiAoc3RyaW5nLWFwcGVuZCAoYXNzb2MtcmVmIG91dHB1dHMgIm91dCIpICIv YmluIikpKQotICAgICAgICAgICAgICAgKG1rZGlyLXAgYmluKQogICAgICAgICAgICAgICAgKGlu c3RhbGwtZmlsZSAiUGFyRFJlIiBiaW4pCiAgICAgICAgICAgICAgICAjdCkpKSkpKQogICAgIChp bnB1dHMKQEAgLTc1NzIsNyArNzU2Niw2IEBAIGludGVydmFscyAoZS5nLiBnZW5lcywgc2VxdWVu Y2UgYWxpZ25tZW50cykuIikKICAgICAgICAgICAgICAobGFtYmRhKiAoIzprZXkgb3V0cHV0cyAj OmFsbG93LW90aGVyLWtleXMpCiAgICAgICAgICAgICAgICAobGV0KiAoKG91dCAoYXNzb2MtcmVm IG91dHB1dHMgIm91dCIpKQogICAgICAgICAgICAgICAgICAgICAgIChiaW4gKHN0cmluZy1hcHBl bmQgb3V0ICIvYmluIikpKQotICAgICAgICAgICAgICAgICAobWtkaXItcCBiaW4pCiAgICAgICAg ICAgICAgICAgIChmb3ItZWFjaCAobGFtYmRhIChmaWxlKQogICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAoaW5zdGFsbC1maWxlIGZpbGUgYmluKSkKICAgICAgICAgICAgICAgICAgICAgICAg ICAgIChmaW5kLWZpbGVzICJiaW4iICIuKiIpKSkKZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9t YXRocy5zY20gYi9nbnUvcGFja2FnZXMvbWF0aHMuc2NtCmluZGV4IGExYmQ3ODQuLjBjNTFmNmQg MTAwNjQ0Ci0tLSBhL2dudS9wYWNrYWdlcy9tYXRocy5zY20KKysrIGIvZ251L3BhY2thZ2VzL21h dGhzLnNjbQpAQCAtMjcyMyw3ICsyNzIzLDYgQEAgc2V0LiIpCiAgICAgICAgICAgICAgOzsgQ3Vz dG9tIGluc3RhbGwgYmVjYXVzZSBkb2NzL01ha2VmaWxlIGRvZXNuJ3QgaG9ub3IgJHtkb2NkaXJ9 LgogICAgICAgICAgICAgIChsZXQqICgoZG9jIChhc3NvYy1yZWYgb3V0cHV0cyAiZG9jIikpCiAg ICAgICAgICAgICAgICAgICAgIChkb2NkaXIgKHN0cmluZy1hcHBlbmQgZG9jICIvc2hhcmUvZG9j L2h5cHJlLSIgLHZlcnNpb24pKSkKLSAgICAgICAgICAgICAgIChta2Rpci1wIGRvY2RpcikKICAg ICAgICAgICAgICAgICh3aXRoLWRpcmVjdG9yeS1leGN1cnNpb24gImRvY3MiCiAgICAgICAgICAg ICAgICAgIChmb3ItZWFjaCAobGFtYmRhIChiYXNlKQogICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAoaW5zdGFsbC1maWxlIChzdHJpbmctYXBwZW5kIGJhc2UgIi5wZGYiKSBkb2NkaXIpCmRp ZmYgLS1naXQgYS9nbnUvcGFja2FnZXMvbXAzLnNjbSBiL2dudS9wYWNrYWdlcy9tcDMuc2NtCmlu ZGV4IGNlZWY4OTYuLjdmMDA5OWUgMTAwNjQ0Ci0tLSBhL2dudS9wYWNrYWdlcy9tcDMuc2NtCisr KyBiL2dudS9wYWNrYWdlcy9tcDMuc2NtCkBAIC00NDEsNyArNDQxLDYgQEAgZm9ybWF0LiIpCiAg ICAgICAgICAgIChsYW1iZGEqICgjOmtleSBvdXRwdXRzICM6YWxsb3ctb3RoZXIta2V5cykKICAg ICAgICAgICAgICAobGV0KiAoKG91dCAoYXNzb2MtcmVmIG91dHB1dHMgIm91dCIpKQogICAgICAg ICAgICAgICAgICAgICAoYmluIChzdHJpbmctYXBwZW5kIG91dCAiL2JpbiIpKSkKLSAgICAgICAg ICAgICAgIChta2Rpci1wIGJpbikKICAgICAgICAgICAgICAgIChpbnN0YWxsLWZpbGUgIm1wYzEy MyIgYmluKSkpKSkKICAgICAgICAjOnRlc3RzPyAjZikpCiAgICAgKG5hdGl2ZS1pbnB1dHMKZGlm ZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9tdXNpYy5zY20gYi9nbnUvcGFja2FnZXMvbXVzaWMuc2Nt CmluZGV4IGIzMmIwODQuLmExOWMyZWIgMTAwNjQ0Ci0tLSBhL2dudS9wYWNrYWdlcy9tdXNpYy5z Y20KKysrIGIvZ251L3BhY2thZ2VzL211c2ljLnNjbQpAQCAtMTIxNiw3ICsxMjE2LDYgQEAgaXMg c3ViamVjdGl2ZS4iKQogICAgICAgICAgICAgICAgICAgICAobGliICAgKHN0cmluZy1hcHBlbmQg c2hhcmUgIi9qYXZhIikpCiAgICAgICAgICAgICAgICAgICAgIChzd3QgICAoYXNzb2MtcmVmIGlu cHV0cyAiamF2YS1zd3QiKSkpCiAgICAgICAgICAgICAgICAobWtkaXItcCBiaW4pCi0gICAgICAg ICAgICAgICAobWtkaXItcCBsaWIpCiAgICAgICAgICAgICAgICA7OyBpbnN0YWxsIGFsbCBqYXJz CiAgICAgICAgICAgICAgICAoZm9yLWVhY2ggKGxhbWJkYSAoZmlsZSkKICAgICAgICAgICAgICAg ICAgICAgICAgICAgIChpbnN0YWxsLWZpbGUgZmlsZSBsaWIpKQpkaWZmIC0tZ2l0IGEvZ251L3Bh Y2thZ2VzL3BkZi5zY20gYi9nbnUvcGFja2FnZXMvcGRmLnNjbQppbmRleCA5YzZlOWE5Li4zOWY0 ZDAyIDEwMDY0NAotLS0gYS9nbnUvcGFja2FnZXMvcGRmLnNjbQorKysgYi9nbnUvcGFja2FnZXMv cGRmLnNjbQpAQCAtNzAxLDcgKzcwMSw2IEBAIHZlY3RvciBmb3JtYXRzLiIpCiAgICAgICAgICAg ICAgICAgICAgICAgICAgICAgKCwoc3RyaW5nLWFwcGVuZCBzZGwgIi9saWIiKSkpCiAgICAgICAg ICAgICAgICAgICAgICAgICAgIGAoIlBBVEgiICI6IiBwcmVmaXggICAgIDtmb3IgcGRmdG9wcG0K ICAgICAgICAgICAgICAgICAgICAgICAgICAgICAoLChzdHJpbmctYXBwZW5kIHhwZGYgIi9iaW4i KSkpKQotICAgICAgICAgICAgICAgICAgICAgICAgKG1rZGlyLXAgbWFuMSkKICAgICAgICAgICAg ICAgICAgICAgICAgIChpbnN0YWxsLWZpbGUgImltcHJlc3NpdmUuMSIgbWFuMSkKICAgICAgICAg ICAgICAgICAgICAgICAgICN0KSkpKSkpCiAgICAgKGhvbWUtcGFnZSAiaHR0cDovL2ltcHJlc3Np dmUuc291cmNlZm9yZ2UubmV0IikKZGlmZiAtLWdpdCBhL2dudS9wYWNrYWdlcy9xZW11LnNjbSBi L2dudS9wYWNrYWdlcy9xZW11LnNjbQppbmRleCBmNmUzNGNhLi4zYzQ4YjdhIDEwMDY0NAotLS0g YS9nbnUvcGFja2FnZXMvcWVtdS5zY20KKysrIGIvZ251L3BhY2thZ2VzL3FlbXUuc2NtCkBAIC0x MTcsNyArMTE3LDYgQEAKICAgICAgICAgICAgICAgICAgKGxldCAoKG91dCAoYXNzb2MtcmVmIG91 dHB1dHMgIm91dCIpKSkKICAgICAgICAgICAgICAgICAgICAoYW5kICh6ZXJvPyAoc3lzdGVtKiAi bWFrZSIgImluZm8iKSkKICAgICAgICAgICAgICAgICAgICAgICAgIChsZXQgKChpbmZvZGlyIChz dHJpbmctYXBwZW5kIG91dCAiL3NoYXJlL2luZm8iKSkpCi0gICAgICAgICAgICAgICAgICAgICAg ICAgIChta2Rpci1wIGluZm9kaXIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgIChmb3ItZWFj aCAobGFtYmRhIChpbmZvKQogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAo aW5zdGFsbC1maWxlIGluZm8gaW5mb2RpcikpCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgICAgICAoZmluZC1maWxlcyAiLiIgIlxcLmluZm8kIikpCi0tIAoyLjEwLjEKCg== --=_f61d54c4c3eaefb7d60266f97e203f8a Content-Transfer-Encoding: base64 Content-Type: text/x-diff; name="0001-gnu-Remove-redundancy-where-mkdir-p-d[core-updates].patch" Content-Disposition: attachment; filename="0001-gnu-Remove-redundancy-where-mkdir-p-d[core-updates].patch"; size=924 RnJvbSAwYTY2OWM1ZjBlMjNjYzEzMzk3MWE5MTkyNmIxMDBjZDBjMzdlOTQ5IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBQZXR0ZXIgPHBldHRlckBteWtvbGFiLmNoPgpEYXRlOiBNb24s IDIxIE5vdiAyMDE2IDE5OjMwOjUwICswMTAwClN1YmplY3Q6IFtQQVRDSF0gZ251OiBSZW1vdmUg cmVkdW5kYW5jeSB3aGVyZSBta2Rpci1wIDxkaXI+IGlzIGZvbGxvd2VkIGJ5ICAKIGluc3RhbGwt ZmlsZSA8ZmlsZT4gPGRpcj4uCgoqIGdudS9wYWNrYWdlcy90bHMuc2NtIChvcGVuc3NsKVthcmd1 bWVudHNdOiBSZW1vdmUgcmVkdW5kYW50IChta2Rpci1wKS4KLS0tCiBnbnUvcGFja2FnZXMvdGxz LnNjbSB8IDEgLQogMSBmaWxlIGNoYW5nZWQsIDEgZGVsZXRpb24oLSkKCmRpZmYgLS1naXQgYS9n bnUvcGFja2FnZXMvdGxzLnNjbSBiL2dudS9wYWNrYWdlcy90bHMuc2NtCmluZGV4IDc0Y2MyNWIu LmJlYTE1ZmEgMTAwNjQ0Ci0tLSBhL2dudS9wYWNrYWdlcy90bHMuc2NtCisrKyBiL2dudS9wYWNr YWdlcy90bHMuc2NtCkBAIC0yOTQsNyArMjk0LDYgQEAgcmVxdWlyZWQgc3RydWN0dXJlcy4iKQog ICAgICAgICAgICAgICAgICAgIChsaWIgICAgKHN0cmluZy1hcHBlbmQgb3V0ICIvbGliIikpCiAg ICAgICAgICAgICAgICAgICAgKHN0YXRpYyAoYXNzb2MtcmVmIG91dHB1dHMgInN0YXRpYyIpKQog ICAgICAgICAgICAgICAgICAgIChzbGliICAgKHN0cmluZy1hcHBlbmQgc3RhdGljICIvbGliIikp KQotICAgICAgICAgICAgICAobWtkaXItcCBzbGliKQogICAgICAgICAgICAgICAoZm9yLWVhY2gg KGxhbWJkYSAoZmlsZSkKICAgICAgICAgICAgICAgICAgICAgICAgICAgKGluc3RhbGwtZmlsZSBm aWxlIHNsaWIpCiAgICAgICAgICAgICAgICAgICAgICAgICAgIChkZWxldGUtZmlsZSBmaWxlKSkK LS0gCjIuMTAuMQoK --=_f61d54c4c3eaefb7d60266f97e203f8a--