From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mp10.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by ms5.migadu.com with LMTPS id sOQ6MJGt8mOpNgEAbAwnHQ (envelope-from ) for ; Mon, 20 Feb 2023 00:15:29 +0100 Received: from aspmx1.migadu.com ([2001:41d0:2:4a6f::]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)) by mp10.migadu.com with LMTPS id CE1JL5Gt8mPITgEAG6o9tA (envelope-from ) for ; Mon, 20 Feb 2023 00:15:29 +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 E92D8145E5 for ; Mon, 20 Feb 2023 00:15:28 +0100 (CET) Authentication-Results: aspmx1.migadu.com; dkim=pass header.d=excalamus.com header.s=zmail header.b=dkuydiaa; arc=pass ("zohomail.com:s=zohoarc:i=1"); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Seal: i=2; s=key1; d=yhetil.org; t=1676848529; a=rsa-sha256; cv=pass; b=W1mL/t8grfChYxzD9VjPfZxGPepS838oDz1xy+27F+Wi/69yuU1irniTfXaSykoaqWW+Ke EIWsdk3W/szsOhKhVRP+vPdZ4G7L4pfDOZ7oKDFjqOkG3hrWK+qBHkvW+pkLmfjY81C7qC xKqbhy23jFpnx75BBhhOweCJbR5iTzC0Ck8GCwXrBWL4z4EBhfg3NtnshjqeJLaTTaQAdG 4qc6GoidZIzV5+dNFGpnlfilaFMW1VhFHhwxiH2Zu6Ju7JezTVsCdvwUjgNMocIXgsU9DF ELivn6VI/qaWGn/pzwuU0ZUw3JLHSjOdAIalHbQYEM/6UY7cdAlic/qShlNmmA== ARC-Authentication-Results: i=2; aspmx1.migadu.com; dkim=pass header.d=excalamus.com header.s=zmail header.b=dkuydiaa; arc=pass ("zohomail.com:s=zohoarc:i=1"); spf=pass (aspmx1.migadu.com: domain of "emacs-orgmode-bounces+larch=yhetil.org@gnu.org" designates 209.51.188.17 as permitted sender) smtp.mailfrom="emacs-orgmode-bounces+larch=yhetil.org@gnu.org"; dmarc=none ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=yhetil.org; s=key1; t=1676848529; h=from:from:sender:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:in-reply-to:in-reply-to: references:references:list-id:list-help:list-unsubscribe: list-subscribe:list-post:dkim-signature; bh=AbntNdhriyFMwtgnXBEJFi5k8ftMAHgP7ing+uHuupw=; b=nzGIedrJyi4H86vNLTtbO1AlVAUHNZSWObsGDVj0Jko1sS51t0OX93sLoWW8Y+jpkWzP/i PPDI4+y5qpmTwXp60ikkhNXEtWFudcrpLispEV6FttgiF2Z3J+3aPHPqZIfLgScZ1nnuXa fy7QxppJILxeLpEPIHTxdgFPo2BcKTgxUwDnNNtUG4v32DHpEmCTH85Ygh0aehA80hAvzC lkamgzBr8/OPLA8VAuJ4VmCbXOypyKw2qSGnRBOqGBVO8PVYANH9GpnQNea+Z4Uq70IKvW ZFawU/oqYeKOo2pleDK9H6S7tYffu1IfODHr710rZ+C1OyDm+gfcVbA6UDm8yA== Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1pTst9-00069n-Fz; Sun, 19 Feb 2023 18:14:35 -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 1pTst7-00069K-KI for emacs-orgmode@gnu.org; Sun, 19 Feb 2023 18:14:33 -0500 Received: from sender4-op-o12.zoho.com ([136.143.188.12]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1pTst5-000675-Si for emacs-orgmode@gnu.org; Sun, 19 Feb 2023 18:14:33 -0500 ARC-Seal: i=1; a=rsa-sha256; t=1676848467; cv=none; d=zohomail.com; s=zohoarc; b=dJqdN62rDmw9CaNrAQdueuY+EgwIkbd2A1U3Z0R667zkxy1NzG4KBcN8EuDs+BfUh/kJX38zwYQB8pD3lSANWB8zje0KvFE0lSJUJJZdIOSAVCvl99fa4Vdh5GLlh2bJa55afzaEN3R3LYdapH73j1KucXXJ+M6dI+1dZRqkeVM= ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=zohomail.com; s=zohoarc; t=1676848467; h=Content-Type:Cc:Date:From:In-Reply-To:MIME-Version:Message-ID:References:Subject:To; bh=AbntNdhriyFMwtgnXBEJFi5k8ftMAHgP7ing+uHuupw=; b=OmjvAiYgMLufNlGsIOfVX1JQ56xTlQUzrtvq8caD/lEtoO/jY2lQPiiM/ZCyOWssBrImMA1MY5JyZlbZkyMTd5kRfZAMhyeV5nY+4Bhth3ug7cZUh2NGthNCT/RoVP+1Bd6Mc8l5gTzUXsA0RLZNvicyLjKA2sA60DqksNsSxJw= ARC-Authentication-Results: i=1; mx.zohomail.com; dkim=pass header.i=excalamus.com; spf=pass smtp.mailfrom=matt@excalamus.com; dmarc=pass header.from= DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; t=1676848467; s=zmail; d=excalamus.com; i=matt@excalamus.com; h=Date:Date:From:From:To:To:Cc:Cc:Message-Id:Message-Id:In-Reply-To:References:Subject:Subject:MIME-Version:Content-Type:Reply-To; bh=AbntNdhriyFMwtgnXBEJFi5k8ftMAHgP7ing+uHuupw=; b=dkuydiaaNN0zmqbjeZsn8VPffUzDKtrr5QXpAIjZVpNh709CZOhGD1TlxcLBv2qD Lp9GDHdm6JAKeXhrSpZf7aQASEQnVX368wMt7M0sMwVGEOrMo0W1Bo696LjWJJfwhKp C2PyunYjM4/N8Tkxpfa90QyzODHpZGe8UDtAEuQk= Received: from mail.zoho.com by mx.zohomail.com with SMTP id 167684846607389.42141110119815; Sun, 19 Feb 2023 15:14:26 -0800 (PST) Date: Sun, 19 Feb 2023 18:14:26 -0500 From: Matt To: "Ihor Radchenko" Cc: "emacs-orgmode" Message-Id: <1866bf50874.bc4ef1a92164564.1238825567948423531@excalamus.com> In-Reply-To: <87lekwd10z.fsf@localhost> References: <186283d230a.129f5feb61660123.3289004102603503414@excalamus.com> <87v8kd8zzw.fsf@localhost> <1863472efe9.10fdd5ba4258906.5972264927968042941@excalamus.com> <87y1p7axpe.fsf@localhost> <1863d69188f.11e078bd1228881.451172865246440158@excalamus.com> <87fsbcbf47.fsf@localhost> <186471d8980.c36aecd0374444.2548279362371712281@excalamus.com> <87sff73r0g.fsf@localhost> <18658639a30.dec640641420614.2364646537016397698@excalamus.com> <87lekwd10z.fsf@localhost> Subject: Re: [PATCH] Async evaluation in ob-shell MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="----=_Part_6897118_271143830.1676848466037" Importance: Medium User-Agent: Zoho Mail X-Mailer: Zoho Mail X-Zoho-Virus-Status: 1 Received-SPF: pass client-ip=136.143.188.12; envelope-from=matt@excalamus.com; helo=sender4-op-o12.zoho.com X-Spam_score_int: -20 X-Spam_score: -2.1 X-Spam_bar: -- X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, RCVD_IN_DNSWL_NONE=-0.0001, RCVD_IN_MSPIKE_H2=-0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: emacs-orgmode@gnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: "General discussions about Org-mode." List-Unsubscribe: , List-Archive: List-Post: X-Migadu-Queue-Id: E92D8145E5 X-Spam-Score: -12.21 X-Migadu-Spam-Score: -12.21 X-Migadu-Scanner: scn0.migadu.com List-Help: List-Subscribe: , Errors-To: emacs-orgmode-bounces+larch=yhetil.org@gnu.org Sender: emacs-orgmode-bounces+larch=yhetil.org@gnu.org X-Migadu-Flow: FLOW_IN X-Migadu-Country: US X-TUID: XUeuMTWC62cw ------=_Part_6897118_271143830.1676848466037 Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: 7bit ---- On Fri, 17 Feb 2023 05:44:20 -0500 Ihor Radchenko wrote --- > What I mean is... I follow you now. Thank you. I've attached a patch (with commit message) for adding async to ob-shell. If it looks good, I can apply it to main. ------=_Part_6897118_271143830.1676848466037 Content-Type: application/octet-stream; name=0001-ob-shell-Add-async-evaluation.patch Content-Transfer-Encoding: base64 X-ZM_AttachId: 138961412660380140 Content-Disposition: attachment; filename=0001-ob-shell-Add-async-evaluation.patch RnJvbSAxNzAxNjA0NGZkMjkzZjgxYTcxYzVkODJkMTBkMzM4YWFlMDdhNmM1IE1vbiBTZXAgMTcg MDA6MDA6MDAgMjAwMQpGcm9tOiBNYXR0aGV3IFRyemNpbnNraSA8bWF0dEBleGNhbGFtdXMuY29t PgpEYXRlOiBTdW4sIDE5IEZlYiAyMDIzIDE4OjExOjUxIC0wNTAwClN1YmplY3Q6IFtQQVRDSF0g b2Itc2hlbGw6IEFkZCBhc3luYyBldmFsdWF0aW9uCgoqIG9iLXNoZWxsLmVsIChvcmctYmFiZWwt c2gtZXZhbHVhdGUpOiBBZGQgYnJhbmNoIGZvciBhc3luYyB3aXRoaW4Kc2Vzc2lvbi4gIEFsbG93 IDphc3luYyBoZWFkZXIgYXJndW1lbnQgdG8gYmUgZWl0aGVyIHQgb3IgYmxhbmsuCgoqIHRlc3Qt b2Itc2hlbGwuZWw6IEFkZCBjb25zdCByZWdleHAgZm9yIHV1aWRzLgoodGVzdC1vYi1zaGVsbC9z ZXNzaW9uLWFzeW5jLXZhbGlkLWhlYWRlci1hcmctdmFsdWVzKTogQ2hlY2sgdGhhdAo6YXN5bmMg aGVhZGVyIHdvcmtzIGZvciBib3RoIHQgYW5kIGJsYW5rIHZhbHVlcy4KKHRlc3Qtb2Itc2hlbGwv c2Vzc2lvbi1hc3luYy1pbnNlcnRzLXV1aWQtYmVmb3JlLXJlc3VsdHMtYXJlLXJldHVybmVkKToK KHRlc3Qtb2Itc2hlbGwvc2Vzc2lvbi1hc3luYy1ldmFsdWF0aW9uKTogQ2hlY2sgdGhhdCBhc3lu Y2hyb25vdXNseQpldmFsdWF0ZWQgcmVzdWx0cyBhcmUgZXZlbnR1YWxseSBwbGFjZWQgaW4gdGhl IGJ1ZmZlci4KCkxpbms6IGh0dHBzOi8vbGlzdC5vcmdtb2RlLm9yZy8xODYyODNkMjMwYS4xMjlm NWZlYjYxNjYwMTIzLjMyODkwMDQxMDI2MDM1MDM0MTRAZXhjYWxhbXVzLmNvbS8KLS0tCiBsaXNw L29iLXNoZWxsLmVsICAgICAgICAgICAgICB8IDU0ICsrKysrKysrKysrKysrKysrKystLS0tLS0K IHRlc3RpbmcvbGlzcC90ZXN0LW9iLXNoZWxsLmVsIHwgNzYgKysrKysrKysrKysrKysrKysrKysr KysrKysrKysrKysrKysKIDIgZmlsZXMgY2hhbmdlZCwgMTE3IGluc2VydGlvbnMoKyksIDEzIGRl bGV0aW9ucygtKQoKZGlmZiAtLWdpdCBhL2xpc3Avb2Itc2hlbGwuZWwgYi9saXNwL29iLXNoZWxs LmVsCmluZGV4IDllN2I0NWE4OS4uM2EwMjgzMjMxIDEwMDY0NAotLS0gYS9saXNwL29iLXNoZWxs LmVsCisrKyBiL2xpc3Avb2Itc2hlbGwuZWwKQEAgLTI2OSwxMiArMjY5LDIyIEBAIHZhciBvZiB0 aGUgc2FtZSB2YWx1ZS4iCiAJICAgIChzZXQtbWFya2VyIGNvbWludC1sYXN0LW91dHB1dC1zdGFy dCAocG9pbnQpKQogCSAgICAoZ2V0LWJ1ZmZlciAoY3VycmVudC1idWZmZXIpKSkpKSkpCiAKKyhk ZWZjb25zdCBvYi1zaGVsbC1hc3luYy1pbmRpY2F0b3IgImVjaG8gJ29iX2NvbWludF9hc3luY19z aGVsbF8lc18lcyciCisgICJTZXNzaW9uIG91dHB1dCBkZWxpbWl0ZXIgdGVtcGxhdGUuCitTZWUg YG9yZy1iYWJlbC1jb21pbnQtYXN5bmMtaW5kaWNhdG9yJy4iKQorCisoZGVmdW4gb2Itc2hlbGwt YXN5bmMtY2h1bmstY2FsbGJhY2sgKHN0cmluZykKKyAgIkZpbHRlciBhcHBsaWVkIHRvIHJlc3Vs dHMgYmVmb3JlIGluc2VydGlvbi4KK1NlZSBgb3JnLWJhYmVsLWNvbWludC1hc3luYy1jaHVuay1j YWxsYmFjaycuIgorICAocmVwbGFjZS1yZWdleHAtaW4tc3RyaW5nIChjb25jYXQgb3JnLWJhYmVs LXNoLXByb21wdCAiKiIpICIiIHN0cmluZykpCisKIChkZWZ1biBvcmctYmFiZWwtc2gtZXZhbHVh dGUgKHNlc3Npb24gYm9keSAmb3B0aW9uYWwgcGFyYW1zIHN0ZGluIGNtZGxpbmUpCiAgICJQYXNz IEJPRFkgdG8gdGhlIFNoZWxsIHByb2Nlc3MgaW4gQlVGRkVSLgogSWYgUkVTVUxULVRZUEUgZXF1 YWxzIGBvdXRwdXQnIHRoZW4gcmV0dXJuIGEgbGlzdCBvZiB0aGUgb3V0cHV0cwogb2YgdGhlIHN0 YXRlbWVudHMgaW4gQk9EWSwgaWYgUkVTVUxULVRZUEUgZXF1YWxzIGB2YWx1ZScgdGhlbgogcmV0 dXJuIHRoZSB2YWx1ZSBvZiB0aGUgbGFzdCBzdGF0ZW1lbnQgaW4gQk9EWS4iCiAgIChsZXQqICgo c2hlYmFuZyAoY2RyIChhc3NxIDpzaGViYW5nIHBhcmFtcykpKQorICAgICAgICAgKGFzeW5jIChv cmctYmFiZWwtY29taW50LXVzZS1hc3luYyBwYXJhbXMpKQogCSAocmVzdWx0cy1wYXJhbXMgKGNk ciAoYXNzcSA6cmVzdWx0LXBhcmFtcyBwYXJhbXMpKSkKIAkgKHZhbHVlLWlzLWV4aXQtc3RhdHVz CiAJICAob3IgKGFuZApAQCAtMzA2LDE5ICszMTYsMzcgQEAgcmV0dXJuIHRoZSB2YWx1ZSBvZiB0 aGUgbGFzdCBzdGF0ZW1lbnQgaW4gQk9EWS4iCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAg ICAgIChjb25jYXQgKGZpbGUtbG9jYWwtbmFtZSBzY3JpcHQtZmlsZSkgICIgIiBjbWRsaW5lKSkp KSkKIAkJKGJ1ZmZlci1zdHJpbmcpKSkpCiAJICAgKHNlc3Npb24JCQk7IHNlc3Npb24gZXZhbHVh dGlvbgotCSAgICAobWFwY29uY2F0Ci0JICAgICAjJ29yZy1iYWJlbC1zaC1zdHJpcC13ZWlyZC1s b25nLXByb21wdAotCSAgICAgKG1hcGNhcgotCSAgICAgICMnb3JnLXRyaW0KLQkgICAgICAoYnV0 bGFzdCA7IFJlbW92ZSBlb2UgaW5kaWNhdG9yCi0JICAgICAgIChvcmctYmFiZWwtY29taW50LXdp dGgtb3V0cHV0Ci0JCSAgIChzZXNzaW9uIG9yZy1iYWJlbC1zaC1lb2Utb3V0cHV0IHQgYm9keSkK LSAgICAgICAgICAgICAgICAgKGluc2VydCAob3JnLXRyaW0gYm9keSkgIlxuIgotICAgICAgICAg ICAgICAgICAgICAgICAgIG9yZy1iYWJlbC1zaC1lb2UtaW5kaWNhdG9yKQotCQkgKGNvbWludC1z ZW5kLWlucHV0IG5pbCB0KSkKLSAgICAgICAgICAgICAgIDs7IFJlbW92ZSBgb3JnLWJhYmVsLXNo LWVvZS1pbmRpY2F0b3InIG91dHB1dCBsaW5lLgotCSAgICAgICAxKSkKLQkgICAgICJcbiIpKQor ICAgICAgICAgICAgKGlmIGFzeW5jCisgICAgICAgICAgICAgICAgKHByb2duCisgICAgICAgICAg ICAgICAgICAobGV0ICgodXVpZCAob3JnLWlkLXV1aWQpKSkKKyAgICAgICAgICAgICAgICAgICAg KG9yZy1iYWJlbC1jb21pbnQtYXN5bmMtcmVnaXN0ZXIKKyAgICAgICAgICAgICAgICAgICAgIHNl c3Npb24KKyAgICAgICAgICAgICAgICAgICAgIChjdXJyZW50LWJ1ZmZlcikKKyAgICAgICAgICAg ICAgICAgICAgICJvYl9jb21pbnRfYXN5bmNfc2hlbGxfXFwoLis/XFwpX1xcKC4rXFwpIgorICAg ICAgICAgICAgICAgICAgICAgJ29iLXNoZWxsLWFzeW5jLWNodW5rLWNhbGxiYWNrCisgICAgICAg ICAgICAgICAgICAgICBuaWwpCisgICAgICAgICAgICAgICAgICAgIChvcmctYmFiZWwtY29taW50 LWFzeW5jLWRlbGV0ZS1kYW5nbGluZy1hbmQtZXZhbAorICAgICAgICAgICAgICAgICAgICAgICAg c2Vzc2lvbgorICAgICAgICAgICAgICAgICAgICAgIChpbnNlcnQgKGZvcm1hdCBvYi1zaGVsbC1h c3luYy1pbmRpY2F0b3IgInN0YXJ0IiB1dWlkKSkKKyAgICAgICAgICAgICAgICAgICAgICAoY29t aW50LXNlbmQtaW5wdXQgbmlsIHQpCisgICAgICAgICAgICAgICAgICAgICAgKGluc2VydCAob3Jn LXRyaW0gYm9keSkpCisgICAgICAgICAgICAgICAgICAgICAgKGNvbWludC1zZW5kLWlucHV0IG5p bCB0KQorICAgICAgICAgICAgICAgICAgICAgIChpbnNlcnQgKGZvcm1hdCBvYi1zaGVsbC1hc3lu Yy1pbmRpY2F0b3IgImVuZCIgdXVpZCkpCisgICAgICAgICAgICAgICAgICAgICAgKGNvbWludC1z ZW5kLWlucHV0IG5pbCB0KSkKKyAgICAgICAgICAgICAgICAgICAgdXVpZCkpCisJICAgICAgKG1h cGNvbmNhdAorCSAgICAgICAjJ29yZy1iYWJlbC1zaC1zdHJpcC13ZWlyZC1sb25nLXByb21wdAor CSAgICAgICAobWFwY2FyCisJICAgICAgICAjJ29yZy10cmltCisJICAgICAgICAoYnV0bGFzdCA7 IFJlbW92ZSBlb2UgaW5kaWNhdG9yCisJICAgICAgICAgKG9yZy1iYWJlbC1jb21pbnQtd2l0aC1v dXRwdXQKKwkJICAgICAoc2Vzc2lvbiBvcmctYmFiZWwtc2gtZW9lLW91dHB1dCB0IGJvZHkpCisg ICAgICAgICAgICAgICAgICAgKGluc2VydCAob3JnLXRyaW0gYm9keSkgIlxuIgorICAgICAgICAg ICAgICAgICAgICAgICAgICAgb3JnLWJhYmVsLXNoLWVvZS1pbmRpY2F0b3IpCisJCSAgIChjb21p bnQtc2VuZC1pbnB1dCBuaWwgdCkpCisgICAgICAgICAgICAgICAgIDs7IFJlbW92ZSBgb3JnLWJh YmVsLXNoLWVvZS1pbmRpY2F0b3InIG91dHB1dCBsaW5lLgorCSAgICAgICAgIDEpKQorCSAgICAg ICAiXG4iKSkpCiAJICAgOzsgRXh0ZXJuYWwgc2hlbGwgc2NyaXB0LCB3aXRoIG9yIHdpdGhvdXQg YSBwcmVkZWZpbmVkCiAJICAgOzsgc2hlYmFuZy4KIAkgICAoKG9yZy1zdHJpbmctbnctcCBzaGVi YW5nKQpkaWZmIC0tZ2l0IGEvdGVzdGluZy9saXNwL3Rlc3Qtb2Itc2hlbGwuZWwgYi90ZXN0aW5n L2xpc3AvdGVzdC1vYi1zaGVsbC5lbAppbmRleCBmZTk3NTc3MWMuLjEwM2Q2MjA0OCAxMDA2NDQK LS0tIGEvdGVzdGluZy9saXNwL3Rlc3Qtb2Itc2hlbGwuZWwKKysrIGIvdGVzdGluZy9saXNwL3Rl c3Qtb2Itc2hlbGwuZWwKQEAgLTMzLDYgKzMzLDkgQEAKIAogKG9yZy10ZXN0LWZvci1leGVjdXRh YmxlICJzaCIpCiAKKyhkZWZjb25zdCB0ZXN0LW9iLXNoZWxsL3V1aWQtcmVnZXgKKyAgIlswLTlh LWZBLUZdXFx7OFxcfVxcYi1bMC05YS1mQS1GXVxcezRcXH1cXGItWzAtOWEtZkEtRl1cXHs0XFx9 XFxiLVswLTlhLWZBLUZdXFx7NFxcfVxcYi1bMC05YS1mQS1GXVxcezEyXFx9IikKKwogDAogOzs7 IENvZGU6CiAoZXJ0LWRlZnRlc3QgdGVzdC1vYi1zaGVsbC9kb250LWluc2VydC1zcGFjZXMtb24t ZXhwYW5kZWQtYm9kaWVzICgpCkBAIC03NSw2ICs3OCw3OSBAQCB0aGUgYm9keSBvZiB0aGUgdGFu Z2xlZCBibG9jayBkb2VzLiIKICAgICAoaWYgKHNob3VsZCAoZXF1YWwgJygoMSkgKDIpKSByZXN1 bHQpKQogICAgICAgICAoa2lsbC1idWZmZXIgc2Vzc2lvbi1uYW1lKSkpKQogCisoZXJ0LWRlZnRl c3QgdGVzdC1vYi1zaGVsbC9zZXNzaW9uLWFzeW5jLXZhbGlkLWhlYWRlci1hcmctdmFsdWVzICgp CisgICJUZXN0IHRoYXQgc2Vzc2lvbiBydW5zIGFzeW5jaHJvbm91c2x5IGZvciBjZXJ0YWluIDph c3luYyB2YWx1ZXMuIgorICAobGV0ICgoc2Vzc2lvbi1uYW1lICJ0ZXN0LW9iLXNoZWxsL3Nlc3Np b24tYXN5bmMtdmFsaWQtaGVhZGVyLWFyZy12YWx1ZXMiKQorICAgICAgICAoa2lsbC1idWZmZXIt cXVlcnktZnVuY3Rpb25zIG5pbCkpCisgICAgKGNsLWxvb3AKKyAgICAgZm9yIGFyZy12YWwgaW4g JygidCIgIiIpICA7IHZhbGlkIGFyZyB2YWx1ZXMKKyAgICAgZG8KKyAgICAgKG9yZy10ZXN0LXdp dGgtdGVtcC10ZXh0CisgICAgICAgICAoY29uY2F0ICIjK2JlZ2luX3NyYyBzaCA6c2Vzc2lvbiAi IHNlc3Npb24tbmFtZSAiIDphc3luYyAiIGFyZy12YWwgIiAKK2VjaG8gMTxwb2ludD4KKyMrZW5k X3NyYyIpCisgICAgICAgKGlmIChzaG91bGQKKyAgICAgICAgICAgIChzdHJpbmctbWF0Y2gKKyAg ICAgICAgICAgICB0ZXN0LW9iLXNoZWxsL3V1aWQtcmVnZXgKKyAgICAgICAgICAgICAob3JnLXRy aW0gKG9yZy1iYWJlbC1leGVjdXRlLXNyYy1ibG9jaykpKSkKKyAgICAgICAgICAgKGtpbGwtYnVm ZmVyIHNlc3Npb24tbmFtZSkpKSkpKQorCisoZXJ0LWRlZnRlc3QgdGVzdC1vYi1zaGVsbC9zZXNz aW9uLWFzeW5jLWluc2VydHMtdXVpZC1iZWZvcmUtcmVzdWx0cy1hcmUtcmV0dXJuZWQgKCkKKyAg IlRlc3QgdGhhdCBhIHV1aWQgcGxhY2Vob2xkZXIgaXMgaW5zZXJ0ZWQgYmVmb3JlIHJlc3VsdHMg YXJlIGluc2VydGVkLiIKKyAgKGxldCAoKHNlc3Npb24tbmFtZSAidGVzdC1vYi1zaGVsbC9zZXNz aW9uLWFzeW5jLWluc2VydHMtdXVpZC1iZWZvcmUtcmVzdWx0cy1hcmUtcmV0dXJuZWQiKQorICAg ICAgICAoa2lsbC1idWZmZXItcXVlcnktZnVuY3Rpb25zIG5pbCkpCisgICAgKG9yZy10ZXN0LXdp dGgtdGVtcC10ZXh0CisgICAgICAgIChjb25jYXQgIiMrYmVnaW5fc3JjIHNoIDpzZXNzaW9uICIg c2Vzc2lvbi1uYW1lICIgOmFzeW5jIHQKK2VjaG8gMTxwb2ludD4KKyMrZW5kX3NyYyIpCisgICAg ICAoaWYgKHNob3VsZAorICAgICAgICAgICAoc3RyaW5nLW1hdGNoCisgICAgICAgICAgICB0ZXN0 LW9iLXNoZWxsL3V1aWQtcmVnZXgKKyAgICAgICAgICAgIChvcmctdHJpbSAob3JnLWJhYmVsLWV4 ZWN1dGUtc3JjLWJsb2NrKSkpKQorICAgICAgICAgIChraWxsLWJ1ZmZlciBzZXNzaW9uLW5hbWUp KSkpKQorCisoZXJ0LWRlZnRlc3QgdGVzdC1vYi1zaGVsbC9zZXNzaW9uLWFzeW5jLWV2YWx1YXRp b24gKCkKKyAgIlRlc3QgdGhlIGFzeW5jIGV2YWx1YXRpb24gcHJvY2Vzcy4iCisgIDs7IEEgdXVp ZCBwbGFjZWhvbGRlciBpcyBpbW1lZGlhdGVseSByZXR1cm5lZCBieSBibG9jayBleGVjdXRpb24u CisgIDs7IEFkdmlzZSBjYWxsYmFjayB0byBjaGVjayB0aGUgcmV0dXJuIHZhbHVlIGZvciB0aGUg ZXhwZWN0ZWQgdmFsdWUKKyAgKGxldCogKChzZXNzaW9uLW5hbWUgInRlc3Qtb2Itc2hlbGwvc2Vz c2lvbi1hc3luYy1ldmFsdWF0aW9uIikKKyAgICAgICAgIChraWxsLWJ1ZmZlci1xdWVyeS1mdW5j dGlvbnMgbmlsKQorICAgICAgICAgKHN0YXJ0LXRpbWUgKGN1cnJlbnQtdGltZSkpCisgICAgICAg ICAod2FpdC10aW1lICh0aW1lLWFkZCBzdGFydC10aW1lIDMpKQorICAgICAgICAgcmVzdWx0KQor ICAgIChhZHZpY2UtYWRkCisgICAgICdvYi1zaGVsbC1hc3luYy1jaHVuay1jYWxsYmFjaworICAg ICA6ZmlsdGVyLXJldHVybgorICAgICAobGFtYmRhICgmcmVzdCByKQorICAgICAgIChsZXQgKChy ZXN1bHQgKGNhciByKSkpCisgICAgICAgICAoc2hvdWxkIChzdHJpbmc9IHJlc3VsdCAiMVxuMlxu IikpICA7IGV4cGVjdCB2YWx1ZQorICAgICAgICAgcmVzdWx0KSkKKyAgICAgYCgobmFtZSAuICxz ZXNzaW9uLW5hbWUpKSkKKyAgICA7OyBhbHdheXMgcmVtb3ZlIGFkdmljZSwgcmVnYXJkbGVzcyBv ZiB0ZXN0IG91dGNvbWUKKyAgICAodW53aW5kLXByb3RlY3QKKyAgICAgICAgKG9yZy10ZXN0LXdp dGgtdGVtcC10ZXh0CisgICAgICAgICAgICAoY29uY2F0ICIjK2JlZ2luX3NyYyBzaCA6c2Vzc2lv biAiIHNlc3Npb24tbmFtZSAiIDphc3luYyB0CitlY2hvIDEKK2VjaG8gMjxwb2ludD4KKyMrZW5k X3NyYyIpCisgICAgICAgICAgKHNldHEgcmVzdWx0IChvcmctdHJpbSAob3JnLWJhYmVsLWV4ZWN1 dGUtc3JjLWJsb2NrKSkpCisgICAgICAgICAgKGlmIChzaG91bGQKKyAgICAgICAgICAgICAgIChh bmQKKyAgICAgICAgICAgICAgICA7OyBibG9jayBzaG91bGQgcnVuLCByZXR1cm5pbmcgYSB1dWlk IGltbWVkaWF0ZWx5CisgICAgICAgICAgICAgICAgKHN0cmluZy1tYXRjaCB0ZXN0LW9iLXNoZWxs L3V1aWQtcmVnZXggcmVzdWx0KQorICAgICAgICAgICAgICAgIDs7IGxvb3AgdW50aWwgY2FsbGJh Y2sgcmVwbGFjZXMgdGhlIHV1aWQgb3Igd2FpdC10aW1lCisgICAgICAgICAgICAgICAgOzsgaXMg ZXhjZWVkZWQKKyAgICAgICAgICAgICAgICAoY2F0Y2ggJ3Rvby1sb25nCisgICAgICAgICAgICAg ICAgICAod2hpbGUgKHN0cmluZy1tYXRjaCB0ZXN0LW9iLXNoZWxsL3V1aWQtcmVnZXggKGJ1ZmZl ci1zdHJpbmcpKQorICAgICAgICAgICAgICAgICAgICAocHJvZ24KKyAgICAgICAgICAgICAgICAg ICAgICAoc2xlZXAtZm9yIDAuMDEpCisgICAgICAgICAgICAgICAgICAgICAgKHdoZW4gKHRpbWUt bGVzcy1wIHdhaXQtdGltZSAoY3VycmVudC10aW1lKSkKKyAgICAgICAgICAgICAgICAgICAgICAg ICh0aHJvdyAndG9vLWxvbmcgKGVydC1mYWlsICJUb29rIHRvbyBsb25nIHRvIGdldCByZXN1bHQg ZnJvbSBjYWxsYmFjayIpKSkpKQorICAgICAgICAgICAgICAgICAgdCkpKQorICAgICAgICAgICAg ICA7OyBjbGVhbiB1cCBzZXNzaW9uIGJ1ZmZlciBvbiBzdWNjZXNzCisgICAgICAgICAgICAgIChr aWxsLWJ1ZmZlciBzZXNzaW9uLW5hbWUpKSkKKyAgICAgIChhZHZpY2UtcmVtb3ZlICdvYi1zaGVs bC1hc3luYy1jaHVuay1jYWxsYmFjayBzZXNzaW9uLW5hbWUpKSkpCisKIChlcnQtZGVmdGVzdCB0 ZXN0LW9iLXNoZWxsL2dlbmVyaWMtdXNlcy1uby1hcnJheXMgKCkKICAgIlRlc3QgZ2VuZXJpYyBz ZXJpYWxpemF0aW9uIG9mIGFycmF5IGludG8gYSBzaW5nbGUgc3RyaW5nLiIKICAgKG9yZy10ZXN0 LXdpdGgtdGVtcC10ZXh0Ci0tIAoyLjM5LjEKCg== ------=_Part_6897118_271143830.1676848466037--