YWxjaXVtIGNhcmJpZGUgaXMgcHJvZHVjZWQgaW5kdXN0cmlhbGx5IGluIGFuIGVsZWN0cmljIGFy YyBmdXJuYWNlCjxodHRwczovL3dpa2kyLm9yZy9lbi9FbGVjdHJpY19hcmNfZnVybmFjZT4gZnJv bSBhIG1peHR1cmUgb2YgbGltZQo8aHR0cHM6Ly93aWtpMi5vcmcvZW4vTGltZV8obWluZXJhbCk+ IGFuZCBjb2tlCjxodHRwczovL3dpa2kyLm9yZy9lbi9Db2tlXyhmdWVsKT4gYXQgYXBwcm94aW1h dGVseSAyMjAwIMKwQy4gVGhpcyBtZXRob2QKaGFzIG5vdCBjaGFuZ2VkIHNpbmNlIGl0cyBpbnZl bnRpb24gaW4gMTg5MjoKQ2FPICsgMyBDIOKGkiBDYUMyICsgQ08KClRoZSBoaWdoIHRlbXBlcmF0 dXJlIHJlcXVpcmVkIGZvciB0aGlzIHJlYWN0aW9uIGlzIG5vdCBwcmFjdGljYWxseQphY2hpZXZh YmxlIGJ5IHRyYWRpdGlvbmFsIGNvbWJ1c3Rpb24sIHNvIHRoZSByZWFjdGlvbiBpcyBwZXJmb3Jt ZWQgaW4gYW4KZWxlY3RyaWMgYXJjIGZ1cm5hY2Ugd2l0aCBncmFwaGl0ZSA8aHR0cHM6Ly93aWtp Mi5vcmcvZW4vR3JhcGhpdGU+IGVsZWN0cm9kZXMuClRoZSBjYXJiaWRlIHByb2R1Y3QgcHJvZHVj ZWQgZ2VuZXJhbGx5IGNvbnRhaW5zIGFyb3VuZCA4MCUgY2FsY2l1bSBjYXJiaWRlCmJ5IHdlaWdo dC4gVGhlIGNhcmJpZGUgaXMgY3J1c2hlZCB0byBwcm9kdWNlIHNtYWxsIGx1bXBzIHRoYXQgY2Fu IHJhbmdlCmZyb20gYSBmZXcgbW0gdXAgdG8gNTAgbW0uIFRoZSBpbXB1cml0aWVzIGFyZSBjb25j ZW50cmF0ZWQgaW4gdGhlIGZpbmVyCmZyYWN0aW9ucy4gVGhlIENhQzIgY29udGVudCBvZiB0aGUg cHJvZHVjdCBpcyBhc3NheWVkIGJ5IG1lYXN1cmluZyB0aGUKYW1vdW50IG9mIGFjZXR5bGVuZSBw cm9kdWNlZCBvbiBoeWRyb2x5c2lzLiBBcyBhbiBleGFtcGxlLCB0aGUgQnJpdGlzaCBhbmQKR2Vy bWFuIHN0YW5kYXJkcyBmb3IgdGhlIGNvbnRlbnQgb2YgdGhlIGNvYXJzZXIgZnJhY3Rpb25zIGFy ZSAyOTUgTC9rZyBhbmQKMzAwIEwva2cgcmVzcGVjdGl2ZWx5IChhdCAxMDEga1BhIHByZXNzdXJl IGFuZCAyMCDCsEMgdGVtcGVyYXR1cmUpLgpJbXB1cml0aWVzIHByZXNlbnQgaW4gdGhlIGNhcmJp ZGUgaW5jbHVkZSBwaG9zcGhpZGUsIHdoaWNoIHByb2R1Y2VzCnBob3NwaGluZSA8aHR0cHM6Ly93 aWtpMi5vcmcvZW4vUGhvc3BoaW5lPiB3aGVuIGh5ZHJvbHlzZWQuCgpUaGlzIHJlYWN0aW9uIHdh cyBhbiBpbXBvcnRhbnQgcGFydCBvZiB0aGUgaW5kdXN0cmlhbCByZXZvbHV0aW9uCjxodHRwczov L3dpa2kyLm9yZy9lbi9JbmR1c3RyaWFsX3Jldm9sdXRpb24+IGluIGNoZW1pc3RyeSwgYW5kIHdh cyBtYWRlCnBvc3NpYmxlIGluIHRoZSBVU0EgYXMgYSByZXN1bHQgb2YgbWFzc2l2ZSBhbW91bnRz IG9mIGluZXhwZW5zaXZlIGh5ZHJvZWxlY3RyaWMKcG93ZXIgPGh0dHBzOi8vd2lraTIub3JnL2Vu L0h5ZHJvZWxlY3RyaWNpdHk+IHByb2R1Y2VkIGF0IE5pYWdhcmEgRmFsbHMKPGh0dHBzOi8vd2lr aTIub3JnL2VuL05pYWdhcmFfRmFsbHM+IGJlZm9yZSB0aGUgdHVybiBvZiB0aGUgMjB0aCBjZW50 dXJ5LgoKVGhlIG1ldGhvZCBmb3IgdGhlIHByb2R1Y3Rpb24gaW4gYW4gZWxlY3RyaWMgYXJjIGZ1 cm5hY2UKPGh0dHBzOi8vd2lraTIub3JnL2VuL0VsZWN0cmljX2FyY19mdXJuYWNlPiB3YXMgZGlz Y292ZXJlZCBpbiAxODkyIGJ5IFQuIEwKV2lsbHNvbiA8aHR0cHM6Ly93aWtpMi5vcmcvZW4vVGhv bWFzX1dpbGxzb24+IGFuZCBpbmRlcGVuZGVudGx5IGJ5IEguCk1vaXNzYW4gPGh0dHBzOi8vd2lr aTIub3JnL2VuL0hlbnJpX01vaXNzYW4+IGluIHRoZSBzYW1lIHllYXIuCgoKCgpPbiBTdW4sIDE0 IE9jdCAyMDE4IGF0IDEwOjMwLCBKb2huIEZlcnJlbGwgPGpmZXJyZWxsMTNAdHJpYWQucnIuY29t PiB3cm90ZToKCj4gSSBoYXZlIGhhZCBubyBzdWNjZXNzIHNlYXJjaGluZyBmb3IgdGhlIGFjZXR5 bGVuZSBnYXMgaW5kdXN0cnkgdGhhdCB3YXMKPiBwb3B1bGFyIGluIHRoaXMgYXJlYSAoTWlkIE5v cnRoIENhcm9saW5hKS4gR2FzIGdlbmVyYXRvcnMgd2VyZSBidXJpZWQgYW5kCj4gQ2FsY2l1bSBD YXJiaWRlIHdhcyBtaW5lZCBpbiB0aGUgbW91bnRhaW5zLiBUaGUgZW50aXJlIENhbGNpdW0KPiBD YXJiaWRlIGluZHVzdHJ5IHNlZW1zIHRvIGhhdmUgZGlzYXBwZWFyZWQuCj4KCkNhQyB3b3VsZCBi ZSAodmVyeSkgdW5zdGFibGUgaW4gbmF0dXJlLgpUaGUgcHJvZHVjdGlvbiBwcm9jZXNzIHVzdWFs bHkgdXNlcyBsaW1lIChDYWxjaXVtIE94aWRlKSBhbmQgQ29rZS4KTGltZSBpbiB0dXJuIGlzIHBy b2JhYmx5IG1hZGUgZnJvbSBsaW1lIHN0b25lIChDYWxjaXVtIENhcmJvbmF0ZSkgcmVkdWNlZApp biBhIGZ1cm5hY2UgdG8gQ2FPLgpJJ2QgZ3Vlc3MgeW91ciBsb2NhbCBtaW5lcyBwcm92aWRlcyBD YUNPMy4KCgpSCgpGcm9tICAgICAgICAgICAgaHR0cHM6Ly93aWtpMi5vcmcvZW4vQ2FsY2l1bV9j YXJiaWRlK0JyaWdodHMKClRoZSBsYWNrIG9mIGEgQ2FDIGluZHVzdHJ5IHdvdWxkIHByb2JhYmx5 IGJlIGV4cGxhaW5lZCBieSAxLiBiZWxvdzoKCjEuICBUb2RheSBhY2V0eWxlbmUgaXMgbWFpbmx5 IG1hbnVmYWN0dXJlZCBieSB0aGUgcGFydGlhbCBjb21idXN0aW9uIG9mCm1ldGhhbmUgb3IgYXBw ZWFycyBhcyBhIHNpZGUgcHJvZHVjdCBpbiB0aGUgZXRoeWxlbmUgc3RyZWFtIGZyb20gY3JhY2tp bmcKb2YgaHlkcm9jYXJib25zLiBBcHByb3hpbWF0ZWx5IDQwMCwwMDAgdG9ubmVzIGFyZSBwcm9k dWNlZCB0aGlzIHdheQphbm51YWxseSAoc2VlIEFjZXR5bGVuZSBQcmVwYXJhdGlvbgo8aHR0cHM6 Ly93aWtpMi5vcmcvZW4vQWNldHlsZW5lI1ByZXBhcmF0aW9uPikuICAgKlRvZGF5IGFjZXR5bGVu ZSBpcyBtYWlubHkKbWFudWZhY3R1cmVkIGJ5IHRoZSBwYXJ0aWFsIGNvbWJ1c3Rpb24gb2YgbWV0 aGFuZSBvciBhcHBlYXJzIGFzIGEgc2lkZQpwcm9kdWN0IGluIHRoZSBldGh5bGVuZSBzdHJlYW0g ZnJvbSBjcmFja2luZyBvZiBoeWRyb2NhcmJvbnMqLgpBcHByb3hpbWF0ZWx5IDQwMCwwMDAgdG9u bmVzIGFyZSBwcm9kdWNlZCB0aGlzIHdheSBhbm51YWxseSAoc2VlIEFjZXR5bGVuZQpQcmVwYXJh dGlvbikuCgoyLiAgICAgICpDYWxjaXVtIGNhcmJpZGUgKmlzIHByb2R1Y2VkIGluZHVzdHJpYWxs eSBpbiBhbiBlbGVjdHJpYyBhcmMKZnVybmFjZSBmcm9tIGEgbWl4dHVyZSBvZiBsaW1lIGFuZCBj b2tlIGF0IGFwcHJveGltYXRlbHkgMjIwMCDCsEMuIFRoaXMKbWV0aG9kIGhhcyBub3QgY2hhbmdl ZCBzaW5jZSBpdHMgaW52ZW50aW9uIGluIDE4OTI6CgpDYU8gKyAzIEMg4oaSIENhQzIgKyBDTwpU aGUgaGlnaCB0ZW1wZXJhdHVyZSByZXF1aXJlZCBmb3IgdGhpcyByZWFjdGlvbiBpcyBub3QgcHJh Y3RpY2FsbHkKYWNoaWV2YWJsZSBieSB0cmFkaXRpb25hbCBjb21idXN0aW9uLCBzbyB0aGUgcmVh Y3Rpb24gaXMgcGVyZm9ybWVkIGluIGFuCmVsZWN0cmljIGFyYyBmdXJuYWNlIHdpdGggZ3JhcGhp dGUgZWxlY3Ryb2Rlcy4gVGhlIGNhcmJpZGUgcHJvZHVjdCBwcm9kdWNlZApnZW5lcmFsbHkgY29u dGFpbnMgYXJvdW5kIDgwJSBjYWxjaXVtIGNhcmJpZGUgYnkgd2VpZ2h0LiBUaGUgY2FyYmlkZSBp cwpjcnVzaGVkIHRvIHByb2R1Y2Ugc21hbGwgbHVtcHMgdGhhdCBjYW4gcmFuZ2UgZnJvbSBhIGZl dyBtbSB1cCB0byA1MCBtbS4KVGhlIGltcHVyaXRpZXMgYXJlIGNvbmNlbnRyYXRlZCBpbiB0aGUg ZmluZXIgZnJhY3Rpb25zLiBUaGUgQ2FDMiBjb250ZW50IG9mCnRoZSBwcm9kdWN0IGlzIGFzc2F5 ZWQgYnkgbWVhc3VyaW5nIHRoZSBhbW91bnQgb2YgYWNldHlsZW5lIHByb2R1Y2VkIG9uCmh5ZHJv bHlzaXMuIEFzIGFuIGV4YW1wbGUsIHRoZSBCcml0aXNoIGFuZCBHZXJtYW4gc3RhbmRhcmRzIGZv ciB0aGUgY29udGVudApvZiB0aGUgY29hcnNlciBmcmFjdGlvbnMgYXJlIDI5NSBML2tnIGFuZCAz MDAgTC9rZyByZXNwZWN0aXZlbHkgKGF0IDEwMSBrUGEKcHJlc3N1cmUgYW5kIDIwIMKwQyB0ZW1w ZXJhdHVyZSkuIEltcHVyaXRpZXMgcHJlc2VudCBpbiB0aGUgY2FyYmlkZSBpbmNsdWRlCnBob3Nw aGlkZSwgd2hpY2ggcHJvZHVjZXMgcGhvc3BoaW5lIHdoZW4gaHlkcm9seXNlZC4KClRoaXMgcmVh Y3Rpb24gd2FzIGFuIGltcG9ydGFudCBwYXJ0IG9mIHRoZSBpbmR1c3RyaWFsIHJldm9sdXRpb24g aW4KY2hlbWlzdHJ5LCBhbmQgd2FzIG1hZGUgcG9zc2libGUgaW4gdGhlIFVTQSBhcyBhIHJlc3Vs dCBvZiBtYXNzaXZlIGFtb3VudHMKb2YgaW5leHBlbnNpdmUgaHlkcm9lbGVjdHJpYyBwb3dlciBw cm9kdWNlZCBhdCBOaWFnYXJhIEZhbGxzIGJlZm9yZSB0aGUKdHVybiBvZiB0aGUgMjB0aCBjZW50 dXJ5LgoKVGhlIG1ldGhvZCBmb3IgdGhlIHByb2R1Y3Rpb24gaW4gYW4gZWxlY3RyaWMgYXJjIGZ1 cm5hY2Ugd2FzIGRpc2NvdmVyZWQgaW4KMTg5MiBieSBULiBMIFdpbGxzb24gYW5kIGluZGVwZW5k ZW50bHkgYnkgSC4gTW9pc3NhbiBpbiB0aGUgc2FtZSB5ZWFyLgoKPgo+Cj4gT24gMTAvMTAvMjAx OCA5OjU5IFBNLCBSdXNzZWxsTWMgd3JvdGU6Cj4gPiBJbiB0aGUgZWFybHkgMTkwMCdzIHRoZXJl IHdlcmUgRW5nbGlzaCBob21lcyB0aGF0IHVzZWQgd2VpZ2h0cyBpbiB0aGUKPiB0b25zCj4gPiBy YW5nZSB0aGF0IHdlcmUgY3JhbmtlZCB1cCBieSBob3VzZWhvbGQgc3RhZmYgYW5kIHVzZWQgdG8g cG93ZXIgdGhlIG5ldwo+ID4gZmFuZ2xlIGVsZWN0cmljIGxpZ2h0aW5nIHN5c3RlbXMuCj4gPiBB bnkgcGF0ZW50cyB3b3VsZCBiZSB3ZWxsIG92ZXIgMTAwIHllYXJzIG9sZC4KPiA+Cj4gPiBBIHNp bmdsZSBlbmVyZ3ktaW5wdXQtcGVyc29uIGNhbiB0eXBpY2FsbHkgZGVsaXZlciB+fj0gNTAgV2F0 dHMKPiBlc3NlbnRpYWxseQo+ID4gY29udGludWFsbHkKPgo+IC0tCj4KCgo+IEl0IGlzIGJldHRl ciB0byB3YWxrIGFsb25lLAo+IHRoYW4gd2l0aCBhIGNyb3dkIGdvaW5nIHRoZSB3cm9uZyBkaXJl Y3Rpb24uCj4KCiAgICAuLi4gdW5sZXNzIHlvdXIgZGlyZWN0aW9uIGlzIGZhciB3b3JzZSBhZ2Fp bi4KCj4KPgotLSAKaHR0cDovL3d3dy5waWNsaXN0LmNvbS90ZWNocmVmL3BpY2xpc3QgUElDL1NY IEZBUSAmIGxpc3QgYXJjaGl2ZQpWaWV3L2NoYW5nZSB5b3VyIG1lbWJlcnNoaXAgb3B0aW9ucyBh dApodHRwOi8vbWFpbG1hbi5taXQuZWR1L21haWxtYW4vbGlzdGluZm8vcGljbGlzdAo= .