From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-ie0-x22c.google.com (mail-ie0-x22c.google.com [IPv6:2607:f8b0:4001:c03::22c]) (using TLSv1 with cipher RC4-SHA (128/128 bits)) (Client CN "smtp.gmail.com", Issuer "Google Internet Authority G2" (verified OK)) by huchra.bufferbloat.net (Postfix) with ESMTPS id C79AC21F263 for ; Mon, 20 Apr 2015 21:15:13 -0700 (PDT) Received: by iedfl3 with SMTP id fl3so6076568ied.1 for ; Mon, 20 Apr 2015 21:15:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:sender:in-reply-to:references:date:message-id:subject :from:to:content-type; bh=dECOF3NXgAoZA+LtWlAfdu1LjTJlfB3+Z8zlVw3EBKQ=; b=JKwDOzqu/HM3gFfBy/ZNWgCvPXZTrAG2pSJ9i/l7bLAJQiUFFtCpGAMLpyEwxymE5v lpbobvYt0OT8DYz/olI58bGxVGYf3pafnWsNjz3h2Ff4E/nokdvq+eQFxjADZYRrGVVU dtHFRdPshZc1H8HzIEFHo2vc2nuxGUNQ3O6G9Wlsb9BvFXfl4EbCbax3fbqx85Q3ZAk6 jachlaLUlRqIWH3OuoRT0iILmhIsZN7zHmHCHamhY7Q1R9+fkpOzzQuyaJQ+Bdj4mp+p OEnxfS6zjBkwYar0pTvJBUcQ9Py5n9YsZeyeVQyiMQgrqCW3o6hXwqSbDtly8Akxao+e piCw== MIME-Version: 1.0 X-Received: by 10.50.77.48 with SMTP id p16mr1430098igw.31.1429589712441; Mon, 20 Apr 2015 21:15:12 -0700 (PDT) Sender: justinbeech@gmail.com Received: by 10.50.107.42 with HTTP; Mon, 20 Apr 2015 21:15:12 -0700 (PDT) In-Reply-To: <14cd9e74e48.27f7.e972a4f4d859b00521b2b659602cb2f9@superduper.net> References: <75C1DDFF-FBD2-4825-A167-92DFCF6A7713@gmail.com> <8AD4493E-EA21-496D-923D-B4257B078A1C@gmx.de> <8E4F61CA-4274-4414-B4C0-F582167D66D6@gmx.de> <2C987A4B-7459-43C1-A49C-72F600776B00@gmail.com> <14cd9e74e48.27f7.e972a4f4d859b00521b2b659602cb2f9@superduper.net> Date: Tue, 21 Apr 2015 14:15:12 +1000 X-Google-Sender-Auth: 1U77tu5VKNPiQx1GXXvz6Ap1Gvo Message-ID: From: jb To: bloat Content-Type: multipart/mixed; boundary=047d7bdcaaa4fcbd180514344a4c Subject: Re: [Bloat] DSLReports Speed Test has latency measurement built-in X-BeenThere: bloat@lists.bufferbloat.net X-Mailman-Version: 2.1.13 Precedence: list List-Id: General list for discussing Bufferbloat List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Apr 2015 04:15:42 -0000 --047d7bdcaaa4fcbd180514344a4c Content-Type: multipart/alternative; boundary=047d7bdcaaa4fcbd120514344a4a --047d7bdcaaa4fcbd120514344a4a Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: quoted-printable I've discovered something perhaps you guys can explain it better or shed some light. It isn't specifically to do with buffer bloat but it is to do with TCP tuning. Attached is two pictures of my upload to New York speed test server with 1 stream. It doesn't make any difference if it is 1 stream or 8 streams, the picture and behaviour remains the same. I am 200ms from new york so it qualifies as a fairly long (but not very fat) pipe. The nice smooth one is with linux tcp_rmem set to '4096 32768 65535' (on the server) The ugly bumpy one is with linux tcp_rmem set to '4096 65535 67108864' (on the server) It actually doesn't matter what that last huge number is, once it goes much about 65k, e.g. 128k or 256k or beyond things get bumpy and ugly on the upload speed. Now as I understand this setting, it is the tcp receive window that Linux advertises, and the last number sets the maximum size it can get to (for one TCP stream). For users with very fast upload speeds, they do not see an ugly bumpy upload graph, it is smooth and sustained. But for the majority of users (like me) with uploads less than 5 to 10mbit, we frequently see the ugly graph. The second tcp_rmem setting is how I have been running the speed test servers. Up to now I thought this was just the distance of the speedtest from the interface: perhaps the browser was buffering a lot, and didn't feed back progress but now I realise the bumpy one is actually being influenced by the server receive window. I guess my question is this: Why does ALLOWING a large receive window appear to encourage problems with upload smoothness?? This implies that setting the receive window should be done on a connection by connection basis: small for slow connections, large, for high speed, long distance connections. In addition, if I cap it to 65k, for reasons of smoothness, that means the bandwidth delay product will keep maximum speed per upload stream quite low. So a symmetric or gigabit connection is going to need a ton of parallel streams to see full speed. Most puzzling is why would anything special be required on the Client --> Server side of the equation but nothing much appears wrong with the Server --> Client side, whether speeds are very low (GPRS) or very high (gigabit). Note that also I am not yet sure if smoothness =3D=3D better throughput. I = have noticed upload speeds for some people often being under their claimed sync rate by 10 or 20% but I've no logs that show the bumpy graph is showing inefficiency. Maybe. help! On Tue, Apr 21, 2015 at 12:56 PM, Simon Barber wrote= : > One thing users understand is slow web access. Perhaps translating the > latency measurement into 'a typical web page will take X seconds longer t= o > load', or even stating the impact as 'this latency causes a typical web > page to load slower, as if your connection was only YY% of the measured > speed.' > > Simon > > Sent with AquaMail for Android > http://www.aqua-mail.com > > > > On April 19, 2015 1:54:19 PM Jonathan Morton > wrote: > > >>>> Frequency readouts are probably more accessible to the latter. >> >>> >> >>> The frequency domain more accessible to laypersons? I have my >> doubts ;) >> >> >> >> Gamers, at least, are familiar with =E2=80=9Cframes per second=E2=80= =9D and how that >> corresponds to their monitor=E2=80=99s refresh rate. >> > >> > I am sure they can easily transform back into time domain to get >> the frame period ;) . I am partly kidding, I think your idea is great i= n >> that it is a truly positive value which could lend itself to being used = in >> ISP/router manufacturer advertising, and hence might work in the real wo= rk; >> on the other hand I like to keep data as =E2=80=9Craw=E2=80=9D as possib= le (not that ^(-1) >> is a transformation worthy of being called data massage). >> > >> >> The desirable range of latencies, when converted to Hz, happens to be >> roughly the same as the range of desirable frame rates. >> > >> > Just to play devils advocate, the interesting part is time or >> saving time so seconds or milliseconds are also intuitively understandab= le >> and can be easily added ;) >> >> Such readouts are certainly interesting to people like us. I have no >> objection to them being reported alongside a frequency readout. But I >> think most people are not interested in =E2=80=9Ctime savings=E2=80=9D m= easured in >> milliseconds; they=E2=80=99re much more aware of the minute- and hour-le= vel time >> savings associated with greater bandwidth. >> >> - Jonathan Morton >> >> _______________________________________________ >> Bloat mailing list >> Bloat@lists.bufferbloat.net >> https://lists.bufferbloat.net/listinfo/bloat >> > > > _______________________________________________ > Bloat mailing list > Bloat@lists.bufferbloat.net > https://lists.bufferbloat.net/listinfo/bloat > --047d7bdcaaa4fcbd120514344a4a Content-Type: text/html; charset=UTF-8 Content-Transfer-Encoding: quoted-printable
I've discovered something perhaps you guys can explain= it better or shed some light.
It isn't specifically to do with buf= fer bloat but it is to do with TCP tuning.

