T24gVGh1cnNkYXkgMjMgT2N0b2JlciAyMDE0IE9jdCAyMzoxNzo0OCBSYcO6bCBTw6FuY2hleiBT aWxlcyB3cm90ZToKPiBDb2xvciBwcm9maWxlcyAoSUNDLCBJQ00pCj4gPT09PT09PT09PT09PT09 PT09PQo+ICAgV2UncmUgY29uY2VybmVkIGFib3V0IGxpY2Vuc2UgZm9yIHRoZXNlIHByb2ZpbGVz LiAKCkl0J3MgZGlmZmljdWx0IGluZGVlZCB0byBmaWd1cmUgb3V0IHdoZXJlIHRoZXNlIGNvbWUg ZnJvbSwgZ2l2ZW4gdGhhdCdzIGl0IG1vcmUgdGhhbiB0ZW4geWVhcnMgYWdvIHRoYXQgdGhleSB3 ZXJlIGFkZGVkLi4uIFRoZSByZWFzb24gd2Uga2VlcCBnZXR0aW5nIHF1ZXJpZXMgYWJvdXQgdGhl c2UgcHJvZmlsZXMgaXMgdGhhdCB0aGUgcGxhY2Ugd2hlcmUgd2UgZ290IHRoZW0gbm8gbG9uZ2Vy IGV4aXN0cy4gc2NhcnNlLm9yZyBpcyBnb25lIGFuZCBsaXR0bGVjbXMuY29tIG5vIGxvbmdlciBo b3N0cyB0aGUgcHJvZmlsZXMuCgo+ICAgSW4gc29tZSBjYXNlcywgbmVpdGhlcgo+IGxpY2Vuc2lu ZyBub3IgY29weXJpZ2h0IGlzIGNsZWFyLiBNZXRhZGF0YSBpcyBoZWxwZnVsLCBidXQgbm90IGVu b3VnaC4KPiBQdWJsaWMgZG9tYWluIHByb2ZpbGVzIGFyZSBvaywgYnV0IHRoZXJlIG11c3QgYmUg YSB3YXkgdG8gdmVyaWZ5IGl0LiBGb3IKPiBpbnN0YW5jZTogZG93bmxvYWQgdXJsIHdoZXJlIHRo ZSBhdXRob3JzaGlwL2xpY2Vuc2UgaXMgc3RhdGVkLgo+IAo+ICAgSWYgY29sb3IgcHJvZmlsZXMg KGFzIGJpbmFyeSBmaWxlKSBhcmUgZ2VuZXJhdGVkIGZyb20gYSBodW1hbiByZWFkYWJsZQo+IHNv dXJjZSwgdGhlbiBoYXZpbmcgc291cmNlICh3aXRoIGxpY2Vuc2luZyBpbmZvcm1hdGlvbikgd291 bGQgYmUgaGVscGZ1bCBhcwo+IHdlbGwuCgpObywgdGhhdCdzIG5vdCB0aGUgY2FzZSwgdGhlcmUg aXMgbm8gc291cmNlIGNvZGUgZm9yIHRoZXNlIGZpbGVzLgoKPiAKPiAgIE5vdGU6IEkgdXNlZCBp Y2NkdW1wIGZyb20gZGViaWFuIHBhY2thZ2UgYXJneWxsIHRvIGdldCBwcm9maWxlIG1ldGFkYXRh Lgo+IChhcmd5bGwgcGFja2FnZSBpcyBodHRwczovL3BhY2thZ2VzLmRlYmlhbi5vcmcvc2lkL2Fy Z3lsbCApCj4gCj4ga3JpdGEvZGF0YS9wcm9maWxlcy9XaWRlR2FtdXQuaWNtIChObyBjb3B5cmln aHQpCj4ga3JpdGEvZGF0YS9wcm9maWxlcy9zUkdCLmljbSAoTm8gY29weXJpZ2h0KQo+IFBST1BP U0FMOiB2ZXJpZnkgYXV0aG9yc2hpcCBhbmQgbGljZW5zaW5nIG9mIHRoZXNlIGZpbGVzLgoKSXQn cyB0b28gbG9uZyBhZ28gdG8gYmUgYWJsZSB0byBkbyB0aGF0LiBJJ2xsIGp1c3QgcmVtb3ZlIHRo ZW0gYW5kIGNvdW50IG9uIHVzZXJzIGluc3RhbGxpbmcgcHJvZmlsZXMgdGhlbXNlbHZlcy4gVGhl eSBhcmUgYWxzbyBzbyBvbGQgdGhhdCB0aGV5IHByb2JhYmx5IGFyZW4ndCBtdWNoIGdvb2QsIGp1 ZGdpbmcgZnJvbSBFbGxlIFN0b25lJ3MgYmxvZzogaHR0cDovL25pbmVkZWdyZWVzYmVsb3cuY29t L3Bob3RvZ3JhcGh5L2FyZS15b3VyLXdvcmtpbmctc3BhY2UtcHJvZmlsZXMtd2VsbC1iZWhhdmVk Lmh0bWwKCj4gCj4ga3JpdGEvZGF0YS9wcm9maWxlcy9zY1JHQi5pY20gKMKpIEN5cmlsbGUgQmVy Z2VyKQo+ICAgVmVyaWZpZWQuIEZvciBpbnN0YW5jZTogCj4gICBodHRwOi8vY29tbWl0cy5rZGUu b3JnL2NhbGxpZ3JhL2Q5N2I3ZDZhNWU0NmMwNTdmNjY2MGNkNzY0MDliMmViNjI5NDM2MTIKPiBQ Uk9QT1NBTDogSWYgYXNzZXNzbWVudCBpcyBjb3JyZWN0LCBubyBmdXJ0aGVyIGFjdGlvbi4KPiAK PiBrcml0YS9kYXRhL3Byb2ZpbGVzL2tyaXRhMjVfbGNtcy1idWlsdGluLXNSR0JfZzEwMC10cnVl Z2FtbWEuaWNjIChObyBjb3B5cmlnaHQsIAo+IHVzZSBmcmVlbHkpCj4gICBJbmNsdWRlZCBpbiBo dHRwOi8vY29tbWl0cy5rZGUub3JnL2NhbGxpZ3JhL2IwZDgzYmJiMzViNSBtZW50aW9uaW5nIGFu IAo+IGVtYWlsLiBJcyB0aGF0IGVtYWlsIHB1YmxpYz8KPiBQUk9QT1NBTDogdmVyaWZ5IGF1dGhv cnNoaXAgYW5kIGxpY2Vuc2luZyBvZiB0aGlzIGZpbGUuCgpUaGUgY29tbWl0IGRvZXNuJ3QgbWVu dGlvbiBhbiBlbWFpbCwgaXQgZ2l2ZXMgY29udGFjdCBpbmZvcm1hdGlvbiBmb3IgdGhlIGF1dGhv ciBvZiB0aGUgcHJvZmlsZS4gRWxsZSBpcyB0aGUgYXV0aG9yLgoKPiAKPiBwbHVnaW5zL2NvbG9y ZW5naW5lcy9sY21zMi9jb2xvcnByb2ZpbGVzL2RhdGEvZm9ncmEyN2wuaWNtIChwdWJsaWMgZG9t YWluKQo+ICAgQWNjb3JkaW5nIHRvIG1ldGFkYXRhLCBwcm9maWxlIGlzIHB1YmxpYyBkb21haW4s IHlldCB0aGUgb3JpZ2luIGlzIG5lZWRlZCBmb3IgCj4gdmVyaWZpY2F0aW9uLgo+ICAgUmVmZXJl bmNlczoKPiAgIC0gQWRkaXRpb24gb2YgdGhlIHByb2ZpbGUgaW4ga29mZmljZToKPiBzdm46Ly9z dm4ua2RlLm9yZy9ob21lL2tkZS90cnVuay9rb2ZmaWNlL2xpYnMvcGlnbWVudC9jb2xvcnByb2Zp bGVzL2RhdGEvZm9ncmEyN2wuaWNtQDEwNjk0NTcKPiAgIC0gUmVuYW1lIG9mIHRoZSBzYW1lIHBy b2ZpbGUgaW4gc2NyaWJ1cyAod2hlcmUgaXQgaGFzIGJlZW4gcHJlc3VtYWJseSB0YWtlbikKPiAg ICAgc3ZuOi8vc2NyaWJ1cy5uZXQvdHJ1bmsvU2NyaWJ1c0A2NzUwCj4gUFJPUE9TQUwxOiB2ZXJp ZnkgYXV0aG9yc2hpcCBhbmQgbGljZW5zaW5nIG9mIHRoaXMgZmlsZS4KPiBQUk9QT1NBTDI6IGZv Z3JhMjdsIGlzIHN1cGVyc2VkZWQgYnkgZm9ncmEzOWwsIGFjY29yZGluZyB0byAKPiBodHRwOi8v YWx0dXJsLmNvbS96dHczNCAoc2hvdWxkIHRha2UgdG8gZm9ncmEub3JnIHdlYnNpdGUpLiBVc2lu ZyBmb2dyYTM5bCAKPiB3b3VsZCBsZWFkIHRvIHRoZSBzYW1lIHNpdHVhdGlvbi4gU2VlIGFsc28g aHR0cDovL3d3dy5jb2xvci5vcmcvZm9ncmEzOS54YWx0ZXIKPiBQUk9QT1NBTDM6IHN3aXRjaCB0 byBhIHZlcmlmaWVkIGZyZWUgcHJvZmlsZS4KClRoaXMgcHJvZmlsZSBoYXMgYmVlbiByZW1vdmVk IGluIGdpdCBtYXN0ZXIuCgo+IAo+IHBsdWdpbnMvY29sb3JlbmdpbmVzL2xjbXMyL2NvbG9ycHJv ZmlsZXMvZGF0YS9DTVkuaWNtIChjb3B5cmlnaHQgU3VuIAo+IE1pY3Jvc3lzdGVtcywgMTk5NikK PiAgIFRoaXMgaXMgdmVyeSBwcm9ibGVtYXRpYy4gRGViaWFuIHBhY2thZ2VzIGNhbid0IHNoaXAg dGhpcyBmaWxlIHdpdGhvdXQgCj4gY2xhcmlmeWluZyBsaWNlbnNpbmcgd2hpY2ggSSBjb3VsZG4n dCBmaW5kIGFueXdoZXJlLgo+ICAgQWRkZWQgaW4gCj4gc3ZuOi8vc3ZuLmtkZS5vcmcvaG9tZS9r ZGUvdHJ1bmsva29mZmljZS9rcml0YS9kYXRhL3Byb2ZpbGVzL0NNWS5pY21AMzY1ODAxCj4gUFJP UE9TQUwxOiB2ZXJpZnkgYXV0aG9yc2hpcCBhbmQgbGljZW5zaW5nIG9mIHRoaXMgZmlsZS4KPiBQ Uk9QT1NBTDI6IHN3aXRjaCB0byBhIHZlcmlmaWVkIGZyZWUgcHJvZmlsZS4gSGVyZSBpcyBhIHB1 YmxpYyBkb21haW4sIGdlbmVyaWMgCj4gQ01ZSzoKPiAgICAgICAgaHR0cDovL3d3dy5hcmd5bGxj bXMuY29tL2NteWsuaWNtIChzZWUgYWxzbyAKPiBodHRwOi8vc291cmNlZm9yZ2UubmV0L3AvbGNt cy9tYWlsbWFuL21lc3NhZ2UvMzI3NTU4ODQvICkKPiAKClRoaXMgcHJvZmlsZSBoYXMgYmVlbiBy ZXBsYWNlZCBpbiBnaXQgbWFzdGVyIGJ5IEdyZWFtZSdzIHByb2ZpbGUuCgpJbiBnZW5lcmFsLCBp dCdzIHByb2JhYmx5IGEgZ29vZCBpZGVhIGZvciBsaW51eCBkaXN0cmlidXRpb25zIHRvIG1ha2Ug S3JpdGEgZGVwZW5kIG9uIGFyZ3lsbCBhbmQgb3BlbmljYydzIHByb2ZpbGUgcGFja2FnZXMuIChJ J20gbm90IHN1cmUgaWYgdGhvc2UgYXJlIHNlcGFyYXRlIGluIERlYmlhbiwgSSdtIGFuIG9wZW5z dXNlIHVzZXIpLiBGb3IgbXkgd2luZG93cyBidWlsZHMsIEknbGwganVzdCBwYWNrYWdlIHRob3Nl IGFzIHdlbGwuCi0tIApCb3VkZXdpam4gUmVtcHQKaHR0cDovL3d3dy52YWxkeWFzLm9yZywgaHR0 cDovL3d3dy5rcml0YS5vcmcKX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fX18KY2FsbGlncmEtZGV2ZWwgbWFpbGluZyBsaXN0CmNhbGxpZ3JhLWRldmVsQGtkZS5v cmcKaHR0cHM6Ly9tYWlsLmtkZS5vcmcvbWFpbG1hbi9saXN0aW5mby9jYWxsaWdyYS1kZXZlbAo=