SG93IGNsb3NlbHkgc3BhY2VkIGFyZSB5b3VyIHRyYW5zZm9ybWVycz8gSSB3b25kZXIgaWYgb25l IGlzIG1hZ25ldGljYWxseQpjb3VwbGluZyB0byBhbm90aGVyLiBUaGVyZSBpcyBhIGJpdCBvZiBh IHRhbmsgY2lyY3VpdCB3aXRoIHRoZSB0cmFuc2Zvcm1lcgp3aW5kaW5nIGFuZCBwYXJhbGxlbCBj YXBhY2l0b3IuIENoYW5jZXMgYXJlIHRoYXQgdGhlIGluZHVjdG9ycyBhbmQgY2FwcyBhcmUKbm90 IGlkZW50aWNhbCBzbyB0aGV5IHdpbGwgaGF2ZSBkaWZmZXJlbnQgcmVzb25hbnQgZnJlcXVlbmNp ZXMuIFRoZXkgbWF5IGJlCmNyZWF0aW5nIGEgYmVhdCBmcmVxdWVuY3kgYnkgY291cGxpbmcgdG9n ZXRoZXIuIElzIHRoZSBodW0gYXQgZXhhY3RseSA2MEh6LApvciBzb21lIG90aGVyIGZyZXF1ZW5j eT8gRG9lcyBpdCBjaGFuZ2Ugb3IgZ28gYXdheSBpZiB5b3UgcmVtb3ZlIG9ubHkgb25lCm9mIHRo ZSB0d28gY2Fwcz8KCkJyeWFuCgpPbiBXZWQsIEp1bCAzLCAyMDE5IGF0IDE6NTMgUE0gPGVua2l0 ZWNAZ21haWwuY29tPiB3cm90ZToKCj4KPiAgICAgIFRoZSBodW0gYXBwZWFycyB3aGVuIGJvdGgg aW5wdXRzIGNhYmxlcyBhcmUgY29ubmVjdGVkPwo+ICAgICAgSSBoYWQgdGhlIHZlcnkgc2FtZSBw cm9ibGVtIHdpdGggYSBzaW5nbGUgdHJhbnNmb3JtZXIgc3RlcmVvCj4gYW1wbGlmaWVyLgo+ICAg ICAgTW9kaWZ5aW5nIHRoZSBpbnB1dCBncm91bmQgY29ubmVjdGlvbnMgZWxpbWluYXRlZCB0aGUg aHVtLiBUaGVyZQo+IHdlcmUgdHdvIHdpcmVzIGNvbm5lY3RlZCB0byB0aGUgY2VudHJhbCBncm91 bmQsIG9uZSBmcm9tIGVhY2ggaW5wdXQuIEkKPiBlbGltaW5hdGVkIG9uZSBvZiB0aGVtIGFuZCBj b25uZWN0ZWQgdGhlIHR3byBpbnB1dCBncm91bmRzIHRvZ2V0aGVyLgo+Cj4gICAgICBNYXJrIEpv cmRhbgo+Cj4KPiBPbiAwMy1KdWwtMTkgMTQ6MzQsIEJvYiBCbGljayB3cm90ZToKPiA+IEhpIERh dmlkIGFuZCBhbGwgdGhlIG90aGVyIHJlc3BvbmRlcnMsCj4gPiBUaGFua3MgZm9yIHlvdXIgaW5w dXQuIFRoZSB0aGluZyB0aGF0IHJlYWxseSBtYWRlIHRoaXMgd2VpcmQgaXMgdGhhdAo+IGl0J3Mg anVzdCB0d28gc2luZ2xlIGNoYW5uZWwgYW1wcyB0aGF0IG9ubHkgc2hhcmUgYSBjaGFzc2lzIGFu ZCBhIHBvd2VyCj4gY29yZCwgd2l0aCBhIGNvdXBsZSBvZiByZXNpc3RvcnMgYW5kIGNhcGFjaXRv cnMgdHlpbmcgdGhlIHR3byBncm91bmRzKGZyb20KPiB0aGUgbWFpbiBmaWx0ZXIgY2FwcykgdG8g Y2hhc3Npcywgd2hpY2ggaXMgYSBwcmV0dHkgdHlwaWNhbCB0aGluZyBpbgo+IGR1YWwtbW9uYXVy YWwgYW1wcy4gVGhlIGh1bSBvbmx5IGhhcHBlbnMgd2hlbiB0aGUgdHdvIGFtcHMgYXJlIGNvbm5l Y3RlZAo+IHRvZ2V0aGVyLgo+ID4KPiA+IExhc3QgbmlnaHQgSSBmb2xsb3dlZCB1cCBvbiBteSB0 aG91Z2h0IHRoYXQgdGhlIHR3byB0cmFuc2Zvcm1lcnMgd2VyZQo+IGRpZmZlcmVudCBmcm9tIGVh Y2ggb3RoZXIgYW5kIGdlbmVyYWxseSBwcmV0dHkgY3JhcHB5IHdpdGggcmVnYXJkcyB0bwo+IGNv bW1vbi1tb2RlIGlzb2xhdGlvbi4gSmltIHN1Z2dlc3RlZCBJIGNoZWNrIHRoZSBsb3QgbnVtYmVy cywgYW5kIGluZGVlZCwKPiB0aGV5IGFyZSBmcm9tIGRpZmZlcmVudCBwcm9kdWN0aW9uIGJhdGNo ZXMuCj4gPgo+ID4gUHVsbGluZyB0aGUgY2hhc3NpcyBjb25uZWN0aW9ucywgSSB0ZXN0ZWQgdGhl IGdyb3VuZCB2b2x0YWdlIG9mIHRoZSB0d28KPiBhbXBzIHJlZmVyZW5jZWQgdG8gQUMgbmV1dHJh bCwgYW5kIG9uZSBzaWRlIHdhcyBhYm91dCAuN1YgYW5kIHRoZSBvdGhlcgo+IGFib3V0IDJWLiBS ZXZlcnNpbmcgdGhlIEFDIGxpbmUgSSBnb3QgYWJvdXQgNzAgYW5kIDkwIHZvbHRzLiBJdCBsb29r cyBsaWtlCj4gdGhlIHR3byB0cmFuc2Zvcm1lcnMgYXJlIGRlZmluaXRlbHkgZGlmZmVyZW50LCBh bmQgdGhlcmUgaXMgZW5vdWdoCj4gY29tbW9uLW1vZGUgY3VycmVudCB0byBtYWtlIHNvbWUgaHVt LCBlc3BlY2lhbGx5IHdoZW4gdGhlIEFDIGxpbmUgaXMKPiByZXZlcnNlZC4KPiA+Cj4gPiBMb29r cyBsaWtlIHRoZXJlJ3Mgbm90IG11Y2ggdG8gYmUgZG9uZSBleGNlcHQgdG8gcHV0IGEgcG9sYXJp emVkIGxpbmUKPiBjb3JkIG9uIHRoZSBhbXAuIFNpbmNlIEkgY3V0IHRob3NlIHR3byAuMDEgY2Fw cyBvZmYgdGhlIGlucHV0IHRvIHRoZQo+IHRyYW5zZm9ybWVycyB0aGUgaHVtIGlzIHByZXR0eSBt dWNoIGdvbmUuIEkgcmVhbGx5IGhhdmUgbm8gaWRlYSB3aHkgdGhhdAo+IHdvdWxkIG1ha2UgYSBk aWZmZXJlbmNlLCBidXQgSSdtIG5vdCBnb2luZyB0byBkcml2ZSBteXNlbGYgY3JhenkgdHJ5aW5n IHRvCj4gZmlndXJlIHRoYXQgb25lIG91dC4KPiA+Cj4gPiBUaGFua3MgYWdhaW4hCj4gPgo+ID4g Qm9iCj4gPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCj4gPiBGcm9t OiBwaWNsaXN0LWJvdW5jZXNAbWl0LmVkdSA8cGljbGlzdC1ib3VuY2VzQG1pdC5lZHU+IG9uIGJl aGFsZiBvZgo+IERhdmlkIFJlYXZlcwo+ID4gU2VudDogV2VkbmVzZGF5LCBKdWx5IDMsIDIwMTkg NjoxNCBBTQo+ID4gVG86IHBpY2xpc3RAbWl0LmVkdQo+ID4gQ2M6IFJlYXZlcyBEYXZpZAo+ID4g U3ViamVjdDogUkU6IFtFRV06IEF1ZGlvIGFtcGxpZmllciBwb3dlciBzdXBwbHkgcHJvYmxlbQo+ ID4KPiA+IFlvdSBtYXkgYmUgb3Zlci1hbmFseXppbmcgdGhlIHByb2JsZW0gYXMgdG8gaXQgYmVp bmcgc29tZXdoZXJlIGluIHRoZQo+IHRyYW5zZm9ybWVyL3Bvd2VyIHN1cHBseS4gSXQgbWF5IGJl IGFuIHVuc2VlbiBncm91bmQtbG9vcCBwcm9ibGVtLgo+ID4KPiA+IEkgaGF2ZSBmb3VuZCwgYnkg c3RyaWN0bHkgZm9sbG93aW5nIGhpZ2gtcXVhbGl0eSBhbmFsb2cgYXVkaW8gd2lyaW5nCj4gcHJh Y3RpY2VzLCB0aGF0IGhhdmluZyBhICoqc2luZ2xlIHBvaW50IGdyb3VuZCoqIGFuZCAqYW55IGFu ZCBhbGwqIGdyb3VuZAo+IGNvbm5lY3Rpb25zIGJlaW5nIHNpbmdsZS13aXJlIOKAnHN0YXLigJ0g Y29ubmVjdGlvbnMgdG8gdGhhdCBncm91bmQgKHVzdWFsbHkKPiBsb2NhdGVkIGF0IHRoZSBsb3cg ZW5kIG9uIHRoZSBsYXJnZXN0IGZpbHRlciBjYXBhY2l0b3IpLCB0aGF0IGluIGFsbW9zdCBhbGwK PiBjYXNlcyBodW0gcHJvYmxlbXMgZG8gbm90IHNob3cgdXAgaW4gdGhlIGZpcnN0IHBsYWNlIChE b27igJl0IHVzZSBsb29wcywKPiBlaXRoZXIpISBFdmVyeSBzdWJhc3NlbWJseeKAmXMgZ3JvdW5k IGNvbm5lY3Rpb24gc2hvdWxkIGhhdmUgaXRzIG93bgo+IGluZGl2aWR1YWwgd2lyZSB0byB0aGF0 IHBvaW50LCBhbmQgaWYgaXQncyBhIHJlbGF0aXZlbHkgaGlnaC1jdXJyZW50LWRlbWFuZAo+IHNl Y3Rpb24gb2YgdGhlIGNpcmN1aXQsIHRoZSB3aXJlIHNob3VsZCBiZSBzdWJzdGFudGlhbCBhbmQg ZGlyZWN0LCB0byBrZWVwCj4gdGhlIGltcGVkYW5jZSBsb3cuIFRoaXMgcGhpbG9zb3BoeSBpcyBz aW1pbGFyIHRvIHRoZSBvbmUtY29ubmVjdGlvbi1vbmx5Cj4gcHJhY3RpY2Ugd2hlcmUgdGhlIGRp Z2l0YWwgYW5kIGFuYWxvZyBncm91bmRzIG9uIGEgRC9BIG9yIEEvRCBjb252ZXJ0ZXIKPiBoYXZl IHRvIGJlIHRpZWQgdG9nZXRoZXIgb24gYSBjaXJjdWl0IGJvYXJkLgo+ID4KPiA+IEFsc28sIG5v dCB1c2luZyB0aGUgb3V0ZXIgc2hpZWxkIHRvIGNhcnJ5IHRoZSBsb3cgc2lkZSBvZiB0aGUgaW5w dXQKPiBzaWduYWwgbWF5IGJlIG9mIGhlbHAsIHdpdGggdGhlIHNoaWVsZCBiZWluZyBjb25uZWN0 ZWQgdG8g4oCcZ3JvdW5kIiBvbmx5IGF0Cj4gdGhlIGVuZCB3aXRoIHRoZSBoaWdoZXN0IG5vaXNl IHN1c2NlcHRpYmlsaXR5IChyZWNlaXZpbmcgZW5kLCB1c3VhbGx5KSwgYW5kCj4gdGhlIGFjdHVh bCBjaXJjdWl0IHJldHVybiBiZWluZyBicm91Z2h0IGluIG9uIGEgc2VwYXJhdGUsIGJ1dCBjbG9z ZWx5Cj4gYWRqYWNlbnQsIGNvbmR1Y3Rvci4gVHdvLWNvbmR1Y3RvciBzaGllbGRlZCBjYWJsZSB1 c2VkIGZvciBiYWxhbmNlZAo+IGNpcmN1aXRzIHdvcmtzIGZvciB0aGlzIHRlY2huaXF1ZSwgdG9v Lgo+ID4KPiA+IEdvb2QgTHVjawo+ID4gRGF2aWQgUmVhdmVzCj4gPgo+ID4KPgo+IC0tCj4gaHR0 cDovL3d3dy5waWNsaXN0LmNvbS90ZWNocmVmL3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJj aGl2ZQo+IFZpZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25zIGF0Cj4gaHR0cDovL21h aWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QKPgotLSAKaHR0cDovL3d3dy5w aWNsaXN0LmNvbS90ZWNocmVmL3BpY2xpc3QgUElDL1NYIEZBUSAmIGxpc3QgYXJjaGl2ZQpWaWV3 L2NoYW5nZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBhdApodHRwOi8vbWFpbG1hbi5taXQuZWR1 L21haWxtYW4vbGlzdGluZm8vcGljbGlzdAo= .