T24gMTYgTm92ZW1iZXIgMjAxNSBhdCAwNDo1NiwgRGFycm9uIEJsYWNrIDxkYXJyb25AZ3JpZmZp bi5uZXQ+IHdyb3RlOgoKPiBBIGRlc2lnbiB3aXRoIGEgYmF0dGVyeSBiYWNrZWQgcHJvZ3JhbSBh bmQgbm8gcmVjb3ZlcnkgbWVjaGFuaXNtIGlzCj4gcmlkaWN1bG91cy4gV2hhdCBpcyB0aGlzLCBh biBJUCBzZWN1cml0eSBmZWF0dXJlPwoKCuKAi0l0IGhhcHBlbnMuCgpBIGNsaWVudCB3YW50ZWQg YSB0ZW1wZXJhdHVyZSBwcm9maWxlIGluc2lkZSBjb250YWluZXJzIGJlaW5nIHNlbnQKVGFpd2Fu LVVTQS4K4oCLSSB3YXMgZ2l2ZW4gYSB1c2VkIHRlbXBlcmF0dXJlIGxvZ2dlciBieSBzb21lIGZy aWVuZHMgd2hvIG1hZGUgdGhlbS4gVGhleQphcmUgdXN1YWxseSB1c2VkIGFzIG9uZSB0aW1lIGxv Z2dlcnMgZm9yIGV4cGVuc2l2ZSBnb29kcyBpbiB0cmFuc2l0IGFuZApyZXR1cm5lZCBhcyBwYXJ0 IG9mIHRoZSBvdmVyYWxsIGNvc3QuIFRoZXkgcnVuIG9uIGEgTGl0aGl1bSBjZWxsIHdpdGgKcHJv Z3JhbSBpbiBSQU0gc28gdGhhdCB0aGUgcHJvZ3JhbSBpcyBsb3N0IGlmIGNlbGwgaXMgcmVtb3Zl ZCBvciB2b2x0YWdlCmZhbGxzIHRvbyBsb3cuCgpUaGUgbG9nZ2VyIHRoYXQgSSB3YXMgZ2l2ZW4g aGFkIGEgbG93aXNoIGJhdHRlcnkgdm9sdGFnZSBhbmQgSSB3YW50ZWQgdG8KZW5zdXJlIGl0IHdv cmtlZCByZWxpYWJseSB3aGlsZSBzZW50IG9uIGEgTlotVGFpd2FuIChieSBhaXIpLCDigItUYWl3 YW4tVVNBCihieSBjb250YWluZXIgc2hpcCksIFVTQS1OWiAoYnkgYWlyKSBsb29wIGJhY2sgdG8g bWUuCkkgcmVwbGFjZWQgdGhlIGJhdHRlcnkgImxpdmUiLiBJIGFkZGVkIGEgZGlvZGUgZmVkIHBv d2VyIHN1cHBseSBhbmQgZW5hYmxlZAppdCwgU29tZSB3aGlsZSBhZ28gbm93IChhYm91dCAxNSB5 ZWFycykgYnV0IEkgdGhpbmsgSSByYW1wZWQgdXAgZGlvZGUgZmVkCnN1cHBseSB0aWxsIGl0IG1h bmFnZWQgbG9hZCwgdGhlbiBjdXQgdHJhY2sgdG8gYmF0dGVyeSwgcmVwbGFjZWQgYmF0dGVyeSwK YWRkZWQgYSBwb3QgYmF0dGVyeSB0byBsb2dnZXIsIHdvdWxkIGRvd24gcG90LCByZXNvbGRlcmVk IHRyYWNrLCByYW1wZWQKZG93biBkaW9kZSBmZWVkLCAgYW5kIHJlbW92ZWQgaXQuIFRoZSBhaW0g d2FzICJubyBzdWRkZW4gY2hhbmdlcyIgd2hpY2ggbWF5CmhhdmUgY2F1c2VkIGEgZ2xpdGNoLiBJ dCB3b3JrZWQuCgpUaGUgbG9nZ2VyIGRpc3Byb3ZlZCBhIHRoZW9yeSByZSBzaGlwcGluZyBjb25k aXRpb25zIGJ1dCBzaG93ZWQgdGhhdCBvbgpyZXR1cm4gdG8gTlogdGhlIHBhcmNlbCAob3IgdGhl IHdob2xlIGZyZWlnaHRpbmcgY29udGFpbmVyKSB3YXMgcGxhY2VkIGluIGEKLTIwQyBjb29sLXN0 b3JlIG92ZXJuaWdodCAtIGEgZmFjdCB3aGljaCB0aGUgY291cmllciBjb21wYW55IGRlbmllZApj b21wbGV0ZWx5IDotKS4KCgoKICAgICAgICAgICAgICAgICBSdXNzZWxsCi0tIApodHRwOi8vd3d3 LnBpY2xpc3QuY29tL3RlY2hyZWYvcGljbGlzdCBQSUMvU1ggRkFRICYgbGlzdCBhcmNoaXZlClZp ZXcvY2hhbmdlIHlvdXIgbWVtYmVyc2hpcCBvcHRpb25zIGF0Cmh0dHA6Ly9tYWlsbWFuLm1pdC5l ZHUvbWFpbG1hbi9saXN0aW5mby9waWNsaXN0Cg== .