Re: switching between different databases - in 1.3.0.rc1

Matthias Andree via bogofilter <[email protected]> Tue, 3 Jun 2025 22:44:19 +0200
Newsgroups gmane.mail.bogofilter.general
Message-ID <[email protected]>
QW0gMjkuMDUuMjUgdW0gMjA6MjIgc2NocmllYiBSb2IgTWNFd2VuIHZpYSBib2dvZmlsdGVyOgo+
IEZyb20gIk1hdHRoaWFzIEFuZHJlZSIgPG1hdHRoaWFzLmFuZHJlZUBnbXguZGU+Cj4+IFNob3Vs
ZCB5b3UgZGVjaWRlIHRvIGRvIGFueXRoaW5nIG9mIHByb2ZpbGluZy9wZXJmb3JtYW5jZSBtZXRy
aWNzIGFuZCAKPj4geW91IGlkZW50aWZ5IGhvdCBzcG90cyBvciBJL08gc2xvd2Rvd25zIHNvbWV3
aGVyZSwgcGxlYXNlIHNoYXJlIHlvdXIgCj4+IGZpbmRpbmdzLgo+Cj4gTWF0dGhpYXMsCj4KPiBT
byBhcyBJIHdhcyBzdGFydGluZyB0byBkbyBzb21lIHBlcmZvcm1hbmNlIHRlc3RpbmcsIEkgbm90
aWNlZCBhIGZldyAKPiBpbnRlcmVzdGluZyB0aGluZ3MgLSBhbmQgaG9wZWZ1bGx5IGlmIHlvdSds
bCBkZWVtIHNvbWUgb2YgbXkgcmVzdWx0aW5nIAo+IHN1Z2dlc3Rpb25zIHdvcnRoeSBlbm91Z2gg
dG8gYmUgYWN0ZWQgdXBvbj8gLi4ucGVyaGFwcyBtYWtpbmcgaXQgaW50byAKPiBSQzI/Cj4KPiBP
bmUgb2YgdGhlIHRoaW5ncyB0aGF0IEkndmUgbm90aWNlZCBpcyB0aGF0IFJDMSBleHRyYWN0cyBN
VUNIIE1PUkUgCj4gYWRkaXRpb25hbCB0eXBlcyBvZiB0b2tlbnMgdGhhbiBkaWQgMS4yLjUgLSBl
c3BlY2lhbGx5IHdpdGggY2VydGFpbiAKPiB0eXBlcyBvZiBlbWFpbHMgLSBhbmQgdGhhdCBpcyBv
dmVyYWxsIEVYQ0VMTEVOVCAtIGJ1dCBpdCBkb2VzIGNvbWUgCj4gd2l0aCBjYXZlYXRzL2NvbmNl
cm5zLiBTbyBJIHRoaW5rIHRoaXMgY2FuIHBvdGVudGlhbGx5IGNhdXNlIAo+IHBlcmZvcm1hbmNl
IGlzc3Vlcz8gQnV0IEknbSBTVElMTCB2ZXJ5IGdsYWQgZm9yIHRoaXMgYWRkaXRpb25hbCBhbmQg
Cj4gaGVscGZ1bCBkYXRhIC0gc28gcGxlYXNlIGRvbid0IHJlbW92ZSBvciByZXZlcnNlIHRoaXMg
YWRkaXRpb25hbCBkYXRhIAo+IC0gSSBqdXN0IHRoaW5rIHRoaW5rIHRoZXJlIGFyZSBzb21lIGhl
bHBmdWwgd29ya2Fyb3VuZHMgdGhhdCBtaWdodCBpbiAKPiBTT01FIGNhc2VzIGhlbHAgbWl0aWdh
dGUgdGhhdCBpZi93aGVuIHN1Y2ggaXNzdWVzIG9jY3VyIChvciB0aGlzIGFsc28gCj4gbWlnaHQg
bGVhZCB0byBzb21lIHBlcmZvcm1hbmNlIG9wdGltaXphdGlvbnMgdG9vPykKCgpSb2IsIHRoYW5r
cyBmb3IgdGhlIHR3byBsb25nIG1lc3NhZ2VzIG9uIHRoaXMgc3ViamVjdC4KCgpCb2dvZmlsdGVy
IDEuMy4wLnJjKiBmaXhlZCBhIHRydWNrbG9hZCBvZiBidWdzIHRoYXQgd2VyZSBpbiAxLjIuNS7C
oCAKVGhlcmUgaGF2ZSBiZWVuIHNoeSBvZiAyMDAgY29tbWl0cyBzaW5jZSB0aGF0IG9sZGVyIHJl
bGVhc2UuCgpXZSd2ZSBoYWQgY29udHJpYnV0aW9ucyBsaW5nZXJpbmcgaW4gc291cmNlZm9yZ2Un
cyBidWcgdHJhY2tlciBhbmQgdGhlcmUgCndlcmUgc2V2ZXJhbCBoaWdoLXF1YWxpdHkgYnVnIHJl
cG9ydHMgdGhhdCByZXN1bHRlZCBpbiBmaXhlcy4gSSByZXdyb3RlIAp0aGUgTUlNRSAqaGVhZGVy
KiBkZWNvZGluZyAoUkZDLTIwNDcgbGlrZSksIHdoaWNoIHdhcyByZWN1cnNpbmcgd2hpY2ggaXQg
CnNob3VsZCBub3QgaGF2ZSBkb25lLCBhbmQgYWxzbyBwcmV2ZW50ZWQgc29tZSBvZiB0aGUgbGV4
ZXIgcnVsZXMgZnJvbSAKZ3JlZWRpbHkgZWF0aW5nIHVwIGVudGlyZSBjaHVua3MgYmVjYXVzZSBh
IGZldyBvZiBvdXIgcmVndWxhciAKZXhwcmVzc2lvbnMgaW4gdGhlIC5sIGZpbGUgKGZsZXggc291
cmNlIGZpbGUpIHdlcmUgbm90IGRlc2lnbmVkIHdlbGwsIAp3aGljaCBJJ3ZlIHJlY3RpZmllZC4g
T2YgY291cnNlLCBzdWNoIGJ1ZyBmaXhlcyBjaGFuZ2UgdGhlIG91dGNvbWUsIGFuZCAKb2YgY291
cnNlLCB0aGF0IGNhbiBjaGFuZ2UgcGVyZm9ybWFuY2UuIEkgaG9wZSBmb3IgdGhlIGJldHRlci4K
Cgo+Cj4gSGVyZSBhcmUgc29tZSBvYmVydmF0aW9uczoKPgo+ICgxKSBFdmVuIGZvciBhIGZyZXNo
bHktZ2VuZXJhdGVkIGRhdGFiYXNlIHdoZXJlIGxlZ2l0IGFuZCBzcGFtIGVtYWlscyAKPiBmcm9t
IGRpcmVjdG9yaWVzIHdlcmUgcHJvY2Vzc2VkLCBhbmQgdGhlIHdvcmRsaXN0IGZpbGUgd2FzIG1p
c3NpbmcgCj4gYmVmb3JlIGRvaW5nIHRoYXQgLSBldmVuIHRoZW4gLSBpdCdzIGludGVyZXN0aW5n
IGhvdyB0aGVzZSB0d28gCj4gY29tbWFuZHMgYmVsb3cgc2lnbmljYW50bHkgcmVkdWNlIHRoZSBm
aWxlIHNpemUgLSBhbmQgaW4gc29tZSAKPiBzY2VuYXJpb3MgLSBhbmQgaW4gc29tZSBjdXJzb3J5
IHRlc3RpbmcgLSB0aGlzIGFsb25lIHNpZ25pZmljYW50bHkgCj4gaW1wcm92ZWQgcGVyZm9ybWFu
Y2Ugb24gaW5kaXZpZHVhbCBtZXNzYWdlIHNjYW5zLiAoQnV0IHRoYXQgbWlnaHQgYmUgCj4gbW9y
ZSBkdWUgdG8gdGhlIFZQUyBub3QgaGF2aW5nIHN1ZmZpY2llbnQgUkFNIHRvIGJlZ2luIHdpdGgg
LSBidXQgdGhlIAo+IHN5cyBJIHRlc3RlZCB0aGlzIG9uIHNob3VsZCBoYXZlIGhhZCBwbGVudHkg
b2YgUkFNIHRvIHByZXZlbnQgdGhhdCAKPiBmcm9tIGJlaW5nIGFuIGlzc3VlIC0gYnV0IEkgcHJv
YmFibHkgc2hvdWxkIGhhdmUgdGVzdGVkIHRoaXMgd2l0aCBhIAo+IFZQUyB3aXRoIGFuIG9ic2Nl
bmUgYW1vdW50IG9mIGV4dHJhIFJBTSBhbmQvb3IgZGl2ZWQgZGVlcCBpbnRvIHRoZSBSQU0gCj4g
dXNhZ2UgdG8gYmUgc3VyZSAtIEkgZGlkbid0IGRvIHRoYXQuKSBCdXQsIGF0IHRoZSBsZWFzdCwg
dGhpcyBieSAKPiBpdHNlbGYgaXMgd29ydGh5IG9mIGZ1cnRoZXIgaW52ZXN0aWdhdGlvbi4gKGEp
IGhvdyBtdWNoIGRvZXMgdGhpcyAKPiByZWR1Y2UgZmlsZSBzaXplIGFuZCBSQU0gb24gYSBmcmVz
aGx5LWdlbmVyYXRlZCBkYiwgYW5kIChiKSBob3cgbXVjaCAKPiBkb2VzIHRoaXMgYWxvbmUgc3Bl
ZWQgdXAgbWVzc2FnZSBzY2Fucz8KPiBib2dvdXRpbCAtZCB+Ly5ib2dvZmlsdGVyL3dvcmRsaXN0
LmRiIHwgYm9nb3V0aWwgLWwgCj4gfi8uYm9nb2ZpbHRlci93b3JkbGlzdF90ZW1wLmRiCj4gbXYg
L3Jvb3QvLmJvZ29maWx0ZXIvd29yZGxpc3RfdGVtcC5kYiAvcm9vdC8uYm9nb2ZpbHRlci93b3Jk
bGlzdC5kYgo+ICgyKSBBcyBhIHNpZGUgbm90ZSAtIHRoaXMgdXNlIG9mIGJvZ291dGlsIGZvciBm
aWx0ZXJpbmcvYWx0ZXJpbmcgb2YgCj4gdGhlIGRhdGEgLSBydW5zIG9yZGVyIG9mIG1hZ25pdHVk
ZXMgZmFzdGVyIGluIDEuMy4wLnJjMSB0aGFuIGl0IGRpZCBpbiAKPiAxLjIuNSAtIEkgZGlkbid0
IHRlc3QgaXQgc2NpZW50aWZpY2FsbHkgLSBidXQganVzdCBmcm9tIGh1bWFuIAo+IGV4cGVyaWVu
Y2UsIGEgY29tcGFyYWJsZSBkYXRhYmFzZSB0aGF0IHRha2VzIGFib3V0IDEwIHNlY29uZHMgdG8g
ZG8gCj4gdGhpcyBpbiAxLjIuNSwgc2VlbXMgdG8gZG8gdGhpcyBjb252ZXJzYXRpb24gKGFib3Zl
KSBpbiBhYm91dCAxLzIgYSAKPiBzZWNvbmQgaW4gMS4zLjAucmMxIC0gRVhDRUxMRU5UIQoKCk9o
LCB0aGF0J3MgYSBzdXJwcmlzZSAoZm9yIG5vdyBhbnl3YXlzKS4gSSB3b3VsZCBub3QgZXhwZWN0
IApvcmRlci1vZi1tYWduaXR1ZGUgc3BlZWQgY2hhbmdlcyBpbiB0aGUgX2RhdGFiYXNlXyBkZXBh
cnRtZW50LiBGb3IgbGV4ZXIgCmlzc3VlcyBvbiBwYXRob2xvZ2ljYWwgY2FzZXMgKGVzcC4gd2l0
aCBsb25nIHBoeXNpY2FsIGxpbmVzIGluIEhUTUwgYW5kIApjZXJ0YWluIG90aGVyIGNhc2VzKSwg
eWVzLCBidXQgZm9yIGRhdGFiYXNlcywgdGhhdCdzIHVuZXhwZWN0ZWQuIE1heWJlIApldmVuIG91
dHNpZGUgYm9nb2ZpbHRlciwgYW5kIG1heWJlIGl0IHdvdWxkIGJlIG1vcmUgdXNlZnVsIHRvIHJl
LWJ1aWxkIAoxLjIuNSBvbiB5b3VyIERlYmlhbiAxMiBzeXN0ZW0gdG8gc2VlLiBBbmQgdGhlbiBJ
IGhhdmVuJ3QgdXNlZCBEZWJpYW4gb3IgCmRlcml2YXRpdmVzIHN1Y2ggYXMgVWJ1bnR1IGZvciBi
b2dvZmlsdGVyIGluIGFnZXMsIHNvIEkgZG9uJ3Qga25vdyB3aGF0IAplbHNlIGNoYW5nZWQgaW4g
ZGlzdHJvIHBvbGljaWVzLCBrZXJuZWwgdmVyc2lvbnMsIGFuZCB3aGF0bm90LiBCdXQgaWYgCiJu
ZXdlciBpcyBmYXN0ZXIiIHdpdGhvdXQgYmVpbmcgbGVzcyBwcmVjaXNlLCB3ZSd2ZSBnb25lIGlu
IHRoZSByaWdodCAKZGlyZWN0aW9uLiBUaGUgaW1wb3J0YW50IHBhcnQgd2lsbCBiZSB0dXJuaW5n
IG9ubHkgb25lIGtub2IgYXQgYSB0aW1lLgoKTWVzc2FnZSBzY2FubmluZyB3aXRoIGJvZ29maWx0
ZXIgb3IgYm9nb2xleGVyIGRpZCBjaGFuZ2Ugb24gcHVycG9zZS4gCk1vcmUgdG9rZW5zIG1heSBt
YWtlIHRoZSBkYXRhYmFzZSBzbG93ZXIsIG1vcmUgdG9rZW5zIGluIFJBTSBtaWdodCBjYXVzZSAK
bWVtb3J5IHRvIGdldCB0aWdodGVyLCBidXQgYXZvaWRpbmcgc3R1cGlkIHRoaW5ncyBpbiB0aGUg
bGV4ZXIgbWF5IG1ha2UgCnRoaW5ncyBjb25zaWRlcmFibHkgZmFzdGVyLgoKCj4KPiAoMykgVGhp
cyBleHRyYSBkYXRhIEkgbWVudGlvbmVkIGluIHBvaW50IDEgKHRoZSBhZGRpdGlvbmFsL25ldyB0
eXBlcyAKPiBvZiB0b2tlbnMgY29sbGVjdGVkKSBjYW4gZXh0cmVtZWx5IGJsb2F0IHRoZSBzaXpl
IG9mIHRoZSBkYXRhYmFzZSAtIAo+IHdoaWNoIHRoZW4gYmxvYXRzIFJBTSB1c2FnZSAtIGFuZCBh
Z2FpbiAtIEknbSBzZWVpbmcgaW5kaWNhdGlvbnMgdGhhdCAKPiB0aGlzIGNhbiBwb3RlbnRpYWxs
eSBzaWduaWZpY2FudGx5IGltcGFjdCBwZXJmb3JtYW5jZSAoZm9yIHdoYXRldmVyIAo+IHJlYXNv
bnMsIGV2ZXJvbmUncyAibWlsZWFnZSBtYXkgdmFyeSIgb2YgY291cnNlISkuIFRoZXJlZm9yZSwg
SSd2ZSAKPiBmb3VuZCB0aGF0IHJlbW92aW5nIGFsbCB0b2tlbnMgZnJvbSB0aGUgZGF0YWJhc2Ug
dGhhdCBkaWRuJ3QgaGF2ZSBhdCAKPiBsZWFzdCAyKyBoaXRzIGluIGF0IGxlYXN0IG9uZSBvZiB0
aGUgc3BhbSBvciBsZWdpdCBjYXRlZ29yaWVzIC0gaGVscHMgCj4gdG8gU0lHTklGSUNBTlRMWSBy
ZWR1Y2UgdGhlIHNpemUgb2YgZGF0YSBvdmVyYWxsLCBhbmQgd2hpbGUgSSBhZG1pdCAKPiB0aGF0
IHRoaXMgcHJvYmFibHkgd2lsbCByZWR1Y2UgZWZmZWN0aXZlbmVzcywgdGhlcmUncyBhIHN0cm9u
ZyAKPiBhcmd1bWVudCB0aGF0IHRoZSBpbmNyZWFzZWQgZWZmZWN0aXZlbmVzcyBvZiB0aGUgbmV3
IHR5cGVzIG9mIHRva2VucyAKPiBub3cgaW5jbHVkZWQgaW4gMS4zLjAucmMxIC0gbW9yZSB0aGFu
IG1ha2VzIHVwIGZvciB0aGUgcmVkdWNlZCAKPiBlZmZlY3RpdmVuZXNzIGVmZmVjdGl2ZW5lc3Mg
Y2F1c2VkIGJ5IHJ1bm5pbmcgdGhlc2UgdHdvIGNvbW1hbmRzIAo+IChiZWxvdyksIHdoaWNoIGdy
ZWF0bHkgcmVkdWNlIHRoZSBzaXplIG9mIHRoZSBkYXRhYmFzZSAoYW5kIHRodXMgCj4gcmVkdWNl
IFJBTSB1c2FnZSkuIEFsc28sIGtlZXAgaW4gbWluZCB0aGF0IHRoZSBmYXN0ZXIvc2xvd2VyIAo+
IHBlcmZvcm1hbmNlIChkZXBlbmRpbmcgb24gdGhlIHNpdHVhdGlvbikgbWlnaHQgaGF2ZSBPVEhF
UiBjYXVzZXMgCj4gYmVzaWRlcyByYXcgUkFNIHVzYWdlIQo+IGJvZ291dGlsIC1kIH4vLmJvZ29m
aWx0ZXIvd29yZGxpc3QuZGIgfCBhd2sgJyQyID4gMSB8fCAkMyA+IDEnIAo+IGJvZ291dGlsIC1s
wqAgfi8uYm9nb2ZpbHRlci93b3JkbGlzdF90ZW1wLmRiCj4gbXYgL3Jvb3QvLmJvZ29maWx0ZXIv
d29yZGxpc3RfdGVtcC5kYiAvcm9vdC8uYm9nb2ZpbHRlci93b3JkbGlzdC5kYgoKCmJvZ291dGls
IGhhcyBhIC1jIDxudW1iZXI+IG9wdGlvbiB0byBkbyBqdXN0IHdoYXQgeW91ciBhd2sgZGlkLCB3
aXRob3V0IAp1c2luZyBhd2sgOi0pIElmIHlvdSB3YW50LiBJIHRoaW5rIHdlIHVzZWQgdGhlIHRl
cm0gInNpbmdsZXRvbiJzIGZvciAKc3VjaCB0b2tlbnMgaW4gdGhlIGVhcmxpZXIgeWVhcnMgb2Yg
Ym9nb2ZpbHRlci4KCk9mIGNvdXJzZSByZWJ1aWxkaW5nIGEgc21hbGxlciBkYXRhYmFzZSB3aXRo
IGJvZ291dGlsIC1sIG1heSBtYWtlIGZvciBhIApiZXR0ZXIgcGFnZSBmaWxsIGFuZCB0aHJvdWdo
IGltcHJvdmVkIGxvY2FsaXR5IGluIHlvdXIgUkFJRCBpbXByb3ZlIApwZXJmb3JtYW5jZSBpZiBp
dCBkb2Vzbid0IHBlcnNpc3QgY2FjaGVkIGluIFJBTSBvciBjb21lcyBmcm9tIGZhc3QgU1NELiAK
U29tZSBkYXRhYmFzZXMgKFNRTGl0ZTMgZm9yIG9uZSkgaGF2ZSBjbGVhbnVwIGNvbW1hbmRzIChz
dWNoIGFzIFNRTCdzIApWQUNVVU0pIHRvIGNvbXBhY3QgdGhlIGRhdGFiYXNlIGlmIG1hbnkgZGF0
YSBoYXZlIGV4cGlyZWQgZnJvbSBpdC4KCgo+Cj4gKDQpIFNvIGJhc2ljYWxseSwgaW4gMS4yLjUs
IG9uZSBzdHJhdGVneSBJIGZvdW5kIGVmZmVjdGl2ZSB3YXMgdG8gaGF2ZSAKPiBhIGNvbXBsZXRl
bHkgc2VwYXJhdGUgMm5kIEJvZ29maWx0ZXIgaW1wbGVtZW50YXRpb24gd2hpY2ggdXNlcyB0aGUg
Cj4gZm9sbG93aW5nIChjb250cm92ZXJzaWFsPykgc2V0dGluZ3M6Cj4KPiBtaW4tdG9rZW4tbGVu
PTIKPiBtYXgtdG9rZW4tbGVuPTQ4Cj4gbXVsdGktdG9rZW4tY291bnQ9Mwo+IG1heC1tdWx0aS10
b2tlbi1sZW49NDgKPgo+IEFuZCB0aGlzIG1vc3QgZGVmaW5hdGVseSBhbHJlYWR5IGJsb2F0cyB0
aGUgc2l6ZSBvZiB0aGUgZGF0YWJhc2UgaW4gCj4gMS4yLjUgKGJ1dCBub3QgZHVlIHRvIGEgYnVn
IC0gc3VjaCBibG9hdGluZyBpcyBzdXBwb3NlIHRvIG9jY3VyIGJhc2VkIAo+IG9uIHRoZXNlIHNl
dHRpbmdzISkgLSBzbyB0aGVuIEkgdXNlZCB0aGF0IHNhbWUgYXdrICckMiA+IDEgfHwgJDMgPiAx
JyAKPiBmaWx0ZXJpbmcgc3RyYWdlZ3kgdG8gY29tYmluZSB0aGlzIG11bHRpLXRva2VuIHN0cmF0
ZWd5IHdpdGggcmVtb3ZpbmcgCj4gb25lLW9mZiAidW5pcXVlIiBoaXRzLiBJdCB3YXMgdmVyeSBz
dWNjZXNzZnVsLiBUaGUgcHJvYmxlbT8gU28gd2hlbiAKPiBjb21iaW5pbmcgdGhpcyBtdWx0aS13
b3JkIHN0cmF0ZWd5IHdpdGggQUxTTyB0cnlpbmcgdG8gZG8gdGhpcyBvbiAKPiAxLjMuMC5yYzEg
LSB3aGljaCBhbHNvIGJsb2F0cyB0aGUgZGF0YSB3aXRoIGFkZGl0aW9uYWwgdHlwZXMgb2YgdG9r
ZW5zIAo+IHRoYXQgMS4yLjUgbmV2ZXIgaW5jbHVkZWQgLSB0aGVuIHRoZSBibG9hdGluZyAoYW5k
IHByb2Nlc3NpbmcgdGltZSBhbmQgCj4gZmlsZSBzaXplcyEpIGdvZXMgYWJzb3V0ZWx5ICJwYXJh
Ym9saWMiIGFuZCBzb3J0ICJtdWx0aXBsZXMiIC0gYW5kIAo+IHRoZW4gLSB0aGlzIGNhdXNlcyBi
b2dvZmlsdGVyJ3MgcHJvY2Vzc2luZyBvZiBsYXJnZSBtZXNzYWdlIHN0b3JlcyAtIAo+IHRoYXQg
cHJldmlvdXNseSB0b29rIHNvbWV0aGluZyBsaWtlIDIwIG1pbnV0ZXMgdG8gcHJvY2VzcyAtIHRo
YXQgbm93IAo+IGFwcGVhcnMgdG8gYmUgcmVxdWlyaW5nIHBvdGVudGlhbGx5IERBWVMgT0YgVElN
RSAtIGFuZCBwcm9iYWJseSAxMHMgb3IgCj4gMTAwcyBvZiBnaWdhYnl0ZXMgdG8gZ2V0IHRoZXJl
IC0gd2hvIGtub3dzIC0gYnV0IGR1cmluZyB0ZXN0aW5nIC0gaXQgCj4gd2FzIGluc2FuZS4gU28g
ZG9pbmcgdGhpcyBtdWx0aS13b3JkIHN0cmF0ZWd5IGlzIHNpbXBseSB1bndvcmthYmxlIG9uIAo+
IDEuMy4wLnJjMSAoYW5kIGxlYXN0IGZvciBtb3N0IHNpdHVhdGlvbnMvc2V0dXBzKS4gU28gSSBn
dWVzcyBmb3Igbm93IAo+IEknbSBzdHVjayBrZWVwaW5nIHRoaXMgcGFydCBvZiBteSBmaWx0ZXJp
bmcgcHJvY2VzcyBvbiAxLjIuNSA/CgoKVGhhdCdzIGEgZ29vZCBxdWVzdGlvbi4gSWYgeW91IGhh
dmUgYSBzbWFsbCBidXQgc3RyaWtpbmcgcGFscGFibGUgCmV4YW1wbGUgb2YgYSBmZXcgbWVzc2Fn
ZXMgd2hlcmUgdGhhdCBtdWx0aS10b2tlbiBzdHJhdGVneSBydW5zIG11Y2ggCndvcnNlIGluIDEu
My4wIG5vdyB2cy4gMS4yLjUsIEknZCBiZSB3aWxsaW5nIHRvIGhhdmUgYSBsb29rLiBGZWVsIGZy
ZWUgCnRvIGFub255bWl6ZSBoZWFkZXJzIGlmIHRoYXQgZG9lc24ndCBjaGFuZ2UgdGhlIG91dGNv
bWUsIEkgc3VwcG9zZSBtYW55IAp0b2tlbnMgd2lsbCBiZSBmcm9tIG1lc3NhZ2UgYm9kaWVzIGFu
eXdheXMuIEVzcGVjaWFsbHkgSFRNTCBtYXkgeWllbGQgCm1hbnkgbW9yZSB0b2tlbnMuCgoKPgo+
IFNvIHJlbGF0ZWQgdG8gdGhpcyAtIHdoaWxlIEkgYWJzb2x1dGVseSBkbyB3YW50IHRoZSBuZXcg
Qm9nb2ZpbHRlciB0byAKPiBjb250aW51ZSB0byBpbmNsdWRlIHRoZXNlIG5ldyB0eXBlcyBvZiB0
b2tlbnMgaXQncyBmaW5kaW5nIGluIHRoZSBuZXcgCj4gdmVyc2lvbiAtIHBsZWFzZSBkb24ndCBy
ZW1vdmUgdGhhdCBmZWF0dXJlIC0gdGhhdCBpcyBvdmVyYWxsIGFuIAo+IGV4Y2VsbGVudCBpbXBy
b3ZlbWVudCAtIGJ1dCBJIGRvIGhhdmUgYSBmZWF0dXJlIHJlcXVlc3QgLSBwbGVhc2UgCj4gY29u
c2lkZXIgYWRkaW5nIGEgc2V0dGluZyBvciBjb21tYW5kIGxpbmUgb3B0aW9uIC0gdG8gT1BUSU9O
QUxMWSAKPiByZXZlcnQgdGhhdCBiYWNrIC0gcGVyaGFwcyBldmVuIGhhdmUgaXQgYmUgYmFzZWQg
b24gbGV2ZWxzLiBzdWNoIGFzIHRoaXM6Cj4KPiAjIFRva2VuQ29sbGVjdGlvbkx2bCAxICMgc2lt
aWxhciB0byAxLjIuNSdzIGluIGNvbGxlY3Rpbmcgb2YgdG9rZW5zCj4gIyBUb2tlbkNvbGxlY3Rp
b25MdmwgMiAjIGEgY29tcHJvbWlzZSBiZXR3ZWVuIDEuMi41IGFuZCB0aGUgbmV3IAo+IHZlcnNp
b24ncyBtb3JlIGFnZ3Jlc3NpdmUgY29sbGVjdGluZyBvZiB0b2tlbnMKPiBUb2tlbkNvbGxlY3Rp
b25MdmwgMyAjIERFRkFVTFQtIHVzZXMgdGhlIG5ldyB2ZXJzaW9uJ3MgY29sbGVjdGluZyBvZiAK
PiBhZGRpdGlvbmFsIHR5cGVzIG9mIHRva2Vucwo+Cj4gKCsgY29tbWFuZCBsaW5lIG9wdGlvbiBm
b3IgdGhhdD8pCj4KPiBPciBzb21ldGhpbmcgbGlrZSB0aGF0PwoKCklmIGl0IHdlcmUgc28gZWFz
eS4gV2UnZCBuZWVkIHRvIGlzb2xhdGUgd2hpY2ggY2hhbmdlcyBtYWRlIHRoYXQgaHVnZSAKZGlm
ZmVyZW5jZSBmb3IgeW91IGFuZCB0aGVuIHNlZSBpZiB3ZSBjYW4gbWFrZSBpdCBhbiBvcHRpb24u
IFRob3NlICIyMDAgCmNoYW5nZXMgc2luY2UgMS4yLjUiIGRvbid0IHNjYXJlIG1lIHRvbyBtdWNo
LCB0aGF0J3MgZ29pbmcgdG8gYmUgdHJhY2tlZCAKZG93biBpbiBsaWtlIDUgLi4uIDIwIGJ1aWxk
cy4KQWRkaW5nIGFuIG9wdGlvbiBmb3IgdGhhdCB3b3VsZCBsaWtlbHkgYmUgdGhlIGVhc2llciBw
YXJ0LCBmaW5kaW5nIG91dCAKd2hpY2ggb2YgdGhlIGNoYW5nZXMgY2F1c2VkIHRoZSBtYW55IG1v
cmUgdG9rZW5zIHRvIGFwcGVhciBpcyB0aGUgaGFyZCAKb25lIChzZWUgYWJvdmUgZm9yIGluZm8g
dGhhdCBtaWdodCBoZWxwIG1lIGZpbmQgb3V0KS4KCgo+Cj4gKDUpIGJ0dyAtIHRoaXMgYXBwbGll
cyB0byBhbGwgdmVyc2lvbnMgLSBJJ20gZmluZGluZyB0aGF0IC0gZHVyaW5nIAo+IHJlZ3VsYXIg
dXNhZ2Ugb2YgQm9nb2ZpbHRlciAtIG5vdGhpbmcgZXhvdGljIC0gc28gdXNpbmcgdGhlIGRlZmF1
bHQgCj4gbWluLXRva2VuLWxlbj0zIHNldHRpbmcgLSB0aG9zZSB0b2tlbnMgd2hpY2ggc3RhcnQg
d2l0aCAiaGVhZCIgYnV0IGFyZSAKPiBvbmx5IDMgaW4gbGVuZ3RoIC0gb3ZlcmFsbCBjYXVzZSB0
b28gbWFueSBGYWxzZSBQb3NpdGl2ZXMgdG8gYmUgCj4gd29ydGh3aGlsZS4gQnV0IGNoYW5naW5n
IHRoaXMgdG8gc2V0dGluZyA0LWluLWxlbmd0aCB3b3VsZCB0aGVuIGNhdXNlIAo+IHRvbyBtYW55
IEZhbHNlIE5lZ2F0aXZlcy7CoCBTbyBJIHVzZSB0aGF0IGltcG9ydC9leHBvcnQgdG8gZml4IHRo
aXMsIAo+IHdoZXJlIEkgYWRkZWQgdGhpcyBsaXR0bGUgZ2VtOgo+Cj4gZ3JlcCAtYXZFICdeaGVh
ZDouezN9XHMnCj4KPiBTbyB0aGVuIGluc3RlYWQgb2YgdGhlIGZvbGxvd2luZzoKPgo+IGJvZ291
dGlsIC1kIH4vLmJvZ29maWx0ZXIvd29yZGxpc3QuZGIgfCBhd2sgJyQyID4gMSB8fCAkMyA+IDEn
IHwgCj4gYm9nb3V0aWwgLWzCoCB+Ly5ib2dvZmlsdGVyL3dvcmRsaXN0X3RlbXAuZGIKPgo+IEkg
aW5zdGVhZCBydW46Cj4KPiBib2dvdXRpbCAtZCB+Ly5ib2dvZmlsdGVyL3dvcmRsaXN0LmRiIHwg
YXdrICckMiA+IDEgfHwgJDMgPiAxJyB8IGdyZXAgCj4gLWF2RSAnXmhlYWQ6LnszfVxzJyB8IGJv
Z291dGlsIC1sIH4vLmJvZ29maWx0ZXIvd29yZGxpc3RfdGVtcC5kYgoKClNvIGRvIEkgdW5kZXJz
dGFuZCB5b3UgY29ycmVjdGx5IGluIHRoYXQgaXQgd291bGQgaGVscCB0byBoYXZlIGRpZmZlcmVu
dCAKbWluaW1hbCB0b2tlbiBsZW5ndGhzIGZvciBoZWFkZXJzIGFuZCBib2RpZXM/IEJlY2F1c2Ug
Zm9yIHRoZSBtZXNzYWdlcyAKeW91IHJlY2VpdmUsIHlvdXIgc2V0dXAgd291bGQgYmVuZWZpdCBm
cm9tIDMtY2hhcmFjdGVyLWxvbmcgdG9rZW5zIGZvciAKYm9kaWVzIGJ1dCBkb2luZyBoZWFkOi4u
LiB3aXRoIGp1c3QgMyBjaGFyYWN0ZXJzIG1lc3NlcyB1cD8KCgo+Cj4gKDYpIE5vdGUgdGhhdCBt
eSB1c2Ugb2YgdGhlICItYSIgb3B0aW9uIGluIGdyZXAgaGVyZSAtIG1pZ2h0IGFsc28gYmUgCj4g
ZmlsdGVyaW5nIHNvbWUgdGhpbmcgb3V0IC0gd2hpY2ggaW4gc29tZSBjYXNlcyByZWFsbHkgc2hv
dWxkIGJlIHRoZXJlPyAKPiBTbyB0aGF0J3MgYW5vdGhlciBmYWN0b3IgdGhhdCBwcm9iYWJseSBk
ZXNlcnZlcyBzb21lIGV4dHJhIHJlc2VhcmNoIC0gCj4gSSBqdXN0IHdhbnRlZCBldmVyeW9uZSB3
aG8gcmVhZHMgdGhpcyBlbWFpbCBhbmQgbWlnaHQgdHJ5IHRoZXNlIHRoaW5ncyAKPiAtIHRvIGJl
IGF3YXJlIG9mIHRoYXQgYW5kIHRvIGJlIHN1cmUgdG8gcmVzZWFyY2ggdGhhdCBwYXJ0IGZvciAK
PiB0aGVtc2VsdmVzLgoKCkdOVSBncmVwJ3MgLWEgcHJldmVudHMgZ3JlcCBmcm9tIHByaW50aW5n
IHNvbWV0aGluZyBsaWtlICJCaW5hcnkgZmlsZSAKbWF0Y2hlcyIsIHNvIGl0J3MgcHJvYmFibHkg
d2lzZSBpbiB0aGF0IHBhcnRpY3VsYXIgc2l0dWF0aW9uLgoKCgo+Cj4gKDcpIEZpbmFsbHksIGJl
Y2F1c2UgbXkgc3lzdGVtIGp1c3QgZG9lcyBhIG1hc3NpdmUgd3JpdGUgd2hlbiBJIAo+IHBlcmlv
ZGljYWxseSByZWJ1aWxkIG15IGJvZ29maWx0ZXIgZGF0YmFzZXMgLSBhbmQgc28gdGhlbiBteSBz
eXN0ZW0gCj4gcmFyZWx5IGRvZXMgYW55IHdyaXRlcyB0byB0aGUgcHJvZHVjdGlvbiBkYiAtIGFu
ZCB3aGVuIGl0IGRvZXMsIGl0J3MgYSAKPiAib25lLXdyaXRlciIgc2l0dWF0aW9uIC0gVEhFUkVG
T1JFIC0gSSd2ZSBmb3VuZCB0aGF0IHN0YXlpbmcgd2l0aCAKPiBCZXJrZWxleSBhbmQgY29tcGls
aW5nIGl0IHdpdGggIi0tZGlzYWJsZS10cmFuc2FjdGlvbnMiIC0gdGhhdCBzbyBmYXIgCj4gc2Vl
bXMgdG8gYmUgdGhlIGJlc3Qgb3B0aW9uIGZvciBteSBzeXN0ZW0uIEJ1dCBJIHRvdGFsbHkgcmVj
b2duaXplIAo+IHRoYXQgc3dpdGNoaW5nIHRvIFNxbGl0ZTMgd2l0aCB0cmFuc2FjdGlvbnMgLSBp
cyB0aGUgYmVzdCBvcHRpb24gZm9yIAo+IHRoZSBkZWZhdWx0IHNldHRpbmdzIGZvciBCb2dvZmls
dGVyLiBTbyB5b3UgbWFkZSB0aGUgYmVzdCBkZWNpc2lvbnMgLSAKPiBidXQgSSBqdXN0IHdhbnRl
ZCB5b3UgdG8ga25vdyB0aGF0IHRoaXMgaXMgYXQgbGVhc3Qgb25lIHZvdGUgaW4gZmF2b3IgCj4g
b2Yga2VlcGluZyBib3RoIHRoZSBvcHRpb24gdG8gdXNlIEJlcmtlbHkgYW5kIHRoZSBvcHRpb24g
Zm9yIAo+ICItLWRpc2FibGUtdHJhbnNhY3Rpb25zIiB3aGVuIGNvbXBsaWVkIC0gc28gcGxlYXNl
IGRvbid0IHJlbW92ZSB0aG9zZSAKPiBvcHRpb25zL2ZlYXR1cmVzISBUaGFua3MhIChidHcsIHJl
bGF0ZWQgdG8gdGhpcywgSSB0aGluayBzZXR0aW5nIHRoYXQgCj4gdGhlICJkYl90cmFuc2FjdGlv
bj1ubyAiIHNldHRpbmcgaW4gdGhlIGJvZ29maWx0ZXIuY2YgZmlsZSAtIGhhcyBiZWVuIAo+IGRp
c2FibGVkIGluIHRoZSBuZXcgdmVyc2lvbj8gU28gdGhhdCBtb3RpdmF0ZWQgbWUgdG8gbWVudGlv
biB0aGVzZSAKPiB0aGluZ3MgaGVyZS4pCgoKVGhhdCAtLWRpc2FibGUtdHJhbnNhY3Rpb25zIGF0
IGNvbmZpZ3VyZSB0aW1lIGlzIGEgc2xlZGdlIGhhbW1lci7CoCBXZSAKaGF2ZSBhIGZpbmVyIHRv
b2w6IFlvdSBjYW4ganVzdCBhZGQgLS1kYi10cmFuc2FjdGlvbj1ubyB3aGVuIHVzaW5nIApib2dv
dXRpbCAtbCwgb3Igd2hlbiBydW5uaW5nIGJvZ29maWx0ZXIgZm9yIHRoZSBmaXJzdCB0aW1lIHRv
IHJlZ2lzdGVyIApzcGFtIG9yIGhhbSB3aXRoIG5vIHByZS1leGlzdGluZyBkYXRhYmFzZS4gKHRo
YXQncyBzcGVjaWZpYyB0byBCZXJrZWxleSAKREIgdXNlKS4KCgpSZWdhcmRzLApNYXR0aGlhcwoK
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KYm9nb2ZpbHRl
ciBtYWlsaW5nIGxpc3QKYm9nb2ZpbHRlckBib2dvZmlsdGVyLm9yZwpodHRwczovL3d3dy5ib2dv
ZmlsdGVyLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2JvZ29maWx0ZXIK