Re: Managing long/complicated plot commands?

Bjorn Buckwalter <[email protected]> Mon, 30 Mar 2026 09:21:47 +0200
Newsgroups gmane.comp.graphics.gnuplot.user
Message-ID <CAOCFVnVENRpfd2b9rYiAum7qjSxp77y8bcsic+vLTcP7hXDiKw@mail.gmail.com>
VGhhbmtzIEV0aGFuIGZvciBkaWdnaW5nIHRvIHRoZSBib3R0b20gb2YgdGhpcyBhbmQgZm9yIHRo
ZSB3b3JrYXJvdW5kISAoSQpndWVzcyB0aGF0IHRoZSBvdGhlciB3b3JrYXJvdW5kIGlzIHNpbXBs
eSB0byBub3QgdXNlIGBcYCBhbmQgaGF2ZSB2ZXJ5IGxvbmcKbGluZXMsIGF0IHRoZSBleHBlbnNl
IG9mIHJlYWRhYmlsaXR5LCBvZiBjb3Vyc2UuKQoKTm90ZSB0aGF0IEkgc3RpbGwgc2VlIHRoZSBz
ZWNvbmQgcHJvYmxlbSB0aGF0IEkgbWVudGlvbmVkIGF0IHRoZSBlbmQgb2YgYW4KZWFybGllciBl
bWFpbC4gSSByZXBlYXQgaXQgaGVyZS4gVGhpcyBpcyB0aGUgbWVzc2FnZSBJIGdldCBpZiBJIGlu
Y2x1ZGUKeW91ciAianVuayIgY29kZSBwcmlvciB0byBteSBzY3JpcHQuIEFzIGV4cGVjdGVkIHRo
ZSBkYXRhIGZpbGVzIGFyZSBub3QKZm91bmQsIGJ1dCB0aGUgc3RyYW5nZSB0aGluZyBpcyB0aGUg
bGFzdCBtZXNzYWdlOgoKYGBgCnJlZmVyZW5jZSBhIHN0cmluZyBvZiBsZW5ndGggIDYxNDQKZ2Fy
YmFnZQoiJHBsb3RfcG9sYXIiIGxpbmUgMTM6IHdhcm5pbmc6IENhbm5vdCBmaW5kIG9yIG9wZW4g
ZmlsZSAid29ybGRfMTEwbS50eHQiCiIkcGxvdF9wb2xhciIgbGluZSAxMzogd2FybmluZzogQ2Fu
bm90IGZpbmQgb3Igb3BlbiBmaWxlICJkYXRhL1JlcG9ydEEudHh0IgoiJHBsb3RfcG9sYXIiIGxp
bmUgMTM6IHdhcm5pbmc6IENhbm5vdCBmaW5kIG9yIG9wZW4gZmlsZSAiZGF0YS9SZXBvcnRBLnR4
dCIKIiRwbG90X3BvbGFyIiBsaW5lIDEzOiB1bmRlZmluZWQgdmFyaWFibGU6IG9yYml0CmBgYAoK
SSBoYXZlIGhhZCB0cm91YmxlIHdoZXJlIHRoaXMgbGFzdCBtZXNzYWdlL2Vycm9yIHBvcHMgdXAg
c29tZXRpbWVzIGFuZCBJCmhhdmVuJ3QgYmVlbiBhYmxlIHRvIG5haWwgZG93biB0aGUgZXhhY3Qg
Y2lyY3Vtc3RhbmNlcy4gSSBiZWxpZXZlIGluIHRoaXMKY2FzZSB0aGF0IGl0IHJlZmVycyB0byBg
dGl0bGUgb3JiaXRgLiBJZiBJIGNoYW5nZSB0aGF0IHRvIGBub3RpdGxlYCBpdApkaXNhcHBlYXJz
LiBBbmQgY2hhbmdpbmcgZnJvbSBgbm90aXRsZWAgdG8gYHRpdGxlIG9yYml0YCBpbiB0aGUgcHJl
Y2VkaW5nCmxpbmUgZG9lcyBub3QgdHJpZ2dlciB0aGUgbWVzc2FnZS4gVGhpcyBzZWVtcyBhbHNv
IHNvbWVob3cgcmVsYXRlZCB0byB0aGUKbGVuZ3RoIG9mIHRoZSBjb21tYW5kLgoKTWFueSB0aGFu
a3MsCkJqb3JuCgoKT24gTW9uLCBNYXIgMzAsIDIwMjYgYXQgMTozNOKAr0FNIEV0aGFuIE1lcnJp
dHQgPGVhbWVycml0dEBnbWFpbC5jb20+IHdyb3RlOgoKPiBPbiBTdW5kYXksIDI5IE1hcmNoIDIw
MjYgMTA6MjU6MTYgUERUIEJqb3JuIEJ1Y2t3YWx0ZXIgd3JvdGU6Cj4gPiBIaSBQaGlsaXBwIGFu
ZCBhbGwsCj4gPgo+ID4gU28sIHRyeWluZyB0byBtaW5pbWl6ZSBhIGJpdCBtb3JlLCBJIHJlYWxp
emVkIHRoYXQgYSBrZXkgcGllY2Ugb2YKPiA+IGluZm9ybWF0aW9uIHRoYXQgd2FzIG9taXR0ZWQg
c2VlbXMgdG8gYmUgdGhhdCB0aGUgcGxvdCBjb21tYW5kIGlzIGluc2lkZQo+IGEKPiA+IGZ1bmN0
aW9uIGJsb2NrLiBCZWxvdyBpcyBhIGNhc2UgdGhhdCByZXByb2R1Y2VzIHRoZSBlcnJvciBmb3Ig
bWUgdGhhdCB5b3UKPiA+IGNvdWxkIHRlc3QuIEkgcmVhbGlzZWQgdGhhdCBpZiBJIHRha2UgdGhl
IGNvbW1hbmQgb3V0IG9mIHRoZSBmdW5jdGlvbiBpdAo+ID4gd29ya3MgcHJvcGVybHkuCj4gPgo+
ID4gQnkgdGhlIHdheSBJIGFtIG9uIG1hY29zIGFuZCBgZ251cGxvdCAtLXZlcnNpb25gIHNheXMg
YGdudXBsb3QgNi4wCj4gPiBwYXRjaGxldmVsIDRgLgo+ID4KPiA+IEhlcmUgaXMgdGhlIGNhc2Ug
dGhhdCBmYWlscyB3aXRoIHRoZSBlcnJvciBpbiBxdWVzdGlvbi4gU2luY2UgaXQgZmFpbHMKPiA+
IGVhcmx5IChhdCBsZWFzdCBmb3IgbWUpIHlvdSB3aWxsIG5vdCBhY3R1YWxseSBuZWVkIHRoZSBk
YXRhIGZpbGVzOgo+ID4KPiA+IGBgYAo+ID4gbG9jYWwgbG9uKHgpID0geAo+ID4gbG9jYWwgbGF0
KHgpID0geAo+ID4gbG9jYWwgZmlsdGVyX2xhdCh4KSA9IHgKPiA+IGxvY2FsIG5leHRfY29sb3Io
eCkgPSAiIzAwRkYwMCIKPiA+IGxvY2FsIG5leHRfY29sb3JfdCh4LCB5KSA9ICIjMDBGRjAwIgo+
ID4KPiA+IGxvY2FsIGxhdDEgPSAwCj4gPgo+ID4gZnVuY3Rpb24gJHBsb3RfcG9sYXIob3JiaXRz
KSA8PEVPRgo+ID4gICBwbG90IFwKPiA+ICAgICAnd29ybGRfMTEwbS50eHQnIHVzaW5nIChsb24o
JDEpKTooZmlsdGVyX2xhdCgkMikpIGxpbmVjb2xvciAiZ3JheSIKPiA+IG5vdGl0bGUgLCBcCj4g
PiAgICAgbGF0KDApIGJsYWNrIGR0IDIgdGl0bGUgIkVxdWF0b3IiICwgXAo+ID4gICAgIGxhdCg2
Ni42KSBibGFjayBkdCA1IHRpdGxlICJBcmN0aWMvQW50YXJjdGljIGNpcmNsZSIsIFwKPiA+ICAg
ICBsYXQoLTY2LjYpIGJsYWNrIGR0IDUgbm90aXRsZSAsIFwKPiA+ICAgICBmb3IgW29yYml0IGlu
IG9yYml0c10gXAo+ID4gICAgICAgJ2RhdGEvUmVwb3J0Jy5vcmJpdC4nLnR4dCcgdXNpbmcgKGxv
bigkNykpOihmaWx0ZXJfbGF0KCQ2KSkgXAo+ID4gICAgICAgICBsYyByZ2IgbmV4dF9jb2xvcl90
KDEsICdjYycpIG5vdGl0bGUsIFwKPiA+ICAgICBmb3IgW29yYml0IGluIG9yYml0c10gXAo+ID4g
ICAgICAgJ2RhdGEvUmVwb3J0Jy5vcmJpdC4nLnR4dCcgdXNpbmcgKGxvbigkNykpOigkMyA9PSAy
MDMwID8KPiA+IGZpbHRlcl9sYXQoJDYpIDogTmFOKSBcCj4gPiAgICAgICAgIGxjIHJnYiBuZXh0
X2NvbG9yKG4pIHRpdGxlIG9yYml0LCBcCj4gPiAgICAgMCwgXAo+ID4gICAgIDEKPiA+IEVPRgo+
ID4KPiA+IF8gPSAkcGxvdF9wb2xhcigiQSIpCj4gPiBgYGAKPiA+Cj4gPiBUaGUgZXJyb3IgbWVz
c2FnZToKPiA+Cj4gPiBgYGAKPiA+ICAgcGxvdCAgICAgJ3dvcmxkXzExMG0udHh0JyB1c2luZyAo
bG9uKCQxKSk6KGZpbHRlcl9sYXQoJDIpKSBsaW5lY29sb3IKPiA+ICJncmF5IiBub3RpdGxlICwg
ICAgIGxhdCgwKSBibGFjayBkdCAyIHRpdGxlICJFcXVhdG9yIiAsICAgICBsYXQoNjYuNikKPiA+
IGJsYWNrIGR0IDUgdGl0bGUgIkFyY3RpYy9BbnRhcmN0aWMgY2lyY2xlIiwgICAgIGxhdCgtNjYu
NikgYmxhY2sgZHQgNQo+ID4gbm90aXRsZSAsICAgICBmb3IgW29yYml0IGluIG9yYml0c10gICAg
ICAgJ2RhdGEvUmVwb3J0Jy5vcmJpdC4nLnR4dCcKPiB1c2luZwo+ID4gKGxvbigkNykpOihmaWx0
ZXJfbGF0KCQ2KSkgICAgICAgICBsYyByZ2IgbmV4dF9jb2xvcl90KDEsICdjYycpIG5vdGl0bGUs
Cj4gPiAgIGZvciBbb3JiaXQgaW4gb3JiaXRzXSAgICAgICAnZGF0YS9SZXBvcnQnLm9yYml0Licu
dHh0JyB1c2luZwo+ID4gKGxvbigkNykpOigkMyA9PSAyMDMwID8gZmlsdGVyX2xhdCgkNikgOiBO
YU4pICAgICAgICAgbGMgcmdiCj4gbmV4dF9jb2xvcihuKQo+ID4gdGl0bGUgb3JiaXQsICAgICAw
LCBcICAgIDEKPiA+Cj4gPiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAg
ICAgICAgICAgICAgICAgICAgICAgICAgXgo+ID4gIiRwbG90X3BvbGFyIiBsaW5lIDEzOiBpbnZh
bGlkIGNoYXJhY3RlciBcCj4gPiBgYGAKPiA+Cj4gPiBJZiBJIGNoYW5nZSB0aGUgYGxpbmVjb2xv
cmAgaW4gdGhlIGZpcnN0IGxpbmUgb2YgYHBsb3RgIHRvIGBsY2AsIFRoZQo+IGVycm9yCj4gPiBk
b2VzIG5vdCBvY2N1ci4KPgo+IFRoaXMgaXMgYSBzdHJhbmdlIG9uZS4KPgo+IEkgYmVsaWV2ZSBJ
IGhhdmUgdHJhY2tlZCBpdCBkb3duIHRvIGEgcHJvZ3JhbSBidWcgdGhhdCBoYXMgaGFzIG5vdGhp
bmcgaW4KPiBwYXJ0aWN1bGFyIHRvIGRvIHdpdGggdGhlIGRldGFpbHMgb2YgeW91ciBzY3JpcHQs
IGFsdGhvdWdoIGFzIHlvdSBub3RlZCBpdAo+IGlzCj4gbW9yZSBsaWtlbHkgdG8gYmUgdHJpZ2dl
cmVkIGJ5IGEgZnVuY3Rpb24gYmxvY2sgdGhhbiBieSBpbnB1dCBmcm9tIGEgZmlsZS4KPiBZb3Ug
anVzdCBnb3QgdW5sdWNreS4KPgo+IFRoZSBwcm9ncmFtIGhhcyBubyBmaXhlZCBsaW1pdCBvbiBp
bnB1dCBsaW5lIGxlbmd0aCBvciBjb21tYW5kIGxlbmd0aC4KPiBUaGUgc2l6ZSBvZiB0aGUgY29t
bWFuZCBidWZmZXIgaXMgZXhwYW5kZWQgaWYgbmVjZXNzYXJ5IHRvIGhvbGQgdGhlCj4gbmV4dCBi
aXQgb2YgaW5wdXQuICAgVGhlIG5ldyBpbnB1dCBpcyBhcHBlbmRlZCB0byB0aGUgY3VycmVudCBj
b250ZW50IG9mCj4gdGhlIGJ1ZmZlciwgZXhjZXB0IHRoYXQgaWYgdGhlIGN1cnJlbnQgYnVmZmVy
IGVuZHMgaW4gYSBiYWNrc2xhc2ggaXQgaXMKPiBhcHBlbmRlZCBvbiB0b3Agb2YgdGhlIGJhY2tz
bGFzaCByYXRoZXIgdGhhbiBhZnRlciBpdC4KPgo+IFRoZSBidWcgaXMgdGhhdCB0aGUgY2hlY2sg
Zm9yIGEgdHJhaWxpbmcgYmFja3NsYXNoIGdldHMgc2tpcHBlZCBpZiB0aGUgbmV4dAo+IGNodW5r
IG9mIGlucHV0IGlzIHRoZSBvbmUgdGhhdCBjYXVzZXMgdGhlIGNvbW1hbmQgYnVmZmVyIHRvIGJl
IGV4cGFuZGVkLAo+IHNvIHRoZSBjb21tYW5kIGJ1ZmZlciBpcyBsZWZ0IHdpdGggYSBzcHVyaW91
cyBiYWNrc2xhc2ggY2hhcmFjdGVyLgo+Cj4gSSBkb24ndCBoYXZlIGFuIGltbWVkaWF0ZWx5IHdv
cmstYXJvdW5kIGZvciBleGlzdGluZyBiaW5hcmllcyBvdGhlciB0aGFuCj4gdG8gbm90ZSB0aGF0
IG9uY2UgdGhlIGNvbW1hbmQgYnVmZmVyIGhhcyBiZWVuIGV4cGFuZGVkLCB0aGUgYnVnIHdpbGwK
PiBub3QgdHJpZ2dlciBhZ2Fpbi4gICBTbyBldmVuIHRob3VnaCB0aGUgZmlyc3QgaW52b2NhdGlv
biBvZiB0aGUgZnVuY3Rpb24KPiBibG9jayBmYWlscywgYSBzdWJzZXF1ZW50IGludm9jYXRpb24g
d2lsbCBzdWNjZWVkIGJlY2F1c2UgdGhpcyB0aW1lIHRoZQo+IGJ1ZmZlciBkb2VzIG5vdCBuZWVk
IHRvIGJlIGV4cGFuZGVkIGFuZCB0aGUgY2hlY2sgZm9yIGEgYmFja3NsYXNoIGlzCj4gbWFkZSBj
b3JyZWN0bHkuCj4KPiBPciBJIHN1cHBvc2UgeW91IGNvdWxkIHByZWZpeCB0aGUgc2NyaXB0IHdp
dGggYSB1c2VsZXNzIGJpdCBvZiBjb2RlIHRoYXQKPiBjb25zdHJ1Y3RzIGFuZCBleGVjdXRlcyBh
IHZlcnkgbG9uZyBjb21tYW5kIHNvIHRoYXQgdGhlIGNvbW1hbmQKPiBidWZmZXIgZ2V0cyBleHBh
bmRlZDoKPgo+ICAganVuayA9ICJnYXJiYWdlIGdhcmJhZ2UgZ2FyYmFnZSAiCj4gICBkbyBmb3Ig
W2k9MTo4XSB7IGp1bmsgPSBqdW5rIC4ganVuayB9Cj4gICBjb21tYW5kID0gJ3ByaW50ICInIC4g
anVuayAuICciIFsxOjhdJwo+ICAgcHJpbnQgInJlZmVyZW5jZSBhIHN0cmluZyBvZiBsZW5ndGgg
Iiwgc3RybGVuKGp1bmspCj4gICBldmFsKGNvbW1hbmQpCj4gICAuLi4KPiAgIHN0YXJ0IHlvdXIg
cmVhbCBzY3JpcHQgaGVyZQo+Cj4gIC0gRXRoYW4KPgo+Cj4KPiA+IElmIHlvdSB0ZXN0LCB5b3Ug
bWF5IGluc3RlYWQgZ2V0Ogo+ID4KPiA+IGBgYAo+ID4gIiRwbG90X3BvbGFyIiBsaW5lIDEzOiB3
YXJuaW5nOiBDYW5ub3QgZmluZCBvciBvcGVuIGZpbGUgIndvcmxkXzExMG0udHh0Igo+ID4gIiRw
bG90X3BvbGFyIiBsaW5lIDEzOiB3YXJuaW5nOiBDYW5ub3QgZmluZCBvciBvcGVuIGZpbGUKPiAi
ZGF0YS9SZXBvcnRBLnR4dCIKPiA+ICIkcGxvdF9wb2xhciIgbGluZSAxMzogd2FybmluZzogQ2Fu
bm90IGZpbmQgb3Igb3BlbiBmaWxlCj4gImRhdGEvUmVwb3J0QS50eHQiCj4gPiAiJHBsb3RfcG9s
YXIiIGxpbmUgMTM6IHVuZGVmaW5lZCB2YXJpYWJsZTogb3JiaXQKPiA+IGBgYAo+ID4KPiA+IEJ5
IHRoZSB3YXksIHRoZSBsYXN0IG1lc3NhZ2UgaXMgcmF0aGVyIGN1cmlvdXMuIEkgaGF2ZSBoYWQg
dHJvdWJsZSB3aGVyZQo+ID4gdGhpcyBwb3BzIHVwIHNvbWV0aW1lcyBhbmQgSSBoYXZlbid0IGJl
ZW4gYWJsZSB0byBuYWlsIGRvd24gdGhlIGV4YWN0Cj4gPiBjaXJjdW1zdGFuY2VzLiBJIGJlbGll
dmUgaW4gdGhpcyBjYXNlIHRoYXQgaXQgcmVmZXJzIHRvIGB0aXRsZSBvcmJpdGAuCj4gSWYgSQo+
ID4gY2hhbmdlIHRoYXQgdG8gYG5vdGl0bGVgIGl0IGRpc2FwcGVhcnMuIEFuZCBjaGFuZ2luZyBm
cm9tIGBub3RpdGxlYCB0bwo+ID4gYHRpdGxlIG9yYml0YCBpbiB0aGUgcHJlY2VkaW5nIGxpbmUg
ZG9lcyBub3QgdHJpZ2dlciB0aGUgbWVzc2FnZS4gVGhpcwo+ID4gc2VlbXMgYWxzbyBzb21laG93
IHJlbGF0ZWQgdG8gdGhlIGxlbmd0aCBvZiB0aGUgY29tbWFuZC4KPiA+Cj4gPiBJIGd1ZXNzIEhl
cm7DoW4ncyBzdWdnZXN0aW9uIHRvIGdlbmVyYXRlIGEg4oCcZmxhdOKAnSBnbnVwbG90IHNjcmlw
dCB3aXRoIGEKPiA+IG5vbi1nbnVwbG90IHNjcmlwdCBjb3VsZCBhbGxvdyBtZSB0byBhdm9pZCB1
c2luZyBmdW5jdGlvbiBibG9ja3MuIChBdAo+IGxlYXN0Cj4gPiB0aGF0IGlzIGhvdyBJIGludGVy
cHJldGVkIHRoZSBzdWdnZXN0aW9uKS4KPiA+Cj4gPiBUaGFua3MsCj4gPiBCam9ybgo+ID4KPiA+
Cj4gPiBPbiBTdW4sIE1hciAyOSwgMjAyNiBhdCAyOjI04oCvUE0gUGhpbGlwcCBLLiBKYW5lcnQg
PHBoaWxpcHBAamFuZXJ0Lm1lPgo+IHdyb3RlOgo+ID4KPiA+ID4gT24gU3VuLCAyOSBNYXIgMjAy
NiAxMTo0OTowMSArMDIwMAo+ID4gPiBCam9ybiBCdWNrd2FsdGVyIDxiam9ybi5idWNrd2FsdGVy
QGdtYWlsLmNvbT4gd3JvdGU6Cj4gPiA+Cj4gPiA+ID4gVGhhbmtzIEplc3BlciBhbmQgUGhpbHBw
LiBKZXNwZXJzIHN1Z2dlc3Rpb24gd2l0aCB2YXJpYWJsZXMgY2FuCj4gPiA+ID4gbGlrZWx5IGhl
bHAg4oCTIEkgd2lsbCB0cnkgaXQhCj4gPiA+Cj4gPiA+IEl0J3Mgbm90IHNvIGVhc3kgZm9yIG1l
IHRvIHJlcHJvZHVjZSB5b3VyCj4gPiA+IHByb2JsZW0sIGJlY2F1c2UgSSBkb24ndCBoYXZlIGFj
Y2VzcyB0byB0aGUKPiA+ID4gZGF0YSBmaWxlcywgZXRjLgo+ID4gPgo+ID4gPiBUaGUgY21kIGRv
ZXMgbm90IHNlZW0gb3Zlcmx5IGxvbmcuIEkgc3RpbGwKPiA+ID4gc3VzcGVjdCB0aGF0IHRoZXJl
IGlzIGEgcHJvYmxlbSB3aXRoIG9uZSBvZgo+ID4gPiB0aGUgQ1JzIG5vdCBiZWluZyBwcm9wZXJs
eSBlc2NhcGVkIC0gc3VjaAo+ID4gPiBhcyBoYXZpbmcgYSBibGFuayBhZnRlciBhIGJhY2tzbGFz
aCwgYnV0Cj4gPiA+IGJlZm9yZSB0aGUgYWN0dWFsIENSLiBUaGUgZXJyb3IgbXNnIGluIHlvdXIK
PiA+ID4gb3JpZ2luYWwgZW1haWwgcG9pbnRzIHRvIHRoYXQsIHRvby4KPiA+ID4KPiA+ID4gSSBk
aWQgbm90IGRpZyBpbnRvIHRoZSBjb2RlIHRvIHNlZSB3aGV0aGVyCj4gPiA+IHRoZXJlIGlzIGFu
IGFjdHVhbCBsaW1pdCB0byB0aGUgbGVuZ3RoIG9mCj4gPiA+IHRoZSBjbWQgbGluZS4gRXRoYW4g
d291bGQga25vdy4KPiA+ID4KPiA+ID4gRG8geW91IGVudGVyIHRoZSBjbWQgaW50ZXJhY3RpdmVs
eSwgb3IgZG8KPiA+ID4geW91IGhhdmUgaXQgaW4gYSBmaWxlLCB3aGljaCB5b3UgbG9hZD8KPiA+
ID4KPiA+ID4gPgo+ID4gPiA+IEZZSSBoZXJlIGlzIGFuIGV4YW1wbGUgcGxvdCBjb21tYW5kIHRo
YXQgZmFpbHM6Cj4gPiA+ID4KPiA+ID4gPiBgYGAKPiA+ID4gPiAgIHBsb3QgXAo+ID4gPiA+ICAg
ICAnd29ybGRfMTEwbS50eHQnIHVzaW5nIChsb24oJDEpKTooZmlsdGVyX2xhdCgkMikpIHdpdGgg
bGluZXMKPiA+ID4gPiBsaW5lY29sb3IgImdyYXkiIG5vdGl0bGUgLCBcCj4gPiA+ID4gICAgIGxh
dCgwKSB3aXRoIGxpbmVzIGJsYWNrIGRhc2h0eXBlIDIgdGl0bGUgIkVxdWF0b3IiICwgXAo+ID4g
PiA+ICAgICBsYXQoNjYuNikgd2l0aCBsaW5lcyBibGFjayBkYXNodHlwZSA1IHRpdGxlICJBcmN0
aWMvQW50YXJjdGljCj4gPiA+ID4gY2lyY2xlIiwgXCBsYXQoLTY2LjYpIHdpdGggbGluZXMgYmxh
Y2sgZGFzaHR5cGUgNSBub3RpdGxlICwgXAo+ID4gPiA+ICAgICBmb3IgW29yYml0IGluIG9yYml0
c10gXAo+ID4gPiA+ICAgICAgICdkYXRhL1JlcG9ydCcub3JiaXQuJy50eHQnIHVzaW5nIChsb24o
JDcpKTooZmlsdGVyX2xhdCgkNikpIFwKPiA+ID4gPiAgICAgICAgIHdpdGggbGluZXMgbGluZWNv
bG9yIHJnYiBuZXh0X2NvbG9yX3QobiwgJ2NjJykgbm90aXRsZSwgXAo+ID4gPiA+ICAgICBmb3Ig
W29yYml0IGluIG9yYml0c10gXAo+ID4gPiA+ICAgICAgICdkYXRhL1JlcG9ydCcub3JiaXQuJy50
eHQnIHVzaW5nIChsb24oJDcpKTooJDMgPT0gMjAzMCA/Cj4gPiA+ID4gZmlsdGVyX2xhdCgkNikg
OiBOYU4pIFwKPiA+ID4gPiAgICAgICAgIHdpdGggbGluZXMgbGluZWNvbG9yIHJnYiBuZXh0X2Nv
bG9yKG4pIHRpdGxlIG9yYml0LCBcCj4gPiA+ID4gICAgIGxhdChsYXQxKSBibGFjayBub3RpdGxl
ICAjIGVkZ2Ugb2YgcGxvdAo+ID4gPiA+IGBgYAo+ID4gPiA+Cj4gPiA+ID4gVGhlcmUgaXMgQSBM
T1QgZ29pbmcgb24gdGhlcmUgd2l0aCB2YXJpb3VzIGN1c3RvbSBmdW5jdGlvbnMsIGV0Yy4gSQo+
ID4gPiA+IHRyaWVkIHRvIG1ha2UgYSBtaW5pbWFsIGFuZCDigJxkZXBlbmRlbmN5LWZyZWXigJ0g
ZXhhbXBsZSBidXQgZmFpbGVkIHRvCj4gPiA+ID4gcmVwcm9kdWNlIHRoZSBiZWhhdmlvci4gSSBj
b3VsZCBtYXliZSB0cnkgaGFyZGVyLgo+ID4gPiA+Cj4gPiA+ID4gSGVyZSBpcyBpbiBhbnkgY2Fz
ZSB0aGUgZXJyb3IgZnJvbSBnbnVwbG90LiBUaGUgY29tbWFuZCBoYXMgYmVlbgo+ID4gPiA+IGNv
bmNhdGVuYXRlZCBhdCBhbGwgYmFza3NsYXNoZXMgZXhjZXB0IHRoZSBsYXN0Ogo+ID4gPiA+Cj4g
PiA+ID4gYGBgCj4gPiA+ID4gICBwbG90ICAgICAnd29ybGRfMTEwbS50eHQnIHVzaW5nIChsb24o
JDEpKTooZmlsdGVyX2xhdCgkMikpIHdpdGgKPiA+ID4gPiBsaW5lcyBsaW5lY29sb3IgImdyYXki
IG5vdGl0bGUgLCAgICAgbGF0KDApIHdpdGggbGluZXMgYmxhY2sgZGFzaHR5cGUKPiA+ID4gPiAy
IHRpdGxlICJFcXVhdG9yIiAsICAgICBsYXQoNjYuNikgd2l0aCBsaW5lcyBibGFjayBkYXNodHlw
ZSA1IHRpdGxlCj4gPiA+ID4gIkFyY3RpYy9BbnRhcmN0aWMgY2lyY2xlIiwgICAgIGxhdCgtNjYu
Nikgd2l0aCBsaW5lcyBibGFjayBkYXNodHlwZSA1Cj4gPiA+ID4gbm90aXRsZSAsICAgICBmb3Ig
W29yYml0IGluIG9yYml0c10gICAgICAgJ2RhdGEvUmVwb3J0Jy5vcmJpdC4nLnR4dCcKPiA+ID4g
PiB1c2luZyAobG9uKCQ3KSk6KGZpbHRlcl9sYXQoJDYpKSAgICAgICAgIHdpdGggbGluZXMgbGlu
ZWNvbG9yIHJnYgo+ID4gPiA+IG5leHRfY29sb3JfdChuLCAnY2MnKSBub3RpdGxlLCAgICAgZm9y
IFtvcmJpdCBpbiBvcmJpdHNdCj4gPiA+ID4gJ2RhdGEvUmVwb3J0Jy5vcmJpdC4nLnR4dCcgdXNp
bmcgKGxvbigkNykpOigkMyA9PSAyMDMwID8KPiA+ID4gPiBmaWx0ZXJfbGF0KCQ2KSA6IE5hTikg
ICAgICAgICB3aXRoIGxpbmVzIGxpbmVjb2xvciByZ2IgbmV4dF9jb2xvcihuKQo+ID4gPiA+IHRp
dGxlIG9yYml0LCBcICAgIGxhdChsYXQxKSBibGFjayBub3RpdGxlICAjIGVkZ2Ugb2YgcGxvdAo+
ID4gPiA+Cj4gPiA+ID4KPiA+ID4gPgo+ID4gPiA+Cj4gPiA+ID4KPiA+ID4gPgo+ID4gPiA+Cj4g
PiA+ID4KPiA+ID4gPiAgICBeCj4gPiA+ID4gIiRwbG90X3BvbGFyIiBsaW5lIDE1OiBpbnZhbGlk
IGNoYXJhY3RlciBcCj4gPiA+ID4gYGBgCj4gPiA+ID4KPiA+ID4gPiBUaGVyZSBpcyBub3RoaW5n
IHdyb25nIHdpdGggdGhlIGJhY2tzbGFzaCAobm8gdHJhaWxpbmcgc3BhY2VzLCBldGMuKS4KPiA+
ID4gPgo+ID4gPiA+IElmIEkgY2hhbmdlIGl0IGFzIHNvIChqdXN0IHNob3J0ZW5pbmcgc3R5bGUg
ZGVmaW5pdGlvbnMpIGl0IHdvcmtzOgo+ID4gPiA+Cj4gPiA+ID4gYGBgCj4gPiA+ID4gICBzZXQg
c3R5bGUgZGF0YSBsaW5lcwo+ID4gPiA+ICAgcGxvdCBcCj4gPiA+ID4gICAgICd3b3JsZF8xMTBt
LnR4dCcgdXNpbmcgKGxvbigkMSkpOihmaWx0ZXJfbGF0KCQyKSkgbGMgImdyYXkiCj4gPiA+ID4g
bm90aXRsZSAsIFwgbGF0KDApIGJsYWNrIGR0IDIgdGl0bGUgIkVxdWF0b3IiICwgXAo+ID4gPiA+
ICAgICBsYXQoNjYuNikgYmxhY2sgZHQgNSB0aXRsZSAiQXJjdGljL0FudGFyY3RpYyBjaXJjbGUi
LCBcCj4gPiA+ID4gICAgIGxhdCgtNjYuNikgYmxhY2sgZHQgNSBub3RpdGxlICwgXAo+ID4gPiA+
ICAgICBmb3IgW29yYml0IGluIG9yYml0c10gXAo+ID4gPiA+ICAgICAgICdkYXRhL1JlcG9ydCcu
b3JiaXQuJy50eHQnIHVzaW5nIChsb24oJDcpKTooZmlsdGVyX2xhdCgkNikpIFwKPiA+ID4gPiAg
ICAgICAgIGxjIHJnYiBuZXh0X2NvbG9yX3QobiwgJ2NjJykgbm90aXRsZSwgXAo+ID4gPiA+ICAg
ICBmb3IgW29yYml0IGluIG9yYml0c10gXAo+ID4gPiA+ICAgICAgICdkYXRhL1JlcG9ydCcub3Ji
aXQuJy50eHQnIHVzaW5nIChsb24oJDcpKTooJDMgPT0gMjAzMCA/Cj4gPiA+ID4gZmlsdGVyX2xh
dCgkNikgOiBOYU4pIFwKPiA+ID4gPiAgICAgICAgIGxjIHJnYiBuZXh0X2NvbG9yKG4pIHRpdGxl
IG9yYml0LCBcCj4gPiA+ID4gICAgIGxhdChsYXQxKSBibGFjayBub3RpdGxlICAjIGVkZ2Ugb2Yg
cGxvdAo+ID4gPiA+IGBgYAo+ID4gPiA+Cj4gPiA+ID4gQWxsIEkgZGlkIHdhcyByZW1vdmUgYHdp
dGggbGluZXNgICh1c2luZyBgc2V0IHN0eWxlIGRhdGEgbGluZXNgCj4gPiA+ID4gaW5zdGVhZCBh
bmQgcmVwbGFjZSBgbGluZWNvbG9yYCBhbmQgYGRhc2h0eXBlYCB3aXRoIGBsY2AgYW5kIGBkdGAs
Cj4gPiA+ID4gcmVzcGVjdGl2ZWx5LiBUaGlzIGlzIHdoeSBJIHNheSBpdCBzZWVtcyB0byBiZSBz
b21laG93IHJlbGF0ZWQgdG8gdGhlCj4gPiA+ID4gbGVuZ3RoL251bWJlciBvZiBjaGFyYWN0ZXJz
IG9mIGEgY29tbWFuZC4KPiA+ID4gPgo+ID4gPiA+IFRoYW5rcywKPiA+ID4gPiBCam9ybgo+ID4g
PiA+Cj4gPiA+ID4KPiA+ID4gPiBPbiBTdW4sIE1hciAyOSwgMjAyNiBhdCA1OjI44oCvQU0gUGhp
bGlwcCBLLiBKYW5lcnQgPHBoaWxpcHBAamFuZXJ0Lm1lCj4gPgo+ID4gPiA+IHdyb3RlOgo+ID4g
PiA+Cj4gPiA+ID4gPiBPbiBTYXQsIDI4IE1hciAyMDI2IDIyOjEzOjQwICswMTAwCj4gPiA+ID4g
PiBCam9ybiBCdWNrd2FsdGVyIDxiam9ybi5idWNrd2FsdGVyQGdtYWlsLmNvbT4gd3JvdGU6Cj4g
PiA+ID4gPgo+ID4gPiA+ID4gPiBISSBhbGwsCj4gPiA+ID4gPgo+ID4gPiA+ID4gSG93IGxvbmcg
KGluIGNoYXJhY3RlcnMpIGFyZSB0aGUgY29tbWFuZCBsaW5lcyB0aGF0Cj4gPiA+ID4gPiB5b3Ug
YXJlIHVzaW5nPyBNaW5lIGZyZXF1ZW50bHkgcnVuIGxvbmcsIGFuZCBpdCBoYXMKPiA+ID4gPiA+
IG5ldmVyIGJlZW4gYSBwcm9ibGVtLgo+ID4gPiA+ID4KPiA+ID4gPiA+IElzIGl0IHBvc3NpYmxl
IHRoYXQgeW91IGhhdmUgcHJvYmxlbXMgd2l0aCBlbWJlZGRlZAo+ID4gPiA+ID4gbmV3bGluZXMs
IG9yIHRoYXQgc29tZXRoaW5nIGdvZXMgYXdyeSBpZiB5b3VyIGNvbW1hbmQKPiA+ID4gPiA+IGxp
bmUgcnVucyBpbnRvIGEgbmV3IGxpbmUgaW4geW91ciB0ZXJtaW5hbD8KPiA+ID4gPiA+Cj4gPiA+
ID4gPiBCZXN0LAo+ID4gPiA+ID4KPiA+ID4gPiA+ICAgICAgICAgICAgICAgICBQaC4KPiA+ID4g
PiA+Cj4gPiA+ID4gPiA+Cj4gPiA+ID4gPiA+IEkgcmF0aGVyIG9mdGVuIHJ1biBpbnRvIGEgcHJv
YmxlbSBvZiBteSBwbG90IGNvbW1hbmRzIGJlaW5nIHRvbwo+ID4gPiA+ID4gPiBsb25nLCB0eXBp
Y2FsbHkgcmVzdWx0aW5nIGluIGEgbm90LXZlcnktaGVscGZ1bCBlcnJvciBtZXNzYWdlCj4gPiA+
ID4gPiA+IHN1Y2ggYXM6Cj4gPiA+ID4gPiA+Cj4gPiA+ID4gPiA+ICIkcGxvdF9wb2xhciIgbGlu
ZSAyMTogaW52YWxpZCBjaGFyYWN0ZXIgXAo+ID4gPiA+ID4gPgo+ID4gPiA+ID4gPiBJdCB0b29r
IGEgbG90IG9mIGhlYWQgc2NyYXRjaGluZyB0byByZWFsaXplIHRoZSByb290IG9mIHRoZQo+ID4g
PiA+ID4gPiBwcm9ibGVtLiBJIGFzc3VtZSB0aGVyZSBhcmUgc3Ryb25nIHJlYXNvbnMgZm9yIGJv
dGggdGhlCj4gPiA+ID4gPiA+IGxpbWl0YXRpb24gb24gY29tbWFuZCBsZW5ndGggYW5kIHRoZSBw
b29yIGVycm9yIG1lc3NhZ2UuCj4gPiA+ID4gPiA+Cj4gPiA+ID4gPiA+IEkgY2Fubm90IGJlIHRo
ZSBvbmx5IG9uZSBydW5uaW5nIGludG8gdGhpcyBwcm9ibGVtLiBUaGUgc2l0dWF0aW9uCj4gPiA+
ID4gPiA+IGJlaW5nIHdoYXQgaXQgaXMsIHdoYXQgYXJlIHRoZSByZXN0IG9mIHlvdSBkb2luZyB0
byBtYW5hZ2Ugd2hlbgo+ID4gPiA+ID4gPiB5b3UgcnVuIHVwIGFnYWluc3QgdGhpcyBsaW1pdD8g
UmVwbGFjaW5nIGBsaW5lY29sb3JgIHdpdGggYGxjYCwKPiA+ID4gPiA+ID4gZXRjLCB3aWxsIG9u
bHkgZ2V0IG1lIHNvIGZhciBhbmQgYXQgdGhlIGV4cGVuc2Ugb2YgcmVhZGFiaWxpdHkuCj4gPiA+
ID4gPiA+Cj4gPiA+ID4gPiA+IE1hbnkgdGhhbmtzLAo+ID4gPiA+ID4gPiBCam9ybgo+ID4gPiA+
ID4gPgo+ID4gPiA+ID4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f
X19fX19fXwo+ID4gPiA+ID4gPiBnbnVwbG90LWluZm8gbWFpbGluZyBsaXN0Cj4gPiA+ID4gPiA+
IGdudXBsb3QtaW5mb0BsaXN0cy5zb3VyY2Vmb3JnZS5uZXQKPiA+ID4gPiA+ID4gTWVtYmVyc2hp
cCBtYW5hZ2VtZW50IHZpYToKPiA+ID4gPiA+ID4gaHR0cHM6Ly9saXN0cy5zb3VyY2Vmb3JnZS5u
ZXQvbGlzdHMvbGlzdGluZm8vZ251cGxvdC1pbmZvCj4gPiA+ID4gPgo+ID4gPiA+ID4KPiA+ID4g
PiA+Cj4gPiA+ID4gPiAtLQo+ID4gPiA+ID4KPiA+ID4gPiA+IFBoaWxpcHAgSy4gSmFuZXJ0Cj4g
PiA+ID4gPiB3d3cuamFuZXJ0Lm1lCj4gPiA+ID4gPgo+ID4gPiA+ID4KPiA+ID4gPiA+IF9fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gPiA+ID4gPiBnbnVw
bG90LWluZm8gbWFpbGluZyBsaXN0Cj4gPiA+ID4gPiBnbnVwbG90LWluZm9AbGlzdHMuc291cmNl
Zm9yZ2UubmV0Cj4gPiA+ID4gPiBNZW1iZXJzaGlwIG1hbmFnZW1lbnQgdmlhOgo+ID4gPiA+ID4g
aHR0cHM6Ly9saXN0cy5zb3VyY2Vmb3JnZS5uZXQvbGlzdHMvbGlzdGluZm8vZ251cGxvdC1pbmZv
Cj4gPiA+ID4gPgo+ID4gPgo+ID4gPgo+ID4gPgo+ID4gPiAtLQo+ID4gPgo+ID4gPiBQaGlsaXBw
IEsuIEphbmVydAo+ID4gPiB3d3cuamFuZXJ0Lm1lCj4gPiA+Cj4gPiA+Cj4gPiA+IF9fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gPiA+IGdudXBsb3QtaW5m
byBtYWlsaW5nIGxpc3QKPiA+ID4gZ251cGxvdC1pbmZvQGxpc3RzLnNvdXJjZWZvcmdlLm5ldAo+
ID4gPiBNZW1iZXJzaGlwIG1hbmFnZW1lbnQgdmlhOgo+ID4gPiBodHRwczovL2xpc3RzLnNvdXJj
ZWZvcmdlLm5ldC9saXN0cy9saXN0aW5mby9nbnVwbG90LWluZm8KPiA+ID4KPiA+Cj4gPiBfX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fXwo+ID4gZ251cGxvdC1p
bmZvIG1haWxpbmcgbGlzdAo+ID4gZ251cGxvdC1pbmZvQGxpc3RzLnNvdXJjZWZvcmdlLm5ldAo+
ID4gTWVtYmVyc2hpcCBtYW5hZ2VtZW50IHZpYToKPiBodHRwczovL2xpc3RzLnNvdXJjZWZvcmdl
Lm5ldC9saXN0cy9saXN0aW5mby9nbnVwbG90LWluZm8KPiA+Cj4KPgo+Cj4KPgoKX19fX19fX19f
X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX18KZ251cGxvdC1pbmZvIG1haWxp
bmcgbGlzdApnbnVwbG90LWluZm9AbGlzdHMuc291cmNlZm9yZ2UubmV0Ck1lbWJlcnNoaXAgbWFu
YWdlbWVudCB2aWE6IGh0dHBzOi8vbGlzdHMuc291cmNlZm9yZ2UubmV0L2xpc3RzL2xpc3RpbmZv
L2dudXBsb3QtaW5mbwo=