Q29tbWVudCBvbiB2YXJpb3VzIHJlc3BvbnNlcyAtIHRoYW5rcyBmb3IgaW5wdXQuCgpTb21lb25l IG5vdGVkIG9mZmxpc3QgdGhhdCBJJ2Qgbm90IG1lbnRpb25lZCBwcmVzc3VyZS4KClZlcnkgbG93 IChhIGZldyBQU0kgKHRvIGZ1cnRoZXIgbWl4IHVuaXRzKSkgLSBlbm91Z2ggdG8gY2F1c2UgZGVz aXJlZCBmbG93LApidXQgY2FuIGJlIGluY3JlYXNlZCB0byBhY2NvbW1vZGF0ZSBzZW5zaWJsZSBm bG93IHJlc3RyaWN0aW9ucy4KVG90YWwgc3lzdGVtIGhhcyBtYXliZSAyIHRvIDMgbWV0cmVzIG9m IHR1YmluZy4gSWYgc2F5IDUsLCBJRCBvciBsYXJnZXIgYXQKdGhlIGZsb3cgcmF0ZSB1c2VkIHBy ZXNzdXJlIGRyb3AgaXMgInNtYWxsIi4KCl9fX19fX19fX19fX19fX19fX19fX19fX19fCgpJJ20g YXdhcmUgb2YgdGVtcGVyaW5nIHZhbHZlcyBhbmQgZnVybmFjZSBoZWF0ZXIgdmFsdmVzIGV0Yy4K QW55dGhpbmcgSSd2ZSBzZWVuIHNvIGZhciBpcyBmYXIgdG9vIGxhcmdlIGFuZCBhbHNvIHJhdGhl ciB0b28gZXhwZW5zaXZlLgoKX19fX19fX19fX19fX19fXwoKCj4KPiAq4oCL4oCLVHJ5IHNlYXJj aGluZyBmb3IgInRoZXJtYWxseSBhY3R1YXRlZCB2YWx2ZSIgb3IgInRoZXJtYWxseSBhY3RpdmF0 ZWQKPiB2YWx2ZSIgcmF0aGVyIHRoYW4gJ3RoZXJtb3N0YXRpYyIuICAgVGhpcyB5aWVsZHMgbnVt ZXJvdXMgc3VwcGxpZXJzIG9mCj4gaW5kdXN0cmlhbCBjb21wb25lbnRzIHRoYXQgbWF5IGJlIG9m IHVzZS4qCj4KCuKAi1RoYW5rcy4gQmVmb3JlIEkgYXNrZWQgdGhlIHF1ZXN0aW9uIEkgaGFkIEkg dHJpZWQgYWxsIHNvcnRzIG9mIHJlbGF0ZWQKc2VhcmNoIHRlcm1zIGFuZCBsZWFybmVkIGEgZmV3 IG1vcmUgdGhpbmdzICwgYXMgaGFwcGVucy4KTm8gdmFsdmVzIGV0YyB0aGF0IEkgZm91bmQgc2Vl bWVkIGFueXRoaW5nIGxpa2UgYSBjbG9zZSBmaXQsIGJ1dCB0aGV5IG1heQp3ZWxsIGV4aXN0LiBJ J2QgZXhwZWN0IHRoZW0gdG8uCgpfX19fX19fX19fX19fXwoKPiBJcyB0aGVyZSBhIHJlYXNvbiB5 b3UgaGF2ZSB0byBjb250cm9sIGZsb3cgcmF0ZSB0byBtYWludGFpbiB0ZW1wZXJhdHVyZT8KPiBG cm9tIGhlcmUgaXQgbG9va3MgbGlrZSBtYW5hZ2luZyB0aGUgZmx1aWQncyB0ZW1wZXJhdHVyZSB3 aXRoIGhlYXRlcnMgb3IKPiBQZWx0aWVyIGNvb2xlcnMgbWF5IGJlIGFuIGVhc2llciBzb2x1dGlv bi4KPiBEb3VidCBpdCBtZWV0cyB0aGUgc3Bpcml0IG9mIHlvdXIgcG93ZXIgYnVkZ2V0Li4KClRo ZXJlIGFyZSBzZXZlcmFsIGFwcHJvYWNoZXMgdG8gdGhlIHJlcXVpcmVtZW50IHdoaWNoIG1heSBi ZSBhcHBsaWNhYmxlIGluCnZhcmlvdXMgY2lyY3Vtc3RhbmNlcy4KT25lIHVzZXMgUGVsdGllciBj b29sZXJzLCBjaXJjdWxhdGlvbiBwdW1wLCBtaWNyb2NvbnRyb2xsZXIsIC4uLi4gLgpBdCB0aGUg b3RoZXIgZW5kIGlzIHRoaXMgb25lIHdoaWNoIGFpbXMgYXQgbG93ZXN0IGNvc3QuIGFuZCBpZGVh bGx5IHplcm8KcG93ZXIgYnVkZ2V0LgpDb29saW5nIGVuZXJneSBjcm9zc2VzIHRoZSBzeXN0ZW0g Ym91bmRhcnkgYXMgYW4gaW5pdGlhbCBjb25kaXRpb24gOi0pLgoKPiBBdCB2ZXJ5IGxvdyBmbG93 IHJhdGVzLCBhbnkgaGVhdCBsb3N0IG91dCB0aGUgdmFsdmUgaG91c2luZyB3aWxsIGFmZmVjdAp0 aGUKPiBtZWFzdXJlZCB0ZW1wZXJhdHVyZS4KPiBTb2x2YWJsZSwgYnV0IGFuIGludGVyZXN0aW5n IGhlYXQgdHJhbnNmZXIgcHJvYmxlbSBvZiBpdCdzIG93bi4KClllcywgaG9wZWZ1bGx5IGFuZCB5 ZXMgOi0pLgoKUGxhY2luZyB0aGUgdmFsdmUgaW4gYSBzdWl0YWJsZSBsb2NhdGlvbiB3aXRoaW4g dGhlIHByb2Nlc3Mgc2hvdWxkIGFsbG93CmhlYXQgbG9zcyB0byBub3QgYmUgYW4gaXNzdWUuCmVn IGJpbWV0YWxsaWMgc3RyaXBzIHdvcmsgb24gYWJzb2x1dGUgdGVtcGVyYXR1cmUgYW5kIG5vdCBk ZWx0YSB0ZW1wIHNvCmhhdmluZyB0aGUgdmFsdmUgaW4gaW50aW1hdGUgdGhlcm1hbCBjb250YWN0 IHdpdCBhbiB1cHN0cmVhbSByZXNlcnZvaXIgbWF5CmJlIGEgZ29vZCBjaG9pY2UuCkJ1dCBwbGFj aW5nIGl0IHdoZXJlIGZsb3cgdGVtcGVyYXR1cmUgb25seSBpcyBub3RlZCBhbHNvIGNhbiBiZSB2 aWFibGUgb2YKc3lzdGVtIGNoYXJhY3RlcmlzdGljcyBhcmUga25vd24uCgoKClJ1c3NlbGwKLS0g Cmh0dHA6Ly93d3cucGljbGlzdC5jb20vdGVjaHJlZi9waWNsaXN0IFBJQy9TWCBGQVEgJiBsaXN0 IGFyY2hpdmUKVmlldy9jaGFuZ2UgeW91ciBtZW1iZXJzaGlwIG9wdGlvbnMgYXQKaHR0cDovL21h aWxtYW4ubWl0LmVkdS9tYWlsbWFuL2xpc3RpbmZvL3BpY2xpc3QK .