Return-Path: <rahul.ietf@gmail.com>
X-Original-To: lwip@ietfa.amsl.com
Delivered-To: lwip@ietfa.amsl.com
Received: from localhost (localhost [127.0.0.1])
 by ietfa.amsl.com (Postfix) with ESMTP id A33C8131225;
 Tue,  9 Oct 2018 02:20:17 -0700 (PDT)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: 0.972
X-Spam-Level: 
X-Spam-Status: No, score=0.972 tagged_above=-999 required=5
 tests=[BAYES_00=-1.9, DKIM_SIGNED=0.1, DKIM_VALID=-0.1,
 DKIM_VALID_AU=-0.1, FREEMAIL_FROM=0.001, HTML_FONT_FACE_BAD=0.981,
 HTML_MESSAGE=0.001, HTTPS_HTTP_MISMATCH=1.989,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_PASS=-0.001, URIBL_BLOCKED=0.001]
 autolearn=no autolearn_force=no
Authentication-Results: ietfa.amsl.com (amavisd-new); dkim=pass (2048-bit key)
 header.d=gmail.com
Received: from mail.ietf.org ([4.31.198.44])
 by localhost (ietfa.amsl.com [127.0.0.1]) (amavisd-new, port 10024)
 with ESMTP id sQv8Hwus39XJ; Tue,  9 Oct 2018 02:20:16 -0700 (PDT)
Received: from mail-vs1-xe35.google.com (mail-vs1-xe35.google.com
 [IPv6:2607:f8b0:4864:20::e35])
 (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits))
 (No client certificate requested)
 by ietfa.amsl.com (Postfix) with ESMTPS id B1BC71311AA;
 Tue,  9 Oct 2018 02:20:15 -0700 (PDT)
Received: by mail-vs1-xe35.google.com with SMTP id a202so806845vsd.5;
 Tue, 09 Oct 2018 02:20:15 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; 
 h=mime-version:references:in-reply-to:from:date:message-id:subject:to
 :cc; bh=jdncqGw8p9UNfG9JGtyEvIJcbN6xaednjDq67vKfJYg=;
 b=E+gy4Wd7twqZsV148MdvetrtK4Qg8DPs7yZ3nphkpiCy8fjcClXRaPvgVsfKGelfUV
 cCVRhfXLzd6M7KJ9pGnNUtsilKeJfgk2PnlACOky+jcYENF+I2OVw/TrJuo+PKVZWoUb
 VSCa8QwHt2lJEpjZ/DkUE0J47XCSHN/9KnF/xmy8jmFEDxjj2SrPb/XWunhHKz7r4rLr
 pT4VLpUsRQjJ9FuNA4K8YEgH3tF9k/4a0n4lYx+kTK2vy7rJp5oq9BYPNWvPuCitgUhI
 AURAwzptvOYIVRF5wd2KSAUiiTK2J1rjeDza92uGLaXE71BWpRziuMLEW/TAQONM++xC
 XIxQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20161025;
 h=x-gm-message-state:mime-version:references:in-reply-to:from:date
 :message-id:subject:to:cc;
 bh=jdncqGw8p9UNfG9JGtyEvIJcbN6xaednjDq67vKfJYg=;
 b=f4poiPpVFr2n/cdwamav9sKHww7R8IYICqygBABhnApn9tjklHHO1M1v4PB5xQy06p
 twu2Z+wKPTxpFF2P/NNdvLInCExVEGiI8IZ6WpkYA/thMwkZ6DmSznbO1z9PUYiRi3wA
 C4NwH8zqsBvSOaERd78qQEAZ8OspTnYa5NC/DwZjhcLYGjA2duaw3sNSAV7C4yUQ2eD2
 syVnwXVR/Nu773LeJqNyaB28XviDIYAe0rfRzyFnLpAD4NAEYkyRKJY+CRRjRlIbVMVz
 p24k+BqsSE+csjTX6qzs/4dLpydhf9OQ4oU0dN4e8vVYwAkFn2C4JjoYJaGkpw/9fx1T
 crjA==
X-Gm-Message-State: ABuFfoh4mIdETWilVAoW/vZQF5V8fW7ClWENCjsecYSTby6Ebeb1/mm6
 gWximrvdHbMF69EBWHR0VR7n66NqVgiDE/3brOs=
X-Google-Smtp-Source: ACcGV60I0F/aPLQS3rPo/6/imih42N47KBNNNLR+5axyODWRUkJi1dgLRGrGtOuP3+WgvrHeF7jS+FQj1ocRAZk5gGo=
X-Received: by 2002:a9f:35f1:: with SMTP id
 u46-v6mr10871594uad.20.1539076814588; 
 Tue, 09 Oct 2018 02:20:14 -0700 (PDT)
