From nobody Mon Aug 22 21:04:48 2022 X-Original-To: freebsd-net@mlmmj.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mlmmj.nyi.freebsd.org (Postfix) with ESMTP id 4MBPy90t68z4Zg5K for ; Mon, 22 Aug 2022 21:05:05 +0000 (UTC) (envelope-from benoitc@enki-multimedia.eu) Received: from mail-4323.proton.ch (mail-4323.proton.ch [185.70.43.23]) (using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits) key-exchange X25519 server-signature RSA-PSS (4096 bits) server-digest SHA256 client-signature RSA-PSS (4096 bits) client-digest SHA256) (Client CN "protonmail.com", Issuer "R3" (verified OK)) by mx1.freebsd.org (Postfix) with ESMTPS id 4MBPy76gtnz3pJP for ; Mon, 22 Aug 2022 21:05:03 +0000 (UTC) (envelope-from benoitc@enki-multimedia.eu) Date: Mon, 22 Aug 2022 21:04:48 +0000 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enki-multimedia.eu; s=protonmail; t=1661202300; x=1661461500; bh=MTL12uIN1N1Klu6HpF4I+ozN2hkCwYy6LlzuiuBTJNg=; h=Date:To:From:Cc:Reply-To:Subject:Message-ID:In-Reply-To: References:Feedback-ID:From:To:Cc:Date:Subject:Reply-To: Feedback-ID:Message-ID; b=AN3TppVudsrCWLhnG+GpanFvhekwGe6jVfsAfw3h5uq4QXLHjRKXQp+IuIaevs/3c MLQDcYJ/JmOJY6SEnQVLjBVkqWGzsny9TKNDThzgj3wFDQUgmK/u5JZkebpj5jnn9Z Gvw4swvCOPmU/a4KBEX6S65FotIekxVS4S4aBoqw= To: Santiago Martinez From: Benoit Chesneau Cc: "freebsd-net@FreeBSD.org" , Michael Dexter Reply-To: Benoit Chesneau Subject: Re: 25/100 G performance on freebsd Message-ID: In-Reply-To: References: <2f362689-0feb-bd41-93b2-afb46b4a4a08@codenetworks.net> Feedback-ID: 9066678:user:proton List-Id: Networking and TCP/IP with FreeBSD List-Archive: https://lists.freebsd.org/archives/freebsd-net List-Help: List-Post: List-Subscribe: List-Unsubscribe: Sender: owner-freebsd-net@freebsd.org MIME-Version: 1.0 Content-Type: multipart/alternative; boundary="b1_baJCL6279FwgA6wE1RuzCAWS190d3qMCVmc6IdS1s" X-Rspamd-Queue-Id: 4MBPy76gtnz3pJP X-Spamd-Bar: - Authentication-Results: mx1.freebsd.org; dkim=pass header.d=enki-multimedia.eu header.s=protonmail header.b=AN3TppVu; dmarc=pass (policy=none) header.from=enki-multimedia.eu; spf=pass (mx1.freebsd.org: domain of benoitc@enki-multimedia.eu designates 185.70.43.23 as permitted sender) smtp.mailfrom=benoitc@enki-multimedia.eu X-Spamd-Result: default: False [-1.32 / 15.00]; NEURAL_HAM_SHORT(-1.00)[-0.997]; NEURAL_SPAM_LONG(0.62)[0.624]; DMARC_POLICY_ALLOW(-0.50)[enki-multimedia.eu,none]; R_SPF_ALLOW(-0.20)[+ip4:185.70.43.0/24]; R_DKIM_ALLOW(-0.20)[enki-multimedia.eu:s=protonmail]; MIME_BASE64_TEXT(0.10)[]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; NEURAL_HAM_MEDIUM(-0.05)[-0.047]; MLMMJ_DEST(0.00)[freebsd-net@FreeBSD.org]; FROM_EQ_ENVFROM(0.00)[]; RCVD_COUNT_ZERO(0.00)[0]; ASN(0.00)[asn:62371, ipnet:185.70.43.0/24, country:CH]; MIME_TRACE(0.00)[0:+,1:+,2:~]; HAS_REPLYTO(0.00)[benoitc@enki-multimedia.eu]; TO_MATCH_ENVRCPT_SOME(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; REPLYTO_EQ_FROM(0.00)[]; TO_DN_EQ_ADDR_SOME(0.00)[]; DKIM_TRACE(0.00)[enki-multimedia.eu:+]; RCPT_COUNT_THREE(0.00)[3]; HAS_PHPMAILER_SIG(0.00)[]; TO_DN_SOME(0.00)[]; ARC_NA(0.00)[]; RWL_MAILSPIKE_POSSIBLE(0.00)[185.70.43.23:from] X-ThisMailContainsUnwantedMimeParts: N This is a multi-part message in MIME format. --b1_baJCL6279FwgA6wE1RuzCAWS190d3qMCVmc6IdS1s Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 Rm9yIG5vdyBJIGRpZG4ndCBjaG9vc2UgaG93IHRvIHVzZSB0aGVtIGJ1dCBJIHdhcyB0aGlua2lu ZyB0byB1c2UgdGhlbSBhcyBkaWZmZXJlbnQgY29uZHVpdHMgaW5zdGVhZCBvZiBib25kaW5nIHRo ZW0gc2luY2UgdGhlIGNvbm5lY3Rpb24gY29tZXMgdmlhIGEgRk8gMTIuIENhcmRzIGFyZSBxbG54 ZSBvciBtbHhlbiBjYXJkcyBzbyBJIGFtIG5vdCBzdXJlIHNyLWlvdiB3aWxsIHdvcmsgdW5mb3J0 dW5hdGVseS4gQXJlIHlvdSB1c2luZyB0aGUgcG9ydHMgb2YgeW91ciBjYXJkcyBzZXBhcmF0ZWx5 ID8KCk5vdGUgdGhhdCBJIGhhdmUgYWxzbyBocGUgaW50ZWxYNzIyY2FyZHMgb24gdGhlc2UgbWFj aGluZXMgYnV0IHRoZXkgYXJlIEhQRSBicmFuZGVkIGFuZCBhcyB5b3Uga25vdyBoYXZlIGEgYnVn Z3kgYmVoYXZpb3VyIHdoZW4gdXNpbmcgc3ItaW92LiBGb3Igbm93IHRoZXkgYXJlIG5vdCBwbHVn Z2VkIHRvIHRoZSBuZXR3b3JrIGFuZCBJIHdhcyB0aGlua2luZyB0byBkcm9wIHRoZW0gZnJvbSB0 aGUgbWFjaGluZSB0byByZWR1Y2UgdGhlIHBvd2VlciB1c2FnZS4gTWF5YmUgbGF0ZXN0IHVwZGF0 ZSBvZiB0aGUgZHJpdmVyIGZpeGVkIGl0IGJ1dCBJJ20gbm90IHN1cmUgYWJvdXQgdGh0YSwgSSB3 b3VsZCBuZWVkIHRvIHRyeSBsYXRlc3QgZnJvbSBpbnRlbCBidXQgaXQgaXMgbm90IHlldCBwb3J0 ZWQgYW5kIG15IGF0dGVtcHQgdG8gZG8gaXQgZmFpbGVkIDopCkFib3V0IHZhbGUgYXJlIHlvdSBj b25uZWN0aW5nIHRoZSBzd2l0Y2ggdG8gdGhlIG5ldHdvcmsgdXNpbmcgYW4gZXBhaXIgb3IgdmV0 aGVyIGludGVyZmFjZT8KCkJlbm/DrnQgQ2hlc25lYXUsIEVua2kgTXVsdGltZWRpYQrigJQKdC4g KzMzNjA4NjU1NDkwCgpTZW50IHdpdGggW1Byb3RvbiBNYWlsXShodHRwczovL3Byb3Rvbi5tZS8p IHNlY3VyZSBlbWFpbC4KCi0tLS0tLS0gT3JpZ2luYWwgTWVzc2FnZSAtLS0tLS0tCk9uIE1vbmRh eSwgQXVndXN0IDE1dGgsIDIwMjIgYXQgMTI6NTIsIFNhbnRpYWdvIE1hcnRpbmV6IDxzbUBjb2Rl bmV0d29ya3MubmV0PiB3cm90ZToKCj4gSGkgQmVub2l0LAo+Cj4gTm90IHN1cmUgd2hhdCB0aGUg ZW52aXJvbm1lbnQsIGlzIHRoaXMgdG8gaG9zdCBWTkY/IHRob3NlIDJ4MjUgd2lsbCBiZSBib3Ro IGZvcndhcmRpbmdzIG9yIGFyZSBhY3RpdmUvc3RhbmRieSkuCj4KPiBJbiBteSBjYXNlIEkgdXNl Ogo+Cj4gKiBWYWxlIGZvciBJbnRlci1WTSBpbnNpZGUgdGhlIHNhbWUgaG9zdC4KPgo+ICogVmFs ZSB0byBjb25uZWN0IHRvIHRoZSBleHRlcm5hbCBuZXR3b3JrICggaGVuY2UgYSBwaHkgaW50ZXJm YWNlKS4gSW4gbXkgY2FzZSBJbnRlbCA0MEcgTklDUy4KPgo+ICogU1ItSU9WIGZvciBzb21lIHNw ZWNpZmljIHVzZSBjYXNlcyAoZm9yIGV4YW1wbGUsIEJORyBzdHJlc3MgdGVzdCB0b29scyBydW5u aW5nIG9uIExpbnV4KS4KPgo+IEZvciBKQUlMUzoKPgo+ICogSSB0ZW5kIHRvIHVzZSBqdXN0IFZO RVQuIENhbid0IGdldCBtb3JlIHRoYW4gNy4yR2JwcyAoID4xNDAwYikgZnJvbSBhbiBlcGFpciB3 aXRob3V0IGEgYnJpZGdlIGluIHRoZSBtaWRkbGUuCj4KPiAqIFJpZ2h0IG5vdyBJJ20gZG9pbmcg c29tZSB0ZXN0cyB3aXRoIFJTUyBlbmFibGVkLCBidXQgaXMgbm90IGxvb2tpbmcgZ29vZCwgYWN0 dWFsbHkgbm8gcGFzc2luZyB0cmFmZmljLi4uCj4KPiBJZiB5b3VyIE5JQ3Mgc3RhcnQgdG8gcGxh eSBuaWNlIHdpdGggU1ItSU9WIHlvdSBjYW4gcGFzcyBhIFZGIHRvIHRoZSBKYWlsLCBzb21lIE5J Q3MgYWxsb3cgY3JlYXRpbmcgTDIgImhpZ2ggc3BlZWQiIHN3aXRjaGVzIGluIHRoZSBjYXJkICgg bmV2ZXIgdXNlZCBvbmUpLgo+Cj4gUmVnYXJkaW5nIEwzIChpbi1rZXJuZWwpLCB0aGUgb3Zlcmhl YWQgd2lsbCBiZSBiaWdnZXIgdGhhbiB1c2luZyB2YWxlLCBidXQgdGhlbiB5b3UgY2FuIGxldmVy YWdlIG11bHRpLXBhdGgsIFZYTEFOIHRlcm1pbmF0aW9uLCBJUEZXLCBQRiwgZHVtbXluZXQsIGV0 Yy4KPgo+IEhvcGUgaXQgbWFrZXMgc2Vuc2UuCj4KPiBTYW50aQo+Cj4gT24gOC8xMy8yMiAxMToy MCwgQmVub2l0IENoZXNuZWF1IHdyb3RlOgo+Cj4+IFNhbnRpYWdvIHRoYW5rcyBmb3IgdGhlIGhl bHAuCj4+Cj4+IEkgYW0gY3VyaW91cyBhYm91dCB5b3VyIHZhbGUgc2V0dXAuIERvIHlvdSBoYXZl IG9ubHkgaW50ZXJuYWwgYnJpZGdlcz8gRG8geW91IGJyaWRnZSB0aGUgTklDIGludGVyZmFjZSBv ciBhcmUgZG9pbmcgTDM/Cj4+Cj4+IEFmYWlrIGkgYW0gdHJ5aW5nIHRvIGRpbmQgd2hhdCB3b3Vs ZCBiZSB0aGUgbW9zdCBlZmZpY2llbnQgd2F5IHRvIHVzZSB0aGUgMjVHQiBpbnRlcmZhY2VzIHdo bGUgaXNvbGF0aW5nIHRoZSBzZXJ2aWNlcyBvbiB0aGVtLiBJIHZlcnkgaGVzaXRhbnQgb2YgdGhl IGFwcHJvYWNoIGFuZCB1bnN1cmUgaWYgZnJlZWJzZCB0aGVzZSBkYXlzIGNhbiBmaXQgdGhlIGJp bGw6Cj4+Cj4+ICogcnVuIGlzb2xhdGVkIHNlcnZpY2VzIG92ZXIgdGhlIDJ4MjVHIC4gd291bGQg amFpbHMgbGltaXQgdGhlIGJhbmR3aXRoPwo+PiAqIHBvc3NpYmx5IHJ1biBiaHl2ZSBzZXJ2aWNl cyB3aGVuIGxpbnV4IG9yIGVsc2UgaXMgbmVlZGVkIC4KPj4KPj4gV291bGQgdXNpbmcgb25seSBM MyByb3V0aW5nIHNvbHZlIHNvbWUgcGVyZm9ybWFuY2VzIGlzc3Vlcz8KPj4KPj4gYmVub2l0Cj4+ Cj4+IE9uIFdlZCwgQXVnIDEwLCAyMDIyIGF0IDIzOjMxLCBTYW50aWFnbyBNYXJ0aW5leiA8c21A Y29kZW5ldHdvcmtzLm5ldD4gd3JvdGU6Cj4+Cj4+PiBIaSBCZW5vaXQsIHNvcnJ5IHRvIGhlYXIg dGhhdCB0aGUgU1ItSU9WIHN0aWxsIG5vdCB3b3JraW5nIG9uIHlvdXIgSFcuCj4+Pgo+Pj4gSGF2 ZSB5b3UgdGVzdGVkIHRoZSBsYXN0IHBhdGNoIGZyb20gSW50ZWw/Cj4+Pgo+Pj4gUmVnYXJkaW5n IEJoeXZlLCB5b3UgY2FuIHVzZSBWYWxlIHN3aXRjaGVzIChiYXNlZCBvbiBuZXRtYXApLgo+Pj4g T24gbXkgbWFjaGluZXMsIGkgZ2V0IGFyb3VuZCB+MzNHYnBzIGJldHdlZW4gVk0gKHNhbWUgbG9j YWwgbWFjaGluZSksIHNvbWV0aW1lcyBnb2luZyB0b3dhcmRzIDQwR2Jwcy4uLiAoIFRoZXNlIGFy ZSBiYXNpYyB0ZXN0cyB3aXRoIGlwZXJmMyBhbmQgVFNPL0xSTyBlbmFibGVkKS4KPj4+Cj4+PiBA TWljaGFlbCBEZXh0ZXIgaXMgd29ya2luZyBvbiBhIGRvY3VtZW50IHRoYXQgY29udGFpbnMgY29u ZmlndXJhdGlvbiBleGFtcGxlcyBhbmQgdGVzdCByZXN1bHRzIGZvciB0aGUgZGlmZmVyZW50IG5l dHdvcmsgYmFja2VuZCBhdmFpbGFibGUgaW4gYmh5dmUuCj4+Pgo+Pj4gSWYgeW91IG5lZWQgaGVs cCwgbGV0IG1lIGtub3cgYW5kIHdlIGNhbiBzZXQgdXAgYSBjYWxsLgo+Pj4gVGFrZSBjYXJlLgo+ Pj4gU2FudGkKPj4+Cj4+PiBPbiA4LzgvMjIgMDg6NTcsIEJlbm9pdCBDaGVzbmVhdSB3cm90ZToK Pj4+Cj4+Pj4gRm9yIHNvbWUgcmVhc29ucy4gSSBjYW7igJl0IHVzZSBTUi1JT1Ygb24gbXkgZnJl ZWJzZCBtYWNoaW5lcyAoSFBFIERMMTYwIGdlbjEwKSB3aXRoIGxhdGVzdCAyNUcgSFBFIGJyYW5k ZWQgY2FyZHMuIEkgb3BlbmVkIHRpY2tldHMgZm9yIHRoYXQgYnV0IHNpbmNlIHRoZW4gbm8gbW92 ZSBoYXBwZW5lZC4KPj4+Pgo+Pj4+IFNvIEkgd29uZGVyIGlkIHRoZXJlIGlzIGEgZ29vZCBzZXR1 cCB0byB1c2UgdGhlc2UgY2FyZHMgd2l0aCB0aGUgdmlydHVhbGl6YXRpb24uIFdoaWNoIGtpbmQg b2YgcGVyZm9ybWFuY2Ugc2hvdWxkIEkgZXhwZWN0IHVzaW5nIGlmX2JyaWRnZT8gV2hhdCBpZiBp IGFtIGRvaW5nIEwzIHJvdXRpbmcgaW5zdGVhZCB1c2luZyBlcGFpciBvciB0YXAgKGZvciBiaHl2 ZSkuIFdvdWxkIGl0IHdvcmsgYmV0dGVyPwo+Pj4+Cj4+Pj4gQW55IGhpbnQgaXMgd2VsY29tZSwK Pj4+Pgo+Pj4+IEJlbm/DrnQ= --b1_baJCL6279FwgA6wE1RuzCAWS190d3qMCVmc6IdS1s Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IGFyaWFsOyBmb250LXNpemU6IDE0cHg7Ij48c3BhbiBz dHlsZT0iY2FyZXQtY29sb3I6cmdiKDAsIDAsIDApO2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwg MjU1LCAyNTUpIj5Gb3Igbm93IEkgZGlkbid0IGNob29zZSBob3cgdG8gdXNlIHRoZW0gYnV0IEkg d2FzIHRoaW5raW5nIHRvIHVzZSB0aGVtIGFzIGRpZmZlcmVudCBjb25kdWl0cyBpbnN0ZWFkIG9m IGJvbmRpbmcgdGhlbSBzaW5jZSB0aGUgY29ubmVjdGlvbiBjb21lcyB2aWEgYSBGTyAxMi4gQ2Fy ZHMgYXJlIHFsbnhlIG9yIG1seGVuIGNhcmRzIHNvIEkgYW0gbm90IHN1cmUgc3ItaW92IHdpbGwg d29yayB1bmZvcnR1bmF0ZWx5LiBBcmUgeW91IHVzaW5nIHRoZSBwb3J0cyBvZiB5b3VyIGNhcmRz IHNlcGFyYXRlbHkgPzwvc3Bhbj48ZGl2IHN0eWxlPSJjYXJldC1jb2xvcjpyZ2IoMCwgMCwgMCk7 YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LCAyNTUsIDI1NSkiPjxicj48L2Rpdj48ZGl2IHN0eWxl PSJjYXJldC1jb2xvcjpyZ2IoMCwgMCwgMCk7YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LCAyNTUs IDI1NSkiPk5vdGUgdGhhdCBJIGhhdmUgYWxzbyBocGUgaW50ZWw8c3Bhbj4mbmJzcDs8L3NwYW4+ PHNwYW4+WDcyMjwvc3Bhbj5jYXJkcyBvbiB0aGVzZSBtYWNoaW5lcyBidXQgdGhleSBhcmUgSFBF IGJyYW5kZWQgYW5kIGFzIHlvdSBrbm93IGhhdmUgYSBidWdneSBiZWhhdmlvdXIgd2hlbiB1c2lu ZyBzci1pb3YuIEZvciBub3cgdGhleSBhcmUgbm90IHBsdWdnZWQgdG8gdGhlIG5ldHdvcmsgYW5k IEkgd2FzIHRoaW5raW5nIHRvIGRyb3AgdGhlbSBmcm9tIHRoZSBtYWNoaW5lIHRvIHJlZHVjZSB0 aGUgcG93ZWVyIHVzYWdlLiBNYXliZSBsYXRlc3QgdXBkYXRlIG9mIHRoZSBkcml2ZXIgZml4ZWQg aXQgYnV0IEknbSBub3Qgc3VyZSBhYm91dCB0aHRhLCBJIHdvdWxkIG5lZWQgdG8gdHJ5IGxhdGVz dCBmcm9tIGludGVsIGJ1dCBpdCBpcyBub3QgeWV0IHBvcnRlZCBhbmQgbXkgYXR0ZW1wdCB0byBk byBpdCBmYWlsZWQgOik8L2Rpdj48ZGl2IHN0eWxlPSJjYXJldC1jb2xvcjpyZ2IoMCwgMCwgMCk7 YmFja2dyb3VuZC1jb2xvcjpyZ2IoMjU1LCAyNTUsIDI1NSkiPjxicj48L2Rpdj48c3BhbiBzdHls ZT0iY2FyZXQtY29sb3I6cmdiKDAsIDAsIDApO2JhY2tncm91bmQtY29sb3I6cmdiKDI1NSwgMjU1 LCAyNTUpIj5BYm91dCB2YWxlIGFyZSB5b3UgY29ubmVjdGluZyB0aGUgc3dpdGNoIHRvIHRoZSBu ZXR3b3JrIHVzaW5nIGFuIGVwYWlyIG9yIHZldGhlciBpbnRlcmZhY2U/Jm5ic3A7PC9zcGFuPjxi cj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTogYXJpYWw7IGZvbnQtc2l6ZTogMTRweDsi Pjxicj48L2Rpdj4NCjxkaXYgY2xhc3M9InByb3Rvbm1haWxfc2lnbmF0dXJlX2Jsb2NrIiBzdHls ZT0iZm9udC1mYW1pbHk6IGFyaWFsOyBmb250LXNpemU6IDE0cHg7Ij4NCiAgICA8ZGl2IGNsYXNz PSJwcm90b25tYWlsX3NpZ25hdHVyZV9ibG9jay11c2VyIj4NCiAgICAgICAgPGRpdiBzdHlsZT0i Zm9udC1zdHlsZTpub3JtYWw7Zm9udC13ZWlnaHQ6bm9ybWFsO2xldHRlci1zcGFjaW5nOm5vcm1h bDt0ZXh0LWluZGVudDowcHg7dGV4dC10cmFuc2Zvcm06bm9uZTt3aGl0ZS1zcGFjZTpub3JtYWw7 d29yZC1zcGFjaW5nOjBweDt0ZXh0LWRlY29yYXRpb246bm9uZTtjb2xvcjpyZ2IoMCwwLDApO2Zv bnQtZmFtaWx5OkhlbHZldGljYTtmb250LXNpemU6MTJweDsiPkJlbm/DrnQgQ2hlc25lYXUsIEVu a2kgTXVsdGltZWRpYTxicj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LXN0eWxlOm5vcm1hbDtmb250 LXdlaWdodDpub3JtYWw7bGV0dGVyLXNwYWNpbmc6bm9ybWFsO3RleHQtaW5kZW50OjBweDt0ZXh0 LXRyYW5zZm9ybTpub25lO3doaXRlLXNwYWNlOm5vcm1hbDt3b3JkLXNwYWNpbmc6MHB4O3RleHQt ZGVjb3JhdGlvbjpub25lO2NvbG9yOnJnYigwLDAsMCk7Zm9udC1mYW1pbHk6SGVsdmV0aWNhO2Zv bnQtc2l6ZToxMnB4OyI+4oCUPGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtc3R5bGU6bm9ybWFs O2ZvbnQtd2VpZ2h0Om5vcm1hbDtsZXR0ZXItc3BhY2luZzpub3JtYWw7dGV4dC1pbmRlbnQ6MHB4 O3RleHQtdHJhbnNmb3JtOm5vbmU7d2hpdGUtc3BhY2U6bm9ybWFsO3dvcmQtc3BhY2luZzowcHg7 dGV4dC1kZWNvcmF0aW9uOm5vbmU7Y29sb3I6cmdiKDAsMCwwKTtmb250LWZhbWlseTpIZWx2ZXRp Y2E7Zm9udC1zaXplOjEycHg7Ij50LiArMzM2MDg2NTU0OTAmbmJzcDs8YnI+PC9kaXY+DQogICAg PC9kaXY+DQogICAgPGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IGFyaWFsOyBmb250LXNpemU6IDE0 cHg7Ij48YnI+PC9kaXY+DQogICAgPGRpdiBjbGFzcz0icHJvdG9ubWFpbF9zaWduYXR1cmVfYmxv Y2stcHJvdG9uIj4NCiAgICAgICAgU2VudCB3aXRoIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJo dHRwczovL3Byb3Rvbi5tZS8iIHJlbD0ibm9vcGVuZXIgbm9yZWZlcnJlciI+UHJvdG9uIE1haWw8 L2E+IHNlY3VyZSBlbWFpbC4NCiAgICA8L2Rpdj4NCjwvZGl2Pg0KPGRpdiBzdHlsZT0iZm9udC1m YW1pbHk6IGFyaWFsOyBmb250LXNpemU6IDE0cHg7Ij48YnI+PC9kaXY+PGRpdiBjbGFzcz0icHJv dG9ubWFpbF9xdW90ZSI+DQogICAgICAgIC0tLS0tLS0gT3JpZ2luYWwgTWVzc2FnZSAtLS0tLS0t PGJyPg0KICAgICAgICBPbiBNb25kYXksIEF1Z3VzdCAxNXRoLCAyMDIyIGF0IDEyOjUyLCBTYW50 aWFnbyBNYXJ0aW5leiAmbHQ7c21AY29kZW5ldHdvcmtzLm5ldCZndDsgd3JvdGU6PGJyPjxicj4N CiAgICAgICAgPGJsb2NrcXVvdGUgY2xhc3M9InByb3Rvbm1haWxfcXVvdGUiIHR5cGU9ImNpdGUi Pg0KICAgICAgICAgICAgDQogICAgPHA+SGkgQmVub2l0LCA8L3A+DQogICAgPHA+Tm90IHN1cmUg d2hhdCB0aGUgZW52aXJvbm1lbnQsIGlzIHRoaXMgdG8gaG9zdCBWTkY/IHRob3NlIDJ4MjUNCiAg ICAgIHdpbGwgYmUgYm90aCBmb3J3YXJkaW5ncyBvciBhcmUgYWN0aXZlL3N0YW5kYnkpLjwvcD4N CiAgICA8cD5JbiBteSBjYXNlIEkgdXNlOjwvcD4NCiAgICA8cD4gICAqICAgIFZhbGUgZm9yIElu dGVyLVZNIGluc2lkZSB0aGUgc2FtZSBob3N0LjwvcD4NCiAgICA8cD4gICAqICAgIFZhbGUgdG8g Y29ubmVjdCB0byB0aGUgZXh0ZXJuYWwgbmV0d29yayAoIGhlbmNlIGEgcGh5DQogICAgICBpbnRl cmZhY2UpLiBJbiBteSBjYXNlIEludGVsIDQwRyBOSUNTLjwvcD4NCiAgICA8cD4gICAqICAgIFNS LUlPViBmb3Igc29tZSBzcGVjaWZpYyB1c2UgY2FzZXMgKGZvciBleGFtcGxlLCBCTkcNCiAgICAg IHN0cmVzcyB0ZXN0IHRvb2xzIHJ1bm5pbmcgb24gTGludXgpLjwvcD4NCiAgICA8cD48YnI+DQog ICAgICBGb3IgSkFJTFM6PC9wPg0KICAgIDxwPiAgICAqICAgIEkgdGVuZCB0byB1c2UganVzdCBW TkVULiBDYW4ndCBnZXQgbW9yZSB0aGFuIDcuMkdicHMgKA0KICAgICAgJmd0OzE0MDBiKSBmcm9t IGFuIGVwYWlyIHdpdGhvdXQgYSBicmlkZ2UgaW4gdGhlIG1pZGRsZS48L3A+DQogICAgPHA+ICAg ICogICAgUmlnaHQgbm93IEknbSBkb2luZyBzb21lIHRlc3RzIHdpdGggUlNTIGVuYWJsZWQsIGJ1 dCBpcw0KICAgICAgbm90IGxvb2tpbmcgZ29vZCwgYWN0dWFsbHkgbm8gcGFzc2luZyB0cmFmZmlj Li4uIDwvcD4NCiAgICA8cD48YnI+DQogICAgICBJZiB5b3VyIE5JQ3Mgc3RhcnQgdG8gcGxheSBu aWNlIHdpdGggU1ItSU9WIHlvdSBjYW4gcGFzcyBhIFZGIHRvDQogICAgICB0aGUgSmFpbCwgc29t ZSBOSUNzIGFsbG93IGNyZWF0aW5nIEwyICJoaWdoIHNwZWVkIiBzd2l0Y2hlcyBpbiB0aGUNCiAg ICAgIGNhcmQgKCBuZXZlciB1c2VkIG9uZSkuPC9wPg0KICAgIDxwPlJlZ2FyZGluZyBMMyAoaW4t a2VybmVsKSwgdGhlIG92ZXJoZWFkIHdpbGwgYmUgYmlnZ2VyIHRoYW4gdXNpbmcNCiAgICAgIHZh bGUsIGJ1dCB0aGVuIHlvdSBjYW4gbGV2ZXJhZ2UgbXVsdGktcGF0aCwgVlhMQU4gdGVybWluYXRp b24sDQogICAgICBJUEZXLCBQRiwgZHVtbXluZXQsICBldGMuPGJyPg0KICAgIDwvcD4NCiAgICA8 cD5Ib3BlIGl0IG1ha2VzIHNlbnNlLjwvcD4NCiAgICA8cD5TYW50aTwvcD4NCiAgICA8cD48YnI+ DQogICAgPC9wPg0KICAgIDxkaXYgY2xhc3M9Im1vei1jaXRlLXByZWZpeCI+T24gOC8xMy8yMiAx MToyMCwgQmVub2l0IENoZXNuZWF1DQogICAgICB3cm90ZTo8YnI+DQogICAgPC9kaXY+DQogICAg PGJsb2NrcXVvdGUgdHlwZT0iY2l0ZSI+DQogICAgICANCiAgICAgIDxkaXY+PGJyPg0KICAgICAg PC9kaXY+DQogICAgICBTYW50aWFnbyB0aGFua3MgZm9yIHRoZSBoZWxwLg0KICAgICAgPGRpdj48 YnI+DQogICAgICA8L2Rpdj4NCiAgICAgIDxkaXY+SSBhbSBjdXJpb3VzIGFib3V0IHlvdXIgdmFs ZSBzZXR1cC4gRG8geW91IGhhdmUgb25seSBpbnRlcm5hbA0KICAgICAgICBicmlkZ2VzPyBEbyB5 b3UgYnJpZGdlIHRoZSBOSUMgaW50ZXJmYWNlIG9yIGFyZSBkb2luZyBMMz8gIDwvZGl2Pg0KICAg ICAgPGRpdj48YnI+DQogICAgICA8L2Rpdj4NCiAgICAgIDxkaXY+QWZhaWsgaSBhbSB0cnlpbmcg dG8gZGluZCB3aGF0IHdvdWxkIGJlIHRoZSBtb3N0IGVmZmljaWVudA0KICAgICAgICB3YXkgdG8g dXNlIHRoZSAyNUdCIGludGVyZmFjZXMgd2hsZSBpc29sYXRpbmcgdGhlIHNlcnZpY2VzIG9uDQog ICAgICAgIHRoZW0uICBJIHZlcnkgaGVzaXRhbnQgb2YgdGhlIGFwcHJvYWNoIGFuZCB1bnN1cmUg aWYgZnJlZWJzZA0KICAgICAgICB0aGVzZSBkYXlzIGNhbiBmaXQgdGhlIGJpbGw6PC9kaXY+DQog ICAgICA8ZGl2Pjxicj4NCiAgICAgIDwvZGl2Pg0KICAgICAgPGRpdj4qIHJ1biBpc29sYXRlZCBz ZXJ2aWNlcyBvdmVyIHRoZSAyeDI1RyAuIHdvdWxkIGphaWxzIGxpbWl0DQogICAgICAgIHRoZSBi YW5kd2l0aD8gPC9kaXY+DQogICAgICA8ZGl2PiogcG9zc2libHkgcnVuIGJoeXZlIHNlcnZpY2Vz IHdoZW4gbGludXggb3IgZWxzZSAgaXMgbmVlZGVkDQogICAgICAgIC4gPC9kaXY+DQogICAgICA8 ZGl2Pjxicj4NCiAgICAgIDwvZGl2Pg0KICAgICAgPGRpdj5Xb3VsZCB1c2luZyBvbmx5IEwzIHJv dXRpbmcgc29sdmUgc29tZSBwZXJmb3JtYW5jZXMgaXNzdWVzPyA8L2Rpdj4NCiAgICAgIDxkaXY+ PGJyPg0KICAgICAgPC9kaXY+DQogICAgICA8ZGl2Pjxicj4NCiAgICAgIDwvZGl2Pg0KICAgICAg PGRpdj5iZW5vaXQ8YnI+DQogICAgICAgIDxkaXY+PGJyPg0KICAgICAgICA8L2Rpdj4NCiAgICAg ICAgPGRpdj48YnI+DQogICAgICAgIDwvZGl2Pg0KICAgICAgICBPbiBXZWQsIEF1ZyAxMCwgMjAy MiBhdCAyMzozMSwgU2FudGlhZ28gTWFydGluZXogJmx0OzxhIGNsYXNzPSJtb3otdHh0LWxpbmst ZnJlZXRleHQiIGhyZWY9Im1haWx0bzpzbUBjb2RlbmV0d29ya3MubmV0IiByZWw9Im5vcmVmZXJy ZXIgbm9mb2xsb3cgbm9vcGVuZXIiIHRhcmdldD0iX2JsYW5rIj5zbUBjb2RlbmV0d29ya3MubmV0 PC9hPiZndDsNCiAgICAgICAgd3JvdGU6DQogICAgICAgIDxibG9ja3F1b3RlIHR5cGU9ImNpdGUi IGNsYXNzPSJwcm90b25tYWlsX3F1b3RlIj4gSGkgQmVub2l0LA0KICAgICAgICAgIHNvcnJ5IHRv IGhlYXIgdGhhdCB0aGUgU1ItSU9WIHN0aWxsIG5vdCB3b3JraW5nIG9uIHlvdXIgSFcuIDxicj4N CiAgICAgICAgICA8YnI+DQogICAgICAgICAgSGF2ZSB5b3UgdGVzdGVkIHRoZSBsYXN0IHBhdGNo IGZyb20gSW50ZWw/IDxicj4NCiAgICAgICAgICA8YnI+DQogICAgICAgICAgUmVnYXJkaW5nIEJo eXZlLCB5b3UgY2FuIHVzZSBWYWxlIHN3aXRjaGVzIChiYXNlZCBvbiBuZXRtYXApLg0KICAgICAg ICAgIDxicj4NCiAgICAgICAgICBPbiBteSBtYWNoaW5lcywgaSBnZXQgYXJvdW5kIH4zM0dicHMg YmV0d2VlbiBWTSAoc2FtZSBsb2NhbA0KICAgICAgICAgIG1hY2hpbmUpLCBzb21ldGltZXMgZ29p bmcgdG93YXJkcyA0MEdicHMuLi4gKCBUaGVzZSBhcmUgYmFzaWMNCiAgICAgICAgICB0ZXN0cyB3 aXRoIGlwZXJmMyBhbmQgVFNPL0xSTyBlbmFibGVkKS48YnI+DQogICAgICAgICAgPGJyPg0KICAg ICAgICAgIEBNaWNoYWVsIERleHRlciBpcyB3b3JraW5nIG9uIGEgZG9jdW1lbnQgdGhhdCBjb250 YWlucw0KICAgICAgICAgIGNvbmZpZ3VyYXRpb24gZXhhbXBsZXMgYW5kIHRlc3QgcmVzdWx0cyBm b3IgdGhlIGRpZmZlcmVudA0KICAgICAgICAgIG5ldHdvcmsgYmFja2VuZCBhdmFpbGFibGUgaW4g Ymh5dmUuPGJyPg0KICAgICAgICAgIDxicj4NCiAgICAgICAgICBJZiB5b3UgbmVlZCBoZWxwLCBs ZXQgbWUga25vdyBhbmQgd2UgY2FuIHNldCB1cCBhIGNhbGwuPGJyPg0KICAgICAgICAgIFRha2Ug Y2FyZS48YnI+DQogICAgICAgICAgU2FudGkNCiAgICAgICAgICA8ZGl2IGNsYXNzPSJtb3otY2l0 ZS1wcmVmaXgiPjxicj4NCiAgICAgICAgICA8L2Rpdj4NCiAgICAgICAgICA8ZGl2IGNsYXNzPSJt b3otY2l0ZS1wcmVmaXgiPk9uIDgvOC8yMiAwODo1NywgQmVub2l0IENoZXNuZWF1DQogICAgICAg ICAgICB3cm90ZTo8YnI+DQogICAgICAgICAgPC9kaXY+DQogICAgICAgICAgPGJsb2NrcXVvdGUg dHlwZT0iY2l0ZSI+DQogICAgICAgICAgICA8ZGl2PkZvciBzb21lIHJlYXNvbnMuIEkgY2Fu4oCZ dCB1c2UgU1ItSU9WIG9uIG15IGZyZWVic2QNCiAgICAgICAgICAgICAgbWFjaGluZXMgKEhQRSBE TDE2MCBnZW4xMCkgd2l0aCBsYXRlc3QgMjVHIEhQRSBicmFuZGVkDQogICAgICAgICAgICAgIGNh cmRzLiBJIG9wZW5lZCB0aWNrZXRzIGZvciB0aGF0IGJ1dCBzaW5jZSB0aGVuIG5vIG1vdmUNCiAg ICAgICAgICAgICAgaGFwcGVuZWQuPC9kaXY+DQogICAgICAgICAgICA8ZGl2Pjxicj4NCiAgICAg ICAgICAgIDwvZGl2Pg0KICAgICAgICAgICAgPGRpdj5TbyBJIHdvbmRlciBpZCB0aGVyZSBpcyBh IGdvb2Qgc2V0dXAgdG8gdXNlIHRoZXNlIGNhcmRzDQogICAgICAgICAgICAgIHdpdGggdGhlIHZp cnR1YWxpemF0aW9uLiBXaGljaCBraW5kIG9mIHBlcmZvcm1hbmNlIHNob3VsZA0KICAgICAgICAg ICAgICBJIGV4cGVjdCB1c2luZyBpZl9icmlkZ2U/IFdoYXQgaWYgaSBhbSBkb2luZyBMMyByb3V0 aW5nDQogICAgICAgICAgICAgIGluc3RlYWQgdXNpbmcgZXBhaXIgb3IgdGFwIChmb3IgYmh5dmUp LiBXb3VsZCBpdCB3b3JrDQogICAgICAgICAgICAgIGJldHRlcj88L2Rpdj4NCiAgICAgICAgICAg IDxkaXY+PGJyPg0KICAgICAgICAgICAgPC9kaXY+DQogICAgICAgICAgICA8ZGl2PkFueSBoaW50 IGlzIHdlbGNvbWUsPC9kaXY+DQogICAgICAgICAgICA8ZGl2Pjxicj4NCiAgICAgICAgICAgIDwv ZGl2Pg0KICAgICAgICAgICAgPGRpdj5CZW5vw650PC9kaXY+DQogICAgICAgICAgICA8ZGl2Pjxi cj4NCiAgICAgICAgICAgIDwvZGl2Pg0KICAgICAgICAgIDwvYmxvY2txdW90ZT4NCiAgICAgICAg PC9ibG9ja3F1b3RlPg0KICAgICAgPC9kaXY+DQogICAgPC9ibG9ja3F1b3RlPg0KICANCg0KDQog ICAgICAgIDwvYmxvY2txdW90ZT48YnI+DQogICAgPC9kaXY+ --b1_baJCL6279FwgA6wE1RuzCAWS190d3qMCVmc6IdS1s--