QW0gTWl0dHdvY2gsIDYuIE1haSAyMDE1IHNjaHJpZWIgQmpvZXJuIEJhbGF6czoKPiA+IE9uIE1h aSA2LCAyMDE1LCAxMDo0NSB2b3JtLiwgS2FpIFV3ZSBCcm91bGlrIHdyb3RlOgo+ID4gPiAtMQo+ ID4gPiAKPiA+ID4gUGxlYXNlIGFsc28gYWRkIHVzYWJpbGl0eSBncm91cCBmb3Igc3VjaCByZXZp ZXdzLiBJIGhhdmUgbmV2ZXIgc2VlbiBhbgo+ID4gPiBhcHBsaWNhdGlvbiB0aGF0IGRvZXMgdGhp cyBub3Igd291bGQgSSBjb25zaWRlciB0aGF0IGludHVpdGl2ZQo+ID4gPiBiZWhhdmlvci4gQWxz bywgbWFueSBtaWNlIGhhdmUgZGVkaWNhdGVkIGJhY2svZm9yd2FyZCBidXR0b25zIHlvdSBjYW4K PiA+ID4gdXNlLgo+ID4gCj4gPiBNYXJ0aW4gS2xhcGV0ZWsgd3JvdGU6Cj4gPiAgICAgSSdtIGFm cmFpZCBJIGhhdmUgdG8gYWdyZWUuCj4gPiAgICAgCj4gPiAgICAgV2hhdCdzIHlvdXIgcmF0aW9u YWxlIGJlaGluZCBhZGRpbmcgdGhpcyBmZWF0dXJlPwo+ID4gCj4gPiBBc2hpc2ggQmFuc2FsIHdy b3RlOgo+ID4gICAgIEFjY29yZGluZyB0byBtZSwgdGhpcyBpbXByb3ZlcyB0aGUgZmxvdyBvZiB0 aGUgYXBwbGljYXRpb24gYXMgd2VsbCBhcwo+ID4gICAgIHVzZXIgZXhwZXJpZW5jZS4gSSBjYW4g anVzdCBkb3VibGUgY2xpY2sgb24gdGhlIGVtcHR5IGFyZWEgaW5zaWRlCj4gPiAgICAgdGhhdCBm b2xkZXIgYW5kIEknbSBpbiBpdHMgcGFyZW50IGRpcmVjdG9yeS4gSSBkb24ndCBoYXZlIHRvIG1v dmUgbXkKPiA+ICAgICBtb3VzZSB0byB1cHBlci1sZWZ0IGNvcm5lciBvciBwcmVzcyBrZXlib2Fy ZCBrZXkgdG8gZ28gYmFjay4gVGhhdCdzCj4gPiAgICAgaXQgOikKPiA+ICAgICAKPiA+ICAgICBB bHRob3VnaCB0aGlzIGZlYXR1cmUgaXMgbm90IGF2YWlsYWJsZSBpbiBtYW55IGFwcGxpY2F0aW9u cywgSSBvbmx5Cj4gPiAgICAgaGF2ZSB1c2VkICJDbG92ZXIgZmlsZSBtYW5hZ2VyIiBlYXJsaWVy IGluIG1zLXdpbmRvd3Mgd2hpY2ggdXNlZCB0bwo+ID4gICAgIGhhdmUgdGhpcyBmZWF0dXJlLiBZ ZXN0ZXJkYXkgd2hpbGUgY2hlY2tpbmcgYnVnIGxpc3QsIEkgZm91bmQgb25lCj4gPiAgICAgZmVh dHVyZSByZXF1ZXN0IHJlZ2FyZGluZyB0aGlzIGZlYXR1cmUgYW5kIHRoZW4gaXQgY2FtZSB0byBt eSBtaW5kLgo+ID4gICAgIEkgdHJpZWQgdG8gZmluZCB0aGF0IGJ1ZyBidXQgSSBhbSB1bmFibGUg dG8gZmluZCBpdCBjdXJyZW50bHkuCj4gCj4gSSBkbyBub3Qga25vdyB3aHkgd2Ugc2hvdWxkbid0 IGFsbG93IHRoaXMgYmVoYXZpb3VyLiBJdCBpcyBub3QgdGhlIG9ubHkgd2F5Cj4gdG8gbmF2aWdh dGUsIHNvIGRpc2NvdmVyYWJpbGl0eSBvciB3aGF0IHVzZXJzIGFyZSB1c2VkIHRvIGlzIG5vdCB0 aGF0Cj4gaW1wb3J0YW50LiBJIGFjdHVhbGx5IGZpbmQgdGhlIGJlaGF2aW91ciBxdWl0ZSBpbnR1 aXRpdmUgKGFzIHNvb24gYXMgeW91Cj4gbGVhcm5lZCBpdCBleGlzdHMpIC0gc28gSSB3b3VsZG4n dCBzZWUgYSBVc2FiaWxpdHkgYXJndW1lbnQgdG8gc2F5IG5vIHRvCj4gdGhpcyBwYXRjaC4KPiAK CldlbGwsIHRoZSB1bnN1c3BlY3RpbmcgdXNlciBjYW4gZGlzY292ZXIgaXQgZWFzaWx5IGJ5IGFj Y2lkZW50LiBJbWFnaW5lIGEgdXNlciAKZG91YmxlY2xpY2tpbmcgYSBmaWxlIGljb24gaW4gZG9s cGhpbiwgbWlzc2luZyBpdCBieSAxcHguIFN1ZGRlbmx5LCBpbnN0ZWFkIG9mIApvcGVuaW5nIHRo ZSBkb3VibGUgY2xpY2tlZCBmaWxlIGRvbHBoaW4gd2lsbCBwcmVzZW50IHRvIHRoZSB1c2VyIGEg dG90YWxseSAKZGlmZmVyZW50IGRpcmVjdG9yeS4gVGhlIHVzZXIgdmVyeSBsaWtlbHkgd29uJ3Qg ZXZlbiBub3RpY2UgaXQncyB0aGUgcGFyZW50IApkaXJlY3RvcnksIGhlIHdpbGwganVzdCBwZXJj ZWl2ZSB0aGUgcmVzdWx0IGFzIHVuZXhwbGljYWJsZSwgYW5ub3lpbmcgCmJlaGF2aW91ci4KCm1m ZwoJTGVvCgo+IAo+IC0gQmpvZXJuCj4gCj4gCj4gLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiBUaGlzIGlzIGFuIGF1dG9tYXRpY2Fs bHkgZ2VuZXJhdGVkIGUtbWFpbC4gVG8gcmVwbHksIHZpc2l0Ogo+IGh0dHBzOi8vZ2l0LnJldmll d2JvYXJkLmtkZS5vcmcvci8xMjM2NTgvI3Jldmlldzc5OTUxCj4gLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0KPiAKPiBPbiBNYWkgNiwg MjAxNSwgMTA6NTMgdm9ybS4sIEFzaGlzaCBCYW5zYWwgd3JvdGU6Cj4gPiAtLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4gVGhpcyBp cyBhbiBhdXRvbWF0aWNhbGx5IGdlbmVyYXRlZCBlLW1haWwuIFRvIHJlcGx5LCB2aXNpdDoKPiA+ IGh0dHBzOi8vZ2l0LnJldmlld2JvYXJkLmtkZS5vcmcvci8xMjM2NTgvCj4gPiAtLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQo+ID4gCj4g PiAoVXBkYXRlZCBNYWkgNiwgMjAxNSwgMTA6NTMgdm9ybS4pCj4gPiAKPiA+IAo+ID4gUmV2aWV3 IHJlcXVlc3QgZm9yIERvbHBoaW4sIEtERSBVc2FiaWxpdHkgYW5kIEVtbWFudWVsIFBlc2Nvc3Rh Lgo+ID4gCj4gPiAKPiA+IFJlcG9zaXRvcnk6IGRvbHBoaW4KPiA+IAo+ID4gCj4gPiBEZXNjcmlw dGlvbgo+ID4gLS0tLS0tLQo+ID4gCj4gPiBJZiBtb3VzZSBkb3VibGUgY2xpY2sgaXMgZG9uZSBv biB0aGUgZW1wdHkgYXJlYSwgdGhlbiBpbnZva2UgdGhlIGdvIGJhY2sKPiA+IHRvIHByZXZpb3Vz IGRpcmVjdG9yeSBpbiB0aGUgaGlzdG9yeS4KPiA+IAo+ID4gCj4gPiBEaWZmcwo+ID4gLS0tLS0K PiA+IAo+ID4gICBzcmMva2l0ZW12aWV3cy9raXRlbWxpc3Rjb250cm9sbGVyLmggYjhhOTNlZAo+ ID4gICBzcmMva2l0ZW12aWV3cy9raXRlbWxpc3Rjb250cm9sbGVyLmNwcCAxYzg2ZmYwCj4gPiAg IHNyYy92aWV3cy9kb2xwaGludmlldy5jcHAgZDMwMjM1OAo+ID4gCj4gPiBEaWZmOiBodHRwczov L2dpdC5yZXZpZXdib2FyZC5rZGUub3JnL3IvMTIzNjU4L2RpZmYvCj4gPiAKPiA+IAo+ID4gVGVz dGluZwo+ID4gLS0tLS0tLQo+ID4gCj4gPiBEb2Vzbid0IHdvcmtzIHNvbWV0aW1lcy4KPiA+IAo+ ID4gCj4gPiBUaGFua3MsCj4gPiAKPiA+IEFzaGlzaCBCYW5zYWwKCl9fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCmtkZS11c2FiaWxpdHkgbWFpbGluZyBsaXN0 CmtkZS11c2FiaWxpdHlAa2RlLm9yZwpodHRwczovL21haWwua2RlLm9yZy9tYWlsbWFuL2xpc3Rp bmZvL2tkZS11c2FiaWxpdHkK