From mboxrd@z Thu Jan 1 00:00:00 1970 Authentication-Results: mail.toke.dk; spf=pass smtp.mailfrom=; dkim=pass header.d=gmail.com; arc=pass; dmarc=pass (Used From Domain Record) header.from=gmail.com policy.dmarc=quarantine Received: from mail-ej1-x62b.google.com (mail-ej1-x62b.google.com [IPv6:2a00:1450:4864:20::62b]) by mail.toke.dk (Postfix) with ESMTPS id 9A0FF116501F for ; Mon, 25 May 2026 14:39:31 +0200 (CEST) Received: by mail-ej1-x62b.google.com with SMTP id a640c23a62f3a-bce57c132b2so1796793666b.0 for ; Mon, 25 May 2026 05:39:31 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1779712769; cv=none; d=google.com; s=arc-20240605; b=XiWpdm37g9sXuc0SgZQ+UTeWvpfoOf2Fhepg9F7/j8cl9SaeTTGGlz60ozn7y/468q IBZik1Iqj3Gy+W81T0pTKkIJXSNbTuwoQC6FFBmm3sgIrWG7oaVbt2cbYh2wN8+QSyhL pE2/pWaK4Fz6nTUXGkjeqEriZ09fxd7tMG5ePN4YRPy297s+AJp0HMkESu7PHWXx65rr i4pkErmN06yLSLM5dT4P0h6+e8SjX9FIS/qX5u6M5lbI1FX4AIUNRfo15CjfPtYUchsa OVH1TCEFrIu5vqnqX7wCexQD/QLl176WdL02PoFZULPkWGzD63xWUgbaFav0oidqDApW BJaQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20240605; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:dkim-signature; bh=kGKt/QRQCVqoAF4En8apx4GPZRG/a+sVBH/kA7DVgjI=; fh=Aof33HBnXoclggUsLGKsXwe8E762wg7HQjWiocR8Hk0=; b=fIiz/VZK8cNfIG832MWLSl7LLjhhxklYbYBXWC8cYxTltA/YyuDgFdtE0VOZTnYA7W RaupHzq3wZwDyiVOoWpaj5KWo9hltv7P6PrxSGJihpwRWiMtjBrEL5OuX0Gs7PMqAJVG drRyj1OC8TPH8ORpJBG6F7NGuV0xXNgktzuKDNpSdCwClq3Kn05h9AH2ebq15TiroxB/ s+y4+uqp4GMnDP7bfzgOFhhNRxtcTT+OgkOUzh0P+ZLx/fgHNUt542ns/ks2LEpdxC8p 1uPRmnhC9Oez6W1SgS5ypYZ4d1RbbhBJjzWHOnusCGGvV/icWatkCuTlG4ZgKK+e5WiD kMfg==; darn=lists.bufferbloat.net ARC-Authentication-Results: i=1; mx.google.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1779712769; x=1780317569; darn=lists.bufferbloat.net; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:from:to:cc:subject:date:message-id:reply-to; bh=kGKt/QRQCVqoAF4En8apx4GPZRG/a+sVBH/kA7DVgjI=; b=oUHONwkXqk/ML908D7uDNdos4wQwuCBEpbS07ZPqzT0e6XPgrVk5hRWIPElYj4WYmM yKJF/4zSy5/1k1cAUIz+xy2R1qtLhRY7gEbyrOQv+u4OITpN9REIakOugTFt/gbljBqD Fo34jYd9nDf/7TATXsYNJSLmc2sRg8DUf0WNe666G3XxetrgUgBoeBzI4jqexoJAnu29 iz+XnSlHjJMT/PzO/FxAwoZjUzTrIfasE1U1VdTG7Pqy09cBypQYAnd0xWlb6BrwELPN az9yq+vIyIopg1r/d5CwzEU2TLTaGtpDJ3vkG/Zx/1kQgUCh39cInQPUxBzQuxe8nt45 yvkA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1779712769; x=1780317569; h=cc:to:subject:message-id:date:from:in-reply-to:references :mime-version:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=kGKt/QRQCVqoAF4En8apx4GPZRG/a+sVBH/kA7DVgjI=; b=fRrXSYMZpFu074OLftWvQPHSUfP/ie4Ik2ua+5OOrevSFtYCGn6CTKSfR9WLexHYgr XnirwkOG7QBilyEwAeStfVMQgUpEx3uNZnAdfAhJfyUIyg5FWj5W8OFs8eY/RfeJtV+L eQFp7uV0vIoldzk4U8e6CsnsZ2U/VXVB134JfvVibK/nux9DXYlJn3Hernkre5GxLflB g0CLMfU17+7L1wgIVZgEP/NvMhHxWiOmdB9s18QODnPXxx5k6YNU1Ms7auYegfs8vdrh totAOaH/KR0R1s4VOuamf+eOaUYhmdqTZbMZQ3ThuTBIfBZR7OXpdSJVYsRu3YYQg3q4 Q9xA== X-Forwarded-Encrypted: i=1; AFNElJ/PvjJ42Ka9o8ul4yX9dnCblmpgeFYAvf2wBywjaIFjWDc9Id0dVrfRwT4yGrBU2cUyR7o2@lists.bufferbloat.net X-Gm-Message-State: AOJu0YyeiIUlQykTLVqrTTWf1GTSCgDb7BypIWUjggO8EgfgtRg15rXy k5/qeNXIBag2RcXFUeeqE3LyNObk5Q7XO6GUD3NDZ68C/Xq6eLgUoOnAWfW7o6h3CFh0a2oGt7A NZd0PnCRtD2QXGi38zxhAhkJ2oqNL21U= X-Gm-Gg: Acq92OEVyFkX4r9egW7T4nXJOif6O+zbC80JSAAX0aZ7m0rNFwNy7FmSFFFme4XaV1+ inzh9wxj/KtQAEBOAHjAJRNq2nYHK4yjtZtZgVMX/Zin1KIenKrM4a4WOx2xObaAM8yuqA6Eshl vHo+OMNBMvD9TQpiQfWL2+8PXKsnv2ZUTaRpApV2/kMcwfJn0++T9uwXVxSjgmImOlOvb8mN3F/ 37VD06TQ/PjarrVcS/8kyKxC4P/5seHP5htCn75BwgErVTKV8yQxOMm8R/KCSpaMUvzRMDRnYpF atjkP5+qN2xyEDbd+cXWIP7bJ7fWsDdsxnrh8tBHamLe2vOt7e4hvQM2FUysZSvTyqM/udYmk6Q aUsy4lijk X-Received: by 2002:a17:907:760c:b0:bcc:14d9:f721 with SMTP id a640c23a62f3a-bdd48ac7efdmr523532266b.10.1779712768386; Mon, 25 May 2026 05:39:28 -0700 (PDT) MIME-Version: 1.0 References: <0oq1n88q-36qn-p6s7-699s-p4nr0440p950@ynat.uz> <8e14c6935753c6263351ad00ec59b9cb@umbernetworks.com> <055e42685cddfa4c1a4ff4da089996eb@umbernetworks.com> <7455E3B4-7FB4-4D40-A900-B31151D12F6F@gmx.de> In-Reply-To: <7455E3B4-7FB4-4D40-A900-B31151D12F6F@gmx.de> From: Frantisek Borsik Date: Mon, 25 May 2026 14:45:37 +0200 X-Gm-Features: AVHnY4Jz9tFsovzvr8vXuXHZDujI3S6l56UcTAxsrEeXNhUbHQYv40tOkeqm080 Message-ID: To: Sebastian Moeller Cc: codel@lists.bufferbloat.net, bob.mcmahon@umbernetworks.com, dan , Robert McMahon , David Lang , "Livingood, Jason" , Cake List , Make-Wifi-fast , bloat , Jeremy Austin via Rpm , "Dave.seddon Ca" , William Fisher , Igor Aleinikov , Jim , Jiml , Douglas Fairbairn , Thomas , Tim Odriscoll , Morten , Sebastian Moeller , Mt Denicolo , Mmcmahon01 , Santanu Sinha , Matthew , Koen DS , Shotaro Saito , Robin Jarry , Ehf , G White , Chunyuhu07 , Matthew Fischer Message-ID-Hash: H3F3KOQDWIHD23WJUKPACZ6WPENIRI3J X-Message-ID-Hash: H3F3KOQDWIHD23WJUKPACZ6WPENIRI3J X-MailFrom: frantisek.borsik@gmail.com X-Mailman-Rule-Misses: dmarc-mitigation; no-senders; approved; loop; banned-address; emergency; member-moderation; nonmember-moderation; administrivia; implicit-dest; max-recipients; max-size; news-moderation; no-subject; digests; suspicious-header Content-Transfer-Encoding: base64 Content-Type: text/plain; charset="UTF-8" X-Content-Filtered-By: Mailman/MimeDel 3.3.10 X-Mailman-Version: 3.3.10 Precedence: list Subject: [Cake] Re: [Codel] Re: [Rpm] Re: [Bloat] Re: "Fi-Wi is a new forwarding plane for wireless" - Bob McMahon List-Id: Cake - FQ_codel the next generation Archived-At: List-Archive: List-Help: List-Owner: List-Post: List-Subscribe: List-Unsubscribe: Tm90IHNheWluZyB0aGF0IG1vZGVybiBXaS1GaSBoYXMgbm8gaXNzdWVzIG9yIHRoYXQgdGhlc2Ug aXNzdWVzIHdpbGwgYmUNCm1pdGlnYXRlZCBhdCBhbGwgKGxldCBhbG9uZSBhbnkgdGltZSBzb29u KSwgYnV0IGNvbXBlbnNhdGVkIHdpdGggRlEtQ29EZWwNCmFuZCBDQUtFLCBjb3VwbGVkIHdpdGgg UW9FIG1pZGRsZS1ib3ggYW5kIHByb3BlciBwZWVyaW5nLCBpdCdzIG1vcmUgdGhhbg0KanVzdCBn b29kIGVub3VnaC4gQW5kIGl0J3MgaGVyZSwgYXQgdGhlIG91ciBkaXNwb3NhbC4gVGhpcyBrbm93 bGVkZ2UgaXQncw0KanVzdCBub3QgZXZlbmx5IGRpc3RyaWJ1dGVkIGFuZCB1c2VkIGF0IHNjYWxl Lg0KDQpJJ20gbm90IGNsYWltaW5nIGFueSBzcGVjaWFsIGtub3dsZWRnZSBvZiBKb25hdGhhbidz IHdvcmsgb24gaGlzIG5ldw0KZ2VuZXJhdGlvbiBvZiBxdWV1aW5nIGRpc2NpcGxpbmUocyksIGJ1 dCBJIHJlbWVtYmVyIGRpc2N1c3Npb25zIHdpdGggRGF2ZQ0KcmU6IGdldHRpbmcgaW50byBtaWNy by1zZWNvbmRzIHRlcnJpdG9yeS4gSSBzdGlsbCBkbyBiZWxpZXZlIHRoYXQgc3VwZXINCnNtYXJ0 IHBlb3BsZSBmcm9tIHRoZXNlIGxpc3RzIGNhbiBkaWcgdXAgc29tZXRoaW5nIGhlbHBmdWwgZnJv bSBEYXZlJ3MNCnNjb3Bpbmcgb2YgQ0FLRU1ROg0KaHR0cHM6Ly9kb2NzLmdvb2dsZS5jb20vZG9j dW1lbnQvZC8xdFRZQlBlYVJkQ085QUdUR1FDcG9pdUxPUlF6Tl9iRzNUQWtFb2xKUGgyOC9lZGl0 P3RhYj10LjANCg0KQXMgZm9yIDNHUFAgcGxheWJvb2ssIG5vdCBhdCBhbGwuIFdpLUZpIGlzIGdl dHRpbmcgb2JqZWN0aXZlbHkgYmV0dGVyLCBzbw0KYWxsIEknbSBzYXlpbmcgaXMgdGhhdCB3ZSBj YW4gcmVhc29uYWJseSBleHBlY3Qgc29tZSBpbXByb3ZlbWVudHMgb24gaXQNCndpdGggV2ktRmkg OC4NClRoaXMgaXMgbm90aGluZyBjbG9zZSB0byAzR1BQIEIocml0aXNoKSBTKHRhbmRhcnRzKSBw bGF5Ym9vayA6KQ0KDQpMZXQgbWUgc2hhcmUgYSBzdG9yeS4gQmFjayB0aGVuIGluIDIwMjMsIERh dmUgc2VudCBtZSB0byBXaS1GaSBBbGxpYW5jZQ0KbWVldGluZyBoZXJlIGluIFByYWd1ZSB3aXRo IGEgbGlzdCBvZiBwbGVhcywgYXNrcyBhbmQgcXVlc3Rpb25zLiBUaGVyZSB3YXMNCmEgZmV3IGdy ZWF0IHBlb3BsZSBmcm9tIHRoZSBidWZmZXJibG9hdCBtYWlsaW5nIGxpc3RzIGFuZCBMaWJyZVFv Uw0KY3VzdG9tZXJzIGhlbHBpbmcgdG8gcHV0IGl0IHRvZ2V0aGVyLiBBbmQgb25lIGdyZWF0IHBl cnNvbiBmcm9tIFF1YWxjb21tDQpnb3QgbWUgaW4sIG1hZGUgaW50cm9kdWN0aW9ucyB0byBldmVy eWJvZHkgYW5kIHRoZWlyIG1vdGhlcjogZnJvbSBCcm9hZGNvbSwNCnRvIEludGVsLCB0byBNZWRp YVRlaywgdG8gSFBFLCB0byBKdW5pcGVyLCB0byBDaXNjbywgdG8gaGlzIFF1YWxjb21tDQpjb2xs ZWFndWVzLiBXaGF0IEkndmUgbGVhcm5lZD8gVGhleSBhcmUgbm90IGdpdmluZyBhIGZseWluZyBG IGFib3V0IHJlYWxseQ0KZml4aW5nIGJ1ZmZlcmJsb2F0LiBGb3IgdGhlIG1vc3QgcGFydCwgbW9z dCBvZiB0aGVtLCB3aXRoIFJFQUwgZGVhbCwgbGlrZQ0KYmFraW5nIEZRLUNvRGVsIGFuZCBDQUtF IGludG8gV2ktRmkuIEFsbCB0aGV5IHdpbGwgZG8gaXMgc29tZSB2aXJ0dWUNCnNpZ25hbGxpbmcg YXQgYmVzdCwgbGlrZSBpbnRyb2R1Y2luZyBhICJXaS1GaSBRb1MgbWFuYWdlbWVudA0KPGh0dHBz Oi8vd3d3LnJjcndpcmVsZXNzLmNvbS8yMDI1MTIwNS9uZXR3b3JrLWluZnJhc3RydWN0dXJlL3dp LWZpLXFvcz4iDQphbmQgb3RoZXIgdGhpbmdzLCB3aGljaCBhcmUgbWFyZ2luYWwsIHBvdGVudGlh bCBpbXByb3ZlbWVudHMsIGF0IGJlc3QuDQoNCldlIHdpbGwgaGF2ZSBtb3JlIHZlbmRvcnMgYWRv cHRpbmcgRlEtQ29EZWwgYW5kIENBS0UgKGFuZCBpdCdzIGl0ZXJhdGlvbnMpDQpvdmVyIHRpbWUs IGJ1dCBvdGhlciB0aGFuIHRoYXQsIGl0IHdpbGwgYmUgUW9FIG1pZGRsZS1ib3hlcyB0aGF0IHdp bGwNCnJlYWxseSBtYW5hZ2UgdG8gZGVsaXZlciB0aGVzZSBpbXByb3ZlbWVudHMgYXQgc2NhbGUs IGluIG1vcmUgdGhhbiBqdXN0IElTUA0KbmV0d29ya3Mgb3V0IHRoZXJlLiBVbml2ZXJzaXR5IGNh bXB1c2VzLCB2ZW51ZXMsIGFpcnBvcnRzLCBtYW51ZmFjdHVyaW5nDQpwbGFudHMsIG1pbmVzLCBj cnVpc2Ugc2hpcHMsIGFpcmNyYWZ0Li4uDQoNClNvIFFvRSBtaWRkbGUtYm94ZXMgYW5kIGJ1ZmZl cmJsb2F0LCBPcGVuIFNvdXJjZSwgY29tbXVuaXRpZXMsIHdpbGwgYmUNCnNhdmluZyB0aGUgZGF5 LiBDYW4gRmktV2kgZmluZCBzb21lIG5pY2hlIHVzZSBjYXNlIG9yIGhlbHAgV2ktRmkgdG8gZml4 DQpzb21lIG9mIGl0cyBpbmhlcmVudCBpc3N1ZXM/IEFic29sdXRlbHkuDQoNCkFsbCB0aGUgYmVz dCwNCg0KRnJhbmsNCg0KRnJhbnRpc2VrIChGcmFuaykgQm9yc2lrDQoNCg0KKkluIGxvdmluZyBt ZW1vcnkgb2YgRGF2ZSBUw6RodDogKjE5NjUtMjAyNQ0KDQpodHRwczovL2xpYnJlcW9zLmlvLzIw MjUvMDQvMDEvaW4tbG92aW5nLW1lbW9yeS1vZi1kYXZlLw0KDQoNCmh0dHBzOi8vd3d3Lmxpbmtl ZGluLmNvbS9pbi9mcmFudGlzZWtib3JzaWsNCg0KU2lnbmFsLCBUZWxlZ3JhbSwgV2hhdHNBcHA6 ICs0MjE5MTk0MTY3MTQNCg0KaU1lc3NhZ2UsIG1vYmlsZTogKzQyMDc3NTIzMDg4NQ0KDQpTa3lw ZTogY2FzaW9hNTMwMmNhDQoNCmZyYW50aXNlay5ib3JzaWtAZ21haWwuY29tDQoNCg0KT24gTW9u LCBNYXkgMjUsIDIwMjYgYXQgODo1OeKAr0FNIFNlYmFzdGlhbiBNb2VsbGVyIDxtb2VsbGVyMEBn bXguZGU+IHdyb3RlOg0KDQo+DQo+DQo+IE9uIE1heSAyNSwgMjAyNiA3OjQzOjAxIEFNIEdNVCsw MjowMCwgRnJhbnRpc2VrIEJvcnNpayA8DQo+IGZyYW50aXNlay5ib3JzaWtAZ21haWwuY29tPiB3 cm90ZToNCj4gPkhleSBCb2IsDQo+ID4NCj4gPlRoaXMgaXMgYWxsIG5pY2UgYW5kIGFsbCwgYnV0 IGl0IHJlYWxseSBkb2Vzbid0IG1hdHRlci4gVGhlIG9ubHkNCj4gbWVhc3VyYWJsZQ0KPiA+dGVy bSBJTU8gd2UgcmVhbGx5IG5lZWQgaXMgdGhpcyAtIGlzIHRoZSBzZXR1cCB3ZSBhcmUgdXNpbmcg Z29vZCBlbm91Z2gNCj4gYW5kDQo+ID5kZWxpdmVyaW5nIGFsbCB3ZSBuZWVkPyBBbmQgdGhlIGFu c3dlciBmb3IgSVNQIGxpa2UgRGFuIGFuZCBtYW55IHRoYXQgd2lsbA0KPiA+Y29tZSAidG8gSmVz dXMiIGlzIHNvdW5kaW5nIFlFUy4gSXQncyBoZXJlLCBpdCdzIGNoZWFwLCBpdCdzIGdldHRpbmcN Cj4gYmV0dGVyLg0KPg0KPiBOb3Qgc3VyZSBJIGZ1bGx5IGJ1eSB0aGlzLCBpZiBJIHVuZGVyc3Rh bmQgY29ycmVjdGx5LCBEYW4gdXNlcyB0cmFmZmljDQo+IHNoYXBpbmcgdG8gIm5ldXRlciIgV2lG aSBmcm9tIGl0cyB3b3JzdCBzZWxmIGNvbmdlc3Rpb24gdGVuZGVuY2llcy4uLiB0aGF0DQo+IGlz IGEgY2xldmVyIHdheSB0byB3b3JrIGFyb3VuZCBjbGVhciBzaG9ydCBjb21pbmdzIGluIG1vZGVy biBXaUZpIG5vdA0KPiBldmlkZW5jZSB0aGF0IG1vZGVybiBXaUZpIGhhcyBubyBpc3N1ZXMuLi4N Cj4NCj4gPg0KPiA+WW91IHdpbGwgZ2V0IHlvdXIgZXZpZGVuY2UgYW5kIHRoZW4gd2hhdD8gV2hl biAoYW5kIGJpZyBpRikgRmktV2kgd2lsbA0KPiA+bWF0ZXJpYWxpemUsIHdlIHdpbGwgaGF2ZSBX aS1GaSA4DQo+ID48DQo+IGh0dHBzOi8vd3d3LmxpbmtlZGluLmNvbS9mZWVkL3VwZGF0ZS91cm46 bGk6YWN0aXZpdHk6NzQ2MDk5ODU4MDQ1NjExNjIyNC8+DQo+ID5mb3IgdGhvc2UgaW50ZXJlc3Rl ZCBpbiBjaGFzaW5nIG1hcmdpbmFsIGltcHJvdmVtZW50cyBhbmQgdGhlIGxhdGVzdA0KPiB0aGlu Zy4NCj4NCj4gVGhhdCBpcyB0aGUgM0dQUCBwbGF5Ym9vaywgYWx3YXlzIG92ZXJwcm9taXNlIGZv ciB0aGUgY29taW5nIGdlbmVyYXRpb24NCj4gTisxIGFuZCBvbmNlIHRoYXQgbWF0ZXJpbGFsaXpl cyBhbmQgdHlwaWNhbGx5IHVuZGVyLWRlbGl2ZXJzIHJvbGwtb3ZlciB0aGUNCj4gdW5mdWxmaWxs ZWQgcHJvbWlzZXMgc2ltcGx5IGludG8gTisyLCBtYXliZSBhZGQgYSBmZXcgbW9yZSBjbGFpbXMu Li4gU3VyZQ0KPiBmaXR0aW5nIGZvciB0aGUgbGF0ZXhzdGFnZSBjYXBpdGFsdXNtIHdlIGZpbmQg b3Vyc2VsdmVzIGluLCBidXQgbGV0J3Mgbm90DQo+IGdldCBmb29sZWQgYnkgbWFya2V0aW5nIHBy b21pc2VzIGFuZCBqdWRnZSBXaUZpOCBvbmNlIGl0IGV4aXN0cyBieSBpdHMNCj4gbWVyaXRzL3Bl cmZvcm1hbmNlLCBwbGVhc2UuDQo+DQo+ID5Kb25hdGhhbiBNb3J0b24gd2lsbCBkZWxpdmVyIGhp cyBpbXByb3ZlbWVudCBvbiBDQUtFLCB3ZSBtaWdodCBldmVuIGdldA0KPiA+aW50byBtaWNyb3Nl Y29uZCB0ZXJyaXRvcnkuDQo+DQo+IExhc3QgdGltZSBJIHJlc2VhcmNoZWQgaGlzIGRlbHRpYyBh cHByb2FjaCBpdCBsb29rZWQgdmVyeSBtdWNoIG5vdCBnb2luZw0KPiBpbnRvIHRoZSBtaWNyb3Nl Y29uZCB0ZXJyaXRvcnksIEkgcmVtZW1iZXIgMjVtcyBhcyBsYXRlbmN5IHRhcmdldA0KPiBzb21l aG93Li4uIDI1bXMgaXMgY2VydGFpbmx5IG5vdCBiYWQsIGFuZCBub3QgaGlnaC1sYXRlbmN5LCBi dXQgc2VlbXMNCj4gZGlmZmVyZW50IGZyb20gdWx0cmEtbG93LWxhdGVuY3kgYXBwcm9hY2hlcy4g U28gSSBtaWdodCBoYXZlIG1pc3NlZCBzb21lDQo+IGludGVyZXN0aW5nIGRldmVsb3BtZW50LCBp ZiB5b3UgaGF2ZSBhIGxpbmsgeW91IGNvdWxkIHNoYXJlIHRvIGdldCBtZSB1cCB0bw0KPiBzcGVl ZCBhZ2FpbiwgSSB3b3VsZCBiZSBncmF0ZWZ1bC4NCj4NCj4gPiBUaGVyZSB3aWxsIGJlIEZRLVBJ RSwgUFVSUExFIENBS0UsIEhUQi1NUSAodG8NCj4gPnN1cHBsZW1lbnQgQ0FLRS1NUSkuLi4NCj4g Pg0KPiA+QW55d2F5LCB5b3Ugd2lsbCBsaWtlIHRoaXM6DQo+ID4NCj4gaHR0cHM6Ly9hcnN0ZWNo bmljYS5jb20vZ2FkZ2V0cy8yMDE3LzAyL2dvaW5nLWhhbmRzLW9uLWFuZC1iZWhpbmQtdGhlLXNj ZW5lcy1hdC10aGUtcGx1bWUtd2ktZmktaHEvDQo+ID4NCj4gPlBsdW1lIHVzZWQgdG8gZG8gdGhp cywgeW91IHdpbGwgaGF2ZSB5b3VyIEZpLVdpIGhvdXNlIHRlc3QgYmVkIHVwIGFuZA0KPiA+cnVu bmluZywgc29vbi4gTGV0J3MgaGF2ZSBmdW4gYW5kIGRvIGFub3RoZXIgcm91bmQgb2YgdGhlIGdv b2Qgb2xlDQo+ID5XaS1GaS9tZXNoIHJvdXRlciBydW1ibGU6DQo+ID4NCj4gPg0KPiBodHRwczov L2Fyc3RlY2huaWNhLmNvbS9nYWRnZXRzLzIwMTYvMDkvdGhlLXJvdXRlci1ydW1ibGUtYXJzLWRp eS1idWlsZC1mYWNlcy1iZXR0ZXItdGVzdHMtdG91Z2hlci1jb21wZXRpdGlvbi8NCj4gPg0KPiBo dHRwczovL2Fyc3RlY2huaWNhLmNvbS9nYWRnZXRzLzIwMTYvMTIvcmV2aWV3LWNvbXBhcmluZy1n b29nbGUtd2lmaS10by1vdGhlci1tZXNoLW5ldHdvcmtpbmctaGVhdnl3ZWlnaHRzLw0KPiA+DQo+ ID5NYXliZSBKaW0gYW5kIEFycyBUZWNobmljYSB3b3VsZCBiZSBpbnRlcmVzdGVkIGluIGl0Lg0K PiA+DQo+ID4NCj4gPkFsbCB0aGUgYmVzdCwNCj4gPg0KPiA+RnJhbmsNCj4gPg0KPiA+RnJhbnRp c2VrIChGcmFuaykgQm9yc2lrDQo+ID4NCj4gPg0KPiA+KkluIGxvdmluZyBtZW1vcnkgb2YgRGF2 ZSBUw6RodDogKjE5NjUtMjAyNQ0KPiA+DQo+ID5odHRwczovL2xpYnJlcW9zLmlvLzIwMjUvMDQv MDEvaW4tbG92aW5nLW1lbW9yeS1vZi1kYXZlLw0KPiA+DQo+ID4NCj4gPmh0dHBzOi8vd3d3Lmxp bmtlZGluLmNvbS9pbi9mcmFudGlzZWtib3JzaWsNCj4gPg0KPiA+U2lnbmFsLCBUZWxlZ3JhbSwg V2hhdHNBcHA6ICs0MjE5MTk0MTY3MTQNCj4gPg0KPiA+aU1lc3NhZ2UsIG1vYmlsZTogKzQyMDc3 NTIzMDg4NQ0KPiA+DQo+ID5Ta3lwZTogY2FzaW9hNTMwMmNhDQo+ID4NCj4gPmZyYW50aXNlay5i b3JzaWtAZ21haWwuY29tDQo+ID4NCj4gPg0KPiA+T24gU3VuLCBNYXkgMjQsIDIwMjYgYXQgMTE6 NTfigK9QTSA8Ym9iLm1jbWFob25AdW1iZXJuZXR3b3Jrcy5jb20+IHdyb3RlOg0KPiA+DQo+ID4+ IEhpIEZyYW5rLA0KPiA+Pg0KPiA+PiBUaGUgcXVlc3Rpb24gbmVlZHMgdG8gYmUgZnJhbWVkIGlu IG1lYXN1cmFibGUgdGVybXMuDQo+ID4+DQo+ID4+IFRoZSBzeXN0ZW1zIHlvdSBuYW1lZCBvcGVy YXRlIGF0IGRpZmZlcmVudCBsYXllcnMgdGhhbiB0aGUgODAyLjExDQo+IE1BQy9QSFkNCj4gPj4g bGF5ZXIgd2hlcmUgVFhPUCBhbGxvY2F0aW9uLCByZXRyaWVzLCBFRENBIGNvbnRlbnRpb24sIEFN UERVIGJlaGF2aW9yLA0KPiBhbmQNCj4gPj4gYWlydGltZSB1dGlsaXphdGlvbiBvY2N1ciB0aHJv dWdob3V0IHRoZSBidWlsZGluZy4gYmF0bWFuLWFkdiByb3V0ZXMNCj4gPj4gYmV0d2VlbiBtZXNo IG5vZGVzLiBDQUtFIGFuZCBGUS1Db0RlbCBvcGVyYXRlIG9uIElQLWxheWVyIHF1ZXVlcy4gUW9F DQo+ID4+IG1pZGRsZS1ib3hlcyBvcGVyYXRlIGZyb20gdGhlIFdBTi9JUCBzaWRlLg0KPiA+Pg0K PiA+PiBTbyB0aGUgcXVlc3Rpb24gaXMgd2hldGhlciBJUC1sYXllciBBUU1zIG9yIFdBTi1zaWRl IFFvRSBzeXN0ZW1zIGFmZmVjdA0KPiA+PiBtZWFzdXJhYmxlIDgwMi4xMSBNQUMvUEhZIGJlaGF2 aW9yIHVuZGVyIGxvYWQuDQo+ID4+DQo+ID4+IElmIHRoZXkgZG8sIHRoZSBwcmVkaWN0ZWQgTUFD L1BIWSBlZmZlY3RzIHdvdWxkIGluY2x1ZGU6DQo+ID4+DQo+ID4+ICAgIC0gbG93ZXIgZmFpbGVk IFRYT1AgcGVyY2VudGFnZQ0KPiA+PiAgICAtIGxvd2VyIHJldHJhbnNtaXNzaW9uIGFpcnRpbWUg ZnJhY3Rpb24NCj4gPj4gICAgLSBpbXByb3ZlZCBBTVBEVSBjb21wbGV0aW9uIGVmZmljaWVuY3kN Cj4gPj4gICAgLSBoaWdoZXIgcGF5bG9hZCBkZWxpdmVyZWQgcGVyIFRYT1ANCj4gPj4gICAgLSBs b3dlciBBTVBEVSB0cnVuY2F0aW9uIGZyZXF1ZW5jeQ0KPiA+PiAgICAtIHJlZHVjZWQgRURDQSB3 YWl0IGRpc3RyaWJ1dGlvbnMNCj4gPj4gICAgLSBpbXByb3ZlZCBhaXJ0aW1lIHV0aWxpemF0aW9u DQo+ID4+ICAgIC0gcmVkdWNlZCBzZXJ2aWNlLXRpbWUgdmFyaWFuY2UNCj4gPj4gICAgLSBjaGFu Z2VkIE1DUyBkaXN0cmlidXRpb25zIGFjcm9zcyBzdGF0aW9ucyB1bmRlciByZWFsaXN0aWMgc3Bh dGlhbA0KPiA+PiAgICB0b3BvbG9neSwgcGFydGljdWxhcmx5IGF0IGNvdmVyYWdlIGVkZ2VzIGFu ZCB3aGVyZSBtdWx0aXBsZSBBUHMgb3INCj4gUlJIcyBhcmUNCj4gPj4gICAgY2FuZGlkYXRlcyBm b3Igbm9kZSBzZWxlY3Rpb24NCj4gPj4NCj4gPj4gVGhhdCBpcyB0aGUgbWVhc3VyZW1lbnQgZ2Fw IEkgYW0gcG9pbnRpbmcgYXQuIFRoZSBpbmR1c3RyeSBoYXMgZXh0ZW5zaXZlDQo+ID4+IDgwMi4x MSBmZWF0dXJlIGxpc3RzIGFuZCBtYXJrZXRpbmcgY2xhaW1zLCB3aXRoIGNvbXBhcmF0aXZlbHkg bGl0dGxlDQo+IG9wZW4NCj4gPj4gdG9vbGluZyB0byBmYWxzaWZ5IHdoYXQgdGhvc2UgYWN0dWFs bHkgZG8gdG8gYnVpbGRpbmcgd2lkZSA4MDIuMTENCj4gTUFDL1BIWQ0KPiA+PiBiZWhhdmlvciB1 bmRlciByZWFsIG11bHRpLWNsaWVudCwgbXVsdGktQVAgbG9hZC4NCj4gPj4NCj4gPj4gSSBkZXZl bG9wZWQgYW5kIHN0aWxsIG1haW50YWluIGlwZXJmMiBiZWNhdXNlIHRocm91Z2hwdXQgYWxvbmUg aGFzDQo+IHByb3Zlbg0KPiA+PiBhbiBpbnN1ZmZpY2llbnQgbWVhc3VyZW1lbnQgbW9kZWwgZm9y IG5ldHdvcmsgYmVoYXZpb3IsIGUuZy4gbGF0ZW5jaWVzDQo+IGFuZA0KPiA+PiByZXNwb25zaXZl bmVzcyB1bmRlciBsb2FkLiBGZWF0dXJlcyBhZGRlZCB0byBpcGVyZjIgaW5jbHVkZToNCj4gPj4N Cj4gPj4gICAgLSB0cmlwLXRpbWVzDQo+ID4+ICAgIC0gYm91bmNlYmFjayB0ZXN0aW5nDQo+ID4+ ICAgIC0gb25lLXdheSBJUCBwYWNrZXQgdGltaW5nIG1lYXN1cmVtZW50cw0KPiA+PiAgICAtIHBh Y2tldC1sZXZlbCBsYXRlbmN5IGhpc3RvZ3JhbXMNCj4gPj4gICAgLSBtZXNzYWdlLWxldmVsIChU Q1Agd3JpdGUvcmVhZCBjb21wbGV0aW9uKSBsYXRlbmN5IGhpc3RvZ3JhbXMNCj4gPj4gICAgLSBy ZXNwb25zaXZlbmVzcyB1bmRlciBsb2FkIG1lYXN1cmVtZW50cw0KPiA+PiAgICAtIGVuaGFuY2Vk IHBlci1pbnRlcnZhbCByZXBvcnRpbmcNCj4gPj4gICAgLSBDV05EIHJlcG9ydGluZw0KPiA+PiAg ICAtIFJUVCByZXBvcnRpbmcNCj4gPj4gICAgLSBieXRlcy9wYWNrZXRzIGluLWZsaWdodCByZXBv cnRpbmcNCj4gPj4gICAgLSBUQ1AgcmV0cmFuc21pc3Npb24gcmVwb3J0aW5nDQo+ID4+ICAgIC0g VENQIGNvbmdlc3Rpb24tY29udHJvbCBzZWxlY3Rpb24gKENVQklDLCBCQlIsIFByYWd1ZSwgZXRj LikNCj4gPj4gICAgLSB1ZHAtbDRzIGluY2x1ZGluZyBDRSBjb3VudGVycyBhbmQgZHVyYXRpb25z DQo+ID4+ICAgIC0gaXNvY2hyb25vdXMgdHJhZmZpYyBnZW5lcmF0aW9uDQo+ID4+ICAgIC0gc29j a2V0LWxheWVyIHBhY2luZyB2aWEgU09fTUFYX1BBQ0lOR19SQVRFDQo+ID4+ICAgIC0gdG9rZW4t YnVja2V0IHdyaXRlLXJhdGUgY29udHJvbA0KPiA+PiAgICAtIE1hcmtvdi1jaGFpbiBwYWNrZXQt c2l6ZSBnZW5lcmF0aW9uDQo+ID4+ICAgIC0gVURQIGxhdGVuY3kvaml0dGVyIGFuYWx5c2lzDQo+ ID4+ICAgIC0gbXVsdGljYXN0IHRlc3RpbmcNCj4gPj4NCj4gPj4gVGhvc2UgbWVhc3VyZW1lbnRz IG9wZXJhdGUgYWJvdmUgdGhlIDgwMi4xMSBNQUMvUEhZLiBUaGUgbWlzc2luZyBsYXllcg0KPiA+ PiByZW1haW5zIG9wZW4gODAyLjExIE1BQy9QSFkgdGVsZW1ldHJ5LCB3aGljaCBpcyB3aGF0IEkn bSBidWlsZGluZyBub3cuDQo+ID4+DQo+ID4+IFRoaXMgbWVhc3VyZW1lbnQgc3RhbmRhcmQgc2hv dWxkIGFwcGx5IGVxdWFsbHkgdG8gYW55IGNsYWltIGZyb20gYW55DQo+ID4+IGFyY2hpdGVjdHVy ZSwgaW5jbHVkaW5nIEZpLVdpLg0KPiA+Pg0KPiA+PiBUaGUgcXVlc3Rpb24gYmVjb21lczogZG9l cyBjZW50cmFsaXplZCBNQUMgdGVsZW1ldHJ5IGFuZCBjb29yZGluYXRlZA0KPiA+PiBhaXJ0aW1l IGNvbnRyb2wgYWZmZWN0IG1lYXN1cmFibGUgODAyLjExIE1BQy9QSFkgYmVoYXZpb3IgdW5kZXIg bG9hZA0KPiA+PiByZWxhdGl2ZSB0byBhdXRvbm9tb3VzIEFQIG9wZXJhdGlvbj8NCj4gPj4NCj4g Pj4gTWVhc3VyZSB0aGUgc2FtZSBNQUMvUEhZIG1ldHJpY3MgdW5kZXIgZXF1aXZhbGVudCB0b3Bv bG9neSwgb2ZmZXJlZA0KPiBsb2FkLA0KPiA+PiBhbmQgY2xpZW50IG1peC4gSWYgdGhvc2UgbWVh c3VyZW1lbnRzIGRvIG5vdCBpbXByb3ZlIHJlbGF0aXZlIHRvDQo+IGJhc2VsaW5lLA0KPiA+PiB0 aGUgYXJjaGl0ZWN0dXJhbCBjbGFpbSBvZiBGaS1XaSBmYWlscy4gV2Ugd29uJ3Qga25vdyB1bnRp bCBGaS1XaSBpcw0KPiA+PiBkZXNpZ25lZCwgYnVpbHQsIGRlcGxveWVkIGFuZCBtZWFzdXJlZCBh dCBtYW55IGRpZmZlcmVudCBsb2NhdGlvbnMuIFRoZQ0KPiA+PiB0aGVvcmV0aWNhbCBjYXNlIGlz IHN0cm9uZy4gIENlbnRyYWxpemVkIHNjaGVkdWxpbmcsIGpvaW50IG9wdGltaXphdGlvbiwNCj4g Pj4gYW5kIG9ic2VydmFiaWxpdHkgYWxsIGFyZ3VlIGZvciBpdC4gVGhlIGRlc2lnbiBhbmQgbWVh c3VyZW1lbnRzIGFyZSB0aGUNCj4gPj4gbmV4dCBzdGVwcy4gVGhlbiB3ZSdsbCBzZWUgYmFzZWQg b24gZXZpZGVuY2UuDQo+ID4+DQo+ID4+IEJvYg0KPiA+Pg0KPiA+PiBUZWNobmljYWxseSwgQmV0 YW1heCB3YXMgc3VwZXJpb3IgdG8gVkhTLCBhbmQgeWV0Li4uDQo+ID4+DQo+ID4+IElmIHdlIHdv dWxkIGJlIHRhbGtpbmcgYWJvdXQgRmlXaSBwcmUtanVtcCBmcm9tIFdpLUZpIDUgdG8gV2ktRmk2 L0UvNywgSQ0KPiA+PiB3b3VsZCBldmVuIHRyeSB0byBkbyBteSBiZXN0IGFuZCBpZ25vcmUgaHR0 cHM6Ly9mYXN0Z29vZC5jaGVhcC4NCj4gPj4gQnV0IHdlIGFyZSBub3QgdGhlcmUsIGZvciBiZXR0 ZXIgb3IgZm9yIHdvcnNlLg0KPiA+Pg0KPiA+PiBJU1BzIGxpa2UgRGFuIHRoYXQgdXNlIFdpLUZp IDYgKHdpdGggbWVzaCwgZXNwZWNpYWxseSBiYXNlZCBvbg0KPiBiYXRtYW4tYWR2DQo+ID4+IGFu ZCBGUS1Db0RlbCAvIENBS0UpIGFuZCBhYm92ZSBhdCBjdXN0b21lciBwcmVtaXNlcyBhbmQgUXVh bGl0eSBvZg0KPiA+PiBFeHBlcmllbmNlIG1pZGRsZS1ib3ggb24gdGhlaXIgbGFzdC1taWxlLCB3 aGlsZSBwcm92aWRpbmcgZ29vZCwgcGVyc29uYWwNCj4gPj4gY3VzdG9tZXIgc2VydmljZSAobm90 IHNvbWUgY3JhcHB5IG91dHNvdXJjaW5nIG9mIGl0IHRvIEluZGlhIG9yICJBSSIpDQo+IHdpbGwN Cj4gPj4gYmUgaGFyZCB0byBiZWF0LCBldmVuIGZvciBhIGJpZyB0ZWxjby9JU1Agb2ZmZXJpbmcg Y2hlYXBlciBwcmljZS4gWWVzLA0KPiBzb21lDQo+ID4+IHBlb3BsZSB3aWxsIGxlYXZlIGJ1dCB0 aGUgbW9zdCBvZiB0aGVtIHdpbGwgYmUgY29taW5nIGJhY2suDQo+ID4+DQo+ID4+IFRoaXMgaXMs IGJlbGlldmUgaXQgb3Igbm90LCBub3QgYSBoaWdoIGJhciB0byBqdW1wIG92ZXIsIGV2ZW4gdGhv dWdoIG5vdA0KPiA+PiBtYW55IElTUHMgYXJlIGdldHRpbmcgaXQgYWxyZWFkeS4gV2UgYWxsIGtu b3cgdGhhdCBtb3JlIG9yIGxlc3M6DQo+ICJCYW5kd2lkdGgNCj4gPj4gaXMgYSBsaWUsIEJhbmR3 aWR0aCBpcyBkZWFkLCIgc28gaXQncyBjb21pbmcuIFRoZXkgd2lsbCBiZSB0aHJvd2luZyBtb3Jl DQo+ID4+IGJhbmR3aWR0aCBvbiBpdCBmb3Igc29tZSB0aW1lLCBidXQgd2Ugd2lsbCBiZSBnZXR0 aW5nIGZyb20gImlubm92YXRvcnMiDQo+IHRvDQo+ID4+ICJlYXJseSBhZG9wdGVycyIgc29vbiBh bmQgdGhlbiwgYWxsIHdlIG5lZWQgaXMganVzdCB0aGF0ICJjcm9zc2luZyB0aGUNCj4gPj4gY2hh c20uIg0KPiA+Pg0KPiA+PiBEZXNwaXRlIGFsbCB0aGUgZGlmZmljdWx0aWVzLCBpdCB3aWxsIGJl IGZhc3RlciBhbmQgY2hlYXBlciAtIGFsc28gImdvb2QNCj4gPj4gZW5vdWdoLCIgdGhhbiBGaVdp LiBPciByYXRoZXIsIGl0J3MgaGVyZSBhbHJlYWR5LCBpdCdzIGp1c3Qgbm90IGV2ZW5seQ0KPiA+ PiBkaXN0cmlidXRlZC4NCj4gPj4gVGhlcmUgbWlnaHQgYmUgc29tZSBnb29kIG5pY2hlIHVzZSBj YXNlIGZvciBGaVdpLCB0aG91Z2gsIG9uY2UgaXQgd2lsbA0KPiA+PiBtYXR1cmUgYW5kIGdldCB0 aGVyZS4NCj4gPj4NCj4gPj4gQWxsIHRoZSBiZXN0LA0KPiA+Pg0KPiA+Pg0KPiA+PiBGcmFuaw0K PiA+Pg0KPiA+Pg0KPiA+Pg0KPiA+PiBGcmFudGlzZWsgKEZyYW5rKSBCb3JzaWsNCj4gPj4NCj4g Pj4NCj4gPj4NCj4gPj4gKkluIGxvdmluZyBtZW1vcnkgb2YgRGF2ZSBUw6RodDogKjE5NjUtMjAy NQ0KPiA+Pg0KPiA+PiBodHRwczovL2xpYnJlcW9zLmlvLzIwMjUvMDQvMDEvaW4tbG92aW5nLW1l bW9yeS1vZi1kYXZlLw0KPiA+Pg0KPiA+Pg0KPiA+Pg0KPiA+PiBodHRwczovL3d3dy5saW5rZWRp bi5jb20vaW4vZnJhbnRpc2VrYm9yc2lrDQo+ID4+DQo+ID4+IFNpZ25hbCwgVGVsZWdyYW0sIFdo YXRzQXBwOiArNDIxOTE5NDE2NzE0DQo+ID4+DQo+ID4+IGlNZXNzYWdlLCBtb2JpbGU6ICs0MjA3 NzUyMzA4ODUNCj4gPj4NCj4gPj4gU2t5cGU6IGNhc2lvYTUzMDJjYQ0KPiA+Pg0KPiA+PiBmcmFu dGlzZWsuYm9yc2lrQGdtYWlsLmNvbQ0KPiA+Pg0KPiA+PiBPbiBTdW4sIE1heSAyNCwgMjAyNiBh dCAyOjEy4oCvQU0gZGFuIDxkYW5kZW5zb25AZ21haWwuY29tPiB3cm90ZToNCj4gPj4NCj4gPj4N Cj4gPj4NCj4gPj4gT24gU2F0LCBNYXkgMjMsIDIwMjYgYXQgMTA6MzbigK9BTSA8Ym9iLm1jbWFo b25AdW1iZXJuZXR3b3Jrcy5jb20+IHdyb3RlOg0KPiA+Pg0KPiA+PiA+IEkgZG9uJ3QgaGF2ZSBh cmd1bWVudHMgb24gdGhlIHRlY2huaWNhbCBiaXRzIG9mIHlvdXIgcmVwbHkuDQo+ID4+DQo+ID4+ IFRoZSBpbmR1c3RyeSBoYXNuJ3QgcHJvdmlkZWQgb3BlbiBzb3VyY2UgdG9vbHMgdG8gYW5hbHl6 ZSA4MDIuMTENCj4gcHJvcGVybHkuDQo+ID4+IFRoZSBwcm9wcmlldGFyeSBvbmVzIGFyZSB0aWdo dGx5IGNvdXBsZWQgdG8gY2hpcCBmaXJtd2FyZSwgb3duZWQgYnkNCj4gODAyLjExDQo+ID4+IHZl bmRvcnMsIGFuZCBub3QgZm9yIHNhbGUuDQo+ID4+DQo+ID4+IFlvdSd2ZSBidWlsdCBzb2xpZCBu ZXR3b3JrcywgZXNwZWNpYWxseSBnaXZlbiBob3cgbGl0dGxlIDgwMi4xMQ0KPiBNQUMtbGF5ZXIN Cj4gPj4gYW5kIE1DUyBvYnNlcnZhYmlsaXR5IGN1cnJlbnQgdG9vbGluZyBleHBvc2VzLiBJIGhv cGUgdG8gbWFrZSBvcGVuDQo+IHNvdXJjZQ0KPiA+PiA4MDIuMTEgTUFDIHRlbGVtZXRyeSB0b29s cyBhdmFpbGFibGUgc29vbmVyIHJhdGhlciB0aGFuIGxhdGVyLiBUaGVzZQ0KPiB3aWxsDQo+ID4+ IHJ1biBvbiBib3RoIGFuIEVTUDMyLUM1IGFuZCBhbiBSUGk1LiBUaGUgaW5leHBlbnNpdmUgRVNQ MzIgYWxsb3dzDQo+IG1vbml0b3JzDQo+ID4+IHRvIGJlIHBsYWNlZCB0aHJvdWdob3V0IGEgdmVu dWUgYXQgbG93IGNvc3QuDQo+ID4+DQo+ID4+IEEga2V5IGlzc3VlIGlzIHdoYXQncyBiZWluZyBt ZWFzdXJlZC4gWW91ciBkZXBsb3ltZW50IGRhdGEgaXMgYSBjYXBhY2l0eQ0KPiA+PiBhbmFseXNp cy4gT25jZSBiYXNlbGluZSBjYXBhY2l0eSBpcyBhZGVxdWF0ZSwgdXNlciBleHBlcmllbmNlIGlz IGRyaXZlbg0KPiBieQ0KPiA+PiB0YWlsIGxhdGVuY3kgYW5kIHNlcnZpY2UtdGltZSB2YXJpYW5j ZSByYXRoZXIgdGhhbiB0aHJvdWdocHV0LiBBIG5ldHdvcmsNCj4gPj4gY2FuIHNhdHVyYXRlIGFn Z3JlZ2F0ZSB0aHJvdWdocHV0IHdoaWxlIHN0aWxsIHNob3dpbmcgbGFyZ2Ugc2VydmljZS10aW1l DQo+ID4+IHZhcmlhbmNlIGFuZCBsb25nIHBlci1mbG93IHRhaWxzIHVuZGVyIGNvbnRlbnRpb24u IFRoZXNlIGFyZSBkaWZmZXJlbnQNCj4gPj4gbWVhc3VyZW1lbnRzLg0KPiA+Pg0KPiA+PiBBbmQg Q09ERUwgYW5kIENBS0UgYXJlIElQLWxheWVyIG1lY2hhbmlzbXMuIFRoZXkgZG9uJ3Qgb3BlcmF0 ZSBvbiA4MDIuMTENCj4gPj4gVFhPUHMgb3IgYWlydGltZSBzb2pvdXJuLCB3aGljaCBpcyB3aGVy ZSB0aGUgY29udGVudGlvbiBhbmQgc2VydmljZS10aW1lDQo+ID4+IHZhcmlhbmNlIGFjdHVhbGx5 IGxpdmUuIEFRTCBpcyBjbG9zZXIuIEl0IG9wZXJhdGVzIG9uIGFpcnRpbWUgYXQgdGhlDQo+ID4+ IGRyaXZlci9maXJtd2FyZSBib3VuZGFyeSwgYnV0IGl0J3Mgc3RpbGwgcGVyLUFQLiBUaGVyZSdz IG5vIGNvb3JkaW5hdGlvbg0KPiA+PiBhY3Jvc3MgQVBzIGFuZCBubyBNQUMgdGVsZW1ldHJ5IGV4 cG9zZWQgdXB3YXJkLg0KPiA+Pg0KPiA+PiBTbGlkZSA2IG9mIG15IERQREsgU3VtbWl0IFN0b2Nr aG9sbSB0YWxrIGxheXMgb3V0IHRoZSBsYXllcmluZzoNCj4gPj4gaHR0cHM6Ly93d3cudW1iZXJu ZXR3b3Jrcy5jb20vRFBES19XaUZpX1N0b2NraG9sbV9QcmVzLmh0bWwNCj4gPj4NCj4gPj4gQ2hl Y2sgb3V0IGlwZXJmMidzIGFkdmFuY2VkIGZlYXR1cmVzIGFyb3VuZCAtLWJvdW5jZWJhY2ssIC0t dHJpcC10aW1lcywNCj4gPj4gYW5kIC0taGlzdG9ncmFtcy4gVGhlc2UgYXJlIGF2YWlsYWJsZSBh cyBvcGVuIHNvdXJjZS4gTWFuIHBhZ2U6DQo+ID4+IGh0dHBzOi8vaXBlcmYyLnNvdXJjZWZvcmdl LmlvL2lwZXJmLW1hbnBhZ2UuaHRtbA0KPiA+Pg0KPiA+PiBJJ2xsIHRyeSB0byByZXNwb25kIHdp dGggc29tZSBtZXRyaWNzIHNvb24uIE15IHJpZyBpcyBkb3duIGF0IHRoZQ0KPiBtb21lbnQsDQo+ ID4+IHNvIGdpdmUgbWUgYSBmZXcgZGF5cy4NCj4gPj4NCj4gPj4gQm9iDQo+ID4+DQo+ID4+DQo+ ID4+IEkgYWdyZWUuICBIb3dldmVyLCBJJ20gbm90IGFjdHVhbGx5IGp1c3QgbWVhc3VyaW5nIHRo cm91Z2hwdXQsIGJ1dA0KPiBydW5uaW5nDQo+ID4+IGxhdGVuY3kgc2Vuc2l0aXZlIGFwcGxpY2F0 aW9ucyB3aXRob3V0IGlzc3Vlcy4gIEZyYW5rIG1pZ2h0IGF0dGVzdCB0byBteQ0KPiA+PiBlZmZv cnRzIHRvIHJlZHVjZSBsYXRlbmN5IGFuZCBJIHJvdXRpbmVseSBzaGFyZSBkYXRhIG9uIGxxb3Mg KGFuZA0KPiBhbm90aGVyDQo+ID4+IFFvRSBwcm9kdWN0J3MpIFRDUCBtZWFzdXJlbWVudHMgZm9y IGxhdGVuY3kgYW5kIGFtb25nIFFvRSB1c2VycywgSQ0KPiBiZWxpZXZlDQo+ID4+IG15IG5ldHdv cmsgaXMgdG9wIDElIGluIGxhdGVuY3kgYW5kIGppdHRlciBhbmQgaW4gdGhlIFdJU1Agc3BhY2Uu DQo+ID4+IE9idmlvdXNseSBJJ20gbm90IGdvaW5nIHRvIGNvbXBldGUgd2l0aCBYR1NQT04gb3Bl cmF0b3JzLi4gKHRob3VnaCBJJ20NCj4gb25seQ0KPiA+PiBtZWFzdXJpbmcgVENQIGJlY2F1c2Ug dGhhdCdzIHRoZSAnZWFzaWVzdCcgdG8gbWVhc3VyZSBwYXNzaXZlbHkNCj4gPj4gcHJhY3RpY2Fs bHkpLiAgV2hpbGUgdGhpcyBpcyBub3QgYW4gZW5naW5lZXJpbmcgYWRlcXVhdGUgYmVuY2htYXJr LCBpZg0KPiBteQ0KPiA+PiBWb0lQIGhhbmRzZXRzIHdvcmsgb3ZlciB3aXJlbGVzcyB0aGVuIHRo ZSB3aXJlbGVzcyBpcyBnb29kIGlzIGEgdmVyeQ0KPiA+PiByZWFzb25hYmxlIGxhdGVuY3ksIGpp dHRlciwgbG9zcyBhcmd1bWVudC4gIEFuZCBJIHJ1biBhIGZldyBicmFuZHMgb2YNCj4gV2lGaQ0K PiA+PiBiYXNlZCBWb0lQIHBob25lcyAoRmFudmlsbCBXeHh4IHNlcmllcywgWWVhbGluayBXeHgg YW5kIEFYeHggc2VyaWVzKS4NCj4gPj4gU2ltaWxhcmx5LCBpZiB0aGUgc29ub3Mgd29ya3MgYW5k IGlzIGluIHN5bmMsIHRoZSB3aWZpIGlzIGdvb2QuDQo+ID4+DQo+ID4+IEFzIGEgc2VydmljZSBj b21wYW55IGFuZCBhcyBhIHVzZXIsIEkgZG9uJ3QgcmVhbGx5IGNhcmUgc28gbXVjaCB3aGVyZQ0K PiB0aGUNCj4gPj4gZ29vZG5lc3MgaXMgaW4gdGhlIHN5c3RlbSwgbWFjIGxheWVyIG9yIElQIGhh dmluZyBjYWtlIHdvcmsgaXQncyBtYWdpYy4NCj4gPj4gQmFzaWNhbGx5IHJ1bm5pbmcgYW4gQVAg b24gT0ZNREEgKGFzIG11Y2ggYXMgcG9zc2libGUpIGFuZCB3ZWxsIHVuZGVyDQo+IHRoZQ0KPiA+ PiAncmVkIGxpbmUnIGNhcGFjaXR5IGRlbGl2ZXJzIGdyZWF0IHJlc3VsdHMgb24gV2lGaTcgcmFk aW9zIChhbmQgc29tZQ0KPiBXaUZpNg0KPiA+PiByYWRpb3MpLiAgSSBoYXZlIG5vIGRvdWJ0IHRo YXQgRmlXaSBjb3VsZCBnZXQgbW9yZSBvZiB0aGUgdGhlb3JldGljYWwNCj4gPj4gdGhyb3VnaHB1 dCBkZWxpdmVyZWQgYXQgdGhlIG1hYyBsYXllci4NCj4gPj4NCj4gPj4gRGVsaXZlcmFibGVzIGFy ZSBhbGwgdGhhdCBtYXR0ZXIgdG8gbWUgYW5kIEkgdGhpbmsgdG8gYnV5ZXJzIGFuZCB1c2Vycy4N Cj4gPj4gQmVuY2htYXJrcyB0ZXN0IGRlbGl2ZXJhYmxlcyB3aGljaCBpcyBncmVhdCBhbmQgSSdt IGEgcm91dGluZyBpcGVyZioNCj4gdXNlci4NCj4gPj4gSXQncyBlbmdpbmVlcmluZydzIHByb2Js ZW0gdG8gZGV2ZWxvcCB0aGUgbmV4dCB0ZWNoICpBTkQqIHNvbGljaXQNCj4gZnVuZGluZw0KPiA+ PiB0byBkbyBzby4NCj4gPj4NCj4gPj4NCj4gPj4NCj4gPl9fX19fX19fX19fX19fX19fX19fX19f X19fX19fX19fX19fX19fX19fX19fX19fDQo+ID5Db2RlbCBtYWlsaW5nIGxpc3QgLS0gY29kZWxA bGlzdHMuYnVmZmVyYmxvYXQubmV0DQo+ID5UbyB1bnN1YnNjcmliZSBzZW5kIGFuIGVtYWlsIHRv IGNvZGVsLWxlYXZlQGxpc3RzLmJ1ZmZlcmJsb2F0Lm5ldA0KPg0KPiAtLQ0KPiBTZW50IGZyb20g bXkgQW5kcm9pZCBkZXZpY2Ugd2l0aCBLLTkgTWFpbC4gUGxlYXNlIGV4Y3VzZSBteSBicmV2aXR5 Lg0KPg0K