From nobody Tue Nov 7 11:31:09 2023 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 4SPmJp6RJJz4yjKh for ; Tue, 7 Nov 2023 11:31:54 +0000 (UTC) (envelope-from benoitc@enki-multimedia.eu) Received: from mail-4317.proton.ch (mail-4317.proton.ch [185.70.43.17]) (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 4SPmJl65q3z3dWd for ; Tue, 7 Nov 2023 11:31:51 +0000 (UTC) (envelope-from benoitc@enki-multimedia.eu) Authentication-Results: mx1.freebsd.org; dkim=pass header.d=enki-multimedia.eu header.s=protonmail header.b=adKU9kOq; spf=pass (mx1.freebsd.org: domain of benoitc@enki-multimedia.eu designates 185.70.43.17 as permitted sender) smtp.mailfrom=benoitc@enki-multimedia.eu; dmarc=pass (policy=none) header.from=enki-multimedia.eu DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=enki-multimedia.eu; s=protonmail; t=1699356704; x=1699615904; bh=VyH9ONsgNZP61tUPW2XTYZm6FVlNV7NTp+nK2n3TUA4=; h=Date:To:From:Subject:Message-ID:Feedback-ID:From:To:Cc:Date: Subject:Reply-To:Feedback-ID:Message-ID:BIMI-Selector; b=adKU9kOqsAwi7nZu5SIhPxfi35LKYrzEBM7LbLvcCx+wNJ140rZPM9S4g98BiQ785 jkUmi37kTWdJDHbnqo9ZHLsbi6ekTCTuTVcv4pu9dyTbB0a1GStiAls0F1eQ1ZVHm/ QKJB+x9Tf7o7WCJD6/Bg3TxRohsUPkndUFN/qbVj1M19yALrxDYnyYiGHs52iAh7hf cf3F1BNv3aHmCf6R9DE4+jRHsMFu6NNqQes4HFP43oL8wpesVegAXAWnUykp0+Xndm pcU3eAtmnv1YKMDwQkXzQkNgds74neTIBqJ2fsStJzlOHbrnlmRqUZUh/NzomWVxPF gEc1fSrXiGwoQ== Date: Tue, 07 Nov 2023 11:31:09 +0000 To: "freebsd-net@FreeBSD.org" From: Benoit Chesneau Subject: modern NIC to use a mellanox connectx-4 Message-ID: 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_3dZWzXDThGHoyBmBKXZqLlSy3WwQSG4P2r7Arw3tgwk" X-Spamd-Result: default: False [-4.29 / 15.00]; NEURAL_HAM_LONG(-1.00)[-1.000]; NEURAL_HAM_MEDIUM(-1.00)[-0.999]; NEURAL_HAM_SHORT(-0.99)[-0.994]; DMARC_POLICY_ALLOW(-0.50)[enki-multimedia.eu,none]; RWL_MAILSPIKE_EXCELLENT(-0.40)[185.70.43.17:from]; R_SPF_ALLOW(-0.20)[+ip4:185.70.43.0/24]; R_DKIM_ALLOW(-0.20)[enki-multimedia.eu:s=protonmail]; MIME_GOOD(-0.10)[multipart/alternative,text/plain]; MIME_BASE64_TEXT(0.10)[]; MIME_TRACE(0.00)[0:+,1:+,2:~]; RCVD_COUNT_ZERO(0.00)[0]; TO_DN_EQ_ADDR_ALL(0.00)[]; FROM_EQ_ENVFROM(0.00)[]; MLMMJ_DEST(0.00)[freebsd-net@freebsd.org]; ARC_NA(0.00)[]; ASN(0.00)[asn:62371, ipnet:185.70.43.0/24, country:CH]; FROM_HAS_DN(0.00)[]; DKIM_TRACE(0.00)[enki-multimedia.eu:+]; TO_MATCH_ENVRCPT_ALL(0.00)[]; RCPT_COUNT_ONE(0.00)[1]; HAS_PHPMAILER_SIG(0.00)[]; MID_RHS_MATCH_FROM(0.00)[] X-Rspamd-Queue-Id: 4SPmJl65q3z3dWd X-Spamd-Bar: ---- This is a multi-part message in MIME format. --b1_3dZWzXDThGHoyBmBKXZqLlSy3WwQSG4P2r7Arw3tgwk Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: base64 SGkgYWxsLAoKUmVhZGluZyB0aGUgRnJlZWJzZCAxNC4wIGNoYW5nZXMgaXQgc2VlbXMgdGhhdCBu ZXRmbGkgeHNwb25zb3JzIHRoZSByZW1vdmFsIG9mIG9sZCBkcml2ZXJzLiBOb3Qgc3VyZSB3aGF0 IGl0IG1lYW5zIGV4YWN0bHksIGJ1dCBhcyBvZiB0b2RhdHkgd2hpY2gga2luZCBvZiBmdWxsIGZl YXR1cmVkIE5JQyBmb3Igc2VydmVycyB3ZSBjYW4gdXNlIHRoYXQgYnJpbmcgYXQgbGVhc3QgMngy NUcgPyBCeSBmdWxsIGZlYXR1cmVkIEkgbWVhbiBnb29kIHN1cHBvcnQgb2YgU1ItSU9WIGFuZCBu ZXRtYXAgdGhvdWdoIEkgYW0gbm90IHN1cmUgaWYgbmV0bWFwIGlzIGNvbnNpZGVyZWQgc3RhYmxl LgoKRm9yIG5vdyBhbGwgbXkgaGFyZHdhcmUgaGFzIGEgbWVsbGFub3ggY29ubmVjdHgtNCBMeCAy eHgyNUcgd2hpY2ggaGFzIGl0cyBwcm9ibGVtczoKCmBgYAptbHg1X2NvcmUwQHBjaTA6MTc6MDow OiBjbGFzcz0weDAyMDAwMCByZXY9MHgwMCBoZHI9MHgwMCB2ZW5kb3I9MHgxNWIzIGRldmljZT0w eDEwMTUgc3VidmVuZG9yPTB4MTU5MCBzdWJkZXZpY2U9MHgwMGQ0CnZlbmRvciA9ICdNZWxsYW5v eCBUZWNobm9sb2dpZXMnCmRldmljZSA9ICdNVDI3NzEwIEZhbWlseSBbQ29ubmVjdFgtNCBMeF0n CmNsYXNzID0gbmV0d29yawpzdWJjbGFzcyA9IGV0aGVybmV0ClBDSS1lIGVycm9ycyA9IENvcnJl Y3RhYmxlIEVycm9yIERldGVjdGVkClVuc3VwcG9ydGVkIFJlcXVlc3QgRGV0ZWN0ZWQKQ29ycmVj dGVkID0gQWR2aXNvcnkgTm9uLUZhdGFsIEVycm9yCm1seDVfY29yZTFAcGNpMDoxNzowOjE6IGNs YXNzPTB4MDIwMDAwIHJldj0weDAwIGhkcj0weDAwIHZlbmRvcj0weDE1YjMgZGV2aWNlPTB4MTAx NSBzdWJ2ZW5kb3I9MHgxNTkwIHN1YmRldmljZT0weDAwZDQKdmVuZG9yID0gJ01lbGxhbm94IFRl Y2hub2xvZ2llcycKZGV2aWNlID0gJ01UMjc3MTAgRmFtaWx5IFtDb25uZWN0WC00IEx4XScKY2xh c3MgPSBuZXR3b3JrCnN1YmNsYXNzID0gZXRoZXJuZXQKUENJLWUgZXJyb3JzID0gQ29ycmVjdGFi bGUgRXJyb3IgRGV0ZWN0ZWQKVW5zdXBwb3J0ZWQgUmVxdWVzdCBEZXRlY3RlZCBDb3JyZWN0ZWQg PSBBZHZpc29yeSBOb24tRmF0YWwgRXJyb3IKYGBgCgpCdXQgaXQgYXBwZWFycyB0aGF0IFNSLUlP ViBiYXJlbHkgd29ya3Mgb24gaXQ6IGh0dHBzOi8vYnVncy5mcmVlYnNkLm9yZy9idWd6aWxsYS9z aG93X2J1Zy5jZ2k/aWQ9MjcwODU5CgpBbHNvIHNwZWVkIHdpdGggU1ItSU9WIGlzIGhhbGYgb2Yg dGhlIGJhbmR3aWR0aCBJIGNvdWxkIGdldC4KCk5ldG1hcCB3b3JrcyB3ZWlyZGx5IGFuZCBpcHBl cmYzIG1ha2VzIHRoZSBrZXJuZWxsIHBhbmljIHdoZW4gdXNlZCB3aXRoIHVkcCBtb2RlLiBOb3Qg c3VyZSB3aGF0IGNvdWxkIGJlIGRvbmUgZm9yIGl0LgoKQW55IGZlZWRiYWNrIGlzIHdlbGNvbWUg OikKCkJlbm/DrnQgQ2hlc25lYXUsIEVua2kgTXVsdGltZWRpYQrigJQKdC4gKzMzNjA4NjU1NDkw CgpTZW50IHdpdGggW1Byb3RvbiBNYWlsXShodHRwczovL3Byb3Rvbi5tZS8pIHNlY3VyZSBlbWFp bC4= --b1_3dZWzXDThGHoyBmBKXZqLlSy3WwQSG4P2r7Arw3tgwk Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: base64 PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0 cHg7Ij5IaSBhbGwsPC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNl cmlmOyBmb250LXNpemU6IDE0cHg7Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6 IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7Ij5SZWFkaW5nIHRoZSBGcmVlYnNk IDE0LjAgY2hhbmdlcyBpdCBzZWVtcyB0aGF0IG5ldGZsaSB4c3BvbnNvcnMgdGhlIHJlbW92YWwg b2Ygb2xkIGRyaXZlcnMuIE5vdCBzdXJlIHdoYXQgaXQgbWVhbnMgZXhhY3RseSwgYnV0IGFzIG9m IHRvZGF0eSB3aGljaCBraW5kIG9mIGZ1bGwgZmVhdHVyZWQgTklDIGZvciBzZXJ2ZXJzIHdlIGNh biB1c2UgdGhhdCBicmluZyBhdCBsZWFzdCAyeDI1RyA/IEJ5IGZ1bGwgZmVhdHVyZWQgSSBtZWFu IGdvb2Qgc3VwcG9ydCBvZiBTUi1JT1YgYW5kIG5ldG1hcCB0aG91Z2ggSSBhbSBub3Qgc3VyZSBp ZiBuZXRtYXAgaXMgY29uc2lkZXJlZCBzdGFibGUuPC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1p bHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7Ij48YnI+PC9kaXY+PGRpdiBz dHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7Ij5G b3Igbm93ICZuYnNwO2FsbCBteSBoYXJkd2FyZSBoYXMgYSZuYnNwOzxzcGFuPm1lbGxhbm94IGNv bm5lY3R4LTQgTHggMnh4MjVHIHdoaWNoIGhhcyBpdHMgcHJvYmxlbXM6PC9zcGFuPjwvZGl2Pjxk aXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4 OyI+PHNwYW4+PGJyPjwvc3Bhbj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQXJpYWws IHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTRweDsiPmBgYDwvZGl2PjxkaXYgc3R5bGU9ImZvbnQt ZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyI+PHNwYW4+bWx4NV9j b3JlMEBwY2kwOjE3OjA6MDoJY2xhc3M9MHgwMjAwMDAgcmV2PTB4MDAgaGRyPTB4MDAgdmVuZG9y PTB4MTViMyBkZXZpY2U9MHgxMDE1IHN1YnZlbmRvcj0weDE1OTAgc3ViZGV2aWNlPTB4MDBkNDwv c3Bhbj48ZGl2PjxzcGFuPiZuYnNwOyAmbmJzcDsgdmVuZG9yICZuYnNwOyAmbmJzcDsgPSAnTWVs bGFub3ggVGVjaG5vbG9naWVzJzwvc3Bhbj48L2Rpdj48ZGl2PjxzcGFuPiZuYnNwOyAmbmJzcDsg ZGV2aWNlICZuYnNwOyAmbmJzcDsgPSAnTVQyNzcxMCBGYW1pbHkgW0Nvbm5lY3RYLTQgTHhdJzwv c3Bhbj48L2Rpdj48ZGl2PjxzcGFuPiZuYnNwOyAmbmJzcDsgY2xhc3MgJm5ic3A7ICZuYnNwOyAm bmJzcDs9IG5ldHdvcms8L3NwYW4+PC9kaXY+PGRpdj48c3Bhbj4mbmJzcDsgJm5ic3A7IHN1YmNs YXNzICZuYnNwOyA9IGV0aGVybmV0PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4+Jm5ic3A7IFBDSS1l IGVycm9ycyA9IENvcnJlY3RhYmxlIEVycm9yIERldGVjdGVkPC9zcGFuPjwvZGl2PjxkaXY+PHNw YW4+Jm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNw OyAmbmJzcDtVbnN1cHBvcnRlZCBSZXF1ZXN0IERldGVjdGVkPC9zcGFuPjwvZGl2PjxkaXY+PHNw YW4+Jm5ic3A7ICZuYnNwOyAmbmJzcDtDb3JyZWN0ZWQgPSBBZHZpc29yeSBOb24tRmF0YWwgRXJy b3I8L3NwYW4+PC9kaXY+PGRpdj48c3Bhbj5tbHg1X2NvcmUxQHBjaTA6MTc6MDoxOgljbGFzcz0w eDAyMDAwMCByZXY9MHgwMCBoZHI9MHgwMCB2ZW5kb3I9MHgxNWIzIGRldmljZT0weDEwMTUgc3Vi dmVuZG9yPTB4MTU5MCBzdWJkZXZpY2U9MHgwMGQ0PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4+Jm5i c3A7ICZuYnNwOyB2ZW5kb3IgJm5ic3A7ICZuYnNwOyA9ICdNZWxsYW5veCBUZWNobm9sb2dpZXMn PC9zcGFuPjwvZGl2PjxkaXY+PHNwYW4+Jm5ic3A7ICZuYnNwOyBkZXZpY2UgJm5ic3A7ICZuYnNw OyA9ICdNVDI3NzEwIEZhbWlseSBbQ29ubmVjdFgtNCBMeF0nPC9zcGFuPjwvZGl2PjxkaXY+PHNw YW4+Jm5ic3A7ICZuYnNwOyBjbGFzcyAmbmJzcDsgJm5ic3A7ICZuYnNwOz0gbmV0d29yazwvc3Bh bj48L2Rpdj48ZGl2PjxzcGFuPiZuYnNwOyAmbmJzcDsgc3ViY2xhc3MgJm5ic3A7ID0gZXRoZXJu ZXQ8L3NwYW4+PC9kaXY+PGRpdj48c3Bhbj4mbmJzcDsgUENJLWUgZXJyb3JzID0gQ29ycmVjdGFi bGUgRXJyb3IgRGV0ZWN0ZWQ8L3NwYW4+PC9kaXY+PGRpdj48c3Bhbj4mbmJzcDsgJm5ic3A7ICZu YnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwOyAmbmJzcDsgJm5ic3A7ICZuYnNwO1Vuc3VwcG9ydGVk IFJlcXVlc3QgRGV0ZWN0ZWQ8L3NwYW4+PC9kaXY+PHNwYW4+Jm5ic3A7ICZuYnNwOyAmbmJzcDtD b3JyZWN0ZWQgPSBBZHZpc29yeSBOb24tRmF0YWwgRXJyb3I8L3NwYW4+PGJyPjwvZGl2PjxkaXYg c3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyI+ YGBgPC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250 LXNpemU6IDE0cHg7Ij48YnI+PC9kaXY+PGRpdiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBz YW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7Ij5CdXQgaXQgYXBwZWFycyB0aGF0IFNSLUlPViBi YXJlbHkgd29ya3Mgb24gaXQ6Jm5ic3A7PHNwYW4+PGEgdGFyZ2V0PSJfYmxhbmsiIHJlbD0ibm9y ZWZlcnJlciBub2ZvbGxvdyBub29wZW5lciIgaHJlZj0iaHR0cHM6Ly9idWdzLmZyZWVic2Qub3Jn L2J1Z3ppbGxhL3Nob3dfYnVnLmNnaT9pZD0yNzA4NTkiPmh0dHBzOi8vYnVncy5mcmVlYnNkLm9y Zy9idWd6aWxsYS9zaG93X2J1Zy5jZ2k/aWQ9MjcwODU5PC9hPjwvc3Bhbj48L2Rpdj48ZGl2IHN0 eWxlPSJmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTRweDsiPjxi cj48L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQt c2l6ZTogMTRweDsiPkFsc28gc3BlZWQgd2l0aCBTUi1JT1YgaXMgaGFsZiBvZiB0aGUgYmFuZHdp ZHRoIEkgY291bGQgZ2V0LiAmbmJzcDs8L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQXJp YWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTRweDsiPjxicj48L2Rpdj48ZGl2IHN0eWxlPSJm b250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQtc2l6ZTogMTRweDsiPk5ldG1hcCB3 b3JrcyB3ZWlyZGx5IGFuZCBpcHBlcmYzIG1ha2VzIHRoZSBrZXJuZWxsIHBhbmljIHdoZW4gdXNl ZCB3aXRoIHVkcCBtb2RlLiAmbmJzcDtOb3Qgc3VyZSB3aGF0IGNvdWxkIGJlIGRvbmUgZm9yIGl0 LiZuYnNwOzwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlhbCwgc2Fucy1zZXJpZjsg Zm9udC1zaXplOiAxNHB4OyI+PGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtZmFtaWx5OiBBcmlh bCwgc2Fucy1zZXJpZjsgZm9udC1zaXplOiAxNHB4OyI+QW55IGZlZWRiYWNrIGlzIHdlbGNvbWUg Oik8L2Rpdj48ZGl2IHN0eWxlPSJmb250LWZhbWlseTogQXJpYWwsIHNhbnMtc2VyaWY7IGZvbnQt c2l6ZTogMTRweDsiPjxicj48L2Rpdj4NCjxkaXYgY2xhc3M9InByb3Rvbm1haWxfc2lnbmF0dXJl X2Jsb2NrIiBzdHlsZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6 IDE0cHg7Ij4NCiAgICA8ZGl2IGNsYXNzPSJwcm90b25tYWlsX3NpZ25hdHVyZV9ibG9jay11c2Vy Ij4NCiAgICAgICAgPGRpdiBzdHlsZT0iZm9udC1zdHlsZTogbm9ybWFsOyBmb250LXdlaWdodDog bm9ybWFsOyBsZXR0ZXItc3BhY2luZzogbm9ybWFsOyB0ZXh0LWluZGVudDogMHB4OyB0ZXh0LXRy YW5zZm9ybTogbm9uZTsgd2hpdGUtc3BhY2U6IG5vcm1hbDsgd29yZC1zcGFjaW5nOiAwcHg7IHRl eHQtZGVjb3JhdGlvbjogbm9uZTsgZm9udC1mYW1pbHk6IEhlbHZldGljYTsgZm9udC1zaXplOiAx MnB4OyBjb2xvcjogcmdiKDAsIDAsIDApOyI+QmVub8OudCBDaGVzbmVhdSwgRW5raSBNdWx0aW1l ZGlhPGJyPjwvZGl2PjxkaXYgc3R5bGU9ImZvbnQtc3R5bGU6IG5vcm1hbDsgZm9udC13ZWlnaHQ6 IG5vcm1hbDsgbGV0dGVyLXNwYWNpbmc6IG5vcm1hbDsgdGV4dC1pbmRlbnQ6IDBweDsgdGV4dC10 cmFuc2Zvcm06IG5vbmU7IHdoaXRlLXNwYWNlOiBub3JtYWw7IHdvcmQtc3BhY2luZzogMHB4OyB0 ZXh0LWRlY29yYXRpb246IG5vbmU7IGZvbnQtZmFtaWx5OiBIZWx2ZXRpY2E7IGZvbnQtc2l6ZTog MTJweDsgY29sb3I6IHJnYigwLCAwLCAwKTsiPuKAlDxicj48L2Rpdj48ZGl2IHN0eWxlPSJmb250 LXN0eWxlOiBub3JtYWw7IGZvbnQtd2VpZ2h0OiBub3JtYWw7IGxldHRlci1zcGFjaW5nOiBub3Jt YWw7IHRleHQtaW5kZW50OiAwcHg7IHRleHQtdHJhbnNmb3JtOiBub25lOyB3aGl0ZS1zcGFjZTog bm9ybWFsOyB3b3JkLXNwYWNpbmc6IDBweDsgdGV4dC1kZWNvcmF0aW9uOiBub25lOyBmb250LWZh bWlseTogSGVsdmV0aWNhOyBmb250LXNpemU6IDEycHg7IGNvbG9yOiByZ2IoMCwgMCwgMCk7Ij50 LiArMzM2MDg2NTU0OTAmbmJzcDs8YnI+PC9kaXY+DQogICAgPC9kaXY+DQogICAgPGRpdiBzdHls ZT0iZm9udC1mYW1pbHk6IEFyaWFsLCBzYW5zLXNlcmlmOyBmb250LXNpemU6IDE0cHg7Ij48YnI+ PC9kaXY+DQogICAgPGRpdiBjbGFzcz0icHJvdG9ubWFpbF9zaWduYXR1cmVfYmxvY2stcHJvdG9u Ij4NCiAgICAgICAgU2VudCB3aXRoIDxhIHRhcmdldD0iX2JsYW5rIiBocmVmPSJodHRwczovL3By b3Rvbi5tZS8iIHJlbD0ibm9vcGVuZXIgbm9yZWZlcnJlciI+UHJvdG9uIE1haWw8L2E+IHNlY3Vy ZSBlbWFpbC4NCiAgICA8L2Rpdj4NCjwvZGl2Pg0K --b1_3dZWzXDThGHoyBmBKXZqLlSy3WwQSG4P2r7Arw3tgwk--