Attached is two pictures of my upload to New York speed test server with = 1 stream.
It doesn't make any difference if it is 1 stream or= 8 streams, the picture and behaviour remains the same.
I am 200m= s from new york so it qualifies as a fairly long (but not very fat) pipe.

The nice smooth one is with linux tcp_rmem set to &= #39;4096 32768 65535' (on the server)
The ugly bumpy one is w= ith linux tcp_rmem set to '4096 65535 67108864' (on the server)

It actually doesn't matter what that last huge nu= mber is, once it goes much about 65k, e.g. 128k or 256k or beyond things ge= t bumpy and ugly on the upload speed.

Now as I und= erstand this setting, it is the tcp receive window that Linux advertises, a= nd the last number sets the maximum size it can get to (for one TCP stream)= .

For users with very fast upload speeds, they do = not see an ugly bumpy upload graph, it is smooth and sustained.
B= ut for the majority of users (like me) with uploads less than 5 to 10mbit, = we frequently see the ugly graph.

The second tcp_r= mem setting is how I have been running the speed test servers.
Up to now I thought this was just the distance of the speedtes= t from the interface: perhaps the browser was buffering a lot, and didn'= ;t feed back progress but now I realise the bumpy one is actually being inf= luenced by the server receive window.

I guess my q= uestion is this: Why does ALLOWING a large receive window appear to encoura= ge problems with upload smoothness??

