Re: [TYPES] Identity extension for the system F term model
Andrew Polonsky <[email protected]> Thu, 28 Aug 2025 17:55:27 -0400
| Newsgroups | gmane.comp.science.types |
|---|---|
| Message-ID | <CABcT7WCCX8V4privJBr9smFcY-03zqxUdyyhe7SE=oySN+17ug@mail.gmail.com> |
WyBUaGUgVHlwZXMgRm9ydW0sIGh0dHA6Ly9saXN0cy5zZWFzLnVwZW5uLmVkdS9tYWlsbWFuL2xp c3RpbmZvL3R5cGVzLWxpc3QgXQoKSGFzZWdhd2EgZ2l2ZXMgc3VjaCBhIGRlZmluaXRpb24gaW4g IlBhcmFtZXRyaWNpdHkgb2YgZXh0ZW5zaW9uYWxseQpjb2xsYXBzZWQgdGVybSBtb2RlbHMgb2Yg cG9seW1vcnBoaXNtIGFuZCB0aGVpciBjYXRlZ29yaWNhbCBwcm9wZXJ0aWVzIiwKc2VlIERlZi4g My40IGFuZCAzLjgoaWlpKS4KClRoZSBmYWN0IHRoYXQgdGhlIGV4dGVuc2lvbmFsIGNvbGxhcHNl IG9mIHRoZSBvdmVyYWxsLWluaXRpYWwgbW9kZWwgaXMgdGhlCmluaXRpYWwgcGFyYW1ldHJpYyBt b2RlbCBmb2xsb3dzIGZyb20gZnVuY3RvcmlhbGl0eSBvZiB0aGUgZXh0ZW5zaW9uYWwKcXVvdGll bnQgY29uc3RydWN0aW9uLiBJIGRvbid0IGtub3cgaWYgYW55b25lIGhhcyB2ZXJpZmllZCB0aGlz IGV4cGxpY2l0bHksCmJ1dCBpdCBzZWVtcyBxdWl0ZSBjbGVhciBmcm9tIGhvdyB0aGUgY29uc3Ry dWN0aW9uIGlzIGRlc2NyaWJlZCBieQpCcmVhenUtVGFubmVuIGFuZCBDb3F1YW5kIGluICJFeHRl bnNpb25hbCBtb2RlbHMgZm9yIHBvbHltb3JwaGlzbSIsIHNlY3Rpb24KNCAuCgpCZXN0LApBbmRy ZXcKCk9uIFRodSwgQXVnIDI4LCAyMDI1IGF0IDE6MjHigK9QTSBNaWNoYWVsIFNodWxtYW4gPHNo dWxtYW5Ac2FuZGllZ28uZWR1Pgp3cm90ZToKCj4gV2hhdCBpcyB0aGUgZGVmaW5pdGlvbiBvZiBh ICJwYXJhbWV0cmljIG1vZGVsIj8gIEFuZCBjYW4geW91IGdpdmUgYQo+IHJlZmVyZW5jZSBmb3Ig dGhlIHN0YXRlbWVudCB0aGF0IHRoZSAiZXh0ZW5zaW9uYWwiIHF1b3RpZW50IG9mIHRoZQo+IG92 ZXJhbGwtaW5pdGlhbCBtb2RlbCBpcyB0aGUgaW5pdGlhbCBwYXJhbWV0cmljIG1vZGVsPwo+Cj4g T24gV2VkLCBBdWcgMjcsIDIwMjUgYXQgOToyMOKAr1BNIEFuZHJldyBQb2xvbnNreSA8YW5kcmV3 LnBvbG9uc2t5QGdtYWlsLmNvbT4KPiB3cm90ZToKPgo+PiBbIFRoZSBUeXBlcyBGb3J1bSwKPj4g aHR0cDovL2xpc3RzLnNlYXMudXBlbm4uZWR1L21haWxtYW4vbGlzdGluZm8vdHlwZXMtbGlzdCAg XQo+Pgo+PiBQdXQKPj4gVG9wID0gXGZvcmFsbCBYLiBYIC0+IFgKPj4gdHQgPSAvXFguXHg6WC54 IDogVG9wCj4+IFQoWCkgPSAoWCAtPiBUb3ApIC0+IChUb3AgLT4gVG9wKQo+PiBBMSA9IEEyID0g VG9wCj4+IFIgXHN1YnNldCBBMXhBMiBpcyA9YmV0YShldGEpCj4+IFQoUikgaWRlbnRpZmllcyBc eC54LCBceHkueSwgYW5kIFx4eS50dC4KPj4KPj4gV2hpbGUgSSBhZ3JlZSB0aGF0IHRoZSB0ZXJt ICJpbml0aWFsIG1vZGVsIiBpcyBtb3N0IG9mdGVuIGFwcGxpZWQgdG8gYQo+PiB0ZXJtCj4+IG1v ZGVsIHdpdGggYSBzeW50YWN0aWMgbm90aW9uIG9mIGVxdWFsaXR5LCBpbiBkaXNjdXNzaW9ucyBv ZiBJRUwgdGhlcmUncyBhCj4+IGdlbmVyYWwgaW1wbGljYXR1cmUgdGhhdCB5b3UgYXJlIGludGVy ZXN0ZWQgaW4gcGFyYW1ldHJpYyBtb2RlbHMuIEFuZCB0aGUKPj4gaW5pdGlhbCBzdWNoIG1vZGVs IGlzIHByZWNpc2VseSB0aGUgZXh0ZW5zaW9uYWwgcXVvdGllbnQgb2YgdGhlIHRlcm0KPj4gbW9k ZWwsCj4+IGZvciB3aGljaCBJRUwgaG9sZHMgdGF1dG9sb2dpY2FsbHkuICAoTW9yZSBwcmVjaXNl bHksIGl0IGhvbGRzIGJ5IHRoZQo+PiBmdW5kYW1lbnRhbCB0aGVvcmVtIG9mIGxvZ2ljYWwgcmVs YXRpb25zLCB0aGUgdmVyc2lvbiBmb3Igb3BlbiB0ZXJtcyB0aGF0Cj4+IGlzIHZlcmlmaWVkIGlu IHRoZSBwcm9vZiBvZiB0aGUgdGhlb3JlbS4pCj4+Cj4+IEJlc3QsCj4+IEFuZHJldwo+Pgo+Pgo+ PiBPbiBXZWQsIEF1ZyAyNywgMjAyNSBhdCA3OjU54oCvUE0gUnlhbiBXaXNuZXNreSA8d2lzbmVz a3lAZ21haWwuY29tPiB3cm90ZToKPj4KPj4gPiBUaGFua3MgZXZlcnlvbmUgZm9yIHRoZSBpbmZv cm1hdGl2ZSBkaXNjdXNzaW9uISAgIEFuZHJld+KAmXMKPj4gY291bnRlci1leGFtcGxlCj4+ID4g b2YgVChYKSA9IFgtPlggdG8gdGhlIElFTCBpbiB0aGUgaW5pdGlhbCBtb2RlbCBpcyBqdXN0IHdo YXQgd2FzIGFza2VkCj4+IGZvci4KPj4gPgo+PiA+IElmIEkgbWF5IGFzayBhIGZvbGxvdy11cDog ZG9lcyBhbnlvbmUgaGF2ZSBhIGNvdW50ZXItZXhhbXBsZSBmb3IgdGhlIElFTAo+PiA+IGluIHRo ZSBpbml0aWFsIG1vZGVsIGZvciBhIHR5cGUgZXhwcmVzc2lvbiB0aGF0IGRlZmluZXMgYSBmdW5j dG9yPyAgT3IgYQo+PiA+IHByb29mIHRoYXQgSUVMIGFsd2F5cyBob2xkcyBmb3IgZGVmaW5hYmxl IGZ1bmN0b3JzIGluIHRoZSBpbml0aWFsIG1vZGVsPwo+PiA+IChUKFgpID0gWC0+WCBpcyB3ZWxs LWtub3duIG5vdCB0byBiZSBhIGZ1bmN0b3IuKS4KPj4gPgo+PiA+IFRoYW5rcyBhZ2FpbiEKPj4g PiBSeWFuCj4+ID4KPj4gPiA+IE9uIEF1ZyAxNCwgMjAyNSwgYXQgMTA6NTnigK9QTSwgQW5kcmV3 IFBvbG9uc2t5IDwKPj4gYW5kcmV3LnBvbG9uc2t5QGdtYWlsLmNvbT4KPj4gPiB3cm90ZToKPj4g PiA+Cj4+ID4gPiBbIFRoZSBUeXBlcyBGb3J1bSwKPj4gPiBodHRwOi8vbGlzdHMuc2Vhcy51cGVu bi5lZHUvbWFpbG1hbi9saXN0aW5mby90eXBlcy1saXN0ICAgXQo+PiA+ID4KPj4gPiA+IFllcywg dGhlIGluaXRpYWwgbW9kZWwgb2YgU3lzdGVtIEYgc2F0aXNmaWVzIHRoZSBpZGVudGl0eSBleHRl bnNpb24KPj4gPiBsZW1tYSwKPj4gPiA+IGFzc3VtaW5nIHRoYXQgYnkgImluaXRpYWwgbW9kZWwi IHlvdSBtZWFuIHRoZSBleHRlbnNpb25hbCBxdW90aWVudCBvZgo+PiA+ID4gY2xvc2VkIHRlcm1z IGFzIHRyZWF0ZWQgZS5nLiBieSBIYXNlZ2F3YSBbMV0uCj4+ID4gPgo+PiA+ID4gVGhlIGlkZW50 aXR5IHJlbGF0aW9uIGluIHRoaXMgbW9kZWwgaXMgdGhlIGV4dGVuc2lvbmFsIGVxdWFsaXR5Cj4+ IGRlZmluZWQKPj4gPiBieQo+PiA+ID4gaW5kdWN0aW9uIG9uIHR5cGUgc3RydWN0dXJlIHdpdGgg dGhlIHVzdWFsIGxvZ2ljYWwgcmVsYXRpb24KPj4gY29uZGl0aW9ucy4KPj4gPiA+IFRoaXMgaWRl bnRpZmllcyB0ZXJtcyB0aGF0IGFyZSBub3QgYmV0YSgtZXRhKSBjb252ZXJ0aWJsZSwgbGlrZSB0 aGUKPj4gdHdvCj4+ID4gPiBzdWNjZXNzb3JzIG9uIHRoZSBwb2x5bW9ycGhpYyBjaHVyY2ggbnVt ZXJhbHMuCj4+ID4gPgo+PiA+ID4gTmF0ID0gXGZvcmFsbCBBLiAoQSAtPiBBKSAtPiAoQSAtPiBB KQo+PiA+ID4gUywgUycgOiBOYXQgLT4gTmF0Cj4+ID4gPiBTID0gXG5mcy5mKG5mcykKPj4gPiA+ IFMnID0gXG5mcy5uZihmcykKPj4gPiA+Cj4+ID4gPiBJZiBieSAiaW5pdGlhbCBtb2RlbCIgeW91 IG1lYW4gc29tZXRoaW5nIGludGVuc2lvbmFsIGxpa2UgYSBsYW1iZGEKPj4gPiBhbGdlYnJhCj4+ ID4gPiB3aXRoIGJldGEgY29udmVyc2lvbiwgdGhlbiBJRUwgZmFpbHMuICBXZSBjYW4gdXNlIHRo ZSBzYW1lIHR5cGUgYXMgdGhlCj4+ID4gPiBjb3VudGVyZXhhbXBsZS4KPj4gPiA+Cj4+ID4gPiBU KFgpID0gWCAtPiBYCj4+ID4gPiBBMSA9IEEyID0gTmF0Cj4+ID4gPiBSIFxzdWJzZXQgQTF4QTIg aXMgPWJldGEKPj4gPiA+IFQoUikgaWRlbnRpZmllcyBTIGFuZCBTJwo+PiA+ID4KPj4gPiA+IEJl c3QsCj4+ID4gPiBBbmRyZXcKPj4gPiA+Cj4+ID4gPiBQLlMuIFJlZ2FyZGluZyB0aGUgb3RoZXIg cXVlc3Rpb24gcmFpc2VkIGluIHRoZSBadWxpcCBjaGF0IHlvdSBsaW5rZWQsCj4+ID4gPiB3aGV0 aGVyIGV2ZXJ5IHR5cGUgQSBpcyBpc29tb3JwaGljIHRvICJmb3JhbGwgWC4gKEEgLT4gWCkgLT4g WCIgaW4KPj4gdGhpcwo+PiA+ID4gZXh0ZW5zaW9uYWwgbW9kZWwsIEkgYmVsaWV2ZSB0aGUgYW5z d2VyIHRvIGJlICJ5ZXMiIGJhc2VkIG9uIGNvbW1lbnRzCj4+IGJ5Cj4+ID4gPiBUaGllcnJ5IENv cXVhbmQgaW4gWzJdLCBzbGlkZSA1Mi4KPj4gPiA+Cj4+ID4gPiBbMV0KPj4gPgo+PiBodHRwczov L3VybGRlZmVuc2UuY29tL3YzL19faHR0cHM6Ly9kb2kub3JnLzEwLjEwMDcvMy01NDAtNTQ0MTUt MV82MV9fOyEhSUJ6V0xVcyFTOGFKaDM1Nnd2bURkY0h6dU5uX3gtbl9wQUlORXVCOU9vclFTNHZw VlZQeHpwazZmMUZyejZiWFUyaUtPbVdVMmVKbmZpb2Y0VXZDUTdQejdFWTJlOGlRWW5zMDJwOF9n VEI3TFEkCj4+ID4gPiBbMl0KPj4gPgo+PiBodHRwczovL3VybGRlZmVuc2UuY29tL3YzL19faHR0 cHM6Ly95b3V0dS5iZS82QW85elh3eXRlWT9zaT01RmRDNXQ1TW55YWptY2h6JnQ9NDY2MF9fOyEh SUJ6V0xVcyFTOGFKaDM1Nnd2bURkY0h6dU5uX3gtbl9wQUlORXVCOU9vclFTNHZwVlZQeHpwazZm MUZyejZiWFUyaUtPbVdVMmVKbmZpb2Y0VXZDUTdQejdFWTJlOGlRWW5zMDJwOGF6NE9LU2ckCj4+ ID4gPgo+PiA+ID4KPj4gPiA+IE9uIFR1ZSwgQXVnIDEyLCAyMDI1IGF0IDEyOjAy4oCvUE0gPAo+ PiA+IHR5cGVzLWxpc3QtcmVxdWVzdEBsaXN0cy5zZWFzLnVwZW5uLmVkdT4KPj4gPiA+IHdyb3Rl Ogo+PiA+ID4KPj4gPiA+PiBTZW5kIFR5cGVzLWxpc3QgbWFpbGluZyBsaXN0IHN1Ym1pc3Npb25z IHRvCj4+ID4gPj4gICAgICAgIHR5cGVzLWxpc3RATElTVFMuU0VBUy5VUEVOTi5FRFUKPj4gPiA+ Pgo+PiA+ID4+IFRvIHN1YnNjcmliZSBvciB1bnN1YnNjcmliZSB2aWEgdGhlIFdvcmxkIFdpZGUg V2ViLCB2aXNpdAo+PiA+ID4+ICAgICAgICBodHRwczovL0xJU1RTLlNFQVMuVVBFTk4uRURVL21h aWxtYW4vbGlzdGluZm8vdHlwZXMtbGlzdCAKPj4gPiA+PiBvciwgdmlhIGVtYWlsLCBzZW5kIGEg bWVzc2FnZSB3aXRoIHN1YmplY3Qgb3IgYm9keSAnaGVscCcgdG8KPj4gPiA+PiAgICAgICAgdHlw ZXMtbGlzdC1yZXF1ZXN0QExJU1RTLlNFQVMuVVBFTk4uRURVCj4+ID4gPj4KPj4gPiA+PiBZb3Ug Y2FuIHJlYWNoIHRoZSBwZXJzb24gbWFuYWdpbmcgdGhlIGxpc3QgYXQKPj4gPiA+PiAgICAgICAg dHlwZXMtbGlzdC1vd25lckBMSVNUUy5TRUFTLlVQRU5OLkVEVQo+PiA+ID4+Cj4+ID4gPj4gV2hl biByZXBseWluZywgcGxlYXNlIGVkaXQgeW91ciBTdWJqZWN0IGxpbmUgc28gaXQgaXMgbW9yZSBz cGVjaWZpYwo+PiA+ID4+IHRoYW4gIlJlOiBDb250ZW50cyBvZiBUeXBlcy1saXN0IGRpZ2VzdC4u LiIKPj4gPiA+Pgo+PiA+ID4+Cj4+ID4gPj4gVG9kYXkncyBUb3BpY3M6Cj4+ID4gPj4KPj4gPiA+ PiAgIDEuICBJZGVudGl0eSBleHRlbnNpb24gZm9yIHRoZSBzeXN0ZW0gRiB0ZXJtIG1vZGVsIChS eWFuIFdpc25lc2t5KQo+PiA+ID4+Cj4+ID4gPj4KPj4gPiA+Pgo+PiAtLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tCj4+ ID4gPj4KPj4gPiA+PiBNZXNzYWdlOiAxCj4+ID4gPj4gRGF0ZTogTW9uLCAxMSBBdWcgMjAyNSAy MToyNToxOSAtMDcwMAo+PiA+ID4+IEZyb206IFJ5YW4gV2lzbmVza3kgPHdpc25lc2t5QGdtYWls LmNvbT4KPj4gPiA+PiBUbzogInR5cGVzLWxpc3RAbGlzdHMuc2Vhcy51cGVubi5lZHUiCj4+ID4g Pj4gICAgICAgIDx0eXBlcy1saXN0QExJU1RTLlNFQVMuVVBFTk4uRURVPgo+PiA+ID4+IFN1Ympl Y3Q6IFtUWVBFU10gSWRlbnRpdHkgZXh0ZW5zaW9uIGZvciB0aGUgc3lzdGVtIEYgdGVybSBtb2Rl bAo+PiA+ID4+IE1lc3NhZ2UtSUQ6IDxDQzNGODM1Ni0wQjA1LTRBNjgtOUU4Ny1ERDE4MUE1ODdE QjRAZ21haWwuY29tPgo+PiA+ID4+IENvbnRlbnQtVHlwZTogdGV4dC9wbGFpbjsgICAgICAgY2hh cnNldD11dGYtOAo+PiA+ID4+Cj4+ID4gPj4gSGkgQWxsLAo+PiA+ID4+Cj4+ID4gPj4gSSdtIGhv cGluZyB0aGUgZm9sa3Mgb24gdGhpcyBsaXN0IGNhbiBzZXR0bGUgYSBxdWVzdGlvbiBvZiBmb2xr bG9yZTsKPj4gPiA+PiBteXNlbGYgYW5kIE1pa2UgU2h1bG1hbiBhbmQgb3RoZXJzIGhhdmUgYmVl biBkaXNjdXNzaW5nIGl0IG9uIHRoZQo+PiA+IGFwcGxpZWQKPj4gPiA+PiBjYXRlZ29yeSB0aGVv cnkgenVsaXAgY2hhbm5lbCBidXQgaGF2ZSB5ZXQgdG8gcmVhY2ggYSBjb25jbHVzaW9uOgo+PiA+ ID4+Cj4+ID4KPj4gaHR0cHM6Ly91cmxkZWZlbnNlLmNvbS92My9fX2h0dHBzOi8vY2F0ZWdvcnl0 aGVvcnkuenVsaXBjaGF0LmNvbS8qbmFycm93L2NoYW5uZWwvMjI5MTk5LWxlYXJuaW5nLjNBLXF1 ZXN0aW9ucy90b3BpYy9Db250aW51YXRpb25zLjJDLjIwcGFyYW1ldHJpY2l0eS4yQy4yMGFuZC4y MHBvbHltb3JwaGlzbS93aXRoLzUyODQ3OTE4OF9fO0l3ISFJQnpXTFVzIVVmODlIYjd1V2p0Yno0 cVVlRmJNQ1Z3ZnhrdXllMmxwQjI3T2k0dkNoaE1WNnlNUHBBNTdqbDJvWm5CdDNUYU9PWWE3VWhq UVR6MTZkUE1VWm9HdEd1YlFlc1hUJAo+PiA+ID4+Cj4+ID4gPj4gVGhlIHF1ZXN0aW9uIGlzIHdo ZXRoZXIgdGhlIGluaXRpYWwgKHRlcm0pIG1vZGVsIG9mIHN5c3RlbSBGICgybmQKPj4gb3JkZXIK Pj4gPiA+PiBpbXByZWRpY2F0aXZlIHBvbHltb3JwaGljIGxhbWJkYSBjYWxjdWx1cykgc2F0aXNm aWVzIHRoZSAiaWRlbnRpdHkKPj4gPiA+PiBleHRlbnNpb24gbGVtbWEiLCB3aGljaCBpcyBvbmUg b2YgdGhlIHByaW1hcnkgbGVtbWFzIGNoYXJhY3Rlcml6aW5nCj4+ID4gPj4gKFJleW5vbGRzKSBw YXJhbWV0cmljIG1vZGVscy4gIFRvIGJlIGNsZWFyLCB0aGlzIHF1ZXN0aW9uIGlzIGFib3V0Cj4+ IHRoZQo+PiA+ID4+IGluaXRpYWwgKHRlcm0pIG1vZGVsIG9mIHN5c3RlbSBvZiBGLCBpdHMgaW5p dGlhbCBtb2RlbCBvZiBjb250ZXh0cwo+PiBhbmQKPj4gPiA+PiBzdWJzdGl0dXRpb25zLgo+PiA+ ID4+Cj4+ID4gPj4gVGhlcmUgYXJlIG1hbnkgcGxhY2VzIHRoYXQgc3RhdGUgdGhlIHN5c3RlbSBG IHRlcm0gbW9kZWwgc2hvdWxkIG9iZXkKPj4gPiA+PiBpZGVudGl0eSBleHRlbnNpb24sIGZvciBl eGFtcGxlLCB0aGlzIHJlbWFyayBieSBBbmR5IEtvdmFjczoKPj4gPiA+Pgo+PiA+Cj4+IGh0dHBz Oi8vdXJsZGVmZW5zZS5jb20vdjMvX19odHRwczovL2NzLnN0YWNrZXhjaGFuZ2UuY29tL3F1ZXN0 aW9ucy8xMzYzNTkvcmlnb3JvdXMtcHJvb2YtdGhhdC1wYXJhbWV0cmljLXBvbHltb3JwaGlzbS1p bXBsaWVzLW5hdHVyYWxpdHktdXNpbmctcGFyYW1ldHJpY2kvMTM2MzczKjEzNjM3M19fO0l3ISFJ QnpXTFVzIVVmODlIYjd1V2p0Yno0cVVlRmJNQ1Z3ZnhrdXllMmxwQjI3T2k0dkNoaE1WNnlNUHBB NTdqbDJvWm5CdDNUYU9PWWE3VWhqUVR6MTZkUE1VWm9HdEdwUVN3M0lpJAo+PiA+ID4+IC4KPj4g PiA+Pgo+PiA+ID4+IEhvd2V2ZXIsIG5laXRoZXIgbXlzZWxmIG5vciBNaWtlIG5vciBhbnlvbmUg b24gdGhlIHp1bGlwIGNoYXQgb3IKPj4gYW55b25lCj4+ID4gPj4gd2U/dmUgYXNrZWQgaGFzIGJl ZW4gYWJsZSB0byBmaW5kIGEgcHJvb2YgKG9yIGRpc3Byb29mKS4KPj4gPiA+Pgo+PiA+ID4+IEFu eXdheSwgZG8gcGxlYXNlIGxldCBtZSBrbm93IGlmIHlvdSBrbm93IG9mIGEgY2xlYXIgcHJvb2Yg b3IKPj4gZGlzcHJvb2YKPj4gPiBvZgo+PiA+ID4+IHRoZSBpZGVudGl0eSBleHRlbnNpb24gbGVt bWEgZm9yIHRoZSBpbml0aWFsICh0ZXJtKSBtb2RlbCBvZiBzeXN0ZW0KPj4gRiEKPj4gPiA+Pgo+ PiA+ID4+IFRoYW5rcywKPj4gPiA+PiBSeWFuIFdpc25lc2t5Cj4+ID4gPj4KPj4gPiA+PiBQUyBI ZXJlJ3MgYSBzdGF0ZW1lbnQgZnJvbSBNaWtlIGFib3V0IHRoZSBleGFjdCBkZWZpbml0aW9uIG9m IHRoaXMKPj4gPiA+PiBxdWVzdGlvbjoKPj4gPiA+Pgo+PiA+ID4+IExldCBDIGJlIHRoZSBpbml0 aWFsIG1vZGVsIG9mIHN5c3RlbSBGLiAgTGV0IFIoQykgYmUgdGhlIHJlbGF0aW9uYWwKPj4gPiBt b2RlbAo+PiA+ID4+IGJ1aWx0IGZyb20gQywgc28gaXRzIG9iamVjdHMgYXJlIG9iamVjdHMgb2Yg QyBlcXVpcHBlZCB3aXRoIGEgYmluYXJ5Cj4+ID4gPj4gcmVsYXRpb24uICBUaGVyZSBpcyBhIHN0 cmljdCBwcm9qZWN0aW9uIGZ1bmN0b3IgUihDKSAtPiBDLCBhbmQgc2luY2UKPj4gQwo+PiA+IGlz Cj4+ID4gPj4gaW5pdGlhbCB0aGlzIHByb2plY3Rpb24gaGFzIGEgc2VjdGlvbiBDIC0+IFIoQyks IHdoaWNoIGlzICJleHRlcm5hbAo+PiA+ID4+IHBhcmFtZXRyaWNpdHkiLiAgSW4gYSB0aGVvcnkg bGlrZSBTeXN0ZW0gRiB0aGF0IGhhcyB0eXBlIHZhcmlhYmxlcywgYQo+PiA+ID4+ICJtb2RlbCIg aW5jbHVkZXMgaW5mb3JtYXRpb24gYWJvdXQgdHlwZXMgaW4gYSBjb250ZXh0IG9mIHR5cGUKPj4g PiB2YXJpYWJsZXMsIHNvCj4+ID4gPj4gZXh0ZXJuYWwgcGFyYW1ldHJpY2l0eSBzZW5kcyBldmVy eSB0eXBlIGluIGNvbnRleHQgdG8gYSAicmVsYXRpb24gaW4KPj4gPiA+PiBjb250ZXh0Ii4gIERv IHRoZSByZWxhdGlvbnMtaW4tY29udGV4dCByZXN1bHRpbmcgaW4gdGhpcyB3YXkgZnJvbQo+PiB0 eXBlcwo+PiA+IG9mCj4+ID4gPj4gU3lzdGVtIEYgYWx3YXlzIG1hcCBpZGVudGl0eSByZWxhdGlv bnMgdG8gaWRlbnRpdHkgcmVsYXRpb25zPwo+PiA+ID4+Cj4+ID4gPj4gLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tCj4+ID4gPj4KPj4gPiA+PiBTdWJqZWN0OiBEaWdlc3QgRm9vdGVyCj4+ ID4gPj4KPj4gPiA+PiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fXwo+PiA+ID4+IFR5cGVzLWxpc3QgbWFpbGluZyBsaXN0Cj4+ID4gPj4gVHlwZXMtbGlzdEBM SVNUUy5TRUFTLlVQRU5OLkVEVQo+PiA+ID4+IGh0dHBzOi8vTElTVFMuU0VBUy5VUEVOTi5FRFUv bWFpbG1hbi9saXN0aW5mby90eXBlcy1saXN0IAo+PiA+ID4+Cj4+ID4gPj4KPj4gPiA+PiAtLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPj4gPiA+Pgo+PiA+ID4+IEVuZCBvZiBUeXBlcy1s aXN0IERpZ2VzdCwgVm9sIDE1NSwgSXNzdWUgMwo+PiA+ID4+ICoqKioqKioqKioqKioqKioqKioq KioqKioqKioqKioqKioqKioqKioqKgo+PiA+ID4+Cj4+ID4KPj4gPgo+Pgo+Cg==