T24gVHVlLCBNYXkgMjIsIDIwMTIgYXQgODoyMiBBTSwgTWF0dCBCZW5uZXR0IDxtYXR0cGljbGlz dEBoYXptYXQuY29tPiB3cm90ZToKPiBJZiB5b3UndmUgZXZlciB0cmllZCB0byBkbyBEU1AgdHlw ZSBmdW5jdGlvbnMgb24gYSBQSUMyNCwgeW91J2xsIGZpbmQgdGhhdAo+IHRoZSBzdGFuZGFyZCBs aWJyYXJpZXMgZG9uJ3QgaW5jbHVkZSBhbnkgc29ydCBvZiBmaWx0ZXJpbmcgZnVuY3Rpb25zLQo+ IHRoZXJlIGFyZSBmaWx0ZXJpbmcgZnVuY3Rpb25zIGZvciB0aGUgZHNQSUNzLCBidXQgdGhvc2Ug ZnVuY3Rpb25zIGFyZQo+IHVzaW5nIHRoZSBEU1AgdHlwZSBmZWF0dXJlcyBvZiB0aGF0IGZhbWls eS0gdGhlIGNvZGUgZG9lc24ndCBwb3J0Lgo+Cj4gSSB1bmRlcnN0YW5kIGl0IGlzbid0IG9wdGlt YWwsIGJ1dCBoYXMgYW55b25lIGZvdW5kIGRlY2VudCBmaXhlZC1wb2ludCBGSVIKPiAoZmluaXRl IGltcHVsc2UgcmVzcG9uc2UpIGNvZGUgZm9yIHRoZSBQSUMyND8gSSBjYW4gZ2VuZXJhdGUgdGhl IEZJUgo+IGNvZWZmZWNpZW50cy4gwqBJJ3ZlIGRvbmUgYSBtb3ZpbmcgYXZlcmFnZSBmaWx0ZXIg W3JlY3Rhbmd1bGFyIGltcHVsc2UKPiByZXNwb25zZV0sIGJlY2F1c2UgaXQgaXMgdmVyeSBlYXN5 LSBidXQgSSdtIGp1c3Qgbm90IGhhcHB5IHdpdGggdGhlCj4gcmVzdWx0cy4gSSBjb3VsZCBkaXZl IGludG8gJ051bWVyaWNhbCBSZWNpcGVzIGluIEMsJyBidXQgSSdtIGhvcGluZyB0aGF0Cj4gc29t ZW9uZSBoYXMgZG9uZS9mb3VuZCBzb21lIHNsaWdodGx5IG1vcmUgb3B0aW1pemVkIGNvZGUgKGZv ciBleGFtcGxlLAo+IHVzaW5nIHRoZSBfX2J1aWx0aW5feHh4KCkgdHlwZSBmdW5jdGlvbnMgYXZh aWxhYmxlIGluIEMzMC9YQzE2KS4KPgo+IFJlZ2FyZHMsCj4KPiBNYXR0CgpNYXR0LApDMzAgcHJv ZHVjZXMgcHJldHR5IGdvb2QgYXNzZW1ibHkgY29kZS4gQSBzaW1wbGUgRklSIGZpbHRlciBzaG91 bGRuJ3QKaGF2ZSB0byBiZSBtb3JlIGNvbXBsaWNhdGVkIHRoYW4gcm9sbGluZyB0aGUgeCBoaXN0 b3J5IGFuZCBkb2luZyB0aGUKTUFDIG9wZXJhdGlvbnMgaW4gc3RhbmRhcmQgQyBzdGF0ZW1lbnRz LiBJZiB5b3UgbmVlZCBpbnRlbnNlCm9wdGltaXphdGlvbiB0byBnZXQgaXQgZG9uZSBlZmZpY2ll bnRseSB0aGVuIEkgd291bGQgaGF2ZSB0byBhcmd1ZQp0aGF0IHlvdSByZWFsbHkgbmVlZCB0aGUg ZHNQSUMuIFRoZSBQSUMyNCBydW5uaW5nIGZ1bGwgc3BlZWQgc2hvdWxkIGJlCmFibGUgdG8gZG8g YSBMT1Qgb2YgRklSIE1BQ3MgcGVyIHNlY29uZCwgYWxsIHdpdGhvdXQgYW55IHNwZWNpYWwgRFNQ Cmluc3RydWN0aW9ucy4KCkkgaGF2ZSBkZXJpdmVkIGFuZCB3cml0dGVuIEZJUiBhbmQgSUlSIGNv ZGUgaWYgeW91IG5lZWQgcHJvZmVzc2lvbmFsCmxldmVsIGhlbHAuCi0tIApNYXJ0aW4gSy4KCi0t IApodHRwOi8vd3d3LnBpY2xpc3QuY29tIFBJQy9TWCBGQVEgJiBsaXN0IGFyY2hpdmUKVmlldy9j aGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQKaHR0cDovL21haWxtYW4ubWl0LmVkdS9t YWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QK .