VGhhbmtzIFJ1c3NlbGwsCldvdyBsb3RzIG9mIGdyZWF0IGluZm9ybWF0aW9uIGJlbG93LiBJJ2xs IGxvb2sgYXQgdGhlIGxpbmtzIHlvdSBoYXZlIApwcm92aWRlZCBhbmQgc2VlIGlmIGFueSBvZiB0 aG9zZSBob3Qgc3dhcCBJQydzIGNhbiBiZSB1c2VmdWwgaW4gbXkgY2FzZS4gClNvIGFtYXplZCBi eSB0aGUga25vd2xlZGdlIGFuZCBnZW5lcm9zaXR5IGJ5IGV2ZXJ5b25lIG9uIHRoaXMgbGlzdC4K TXVjaCB0aGFua3MsCkppbQo+Cj4+IOKAiyAuLi7igIsKPj4KPj4KPj4gSWYgSSBnbyB0aGlzIHJv dXRlIG9mIHVzaW5nIGEgY29tcGFyYXRvciBldGMuIHdvdWxkbid0IGl0IGJlIGRpZmZpY3VsdAo+ PiBiZWNhdXNlIHRoZSB2b2x0YWdlIGZyb20gdGhlIHBvd2VyIHN1cHBseSBpcyB1bnByZWRpY3Rh YmxlIGFzIGl0IGlzCj4+IHNodXR0aW5nIGRvd24uIERvIHlvdSBmZWVsIGl0IGNvdWxkIGJlIGRv bmUgd2l0aG91dCBhZGRpbmcgYSBzZWNvbmQKPj4gc3VwcGx5PyBDb3VsZCBJIGp1c3QgdXNlIGEg bGRpb2RlIGZvbGxvd2VkIGJ5IGEgbGFyZ2UgY2FwYWNpdG9yIHNvIEkKPj4gaGF2ZSBzb21lIHRp bWUgdG8gcG93ZXIgdGhlIGNvbXBhcmF0b3Igd2hlbiB0aGUgcG93ZXIgc3VwcGx5IGN1dHMgb3V0 Pwo+PiBTbyBtYW55IG1vdmluZyB2YXJpYWJsZXMgaGVyZS4KPj4KPj4KPiBZb3UgY2FuIGVtcGxv eSBhIDIgd2lyZSBjaXJjdWl0IChjdXRvZmYgaW4gc2VyaWVzIHdpdGggbG9hZCkgd2l0aCB0aGUK PiBjaXJjdWl0IHBvd2VyZWQgYnkgdm9sdGFnZSBkcm9wIGFjcm9zcyBpdHNlbGYgd2hlbiBvbiwg b3IgdXNpbmcgYW4gaW50ZXJuYWwKPiBwb3dlciBzdXBwbHksIGJ1dHRoaXMgaXMgbGVzcyBkZXNp cmFibGUgZm9yIHNldmVyYWwgcmVhc29ucy4KPgo+IFlvdSB2ZXJ5IGlkZWFsbHkgdXNlIGEgIjMg d2lyZSIgY3V0b2ZmIGNpcmN1aXQgKGVnIGZvciBhIGxvdyBzaWRlICt2ZQo+IHN1cHBseSB2ZXJz aW9uOiBncm91bmQsIGxvYWQgLXZlLCBsb2FkK3ZlL1ZkZCkgdGhlbiBpdCBjYW4gY29udHJvbCB3 aGF0IHRoZQo+IGxvYWQgJ3NlZXMnIHdpdGhvdXQgYWZmZWN0aW5nIHRoZSBzdXBwbHkuCj4KPiBX aXRoIGEgMyB3aXJlIGNpcmN1aXQsIGxvdyBzaWRlIHN3aXRjaCBhbmQgc3VwcGx5ICt2ZSB3cnQg Z3JvdW5kLgo+Cj4gLSBCcmVhayBsb2FkIGdyb3VuZCBsZWFkIChWbC0pLgo+IC0gQ29ubmVjdCBW ZGQsIGdyb3VuZCwgVmwtIHRvIGN1dG9mZikuCj4gLSBBZGQgYW55IGRlc2lyZWQgaW5kdWN0aXZl IHNwaWtlIHByb3RlY3Rpb24gdG8gTEVEIGRyaXZlciAocHJvYmFibHkganVzdCBhCj4gcmV2ZXJz ZSBkaW9kZSBhY3Jvc3MgaXQuCj4KPiAtIEFwcGx5IHBvd2VyIGZvciBub3JtYWwgb3BlcmF0aW9u Lgo+IC0gV2hlbiBJX2xvYWQgZXhjZWVkcyBsaW1pdCBsb2FkIGlzIGRpc2Nvbm5lY3RlZCwgZWl0 aGVyIHVudGlsIHJlc2V0IG9yIGZvcgo+IGZpbml0ZSBwZXJpb2QuCj4KPiBMb2FkIG5ldmVyIHNl ZXMgaGlnaCBkaXNzaXBhdGlvbiBjb250aW51b3VzLXNob3J0IG1vZGUgYXMgVmxvYWQgaXMgcmVt b3ZlZAo+IGZ1bGx5IGlmIElsb2FkIGV4Y2VlZHMgSW1heC4KPgo+IGllIElGIHRoZSBwcm9ibGVt IGlzIGRpc3NpcGF0aW9uIGluIHRoZSBMRUQgZHJpdmVyIE1PU0ZFVCB1bmRlciBzL2MgdGhlbgo+ IHJlbW92YWwgb2YgYXBwbGllZCB2b2x0YWdlIGFuZCBub3QganVzdCBjdXJyZW50IGxpbWl0aW5n IGlzIHJlcXVpcmVkLgo+IF9fX19fX19fX19fX19fXwo+Cj4gRmlnIDIgaGVyZSBnaXZlcyBhbiBl cXVpdmFsZW50IGFycmFuZ2VtZW50IHdpdGggc3Vic3RhbnRpYWxseSBtb3JlCj4gY29tcGxleGl0 eSB0aGF0IHlvdSB3b3VsZCBuZWVkLgo+IFRoZXkgdXNlIGEgaGlnaCBzaWRlIHNlbnNlIHNvIElD MSBpcyBhIGRpZmZlcmVudGlhbCBhbXAuCj4gVXNpbmcgYSBsb3cgc2lkZSBzZW5zZSBhbGxvd3Mg YSBiYXNpYyBjb21wYXJhdG9yIGFuZCByZWZlcmVuY2UgdG8gYmUgdXNlZC4KPiBXaXRoIGEgMjRW IHN1cHBseSB5b3UgY2FuIHVzZSBhIGNvbXBhcmF0b3IgdGhhdCB3aWxsIGRyaXZlIFExIGRpcmVj dGx5Lgo+Cj4gVGhlIGNvbXBhcmF0b3IgbmVlZHMgYW4gYWRkZWQgaG9sZCBvZmYgLyBkZWxheSBw ZXJpb2QgYWZ0ZXIgdHJpZ2dlcmluZyB0bwo+IGdpdmUgYSAnaGljY3VwJyBwZXJpb2QsIHRoZW4g dHJ5IGFnYWluLgo+Cj4gX19fX19fX19fX19fX19fX19fX18KPgo+Cj4gTUFYMjY5NCBhcHBsaWNh dGlvbiBub3RlIHdpdGggcmVsZXZhbnQgaWRlYXMuCj4KPiBUaGVyZSBhcmUgYSBsYXJnZSBudW1i ZXIgb2YgaG90IHN3YXAgY29udHJvbGxlciBJQ3MgYXZhaWxhYmxlIHdoaWNoIHByZXZlbnQKPiBv dmVyIGN1cnJlbnQgaWYgdGhnZSBzdXBwbHkgaXMgc2hvcnQgY2lyY3V5aXRlZC4KPiBUaGUgMjY5 NCBoYXMgZmFzdCBhbmQgc2xvdyByZXNwb25zZSBjdXJyZW50IHNldCBwb2ludHMuCj4gRHVlIHRv IGxpbWl0ZWQgRkVUIGRyaXZlIGN1cnJlbnQgaXQgaGFzIHR1cm4gb2ZmIHRpbWVzIHR5cGljYWxs eSBpbiB0aGUKPiAxMCdzIG9mIHVzLiBUaGlzIGFwcCBub3RlIHNob3dzIHRoZSBhZGRpdGlvbiBv ZiBnYXRlIGRyaXZlcnMgdG8gaW1wcm92YmUKPiB0dXJuIG9mZiB0aW1lcyBhbmQgZGlzY3Vzc2Vz IG90aGVyIGFzcGVjdHMuCj4KPiBodHRwczovL3d3dy5tYXhpbWludGVncmF0ZWQuY29tL2VuL2Fw cC1ub3Rlcy9pbmRleC5tdnAvaWQvMjY5NAo+Cj4gX19fX19fX19fXwo+Cj4gVEkgTE01MDY5IExN MjUwNjEKPiDigIvigIsKPiBQb3NpdGl2ZSBIaWdoIFZvbHRhZ2UgSG90IFN3YXAgLyBJbnJ1c2gg Q3VycmVudCBDb250cm9sbGVyIHdpdGggUG93ZXIKPiBMaW1pdGluZwo+IOKAi1Byb2R1Y3QgcGFn ZSAgaHR0cDovL3d3dy50aS5jb20vcHJvZHVjdC9MTTUwNjnigIsKPgo+IOKAi0RhdGFzaGVldCAg aHR0cDovL3d3dy50aS5jb20vbGl0L2RzL3N5bWxpbmsvbG01MDY5LnBkZuKAiwo+Cj4g4oCLT3Ro ZXIgcmVsYXRlZCBwcm9kdWN0cwo+Cj4gICAgICAgaHR0cDovL3d3dy50aS5jb20vcHJvZHVjdC9M TTUwNjkvY29tcGFyZQo+Cj4KPiBBRE0xMjcwCj4gaHR0cDovL3d3dy5lbGVjdHJvbmljcy1lZXRp bWVzLmNvbS9uZXdzL2hpZ2gtdm9sdGFnZS1pbnJ1c2hvdmVyY3VycmVudC1pbnB1dC1wcm90ZWN0 aW9uLWRldmljZQo+Cj4KPiBBZ2FpbjogSUYgdGhlIHByb2JsZW0gaXMgZGlzc2lwYXRpb24gaW4g dGhlIExFRCBkcml2ZXIgTU9TRkVUIHVuZGVyIHMvYwo+IHRoZW4gcmVtb3ZhbCBvZiBhcHBsaWVk IHZvbHRhZ2UgYW5kIG5vdCBqdXN0IGN1cnJlbnQgbGltaXRpbmcgaXMgcmVxdWlyZWQuCj4KPgo+ ICAgICAgIFJ1c3NlbGwKPiDigIsKCi0tIApodHRwOi8vd3d3LnBpY2xpc3QuY29tL3RlY2hyZWYv cGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZpZXcvY2hhbmdlIHlvdXIgbWVtYmVy c2hpcCBvcHRpb25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5lZHUvbWFpbG1hbi9saXN0aW5mby9w aWNsaXN0Cg== .