Return-Path: <angus@toaster.cc>
Received: from smtp2.osuosl.org (smtp2.osuosl.org [140.211.166.133])
 by lists.linuxfoundation.org (Postfix) with ESMTP id 44F5CC0032
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon,  5 Dec 2022 12:27:32 +0000 (UTC)
Received: from localhost (localhost [127.0.0.1])
 by smtp2.osuosl.org (Postfix) with ESMTP id 78C33404F5
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon,  5 Dec 2022 12:27:31 +0000 (UTC)
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 78C33404F5
Authentication-Results: smtp2.osuosl.org; dkim=pass (2048-bit key,
 unprotected) header.d=toaster.cc header.i=@toaster.cc header.a=rsa-sha256
 header.s=protonmail3 header.b=3Oo/ZeoH
X-Virus-Scanned: amavisd-new at osuosl.org
X-Spam-Flag: NO
X-Spam-Score: -2.101
X-Spam-Level: 
X-Spam-Status: No, score=-2.101 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1, HTML_MESSAGE=0.001,
 SPF_HELO_PASS=-0.001, SPF_PASS=-0.001]
 autolearn=ham autolearn_force=no
Received: from smtp2.osuosl.org ([127.0.0.1])
 by localhost (smtp2.osuosl.org [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id I6FYl8Hg2V4T
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon,  5 Dec 2022 12:27:29 +0000 (UTC)
X-Greylist: delayed 00:05:25 by SQLgrey-1.8.0
DKIM-Filter: OpenDKIM Filter v2.11.0 smtp2.osuosl.org 85962400A4
Received: from mail-41103.protonmail.ch (mail-41103.protonmail.ch
 [185.70.41.103])
 by smtp2.osuosl.org (Postfix) with ESMTPS id 85962400A4
 for <bitcoin-dev@lists.linuxfoundation.org>;
 Mon,  5 Dec 2022 12:27:28 +0000 (UTC)
Date: Mon, 05 Dec 2022 12:21:44 +0000
Authentication-Results: mail-41103.protonmail.ch;
 dkim=pass (2048-bit key) header.d=toaster.cc header.i=@toaster.cc
 header.b="3Oo/ZeoH"
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=toaster.cc;
 s=protonmail3; t=1670242906; x=1670502106;
 bh=p4m8Ua4RYOKxZh5G9le+38Sw7JkAolc13Xe782aMVXk=;
 h=Date:To:From:Cc:Subject:Message-ID:In-Reply-To:References:
 Feedback-ID:From:To:Cc:Date:Subject:Reply-To:Feedback-ID:
 Message-ID:BIMI-Selector;
 b=3Oo/ZeoH7GDxD2Vk80O2gH5zdIlxGG8uvpQqnmwf18VQHM3ErQ1dRGsXGtd588DTj
 9duLqfcBHj2ZW08i2wpYkY6T6pqDopILYUQkmK8PvjpPewv5QY8ekJeHf77BcAMJda
 h25AXAlqeULqfw7hKaX44iJlbQPX2TOwWCZLwYg2oh3Kudkn7DIldCEb243nMEs3/B
 66sdlxFCENlHFQd5ryJsPugmciuwLS8cSYkjfVyZ70ltx1CVyq7DZhTxMStJk5YhC2
 cjw5sTLst7MdNUg/wVNeKfc5q6bvmPeJch2QKHN6R8xlcKI4hNO4Vxie+RBY+m+hQK
 OpPMi81Ld9qpg==
To: Daniel Lipshitz <daniel@gap600.com>,
 Bitcoin Protocol Discussion <bitcoin-dev@lists.linuxfoundation.org>
From: angus <angus@toaster.cc>
Message-ID: <-C_sX7ApYy_2MgXfl7e1ONddIi9gtET5jV4MTl_F_CstCvTuV0vTFfazF7tKBd53o6QbZ1xygayPIaCVjDyV-9yklnfk_t0IH23rw2LtqKQ=@toaster.cc>
In-Reply-To: <CACkWPs-2e8QVTwnBcos7WA0c2+iLcY2XGCZzY0xt9L_voyx9UA@mail.gmail.com>
References: <CACkWPs8-rZpGSJSEyLsg9gVAuPpHztXWSZvfGscGJCn05th0DQ@mail.gmail.com>
 <Y4l/ZHl9EvhaCpix@petertodd.org>
 <CACkWPs_v=MYFrn=LzPSK4+=Enw2R5+REap+MFLRhwtxcwGvEHA@mail.gmail.com>
 <Y4sNxWkBp7+ogcJb@petertodd.org>
 <CACkWPs9p0K-1RbVMipiAwjhexaNgmMgjENYvd9S1DpA+JVcE=w@mail.gmail.com>
 <Y4s9EqMfk+yXCzIO@petertodd.org>
 <CACkWPs-maywWfAt_qhnsUOTm6u_Ph=LgbuLSaF1NRJSTBWkTdg@mail.gmail.com>
 <CACkWPs-2e8QVTwnBcos7WA0c2+iLcY2XGCZzY0xt9L_voyx9UA@mail.gmail.com>
Feedback-ID: 10272201:user:proton
MIME-Version: 1.0
Content-Type: multipart/signed; protocol="application/pgp-signature";
 micalg=pgp-sha512;
 boundary="------08d3d6c0cd6d0e443bc3ff44f907b6f8de77e96feb5e80858d967f3784a56dd1";
 charset=utf-8
X-Mailman-Approved-At: Mon, 05 Dec 2022 13:26:26 +0000
Subject: [bitcoin-dev] [Opt-in full-RBF] Zero-conf apps in immediate danger
X-BeenThere: bitcoin-dev@lists.linuxfoundation.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: Bitcoin Protocol Discussion <bitcoin-dev.lists.linuxfoundation.org>
List-Unsubscribe: <https://lists.linuxfoundation.org/mailman/options/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=unsubscribe>
List-Archive: <http://lists.linuxfoundation.org/pipermail/bitcoin-dev/>
List-Post: <mailto:bitcoin-dev@lists.linuxfoundation.org>
List-Help: <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=help>
List-Subscribe: <https://lists.linuxfoundation.org/mailman/listinfo/bitcoin-dev>, 
 <mailto:bitcoin-dev-request@lists.linuxfoundation.org?subject=subscribe>
X-List-Received-Date: Mon, 05 Dec 2022 12:27:32 -0000

This is an OpenPGP/MIME signed message (RFC 4880 and 3156)
--------08d3d6c0cd6d0e443bc3ff44f907b6f8de77e96feb5e80858d967f3784a56dd1
Content-Type: multipart/mixed;boundary=---------------------0a761db651e2c3cb5c50bead64df3088

-----------------------0a761db651e2c3cb5c50bead64df3088
Content-Type: multipart/alternative;boundary=---------------------72fe99493a063dc3ad01536841344e31

-----------------------72fe99493a063dc3ad01536841344e31
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;charset=utf-8

Core adding full RBF is a change of node policy that may be highly inconve=
nient for zero-conf users, but there has always been and will always be a =
risk of a double-spend for anyone that treats zero-confirmation transactio=
ns as settled. It's literally in the name - this transaction has zero conf=
irmations and no guarantee it'll make it into a block, and so has not yet =
settled.


The perception seems to be that Core adding the full RBF option is increas=
ing the risk to zero-conf users, but I'm not convinced that that is the ca=
se - someone wanting to double-spend attack you isn't going to be bothered=
 to do so over a few thousand sats (unless they can do it thousands of tim=
es), and losing a few thousand sats to a double-spend isn't the biggest de=
al.


It's always been the risk of getting double-spent out of hundreds or thous=
ands of bitcoins that's worth seriously worrying about, which is much more=
 the kind of attack a determined attacker is able to carry out. Such a det=
ermined attacker is much more likely to attempt and succeed at a sybil att=
ack, or directly colluding with a miner. So your zero-conf risk increases =
non-linearly as the amount of bitcoin being transacted grows. (caveat: thi=
s paragraph is opinion).


There does, however, seem to be a legitimate business for providing insura=
nce/risk management for people that are willing to accept the zero-conf ri=
sk - it is pretty similar to accepting credit cards with a chargeback risk=
 or any payment card with a capture risk, though there's no-one to mediate=
 a dispute. On-chain is final.

But what doesn't make any sense is trying to avoid Bitcoin Core and nodes =
from adopting a full RBF policy to try to protect this use case. As has be=
en pointed out by may others before, full RBF is aligned with miner (and u=
ser) economic incentives and is a node policy, not consensus, so you can't=
 even tell which nodes are doing it nor can you prevent them from doing so=
. Second, Bitcoin core 24 with the full RBF option is already out in the w=
ild at around 5%+ of running nodes and growing, so it's too late to kill i=
t.


So my point is that relying on node policy as part of your protection for =
zero-conf transaction acceptance is fragile, and should not be relied upon=
. The protocol rules have always tacitly allowed double-spending before a =
confirmation, and it has always been clear that there's no consensus on wh=
ich transactions have occurred until they have in a block and have at-leas=
t one confirmation.

The long-term 'what to do about it' is to use Lightning if you want fast p=
ayments with risk-free instant settlement, or as above, accept the zero-co=
nf risk and cover yourself with an insurance premium (e.g. a margin on tra=
nsactions that goes into an insurance fund, and limiting max transaction a=
mount so you're not exposed to uncoverable losses if you do get double-spe=
nd attacked)




Angus
-----------------------72fe99493a063dc3ad01536841344e31
Content-Type: multipart/related;boundary=---------------------b76700fc017bd3eec593de33a2ab9d81

-----------------------b76700fc017bd3eec593de33a2ab9d81
Content-Type: text/html;charset=utf-8
Content-Transfer-Encoding: base64

PGRpdiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsiIGFsaWduPSJsZWZ0Ij48c3BhbiBzdHlsZT0i
Zm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB0OyBsaW5lLWhlaWdodDogbm9y
bWFsOyBjb2xvcjogcmdiKDAsIDAsIDApOyI+Q29yZSBhZGRpbmcgZnVsbCBSQkYgaXMgYSBjaGFu
Z2Ugb2Ygbm9kZSBwb2xpY3kgdGhhdCBtYXkgYmUgaGlnaGx5IGluY29udmVuaWVudCBmb3IgemVy
by1jb25mIHVzZXJzLCBidXQgdGhlcmUgaGFzIGFsd2F5cyBiZWVuIGFuZCB3aWxsIGFsd2F5cyBi
ZSBhIHJpc2sgb2YgYSBkb3VibGUtc3BlbmQgZm9yIGFueW9uZSB0aGF0IHRyZWF0cyB6ZXJvLWNv
bmZpcm1hdGlvbiB0cmFuc2FjdGlvbnMgYXMgc2V0dGxlZC4gSXQncyBsaXRlcmFsbHkgaW4gdGhl
IG5hbWUgLSB0aGlzIHRyYW5zYWN0aW9uIGhhcyB6ZXJvIGNvbmZpcm1hdGlvbnMgYW5kIG5vIGd1
YXJhbnRlZSBpdCdsbCBtYWtlIGl0IGludG8gYSBibG9jaywgYW5kIHNvIGhhcyBub3QgeWV0IHNl
dHRsZWQuPC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IiBhbGlnbj0i
bGVmdCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6ZTogMTJw
dDsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgY29sb3I6IHJnYigwLCAwLCAwKTsiPjxicj48L3NwYW4+
PC9kaXY+PGRpdiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsiIGFsaWduPSJsZWZ0Ij48c3BhbiBz
dHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB0OyBsaW5lLWhlaWdo
dDogbm9ybWFsOyBjb2xvcjogcmdiKDAsIDAsIDApOyI+VGhlIHBlcmNlcHRpb24gc2VlbXMgdG8g
YmUgdGhhdCBDb3JlIGFkZGluZyB0aGUgZnVsbCBSQkYgb3B0aW9uIGlzIGluY3JlYXNpbmcgdGhl
IHJpc2sgdG8gemVyby1jb25mIHVzZXJzLCBidXQgSSdtIG5vdCBjb252aW5jZWQgdGhhdCB0aGF0
IGlzIHRoZSBjYXNlIC0gc29tZW9uZSB3YW50aW5nIHRvIGRvdWJsZS1zcGVuZCBhdHRhY2sgeW91
IGlzbid0IGdvaW5nIHRvIGJlIGJvdGhlcmVkIHRvIGRvIHNvIG92ZXIgYSBmZXcgdGhvdXNhbmQg
c2F0cyAodW5sZXNzIHRoZXkgY2FuIGRvIGl0IHRob3VzYW5kcyBvZiB0aW1lcyksIGFuZCBsb3Np
bmcgYSBmZXcgdGhvdXNhbmQgc2F0cyB0byBhIGRvdWJsZS1zcGVuZCBpc24ndCB0aGUgYmlnZ2Vz
dCBkZWFsLjwvc3Bhbj48L2Rpdj48ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyIgYWxpZ249
ImxlZnQiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEy
cHQ7IGxpbmUtaGVpZ2h0OiBub3JtYWw7IGNvbG9yOiByZ2IoMCwgMCwgMCk7Ij48YnI+PC9zcGFu
PjwvZGl2PjxkaXYgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IiBhbGlnbj0ibGVmdCI+PHNwYW4g
c3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6ZTogMTJwdDsgbGluZS1oZWln
aHQ6IG5vcm1hbDsgY29sb3I6IHJnYigwLCAwLCAwKTsiPkl0J3MgYWx3YXlzIGJlZW4gdGhlIHJp
c2sgb2YgZ2V0dGluZyBkb3VibGUtc3BlbnQgb3V0IG9mIGh1bmRyZWRzIG9yIHRob3VzYW5kcyBv
ZiBiaXRjb2lucyB0aGF0J3Mgd29ydGggc2VyaW91c2x5IHdvcnJ5aW5nIGFib3V0LCB3aGljaCBp
cyBtdWNoIG1vcmUgdGhlIGtpbmQgb2YgYXR0YWNrIGEgZGV0ZXJtaW5lZCBhdHRhY2tlciBpcyBh
YmxlIHRvIGNhcnJ5IG91dC4gU3VjaCBhIGRldGVybWluZWQgYXR0YWNrZXIgaXMgbXVjaCBtb3Jl
IGxpa2VseSB0byBhdHRlbXB0IGFuZCBzdWNjZWVkIGF0IGEgc3liaWwgYXR0YWNrLCBvciBkaXJl
Y3RseSBjb2xsdWRpbmcgd2l0aCBhIG1pbmVyLiBTbyB5b3VyIHplcm8tY29uZiByaXNrIGluY3Jl
YXNlcyBub24tbGluZWFybHkgYXMgdGhlIGFtb3VudCBvZiBiaXRjb2luIGJlaW5nIHRyYW5zYWN0
ZWQgZ3Jvd3MuPHNwYW4gc3R5bGU9ImZvbnQtc2l6ZToxMnB0Ij4gKGNhdmVhdDogdGhpcyBwYXJh
Z3JhcGggaXMgb3BpbmlvbikuPC9zcGFuPjxicj48L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0idGV4
dC1hbGlnbjogbGVmdDsiIGFsaWduPSJsZWZ0Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0idGV4dC1h
bGlnbjogbGVmdDsiIGFsaWduPSJsZWZ0Ij48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZl
dGljYTsgZm9udC1zaXplOiAxMnB0OyBsaW5lLWhlaWdodDogbm9ybWFsOyBjb2xvcjogcmdiKDAs
IDAsIDApOyI+VGhlcmUgZG9lcywgaG93ZXZlciwgc2VlbSAgdG8gYmUgYSBsZWdpdGltYXRlIGJ1
c2luZXNzIGZvciBwcm92aWRpbmcgPC9zcGFuPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogSGVs
dmV0aWNhOyBmb250LXNpemU6IDEycHQ7IGxpbmUtaGVpZ2h0OiBub3JtYWw7IGNvbG9yOiByZ2Io
MCwgMCwgMCk7Ij5pbnN1cmFuY2UvcmlzayBtYW5hZ2VtZW50IGZvciBwZW9wbGUgdGhhdCA8aT5h
cmU8L2k+IHdpbGxpbmcgdG8gYWNjZXB0IHRoZSB6ZXJvLWNvbmYgcmlzayAtIGl0IGlzIHByZXR0
eSBzaW1pbGFyIHRvIGFjY2VwdGluZyBjcmVkaXQgY2FyZHMgd2l0aCBhIGNoYXJnZWJhY2sgcmlz
ayBvciBhbnkgcGF5bWVudCBjYXJkIHdpdGggYSBjYXB0dXJlIHJpc2ssIHRob3VnaCB0aGVyZSdz
IG5vLW9uZSB0byBtZWRpYXRlIGEgZGlzcHV0ZS4gT24tY2hhaW4gaXMgZmluYWwuPC9zcGFuPjwv
ZGl2PjxkaXYgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IiBhbGlnbj0ibGVmdCI+PGJyPjwvZGl2
PjxkaXYgc3R5bGU9InRleHQtYWxpZ246IGxlZnQ7IiBhbGlnbj0ibGVmdCI+PHNwYW4gc3R5bGU9
ImZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6ZTogMTJwdDsgbGluZS1oZWlnaHQ6IG5v
cm1hbDsgY29sb3I6IHJnYigwLCAwLCAwKTsiPkJ1dCB3aGF0IGRvZXNuJ3QgbWFrZSBhbnkgc2Vu
c2UgaXMgdHJ5aW5nIHRvIGF2b2lkIEJpdGNvaW4gQ29yZSBhbmQgbm9kZXMgZnJvbSBhZG9wdGlu
ZyBhIGZ1bGwgUkJGIHBvbGljeSB0byB0cnkgdG8gcHJvdGVjdCB0aGlzIHVzZSBjYXNlLiBBcyBo
YXMgYmVlbiBwb2ludGVkIG91dCBieSBtYXkgb3RoZXJzIGJlZm9yZSwgZnVsbCBSQkYgaXMgYWxp
Z25lZCB3aXRoIG1pbmVyIChhbmQgdXNlcikgZWNvbm9taWMgaW5jZW50aXZlcyA8L3NwYW4+PHNw
YW4gc3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6ZTogMTJwdDsgbGluZS1o
ZWlnaHQ6IG5vcm1hbDsgY29sb3I6IHJnYigwLCAwLCAwKTsiPmFuZDwvc3Bhbj48c3BhbiBzdHls
ZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB0OyBsaW5lLWhlaWdodDog
bm9ybWFsOyBjb2xvcjogcmdiKDAsIDAsIDApOyI+IGlzIGEgbm9kZSBwb2xpY3ksIG5vdCBjb25z
ZW5zdXMsIHNvIHlvdSBjYW4ndCBldmVuIHRlbGwgd2hpY2ggbm9kZXMgYXJlIGRvaW5nIGl0IG5v
ciBjYW4geW91IHByZXZlbnQgdGhlbSBmcm9tIGRvaW5nIHNvLiBTZWNvbmQsIDxhIGhyZWY9Imh0
dHBzOi8vYml0Y29pbmNvcmUub3JnL2Jpbi9iaXRjb2luLWNvcmUtMjQuMC8iIHRpdGxlPSJCaXRj
b2luIGNvcmUgMjQiPkJpdGNvaW4gY29yZSAyNDwvYT4gPHNwYW4gc3R5bGU9ImZvbnQtc2l6ZTox
MnB0Ij53aXRoIHRoZSBmdWxsIFJCRjwvc3Bhbj4gb3B0aW9uIGlzIGFscmVhZHkgPGEgaHJlZj0i
aHR0cHM6Ly9iaXRub2Rlcy5pby9ub2Rlcy8/cT1TYXRvc2hpOjI0LjAuMCIgdGl0bGU9Im91dCBp
biB0aGUgd2lsZCI+b3V0IGluIHRoZSB3aWxkPC9hPiBhdCBhcm91bmQgNSUrIG9mIHJ1bm5pbmcg
bm9kZXMgYW5kIGdyb3dpbmcsIHNvIGl0J3MgdG9vIGxhdGUgdG8ga2lsbCBpdC48L3NwYW4+PC9k
aXY+PGRpdiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsiIGFsaWduPSJsZWZ0Ij48c3BhbiBzdHls
ZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB0OyBsaW5lLWhlaWdodDog
bm9ybWFsOyBjb2xvcjogcmdiKDAsIDAsIDApOyI+PGJyPjwvc3Bhbj48L2Rpdj48ZGl2IHN0eWxl
PSJ0ZXh0LWFsaWduOiBsZWZ0OyIgYWxpZ249ImxlZnQiPjxzcGFuIHN0eWxlPSJmb250LWZhbWls
eTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEycHQ7IGxpbmUtaGVpZ2h0OiBub3JtYWw7IGNvbG9y
OiByZ2IoMCwgMCwgMCk7Ij5TbyBteSBwb2ludCBpcyB0aGF0IHJlbHlpbmcgb24gbm9kZSBwb2xp
Y3kgYXMgcGFydCBvZiB5b3VyIHByb3RlY3Rpb24gZm9yIHplcm8tY29uZiB0cmFuc2FjdGlvbiBh
Y2NlcHRhbmNlIGlzIGZyYWdpbGUsIGFuZCBzaG91bGQgbm90IGJlIHJlbGllZCB1cG9uLiBUaGUg
cHJvdG9jb2wgcnVsZXMgaGF2ZSBhbHdheXMgdGFjaXRseSBhbGxvd2VkIGRvdWJsZS1zcGVuZGlu
ZyBiZWZvcmUgYSBjb25maXJtYXRpb24sIGFuZCBpdCBoYXMgYWx3YXlzIGJlZW4gY2xlYXIgdGhh
dCB0aGVyZSdzIG5vIGNvbnNlbnN1cyBvbiB3aGljaCB0cmFuc2FjdGlvbnMgaGF2ZSBvY2N1cnJl
ZCB1bnRpbCB0aGV5IGhhdmUgaW4gYSBibG9jayBhbmQgaGF2ZSBhdC1sZWFzdCBvbmUgY29uZmly
bWF0aW9uLjwvc3Bhbj48L2Rpdj48ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyIgYWxpZ249
ImxlZnQiPjxicj48L2Rpdj48ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyIgYWxpZ249Imxl
ZnQiPjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEycHQ7
IGxpbmUtaGVpZ2h0OiBub3JtYWw7IGNvbG9yOiByZ2IoMCwgMCwgMCk7Ij5UaGUgbG9uZy10ZXJt
ICd3aGF0IHRvIGRvIGFib3V0IGl0JyBpcyB0byB1c2UgTGlnaHRuaW5nIGlmIHlvdSB3YW50IGZh
c3QgcGF5bWVudHMgd2l0aCByaXNrLWZyZWUgaW5zdGFudCBzZXR0bGVtZW50LCBvciBhcyBhYm92
ZSwgYWNjZXB0IHRoZSB6ZXJvLWNvbmYgcmlzayBhbmQgY292ZXIgeW91cnNlbGYgd2l0aCBhbiBp
bnN1cmFuY2UgcHJlbWl1bSAoZS5nLiBhIG1hcmdpbiBvbiB0cmFuc2FjdGlvbnMgdGhhdCBnb2Vz
IGludG8gYW4gaW5zdXJhbmNlIGZ1bmQsIGFuZCBsaW1pdGluZyBtYXggdHJhbnNhY3Rpb24gYW1v
dW50IHNvIHlvdSdyZSBub3QgZXhwb3NlZCB0byB1bmNvdmVyYWJsZSBsb3NzZXMgaWYgeW91IGRv
IGdldCBkb3VibGUtc3BlbmQgYXR0YWNrZWQpPC9zcGFuPjwvZGl2PjxkaXYgc3R5bGU9InRleHQt
YWxpZ246IGxlZnQ7IiBhbGlnbj0ibGVmdCI+PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2
ZXRpY2E7IGZvbnQtc2l6ZTogMTJwdDsgbGluZS1oZWlnaHQ6IG5vcm1hbDsgY29sb3I6IHJnYigw
LCAwLCAwKTsiPjxicj48L3NwYW4+PC9kaXY+PGRpdiBzdHlsZT0idGV4dC1hbGlnbjogbGVmdDsi
IGFsaWduPSJsZWZ0Ij48c3BhbiBzdHlsZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1z
aXplOiAxMnB0OyBsaW5lLWhlaWdodDogbm9ybWFsOyBjb2xvcjogcmdiKDAsIDAsIDApOyI+PGJy
Pjwvc3Bhbj48L2Rpdj48ZGl2IHN0eWxlPSJ0ZXh0LWFsaWduOiBsZWZ0OyIgYWxpZ249ImxlZnQi
PjxzcGFuIHN0eWxlPSJmb250LWZhbWlseTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEycHQ7IGxp
bmUtaGVpZ2h0OiBub3JtYWw7IGNvbG9yOiByZ2IoMCwgMCwgMCk7Ij5Bbmd1czxicj48L3NwYW4+
PHNwYW4gc3R5bGU9ImZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6ZTogMTJwdDsgbGlu
ZS1oZWlnaHQ6IG5vcm1hbDsgY29sb3I6IHJnYigwLCAwLCAwKTsiPjwvc3Bhbj48c3BhbiBzdHls
ZT0iZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAxMnB0OyBsaW5lLWhlaWdodDog
bm9ybWFsOyBjb2xvcjogcmdiKDAsIDAsIDApOyI+PC9zcGFuPjwvZGl2Pg==
-----------------------b76700fc017bd3eec593de33a2ab9d81--
-----------------------72fe99493a063dc3ad01536841344e31--
-----------------------0a761db651e2c3cb5c50bead64df3088--

--------08d3d6c0cd6d0e443bc3ff44f907b6f8de77e96feb5e80858d967f3784a56dd1
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: OpenPGP digital signature
Content-Disposition: attachment; filename="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: ProtonMail

wnUEARYKACcFAmON4kgJEMIlymXPPJ1UFiEEmpQAKIPU4CpfaPPKwiXKZc88
nVQAAGoTAQCYrNx9rmGhFz3ELgDa1ysEeIN5WniMNaP4CkK8MK1uDAD/QSCC
JGrISvNpkmDfPZrILY0xCrp+ZTk7De36X6/9xQo=
=xnmF
-----END PGP SIGNATURE-----


--------08d3d6c0cd6d0e443bc3ff44f907b6f8de77e96feb5e80858d967f3784a56dd1--