MIME-Version: 1.0
References: <CAO0Djp0UM+iKdH+ibkyo7RSZ5a1TSDPCi6U5Sk6_-+pSvKduLg@mail.gmail.com>
 <CAHYRG6OG8yT-fJ=WEm5B3LVZePhnFBsudGtN1Ldbrxog0dNamQ@mail.gmail.com>
In-Reply-To: <CAHYRG6OG8yT-fJ=WEm5B3LVZePhnFBsudGtN1Ldbrxog0dNamQ@mail.gmail.com>
From: Rahul Jadhav <rahul.ietf@gmail.com>
Date: Tue, 9 Oct 2018 14:50:02 +0530
Message-ID: <CAO0Djp2qd_bfy7uXNiPCsiB+kH2Zu84jBhvzUuKv4+ZGz+oFqQ@mail.gmail.com>
To: samita.chakrabarti@verizon.com
Cc: lo <6lo@ietf.org>, lwip@ietf.org
Content-Type: multipart/alternative; boundary="000000000000d0d20e0577c83ef0"
Archived-At: <https://mailarchive.ietf.org/arch/msg/lwip/dsinvZQFCdZ7s45E-Uoc-FZHD_4>
Subject: Re: [Lwip] [E] [6lo] fragment forwarding implementation and
 performance report
X-BeenThere: lwip@ietf.org
X-Mailman-Version: 2.1.29
Precedence: list
List-Id: "Lightweight IP stack. Official mailing list for IETF LWIG Working
 Group." <lwip.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/options/lwip>,
 <mailto:lwip-request@ietf.org?subject=unsubscribe>
List-Archive: <https://mailarchive.ietf.org/arch/browse/lwip/>
List-Post: <mailto:lwip@ietf.org>
List-Help: <mailto:lwip-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/lwip>,
 <mailto:lwip-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 09 Oct 2018 09:20:18 -0000

--000000000000d0d20e0577c83ef0
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Thank you Samita for the feedback.
Please find my response inline.

Regards,
Rahul


> From the results, I noticed an observation that send rate 80s, and 40s ar=
e
> doing better than the 160s  send rate with 50s forwarding fragment spacin=
g.
> Send rate Xs means sending fragmented packets at X sec interval - right?
>

The payload size before fragmentation is different for 40s, 80s, 160s,
which is 256B, 512B and 1024B respectively. So at 160s the payload size is
1024B which will result in more fragments per payload. Thus any loss of a
single fragment increases the failure rate of the complete payload.
There is no 50s fragment forwarding spacing .. There is __50ms & 100ms__
inter fragment spacing in case of fragment forwarding that was introduced
on the original sender (not forwarders).

The send logic is, we wait for 40s/80s/160s time duration and then randomly
choose a timer within 1-10s to start sending the UDP payload. After that in
case of fragment forwarding, we wait 50ms (pacing delay) before every
fragment is sent on the original sender.


> I thought, the performance would improve with higher X value,  but that i=
s
> not true - perhaps due to increased payload size.
>

Yes, the increased payload size causes higher number of fragments per
payload which increases payload loss probability since a single fragment
loss will cause complete payload failure.


> A graph or tabular result with same payload size with increased send
> interval rate might be useful to figure out the optimal pacing time for
> that payload - just a thought.
>

Yes this can be attempted. But as of current observations it seems that
unless you have smart pacing algorithm the use of fragment forwarding can
backfire considering that under the same conditions the per hop reassembly
works much better. We tried pacing with 50ms and 100ms delay ... with 100ms
the PDR of fragment forwarding is almost same as per hop reassembly but
with much higher end to end latency.


>
> In general, very interesting results!
>
> Also, it shows that by controlling the pacing of forwarding the fragments
> the performance can be improved to a great degree in a medium to small si=
ze
> mesh. ( in this example, 50 nodes).
>
> What happens when you increase the mesh size ( aka number of nodes)?
>

Yes we can increase the mesh size but then i do not think it will change
the inferrences much. We also wanted to try different (higher) node
densities which i feel might further cause problems for fragment
forwarding. Among other things we also want to experiment with fragment
acknowledgement mechanism. But we havent really validated all these points.


