[DNSOP] Re: I-D Announcement: draft-teppo-corporate-authen ticated-dns-02 - Authenticated DNS Resolution for Enterprise
Benno Overeinder <[email protected]> Fri, 31 Jul 2026 08:42:30 +0200
| Newsgroups | gmane.ietf.dnsop |
|---|---|
| Message-ID | <[email protected]> |
RGVhciBUZXJyeSwgV0csDQoNCkFzIHdpdGggcHJldmlvdXMgZW1haWwgY29udmVyc2F0aW9ucyBb MSwgMl0sIHdoaWNoIGNvbnNpc3QgbGFyZ2VseSBvZiANCmNvbnRlbnQgZ2VuZXJhdGVkIGJ5IGFu IExMTSwgd2Ugd2lsbCBwbGFjZSB0aGUgYXV0aG9yIHVuZGVyIG1vZGVyYXRpb24uDQoNClsxXSBo dHRwczovL21haWxhcmNoaXZlLmlldGYub3JnL2FyY2gvbXNnL2Ruc29wL1dvRXZKVGF1ZHh0WS1G VG5oaFFWWDJTaFowWS8NClsyXSBodHRwczovL21haWxhcmNoaXZlLmlldGYub3JnL2FyY2gvbXNn L2Ruc29wLzJLS1hWeVhDZVdRTE8wYk1QZE1GQkYwdWgtTS8NCg0KLS0gQmVubm8NCmZvciB0aGUg RE5TT1AgQ2hhaXJzDQoNCk9uIDMwLzA3LzIwMjYgMjE6MzUsIFRlcnJ5IFRlcHBvIHdyb3RlOg0K PiBUZWQsDQo+IA0KPiBUaGFua3MuwqAgVGhpcyBpcyB3aGF0IGlzIHJlYWxseSBpcyBhbGwgYWJv dXQ6wqAgwqAiTm8gbW9yZSBhbm9ueW1vdXMgcXVlcnkgDQo+IG9uIGNvcnBvcmF0ZSBuZXR3b3Jr cy4iDQo+IA0KPiBJIGdvdCBjYXJyaWVkIGF3YXkgdGhlcmUgdHJ5aW5nIHRvIGV4cGxhaW4gZXZl cnl0aGluZyBhbGwgYXQgb25jZS7CoCBUaGUgDQo+IGNvcmUgcG9pbnQgaXMgdGhlIGZpcnN0IHNl bnRlbmNlLiAiTm8gbW9yZSBhbm9ueW1vdXMgcXVlcnkgb24gY29ycG9yYXRlIA0KPiBuZXR3b3Jr cy4iDQo+IC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KPiAqRnJvbToqIFRlcnJ5IFRlcHBvIDxUZXJyeVRlcHBv LlJGQ0BvdXRsb29rLmNvbT4NCj4gKlNlbnQ6KiBUaHVyc2RheSwgSnVseSAzMCwgMjAyNiAxOjUy IFBNDQo+ICpUbzoqIFRlZCBMZW1vbiA8bWVsbG9uQGZ1Z3VlLmNvbT4NCj4gKkNjOiogT25kxZll aiBTdXLDvSA8b25kcmVqQHN1cnkub3JnPjsgZG5zb3BAaWV0Zi5vcmcgPGRuc29wQGlldGYub3Jn Pg0KPiAqU3ViamVjdDoqIFJlOiBbRE5TT1BdIEktRCBBbm5vdW5jZW1lbnQ6IGRyYWZ0LXRlcHBv LWNvcnBvcmF0ZS0gDQo+IGF1dGhlbnRpY2F0ZWQtZG5zLTAyIC0gQXV0aGVudGljYXRlZCBETlMg UmVzb2x1dGlvbiBmb3IgRW50ZXJwcmlzZQ0KPiBUZWQsDQo+IA0KPiBUaGFua3MuwqAgVGhpcyBp cyB3aGF0IGlzIHJlYWxseSBpcyBhbGwgYWJvdXQ6wqAgwqAiTm8gbW9yZSBhbm9ueW1vdXMgcXVl cnkgDQo+IG9uIGNvcnBvcmF0ZSBuZXR3b3JrcyINCj4gDQo+IEJhc2ljYWxseSwgYW55IHBlcnNv biBvbiB5b3VyIG5ldHdvcmsgdGhhdCBnZXRzIGFuIElQIGFkZHJlc3MgY2FuIHF1ZXJ5IA0KPiBE TlMgdmlhIEFub255bW91cyBxdWVyeSB0aGUgYmFja2JvbmUgb2YgdGhlIEludGVybmV0LsKgIEJl Y2F1c2UgdW5saWtlIA0KPiB0aGUgSW50ZXJuZXQgaW50ZXJuYWwgY29ycG9yYXRlIG5ldHdvcmtz IG5lZWQgYSB3YXkgdG8gcmVzdHJpY3Qgd2hvIGNhbiANCj4gcXVlcnkgd2hhdCByZWNvcmRzLg0K PiANCj4gVGhlcmUgYXJlIHdheXMgb3V0c2lkZSBvZiB0aGlzIGRyYWZ0IGJ1dCB0aGV5IG1vcmUg Y29tcGxleCB0aGFuIHBlb3BsZSANCj4gcmVhbGl6ZSBhbmQgdGhleSBvcGVuIHNhbWUgcHJvYmxl bSBpbiBhbGwgcmVhbGl0eS7CoCBTbyB3aGF0IGRvIGNvbXBhbmllcyANCj4gZG8uwqAgTm9ybWFs bHksIHRoZXkgZG8gbm90IG1ha2UgdGhlIEROUyByZWNvcmRzLsKgIFRoZXkgcmVseSBvbiANCj4g ZG9jdW1lbnRhdGlvbiBhbmQgb3RoZXIgdG9vbGluZyBsaWtlIE5NUyB3aXRoIG5hbWVzIG5vdCBp biBETlMuwqAgU28gDQo+IHNvbWV0aW1lcyBpdCB0aGUgbG9jYWwgaG9zdCBvZiBkZXZpY2Ugc29t ZXRpbWVzIG5vdCB0aGUgbG9jYWwgaG9zdCBuYW1lIA0KPiB0aGF0IGluIHRoZSBtYW5hZ2VtZW50 IHByb3RvY29scy4gSXQgY2FuIGdldCBjb25mdXNpbmcuDQo+IA0KPiBBbGwgdGhpcyB3YXMgZmlu ZSBhbmQgZGFuZHkgd2l0aCBJcHY0IGJlY2F1c2Ugd2UgY291bGQgYWxsIG1lbW9yeSB0aGVtLCAN Cj4gdG8gYW4gZXh0ZW50LsKgIMKgQnV0IHdpdGggSVB2NiB0aGUgYWRkcmVzcyBqdXN0IGJlY29t ZSBub3QgcG9zc2libGUgdG8gDQo+IG1lbW9yaXplIGl0IGFsbC7CoCBTbyB3ZSBoYXZlIHRoaXMg ZGlzam9pbnRlZCBzb2x1dGlvbiB0aGUgTk1TIGhhcyBhIG5hbWUgDQo+IHRoYXQgY2FudCBiZSBw aW5nZWQuwqAgSWYgeW91IGxvb2sgYXQgdGhlIElQQU0gZXhwb3J0IG9yIHRoZSANCj4gZG9jdW1l bnRhdGlvbiBvciB0aGUgYWRkcmVzcyBpbiB0aGUgTk1TIHlvdSBvayB0byBmaW5kIHRoZSBhZGRy ZXNzLsKgIEJ1dCANCj4gb3RoZXJ3aXNlIHlvdXIgc2NyZXdlZC4NCj4gDQo+IEkgbmV2ZXIgZm9y Z2V0IHRoZSBmaXJzdMKgIHRpbWUgZmFpbGVkIFBFTiB0ZXN0IGJlY2F1c2UgdGhpcyBwcm9ibGVt IGl0IA0KPiB3YXMgd2F5IGJhY2sgaW4gZWFybHkgMjAwMCdzLsKgICJXZSBjYW4gbWFwIHlvdXIg ZW50aXJlIG5ldHdvcmsgDQo+IGluZnJhc3RydWN0dXJlIHdpdGggbm90aGluZyBtb3JlIHRoZSBE TlMgbG9va3VwIHRvb2wuIsKgIFRvZGF5IHdlIGRvbid0IA0KPiBtYWtlIHRoZXNlIGVudHJpZXMg YmVjYXVzZSBvZiB0aGUgc2FtZSBhbm9ueW1vdXMgcXVlcnkgdGhhdCBpcyByZXF1aXJlZCANCj4g b24gdGhlIEludGVybmV0LsKgIFdlIGNhbm5vdCBnZXQgcmlkIG9uIHRoYXQgb24gdGhlIEludGVy bmV0IGFub255bW91cyANCj4gcXVlcnkgaGFzIHRvIGV4aXN0IHRoZXJlLsKgIEJ1dCBvbiB0aGUg Y29ycG9yYXRlIHNpZGUgaXRzIGEgZGVhdGggDQo+IHNlbnRlbmNlIHRvIEROUy7CoCBUaGUgcnVs ZSBpcyBuZXZlciBwdXQgYW55dGhpbmcgaW4gRE5TIHlvdSBkb24ndCB3YW50IA0KPiBldmVyeW9u ZSB0byBrbm93LsKgIFdlIGhpZGUgdGhlbSBiZWhpbmQgZmlyZXdhbGwgYW5kIHNwZWNpYWwgDQo+ IHNlZ21lbnRhdGlvbnMgYWxsIGtpbmQgb2YgdGhpbmdzIHRvIGNvbXBlbnNhdGUgZm9yIHRoZSBm YWN0IHRoYXQgDQo+IGFub255bW91cyBxdWVyeSBpbiBjb3Jwb3JhdGUgcHJpdmF0ZSBuZXR3b3Jr IGVudmlyb25tZW50cyBpcyBiYWQuDQo+IA0KPiBUaGlzIGRyYWZ0IHNheXMgaGVyZSBpcyBhIHdh eSwgd2UgY2FuIGhhdmUgcmVzb2x2YWJsZSBuYW1lcyB0byBkZXZpY2VzIA0KPiBhbmQgbm90IGNy ZWF0ZSBzZWN1cml0eSBwcm9ibGVtcy7CoCBZZXQgYWxsb3cgdGhlIEludGVybmV0IHRvIHN0YXkg DQo+IGV4YWN0bHkgYXMgaXQgaXMuDQo+IA0KPiBFYXhtcGxlOg0KPiBZb3UgaGF2ZSBhIDUwMCBy b3V0ZXJzIGFsbCBpcHY2IGFkZHJlc3MuwqAgTmFtaW5nIGNvbnZlcnNpb24gYmVjb21lIGluIA0K PiBwcmV0dHkgaGFuZHkgdG8gaGVscCBmaWd1cmUgb3V0IHdoYXQncyBnb2luZyBvbi7CoCDCoFdo YXQgdGhlIElQIGFkZHJlc3MgDQo+IG9uIHRoZSByb3V0ZXIgaW4gcGh4LCBubyBvbmUgcmVhbGx5 IGtub3dzIGFueW1vcmUuwqAgQmVjYXVzZSB3ZSBjYW5ub3QgDQo+IG1lbW9yaXplIGFsbCB0aGUg SXB2NiBhZGRyZXNzIGFuZCBjb25zdGFudGx5IGhhdmUgYWNjZXNzIHRvIGFuIE5NUyB0byANCj4g ZmluZCB0aGUgSVAuwqAgwqBJbWFnaW5lIHRoZSBzc2ggb3IgUEtJIGtleSBvbiB0aGUgcm91dGVy IGFjdHVhbGx5IA0KPiByZXNvbHZpbmcgdG8gbmFtZSB0aGF0IGNhbiBiZSBsb29rZWQgdXAuwqAg VGhhbmsgd2lsbCBuZXZlciBoYXBwZW4gdGhlIA0KPiB3YXkgaXQgaXMgbm93LsKgIEV2ZXJ5dGhp bmfCoCBlbHNlIGV4YW1wbGUgREhDUCBpdHNlbGYgbm93IGhhdmUgZm9ybXMgb2YgDQo+IGF1dGhl bnRpY2F0aW9uLsKgIEV2ZXJ5dGhpbmcgYXJvdW5kIHF1ZXJ5IGhhdmUgZm9ybXMgYXV0aGVudGlj YXRpb24uICANCj4gSnVzdCBub3QgdGhlIHF1ZXJ5Lg0KPiANCj4gVGhlIGRyYWZ0IHNpbXBseSBz YXlzIHRoaXMgaXMgaG93IHdlIGdldCB0byBoYXZlIG5hbWVzIG9uIGRldmljZXMgdGhhdCANCj4g cmVzb2x2ZSB2aWEgRE5TIGZvciBsb29rZWQgdXAgd2l0aG91dCBzaG93aW5nIHlvdSBlbnRpcmUg aW5mcmFzdHJ1Y3R1cmUgDQo+IHRvIGV2ZXJ5b25lIHdpdGggSVAgYWRkcmVzcy4NCj4gDQo+IFNv cnJ5IGV2ZXJ5IHRoaXMgaXMgbG9uZyBUZWQuwqAgSSBiZWVuIHdvcmtpbmcgdGhpcyBmb3IgYSB2 ZXJ5IGxvbmcgdGltZSANCj4gbm93LsKgIEkga2luZCBlbW90aW9uYWwgYWJvdXQgaXQsIGJlY2F1 c2UgZm9yIHllYXJzIEkgd2FzIG5vdCBnb2luZyB0byANCj4gc3VibWl0LsKgIEV2ZXJ5dGltZSBJ IHdyb3RlIGl0IEkgY291bGQgbmV2ZXIgZmluZCBhbGwgdGhlIGNvcnJlY3Qgd29yZGluZyANCj4g cmVmZW5jZXMgYW5kIGNpdGluZ3MuwqAgTGFzdCBGcmlkYXkgd2FzIHRoZSBmaW5hbCBraWNrZXIs IHdoZW4gd2hlbiANCj4gdGFsa2luZyBhIGxvY2FsIG5ldHdvcmsgYWRtaW4gYWJvdXQgaXQgYW5k IHRoZXkgc2FpZCAieW91IHJlYWxseSBzaG91bGQgDQo+IHN1Ym1pdCBpdCwgaXRzIGxvZ2ljYWwu Ig0KPiANCj4gU28gdGhlcmUgeW91IGdvIFRlZC7CoCBTdXJlIHRoZXJlIGFyZSBydW4gb24gc2Vu dGVuY2VzIGV0Yy7CoCBJdCBpcyB2ZXJ5IA0KPiBlbW90aW9uYWwgd2hpY2ggaXMgbm90IHByb2Zl c3Npb25hbCwgYnV0IEkgdGhpbmsgdGhhdCB3aGF0IHlvdSBhc2tlZCBmb3IgDQo+IHJpZ2h0LsKg IEkganVzdCBkdW1wZWQgSSBub3Qgc3VyZSB3aGF0IEkganVzdCB0eXBlZCBtYWtlIHNlbmNlIGJ1 dCBoZXJlIA0KPiB5b3UgZ28uwqAgUGxlYXNlIGRvbid0IGdldCBtYWQuDQo+IA0KPiBSZWdhcmRz LA0KPiANCj4gVGVycnkgVGVwcG8NCj4gDQo+IA0KPiANCj4gDQo+IC0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0K PiAqRnJvbToqIFRlZCBMZW1vbiA8bWVsbG9uQGZ1Z3VlLmNvbT4NCj4gKlNlbnQ6KiBUaHVyc2Rh eSwgSnVseSAzMCwgMjAyNiAxMToxOSBBTQ0KPiAqVG86KiBUZXJyeSBUZXBwbyA8VGVycnlUZXBw by5SRkNAb3V0bG9vay5jb20+DQo+ICpDYzoqIE9uZMWZZWogU3Vyw70gPG9uZHJlakBzdXJ5Lm9y Zz47IGRuc29wQGlldGYub3JnIDxkbnNvcEBpZXRmLm9yZz4NCj4gKlN1YmplY3Q6KiBSZTogW0RO U09QXSBJLUQgQW5ub3VuY2VtZW50OiBkcmFmdC10ZXBwby1jb3Jwb3JhdGUtIA0KPiBhdXRoZW50 aWNhdGVkLWRucy0wMiAtIEF1dGhlbnRpY2F0ZWQgRE5TIFJlc29sdXRpb24gZm9yIEVudGVycHJp c2UNCj4gDQo+IFRlcnJ5LCBJJ20ganVzdCBhIHJhbmRvbSBwYXJ0aWNpcGFudCBoZXJlLCBzbyB0 YWtlIHRoaXMgd2l0aCBhIGdyYWluIG9mIA0KPiBzYWx0LCBidXQgSSdtIG5vdCBnb2luZyB0byBy ZWFkIHRoZSBnaWFudCBwaWxlIG9mIHNsb3AgeW91IGp1c3QgZHVtcGVkIA0KPiBvbiB1cy4gSWYg eW91IHdhbnQgcGVvcGxlIHRvIHBheSBhdHRlbnRpb24gdG8gd2hhdCB5b3UgaGF2ZSB0byBzYXks IGJlIA0KPiBicmllZiBhbmQgc3VjY2luY3QuIERvbid0IHNlbmQgdXMgdGhlIG91dHB1dCBvZiBh biBMTE3igJRldmVuIGlmIHlvdSB1c2UgDQo+IHRoZSBMTE0sIHJlYWQgaXRzIG91dHB1dCB5b3Vy c2VsZiBhbmQgc2VuZCB1cyB0aGUgcG9pbnRzIHlvdSBjb25zaWRlciANCj4gaW1wb3J0YW50LCBp biB5b3VyIG93biB3b3Jkcy4gSWYgdGhlc2UgZmVlbHMgbGlrZSBub3QgYSBnb29kIHVzZSBvZiB5 b3VyIA0KPiB0aW1lLCB0aGF0J3MgZmluZSwgYnV0IHRoYXQgc2hvdWxkIHRlbGwgeW91IHNvbWV0 aGluZyBpbXBvcnRhbnQuIFNheSANCj4gdGhlcmUgYXJlIDEwMCBwZW9wbGUgcmVhZGluZyB0aGlz IG1haWxpbmcgbGlzdCAoYSBtYWRlIHVwIG51bWJlcikuIElmIA0KPiBpdCdzIDF4IG5vdCBhIGdv b2QgdXNlIG9mIHRpbWUgZm9yIHlvdSB0byByZWFkIGFuZCBzdW1tYXJpemUsIGl0J3MgMTAweCAN Cj4gbm90IGEgZ29vZCB1c2Ugb2YgdGltZSBmb3IgdXMgdG8gcmVhZCBhbmQgdHJ5IHRvIGdsZWFu IGZyb20gdGhlIHNsb3AgDQo+IHdoYXQgaXMgYWN0dWFsbHkgdXNlZnVsLCBiZWNhdXNlIHlvdSBo YXZlIGNvbnRleHQgd2UgZG9uJ3QgaGF2ZSwgc28gaXQncyANCj4gZXZlbiBoYXJkZXIgZm9yIHVz IHRoYW4gaXQgaXMgZm9yIHlvdS4NCj4gDQo+ICAgICBPbiBKdWwgMzAsIDIwMjYsIGF0IDE4OjAw LCBUZXJyeSBUZXBwbyA8VGVycnlUZXBwby5SRkNAb3V0bG9vay5jb20+DQo+ICAgICB3cm90ZToN Cj4gDQo+ICAgICBIaSBPbmRyZWosDQo+IA0KPiAgICAgVGhhbmtzIGZvciB0aGUgcXVlc3Rpb24u DQo+IA0KPiAgICAgU2hvcnQgYW5zd2VyOiBZZXMuIFRoZSBjb3JlIGNvbmNlcHQsIHByb2JsZW0g c3RhdGVtZW50LA0KPiAgICAgYXJjaGl0ZWN0dXJlLCBhbmQgYWxsIHRlY2huaWNhbCBkZWNpc2lv bnMgaW4gdGhlIGRyYWZ0IGFyZSBteSB3b3JrDQo+ICAgICBhbmQgcmVmbGVjdCBteSBoYW5kc+KA kW9uIGV4cGVyaWVuY2UuIEkgYmVnYW4gZGlhZ3JhbW1pbmcgYW5kDQo+ICAgICBkZXZlbG9waW5n IHRoaXMgaWRlYSBpbiAyMDIzIGFmdGVyIHJlcGVhdGVkbHkgb2JzZXJ2aW5nIEROUyBub3QNCj4g ICAgIGJlaW5nIHVzZWQgYmVjYXVzZSBvZiB0b3BvbG9neSBleHBvc3VyZSBpc3N1ZXMgZHVyaW5n IHBlbmV0cmF0aW9uDQo+ICAgICB0ZXN0cyBhbmQgc2VjdXJpdHkgcmVhc29uczsgbXkgZmlyc3Qg bm90YWJsZSBlbmNvdW50ZXIgd2l0aCB0aGlzDQo+ICAgICBpc3N1ZSB3YXMgZHVyaW5nIGEgcGVu ZXRyYXRpb24gdGVzdCBpbiB0aGUgZWFybHkgMjAwMCdzLiDCoCBJIHdhcw0KPiAgICAgdGFsa2lu ZyB3aXRoIGEgbmV0d29yayBhZG1pbiBhdCBhIGNvbW11bml0eSBldmVudCBsYXN0IEZyaWRheTsN Cj4gICAgIHdoZXJlaW4sIHRoZXkgY29uZmlybWVkIHRoZSBzYW1lIHJlYWxpdHk6IGludGVybmFs IEROUyBuYW1pbmcgaXMNCj4gICAgIGF2b2lkZWQgZm9yIGZlYXIgb2YgZXhwb3NpbmcgbmV0d29y ayB0b3BvbG9neSwgYW5kIHRlYW1zIHVzZQ0KPiAgICAgYWx0ZXJuYXRpdmUgdG9vbGluZyBmb3Ig b3BlcmF0aW9uYWwgbmVlZHMgbGlrZSBJVElMIGludmVudG9yeQ0KPiAgICAgcmVwb3J0aW5nIGFu ZCBzcHJlYWRzaGVldHMuIFRoZXNlIGFyZSB0aGUgdHlwZXMgb2YgZmluZGluZ3Mgb3Zlcg0KPiAg ICAgZGVjYWRlcyBkaXJlY3RseSBpbmZvcm1lZCB0aGUgcHJvYmxlbSBmcmFtaW5nIGFuZCBwcm9w b3NlZCBkZXNpZ24uDQo+IA0KPiAgICAgSSB1c2VkIG1hbnkgQUnigJFhc3Npc3RlZCB0b29scyBk dXJpbmcgZHJhZnRpbmcgZm9yIHNldmVyYWwgcHVycG9zZXMsDQo+ICAgICBJIGRpZCBub3QgdHJh Y2sgd2hhdCBBSSBkaWQgd2hhdCBzZW50ZW5jZSBhcyBpdCBhd2F5cyBhIGNyb3NzDQo+ICAgICBt dWx0aXBsZXMsIHlldCBJIHdhbnQgdG8gYmUgdHJhbnNwYXJlbnQgYWJvdXQgd2hhdCB0aGV5IGRp ZCBhbmQgd2hhdA0KPiAgICAgSSBkaWQ6DQo+IA0KPiAgICAgMSkgKipQcmlvcuKAkWFydCBkaXNj b3ZlcnkgYW5kIGxpdGVyYXR1cmUgc2VhcmNoKioNCj4gICAgICDCoCDCoC0gSSB1c2VkIEFJ4oCR YXNzaXN0ZWQgbGl0ZXJhdHVyZSBzZWFyY2ggdG8gc3VyZmFjZSBwcmlvciBhcnQgYW5kDQo+ICAg ICBSRkMgcmVmZXJlbmNlcy4gVGhlIHRvb2wocykgc3VyZmFjZWQgdGhlIHZhc3QgbWFqb3JpdHkg b2YgaXRlbXMgaW4NCj4gICAgIHRoZSBwcmlvcuKAkWFydCBsaXN0IChyb3VnaGx5IDk5JSk7IEkg cmV2aWV3ZWQsIGN1cmF0ZWQsIGFuZCBlZGl0ZWQNCj4gICAgIHRoYXQgbGlzdCBhbmQgYWRkZWQg b3IgcmVtb3ZlZCBpdGVtcyBiYXNlZCBvbiBteSBkb21haW4ga25vd2xlZGdlLg0KPiAgICAgV2l0 aG91dCB0aGF0IGFzc2lzdGFuY2UgdGhlIHByaW9y4oCRYXJ0IGxpc3Qgd291bGQgbm90IGJlIGFz IGNvbXBsZXRlDQo+ICAgICBhcyBpdCBpcyB0b2RheS4NCj4gDQo+ICAgICAyKSAqKlJlZmVyZW5j ZSB2ZXJpZmljYXRpb24gYW5kIFJGQyB2YWxpZGF0aW9uIHN1cHBvcnQqKg0KPiAgICAgIMKgIMKg LSBJIHVzZWQgbXVsdGlwbGUgQUkgdG9vbHMgdG8gaGVscCBhc3NlbWJsZSByZWZlcmVuY2VzIGFu ZA0KPiAgICAgY2l0YXRpb25zLCA5OSUgdGhlc2Ugd291bGQgbm90IGV4aXN0IHdpdGhvdXQgdGhl bSwNCj4gICAgICDCoCDCoC0gSSBhbHNvIHVzZWQgSUVURiBhdXRob3JpbmcvdmFsaWRhdGlvbiB0 b29saW5nIChpbmNsdWRpbmcgdGhlDQo+ICAgICBhdXRob3JpbmcgdG9vbHMgYW5kIHRoZSB2YWxp ZGF0b3IgY2hlY2tzKS7CoCBJIGl0ZXJhdGVkIHRoZSBkcmFmdA0KPiAgICAgdW50aWwgaXQgcGFz c2VkIHZhbGlkYXRpb24sIHNwZW5kaW5nIHNldmVyYWwgZGF5cyAoYWxtb3N0IGEgbW9udGggaW4N Cj4gICAgIHRvdGFsKSBhZGRyZXNzaW5nIHZhbGlkYXRvciBmbGFncyBhbmQgZW5zdXJpbmcgdGhl IGRyYWZ0IG1ldCBSRkMNCj4gICAgIGZvcm1hdHRpbmcgYW5kIHJlZmVyZW5jZSByZXF1aXJlbWVu dHMuwqAgSSBzdXJlIHRoZXJlIGFyZSB0eXBvcyB0aGVyZQ0KPiAgICAgaGFzIHRvIGJlLg0KPiAN Cj4gICAgIDMpICoqV29yZGluZywgc3RydWN0dXJlLCBhbmQgZWRpdG9yaWFsIGFzc2lzdGFuY2Uq Kg0KPiAgICAgIMKgIMKgLSBJIHByb3ZpZGVkIHRoZSB0ZWNobmljYWwgbmFycmF0aXZlLCBkaWFn cmFtcywgYW5kDQo+ICAgICBhcmNoaXRlY3R1cmUuIEFJIGFzc2lzdGFuY2UgaGVscGVkIHRyYW5z bGF0ZSB0aGF0IG5hcnJhdGl2ZSBpbnRvIFJGQw0KPiAgICAgc3RydWN0dXJlIGFuZCBjb25jaXNl IHdvcmRpbmcgZmxhZ2dpbmcgd2hlbiBJIHdhcyBub3QgcHJlY2lzZQ0KPiAgICAgZW5vdWdoLsKg IEV2ZXJ5IEFJIHN1Z2dlc3Rpb24gd2FzIHJldmlld2VkOyBJIHJlbW92ZWQgb3IgbW9kaWZpZWQN Cj4gICAgIHN1Z2dlc3Rpb25zIGFzIEkgZmVsdCBhcHByb3ByaWF0ZSB0byBlbnN1cmVkIHRlY2hu aWNhbCBhY2N1cmFjeS4NCj4gDQo+ICAgICA0KSAqKlNhbml0eSBjaGVja3MgLyByZWFsaXR5IGNo ZWNrcyoqDQo+ICAgICAgwqAgwqAtIEkgdXNlZCBtdWx0aXBsZSBBSeKAkWFzc2lzdGVkIHRvb2xz IGFzIGluZGVwZW5kZW50IHNhbml0eSBjaGVja3MNCj4gICAgIHRvIGNvbmZpcm0gcmVmZXJlbmNl cywgc3VyZmFjZSBtaXNzaW5nIGl0ZW1zLCBhbmQgZmxhZyBwb3RlbnRpYWwNCj4gICAgIG92ZXJs YXBzIHdpdGggZXhpc3Rpbmcgd29yay4gVGhlc2UgdG9vbHMgYWN0ZWQgYXMgZmFzdCBzZWFyY2gg YW5kDQo+ICAgICB2ZXJpZmljYXRpb24gYWlkczsgdGhlIGZpbmFsIGRlY2lzaW9ucyBhYm91dCBp bmNsdXNpb24sIGV4Y2x1c2lvbiwNCj4gICAgIGFuZCBpbnRlcnByZXRhdGlvbiB3ZXJlIG1hZGUg YnkgbWUuDQo+IA0KPiAgICAgNSkgwqAqKkZ1bmRhbWVudGFsIHVzZSBvZiBBSSoqDQo+ICAgICAg wqAgwqAtIE5vIG9uZSBBSSBpbiBwYXJ0aWN1bGFyIGNyZWF0ZWQgZW50aXJlIHNlY3Rpb25zIGFs b25lLiDCoEkNCj4gICAgIGFsd2F5cyBmZWVkIGV2ZXJ5dGhpbmcgYW4gQUkgc2FpZCB0byB0aGUg b3RoZXIgQUkncyBhbmQgYXNrZWQgaWYgaXQNCj4gICAgIHdpdGggd2FzIHRydXRoZnVsIGFuZCBj b3JyZWN0IG11bHRpcGxlIHRpbWVzLiDCoFRoZXkgZG8gbm90IGFncmVlIGFsbA0KPiAgICAgdGlt ZS7CoCBUaHVzLCBJIGhhZCB0byBmaWd1cmUgb3V0IHdoYXQgdG8gYWN0dWFsbHkgc2F5IGluIHRo ZSBlbmQ7wqAgSQ0KPiAgICAgbWF5IGhhdmUgbWFkZSBtaXN0YWtlcyBpbiBkb2luZyB0aGlzIGJ1 dCBpdCBpcyB3aGF0IGl0IGlzLiDCoEkgbWF5DQo+ICAgICBoYXZlIHRha2VuIHRoZSBmaW5hbCBz ZW50ZW5jZSBmcm9tIGFuIEFJIGJ1dCBldmVyeXRoaW5nIHdlbnQgdGhyb3VnaA0KPiAgICAgbXVs dGlwbGVzLiDCoFRoZXkgaGVscGVkIG1lIHdpdGggZ3JhbW1hciwgc2VudGVuY2Ugc3RydWN0dXJl LA0KPiAgICAgc3BlbGxpbmcgYW5kIHdoYXQgZG9lcyBteSBzZW50ZW5jZSBhY3R1YWxseSBzYXkg b3IgbWVhbi4gwqBUaGV5DQo+ICAgICBoZWxwZWQgb3JnYW5pemUgdG8gbWFrZSBzdXJlIEkgZGlk IG5vdCBtaXNzIHNlY3Rpb25zLiDCoElmIGFsbCAzDQo+ICAgICB0b29scyBzYWlkIEkgbmVlZCBh IHNlY3Rpb24sIEkgd291bGQgZGViYXRlIHdpdGggbXlzZWxmIHNob3VsZCBpdCBiZQ0KPiAgICAg dGhlcmUuIMKgRXhhbXBsZSBhbGwgdGhyZWUgQUkncyB3YW50IG11bHRpcGxlIHNlY3Rpb25zIG9u IGF1ZGl0IGxvZ3MsDQo+ICAgICBidXQgSSBjb25zaWRlcmVkIHRoYXQgb3BlcmF0aW9uYWwgbm90 IHByb3RvY29sLiBJIGxlZnQgc29tZSBtZW50aW9ucw0KPiAgICAgb2YgdGhlIGF1ZGl0IGxvZ2dp bmcgaW4sIHNvIHBlb3BsZSB1bmRlcnN0YW5kIGl0IHNob3VsZCBleGlzdCwgYnV0DQo+ICAgICBy ZW1vdmVkIGFsbCB0aGUgc2VjdGlvbnMgdGhhdCBkZXNjcmliZSBpdCBpbiBkZXRhaWwuwqAgSSBj b3VsZCByZW1vdmUNCj4gICAgIGFsbCBtZW50aW9uIG9mIGF1ZGl0IGxvZ2dpbmcuwqAgVGhlcmUg YXJlIHNvbWUgTVVTVCBJIG5vdCAxMDAlIHN1cmUNCj4gICAgIGFib3V0LCBhbmQgdmVyeSBvcGVu IHRvIGRlYmF0ZSBvbiB0aGVtLsKgIEV4YW1wbGU6IFNlZSB0aGlzIGlzIHdoYXQNCj4gICAgIGl0 IGxvb2tzIGxpa2UgaWYgSSBub3QgaGF2ZSBoZWxwIGdyYW1tYXIuDQo+IA0KPiAgICAgT25lIG1v cmUgbm90ZSBvbiB0b29saW5nOiBUbyByZWl0ZXJhdGUsIEkgdXNlZCBzZXZlcmFsIGRpZmZlcmVu dCBBSQ0KPiAgICAgdG9vbHMgYW5kIGRpZCBub3Qga2VlcCBhIHBlcuKAkXN1Z2dlc3Rpb24gYXVk aXQgbWFwcGluZyBlYWNoIG91dHB1dCB0bw0KPiAgICAgYSBzcGVjaWZpYyB0b29sLCBzbyBJIGNh bm5vdCBwcmVjaXNlbHkgYXR0cmlidXRlIGV2ZXJ5IHN1Z2dlc3RlZA0KPiAgICAgZWRpdCBvciBy ZWZlcmVuY2UgdG8gYSBwYXJ0aWN1bGFyIHRvb2wgYWZ0ZXIgdGhlIGZhY3QuIEFsbCBzdXJmYWNl ZA0KPiAgICAgaXRlbXMgd2VyZSByZXZpZXdlZCBhbmQgY3VyYXRlZCBieSB0aGUgbWUuIElmIHRo ZSBXRyByZXF1aXJlcyBhDQo+ICAgICBwcmVjaXNlIG1hcHBpbmcgb3IgdGhlIG5hbWVzIG9mIHRo ZSBzcGVjaWZpYyB0b29scyB1c2VkLCBJIHdpbGwNCj4gICAgIHByb3ZpZGUgdGhhdCBpbiB0aGUg ZGlzY2xvc3VyZS4NCj4gDQo+ICAgICAqKlRlY2huaWNhbCBzY29wZSBub3RlIChicmllZik6Kiog dGhpcyBkZXNpZ24gZW5mb3JjZXMNCj4gICAgIGF1dGhlbnRpY2F0aW9uIGF0IHRoZSBETlMgcXVl cnkgbGV2ZWwgd2l0aGluIGEgbWFuYWdlZCB0cnVzdCBkb21haW4NCj4gICAgIGJ5IGJpbmRpbmcg Y2xpZW50IGlkZW50aXR5IHRvIHF1ZXJpZXMgYW5kIG9wZXJhdGluZyByZXNvbHZlcnMgdW5kZXIN Cj4gICAgIGVudGVycHJpc2UgY29udHJvbC4gQmVjYXVzZSBpdCByZXF1aXJlcyBwZXLigJFjbGll bnQgY3JlZGVudGlhbHMsIGENCj4gICAgIG1hbmFnZWQgaWRlbnRpdHkgZmFicmljLCBhbmQgdGln aHQgb3BlcmF0aW9uYWwgY29udHJvbCBvdmVyIGNhY2hpbmcNCj4gICAgIGFuZCByZWN1cnNpb24s IGl0IGlzIGludGVuZGVkIGZvciBlbnRlcnByaXNlL2ludGVybmFsIGRlcGxveW1lbnRzDQo+ICAg ICBhbmQgbm90IGZvciB0aGUgcHVibGljIEludGVybmV0Lg0KPiANCj4gICAgIElmIHRoZSBXRyBw cmVmZXJzIGEgZm9ybWFsIGRpc2Nsb3N1cmUsIEkgd2lsbCBhZGQgYSDigJxUb29scyBhbmQNCj4g ICAgIENvbnRyaWJ1dGlvbnPigJ0gc2VjdGlvbiB0byB0aGUgZHJhZnQgdGhhdCBpbmNsdWRlczoN Cj4gICAgIC0gYSBwZXLigJFzZWN0aW9uIHByb3ZlbmFuY2UgdGFibGUgaW5kaWNhdGluZyB3aGVy ZSBBSSBhc3Npc3RhbmNlIHdhcw0KPiAgICAgdXNlZCBhbmQgd2hvIHJldmlld2VkIGVhY2ggc2Vj dGlvbiwgYW5kDQo+ICAgICAtIGFuIGFubm90YXRlZCBsaXN0IG9mIHJlZmVyZW5jZXMgc2hvd2lu ZyB3aGljaCBpdGVtcyB3ZXJlIHN1cmZhY2VkDQo+ICAgICBieSB0aGUgQUkncyBhbmQgd2hpY2gg d2VyZSBhZGRlZCBvciByZW1vdmVkIGJ5IHRoZSBhdXRob3IuDQo+IA0KPiAgICAgSSBjYW4gcG9z dCBhbiB1cGRhdGVkIGRyYWZ0IHdpdGggdGhhdCBkaXNjbG9zdXJlIGJ5ICoqRU9EIFR1ZXNkYXks DQo+ICAgICAyMDI24oCRMDjigJExNCoqIChvciBzb29uZXIgaWYgdGhlIFdHIHByZWZlcnMpLiBJ ZiB0aGUgV0cgcmVxdWlyZXMgdGhlDQo+ICAgICBuYW1lcyBvZiB0aGUgc3BlY2lmaWMgdG9vbHMg dXNlZCwgSSB3aWxsIHByb3ZpZGUgdGhlbSBpbiB0aGUNCj4gICAgIGRpc2Nsb3N1cmU7IG90aGVy d2lzZSBJ4oCZdmUgZGVzY3JpYmVkIHRoZSByb2xlIHRoZSB0b29scyBwbGF5ZWQgYW5kDQo+ICAg ICB0aGUgaHVtYW4gcmV2aWV3IHByb2Nlc3MuDQo+IA0KPiAgICAgSWYgeW91IG9yIHRoZSBXRyB3 b3VsZCBsaWtlIHRoZSBkZXRhaWxlZCBsaXN0IG9mIHJlZmVyZW5jZXMgdGhlIEFJDQo+ICAgICBz dXJmYWNlZCAob3IgYSBzZWN0aW9u4oCRYnnigJFzZWN0aW9uIGJyZWFrZG93biksIEkgY2FuIHBy b3ZpZGUgdGhhdCBhcw0KPiAgICAgd2VsbC4NCj4gDQo+ICAgICBSZWdhcmRzLA0KPiAgICAgVGVy cnkgVGVwcG8NCj4gDQo+ICAgICBJVCBpcyB3aGF0IHdlIGRvIGJlY2F1c2UgSVQgaXMgZnVuLg0K PiANCj4gDQo+ICAgICAtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0NCj4gICAgICpGcm9tOirCoE9uZMWZZWogU3Vy w70gPG9uZHJlakBzdXJ5Lm9yZyA8bWFpbHRvOm9uZHJlakBzdXJ5Lm9yZz4+DQo+ICAgICAqU2Vu dDoqwqBUaHVyc2RheSwgSnVseSAzMCwgMjAyNiA1OjA5IEFNDQo+ICAgICAqVG86KsKgVGVycnkg VGVwcG8gPFRlcnJ5VGVwcG8uUkZDQG91dGxvb2suY29tDQo+ICAgICA8bWFpbHRvOlRlcnJ5VGVw cG8uUkZDQG91dGxvb2suY29tPj4NCj4gICAgICpDYzoqIGRuc29wQGlldGYub3JnIDxtYWlsdG86 ZG5zb3BAaWV0Zi5vcmc+wqA8ZG5zb3BAaWV0Zi5vcmcNCj4gICAgIDxtYWlsdG86ZG5zb3BAaWV0 Zi5vcmc+Pg0KPiAgICAgKlN1YmplY3Q6KsKgUmU6IFtETlNPUF0gSS1EIEFubm91bmNlbWVudDog ZHJhZnQtdGVwcG8tY29ycG9yYXRlLQ0KPiAgICAgYXV0aGVudGljYXRlZC1kbnMtMDIgLSBBdXRo ZW50aWNhdGVkIEROUyBSZXNvbHV0aW9uIGZvciBFbnRlcnByaXNlDQo+IA0KPiAgICAgSGksDQo+ IA0KPiAgICAgdGhlIGNvcnJlY3QgVVJMIGlzOiBodHRwczovL25hMDEuc2FmZWxpbmtzLnByb3Rl Y3Rpb24ub3V0bG9vay5jb20vPw0KPiAgICAgdXJsPWh0dHBzJTNBJTJGJTJGZGF0YXRyYWNrZXIu aWV0Zi5vcmclMkZkb2MlMkZkcmFmdC10ZXBwby0NCj4gICAgIGNvcnBvcmF0ZS1hdXRoZW50aWNh dGVkLQ0KPiAgICAgZG5zJTJGJmRhdGE9MDUlN0MwMiU3QyU3Q2RjZWUwZWQzNDI0ODQ0ZTBmN2U4 MDhkZWVlMjJiYjE1JTdDODRkZjllN2ZlOWY2NDBhZmI0MzVhYWFhYWFhYWFhYWElN0MxJTdDMCU3 QzYzOTIxMDAzMDEwMTA4MDg3MSU3Q1Vua25vd24lN0NUV0ZwYkdac2IzZDhleUpGYlhCMGVVMWhj R2tpT25SeWRXVXNJbFlpT2lJd0xqQXVNREF3TUNJc0lsQWlPaUpYYVc0ek1pSXNJa0ZPSWpvaVRX RnBiQ0lzSWxkVUlqb3lmUSUzRCUzRCU3QzAlN0MlN0MlN0Mmc2RhdGE9bk1KcVp2NVFIZHVjR3Y4 JTJCY3lhJTJGa2dMWHl3UkROZGxGeVMlMkZVaGYlMkZLY0VRJTNEJnJlc2VydmVkPTAgPGh0dHBz Oi8vZGF0YXRyYWNrZXIuaWV0Zi5vcmcvZG9jL2RyYWZ0LXRlcHBvLWNvcnBvcmF0ZS1hdXRoZW50 aWNhdGVkLWRucy8+DQo+IA0KPiAgICAgQnV0IEkgYW0gZ29pbmcgdG8gYXNrIGEgZGlmZmVyZW50 IHF1ZXN0aW9uOiBIb3cgbXVjaCBvZiB0aGUgZHJhZnQNCj4gICAgIGhhcyBiZWVuIGdlbmVyYXRl ZCB1c2luZw0KPiAgICAgdG9vbHMgYW5kIG5vdCB3cml0dGVuIGJ5IHlvdXJzZWxmPw0KPiANCj4g ICAgIElFVEYgYW5kIGRuc29wIFdHIGlzIG5vdyBpbiBwcm9jZXNzIG9mIGRyYWZ0aW5nIGEgcG9s aWN5LCBidXQgSSBhbQ0KPiAgICAgMTAwJSBzdXJlIHRoYXQgd2Ugd2lsbA0KPiAgICAgcmVxdWly ZSBhIGZ1bGwgdHJhbnNwYXJlbmN5IGFib3V0IHRoZSB0b29scyB1c2VkIHRvIGdlbmVyYXRlIHRo ZQ0KPiAgICAgZHJhZnQgKHNpbWlsYXIgdG8gd2hhdCBvdGhlcg0KPiAgICAgcHVibGlzaGVycyBj dXJyZW50bHkgaGF2ZSkuDQo+IA0KPiAgICAgT25kcmVqDQo+ICAgICAtLQ0KPiAgICAgT25kxZll aiBTdXLDvSAoSGUvSGltKQ0KPiAgICAgb25kcmVqQHN1cnkub3JnIDxtYWlsdG86b25kcmVqQHN1 cnkub3JnPg0KPiANCj4gICAgIEEgZ2VudGxlIG51ZGdlIGlzIGFsd2F5cyBhcHByZWNpYXRlZCBp ZiBJIHRha2UgYSBsaXR0bGUgbG9uZ2VyIHRvIHJlcGx5Lg0KPiANCj4gICAgICA+IE9uIDI5LiA3 LiAyMDI2LCBhdCAyMDowOSwgVGVycnkgVGVwcG8gPFRlcnJ5VGVwcG8uUkZDQG91dGxvb2suY29t DQo+ICAgICA8bWFpbHRvOlRlcnJ5VGVwcG8uUkZDQG91dGxvb2suY29tPj4gd3JvdGU6DQo+ICAg ICAgPg0KPiAgICAgID4gSGVsbG8gRE5TT1AsDQo+ICAgICAgPg0KPiAgICAgID4gSSBoYXZlIHN1 Ym1pdHRlZCBhbiBJbnRlcm5ldC1EcmFmdCB0aXRsZWQgIkF1dGhlbnRpY2F0ZWQgRE5TDQo+ICAg ICBSZXNvbHV0aW9uIChBRFIpIGZvciBFbnRlcnByaXNlIEROUyIgYXMgYW4gaW5kZXBlbmRlbnQg c3VibWlzc2lvbjoNCj4gICAgICA+DQo+ICAgICAgPiBodHRwczovL25hMDEuc2FmZWxpbmtzLnBy b3RlY3Rpb24ub3V0bG9vay5jb20vPw0KPiAgICAgdXJsPWh0dHBzJTNBJTJGJTJGZGF0YXRyYWNr ZXIuaWV0Zi5vcmclMkZkb2MlMkZkcmFmdC10ZXBwby0NCj4gICAgIGNvcnBvcmF0ZS1hdXRoZW50 aWNhdGVkLQ0KPiAgICAgZG5zLTAwJTJGJmRhdGE9MDUlN0MwMiU3QyU3Q2RjZWUwZWQzNDI0ODQ0 ZTBmN2U4MDhkZWVlMjJiYjE1JTdDODRkZjllN2ZlOWY2NDBhZmI0MzVhYWFhYWFhYWFhYWElN0Mx JTdDMCU3QzYzOTIxMDAzMDEwMTEyNDUyNSU3Q1Vua25vd24lN0NUV0ZwYkdac2IzZDhleUpGYlhC MGVVMWhjR2tpT25SeWRXVXNJbFlpT2lJd0xqQXVNREF3TUNJc0lsQWlPaUpYYVc0ek1pSXNJa0ZP SWpvaVRXRnBiQ0lzSWxkVUlqb3lmUSUzRCUzRCU3QzAlN0MlN0MlN0Mmc2RhdGE9aENodHRsU3o2 b2p1TUd3eHNjRU5HOFkzQjFSMDhBdEx5d2NjU1R3d0M1byUzRCZyZXNlcnZlZD0wIDxodHRwczov L2RhdGF0cmFja2VyLmlldGYub3JnL2RvYy9kcmFmdC10ZXBwby1jb3Jwb3JhdGUtYXV0aGVudGlj YXRlZC1kbnMtMDAvPg0KPiAgICAgID4NCj4gICAgICA+IEFEUiBwcm9wb3NlcyBxdWVyeS1wbGFu ZSBSQkFDIGZvciBlbnRlcnByaXNlIEROUyByZXNvbHZlcnMg4oCUDQo+ICAgICBjb250cm9sbGlu ZyB3aG8gbWF5IHJlc29sdmUgRE5TIHJlY29yZHMgYXQgcXVlcnkgdGltZSwgYm91bmQgdG8NCj4g ICAgIGF1dGhlbnRpY2F0ZWQgbWFjaGluZSBhbmQgdXNlciBpZGVudGl0eSB2aWEgS2VyYmVyb3Ms IFguNTA5IGNsaWVudA0KPiAgICAgY2VydGlmaWNhdGVzLCBvciBPQXV0aC9PSURDIHRva2Vucy4N Cj4gICAgICA+DQo+ICAgICAgPiBUaGUgbW90aXZhdGlvbiBpcyBhIGdhcCB0aGF0IGV4aXN0aW5n IG1lY2hhbmlzbXMgZG8gbm90IGFkZHJlc3M6DQo+ICAgICBlbnRlcnByaXNlcyBhbHJlYWR5IGF1 dGhlbnRpY2F0ZSBETlMgd3JpdGVzIChSRkMgMjEzNiwgVFNJRyksDQo+ICAgICByZXN0cmljdCB6 b25lIHRyYW5zZmVycywgYW5kIGJsb2NrIGV4dGVybmFsIHF1ZXJpZXMsIGJ1dCByZWFkcw0KPiAg ICAgcmVtYWluIG9wZW4gdG8gYW55IGF1dGhlbnRpY2F0ZWQgcHJpbmNpcGFsIHdpdGggbmV0d29y ayBhY2Nlc3MgdG8gYQ0KPiAgICAgcmVzb2x2ZXIuIEEgZG9tYWluLWpvaW5lZCB3b3Jrc3RhdGlv biBvcGVyYXRlZCBieSBhIGhlbHBkZXNrDQo+ICAgICB0ZWNobmljaWFuIGNhbiByZXNvbHZlIHJv dXRlciwgZmlyZXdhbGwsIGFuZCBXQU4gdHJhbnNpdCByZWNvcmRzDQo+ICAgICB3aXRoIG5vIGNy ZWRlbnRpYWxzIGFuZCBubyBhdWRpdCB0cmFpbC4gQURSIGNvbXBsZXRlcyB0aGUgYWNjZXNzDQo+ ICAgICBjb250cm9sIG1vZGVsIGVudGVycHJpc2VzIGhhdmUgYWxyZWFkeSBiZWVuIGJ1aWxkaW5n IGJ5IGFwcGx5aW5nDQo+ICAgICBSQkFDIGF0IHF1ZXJ5IHRpbWUuDQo+ICAgICAgPg0KPiAgICAg ID4gS2V5IHBvaW50czoNCj4gICAgICA+IC0gQURSIGNhcnJpZXMgaWRlbnRpdHkgaW4gdGhlIHRy YW5zcG9ydCBsYXllciAoS2VyYmVyb3MsIG1UTFMsDQo+ICAgICBEb0grT0lEQykgYW5kIGRvZXMg bm90IG1vZGlmeSBETlMgbWVzc2FnZSBmb3JtYXQsIG9wY29kZXMsIEVETlMNCj4gICAgIG9wdGlv bnMsIG9yIHJlc291cmNlIHJlY29yZCB0eXBlcw0KPiAgICAgID4gLSBTY29wZWQgc3RyaWN0bHkg dG8gZW50ZXJwcmlzZSBwcml2YXRlIG5hbWVzcGFjZXM7IG5vIGltcGFjdCBvbg0KPiAgICAgSW50 ZXJuZXQgRE5TLCBETlNTRUMsIG9yIHB1YmxpYyByZXNvbHZlcnMNCj4gICAgICA+IC0gSW50cm9k dWNlcyBBVVRILU5YRE9NQUlOIHRvIGRpc3Rpbmd1aXNoICJyZWNvcmQgZG9lcyBub3QgZXhpc3Qi DQo+ICAgICBmcm9tICJyZWNvcmQgZXhpc3RzIGJ1dCB5b3UgbGFjayBwZXJtaXNzaW9uIg0KPiAg ICAgID4gLSBGdWxseSBjb21wYXRpYmxlIHdpdGggRE5TU0VDOyBBRFIgcmVzb2x2ZXJzIHZhbGlk YXRlIGJlZm9yZQ0KPiAgICAgcmV0dXJuaW5nIGFuc3dlcnMNCj4gICAgICA+IC0gU3VwcG9ydHMg aW5jcmVtZW50YWwgZGVwbG95bWVudCBhbG9uZ3NpZGUgbGVnYWN5DQo+ICAgICB1bmF1dGhlbnRp Y2F0ZWQgRE5TDQo+ICAgICAgPg0KPiAgICAgID4gSSBzZWFyY2hlZCB0aGUgZGF0YXRyYWNrZXIg YW5kIGZvdW5kIG5vIHByaW9yIGRyYWZ0cyBhZGRyZXNzaW5nDQo+ICAgICBxdWVyeS1wbGFuZSBE TlMgYXV0aG9yaXphdGlvbi4gVGhlIGRyYWZ0IGluY2x1ZGVzIGEgcHJpb3IgYXJ0DQo+ICAgICBz ZWN0aW9uIGNvdmVyaW5nIEROU1NFQywgQUQtaW50ZWdyYXRlZCBETlMsIHNwbGl0LWhvcml6b24s IERvVC9Eb0gsDQo+ICAgICBtRE5TLCBSRkMgMjEzNiwgVFNJRywgU0lHKDApLCBETlMgQ29va2ll cywgUlBaLCBETlMgQUNMcywgYW5kDQo+ICAgICA4MDIuMVgvTkFDLg0KPiAgICAgID4NCj4gICAg ICA+IEkgd291bGQgd2VsY29tZSBmZWVkYmFjayBvbiB0ZWNobmljYWwgZ2FwcywgcG9pbnRlcnMg dG8gcmVsYXRlZA0KPiAgICAgd29yayBJIG1heSBoYXZlIG1pc3NlZCwgb3IgaW50ZXJvcGVyYWJp bGl0eSBjb25jZXJucy4gSSBhbSBub3QNCj4gICAgIHJlcXVlc3RpbmcgV0cgYWRvcHRpb24gYXQg dGhpcyBzdGFnZSBidXQgd291bGQgd2VsY29tZSBndWlkYW5jZSBpZg0KPiAgICAgdGhlIFdHIGhh cyBpbnRlcmVzdC4NCj4gICAgICA+DQo+ICAgICAgPiBUaGFuayB5b3UgZm9yIHlvdXIgdGltZS4N Cj4gICAgICA+IF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f DQo+ICAgICAgPiBETlNPUCBtYWlsaW5nIGxpc3QgLS0gZG5zb3BAaWV0Zi5vcmcgPG1haWx0bzpk bnNvcEBpZXRmLm9yZz4NCj4gICAgICA+IFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG8g ZG5zb3AtbGVhdmVAaWV0Zi5vcmcNCj4gICAgIDxtYWlsdG86ZG5zb3AtbGVhdmVAaWV0Zi5vcmc+ DQo+IA0KPiANCj4gICAgIF9fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fDQo+ICAgICBETlNPUCBtYWlsaW5nIGxpc3QgLS0gZG5zb3BAaWV0Zi5vcmcgPG1haWx0 bzpkbnNvcEBpZXRmLm9yZz4NCj4gICAgIFRvIHVuc3Vic2NyaWJlIHNlbmQgYW4gZW1haWwgdG8g ZG5zb3AtbGVhdmVAaWV0Zi5vcmcgPG1haWx0bzpkbnNvcC0NCj4gICAgIGxlYXZlQGlldGYub3Jn Pg0KPiANCj4gDQo+IA0KPiBfX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19f X19fX19fXw0KPiBETlNPUCBtYWlsaW5nIGxpc3QgLS0gZG5zb3BAaWV0Zi5vcmcNCj4gVG8gdW5z dWJzY3JpYmUgc2VuZCBhbiBlbWFpbCB0byBkbnNvcC1sZWF2ZUBpZXRmLm9yZw0KDQoNCl9fX19f X19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fX19fCkROU09QIG1haWxpbmcg bGlzdCAtLSBkbnNvcEBpZXRmLm9yZwpUbyB1bnN1YnNjcmliZSBzZW5kIGFuIGVtYWlsIHRvIGRu c29wLWxlYXZlQGlldGYub3JnCg==