From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on inbox.vuxu.org X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=DKIM_ADSP_CUSTOM_MED, DKIM_SIGNED,DKIM_VALID,FREEMAIL_FROM,MAILING_LIST_MULTI, RCVD_IN_DNSWL_NONE autolearn=ham autolearn_force=no version=3.4.4 Received: (qmail 19496 invoked from network); 5 Aug 2021 16:59:22 -0000 Received: from tb-ob20.topicbox.com (173.228.157.66) by inbox.vuxu.org with ESMTPUTF8; 5 Aug 2021 16:59:22 -0000 Received: from tb-mx0.topicbox.com (tb-mx0.nyi.icgroup.com [10.90.30.73]) by tb-ob20.topicbox.com (Postfix) with ESMTP id B565B19162 for ; Thu, 5 Aug 2021 12:59:20 -0400 (EDT) (envelope-from bounce.mM4893eb0b25b35bb71504e5b3.r522be890-2105-11eb-b15e-8d699134e1fa@9fans.bounce.topicbox.com) Received: by tb-mx0.topicbox.com (Postfix, from userid 1132) id 7B53A30660CF; Thu, 5 Aug 2021 12:59:20 -0400 (EDT) ARC-Authentication-Results: i=2; topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=fgGFqkcD header.a=rsa-sha256 header.s=20161025 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.published-subdomain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=none,sp=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=gmail.com; spf=pass smtp.mailfrom=dogedoge61@gmail.com smtp.helo=mail-io1-f48.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:subject:from:to:date:content-type :mime-version:list-help:list-id:list-post:list-subscribe :reply-to:content-transfer-encoding:list-unsubscribe; s= sysmsg-1; t=1628182760; bh=/Gaw7l3Y7rFN71u0r0T1x71e9mOW3JidD+SiI PUlGG8=; b=cwdiczg8YFOY0LVZajca/sbOFRmx3+eV1z+fKx11PtPYWYwiNLs4D yMDogJHmOk+yRu2WVXlzmIJpsYPTzQDfe73hnp0KRwbpesK6zs6jthGJ7IGn/riq 1sWiHcP5be945b14NwdbxDaIFctZoi1LxZRnjVgs/9xBUTmQ60jU7w= ARC-Seal: i=2; a=rsa-sha256; cv=pass; d=topicbox.com; s=sysmsg-1; t= 1628182760; b=el5H2zTCaUYGz3kvNEHj2vyCxi4Z+XQQppp7c9y5nzzccZL4To yc898jHlSQea+g3b0I59bIxpnGa/Sn++8i3iOAR708sW9RxK8KGx2CFEd7qlj5n7 fIiwbRdKMfXWIAKNDDP+V0nhntLXEvz+A2YhL2kMyN/rdX3sDBG1vHnVc= Authentication-Results: topicbox.com; arc=pass; dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=fgGFqkcD header.a=rsa-sha256 header.s=20161025 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.published-subdomain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=none,sp=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=gmail.com; spf=pass smtp.mailfrom=dogedoge61@gmail.com smtp.helo=mail-io1-f48.google.com; x-internal-arc=fail (as.1.topicbox.com=pass, ams.1.topicbox.com=fail (body has been altered)) (Message modified while forwarding at Topicbox) X-Received-Authentication-Results: tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=fgGFqkcD header.a=rsa-sha256 header.s=20161025 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.published-subdomain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=none,sp=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=gmail.com; iprev=pass smtp.remote-ip=209.85.166.48 (mail-io1-f48.google.com); spf=pass smtp.mailfrom=dogedoge61@gmail.com smtp.helo=mail-io1-f48.google.com; x-aligned-from=pass (Address match); x-google-dkim=pass (2048-bit rsa key) header.d=1e100.net header.i=@1e100.net header.b=roHrU+Ya; x-me-sender=none; x-ptr=pass smtp.helo=mail-io1-f48.google.com policy.ptr=mail-io1-f48.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed; d=9fans.net; h=message-id :subject:from:to:date:content-type:mime-version:list-help :list-id:list-post:list-subscribe:reply-to :content-transfer-encoding:list-unsubscribe; s=dkim-1; bh=/Xq/+i p7Hszy407sD/xm62wI5AjzBwmpiTSEKLmTkKo=; b=Om8lsnE+NHs3Vp8U7OuwH5 PfAoFizkXnnfkqGTDPhdttwom2C3HUok+0JtCdR06DwfR1WY+RU+VHqWGhWwImAJ nVskkEdSH0MXInQ4CtQvzMZhkRJ1mqYWERHy7vfPrW9Xm8Ylu4C+vm2W6btoayYT NsWhraarmm8hfFKRjZzmQ= Received: from tb-mx1.topicbox.com (localhost.local [127.0.0.1]) by tb-mx1.topicbox.com (Postfix) with ESMTP id 0954E30DCD12 for <9fans@9fans.net>; Thu, 5 Aug 2021 12:59:11 -0400 (EDT) (envelope-from dogedoge61@gmail.com) Received: from tb-mx1.topicbox.com (localhost [127.0.0.1]) by tb-mx1.topicbox.com (Authentication Milter) with ESMTP id D6C39263FC2; Thu, 5 Aug 2021 12:59:10 -0400 ARC-Seal: i=1; a=rsa-sha256; cv=none; d=topicbox.com; s=arcseal; t= 1628182750; b=G9TvlKB32vh2ecSJNGBhFvZgeTXnF2lk4cRPVn0xbRPHK34O+L RN3DBqDbtLvAxvnjQVPESd0Bgec10rRnAa+2ftcUDCEzmdkYjeWTRy+ugM9lM8cY /dQfVUfYeRwA5mgWmiMOwhFMyj5zESNyLt9Bi9wCXd4BJeLjk4ObkMti/QTKJjc3 biJZJAYAYS6U16jb05pjvhHNS1HZFZVGq9tahbaLj2j8AU0ikzmyiuL7/YM7KM/v OvZWJcvroqKgrqtxF5HAHOiT5/zk1bhPHry7GEve8sIemfP98BUSoucXRvxpaY9u vtrvUOnrUgHSPrdSiyveBud0Hk4GH2hfTczQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d= topicbox.com; h=message-id:subject:from:to:date:content-type :mime-version; s=arcseal; t=1628182750; bh=mOE1zTHMMpJV1ulaHeM3J SDtk1bZYivttVwWkSG87Qg=; b=CF00EWfR7Bpx9zx0lhzw47wZ6gz64/xbu8FhD SOX4RG0rCJoxUStXPpEIze6fctTgVF/ePl24oOAEg0J8bFJIwvPrY5DWVulvpbFH ADdNfiRaVOizAuqLqmeZpBb7ifnadXbeVCAqwgyn/8x/9NRjFgJFRqXjTD70696h eBVpcx4T8/iXpwXHRLEYMBsAr9dvAaNUE5FVa3SdnxFAtWdXx6sPTH9lHpIe1BlV XZE9CRj3Ho851PpLCPGNqwO4iXpGKJgsyNY3VyEOBa/96Y+iDugTRzijrqVkGDWn +3bn9n1fOwQvxcwLipRj+J83oK1ZCkPLMsimZknFQW6UArhiA== ARC-Authentication-Results: i=1; tb-mx1.topicbox.com; arc=none (no signatures found); bimi=skipped (DMARC Policy is not at enforcement); dkim=pass (2048-bit rsa key sha256) header.d=gmail.com header.i=@gmail.com header.b=fgGFqkcD header.a=rsa-sha256 header.s=20161025 x-bits=2048; dmarc=pass policy.published-domain-policy=none policy.published-subdomain-policy=quarantine policy.applied-disposition=none policy.evaluated-disposition=none (p=none,sp=quarantine,d=none,d.eval=none) policy.policy-from=p header.from=gmail.com; iprev=pass smtp.remote-ip=209.85.166.48 (mail-io1-f48.google.com); spf=pass smtp.mailfrom=dogedoge61@gmail.com smtp.helo=mail-io1-f48.google.com; x-aligned-from=pass (Address match); x-google-dkim=pass (2048-bit rsa key) header.d=1e100.net header.i=@1e100.net header.b=roHrU+Ya; x-me-sender=none; x-ptr=pass smtp.helo=mail-io1-f48.google.com policy.ptr=mail-io1-f48.google.com; x-return-mx=pass header.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-return-mx=pass smtp.domain=gmail.com policy.is_org=yes (MX Records found: alt2.gmail-smtp-in.l.google.com,alt1.gmail-smtp-in.l.google.com,gmail-smtp-in.l.google.com,alt3.gmail-smtp-in.l.google.com,alt4.gmail-smtp-in.l.google.com); x-tls=pass smtp.version=TLSv1.2 smtp.cipher=ECDHE-RSA-AES256-GCM-SHA384 smtp.bits=256/256; x-vs=clean score=0 state=0 X-ME-VSCause: gggruggvucftvghtrhhoucdtuddrgedvtddrieelgdekkeculddtuddrgeduhedrtddtmd cutefuodetggdotefrodftvfcurfhrohhfihhlvgemucfhrghsthforghilhdpggftfghn shhusghstghrihgsvgdpuffrtefokffrpgfnqfghnecuuegrihhlohhuthemuceftddtne cunecujfgurhepkffuhffvffgtfgggsehmtderredtreejnecuhfhrohhmpegsihhnrghr higtrghtuceoughoghgvughoghgviedusehgmhgrihhlrdgtohhmqeenucggtffrrghtth gvrhhnpeegleelvdejveduieeuudeuieetiefguefffffgjeehtdejleeltdejhfekvddv ueenucfkphepvddtledrkeehrdduieeirdegkedpfeehrddvgedrudelvddruddujeenuc evlhhushhtvghrufhiiigvpedtnecurfgrrhgrmhepihhnvghtpedvtdelrdekhedrudei iedrgeekpdhhvghlohepmhgrihhlqdhiohduqdhfgeekrdhgohhoghhlvgdrtghomhdpmh grihhlfhhrohhmpeeoughoghgvughoghgviedusehgmhgrihhlrdgtohhmqe X-ME-VSScore: 0 X-ME-VSCategory: clean Received-SPF: pass (gmail.com ... _spf.google.com: Sender is authorized to use 'dogedoge61@gmail.com' in 'mfrom' identity (mechanism 'include:_netblocks.google.com' matched)) receiver=tb-mx1.topicbox.com; identity=mailfrom; envelope-from="dogedoge61@gmail.com"; helo=mail-io1-f48.google.com; client-ip=209.85.166.48 Received: from mail-io1-f48.google.com (mail-io1-f48.google.com [209.85.166.48]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by tb-mx1.topicbox.com (Postfix) with ESMTPS for <9fans@9fans.net>; Thu, 5 Aug 2021 12:59:10 -0400 (EDT) (envelope-from dogedoge61@gmail.com) Received: by mail-io1-f48.google.com with SMTP id y1so7583277iod.10 for <9fans@9fans.net>; Thu, 05 Aug 2021 09:59:10 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:message-id:subject:from:to:date:user-agent :mime-version; bh=mOE1zTHMMpJV1ulaHeM3JSDtk1bZYivttVwWkSG87Qg=; b=roHrU+YaxSiWLq4uT/hcArh9OagXn8nLHbdN3igI7qoYoanAjefcW1b+wziNv3TaA6 h4BNkCgArR2RSnYU7dxGLJLCqxdROUIpViQoYSc6Lw8KZROcEOfDH1XGrK/OCL1Hhrcu NJDS5v9WRqGnT7/8FWxVQnwopuam7nhYG5FmxbYemNpyfIjCkKL1aTwXMJoSfNYoHq6Z Q0iHmmtTGoFeJ7ZqeZlaew7UyaMrJgWICVqbttllmBaf41G9MmsMqPwdUNcPFbP8KXKa xw7fKvWBKULLr/Q08QxNVeYJEogthMcIm7v6Pl9GOvKx3vDvmElXlFA6hzg0waiGhTPJ 3v1g== X-Gm-Message-State: AOAM530JNDodCCHjlxf/+nXH4gSowAoq+LmdX4Ax0p4AsoxoIhnfCUik /Egukw3hvD3gqAMusPgAAjeePgAq8Ba1/A== X-Google-Smtp-Source: ABdhPJxvaJZlKqZmYDh9UkL87ZfogJHn8n6pl+y3CFXdzdqZHfqjeyp+nqI+8TSgvq158EsGbtOWww== X-Received: by 2002:a05:6638:1928:: with SMTP id p40mr5621221jal.93.1628182749390; Thu, 05 Aug 2021 09:59:09 -0700 (PDT) Received: from catnip ([35.24.192.117]) by smtp.gmail.com with ESMTPSA id p131sm647756iod.31.2021.08.05.09.59.08 for <9fans@9fans.net> (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 05 Aug 2021 09:59:08 -0700 (PDT) Message-ID: Subject: [9fans] [PATCH] Spaceindent mode for acme From: binarycat To: "9fans@9fans.net" <9fans@9fans.net> Date: Thu, 05 Aug 2021 12:59:07 -0400 Content-Type: multipart/mixed; boundary="=-SuY2pkh3pNO5iEaVKheb" User-Agent: Evolution 3.36.5-0ubuntu1 MIME-Version: 1.0 Topicbox-Policy-Reasoning: allow: sender is a member Topicbox-Message-UUID: 770d028c-f60e-11eb-9788-e30fb2d9647e Archived-At: =?UTF-8?B?PGh0dHBzOi8vOWZhbnMudG9waWNib3guY29tL2dyb3Vwcy85?= =?UTF-8?B?ZmFucy9UZDk2MDMyZWEyZWRhNTBhNS1NNDg5M2ViMGIyNWIzNWJiNzE1MDRl?= =?UTF-8?B?NWIzPg==?= List-Help: List-Id: "9fans" <9fans.9fans.net> List-Post: List-Software: Topicbox v0 List-Subscribe: Precedence: list Reply-To: 9fans <9fans@9fans.net> Content-Transfer-Encoding: 7bit List-Unsubscribe: , Topicbox-Delivery-ID: 2:9fans:437d30aa-c441-11e9-8a57-d036212d11b0:522be890-2105-11eb-b15e-8d699134e1fa:M4893eb0b25b35bb71504e5b3:1:yiMo1HcmFQO0tfgH_Ot1Gu5bE_nZaEnh0FA3VWfR4tw --=-SuY2pkh3pNO5iEaVKheb Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Content-ID: <16281827580.d2C640.428062@tb-mx0> I do prefer tabs over spaces, but sometimes you have to use spaces. For example, zig doesn't even allow the tab charachter in its source code. So, I put together a simple patch that adds a command `Spaceindent`. This command works similar to `Indent`, but changing whether to insert tabs or spaces. there is also the `-s` option to enable it on startup. The number of spaces to insert is the same as the tab width, controlled by `Tab`. My implementation may be a bit awkward, I haven't tried modifying acme to this extent before. --=20 binarycat ------------------------------------------ 9fans: 9fans Permalink: https://9fans.topicbox.com/groups/9fans/Td96032ea2eda50a5-M4893e= b0b25b35bb71504e5b3 Delivery options: https://9fans.topicbox.com/groups/9fans/subscription --=-SuY2pkh3pNO5iEaVKheb Content-Description: Content-Disposition: attachment; filename="spaceindent.patch" Content-Type: text/x-patch; name="spaceindent.patch"; charset="UTF-8" Content-Transfer-Encoding: base64 Content-ID: <16281827581.D5bF.428062@tb-mx0> RnJvbSBjNjBiMmIyYTBkYzUwMmU2MWFiN2Q4MGIzZWY1ZDBhYThiMzc2OTBiIE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBiaW5hcnljYXQgPGRvZ2Vkb2dlNjFAZ21haWwuY29tPgpEYXRl OiBUaHUsIDUgQXVnIDIwMjEgMTI6NDg6MDggLTA0MDAKU3ViamVjdDogW1BBVENIXSBzcGFjZWlu ZGVudAoKLS0tCiBhY21lLmMgfCAgNSArKysrLQogZGF0LmggIHwgIDIgKysKIGV4ZWMuYyB8IDU1 ICsrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrKysrLS0tLS0K IHRleHQuYyB8ICA3ICsrKysrKysKIHdpbmQuYyB8ICAxICsKIDUgZmlsZXMgY2hhbmdlZCwgNjQg aW5zZXJ0aW9ucygrKSwgNiBkZWxldGlvbnMoLSkKCmRpZmYgLS1naXQgYS9hY21lLmMgYi9hY21l LmMKaW5kZXggZDAwMWEyYS4uZDBjMTc3MiAxMDA2NDQKLS0tIGEvYWNtZS5jCisrKyBiL2FjbWUu YwpAQCAtMTE0LDYgKzExNCw5IEBAIHRocmVhZG1haW4oaW50IGFyZ2MsIGNoYXIgKmFyZ3ZbXSkK IAljYXNlICdyJzoKIAkJc3dhcHNjcm9sbGJ1dHRvbnMgPSBUUlVFOwogCQlicmVhazsKKwljYXNl ICdzJzoKKwkJZ2xvYmFsc3BhY2VpbmRlbnQgPSBUUlVFOworCQlicmVhazsKIAljYXNlICdXJzoK IAkJd2luc2l6ZSA9IEFSR0YoKTsKIAkJaWYod2luc2l6ZSA9PSBuaWwpCkBAIC0xMjEsNyArMTI0 LDcgQEAgdGhyZWFkbWFpbihpbnQgYXJnYywgY2hhciAqYXJndltdKQogCQlicmVhazsKIAlkZWZh dWx0OgogCVVzYWdlOgotCQlmcHJpbnQoMiwgInVzYWdlOiBhY21lIC1hIC1jIG5jb2wgLWYgZm9u dG5hbWUgLUYgZml4ZWR3aWR0aGZvbnRuYW1lIC1sIGxvYWRmaWxlIC1XIHdpbnNpemVcbiIpOwor CQlmcHJpbnQoMiwgInVzYWdlOiBhY21lIC1hcyAtYyBuY29sIC1mIGZvbnRuYW1lIC1GIGZpeGVk d2lkdGhmb250bmFtZSAtbCBsb2FkZmlsZSAtVyB3aW5zaXplXG4iKTsKIAkJdGhyZWFkZXhpdHNh bGwoInVzYWdlIik7CiAJfUFSR0VORAogCmRpZmYgLS1naXQgYS9kYXQuaCBiL2RhdC5oCmluZGV4 IDhhODFjOTcuLjkwYTM3OTQgMTAwNjQ0Ci0tLSBhL2RhdC5oCisrKyBiL2RhdC5oCkBAIC0yNDEs NiArMjQxLDcgQEAgc3RydWN0IFdpbmRvdwogCXVjaGFyCWZpbGVtZW51OwogCXVjaGFyCWRpcnR5 OwogCXVjaGFyCWF1dG9pbmRlbnQ7CisJdWNoYXIJc3BhY2VpbmRlbnQ7CiAJdWNoYXIJc2hvd2Rl bDsKIAlpbnQJCWlkOwogCVJhbmdlCWFkZHI7CkBAIC01NTMsNiArNTU0LDcgQEAgaW50CQkJZWRp dGluZzsKIGludAkJCWVycm91dGZkOwogaW50CQkJbWVzc2FnZXNpemU7CQkvKiBuZWdvdGlhdGVk IGluIDlQIHZlcnNpb24gc2V0dXAgKi8KIGludAkJCWdsb2JhbGF1dG9pbmRlbnQ7CitpbnQJCQln bG9iYWxzcGFjZWluZGVudDsKIGludAkJCWRvZG9sbGFyc2lnbnM7CiBjaGFyKgkJbXRwdDsKIApk aWZmIC0tZ2l0IGEvZXhlYy5jIGIvZXhlYy5jCmluZGV4IGJlNzkzNmEuLjU0N2U5ODggMTAwNjQ0 Ci0tLSBhL2V4ZWMuYworKysgYi9leGVjLmMKQEAgLTU1LDYgKzU1LDcgQEAgdm9pZAlzZW5keChU ZXh0KiwgVGV4dCosIFRleHQqLCBpbnQsIGludCwgUnVuZSosIGludCk7CiB2b2lkCXNvcnQoVGV4 dCosIFRleHQqLCBUZXh0KiwgaW50LCBpbnQsIFJ1bmUqLCBpbnQpOwogdm9pZAl0YWIoVGV4dCos IFRleHQqLCBUZXh0KiwgaW50LCBpbnQsIFJ1bmUqLCBpbnQpOwogdm9pZAl6ZXJveHgoVGV4dCos IFRleHQqLCBUZXh0KiwgaW50LCBpbnQsIFJ1bmUqLCBpbnQpOwordm9pZCBzcGFjZWluZGVudChU ZXh0KiwgVGV4dCosIFRleHQqLCBpbnQsIGludCwgUnVuZSosIGludCk7CiAKIHR5cGVkZWYgc3Ry dWN0IEV4ZWN0YWIgRXhlY3RhYjsKIHN0cnVjdCBFeGVjdGFiCkBAIC05NSw2ICs5Niw4IEBAIHN0 YXRpYyBSdW5lIExTb3J0W10gPSB7ICdTJywgJ28nLCAncicsICd0JywgMCB9Owogc3RhdGljIFJ1 bmUgTFRhYltdID0geyAnVCcsICdhJywgJ2InLCAwIH07CiBzdGF0aWMgUnVuZSBMVW5kb1tdID0g eyAnVScsICduJywgJ2QnLCAnbycsIDAgfTsKIHN0YXRpYyBSdW5lIExaZXJveFtdID0geyAnWics ICdlJywgJ3InLCAnbycsICd4JywgMCB9Oworc3RhdGljIFJ1bmUgTFNwYWNlaW5kZW50W10gPSB7 ICdTJywgJ3AnLCAnYScsICdjJywgJ2UnLCAnaScsICduJywgJ2QnLCAnZScsICduJywgJ3QnLCAw IH07CisKIAogRXhlY3RhYiBleGVjdGFiW10gPSB7CiAJeyBMQWJvcnQsCQlkb2Fib3J0LAlGQUxT RSwJWFhYLAkJWFhYLAkJfSwKQEAgLTExMCw2ICsxMTMsNyBAQCBFeGVjdGFiIGV4ZWN0YWJbXSA9 IHsKIAl7IExJRCwJCWlkLAkJRkFMU0UsCVhYWCwJCVhYWAkJfSwKIAl7IExJbmNsLAkJaW5jbCwJ CUZBTFNFLAlYWFgsCQlYWFgJCX0sCiAJeyBMSW5kZW50LAkJaW5kZW50LAlGQUxTRSwJWFhYLAkJ WFhYCQl9LAorCXsgTFNwYWNlaW5kZW50LAlzcGFjZWluZGVudCwJRkFMU0UsCVhYWCwJWFhYCX0s CiAJeyBMS2lsbCwJCXhraWxsLAkJRkFMU0UsCVhYWCwJCVhYWAkJfSwKIAl7IExMb2FkLAkJZHVt cCwJRkFMU0UsCUZBTFNFLAlYWFgJCX0sCiAJeyBMTG9jYWwsCQlsb2NhbCwJRkFMU0UsCVhYWCwJ CVhYWAkJfSwKQEAgLTEzOTUsMjkgKzEzOTksMzcgQEAgZW51bSB7CiAJSW9mZiA9IDEKIH07CiAK KworCiBzdGF0aWMgaW50Ci1pbmRlbnR2YWwoUnVuZSAqcywgaW50IG4pCitvbm9mZnZhbChSdW5l ICpzLCBpbnQgbiwgaW50ICpnbG9iYWwpCiB7CiAJaWYobiA8IDIpCiAJCXJldHVybiBJRXJyb3I7 CiAJaWYocnVuZXN0cm5jbXAocywgTE9OLCBuKSA9PSAwKXsKLQkJZ2xvYmFsYXV0b2luZGVudCA9 IFRSVUU7Ci0JCXdhcm5pbmcobmlsLCAiSW5kZW50IE9OXG4iKTsKKwkJKmdsb2JhbCA9IFRSVUU7 CisJCS8vd2FybmluZyhuaWwsICJJbmRlbnQgT05cbiIpOwogCQlyZXR1cm4gSUdsb2JhbDsKIAl9 CiAJaWYocnVuZXN0cm5jbXAocywgTE9GRiwgbikgPT0gMCl7Ci0JCWdsb2JhbGF1dG9pbmRlbnQg PSBGQUxTRTsKLQkJd2FybmluZyhuaWwsICJJbmRlbnQgT0ZGXG4iKTsKKwkJKmdsb2JhbCA9IEZB TFNFOworCQkvL3dhcm5pbmcobmlsLCAiSW5kZW50IE9GRlxuIik7CiAJCXJldHVybiBJR2xvYmFs OwogCX0KIAlyZXR1cm4gcnVuZXN0cm5jbXAocywgTG9uLCBuKSA9PSAwOwogfQogCitzdGF0aWMg aW50CitpbmRlbnR2YWwoUnVuZSAqcywgaW50IG4pIHsKKwlyZXR1cm4gb25vZmZ2YWwocywgbiwg Jmdsb2JhbGF1dG9pbmRlbnQpOworfQorCiBzdGF0aWMgdm9pZAogZml4aW5kZW50KFdpbmRvdyAq dywgdm9pZCAqYXJnKQogewogCVVTRUQoYXJnKTsKIAl3LT5hdXRvaW5kZW50ID0gZ2xvYmFsYXV0 b2luZGVudDsKKwl3LT5zcGFjZWluZGVudCA9IGdsb2JhbHNwYWNlaW5kZW50OwogfQogCiB2b2lk CkBAIC0xNDI2LDYgKzE0MzgsOCBAQCBpbmRlbnQoVGV4dCAqZXQsIFRleHQgKl8wLCBUZXh0ICph cmd0LCBpbnQgXzEsIGludCBfMiwgUnVuZSAqYXJnLCBpbnQgbmFyZykKIAlSdW5lICphLCAqcjsK IAlXaW5kb3cgKnc7CiAJaW50IG5hLCBsZW4sIGF1dG9pbmRlbnQ7CisJCisJCiAKIAlVU0VEKF8w KTsKIAlVU0VEKF8xKTsKQEAgLTE0NDksNiArMTQ2MywzNyBAQCBpbmRlbnQoVGV4dCAqZXQsIFRl eHQgKl8wLCBUZXh0ICphcmd0LCBpbnQgXzEsIGludCBfMiwgUnVuZSAqYXJnLCBpbnQgbmFyZykK IAkJdy0+YXV0b2luZGVudCA9IGF1dG9pbmRlbnQ7CiB9CiAKK3ZvaWQKK3NwYWNlaW5kZW50KFRl eHQgKmV0LCBUZXh0ICpfMCwgVGV4dCAqYXJndCwgaW50IF8xLCBpbnQgXzIsIFJ1bmUgKmFyZywg aW50IG5hcmcpCit7CisJUnVuZSAqYSwgKnI7CisJV2luZG93ICp3OworCWludCBuYSwgbGVuLCBz cGluZGVudDsKKwkKKwkKKworCVVTRUQoXzApOworCVVTRUQoXzEpOworCVVTRUQoXzIpOworCisJ dyA9IG5pbDsKKwlpZihldCE9bmlsICYmIGV0LT53IT1uaWwpCisJCXcgPSBldC0+dzsKKwlzcGlu ZGVudCA9IElFcnJvcjsKKwlnZXRhcmcoYXJndCwgRkFMU0UsIFRSVUUsICZyLCAmbGVuKTsKKwlp ZihyIT1uaWwgJiYgbGVuPjApCisJCXNwaW5kZW50ID0gb25vZmZ2YWwociwgbGVuLCAmZ2xvYmFs c3BhY2VpbmRlbnQpOworCWVsc2V7IC8qIEknbSBub3QgcmVhbGx5IHN1cmUgd2hhdCB0aGlzIGRv ZXMgKi8KKwkJYSA9IGZpbmRibChhcmcsIG5hcmcsICZuYSk7CisJCWlmKGEgIT0gYXJnKQorCQkJ c3BpbmRlbnQgPSBvbm9mZnZhbChhcmcsIG5hcmctbmEsICZnbG9iYWxzcGFjZWluZGVudCk7CisJ fQorCWlmKHNwaW5kZW50ID09IElHbG9iYWwpCisJCWFsbHdpbmRvd3MoZml4aW5kZW50LCBuaWwp OworCWVsc2UgaWYodyAhPSBuaWwgJiYgc3BpbmRlbnQgPj0gMCkKKwkJdy0+c3BhY2VpbmRlbnQg PSBzcGluZGVudDsKK30KKwogdm9pZAogdGFiKFRleHQgKmV0LCBUZXh0ICpfMCwgVGV4dCAqYXJn dCwgaW50IF8xLCBpbnQgXzIsIFJ1bmUgKmFyZywgaW50IG5hcmcpCiB7CmRpZmYgLS1naXQgYS90 ZXh0LmMgYi90ZXh0LmMKaW5kZXggMDk0MjJkZC4uMDE3MzBlMCAxMDA2NDQKLS0tIGEvdGV4dC5j CisrKyBiL3RleHQuYwpAQCAtOTAyLDYgKzkwMiwxMyBAQCB0ZXh0dHlwZShUZXh0ICp0LCBSdW5l IHIpCiAJCQl9CiAJCX0KIAkJYnJlYWs7IC8qIGZhbGwgdGhyb3VnaCB0byBub3JtYWwgY29kZSAq LworCWNhc2UgJ1x0JzoKKwkJaWYodC0+dy0+c3BhY2VpbmRlbnQpeworCQkJZm9yKGk9MDsgaTx0 LT53LT5ib2R5LnRhYnN0b3A7IGkrKykKKwkJCQl0ZXh0dHlwZSh0LCAnICcpOworCQkJcmV0dXJu OworCQl9CisJCWJyZWFrOwogCX0KIAkvKiBvdGhlcndpc2Ugb3JkaW5hcnkgY2hhcmFjdGVyOyBq dXN0IGluc2VydCwgdHlwaWNhbGx5IGluIGNhY2hlcyBvZiBhbGwgdGV4dHMgKi8KIAlmb3IoaT0w OyBpPHQtPmZpbGUtPm50ZXh0OyBpKyspewpkaWZmIC0tZ2l0IGEvd2luZC5jIGIvd2luZC5jCmlu ZGV4IDBjYmE1OTIuLmFiZWFjZjAgMTAwNjQ0Ci0tLSBhL3dpbmQuYworKysgYi93aW5kLmMKQEAg LTgxLDYgKzgxLDcgQEAgd2luaW5pdChXaW5kb3cgKncsIFdpbmRvdyAqY2xvbmUsIFJlY3Rhbmds ZSByKQogCXctPmZpbGVtZW51ID0gVFJVRTsKIAl3LT5tYXhsaW5lcyA9IHctPmJvZHkuZnIubWF4 bGluZXM7CiAJdy0+YXV0b2luZGVudCA9IGdsb2JhbGF1dG9pbmRlbnQ7CisJdy0+c3BhY2VpbmRl bnQgPSBnbG9iYWxzcGFjZWluZGVudDsKIAlpZihjbG9uZSl7CiAJCXctPmRpcnR5ID0gY2xvbmUt PmRpcnR5OwogCQl3LT5hdXRvaW5kZW50ID0gY2xvbmUtPmF1dG9pbmRlbnQ7Ci0tIAoyLjI1LjEK Cg== --=-SuY2pkh3pNO5iEaVKheb--