This implies = that setting the receive window should be done on a connection by connectio= n basis: small for slow connections, large, for high speed, long distance c= onnections.

In addition, if I cap it to 65k, for r= easons of smoothness,
that means the bandwidth delay product will= keep maximum speed per upload stream quite low. So a symmetric or gigabit = connection is going to need a ton of parallel streams to see full speed.

Most puzzling is why would anything special be requi= red on the Client --> Server side of the equation
but nothing = much appears wrong with the Server --> Client side, whether speeds are v= ery low (GPRS) or very high (gigabit).

Note that a= lso I am not yet sure if smoothness =3D=3D better throughput. I have notice= d upload speeds for some people often being under their claimed sync rate b= y 10 or 20% but I've no logs that show the bumpy graph is showing ineff= iciency. Maybe.

help!


On Tue, Apr 21, 2015 at 12:56 PM= , Simon Barber <simon@superduper.net> wrote:
One thing users understand is slow web access.=C2=A0 = Perhaps translating the latency measurement into 'a typical web page wi= ll take X seconds longer to load', or even stating the impact as 't= his latency causes a typical web page to load slower, as if your connection= was only YY% of the measured speed.'

Simon

Sent with AquaMail for Android
http://www.aqua-mail= .com



On April 19, 2015 1:54:19 PM Jonathan Morton <chromatix99@gmail.com> wrote:

>>>> Frequency readouts are probably more accessible to the lat= ter.
>>>
>>>=C2=A0 =C2=A0 =C2=A0The frequency domain more accessible to lay= persons? I have my doubts ;)
>>
>> Gamers, at least, are familiar with =E2=80=9Cframes per second=E2= =80=9D and how that corresponds to their monitor=E2=80=99s refresh rate. >
>=C2=A0 =C2=A0 =C2=A0 =C2=A0I am sure they can easily transform back int= o time domain to get the frame period ;) .=C2=A0 I am partly kidding, I thi= nk your idea is great in that it is a truly positive value which could lend= itself to being used in ISP/router manufacturer advertising, and hence mig= ht work in the real work; on the other hand I like to keep data as =E2=80= =9Craw=E2=80=9D as possible (not that ^(-1) is a transformation worthy of b= eing called data massage).
>
>> The desirable range of latencies, when converted to Hz, happens to= be roughly the same as the range of desirable frame rates.
>
>=C2=A0 =C2=A0 =C2=A0 =C2=A0Just to play devils advocate, the interestin= g part is time or saving time so seconds or milliseconds are also intuitive= ly understandable and can be easily added ;)

Such readouts are certainly interesting to people like us.=C2=A0 I have no = objection to them being reported alongside a frequency readout.=C2=A0 But I= think most people are not interested in =E2=80=9Ctime savings=E2=80=9D mea= sured in milliseconds; they=E2=80=99re much more aware of the minute- and h= our-level time savings associated with greater bandwidth.

=C2=A0- Jonathan Morton

_______________________________________________
Bloat mailing list
Bloat@list= s.bufferbloat.net
= https://lists.bufferbloat.net/listinfo/bloat


_______________________________________________
Bloat mailing list
Bloat@list= s.bufferbloat.net
= https://lists.bufferbloat.net/listinfo/bloat

