T24gRnJpZGF5LCBKYW51YXJ5IDE3LCAyMDE0IDE3OjQ5OjQ5IFZpc2hlc2ggSGFuZGEgd3JvdGU6 Cj4gSSd2ZSBjcmVhdGVkIGFuIGV0aGVycGFkIG5vdGUgb24gLSBodHRwczovL25vdGVzLmtkZS5v cmcvcC9CYWxvb0FydGljbGUgSSdtCgpuaWNlISA6KQoKdGhvdWdodHM6IAoKIkJhbG9vIGlzIG5v dCBhIG5ldyBwcm9qZWN0IGJ1dCBhIGNvbnRpbnVhdGlvbiBvZiBOZXBvbXVr4oCdCgp3b3VsZCBp dCBtYWtlIHNlbnNlIHRvIHBvc2l0aW9uIEJhbG9vIGFzIGEgbmV3IGVuZ2luZSBmb3IgTmVwb211 az8gdGhhdCB3b3VsZCAKY2xlYXJseSBjb21tdW5pY2F0ZSB0aGVpciByZWxhdGlvbnNoaXAgYXMg d2VsbCBhcyBpbXBseSBpdCBpcyBhIGNvbnRpbnVhdGlvbiwgCndpdGhvdXQgb3ZlcnRseSBpbXBs eWluZyBpdCBtaWdodCBiZSBhIHJld3JpdGUgOykgcmV3cml0ZXMgYXJlIHNjYXJ5LCBhZnRlciAK YWxsOyBuZXcgZW5naW5lcyBhcmUgc2hpbnkhIDspCgppIGxvdmUgdGhlIGZvdXIgZm9jdXMgcG9p bnRzIHlvdSBvdXRsaW5lZC4KCm15IGZpcnN0IHRob3VnaHQgaXMgdGhhdCBpbnN0ZWFkIG9mIHNh eWluZyDigJxiZXR0ZXLigJ0gcGVyaGFwcyBpdCBjb3VsZCBzYXkgKndoYXQqIAppcyBiZXR0ZXIg YW5kIGxlYXZlIHRoZSB3b3JkIOKAnGJldHRlcuKAnSBvdXQgb2YgaXQgLi4gdGhpcyBsZXRzIHBl b3BsZSBjb21lIHRvIArigJxiZXR0ZXLigJ0gaW4gdGhlaXIgb3duIG1pbmQgYW5kIHRoZW4geW91 IGFyZW7igJl0IGNvbnZpbmNpbmcgdGhlbSBpdCBpcyBiZXR0ZXIsIAp0aGV5IGFyZSBhZ3JlZWlu ZyBpdCBpcyBiZXR0ZXIuIAoKaW4gdGhlIGNhc2Ugb2Ygc2ltcGxlciBjb2RlLCBwZXJoYXBzIGxl YWQgd2l0aCBiZW5lZml0IHJhdGhlciB0aGFuIGV4cGxhbmF0aW9uIAoKZS5nLjoKCiogRmFzdGVy IGluZGV4aW5nCiogU2VhcmNoZXMgYXJlIGZhc3RlciBhbmQgcmV0dXJuIG1vcmUgYWNjdXJhdGUg cmVzdWx0cwoqIE1vcmUgcm9idXN0IGFzIHNpbmdsZSBwb2ludHMgb2YgZmFpbHVyZSB3ZXJlIHJl bW92ZWQKKiBFYXNpZXIgdG8gZGV2ZWxvcCBhbmQgbWFpbnRhaW4gaW4gdGhlIGZ1dHVyZSBkdWUg dG8gYSBzaW1wbGlmaWVkLCBjbGVhciBjb2RlIApiYXNlCgp0aGlzIGlzIGV4YWN0bHkgd2hhdCB5 b3Ugd3JvdGUgKGkgdGhpbmsgdGhlIHBvaW50cyBhcmUgZ3JlYXQpLCBidXQganVzdCAKaW52ZXJ0 ZWQgdG8gZm9jdXMgb24gYmVuZWZpdC4gaeKAmWQgYWxzbyBzaGlmdCB0aGUg4oCcZWFzaWVyIHRv IGRldmVsb3AgYW5kIAptYWludGFpbuKAnSB0byBlbmQgb2YgdGhlIGxpc3QgYmVjYXVzZToKCiog aXQgc3BlYWtzIHRvIHRoZSBzbWFsbGVzdCBhdWRpZW5jZQoqIGl0IGJlY29tZXMgdGhlIHBlcmZl Y3QgYnJpZGdlIHRvIGEg4oCcc28gZ2V0IGludm9sdmVkIHRvZGF5IeKAnSBiaXQgYXQgdGhlIGVu ZCAKb2YgdGhlIGFydGljbGUKCi0tIApBYXJvbiBKLiBTZWlnbwoKX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX18KVGhpcyBtZXNzYWdlIGlzIGZyb20gdGhlIGtk ZS1wcm9tbyBtYWlsaW5nIGxpc3QuCgpWaXNpdCBodHRwczovL21haWwua2RlLm9yZy9tYWlsbWFu L2xpc3RpbmZvL2tkZS1wcm9tbyB0byB1bnN1YnNjcmliZSwgc2V0IGRpZ2VzdCBvbiBvciB0ZW1w b3JhcmlseSBzdG9wIHlvdXIgc3Vic2NyaXB0aW9uLg==