>
> Cheers,
> -Samita
>
> On Mon, Oct 8, 2018 at 7:17 AM Rahul Jadhav <rahul.ietf@gmail.com> wrote:
>
>> <sending to 6lo, lwig WGs because both have relevant drafts>
>>
>>
>>
>> Hello All,
>>
>>
>> We tried experimenting with the virtual reassembly buffer and fragment
>> forwarding drafts.
>>
>> One fundamental characteristic that has major implications on fragment
>> forwarding performance is its behavior with realistic 802.15.4 RF
>> (especially when a train of fragments are simultaneously received and
>> transmitted). This is something which was not evaluated in any other
>> experiment.
>>
>>
>>
>> You ll find the details of the implementation, test setup details and
>> performance result here:
>>
>> https://github.com/nyrahul/ietf-data/blob/rst/6lo-fragfwd-perf-report.rs=
t
>> <https://urldefense.proofpoint.com/v2/url?u=3Dhttps-3A__github.com_nyrah=
ul_ietf-2Ddata_blob_rst_6lo-2Dfragfwd-2Dperf-2Dreport.rst&d=3DDwMFaQ&c=3Dud=
BTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ&r=3DpWMzx7FsqijEJPyfMBfn-HJss-wVV=
Tf0K5y-cxCTXL8&m=3DPeFHI-ltr748QRhWwqigY8iNFPw9EcyFDwOeSrv6KQc&s=3DRtytc7AF=
wMLDcwFQOSojZZZ3hiXl-j78GKTwYRi8Nw0&e=3D>
>>
>>
>>
>> Results are quite interesting: Simultaneous send/recv of fragments with
>> fragment forwarding has major implications on PDR/Latency.
>>
>>
>>
>> Feedback most welcome.
>>
>>
>>
>> Thanks,
>>
>> Rahul
>> _______________________________________________
>> 6lo mailing list
>> 6lo@ietf.org
>>
>> https://urldefense.proofpoint.com/v2/url?u=3Dhttps-3A__www.ietf.org_mail=
man_listinfo_6lo&d=3DDwICAg&c=3DudBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBTQ=
&r=3DpWMzx7FsqijEJPyfMBfn-HJss-wVVTf0K5y-cxCTXL8&m=3DPeFHI-ltr748QRhWwqigY8=
iNFPw9EcyFDwOeSrv6KQc&s=3DebzWBVEJyovVUcFHM2mByigGnDBv0aoTSm21fmwa5vU&e=3D
>>
>

--000000000000d0d20e0577c83ef0
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">Thank you Samita for the feedback.<div>Please find my resp=
onse inline.</div><div><br></div><div>Regards,</div><div>Rahul</div><br><di=
v class=3D"gmail_quote"><blockquote class=3D"gmail_quote" style=3D"margin:0=
px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"><=
div dir=3D"ltr"><div><font color=3D"#24292e" face=3D"-apple-system, BlinkMa=
cSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Seg=
oe UI Emoji, Segoe UI Symbol" style=3D"--darkreader-inline-color:#e2d8c2;">=
<span style=3D"font-size:16px"><br>From the results, I noticed an observati=
on that send rate 80s, and 40s are doing better than the 160s=C2=A0 send ra=
te with 50s forwarding fragment spacing. Send rate Xs means sending fragmen=
ted packets at X sec interval - right?</span></font></div></div></blockquot=
e><div><br></div><div>The payload size before fragmentation is different fo=
r 40s, 80s, 160s, which is 256B, 512B and 1024B respectively. So at 160s th=
e payload size is 1024B which will result in more fragments per payload. Th=
us any loss of a single fragment increases the failure rate of the complete=
 payload.</div><div>There is no 50s fragment forwarding spacing .. There is=
 __50ms &amp; 100ms__ inter fragment spacing in case of fragment forwarding=
 that was introduced on the original sender (not forwarders).</div><div><br=
></div><div>The send logic is, we wait for 40s/80s/160s time duration and t=
hen randomly choose a timer within 1-10s to start sending the UDP payload. =
After that in case of fragment forwarding, we wait 50ms (pacing delay) befo=
re every fragment is sent on the original sender.=C2=A0<br></div><div>=C2=
=A0</div><blockquote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8e=
x;border-left:1px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"=
><div><font color=3D"#24292e" face=3D"-apple-system, BlinkMacSystemFont, Se=
goe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Se=
goe UI Symbol" style=3D"--darkreader-inline-color:#e2d8c2;"><span style=3D"=
font-size:16px">I thought, the performance would improve with higher X valu=
e,=C2=A0 but that is not true - perhaps due to increased payload size.</spa=
n></font></div></div></blockquote><div><br></div><div>Yes, the increased pa=
yload size causes higher number of fragments per payload which increases pa=
yload loss probability since a single fragment loss will cause complete pay=
load failure.</div><div>=C2=A0</div><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding=
-left:1ex"><div dir=3D"ltr"><div><font color=3D"#24292e" face=3D"-apple-sys=
tem, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Colo=
r Emoji, Segoe UI Emoji, Segoe UI Symbol" style=3D"--darkreader-inline-colo=
r:#e2d8c2;"><span style=3D"font-size:16px">A graph or tabular result with s=
ame payload size with increased send interval rate might be useful to figur=
e out the optimal pacing time for that payload - just a thought.=C2=A0</spa=
n></font></div></div></blockquote><div><br></div><div>Yes this can be attem=
pted. But as of current observations it seems that unless you have smart pa=
cing algorithm the use of fragment forwarding can backfire considering that=
 under the same conditions the per hop reassembly works much better. We tri=
