Re: Write-up on "tree repositories" as an alternative to conflictors

James Cook <[email protected]> Fri, 22 Jan 2021 22:42:14 +0000
Newsgroups gmane.comp.version-control.darcs.user
Message-ID <[email protected]>
SGkgQmVuLAoKSGFwcHkgMjAyMSEgSSBsZXQgdGhpcyB0aHJlYWQgZHJvcCBmb3IgYSB3aGlsZSBi
dXQgdHJ5aW5nIHRvIGNhdGNoIHVwIG5vdy4KCkkgdGhpbmsgd2UgaGFkIGRlZmluZWQgYW4gYWJz
dHJhY3QgcGF0Y2ggdGhlb3J5IGFzIGEgc2V0IG9mIG5hbWVzLCBhbmQKYSBzZXQgb2YgcG9zc2li
bGUgImNvbnRleHRzIiB3aGljaCBhcmUgc2V0cyBvZiBuYW1lcyAob3IgY29ybmVycyBvbiB0aGUK
aHlwZXJjdWJlKSwgd2hlcmUgdGhlIHNldCBvZiBwb3NzaWJsZSBjb250ZXh0cyBzYXRpc2ZpZXMg
KGNvcHlpbmcgYW5kCnBhc3RpbmcgZnJvbSBteSBlYXJsaWVyIGVtYWlsKToKCihhKSBUaGUgZW1w
dHkgc2V0IGlzIGEgY29udGV4dC4KCihiKSBJZiBjMSBhbmQgYzIgYXJlIGNvbnRleHRzLCB0aGVu
IGMxIOKIqSBjMiBpcyBhIGNvbnRleHQuCgooYykgSWYgYzEsIGMyLCBjMyBhcmUgY29udGV4dHMg
YW5kIGMxIOKKhiBjMyBhbmQgYzIg4oqGIGMzLCB0aGVuIGMxIOKIqiBjMiBpcwogICAgYSBjb250
ZXh0LgoKKGQpIEZvciBldmVyeSBub24tZW1wdHkgY29udGV4dCBjIHRoZXJlIGlzIGF0IGxlYXN0
IG9uZSBlbGVtZW50IG4gb2YgYwogICAgc3VjaCB0aGF0IGNce259IGlzIGFsc28gYSBjb250ZXh0
LgoKVGhpcyBjYW4gYmUgdHVybmVkIGludG8gYSBjYXRlZ29yeTogdGFrZSB5b3VyIGRlZmluaXRp
b24gb2YgYW4gYWJzdHJhY3QKcGF0Y2ggYXMgYSBwYWlyIChjLG4pIChjIGlzIGEgY29udGV4dCBh
bmQgbiBpcyBhIG5hbWUpIGFuZCB0aGVuIHRha2UKdGhlIGZyZWUgY2F0ZWdvcnkgb3ZlciB0aGF0
LgoKVGhlbiB0aGUgZGlzY3Vzc2lvbiB0dXJuZWQgdG8gY29uY3JldGUgcmVwcmVzZW50YXRpb25z
IG9mIHBhdGNoZXMuCkxvbmctd2luZGVkIChzb3JyeSkgcXVlc3Rpb24gYmVsb3cuLi4KCj4gPiBJ
J20gbm90IHN1cmUgSSB1bmRlcnN0YW5kLiBJIGd1ZXNzIGEgc3RhdGUgaXMgdGhlIGNvbnRlbnQg
b2YgdGhlIGZpbGVzCj4gPiBpbiB0aGUgcmVwb3NpdG9yeS4KPiAKPiBQbHVzIHRoZSBkaXJlY3Rv
cnkgc3RydWN0dXJlLiBPbmUgY29uY3JldGUgcmVwcmVzZW50YXRpb24gb2Ygc3RhdGVzIGlzCj4g
dGhlICdUcmVlJyB0eXBlIGluIERhcmNzLCBzZWUKPiBodHRwczovL2h1Yi5kYXJjcy5uZXQvZGFy
Y3MvZGFyY3Mtc2NyZWVuZWQvYnJvd3NlL3NyYy9EYXJjcy9VdGlsL1RyZWUuaHMjNTkKPiB1cCB0
byBsaW5lIDg0LgoKWWVzLCB0aGF0IG1ha2VzIHNlbnNlLgoKPiA+IEFueSBjb25jcmV0ZSBwYXRj
aCBoYXMgZXhhY3RseSBvbmUgc3RhcnQgc3RhdGUgYW5kCj4gPiBvbmUgZW5kIHN0YXRlLgo+IAo+
IE5vdCBhdCBhbGwuIFVubmFtZWQgcHJpbSBwYXRjaGVzIGNhbiBiZSBhcHBsaWVkIHRvIG1hbnkg
c3RhdGVzLCBpbmRlZWQKPiB0aGUgZG9tYWluIGlzIGFsd2F5cyBpbmZpbml0ZS4gRm9yIGluc3Rh
bmNlIHRoZSBkb21haW4gb2YgImFkZGZpbGUgLi9mIgo+IGlzIHRoZSBzZXQgb2YgYWxsIHRyZWVz
IHdoaWNoIGRvIG5vdCBoYXZlICIuL2YiIGFzIGVpdGhlciBmaWxlIG9yCj4gZGlyZWN0b3J5LiBJ
dHMgY29kb21haW4gaXMgdGhlIHNldCBvZiBhbGwgdHJlZXMgdGhhdCBkbyBoYXZlICIuL2YiIGFz
IGEKPiBmaWxlLiBJdHMgaW52ZXJzZSBpcyAicm1maWxlIC4vZiIgd2l0aCBkb21haW4gYW5kIGNv
ZG9tYWluIHN3YXBwZWQuCj4gCj4gPiBEbyB5b3UgbWVhbiB0aGF0IGl0J3MgYSBwYXJ0aWFsIGJp
amVjdGlvbiB3aGVyZSB0aGUKPiA+IGRvbWFpbiBhbmQgcmFuZ2UgYXJlIGJvdGggc2V0cyBvZiBz
aXplIDE/Cj4gCj4gTm8sIHNlZSBhYm92ZS4KPiAKPiA+IEUuZy4gc3VwcG9zZSB0aGUgY29uY3Jl
dGUgcGF0Y2ggUCBpczoKPiA+IAo+ID4gaHVuayAuL2ZpbGUudHh0IDIKPiA+ICt3b3JsZAo+ID4g
Cj4gPiBhbmQgaW4gdGhlIGNvbnRleHQgb2YgcCwgZmlsZS50eHQgaGFzIGp1c3Qgb25lIGxpbmUg
IkhlbGxvIi4KPiA+IEkgZ3Vlc3MgaXQncyB0ZW1wdGluZyB0byB0aGluayBvZiBwIGFzIHRoZSBm
b2xsb3dpbmcgcGFydGlhbCBiaWplY3Rpb24KPiA+IGY6IGYgYWx3YXlzIGluc2VydHMgdGhlIGxp
bmUgIndvcmxkIiBhZnRlciB0aGUgZmlyc3QgbGluZSBvZiBmaWxlLnR4dC4KPiAKPiBUaGlzIGlz
IGV4YWN0bHkgaG93IHRoZSBhYm92ZSBodW5rIGlzIGludGVycHJldGVkIGluIERhcmNzLgo+IAo+
ID4gQnV0IHRoYXQncyBub3QgcmVhbGx5IGEgdXNlZnVsIHJlcHJlc2VudGF0aW9uIG9mIHA7IGUu
Zy4gaXQgZG9lc24ndAo+ID4gd29yayBpZiBwIGdldHMgY29tbXV0ZWQgdG8gYSBkaWZmZXJlbnQg
Y29udGV4dC4KPiAKPiBXaHkgbm90PyBJZiB5b3UgY29tbXV0ZSB0aGUgcGF0Y2ggdG8gYSBkaWZm
ZXJlbnQgY29udGV4dCB0aGVuIGl0cyBkb21haW4KPiBhbmQgY29kb21haW4gdXN1YWxseSBjaGFu
Z2UsIHRvby4gSSB3b3VsZCBleHBlY3Qgbm90aGluZyBsZXNzLgo+IAo+IEJ1dCBwZXJoYXBzIHdo
YXQgeW91IG1lYW4gaXMgdGhhdCBpdCBpcyBub3QgYSB1c2VmdWwgL2dlbmVyaWMvCj4gZGVzY3Jp
cHRpb24gb2YgIndoYXQgdGhlIHBhdGNoIGRvZXMiIC9pbmRlcGVuZGVudC8gb2YgY29tbXV0YXRp
b24uIFRoaXMKPiBpcyB0cnVlLiBJZiB3ZSBoYWQgYSByZXByZXNlbnRhdGlvbiBvZiBjb25jcmV0
ZSBwYXRjaGVzIHRoYXQgaXMgdHJ1bHkKPiBjb250ZXh0IGluZGVwZW5kZW50LCB0aGVuIGEgbG90
IG9mIHByb2JsZW1zIGNvdWxkIGJlIHNvbHZlZCBxdWl0ZQo+IGVhc2lseSwgc2VlIFBpanVsLiBJ
biBwYXJ0aWN1bGFyLCBJIHRoaW5rIHdlIHdvdWxkIG5vdCBuZWVkIG5hbWVzIGZvcgo+IHBhdGNo
ZXMuCj4gCj4gPiBTbyB0byBtZSBpdCBtYWtlcyBtb3JlCj4gPiBzZW5zZSB0byBqdXN0IHNheSB0
aGF0IGNvbmNyZXRlbHksIHAgaXMgdGhlIHBhaXIgKCJIZWxsb1xuIiwKPiA+ICJIZWxsb1xud29y
bGRcbiIpLgo+IAo+IEl0IGlzIGNlcnRhaW5seSBwb3NzaWJsZSB0byBkZWZpbmUgaHVua3MgaW4g
dGhpcyB3YXkuIEluIERhcmNzLCBzbwo+IGNhbGxlZCBiaW5hcnkgcGF0Y2hlcyBhcmUgZGVmaW5l
ZCBpbiB0aGlzIHdheTogdGhleSBjb250YWluIHRoZSBvbGQKPiBjb250ZW50IGFuZCB0aGUgbmV3
IGNvbnRlbnQuCj4gCj4gSG93ZXZlciwgZXZlbiBpZiB5b3UgZG8gdGhhdCwgeW91ciBodW5rcyBh
cmUgc3RpbGwgInBvbHltb3JwaGljIgo+IHJlbGF0aXZlIHRvIHRoZSAicmVzdCBvZiB0aGUgdHJl
ZSIuIEFuZCBjb21tdXRpbmcgc3VjaCBhIGh1bmsgd2l0aCBhCj4gZmlsZSByZW5hbWUgcGF0Y2gg
bWF5IHN0aWxsIGhhdmUgdG8gbW9kaWZ5IHRoZSBodW5rLgo+IAo+ID4gSSBndWVzcyB0aGlzIGlz
IGEgbG9uZy13aW5kZWQgd2F5IHRvIGp1c3Qgc2F5IEknbSBub3Qgc3VyZSB3aGF0IHlvdQo+ID4g
bWVhbiBieSBjb25jcmV0ZSBwYXRjaGVzIGJlaW5nIGJpamVjdGlvbnMuCj4gCj4gQXMgZXhwbGFp
bmVkIGFib3ZlLCBmb3IgZWFjaCBraW5kIG9mIHByaW0gcGF0Y2ggaW4gRGFyY3MgKGh1bmssIGJp
bmFyeSwKPiBhZGRmaWxlLCBldGMuLi4gYnV0IHBsZWFzZSBpZ25vcmUgc2V0cHJlZiBwYXRjaGVz
KSBvbmUgY2FuIHByZWNpc2VseQo+IGRlZmluZSB0aGUgc2V0IG9mIHRyZWVzIHRoYXQgYXJlIHRo
ZWlyIGRvbWFpbiBhbmQgY29kb21haW4gYW5kIHRoZXkgYXJlCj4gZGVzaWduZWQgc28gdGhhdCB0
aGUgcGFydGlhbCBmdW5jdGlvbiBkZWZpbmVkIGJ5IGFwcGx5aW5nIHRoZSBwYXRjaCBpcwo+IGlu
amVjdGl2ZSBhbmQgdGh1cyBjYW4gYmUgaW52ZXJ0ZWQuCj4gCj4gPiBJIGd1ZXNzIHlvdSdkIHdh
bnQgdG8gYmUgYWJsZSB0byBjb21tdXRlIGNvbmNyZXRlIHBhdGNoZXMgd2l0aG91dAo+ID4gYWNj
ZXNzIHRvIGFueSBpbmZvcm1hdGlvbiBvdGhlciB0aGFuIHRob3NlIHR3byBwYXRjaGVzJwo+ID4g
cmVwcmVzZW50YXRpb25zLiBEb2VzIHlvdXIgZGVmaW5pdGlvbiBjYXB0dXJlIHRoYXQ/Cj4gCj4g
QWJzb2x1dGVseS4gVGhlIGZ1bGwgY29tbXV0ZSBjb2RlIGZvciBEYXJjcycgcHJpbSBwYXRjaGVz
IGlzIGhlcmU6Cj4gaHR0cHM6Ly9odWIuZGFyY3MubmV0L2RhcmNzL2RhcmNzLXNjcmVlbmVkL2Jy
b3dzZS9zcmMvRGFyY3MvUGF0Y2gvUHJpbS9WMS9Db21tdXRlLmhzLgo+IEl0IGNvdWxkIHVzZSBh
IGJpdCBvZiBzdHJlYW1saW5pbmcgYnV0IEkgdGhpbmsgdGhlIG92ZXJhbGwgcGljdHVyZSBvZgo+
IGhvdyBjb21tdXRhdGlvbiB3b3JrcyBvbiBwcmltIHBhdGNoZXMgaXMgcmVjb2duaXphYmxlLgoK
SSB0aGluayBJIGFtIGNsb3NlciB0byB1bmRlcnN0YW5kaW5nIHdoYXQgeW91IG1lYW4gYnkgImNv
bmNyZXRlIHBhdGNoIiwKYnV0IEkgdGhpbmsgSSBoYXZlbid0IGdvdCBpdCBjb21wbGV0ZWx5LgoK
SGVyZSdzIG15IHVuZGVyc3RhbmRpbmcgc28gZmFyOgoKYSkgV2UgYmVnaW4gd2l0aCBhIHNldCBT
IG9mIHN0YXRlcy4gSW4gdGhlIGNhc2Ugb2YgRGFyY3MsIHRoYXQncyB0aGUKICAgVHJlZSB0eXBl
LgoKYikgQSBjb25jcmV0ZSBwYXRjaCBpcyBhIGJpamVjdGlvbiBiZXR3ZWVuIHR3byBzdWJzZXRz
IG9mIFMuIEEKICAgImNvbmNyZXRlIHBhdGNoIHRoZW9yeSIgZ2l2ZXMgYSB3YXkgb2YgZW5jb2Rp
bmcgc29tZSBzdWNoIGJpamVjdGlvbnMKICAgYXMgZGF0YS4gRm9yIGV4YW1wbGUsIGV2ZXJ5IERh
cmNzIHByaW0gcGF0Y2ggZW5jb2RlcyBzdWNoIGEKICAgYmlqZWN0aW9uLCBzbyBEYXJjcyBwcmlt
IHBhdGNoZXMgKGV4Y2x1ZGluZyBuYW1lcykgYXJlIGEgImNvbmNyZXRlCiAgIHBhdGNoIHRoZW9y
eSIgaW4gdGhpcyBzZW5zZS4KCmMpIElmIHR3byBEYXJjcyBwcmltIHBhdGNoZXMgYXJlIGRpZmZl
cmVudCAoZXhjbHVkaW5nIG5hbWVzKSB0aGVuIHRoZXkKICAgZW5jb2RlIGRpZmZlcmVudCBiaWpl
Y3Rpb25zLiBUaGlzIGlzIHByb2JhYmx5IG5vdCB0b28gaGFyZCB0byBwcm92ZS4KICAgSWYgaXQg
d2VyZW4ndCB0cnVlLCBEYXJjcyB3b3VsZG4ndCBzYXRpc2Z5IHBvaW50IChiKSBhYm92ZS4KCmQp
IENvbW11dGluZyB0d28gY29uY3JldGUgcGF0Y2hlcyAoYXNzdW1pbmcgaXQgc3VjY2VlZHMpIG1h
eSBvciBtYXkgbm90CiAgIGNoYW5nZSB0aGUgcGF0Y2hlcy4gSSBzdXBwb3NlIHRoZSBjb21tdXRl
IGZ1bmN0aW9uIGlzIGFuIGVzc2VudGlhbAogICBwYXJ0IG9mIHRoZSBkZXNjcmlwdGlvbiBvZiBh
IGNvbmNyZXRlIHBhdGNoIHRoZW9yeS4KCmUpIFdlIGNhbiB0dXJuIGFueSBjb25jcmV0ZSBwYXRj
aCB0aGVvcnkgaW50byBhIGNhdGVnb3J5IGJ5IHRha2luZyBhbGwKICAgc3Vic2V0cyBvZiBTIGFz
IG9iamVjdHMgYW5kIHRoZW4gdGFraW5nIHRoZSBmcmVlIGNhdGVnb3J5IGdlbmVyYXRlZAogICBi
eSBhbGwgdGhlIGJpamVjdGlvbnMgaW4gb3VyIGNvbmNyZXRlIHBhdGNoIHRoZW9yeS4KCmYpIFdl
J3JlIGludGVyZXN0ZWQgaW4gZnVuY3RvcnMgZnJvbSBhIGNvbmNyZXRlIHBhdGNoIHRoZW9yeSB0
byBhbgogICBhYnN0cmFjdCBwYXRjaCB0aGVvcnkgYXMgZGVzY3JpYmVkIGF0IHRoZSB0b3Agb2Yg
dGhpcyBlbWFpbCAoZS5nLgogICBvYmplY3RzIGFyZSBzZXRzIG9mIG5hbWVzKS4KCkJ1dCB0aGF0
IGNhbid0IGFsbCBiZSByaWdodC4gSW4gcGFydGljdWxhciBJJ20gY29uZnVzZWQgYWJvdXQgKGYp
LgpTdXBwb3NlIHdlIGhhdmUganVzdCB0d28gbmFtZXMgbjEgYW5kIG4yLCBhbmQgb3VyIGNvbnRl
eHRzIGFyZSB7fSwge24xfQphbmQge24xLCBuMn0uIFdoZW4gSSB0aGluayBvZiBtYWtpbmcgdGhh
dCBjb25jcmV0ZSwgSSBpbWFnaW5lIHNvbWV0aGluZwpsaWtlIHRoaXM6CgoqIHt9IGlzIGFuIGVt
cHR5IFRyZWUuCgoqIG4xIGNyZWF0ZXMgYSBmaWxlIGNhbGxlZCAiZmlsZS50eHQiIHdpdGggb25l
IGxpbmUsICJIZWxsbyIuIFNvLAogIGNvbmNyZXRlbHksIHtuMX0gaXMgYSBUcmVlIHdpdGgganVz
dCAiZmlsZS50eHQiIHdpdGgganVzdCAiSGVsbG8iLgoKKiBuMiBhcHBlbmRzICJ3b3JsZCIgYWZ0
ZXIgIkhlbGxvIiwgc28ge24xLG4yfSBpcyBhIFRyZWUgd2l0aCBqdXN0CiAgImZpbGUudHh0IiBj
b250YWluaW5nIHR3byBsaW5lcyAiSGVsbG8gYW5kIHdvcmxkIi4KCkJ1dCBhIGZ1bmN0b3IgZnJv
bSBhIGNvbmNyZXRlIHBhdGNoIHRoZW9yeSAoYXMgZGVmaW5lZCBhYm92ZSkgdG8gdGhhdAphYnN0
cmFjdCBwYXRjaCB0aGVvcnkgY291bGRuJ3Qgd29yayBsaWtlIHRoYXQuIFRoZSBjb25jcmV0ZSBw
YXRjaAp0aGVvcnkgb2JqZWN0cyBhcmUgc3VwcG9zZWQgdG8gYmUgc2V0cyBvZiBzdGF0ZXMsIGJ1
dCBhYm92ZSBJIGFzc2lnbmVkCmEgc2luZ2xlIHN0YXRlIHRvIGVhY2ggY29udGV4dC4KCldoYXQg
d2VudCB3cm9uZz8gU2hvdWxkIEkgaGF2ZSBhc3NpZ25lZCBhIHNldCBvZiBzdGF0ZXMgdG8gZWFj
aCBvZiB7fSwKe24xfSBhbmQge24xLG4yfSwgYW5kIGlmIHNvLCBjYW4geW91IGdpdmUgYW4gZXhh
bXBsZSBhc3NpZ25tZW50PwoKQW5vdGhlciB0aG91Z2h0OiBDb3VsZCB0aGVyZSBiZSBvdGhlciBj
b25jcmV0ZSBwYXRjaCB0aGVvcmllcyB0aGF0CnZpb2xhdGUgKGIpIGJ1dCBhcmUgc3RpbGwgaW50
ZXJlc3Rpbmc/IEUuZy4gbWF5YmUgdGhlcmUgY291bGQgYmUgdHdvCnBhdGNoZXMgQSBhbmQgQiB0
aGF0IHJlcHJlc2VudCB0aGUgc2FtZSBiaWplY3Rpb24sIGJ1dCB0aGF0IGJlaGF2ZQpkaWZmZXJl
bnRseSB3aGVuIGNvbW11dGVkIHdpdGggYSB0aGlyZCBwYXRjaCBDLgoKSSd2ZSBwcm9iYWJseSBt
aXN1bmRlcnN0b29kIHNvbWV0aGluZyBiYXNpYzsgbWF5YmUgeW91IGNhbiBmaWd1cmUgb3V0Cndo
ZXJlIEkgc3R1bWJsZWQuCgo+ID4gSSdtIG5vdCBzdXJlIHdoYXQgcnVsZXMgY29uc3RyYWluIHVz
IGhlcmUuIEUuZy4gSSBjb3VsZCBqdXN0IGRlY2xhcmUKPiA+IHRoYXQgYW55ICJjb25mbGljdGVk
IiBjb250ZXh0IG1hcHMgdG8gdGhlIGVtcHR5IGZpbGVzZXQsIGJ1dCB3b3VsZCB0aGF0Cj4gPiB3
b3JrIG91dD8gSSBndWVzcyB0aGUgaGFyZCBwYXJ0IGlzIGZpZ3VyaW5nIG91dCB3aGF0IGhvdyB0
aGUgY29uY3JldGUKPiA+IHBhdGNoZXMgd29yayAoZm9yIGV4YW1wbGUsIGhvdyB5b3UgY2FuIGNv
bW11dGUgdGhlbSB3aXRob3V0IGFjY2VzcyB0bwo+ID4gYW55dGhpbmcgYnV0IHRoZSB0d28gcGF0
Y2ggcmVwcmVzZW50YXRpb25zKS4KPiAKPiBJbmRlZWQuIFRoaXMgaXMgdGhlIHJlYXNvbiB3aHkg
dGhlIGNvbmZsaWN0b3IgY29tbXV0ZSBhbmQgbWVyZ2UgY29kZSBpcwo+IGhpZ2hseSBub24tdHJp
dmlhbC4gQSBjb21wbGljYXRpbmcgZmFjdG9yIGlzIHRoYXQgYSBjbGVhbiBkZWZpbml0aW9uIG9m
Cj4gY29uZmxpY3RvcnMgY2Fubm90IGJlIGJhc2VkIG9uIHByaW0gcGF0Y2hlcyBhbG9uZSwgdGhl
eSBoYXZlIHRvIGJlCj4gL25hbWVkLyBwcmltIHBhdGNoZXMuIEhvdyB0byByZXNvbHZlIHRoaXMg
dGVuc2lvbiBpcyBzdGlsbCBsYXJnZWx5IHVuY2xlYXIuCj4gCj4gSSB0aGluayB0aGUgY29uc3Ry
YWludHMgYXJlIHRoZSB1c3VhbCBvbmVzOiB0aGUgbWVyZ2UgYW5kIGNvbW11dGUgbGF3cywKPiBp
biBwYXJ0aWN1bGFyIHBlcm11dGl2aXR5LiBFLmcuIHRoZSBmaXJzdCB0aGluZyB5b3UgbmVlZCB0
byBlbnN1cmUgaXMKPiB0aGF0IGlmIHlvdSBtZXJnZSBwXC9xIHRvIHEnL1xwJywgdGhlbiBwO3En
IGNvbW11dGVzIHRvIHE7cCcsIGV2ZW4gaWYgcCcKPiBhbmQgcScgYXJlIGNvbmZsaWN0ZWQuCgpJ
dCB3b3VsZCBiZSBpbnRlcmVzdGluZyB0byBkaXNjdXNzIHRoaXMgZnVydGhlciBidXQgSSB0aGlu
ayBJIHNob3VsZApmaWd1cmUgb3V0IHdoYXQgeW91IG1lYW4gYnkgY29uY3JldGUgcGF0Y2ggdGhl
b3J5IGZpcnN0LgoKLS0gCkphbWVzCl9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fX19fX19fCmRhcmNzLXVzZXJzIG1haWxpbmcgbGlzdApkYXJjcy11c2Vyc0Bvc3Vvc2wu
b3JnCmh0dHBzOi8vbGlzdHMub3N1b3NsLm9yZy9tYWlsbWFuL2xpc3RpbmZvL2RhcmNzLXVzZXJz
Cg==