--047d7bdcaaa4fcbd120514344a4a-- --047d7bdcaaa4fcbd180514344a4c Content-Type: image/png; name="Screen Shot 2015-04-21 at 2.00.46 pm.png" Content-Disposition: attachment; filename="Screen Shot 2015-04-21 at 2.00.46 pm.png" Content-Transfer-Encoding: base64 X-Attachment-Id: f_i8qsj7w30 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 nenzXnxOWOQL5RRmjnpVNoD/1D8AEoQAHyZ6VUYAAAGdaVRYdFhNTDpjb20uYWRvYmUueG1wAAAA AAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA1 LjQuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8y Mi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAg ICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAg ICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjIyNjwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAg ICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4xMzI8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgog ICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4K6RmheQAA HRlJREFUeAHtXQ2UFMW1vj1/O/sDLMsCrgICUQxgIoboixESJSZH4+MlGs3zHaN5Ob7Dr5oEEn2E mGNODoLxmWg0IWiiOWIUY4w/eXmgMcGfGJS4YSMBcUH5EVl+lmVZdnf+Z9691dPD7E53dc1MT2/D 3jpnt3u6btW99VXdulW3qqu1DAbgwAgwAhVDoLm5GaZPny7N3yeNtYgk3U2lkhax/JgRYASKRaBA ER9/bh38/slf9cnnq1//Jhzcv1c8e/TJZ2HevHmwYMFCmDv3v6Cj/WCOlhT0P+fOhdfWr8094xtG gBGwR6BAETWLNBpocKC9A1598Wn42c9+CqtWrYIvXzcHlixdlEvRsnU7VOGvR9Y8nnvGN4wAI2CP QIEimiU5TkRqGoBYNCbIPjPjfFi0+LZckjt/cjfcungRxMMjoHXLptxzvmEEGAE5AoH+0Waem3SW aHTjcLj+hvnw9UWLgJRzTNNIWHDjzSL2cGcXDIMoTJx0Ftw0Zz7c/ZPvodVc0z97/s0IMAImCBQo YiyWgIYqGmD2Df5AAHp6euET08+BC89fBel0Glp37ITvLF0K9993P/z6qecwQRhuvfXbeA3i3zCc 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 rkJggg== --047d7bdcaaa4fcbd180514344a4c Content-Type: image/png; name="Screen Shot 2015-04-21 at 1.59.25 pm.png" Content-Disposition: attachment; filename="Screen Shot 2015-04-21 at 1.59.25 pm.png" Content-Transfer-Encoding: base64 X-Attachment-Id: f_i8qsjhjk1 iVBORw0KGgoAAAANSUhEUgAAAO0AAACdCAYAAABYb/9OAAAKoGlDQ1BJQ0MgUHJvZmlsZQAASImV lwdQU9kax8+96Y0WCB1Cb9I7SK+hSK+iEhIIoYQQCCh2RVRwLaiIgCLIUhVclboWRBQLi4Bi1wVZ VJR1sSAqKu8ij/Dem7fz5v0zZ/Kb7373O98995yZ/wWAfI3J56fAEgCk8jIFwV6u9MioaDrudwAh PylgB7BMVgbfJTDQD/ytPt5FchHdNpyr9fd5/1WS7PgMFgBQIMJx7AxWKsJnkXGKxRdkAoBiI3GN 7Ez+HO9AWFqANIhw2Rxz5vnUHMfNc/ePnNBgN4TvA4AnM5kCDgCkP5A4PYvFQeqQ0Qib8NhcHsIW CDuyEpnIPGTkGliSmpo2x8cQ1o37lzqcf6sZJ6rJZHJEPP8sP4R352bwU5hr/s/l+N9KTREuzKGO DHKiwDt4bj5kzWqT03xFzItbFrDAXPZ8T3OcKPQOW2BWhlv0ArOZ7r4LLEwOc1lgpmDxXm4mI3SB BWnBovrxGR4hovrxDD9RDynLRJzA9WQscE5iaMQCZ3HDly1wRnKI72KOmyguEAaLek4QeIqeMTVj sTcWc7GHzMRQ78XeIkU9sOPdPURxXpgon5/pKqrJTwkU5ceneIniGVkhonszkQ22wElMn8DFOoGi 9QFc4A+YgJUZv3puXwG3NP4aAZeTmEl3QU5JPJ3BYxktoZuZmFoCMHfm5l/pe9qPswTRbizG0jsB sM1HgpzFGFMDgPbnAFA/LsY03iHbYS8A5/tZQkHWfGxuqwMMIAJxIA3kgQrQALrAEJgBK2APnIEH 8AEBIBREgZWABRJBKhCAbLAObAZ5oADsBQdBCSgHx0EtOAlOg1ZwDlwCV8FN0A+GwCMwDMbAazAJ PoIZCIJwEAWiQvKQKqQFGUBmkA3kCHlAflAwFAXFQhyIBwmhddBWqAAqhEqgCqgO+gVqhy5B16EB 6AE0Ao1D76AvMAomw9KwMqwNG8M2sAvsC4fCK2AOnA7nwLnwbrgYroRPwC3wJfgmPAQPw6/hKRRA kVA0lBrKEGWDckMFoKJRCSgBagMqH1WEqkQ1ojpQPajbqGHUBOozGoumouloQ7Q92hsdhmah09Eb 0LvQJehadAu6G30bPYKeRH/HUDBKGAOMHYaBicRwMNmYPEwRphrTjLmCGcKMYT5isVgaVgdrjfXG RmGTsGuxu7BHsE3YTuwAdhQ7hcPh5HEGOAdcAI6Jy8Tl4Q7jTuAu4gZxY7hPeBJeFW+G98RH43n4 LfgifD3+An4Q/wI/Q5AgaBHsCAEENmENYQ+hitBBuEUYI8wQJYk6RAdiKDGJuJlYTGwkXiE+Jr4n kUjqJFtSEIlL2kQqJp0iXSONkD6Tpcj6ZDdyDFlI3k2uIXeSH5DfUygUbYozJZqSSdlNqaNcpjyl fBKjihmJMcTYYhvFSsVaxAbF3ogTxLXEXcRXiueIF4mfEb8lPiFBkNCWcJNgSmyQKJVol7gnMSVJ lTSVDJBMldwlWS95XfKlFE5KW8pDii2VK3Vc6rLUKBVF1aC6UVnUrdQq6hXqmDRWWkeaIZ0kXSB9 UrpPelJGSsZCJlxmtUypzHmZYRqKpk1j0FJoe2inaXdpX2SVZV1k42V3yjbKDspOyynKOcvFy+XL NckNyX2Rp8t7yCfL75NvlX+igFbQVwhSyFY4qnBFYUJRWtFekaWYr3ha8aESrKSvFKy0Vum4Uq/S lLKKspcyX/mw8mXlCRWairNKksoBlQsq46pUVUdVruoB1Yuqr+gydBd6Cr2Y3k2fVFNS81YTqlWo 9anNqOuoh6lvUW9Sf6JB1LDRSNA4oNGlMampqumvuU6zQfOhFkHLRitR65BWj9a0to52hPZ27Vbt lzpyOgydHJ0Gnce6FF0n3XTdSt07elg9G71kvSN6/fqwvqV+on6p/i0D2MDKgGtwxGBgCWaJ7RLe ksol9wzJhi6GWYYNhiNGNCM/oy1GrUZvjDWNo433GfcYfzexNEkxqTJ5ZCpl6mO6xbTD9J2ZvhnL rNTsjjnF3NN8o3mb+VsLA4t4i6MW9y2plv6W2y27LL9ZWVsJrBqtxq01rWOty6zv2UjbBNrssrlm i7F1td1oe872s52VXabdabu/7A3tk+3r7V8u1Vkav7Rq6aiDugPTocJh2JHuGOt4zHHYSc2J6VTp 9MxZw5ntXO38wkXPJcnlhMsbVxNXgWuz67Sbndt6t053lLuXe757n4eUR5hHicdTT3VPjmeD56SX pddar05vjLev9z7vewxlBotRx5j0sfZZ79PtS/YN8S3xfean7yfw6/CH/X389/s/Xqa1jLesNQAE MAL2BzwJ1AlMD/w1CBsUGFQa9DzYNHhdcE8INWRVSH3Ix1DX0D2hj8J0w4RhXeHi4THhdeHTEe4R hRHDkcaR6yNvRilEcaPaonHR4dHV0VPLPZYfXD4WYxmTF3N3hc6K1Suur1RYmbLy/CrxVcxVZ2Ix sRGx9bFfmQHMSuZUHCOuLG6S5cY6xHrNdmYfYI/HO8QXxr9IcEgoTHjJceDs54wnOiUWJU5w3bgl 3LdJ3knlSdPJAck1ybMpESlNqfjU2NR2nhQvmdedppK2Om2Ab8DP4w+n26UfTJ8U+AqqM6CMFRlt mdKIuekV6gq3CUeyHLNKsz5lh2efWS25mre6d43+mp1rXuR45vy8Fr2WtbZrndq6zetG1rusr9gA bYjb0LVRY2PuxrFNXptqNxM3J2/+bYvJlsItH7ZGbO3IVc7dlDu6zWtbQ55YniDv3nb77eU70Du4 O/p2mu88vPN7Pjv/RoFJQVHB112sXTd+Mv2p+KfZ3Qm7+/ZY7Tm6F7uXt/fuPqd9tYWShTmFo/v9 97ccoB/IP/Dh4KqD14ssisoPEQ8JDw0X+xW3HdY8vPfw15LEkqFS19KmMqWynWXTR9hHBo86H20s Vy4vKP9yjHvsfoVXRUuldmXRcezxrOPPq8Kren62+bmuWqG6oPpbDa9muDa4trvOuq6uXql+TwPc IGwYPxFzov+k+8m2RsPGiiZaU8EpcEp46tUvsb/cPe17uuuMzZnGs1pny5qpzfktUMualsnWxNbh tqi2gXaf9q4O+47mX41+rTmndq70vMz5PReIF3IvzF7MuTjVye+cuMS5NNq1quvR5cjLd7qDuvuu +F65dtXz6uUel56L1xyunbtud739hs2N1ptWN1t6LXubf7P8rbnPqq/llvWttn7b/o6BpQMXBp0G L912v331DuPOzaFlQwN3w+7evxdzb/g++/7LBykP3j7MejjzaNNjzOP8JxJPip4qPa38Xe/3pmGr 4fMj7iO9z0KePRpljb7+I+OPr2O5zynPi16ovqh7afby3LjneP+r5a/GXvNfz0zk/Sn5Z9kb3Tdn /3L+q3cycnLsreDt7Ltd7+Xf13yw+NA1FTj19GPqx5np/E/yn2o/23zu+RLx5cVM9lfc1+Jvet86 vvt+fzybOjvLZwqYP6wAChlwQgIA72oAoEQh3qEfAKLYvCf+IWjex/8g8Hc875t/yAqAGmcAwjYB 4Id4lKPI0EKYjPzPWaJQZwCbm4vGP5WRYG42X4uMOEvMp9nZ98oA4DoA+CaYnZ05Mjv7rQpp9gEA nenzXnxOWOQL5RRmjnpVNoD/1D8AEoQAHyZ6VUYAAAGdaVRYdFhNTDpjb20uYWRvYmUueG1wAAAA AAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA1 LjQuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8y Mi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAg ICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIj4KICAg ICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjIzNzwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAg ICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4xNTc8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgog ICAgICA8L3JkZjpEZXNjcmlwdGlvbj4KICAgPC9yZGY6UkRGPgo8L3g6eG1wbWV0YT4KMp9/SAAA F7FJREFUeAHtnQmUFdWZx7967/VCdwMCPTBtOBEcDphxJpIhMkmAJBBP4jKERKNxjmtcaBYhI7iM EhwdAsg4JG4JolFzJAKjY0AyjJhhhkQ0LgcOxFHjdFDDEWh2GuzlbfVqvu++V4+31lv6Vb2q7v89 NK/q3lt3+dX96u7f1Qw2VKbZs2ePenLMmDFlhoDHQAAEUgns3LmTJkyYkGqVde3LsoEFCICAqwlA aF39epA4EMgmAKHNZgIbEHA1AQitq18PEgcC2QQgtNlMYAMCriYAoXX160HiQCCbAIQ2mwlsQMDV BCC0rn49SBwIZBOA0GYzgQ0IuJoAhNbVrweJA4FsAhDabCawAQFXE4DQuvr1IHEgkE0AQpvNBDYg 4GoCgd6kDrt7ekMPz4JAeQRQ05bHDU+BQNUIQGirhh4Rg0B5BCC05XHDUyBQNQIQ2qqhR8QgUB4B CG153PAUCFSNgO1CKyqodD1atQwiYhDoawSU0Ipg3dR6AwVDYbq5tZUOH9yfzGdU15Vd56mTSTvz Yt2mLfSr539u3qrf675/Kz+/T13/4vkXadasWTRnzlxqbb2Jjh89nPQrcV7Pcb227aWkHS5AAAQK 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 --047d7bdcaaa4fcbd180514344a4c--