ed pacing with 50ms and 100ms delay ... with 100ms the PDR of fragment forw=
arding is almost same as per hop reassembly but with much higher end to end=
 latency.</div><div>=C2=A0<br></div><blockquote class=3D"gmail_quote" style=
=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding=
-left:1ex"><div dir=3D"ltr"><div><font color=3D"#24292e" face=3D"-apple-sys=
tem, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Colo=
r Emoji, Segoe UI Emoji, Segoe UI Symbol" style=3D"--darkreader-inline-colo=
r:#e2d8c2;"><span style=3D"font-size:16px"><br></span></font></div><div><fo=
nt color=3D"#24292e" face=3D"-apple-system, BlinkMacSystemFont, Segoe UI, H=
elvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Sy=
mbol" style=3D"--darkreader-inline-color:#e2d8c2;"><span style=3D"font-size=
:16px">In general, very interesting results!</span></font></div><div><font =
color=3D"#24292e" face=3D"-apple-system, BlinkMacSystemFont, Segoe UI, Helv=
etica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbo=
l" style=3D"--darkreader-inline-color:#e2d8c2;"><span style=3D"font-size:16=
px"><br></span></font></div><div><font color=3D"#24292e" face=3D"-apple-sys=
tem, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Colo=
r Emoji, Segoe UI Emoji, Segoe UI Symbol" style=3D"--darkreader-inline-colo=
r:#e2d8c2;"><span style=3D"font-size:16px">Also, it shows that by controlli=
ng the pacing of forwarding the fragments the performance can be improved t=
o a great degree in a medium to small size mesh. ( in this example, 50 node=
s).</span></font></div><div><font color=3D"#24292e" face=3D"-apple-system, =
BlinkMacSystemFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emo=
ji, Segoe UI Emoji, Segoe UI Symbol" style=3D"--darkreader-inline-color:#e2=
d8c2;"><span style=3D"font-size:16px"><br></span></font></div><div><font co=
lor=3D"#24292e" face=3D"-apple-system, BlinkMacSystemFont, Segoe UI, Helvet=
ica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol"=
 style=3D"--darkreader-inline-color:#e2d8c2;"><span style=3D"font-size:16px=
">What happens when you increase the mesh size ( aka number of nodes)?</spa=
n></font></div></div></blockquote><div><br></div><div>Yes we can increase t=
he mesh size but then i do not think it will change the inferrences much. W=
e also wanted to try different (higher) node densities which i feel might f=
urther cause problems for fragment forwarding. Among other things we also w=
ant to experiment with fragment acknowledgement mechanism. But we havent re=
ally validated all these points.</div><div>=C2=A0</div><blockquote class=3D=
"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(2=
04,204,204);padding-left:1ex"><div dir=3D"ltr"><div><font color=3D"#24292e"=
 face=3D"-apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Arial, san=
s-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol" style=3D"--dar=
kreader-inline-color:#e2d8c2;"><span style=3D"font-size:16px"><br></span></=
font></div><div><font color=3D"#24292e" face=3D"-apple-system, BlinkMacSyst=
emFont, Segoe UI, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI=
 Emoji, Segoe UI Symbol" style=3D"--darkreader-inline-color:#e2d8c2;"><span=
 style=3D"font-size:16px">Cheers,</span></font></div><div><font color=3D"#2=
4292e" face=3D"-apple-system, BlinkMacSystemFont, Segoe UI, Helvetica, Aria=
l, sans-serif, Apple Color Emoji, Segoe UI Emoji, Segoe UI Symbol" style=3D=
"--darkreader-inline-color:#e2d8c2;"><span style=3D"font-size:16px">-Samita=
</span></font></div><br><div class=3D"gmail_quote"><div dir=3D"ltr">On Mon,=
 Oct 8, 2018 at 7:17 AM Rahul Jadhav &lt;<a href=3D"mailto:rahul.ietf@gmail=
.com" target=3D"_blank">rahul.ietf@gmail.com</a>&gt; wrote:<br></div><block=
quote class=3D"gmail_quote" style=3D"margin:0px 0px 0px 0.8ex;border-left:1=
px solid rgb(204,204,204);padding-left:1ex"><div dir=3D"ltr"><p class=3D"Ms=
oNormal">&lt;sending to 6lo, lwig WGs because both have relevant drafts&gt;=
<u></u><u></u></p><p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p><p class=
=3D"MsoNormal">Hello All,<u></u><u></u></p><p class=3D"MsoNormal"><br></p><=
p class=3D"MsoNormal"><u></u>We tried experimenting with the virtual reasse=
mbly buffer and fragment forwarding drafts.</p><p class=3D"MsoNormal">One f=
undamental characteristic that has major implications on fragment forwardin=
g performance is its behavior with realistic 802.15.4 RF (especially when a=
 train of fragments are simultaneously received and transmitted). This is s=
omething which was not evaluated in any other experiment.<u></u></p><p clas=
s=3D"MsoNormal"><u></u>=C2=A0<u></u></p><p class=3D"MsoNormal">You ll find =
the details of the implementation, test setup details and performance resul=
t here:<u></u><u></u></p><p class=3D"MsoNormal"><a href=3D"https://urldefen=
se.proofpoint.com/v2/url?u=3Dhttps-3A__github.com_nyrahul_ietf-2Ddata_blob_=
rst_6lo-2Dfragfwd-2Dperf-2Dreport.rst&amp;d=3DDwMFaQ&amp;c=3DudBTRvFvXC5Dhq=
g7UHpJlPps3mZ3LRxpb6__0PomBTQ&amp;r=3DpWMzx7FsqijEJPyfMBfn-HJss-wVVTf0K5y-c=
xCTXL8&amp;m=3DPeFHI-ltr748QRhWwqigY8iNFPw9EcyFDwOeSrv6KQc&amp;s=3DRtytc7AF=
wMLDcwFQOSojZZZ3hiXl-j78GKTwYRi8Nw0&amp;e=3D" target=3D"_blank">https://git=
hub.com/nyrahul/ietf-data/blob/rst/6lo-fragfwd-perf-report.rst</a><u></u><u=
></u></p><p class=3D"MsoNormal"><u></u>=C2=A0<u></u></p><p class=3D"MsoNorm=
al">Results are quite interesting: Simultaneous send/recv of fragments with=
 fragment forwarding has major implications on PDR/Latency.</p><p class=3D"=
MsoNormal">=C2=A0</p><p class=3D"MsoNormal"><u></u></p><p class=3D"MsoNorma=
l">Feedback most welcome.<u></u><u></u></p><p class=3D"MsoNormal"><u></u>=
=C2=A0<u></u></p><p class=3D"MsoNormal">Thanks,<u></u><u></u></p><p class=
=3D"MsoNormal">Rahul</p></div>
_______________________________________________<br>
6lo mailing list<br>
<a href=3D"mailto:6lo@ietf.org" target=3D"_blank">6lo@ietf.org</a><br>
<a href=3D"https://urldefense.proofpoint.com/v2/url?u=3Dhttps-3A__www.ietf.=
org_mailman_listinfo_6lo&amp;d=3DDwICAg&amp;c=3DudBTRvFvXC5Dhqg7UHpJlPps3mZ=
3LRxpb6__0PomBTQ&amp;r=3DpWMzx7FsqijEJPyfMBfn-HJss-wVVTf0K5y-cxCTXL8&amp;m=
=3DPeFHI-ltr748QRhWwqigY8iNFPw9EcyFDwOeSrv6KQc&amp;s=3DebzWBVEJyovVUcFHM2mB=
yigGnDBv0aoTSm21fmwa5vU&amp;e=3D" rel=3D"noreferrer" target=3D"_blank">http=
s://urldefense.proofpoint.com/v2/url?u=3Dhttps-3A__www.ietf.org_mailman_lis=
tinfo_6lo&amp;d=3DDwICAg&amp;c=3DudBTRvFvXC5Dhqg7UHpJlPps3mZ3LRxpb6__0PomBT=
Q&amp;r=3DpWMzx7FsqijEJPyfMBfn-HJss-wVVTf0K5y-cxCTXL8&amp;m=3DPeFHI-ltr748Q=
RhWwqigY8iNFPw9EcyFDwOeSrv6KQc&amp;s=3DebzWBVEJyovVUcFHM2mByigGnDBv0aoTSm21=
fmwa5vU&amp;e=3D</a><br>
</blockquote></div></div>
</blockquote></div></div>

--000000000000d0d20e0577c83ef0--

