Topic: Default tuple-like access
Author: "Vicente J. Botet Escriba" <vicente.botet@wanadoo.fr>
Date: Tue, 12 Jan 2016 23:52:29 +0100
Raw View
This is a multi-part message in MIME format.
--------------070104030300000207080602
Content-Type: text/plain; charset=UTF-8; format=flowed
Hi,
I've been working on a proposal (see attached document)
Default tuple-like access
Defining tuple-like
access|tuple_size|,|tuple_element|and|get<I>/get<T>|as comparison
operators, as proposed inN4475
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4477.pdf>, for
simple classes is tedious, repetitive, slightly error-prone, and easily
automated.
I propose to (implicitly) supply default versions of these operations,
if needed. The meaning|get<I>|is to return a reference to the I^th member.
If the simple defaults are unsuitable for a class, a programmer can, as
ever, define more suitable ones or suppress the defaults. The proposal
is to add the operations as an integral part of C++ (like =), rather
than as a library feature.
The proposal follows the same approach as Default comparison as inN4475
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4477.pdf>,
that is, that having default generated code for these operations when
needed and possible makes the language simpler.
The concerned classes should be the same as the one on which Structural
BindingP0144R0
<http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0144r0.pdf>can
be applied.
Any comments are welcome,
Vicente
--
---
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-proposals/.
--------------070104030300000207080602
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<html>
<head>
<meta http-equiv=3D"content-type" content=3D"text/html; charset=3Dutf-8=
">
</head>
<body bgcolor=3D"#FFFFFF" text=3D"#000000">
<font size=3D"+1">Hi, <br>
<br>
I've been working on a proposal (see attached document)<br>
<br>
</font>
<h1 id=3D"toc_0" style=3D"-webkit-print-color-adjust: exact; margin:
20px 0px 10px; padding: 0px; font-weight: bold;
-webkit-font-smoothing: antialiased; cursor: text; position:
relative; font-size: 28px; color: rgb(0, 0, 0); font-family:
Helvetica, arial, sans-serif; font-style: normal; font-variant:
normal; letter-spacing: normal; orphans: auto; text-align: start;
text-indent: 0px; text-transform: none; white-space: normal;
widows: auto; word-spacing: 0px; -webkit-text-stroke-width: 0px;
background-color: rgb(255, 255, 255);">Default tuple-like access</h1>
Defining tuple-like access<span class=3D"Apple-converted-space">=C2=A0<=
/span><code
style=3D"-webkit-print-color-adjust: exact; margin: 0px 2px;
padding: 0px 5px; white-space: nowrap; border: 1px solid rgb(234,
234, 234); background-color: rgb(248, 248, 248);
border-top-left-radius: 3px; border-top-right-radius: 3px;
border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;">tup=
le_size</code>,<span
class=3D"Apple-converted-space">=C2=A0</span><code
style=3D"-webkit-print-color-adjust: exact; margin: 0px 2px;
padding: 0px 5px; white-space: nowrap; border: 1px solid rgb(234,
234, 234); background-color: rgb(248, 248, 248);
border-top-left-radius: 3px; border-top-right-radius: 3px;
border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;">tup=
le_element</code><span
class=3D"Apple-converted-space">=C2=A0</span>and<span
class=3D"Apple-converted-space">=C2=A0</span><code
style=3D"-webkit-print-color-adjust: exact; margin: 0px 2px;
padding: 0px 5px; white-space: nowrap; border: 1px solid rgb(234,
234, 234); background-color: rgb(248, 248, 248);
border-top-left-radius: 3px; border-top-right-radius: 3px;
border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;">get=
<I>/get<T></code><span
class=3D"Apple-converted-space">=C2=A0</span>as comparison operators,=
as
proposed in<span class=3D"Apple-converted-space">=C2=A0</span><a
href=3D"http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4477=
..pdf"
title=3D"Default comparisons (R2)"
style=3D"-webkit-print-color-adjust: exact; color: rgb(65, 131,
196);">N4475</a>, for simple classes is tedious, repetitive,
slightly error-prone, and easily automated.<span
class=3D"Apple-converted-space">=C2=A0</span>
<p style=3D"-webkit-print-color-adjust: exact; margin: 15px 0px;
color: rgb(0, 0, 0); font-family: Helvetica, arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; orphans: auto;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255);">I propose to (implicitly) supply default versions of these
operations, if needed. The meaning<span
class=3D"Apple-converted-space">=C2=A0</span><code
style=3D"-webkit-print-color-adjust: exact; margin: 0px 2px;
padding: 0px 5px; white-space: nowrap; border: 1px solid
rgb(234, 234, 234); background-color: rgb(248, 248, 248);
border-top-left-radius: 3px; border-top-right-radius: 3px;
border-bottom-right-radius: 3px; border-bottom-left-radius:
3px;">get<I></code><span class=3D"Apple-converted-space">=C2=
=A0</span>is
to return a reference to the I<sup
style=3D"-webkit-print-color-adjust: exact; font-size: 0.83em;
vertical-align: super; line-height: 0;">th</sup>member.<span
class=3D"Apple-converted-space"> <br>
</span></p>
<p style=3D"-webkit-print-color-adjust: exact; margin: 15px 0px;
color: rgb(0, 0, 0); font-family: Helvetica, arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; orphans: auto;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255);">If the simple defaults are unsuitable for a class, a
programmer can, as ever, define more suitable ones or suppress the
defaults. The proposal is to add the operations as an integral
part of C++ (like =3D), rather than as a library feature.<span
class=3D"Apple-converted-space">=C2=A0</span></p>
<p style=3D"-webkit-print-color-adjust: exact; margin: 15px 0px;
color: rgb(0, 0, 0); font-family: Helvetica, arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; orphans: auto;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255);">The proposal follows the same approach as Default
comparison as in<span class=3D"Apple-converted-space">=C2=A0</span><a
href=3D"http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n44=
77.pdf"
title=3D"Default comparisons (R2)"
style=3D"-webkit-print-color-adjust: exact; color: rgb(65, 131,
196);">N4475</a>, that is, that having default generated code
for these operations when needed and possible makes the language
simpler.<span class=3D"Apple-converted-space">=C2=A0</span></p>
<p style=3D"-webkit-print-color-adjust: exact; margin: 15px 0px;
color: rgb(0, 0, 0); font-family: Helvetica, arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; orphans: auto;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255);">The concerned classes should be the same as the one on
which Structural Binding<span class=3D"Apple-converted-space">=C2=A0<=
/span><a
href=3D"http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0144r0.pdf=
"
title=3D"Structured Bindings" style=3D"-webkit-print-color-adjust:
exact; color: rgb(65, 131, 196);">P0144R0</a><span
class=3D"Apple-converted-space">=C2=A0</span>can be applied.</p>
<span class=3D"Apple-converted-space"> Any comments are welcome,<br>
Vicente</span>
</body>
</html>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
Visit this group at <a href=3D"https://groups.google.com/a/isocpp.org/group=
/std-proposals/">https://groups.google.com/a/isocpp.org/group/std-proposals=
/</a>.<br />
--------------070104030300000207080602--
.
Author: "Vicente J. Botet Escriba" <vicente.botet@wanadoo.fr>
Date: Tue, 12 Jan 2016 23:53:34 +0100
Raw View
This is a multi-part message in MIME format.
--------------090501000302050008000404
Content-Type: multipart/alternative;
boundary="------------010207020604000606070003"
--------------010207020604000606070003
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: quoted-printable
With the file is better :)
Le 12/01/2016 23:52, Vicente J. Botet Escriba a =C3=A9crit :
> Hi,
>
> I've been working on a proposal (see attached document)
>
>
> Default tuple-like access
>
> Defining tuple-like=20
> access|tuple_size|,|tuple_element|and|get<I>/get<T>|as comparison=20
> operators, as proposed inN4475=20
> <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4477.pdf>,=20
> for simple classes is tedious, repetitive, slightly error-prone, and=20
> easily automated.
>
> I propose to (implicitly) supply default versions of these operations,=20
> if needed. The meaning|get<I>|is to return a reference to the I^th member=
..
>
> If the simple defaults are unsuitable for a class, a programmer can,=20
> as ever, define more suitable ones or suppress the defaults. The=20
> proposal is to add the operations as an integral part of C++ (like =3D),=
=20
> rather than as a library feature.
>
> The proposal follows the same approach as Default comparison as=20
> inN4475=20
> <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4477.pdf>,=20
> that is, that having default generated code for these operations when=20
> needed and possible makes the language simpler.
>
> The concerned classes should be the same as the one on which=20
> Structural BindingP0144R0=20
> <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0144r0.pdf>can=
=20
> be applied.
>
> Any comments are welcome,
> Vicente=20
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
--------------010207020604000606070003
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<html>
<head>
<meta content=3D"text/html; charset=3Dutf-8" http-equiv=3D"Content-Type=
">
</head>
<body bgcolor=3D"#FFFFFF" text=3D"#000000">
<div class=3D"moz-cite-prefix">With the file is better :)<br>
<br>
Le 12/01/2016 23:52, Vicente J. Botet Escriba a =C3=A9crit=C2=A0:<br>
</div>
<blockquote cite=3D"mid:569583AD.9050208@wanadoo.fr" type=3D"cite">
<meta http-equiv=3D"content-type" content=3D"text/html; charset=3Dutf=
-8">
<font size=3D"+1">Hi, <br>
<br>
I've been working on a proposal (see attached document)<br>
<br>
</font>
<h1 id=3D"toc_0" style=3D"-webkit-print-color-adjust: exact; margin:
20px 0px 10px; padding: 0px; font-weight: bold;
-webkit-font-smoothing: antialiased; cursor: text; position:
relative; font-size: 28px; color: rgb(0, 0, 0); font-family:
Helvetica, arial, sans-serif; font-style: normal; font-variant:
normal; letter-spacing: normal; orphans: auto; text-align:
start; text-indent: 0px; text-transform: none; white-space:
normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255);">Default tuple-like access</h1>
Defining tuple-like access<span class=3D"Apple-converted-space">=C2=
=A0</span><code
style=3D"-webkit-print-color-adjust: exact; margin: 0px 2px;
padding: 0px 5px; white-space: nowrap; border: 1px solid
rgb(234, 234, 234); background-color: rgb(248, 248, 248);
border-top-left-radius: 3px; border-top-right-radius: 3px;
border-bottom-right-radius: 3px; border-bottom-left-radius:
3px;">tuple_size</code>,<span class=3D"Apple-converted-space">=C2=
=A0</span><code
style=3D"-webkit-print-color-adjust: exact; margin: 0px 2px;
padding: 0px 5px; white-space: nowrap; border: 1px solid
rgb(234, 234, 234); background-color: rgb(248, 248, 248);
border-top-left-radius: 3px; border-top-right-radius: 3px;
border-bottom-right-radius: 3px; border-bottom-left-radius:
3px;">tuple_element</code><span class=3D"Apple-converted-space">=C2=
=A0</span>and<span
class=3D"Apple-converted-space">=C2=A0</span><code
style=3D"-webkit-print-color-adjust: exact; margin: 0px 2px;
padding: 0px 5px; white-space: nowrap; border: 1px solid
rgb(234, 234, 234); background-color: rgb(248, 248, 248);
border-top-left-radius: 3px; border-top-right-radius: 3px;
border-bottom-right-radius: 3px; border-bottom-left-radius:
3px;">get<I>/get<T></code><span
class=3D"Apple-converted-space">=C2=A0</span>as comparison operator=
s,
as proposed in<span class=3D"Apple-converted-space">=C2=A0</span><a
moz-do-not-send=3D"true"
href=3D"http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n44=
77.pdf"
title=3D"Default comparisons (R2)"
style=3D"-webkit-print-color-adjust: exact; color: rgb(65, 131,
196);">N4475</a>, for simple classes is tedious, repetitive,
slightly error-prone, and easily automated.<span
class=3D"Apple-converted-space">=C2=A0</span>
<p style=3D"-webkit-print-color-adjust: exact; margin: 15px 0px;
color: rgb(0, 0, 0); font-family: Helvetica, arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; orphans: auto;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255);">I propose to (implicitly) supply default versions of
these operations, if needed. The meaning<span
class=3D"Apple-converted-space">=C2=A0</span><code
style=3D"-webkit-print-color-adjust: exact; margin: 0px 2px;
padding: 0px 5px; white-space: nowrap; border: 1px solid
rgb(234, 234, 234); background-color: rgb(248, 248, 248);
border-top-left-radius: 3px; border-top-right-radius: 3px;
border-bottom-right-radius: 3px; border-bottom-left-radius:
3px;">get<I></code><span class=3D"Apple-converted-space">=
=C2=A0</span>is
to return a reference to the I<sup
style=3D"-webkit-print-color-adjust: exact; font-size: 0.83em;
vertical-align: super; line-height: 0;">th</sup>member.<span
class=3D"Apple-converted-space"> <br>
</span></p>
<p style=3D"-webkit-print-color-adjust: exact; margin: 15px 0px;
color: rgb(0, 0, 0); font-family: Helvetica, arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; orphans: auto;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255);">If the simple defaults are unsuitable for a class, a
programmer can, as ever, define more suitable ones or suppress
the defaults. The proposal is to add the operations as an
integral part of C++ (like =3D), rather than as a library feature.<=
span
class=3D"Apple-converted-space">=C2=A0</span></p>
<p style=3D"-webkit-print-color-adjust: exact; margin: 15px 0px;
color: rgb(0, 0, 0); font-family: Helvetica, arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; orphans: auto;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255);">The proposal follows the same approach as Default
comparison as in<span class=3D"Apple-converted-space">=C2=A0</span>=
<a
moz-do-not-send=3D"true"
href=3D"http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n=
4477.pdf"
title=3D"Default comparisons (R2)"
style=3D"-webkit-print-color-adjust: exact; color: rgb(65, 131,
196);">N4475</a>, that is, that having default generated code
for these operations when needed and possible makes the language
simpler.<span class=3D"Apple-converted-space">=C2=A0</span></p>
<p style=3D"-webkit-print-color-adjust: exact; margin: 15px 0px;
color: rgb(0, 0, 0); font-family: Helvetica, arial, sans-serif;
font-size: 14px; font-style: normal; font-variant: normal;
font-weight: normal; letter-spacing: normal; orphans: auto;
text-align: start; text-indent: 0px; text-transform: none;
white-space: normal; widows: auto; word-spacing: 0px;
-webkit-text-stroke-width: 0px; background-color: rgb(255, 255,
255);">The concerned classes should be the same as the one on
which Structural Binding<span class=3D"Apple-converted-space">=C2=
=A0</span><a
moz-do-not-send=3D"true"
href=3D"http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/p0144r0.pdf=
"
title=3D"Structured Bindings" style=3D"-webkit-print-color-adjust=
:
exact; color: rgb(65, 131, 196);">P0144R0</a><span
class=3D"Apple-converted-space">=C2=A0</span>can be applied.</p>
<span class=3D"Apple-converted-space"> Any comments are welcome,<br>
Vicente</span> </blockquote>
<br>
</body>
</html>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
Visit this group at <a href=3D"https://groups.google.com/a/isocpp.org/group=
/std-proposals/">https://groups.google.com/a/isocpp.org/group/std-proposals=
/</a>.<br />
--------------010207020604000606070003--
--------------090501000302050008000404
Content-Type: application/pdf;
name="tuple_like.pdf"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="tuple_like.pdf"
JVBERi0xLjMKJcTl8uXrp/Og0MTGCjQgMCBvYmoKPDwgL0xlbmd0aCA1IDAgUiAvRmlsdGVy
IC9GbGF0ZURlY29kZSA+PgpzdHJlYW0KeAHFXduOJEdufc+vyMcaryaV98tgvfDqYlmCL7ur
hmXAWhjjVo+kVfdI6hrJlj/W3+LDzDiHzEurq2cWsBdGl1gRDPKQwWAwImp+zP+Y/5iXeVcW
bVfXdd5NXT60VdG1w5jf3+Rf5K/z9z88V/n1Oa/m/52v0X6Y6vxuaYxPt/Ypa6ei76q2wn+W
efiPb/JXeQP+TdlP+dCDdz816F0NfVENw+C0W9GyoWkgg/HyriIZx31vyFN1xVCXVeRIWuDo
XVccy2Ia6q6dyvzoE9SmJGIVdRAr5152RVfV40oHp0UlAkfKmzsCTvLeR6PMHDOzUhA2H9gp
SkuaI573w1C0Y9sFcbNAi+JGnkfCieb9MwnstNx4HmHttKgIO2ZBEdIgtA8A32u7vgmK5L3T
oiKuYHCewNMV8f5H44DnjPsaeQ0aBT5iVFdFu/KTrBcpiutqRHGdo4ur7pR2w7EsRiC//D8w
Zqv1AH3R1eXkNEzzaqFlfTtisnfmLKGvaGuhkzAmM1lKPpIgX1n09WDBxDk6bc2RKi/ATsPY
BSlnV1to3v8hng6Z86RM4pm55nmQ0/v6OCYn44T6p2BnMgE5eafJlGQXcqGvaGueRDOqSf9x
ji6Rc3TammOSCPOqqYq6qdqVzZ3m/R/iSZRdy0MLzRa+0EIHgSM6kgcttxpg7cdmWHlSosGS
D3mS93cLBZqsEXQUbc2TMkXdSVu8e2P1oKPPK+PpHsb+j+me+s8emxbDMFfXdnee7jekuZyI
kcLT7e60NU9iF3Un7Ta4rOvpPJ225kmZon8mGvR0//T+D/Gk7Xyxczl9LXDdMYNlY+/rNJNT
dF9oM/mNaCGCDGVbDNUq0DlpxZErEWamOJIG7w40WUjSBKtFnpkkcs19OY+au4Uf4AktmW4x
nQhyapxjOdWXcqaZKcup/yNyOnTsChUJ8EN+ZBotc5C+dah5RpbwFyG84hmklB+KFn0z9Td/
ZSq84SmU1f/XNY/zUn0f5JnS02ggZaz0I2ShdTG05do1nRb9yH0msqQf3MYZQGNIyLV9nCwZ
jTSbJ+XAQM1JMq53FMkklGcxgY4CLkOAH3WGHpTPO4q0tvVl8jlesnTAdc2ReLmlfX4e6uws
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
hX8SYizwD/jgw2J/lCJESRjCh0QzXlCzxfUk0UCxF8DYmTp3UQKGqRExnFklGrSs+g7FDDEH
ZRxre8dls8VEEIUYQlTSkoqzQqS50qAk7kIrYrg8Q0GJA3P/RzjrBT8WPJ8QblN9/BIbJg62
7FggkXPaa3am+q++v0Vsffs3CQNeaI8DIsxu7T0htD6RLw557aeRn+MvDjWx3UrVEdQktj91
rMXolUI5lpj53A2Re/77hsvJ1TP8oHUxzTdV5m+QoKxaipnl1PM3SFjmv98x51OThWlYU67Z
RB/U9syv8MHD/GO7hXQQuwajacq0W3Awfk/2yKVmaTXeG9w7Qe0Jux2hI+mwSl4uS9q5rGUZ
Kz5mcln+Cav5LMMbQvczpZMI+optsbz/OeNvSv/x/wC3S2X1CmVuZHN0cmVhbQplbmRvYmoK
NSAwIG9iago2NjU0CmVuZG9iagoyIDAgb2JqCjw8IC9UeXBlIC9QYWdlIC9QYXJlbnQgMyAw
IFIgL1Jlc291cmNlcyA2IDAgUiAvQ29udGVudHMgNCAwIFIgL01lZGlhQm94IFswIDAgNTk1
IDg0Ml0KL0Fubm90cyAxMCAwIFIgPj4KZW5kb2JqCjYgMCBvYmoKPDwgL1Byb2NTZXQgWyAv
UERGIC9UZXh0IF0gL0NvbG9yU3BhY2UgPDwgL0NzMSA3IDAgUiA+PiAvRm9udCA8PCAvVFQx
IDggMCBSCi9UVDIgOSAwIFIgL1RUMyAxNSAwIFIgPj4gPj4KZW5kb2JqCjEwIDAgb2JqClsg
MTEgMCBSIDEyIDAgUiAxMyAwIFIgMTQgMCBSIF0KZW5kb2JqCjE2IDAgb2JqCjw8IC9MZW5n
dGggMTcgMCBSIC9OIDMgL0FsdGVybmF0ZSAvRGV2aWNlUkdCIC9GaWx0ZXIgL0ZsYXRlRGVj
b2RlID4+CnN0cmVhbQp4AZ2Wd1RT2RaHz703vdASIiAl9Bp6CSDSO0gVBFGJSYBQAoaEJnZE
BUYUESlWZFTAAUeHImNFFAuDgmLXCfIQUMbBUURF5d2MawnvrTXz3pr9x1nf2ee319ln733X
ugBQ/IIEwnRYAYA0oVgU7uvBXBITy8T3AhgQAQ5YAcDhZmYER/hEAtT8vT2ZmahIxrP27i6A
ZLvbLL9QJnPW/3+RIjdDJAYACkXVNjx+JhflApRTs8UZMv8EyvSVKTKGMTIWoQmirCLjxK9s
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
vuuPbSBtSNnwy0bLjWUb326K3tRRoFGwvmBos+/mxkK5QlHhvS3OWw5sxWwVbO3dZrOtatuX
Il7R9WLL4oriTyXckuvfWX1X+d3M9oTtvaX2pft34HYId9zd6brzWJliWV7Z0K7gXa3lzPKi
8re7V+y+VmFbcWAPaY9kj7QyqLK9Sq9qR9Wn6qTqgRqPmua96nu37Z3ax9vXv99tf9MBjQPF
Bz4eFBy8f8j3UGutQW3FYdzhrMPP66Lqur9nf19/RO1I8ZHPR4VHpcfCj3XVO9TXN6g3lDbC
jZLGseNxx2/94PVDexOr6VAzo7n4BDghOfHix/gf754MPNl5in2q6Sf9n/a20FqKWqHW3NaJ
tqQ2aXtMe9/pgNOdHc4dLT+b/3z0jPaZmrPKZ0vPkc4VnJs5n3d+8kLGhfGLiReHOld0Prq0
5NKdrrCu3suBl69e8blyqdu9+/xVl6tnrjldO32dfb3thv2N1h67npZf7H5p6bXvbb3pcLP9
luOtjr4Ffef6Xfsv3va6feWO/50bA4sG+u4uvnv/Xtw96X3e/dEHqQ9eP8x6OP1o/WPs46In
Ck8qnqo/rf3V+Ndmqb307KDXYM+ziGePhrhDL/+V+a9PwwXPqc8rRrRG6ketR8+M+YzderH0
xfDLjJfT44W/Kf6295XRq59+d/u9Z2LJxPBr0euZP0reqL45+tb2bedk6OTTd2nvpqeK3qu+
P/aB/aH7Y/THkensT/hPlZ+NP3d8CfzyeCZtZubf94Tz+wplbmRzdHJlYW0KZW5kb2JqCjE3
IDAgb2JqCjI2MTIKZW5kb2JqCjcgMCBvYmoKWyAvSUNDQmFzZWQgMTYgMCBSIF0KZW5kb2Jq
CjE5IDAgb2JqCjw8IC9MZW5ndGggMjAgMCBSIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0
cmVhbQp4AbV925IcyXHle35FvW2NbFCsvGfJJJmJY9pd7YOWFGHSw3KNBvUAnCEBzLAbQ2n0
sdxf2eMRfo57ZSaArkbLaLRpnIr0dD/u4XGP/NPh14c/Hc6H8Xwaxq7rDuNlPMxDexqHeTnc
vz786+H94RffPLSHu4dDW/73cIfy86U7LefzcnhXn/B/Nm/LP4fLaRrboT28RdH0j+8Obw7n
02XuxuFy3v0LwtvzcrqcL0szL/2pvbQt3kHsMC/z6XKZIDhBl1PfdQuQ+bT0Qwflzqf+sgxA
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
wiG+woJlaGFq5yQ9EOoAWWwNZUDhsLR8DTB8iAoVDg2fCT/A7mnC56KrF00FIc6hqSoMJrpB
xlh9EsFbuaHwDJQ6rEh9Sru3e5yytIA4lHPdAr7E2OOmmzG2TSC+e4GZA5xsQ1qj+G0TuNPQ
eVZnxmeJnSN9LKJWaN268Ya9jw+3YeeNDYZbmu+R7oo3XmAjbAejceQfUzYLumYa/ZV5jw/Q
4gs57VqI7+3TkZ/idK85/ciC21Vz6vPy6oxo+8Bvj1qyYgdFvQQ12bGWq/eXcyBPoxf9WTsw
/AL/tbH0gDiqbKJh9V7Ur7D2X5dh4P8yCEZnpvy3/hujZBaQkujThD6IT5Sv/0cXErNk4BaT
f/Y9VHxw027/wz6p8nXmRpilgIqhHCa5enzxC0fO4llhty+veWihP1ptr3vQ7cusa9sxh3Zt
Ou6NrYD/UTYpFTLQMyv/ZWURa/KzaPqg31AtykN3VSy2JxIh1xQbsyXY7UU27b+Z0XbASUj7
MOo7DDqcPWGJ0Xaw8+642z4xmrBrRhHSj52ZXDE6Y/IiM2prVS+/wmeLTpeyGb+YzmBCyJR/
iy6bdSsIKfkjudf8GrlW3DmPWFWMsu4wsX/F5K//P8LwUHEKZW5kc3RyZWFtCmVuZG9iagoy
MCAwIG9iagoxMTY5NAplbmRvYmoKMTggMCBvYmoKPDwgL1R5cGUgL1BhZ2UgL1BhcmVudCAz
IDAgUiAvUmVzb3VyY2VzIDIxIDAgUiAvQ29udGVudHMgMTkgMCBSIC9NZWRpYUJveApbMCAw
IDU5NSA4NDJdIC9Bbm5vdHMgMjIgMCBSID4+CmVuZG9iagoyMSAwIG9iago8PCAvUHJvY1Nl
dCBbIC9QREYgL1RleHQgXSAvQ29sb3JTcGFjZSA8PCAvQ3MxIDcgMCBSID4+IC9Gb250IDw8
IC9UVDEgOCAwIFIKL1RUMiA5IDAgUiAvVFQzIDE1IDAgUiA+PiA+PgplbmRvYmoKMjIgMCBv
YmoKWyAyMyAwIFIgMjQgMCBSIDI1IDAgUiAyNiAwIFIgMjcgMCBSIF0KZW5kb2JqCjI5IDAg
b2JqCjw8IC9MZW5ndGggMzAgMCBSIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0cmVhbQp4
Ae2d3Y5cyXHn789T1JXBETSlOt91tFpfWDB27QsBAmjowjaEcYvSzC7JGZOUrdnFvuo+y/4i
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
Jrb09+W3SvyL/gLA8zEMqHxRyn1ZknSfJVd4cniD4w4L+VwGpNxxmTD0c1zpGHTWMXJbJwaJ
3HtJ8IKoCKPTUTl6Ht1iFcgQPB9e+WJ7GrlULYXrM5IBJU4xLO38OZH04cLDRDxvYUhAaYFQ
kqvoKMOOWR6VlCUKh3CU0CCj3I2sUclr0F59ARiQ1soCCXPKSoGcW65+F8r53s8kE61efbFG
XgSpl1yJLF2b5IqExeQZptSihEudrWapgHM7MQoVg1G8hZuGmC5EyYlvla53uUPWKRf9FmrX
3sUNMfkqFgWsmEtAuzwguc+Tycu3q3LnSFRPubIWKMpOIfaZrJzZkUacUwofYc4zp4lzs9iG
OxaEREQWntyyo1iWHjtGUGLFRA5nbr8FydTzRrWMFF3M6plL7SVYMDm3LhlzVD9Th21uSWM1
NQ0QaUNBaJe3VTERoXKkmIkGQIinEZkEoy1QFX1euBCtIheUnmZmU1qttpEZ2W+kvTx/z7mW
R+VJ6jXUUCsr2dx6w4iXWsucVSzy1Wuo1pesE43jMssiqmHMjdvE7JUtS+45JmLuS6KQ7DmT
RVA8HR4cFlsju6VICCqCvqYFIzavGyYzlCzMnaGq5WxBlFt9E21dy2OfSq7fl1HZwMT9Y+l0
upUiKsToGlUiYLLcIPhbnDqgbkVEKXMbWZYtpYQ15UQxF0AiHf5ZKlc9UrN270KqSbJIV1ZS
DXNWAgYvDIG6RSpbbWOUrWJRtgWz9ecxSwl1lWu5TIyQUUiFDRWDSn8U2bKCWvraZauIy9b7
NcpWyymr0FJFUmuiDRDpSrE0ue0Fl6C93IBgklmJK7xTX/IPWZonMTLIBozU42QaDCmSE0XV
Qklw88zdw4lU+pCK83qolErEA2J64Ji2Pokvr8GO+LVMlnklVagjGllTXWWM6FgpgMpPWqqF
svyon2vYFTPBKG0HdLC8yDJqMDfpsiiysnkFamfedqun2Z3Fwv32/wFlxkuHCmVuZHN0cmVh
bQplbmRvYmoKMzAgMCBvYmoKMTE4MTgKZW5kb2JqCjI4IDAgb2JqCjw8IC9UeXBlIC9QYWdl
IC9QYXJlbnQgMyAwIFIgL1Jlc291cmNlcyAzMSAwIFIgL0NvbnRlbnRzIDI5IDAgUiAvTWVk
aWFCb3gKWzAgMCA1OTUgODQyXSA+PgplbmRvYmoKMzEgMCBvYmoKPDwgL1Byb2NTZXQgWyAv
UERGIC9UZXh0IF0gL0NvbG9yU3BhY2UgPDwgL0NzMSA3IDAgUiA+PiAvRXh0R1N0YXRlIDw8
IC9HczIKMzQgMCBSIC9HczEgMzUgMCBSID4+IC9Gb250IDw8IC9UVDUgMzMgMCBSIC9UVDQg
MzIgMCBSIC9UVDMgMTUgMCBSIC9UVDEgOCAwIFIKL1RUMiA5IDAgUiA+PiA+PgplbmRvYmoK
MzQgMCBvYmoKPDwgL1R5cGUgL0V4dEdTdGF0ZSAvY2EgMSA+PgplbmRvYmoKMzUgMCBvYmoK
PDwgL1R5cGUgL0V4dEdTdGF0ZSAvY2EgMC40OTggPj4KZW5kb2JqCjM3IDAgb2JqCjw8IC9M
ZW5ndGggMzggMCBSIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0cmVhbQp4AcVc25Ikt3F9
r6+oJ7uXIRbrfqEVdoRWCst+ksRx8MFyONbDXa7MmV1yekiaVvhX/S0+CeCcRFfVzHbPDmle
onuygETmyUQikUD1d+Ufy+/Kuhzqqh/ati2HZSinvqmGfprLu9fll+W78rOXx6a8PpZN+Pd4
jfbT0lZzXc/lbeyR/ixuwp/9Uo1D0zflDZpmf7wt35R1Net/sBrGvhrGpcOgbTUNdWccE60Y
l6Fa6s74kFaOCzpMYwdKV/VLN4HSVUNdT6C0VTOOi1Ouyw5ydl3TgFdqdVN2UK8e26xdB/W7
OvRM3DNKkgG8UqtimpdqWKYRcpEGROpqafveuQMjDW+AlaZtktD+NKWiCoX9KQ3FySkc77p8
m/HIEZPmE3TrJzMExxqXsRrb2kZoqr5fZuCTdBrGGugPnVOgZQ8s+qkVDbw6YDfUTdaTuKJV
4p5RogzQV7RpnqplGY1VMkg5zXM1z/XgzAWrRBDFoEuikhZUTAqR5kqLu2BIIkAquOEn8MFl
rKe57+xbv9QNpLNvTTONQxk8s6umcbbpkHkmabRINGJsBw/o57aBEF1Vw/9h1qZqlmBb2T1R
cmzYKnjm0s/DCHdJ7eCrbdf0C3gl7qQAwOSF4JVayWbmmTkNtgPQDfQDd8yFvurqBhQaQ5TM
R0WLOppG4J96mo6mdZijgTspLkNC2iKMHj4GZrAoAaa6BNMhcYsSpB0wzdOSut5TkFwGZuQV
zBCUOwHTITkLzKTjPpjOXXhpqhqYX36CaCwl3BYYeUAgxEycl2lqilXcruHi/Wj/TPgWvuAb
XByRP0TxehoQqOvy0/xPOAhmdt8V17flb67Qsq7rpry6LhtMGWuMz6Et27key6vb8rOrqx7r
w9Wb8vDu1e3r47evrl+/KK/+s/zdFdYY61AX5w5ZPjJk07ZV28AVbeDidODy5btjmQ1ajaZv
+P/coZO2mY4NombbYDXc0fSv2WBBxwuHeRjUdliBWuKfk9FoUkStS036GL5zV7X1gJW9ndth
he/1zavj8UQIKH2hyjmybsqtuj7MJV6ac8fSXDftFBRZgfnSudNB7PMjVOmmag5OudHk77Kx
nuIjuUr9UI1NmHSbYTLnuASwhz0Qqcxqdv3yHtj3Kw989f39+2fEs0Gu0yAzauetttkw1Rxm
mEXPNmQKDSZdH7KH5myneWzSZUFto/L9+3//9tVf7nJxniWsTVgtWuTbO7r/+ZCN9hSf3fWq
Zu6Rhzbj3ogvM/fFSvEzxba2hgFb7EtM55VnXb9/d7x3tbXX+ewfsfn5GpsfJBtd2Kcg6xqQ
Ht+CNFXTsgzFhD1OoN2IVk7dWE090kujpa5OijuhcaiXue5NX3x2Swu36mIuam6FoVsb+qz5
nNwrixZttyB3RIK9o+3fuKbPEwDbfqqwU7Nou5lKf37ho52ly3YRbofe9nF73J8xvrbYMo0d
bLajROagl+iwOxNCBMcW9v89vo7dahb8bPF1q637BLLOXy6+blRGfL3//tubPFl9nrzRw91G
+Z8pwKIK07eoa7TzZsRfKsDOVY25GiRYudaHA2yMpoic2GP2zYII29a9ZaPY/ZJ2I1o5tajj
tPMSIiz7Ou0XCbEe9TZ+9fwhVjFwY93niLAe+zbsnzPETljsusEWpc0wWYh9nkUpxNm5XcXZ
//HI80jxc2cTfcFmh6sx1nb8+yl2Bh12VMvSpElh6QW2yv9aHq5eWFZZHt6+sO03viAQxS+A
IxC+IkFP/vddJBWHv/AZUpfQWASkyZFNalseyE9P3qQ+8UFxII+HRWGL78n8W3654ZckZHH4
VCTJ9I00oCyv2O3aqgVR4KPt4YMy10nU4qABxVSosPF/sL8Y8cmdKLfvXxRxkB9E2zCSuBvk
qH4CqNjaii3E/b9IoTAfgb7lpwEXoSYJpcQrKngnEkemuSXBHZ+Q79rwhXxm01d20Bex/ZGG
yIBMqH/NRxz5Wt2l0/Eo8I6fvyj/rbz651hDCscQL78oQi2p/OLl+XnxMKFO3/Z2tBC+DVWD
tHgY8dEPU4FnY4mQFD5RAO1QRhuQBUZ6+Ew9wvfeCvnhG6qnOC7J27dF5BOL/ZG/8UHxPYyc
eiR5rKb3m0+sPFYtE5bNxbY+m29WNmtQ/UYhCoOhdD8bP2w/SBuxrUEt29ZBJ6H42SHmNMNS
1TOqIGONonS99EUzYK0crJafKKbObDsuLLmioeY7VU1nZUXRAFgdTwvqyL3IKFEEKx+nRoMd
iCyTbYCchpL1OBn2ZD7gFGBA/b2QCKRALIkqGlSkQqJJ6SFxL5xCGbzoj/J+PzWG8+bbHs5F
hnOmkY9AjXbkItCUtMiAJs3QWWOxh9caVeNFmts/IyX7i7lbcW1rsBLQapUBLZqUHpP9c38L
9gert8FCnflj7quwWqLJKwwx0ZqmNWedUXHGYmmW7BZMzShYj+mTKHTWDucZogUMcSiIWcxm
QGIekDVCCMwcMDdfdUpwzABhpJ1ASBIOlxabcjjOMt5jjcpzPY/RVU0AUuSqEFQ0QzCpI5pU
NgSNORRMIFACeupFZRekG8Vpjd4TDxxTIgDNKQlqU43+eP/V559bXenXV7/6l7/3jOjsvW2I
Z/3ImIpEOI+pGLKfY0zFJ4D2mGp0i56xRxG/j6GNUbHPP42pKCeEmIrPYLAQs0NLWCbrYXEc
8pwXU6280szwjBkli2Ga8QX8MdcTDTZuq2UOp7SkwbmwMUEULptpsdAOReYBfgoWzYSgisji
FMhqE60J/pJapbluFQb11JQV94ySZAh6h9BbwKerbgJCeVSdWsRcxPgw2QN3ZNl2EiQZ8ChR
oHeSFbwSDa4qjUhzrck9oyQZ6KuMpXaAuhtVH0EakkmjbISoUbEjl5CmpI60a5kjndr5YoXq
XcKLEVQyONKATh6QWSR6AKDD4nhqx2Rtt6wj7bQc6eQ7hWst/xJelCHEVdiom+sFWrq/Oi2i
iPNFwyy1Qz0AroLDKxwRoS4wTA28dFqSC2BtFiWBWNthdWplR5UW+rDHFs0WnRRFAaIxzwjy
Cqcl+cOpJzvihGmekJo4c+iNMG3TCTMmiEAKMTRREy1oSIXYznUm94yiWRQP/hVZ4a52h+XR
089t1X4VWYcakbXA6edJZA0VpV9fHauqekpwRSzHKphtHbu2sXHslNW3jl+u93yrPN7T99WD
nU2m0m9tG5TPpz2e7w+V16uJ9iHM6/WEGwc++B02RMA93+eq8/EMxtQkDeAqSgHtMfTF938i
qTX5vea+iYJKFoknCvuIIG5pN5Pty/9bzza9hJFGwNi+3QFItiNoa8A1NB32BziktzsXY4vj
eqxfZy3VO4UIJETDgHzGfGpTjvhDzS2avjSkTPzyJ35BGwlcdA3uyVje1+OYso1XuTqkN0PT
OAnXMkTCrO+XcInKe0Ya5ngo32mqQvNzp2o2cfp+xi7Isoc9VX91Uv4ot7WUjSukwkRxYGFi
r2zj3ia70vRkyL9VjeCDNNWy+Xl3Ky9jr03jVBwpDiqBaFetzteZpc7zHB7CrOJQx3KaxyEN
IoW3hYQ7NaIamhjq5SUgqqg2Kgn9yHmqIgHbquygTmLMIdmUf799kBlbqO4kywhaCcBCVzbr
Ly10cbhNVJNFNRp1UCjTE6kryp2qQRxAjxTmyY+BWlFJ1aGEZ3HQkPrivi6S0N8Meazkg4WV
PFJ4w7ePCm+28cnmPBKLrkN0Wy+WZwS24rAb2LDHSLdDuxbns3bH87ZEFoq8DfmPaDcZrUGZ
o+3sFqb3TTQk7k8KbSs1cderwwXAZl9ZGtXjlJwDi2wqxskF5BR3mmY03noiexU5eWZxkMG9
bqfhNVm8kbfSYHIwUSSRGIhyq29SicJyWIVV+jQfsOHDWklO+fPXhOscX1eQ0yySkOb8BUuZ
T1264ds9rmzEhNMDMBLBBvvPbNmgxrLxVqC/teWvKVH1j/kYu3wjkdVHoZVtfpIRCGl8UhzU
VBgL0tOm5eELEu4UZa9J+n6LulShEIqNQl2Sq216VBz0SIY1Z1Py8kzhaGfNbHB1eoLNkuFO
M3gPSkqy+phbFYf0pXwgKLUDbghbAMKNpApXQQcEpRYXUmZcTHcajksTrcBJKeqxCI+gqa/T
Lg9KO8pi54haLq69Ry89VXZjN5l97YJHPTlq3ZXHyUfIjz6TPC6LSHzClnKU9QN5rVw+SVAc
FIHkU+S2H1zTIZZaS26sp3GiyW81MzwmireG9UbeCq4bWfnD3Jc/JrrozqdHF2kgmUR5JBhL
RkF6eTTWgRciRFq0ZH25iMdlgieAZW/N/mSWLFXTIwWG6mIsd2aCRepxmypfpT2HoqOgjML7
Jlv6aQZs4Wfmme1d8sxz5SO7R6ycCbIS5MijYjqNAqvNuZTtQXHbBPeycJjUYquFsDJZFBIN
VV+rWlrEcRoqaLjJVbTtjGMoQIR9Ld49wqWVdsLtFdywIwG1HzzqBtxVJ8lq6j1umOAdFpJw
HbbCaV1bIJ0MnNEkUtAkjW+cSOvxyk0/WhTMaHg7A+WbxLrADcEKhWhcZ9f4pJjGFJM00466
kEZ9wSvw5t/AKY2/rp1iBdqtnbInOO0gTG45whxxK1OU3PXLEabkOcSkbZEi5hw/R5io5wi7
bTbmiyaG+aIb5AgnUg5wIhEV2DhZPaNEq4ezKKPaC2Qr8CJJnuCt8CIFEvdg0K7p4JSAYMab
cXDXzOxGwUHDiXsEWgQPL0/ZiLEnWuGVFtQgzBOMOY58SJAriJRjl1qBZG8lBfeMnKHyOMxG
EXaJcgJeokX0ojbsKYXJPBFgBU2ZVbEU/nluBSbeeSzsVREvHuD9KszTk7C4rZg+4RzqdPfX
4jh5mRCGdqMvFwitC9pwYCFLC8ytVg+FZu2EFSS9mqFGWkeYzOiJUgEOryd+CUW92UaJ6+Wr
pkupkdOIxUGqbCGQCOrPtYEy+Ur7HdHSKiV+3kijY0ENFV/y+T3Lhyl9KQ4/qLukwHLs69C5
Gc1qk2y1gH7mewye0Xjmtl2HKX+2ZVjjIID8jo1MKoDV6M1qf+U5056rySOV2gkR5S7EkXJp
8NttriA2m8bMIdVHTVE2Slmsy7rp7rUCoJnmjrxBqYp8gDJrNAm9qXB6TZ+DCktycQMKHZ9L
d+xGDTmF7sTnloykKQnsK1WSwNlGQJKv+4g9HzzAPbvOJjiE2Ia7XFTc8tmSkH/SbLHX+rII
bbMF70VvjgSO0svdgRrqETHmg4hj8ci1RmksvZTuk4mPh6mSNBU+7oCcsuUB9/uS57o7yAUR
hlJEQfnx3IiyhxGO71VdLB64xamApgm9pWjXmUxcHH6i5nRDGX/bW67jbi2SZuRR4ApuDqH9
jlg7ZmxDZHHioQlx58d02w4a7pHNRnGQlTjORl1ZmS1OXCHZWGv2XtA9XXI+PIAcTCr4fptC
fOC24nM52IjEc+1gXz5Y4ruWwIqFkldAp0fFwY2neSGsDUZfc/d2fE47XhcNriJ2KDY19Yjf
HJht6ydSgzeems7O9pyEd2t6vOzU2CvkLeJOg9LYhNfBGry2sCz9WJCAvBGF9qXFfUSSwAf1
c1wowyLObg1uDoI7COTslDi83WwTDTeuUIcLbws4DfV8uyYj5guuTtQNbvZIAlKMVxK0JC2o
l7QRTQrjVmZkLpyiBGFjEn+BYHNZxjeBdkFJHbcAJ23sMoRaabytSBFhFzyDmIIbK2JMWg4f
uTt4CdAc5GT3wGtrnrUF11bOIKaVb+BmG39Jfie7EwF6Xbgtg27DgvqCu2dglWjuDN4OOxwM
BkDtggqqmA0siLdDOzc8KeYMEp6tgB9odTeBBWmGKE6IwAKUyN0pcgdvRQ2iLWJPqNkstt0T
d1BwdxACSoZEyZ3UpkVoZS5CjUgzUCMSoETuTtHk+dgtYPi1gGwLaLvNBnvjDhEupRkfvQdM
Vx+zPKbF9YOlta3mSSBN71swNipqaoH+cMqiNVCRdieIaqHV4etPWmHVT4svxeEC9ZPWcIXl
2CRbNde5lpfLr5UvkK9yqpNDllgZlDpc5suDndGe7NX+Kf1N+cQ3iZe9A3ErJJ2fo7xeiko/
OEw77iel2FJYIyEpSakiZcUjX9Y+IvHDDflNcvz4TsRX26363J0QWbWg2PIatoBtLtRjvzA9
onyq/CJNi98zcXYcNX7y2uwCAEWkZLKC+sgX9gFKFspySamvOcJBlCaLuaZY+uI7Rkm/blJ6
0il+HGClRebSbKGZ4jmhck72lgLeKWnpnfiIM1h8pbTON6Rs4pvVI4Qthxb8Up9POKB0Fre7
bzbPNCR7iy+auud5Eqhv2fEA8pZ+xIvnEy4K4aZXO6J0eesk/LRXPdqPjN1kNFvP2wkXx0Zc
bMXvahXjiIugM949wVspWItxNVQU/NYPVqrJFkTRcM0CKxxe68APWbEnOMZXCEZyJ6WUDMYr
tipRGe1RnQ230UTrcCyw4ByA3AucItRDh4qSZBDF1E6yimY6Ro3wSzmpJ8HBxffEnRSX4dyz
AfYsdoDOFGIzu4UfFdoTKwrvKmZAS/gMaNEcQnInpZAMGdAC33gl8DMTbc0Yje0ukQEtY2dA
iyatxZ2UQjIY0IYF6ur2poh7K0nuFd7MDvQbbBr60V6kGjqDbB56XP7PPSBSTkGMtAjiYtsj
9TQPQ4V8MK+I3EnJvUI0KRB5WU/z6mWwn1MDK2NeQG/84pO9I6EJQ0qOIWmGYVSoVE8qbYgF
5iTkc+gJWWJal7IfR/AsEZfKcY0Uc7/zdeqRLLF44oI+4BfpcBceFzN8mKaIP2CFhVY/XHX6
c4W6zoWXyMKERmzTz/SJZu9mIL/GTw4CuBHnovYSXNaVpCffuYC3hsvh+ETVDjGKCzo2GmlB
x08cxTddEfFDRoclJnziJqg9yFY5/LZMbMomSj2R3p5kg6lvabciwoO04KCuQB76IiaicMHB
OhM6czjS77HenErGJ2JxrxWOnSmiHkibr14Uvmhd4iV43yGiiy0E/muw/MQbV47ub6nuVktq
hxR/V8s/MT2VxPfssjaVWhBujOYqYUOJdTf+miZWXfkX1kG8ZGnlGHphSZI7JkjoO2F/7J5Z
ZLTLXTPdND91TbwuNaWc2cFDLSsgE82dbQTuaW8pjq1BaBqRCYXz8LdaEjq6A3nKLnIHtqQL
hYQqMJNXq9M/rHCGEFucccRoL9KWt3izKM52O3UMpAznznajA35jynFGM9FOcTZ7nvlGygrn
Fq8jxpw+4lzgpwXkpPQrwotsMCgufdcPhH+EFbdS2MJ+fiv0JUHg8QEtoTlL4ONM3Ys75EVr
a3jx2EiqKMapse2z7SwKB6TMyUl8H0GZ7zddNvGG/uRXY283ETZRSruhf4q83BMD+dQ+K1ql
RXTlCB3qVbkj2G9MbLEhAAnXsPU+FUwiC3oadosJYXyjPe1mGnLAe2x5wkCoc4RP2k/D2KWm
8AQXlcPnN5tYS2byPXbZKprs55Y9a2rjfWG834cftsxiKGmobWq+4+cFUd5DDTyb3BntdHJD
qw9O7jwxwu0x3Oc4Wenx7gxvtqdwevjt+/LH1+W716+/KvELOz+8xpYav2RmCUwRfnnzj/8H
BIDYcwplbmRzdHJlYW0KZW5kb2JqCjM4IDAgb2JqCjU2ODQKZW5kb2JqCjM2IDAgb2JqCjw8
IC9UeXBlIC9QYWdlIC9QYXJlbnQgMyAwIFIgL1Jlc291cmNlcyAzOSAwIFIgL0NvbnRlbnRz
IDM3IDAgUiAvTWVkaWFCb3gKWzAgMCA1OTUgODQyXSAvQW5ub3RzIDQwIDAgUiA+PgplbmRv
YmoKMzkgMCBvYmoKPDwgL1Byb2NTZXQgWyAvUERGIC9UZXh0IF0gL0NvbG9yU3BhY2UgPDwg
L0NzMSA3IDAgUiA+PiAvRXh0R1N0YXRlIDw8IC9HczIKMzQgMCBSIC9HczEgMzUgMCBSID4+
IC9Gb250IDw8IC9UVDQgMzIgMCBSIC9UVDMgMTUgMCBSIC9UVDEgOCAwIFIgL1RUMiA5IDAg
Ugo+PiA+PgplbmRvYmoKNDAgMCBvYmoKWyA0MSAwIFIgNDIgMCBSIDQzIDAgUiBdCmVuZG9i
ago0NSAwIG9iago8PCAvTGVuZ3RoIDQ2IDAgUiAvRmlsdGVyIC9GbGF0ZURlY29kZSA+Pgpz
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
Q+ctoPTFu8W0VcxguqregksFRwMGFMkRF5ph8dgg4XLnhQ+p5sHOe5mw3YEmRHC5p52JMCy6
6aJnwS5HmGwAUsR3DUQ1II224t3AOKMSSCt4NR+tfFzwAEDiSYjdOhGBYlJWWLKymiRMdlN6
OahI9FCFtMuRsFMiRQfagswtE2lgOgqeAyQ6XLDCmBciPCyoTxdMS4NgfLremnELZyDMT7dg
o2s6m7W5XRqi9QJVaVwzLxh/hQyI40YSTwi8x3OJcs2WBqC9UoNA4rKqSyhRWY0iRIpQaRXJ
RprG54Zx2JYRIeYRqxseZ7ptyZ8cHg/mKj35CUV76E7pLqAULf5M7RK0oXrEcRF65mME+LM8
xTW9iLTMEMtBu83pLEk9EWcTXoRuJp1IR6Mhio1OnGYgIm31C3biDqYm8XkGhICnLfRFZ1AT
tgYWO7NVBpKiJK8OQQjyYEOe2JXwK946NxkE+yWbpXEOCERo3SQQYUnDmlTijGNUPDRsZy4x
nERhF3NlnV03DJCYdj8v8De/hA48Tsdtbn0JjeP0XG0g/+e/b7jEMaEjJecfkL1LWcIfsDJn
4IE9UH1kAAtd/otFJv+9YwMCTxShX76rsjjYT+xiSZ/IkR8ojYqx75EVA14326Jw6iJLkMuI
7ZPDlVTjImH3ltgSNqbzhSa5Ntj1LqpVx5mLNjyFLtdUV7moeIJMiF+x95qkPcNHRZZkND4q
7iTP7/dRd3ibjxgA1JhqSWFcLZQL5loRoZ5kW/104t8rNjAdOC7TIt0LYuOJ48Zzzn/H8RnM
T3vVcNmS41tF2xPN3VNDgxW9tIbyf6zCJIMNSDd6WjT/6T/JKMfpCmVuZHN0cmVhbQplbmRv
YmoKNDYgMCBvYmoKMzM4MQplbmRvYmoKNDQgMCBvYmoKPDwgL1R5cGUgL1BhZ2UgL1BhcmVu
dCAzIDAgUiAvUmVzb3VyY2VzIDQ3IDAgUiAvQ29udGVudHMgNDUgMCBSIC9NZWRpYUJveApb
MCAwIDU5NSA4NDJdIC9Bbm5vdHMgNDggMCBSID4+CmVuZG9iago0NyAwIG9iago8PCAvUHJv
Y1NldCBbIC9QREYgL1RleHQgXSAvQ29sb3JTcGFjZSA8PCAvQ3MxIDcgMCBSID4+IC9Gb250
IDw8IC9UVDEgOCAwIFIKL1RUMiA5IDAgUiAvVFQzIDE1IDAgUiA+PiA+PgplbmRvYmoKNDgg
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
cKpgU7BD9N/ltoirtyc607boLNhw9MAyWoCorMtvwSxu3r+/khh9Lq1HaNo/ITNRChg6eitF
DB2WGdOUUvhS6XdWCn4CJsHp98Lp7eJktNeFkacgYTRz5BinhszFyRTg4drnvMSw7OjOOR7c
m0iYaSxhPGXv3xeZipgc76qXmrlQeYLjxYbs2NEZlyxPdBjh9qisF3Kj8Ra40lcdxxBXIbEN
kTB/yqT7bLFxb6nqy6RK3dyw4TnK8aHrhHBvYNjozNc9Y51q/nrD1nR4GrBvytTqu4HdVMGO
aHEvTh49pupu0wgUGW8ale0ScE0I9CyXEMMRrjoFW0H96Wda/imdLWwdpqlw7zRR67PtghLc
wtZJStjcztq9ftRYCr0rjbtK6y3ON9zLysdbp3pmKNFbUx08qDUu2eJwEje3cVnToqphgZL8
5kfzYj7+gLKom3eY+x44ld7Z6wnf4LE9bJdxy/4Dnt9DCVQ0QtcfA3E0aZYewtFEvNqNS4cg
IWw62C77gOe8ca2lBaXCjhyNMGUDXEiHwXgcimmAAPBFRYsq9UwLPFBbvvlAoh+RUcYw0Frg
FQ+burL8BNs9+8jNt12Ld4tC8xkLhAfBFOLdD5ZpxOXIkhKlFwbSVXzrLIkwhA3sPDc2FSSL
A8f8bU0VzsIPiVG84kBPtzao/YXdYK8Y5USXCe94zBDgqVK/A/eWABbq6ssvmVnpQpH8SNTE
1Hidt+5LCmCG32XAaKgW2VluHzHQUeBQrXEUgUCSpGcb8cJiIBGbnidPQh0WLwtuWSihfxLk
1++hm3gKsutRVwF/QkYQVNP9qcQLsg20Fm2hkAsM+UxrPVEPQkgDniwgUdMTx66cDHAPXsJV
46Ir8aCQkgWVxZyPNKeyA8LAdHPL06BlOJHDi23o0LWeaYpTTjQVfiTT49oavwQRUqnw6g1+
NzbvSCjSWSEdUhYO/ggShsZC4985nfJcCVFEFLpQUlPryQn8r/8PHi32/AplbmRzdHJlYW0K
ZW5kb2JqCjUzIDAgb2JqCjYxNjQKZW5kb2JqCjUxIDAgb2JqCjw8IC9UeXBlIC9QYWdlIC9Q
YXJlbnQgMyAwIFIgL1Jlc291cmNlcyA1NCAwIFIgL0NvbnRlbnRzIDUyIDAgUiAvTWVkaWFC
b3gKWzAgMCA1OTUgODQyXSA+PgplbmRvYmoKNTQgMCBvYmoKPDwgL1Byb2NTZXQgWyAvUERG
IC9UZXh0IF0gL0NvbG9yU3BhY2UgPDwgL0NzMSA3IDAgUiA+PiAvRXh0R1N0YXRlIDw8IC9H
czIKMzQgMCBSIC9HczEgMzUgMCBSID4+IC9Gb250IDw8IC9UVDQgMzIgMCBSID4+ID4+CmVu
ZG9iago1NiAwIG9iago8PCAvTGVuZ3RoIDU3IDAgUiAvRmlsdGVyIC9GbGF0ZURlY29kZSA+
PgpzdHJlYW0KeAHFXVmP3DiSftev0NPA3dhJ6z56jodpDBZYYBtowEA/7CyMmnLaXbNVZXdV
eY5d7F/d37JfUIxDIlMlZUo5bTRcFZZIRTAYjOMj+Uv6Y/pLmqV1dqjqoijSuq/TtsoPddV2
6dMx/Sl9TN9+/5ynt89p7v483+L5ti8OXZZ16cPwhv81uXe/Vv2hqfMqT+/xqPnl5/QjCPQH
jaBb10TW1o70a/trXeAbiq5Nbh/SP7xL82p4BH+XXdoUWZW+e0jfvntHn/TuY/of6ZsfvknR
QpG++cw/vHyDHkA4DoTkTeoJ/A8/85M3/AP/y8kng7Y+8Kv+X9I3H30v0uhXfuSefxh3k7zh
35/knbvpo8/4pP9M3/1b+sd3GLLs0LdFXfUQZfhTAuEWFVivijIt2vaQdW6glNblh66rGwyP
oZWHIi+qtCj7Q940bVp0FUagS4qyPXRl3zEhvU3zpj60TVsI6R6k6lBVGTocXgOhPJRNRe34
lpmSFNw/tcRPtcWhaOse32Ro4K7qMcbSeNMfurasQRm+ICmYAp7lQ5kG/oQbpinHrW+dKUnB
33CbOk099HkLDnIScvDTK0LWxqyQpcvws4KPVzErk1bOzFBMXFOhqqBV+FbQOkTBKE5GWsWM
lpyCkBYJO57EItXBNxSvfCRkerGq8hrSUjX1NKiuqAQ/B1p+KHuYgaLsDm1R4QfItGkrKJ6X
INryFJWgPjVIsOuKRmmkXlCoWltnio4itcVPsfoObQ1vdsWhbbNBVYfWIdOqwxxRVWWKytDJ
xz1FQmSO+Dnlmltnio6iU9VvnXVcblXTwapmhyzL8uQdeFP7WuSwHFmTWysLJsjKvnn5+uX+
+P757r9h7N79ZTBFa8w4DDR6LNJxj2WGcc771vbo7fqb9ObxAywfdybWLpGfjAXElCxhF/qm
x0iKPglJh01Jg2lKYKhgERtok1fgEnaprmE2mYAxI7XqOjGMpPeYg2Vdqh0smg5WLIM+84xi
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
z/QNR81EFT/+PwpSdnwKZW5kc3RyZWFtCmVuZG9iago1NyAwIG9iago5OTQxCmVuZG9iago1
NSAwIG9iago8PCAvVHlwZSAvUGFnZSAvUGFyZW50IDMgMCBSIC9SZXNvdXJjZXMgNTggMCBS
IC9Db250ZW50cyA1NiAwIFIgL01lZGlhQm94ClswIDAgNTk1IDg0Ml0gPj4KZW5kb2JqCjU4
IDAgb2JqCjw8IC9Qcm9jU2V0IFsgL1BERiAvVGV4dCBdIC9Db2xvclNwYWNlIDw8IC9DczEg
NyAwIFIgPj4gL0V4dEdTdGF0ZSA8PCAvR3MyCjM0IDAgUiAvR3MxIDM1IDAgUiA+PiAvRm9u
dCA8PCAvVFQxIDggMCBSIC9UVDIgOSAwIFIgL1RUNCAzMiAwIFIgPj4gPj4KZW5kb2JqCjYw
IDAgb2JqCjw8IC9MZW5ndGggNjEgMCBSIC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0cmVh
bQp4Ae1c244ctxF951fwsdeIWn2/5CWIbAdJkIsVL5CH2AiUseS1vSs7M7Js52fzKzlFVh2y
u2eknnWAvAR66N5qslisy2GxyNE//XP/T1/5viq7vmka38+9H7u67Ltx8seX/q/+tX/64an2
h5Ovw7/TAe3HuSmnqpr8Q+yhf7r78Gc3l0Nfd7W/R9Psjzv/CgT5ByYYNrCoxj6QnuR/9vOE
AdrOHR78s1tfd7EJnu3kh74f/e2Df3p7KyLdvvJ/88XtDfg1vri78eCEl6/s5eTDJ1d8Z5Tj
t/ZGEimnF/bt3l5if1+8NsLLGxfHeGmUL+xFB/PFiRwf2MoYHdK374wVxeWw7Ha0fg+U7Usb
j90Ov7hxYd7WmN3Z5M1aRWzCEf4R+briJ2PDkdg4U4Oq+ki5bAiO+drmRz7GmCpj2yOHOBgf
KkPlcYV9oZ3ZyRhbi+9NRzQyuWkfVzwhiVJ8s2HI2R0O/HaiodWWrlgr0Rc/3fjP/e3v/ce3
Mcze7+8++Ltb+/s4b/ydk0rO/JZzyHSrnkqjbexg6rqsULOLK/7N+dNCHJM+zaHWBklu8pV5
hQ1ObVLXpHDIUt2XM4gEV9g4FCWXIBkA0dF3c9UAf8q+bsemB/CU4zANDSBIEAkBJKD2TkSK
FkLHqqoaf3vIsakZx3KY6gEINc5ugVDFn7qumW787dfRG4C1ZTvMgx/rtuybagaSQqCyq4Yp
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
GhIsK/v4xwhw2Z2ABFhM4hgVrJxYf+vNFvaBmMjCD18sE3QFSWxt/AjRxo+yUDxSNjknuRHF
2fZf/GYj8ZNOIVx9SKa9ZguwdrLJivypCv//1DMuI1z4GGJPQ83jf5V6ElUZ+3ypLfUkCBz5
zUB5Y9ZHVguxj8RPaeTH2U/wDP87CJwqBm/L/x3kd1oeerBFAtKHmjT8PTxZWmILxhPCJzR5
w0BAtTVQEAgLJvb3m5/yO//XxMNqKvglG6Yip/ppKn/WQW0GGzkt/p9rQ2RoOsWw58C5vinh
jQmMQA5NbKpocWU86354Jb/8hm5til/b6Ad7+cZe4vBODnmDOD/oMxlJd01YyEMDoGF4XjIa
EqHrp6L3xlZTmVuDpmQKLm20wSu+HW1SpJhydd5ZLrSQ8fl/AA5tDssKZW5kc3RyZWFtCmVu
ZG9iago2MSAwIG9iago0NTIxCmVuZG9iago1OSAwIG9iago8PCAvVHlwZSAvUGFnZSAvUGFy
ZW50IDMgMCBSIC9SZXNvdXJjZXMgNjIgMCBSIC9Db250ZW50cyA2MCAwIFIgL01lZGlhQm94
ClswIDAgNTk1IDg0Ml0gL0Fubm90cyA2NCAwIFIgPj4KZW5kb2JqCjYyIDAgb2JqCjw8IC9Q
cm9jU2V0IFsgL1BERiAvVGV4dCBdIC9Db2xvclNwYWNlIDw8IC9DczEgNyAwIFIgPj4gL0Zv
bnQgPDwgL1RUNiA2MyAwIFIKL1RUMyAxNSAwIFIgL1RUMSA4IDAgUiAvVFQyIDkgMCBSID4+
ID4+CmVuZG9iago2NCAwIG9iagpbIDY1IDAgUiA2NiAwIFIgNjcgMCBSIDY4IDAgUiA2OSAw
IFIgNzAgMCBSIDcxIDAgUiA3MiAwIFIgXQplbmRvYmoKNzUgMCBvYmoKPDwgL0xlbmd0aCA3
NiAwIFIgL0ZpbHRlciAvRmxhdGVEZWNvZGUgPj4Kc3RyZWFtCngB7VfNjtxEEL73U9TRc1hv
u+3+48YuSAgJKclOxAFxACfLgmaSjQfE2/IsVLf7K9vj2cSJgpQDmkOXq7uq6/frmnf0nN6R
JhvaWhvXko2WjA519K2n4TX9SG/o+vbUUH+iJv9OPZ/30dRB60DHLIFPdcifSZuPdCiKM/lA
9/yZfqwga7y9K4y722RD1qe9zcyr+afzpqvbYFTPt3nyndHp3kw1daMtWcdLN3IMWZvOGOrJ
tnWItmvHb5vXLKFGWuczvNuEdHB+vgmjHl5Zz6Q/8dPNkPAq29PTA91wMHVtbBc1W6hr27Te
sDG69i44w66x65s9vdlT043B4NWF5ENH+yNd7/cpE/t7+omqZ3pHHCxDlRAGnDgSqnoBDp/5
mfbf07d7NtV2dce2NuR94PBy8o/U6KY22pqJd5jzfO2CdSnLk+zI42QvMrzJTeqPaulmY1zd
+hAvO0u7FF+qvt4lAzxVYLyEp2/g6e8g/nkN6hUISD0b3oL1CKJwVHX6BawDCMjdFzNEesDO
LY7K1vFxp8b8CGvS/CuOyxViLDR+hyPFHDbsASzxUbz+bZ7fTSlIPbVMQa40x/V1Vmly7Z/F
fawldqr6qmxcn61/w+A5wQm0VNXnoRRlEglx7uqEGyWTK/GBIzCGG0b8gfhDuG/Oj5x6aRkh
IC4mF8WqkiMrPWKWpLo/QY8UmJSVFIZ4OshpuUPDVrnMgnOmWU0AIEKipiABVYPsIXSrtB4P
OzWBxKYi4j4eQTF2AOZoF8DMIBndCKi8LoA58RMwQyLTHYA5vTNLYI5GZYCPGeAnYObvDMyQ
SCDN9mwCZrUVmJOnF9olBrSLWgOzpK5D6oR4AQ6nZYo5wFX5JtaMiHYBzODNgZkfo87YwCAM
WfITj4FZydO7OaFLN2fAHIM6xwag1R2abPgLnvVgCWeQgn+F3oT8zRrSpKnWW9LrJ46ewrP2
iQ4m2LOt5TyqxQO76g/48wgPn4a9gvyCIUy8H/aoktisYE9VEgr0ruDMJdgrOAhz57Cn8iv6
MbBHT8LezCwx5/2wVwwTTwF7M2gVlJLeeQr2ZnOPnO1QVh1StIY9yZ4ElV/1qQU3FRHmUcu1
MwKgddywi3nUeh6ueR5N6xz2Mp+hrkjkeTTpSWcS153BHnNGPbzO59HMZ6gTCZ5HRz3//Txq
vQHsXZhHJR2SusL54DzqbKyDy0GVeVR4M9hLvMa5Zj6PgvfZ59FLzgK2Lg+SpfuncU+mPMhJ
w2CixMYPApZFRlXoY4HBq29Q3dJJvdwgU8YgFBS8RXcMCTbl38Cmir/8/DkdVy/C/7A5jqEy
gkk7jHPbFwibFoUhpn40bD7/F7EYKaAKZW5kc3RyZWFtCmVuZG9iago3NiAwIG9iagoxMDEy
CmVuZG9iago3MyAwIG9iago8PCAvVHlwZSAvUGFnZSAvUGFyZW50IDc0IDAgUiAvUmVzb3Vy
Y2VzIDc3IDAgUiAvQ29udGVudHMgNzUgMCBSIC9NZWRpYUJveApbMCAwIDU5NSA4NDJdIC9B
bm5vdHMgNzggMCBSID4+CmVuZG9iago3NyAwIG9iago8PCAvUHJvY1NldCBbIC9QREYgL1Rl
eHQgXSAvQ29sb3JTcGFjZSA8PCAvQ3MxIDcgMCBSID4+IC9Gb250IDw8IC9UVDEgOCAwIFIK
Pj4gPj4KZW5kb2JqCjc4IDAgb2JqClsgNzkgMCBSIDgwIDAgUiA4MSAwIFIgXQplbmRvYmoK
MyAwIG9iago8PCAvVHlwZSAvUGFnZXMgL1BhcmVudCA4MiAwIFIgL0NvdW50IDggL0tpZHMg
WyAyIDAgUiAxOCAwIFIgMjggMCBSIDM2IDAgUgo0NCAwIFIgNTEgMCBSIDU1IDAgUiA1OSAw
IFIgXSA+PgplbmRvYmoKNzQgMCBvYmoKPDwgL1R5cGUgL1BhZ2VzIC9QYXJlbnQgODIgMCBS
IC9Db3VudCAxIC9LaWRzIFsgNzMgMCBSIF0gPj4KZW5kb2JqCjgyIDAgb2JqCjw8IC9UeXBl
IC9QYWdlcyAvTWVkaWFCb3ggWzAgMCA1OTUgODQyXSAvQ291bnQgOSAvS2lkcyBbIDMgMCBS
IDc0IDAgUiBdID4+CmVuZG9iago4MyAwIG9iago8PCAvVHlwZSAvQ2F0YWxvZyAvUGFnZXMg
ODIgMCBSIC9WZXJzaW9uIC8xLjQgPj4KZW5kb2JqCjgxIDAgb2JqCjw8IC9BIDg0IDAgUiAv
Qm9yZGVyIFsgMCAwIDAgXSAvVHlwZSAvQW5ub3QgL1N1YnR5cGUgL0xpbmsgL1JlY3QgWzU0
LjQ1NDkxIDY1OC4yNjUxIDEwMS43MDI2IDY3MS4wNzgxXQo+PgplbmRvYmoKODQgMCBvYmoK
PDwgL1R5cGUgL0FjdGlvbiAvUyAvVVJJIC9VUkkgODUgMCBSID4+CmVuZG9iago4NSAwIG9i
agooaHR0cDovL3d3dy5vcGVuLXN0ZC5vcmcvanRjMS9zYzIyL3dnMjEvZG9jcy9wYXBlcnMv
MjAxNS9wMDE1MXIwLnBkZikKZW5kb2JqCjgwIDAgb2JqCjw8IC9BIDg2IDAgUiAvQm9yZGVy
IFsgMCAwIDAgXSAvVHlwZSAvQW5ub3QgL1N1YnR5cGUgL0xpbmsgL1JlY3QgWzU0LjQ1NDkx
IDcxNy41MjQ5IDEwMS43MDI2IDczMC4zMzc4XQo+PgplbmRvYmoKODYgMCBvYmoKPDwgL1R5
cGUgL0FjdGlvbiAvUyAvVVJJIC9VUkkgODcgMCBSID4+CmVuZG9iago4NyAwIG9iagooaHR0
cDovL3d3dy5vcGVuLXN0ZC5vcmcvanRjMS9zYzIyL3dnMjEvZG9jcy9wYXBlcnMvMjAxNS9w
MDE0NHIwLnBkZikKZW5kb2JqCjc5IDAgb2JqCjw8IC9BIDg4IDAgUiAvQm9yZGVyIFsgMCAw
IDAgXSAvVHlwZSAvQW5ub3QgL1N1YnR5cGUgL0xpbmsgL1JlY3QgWzU0LjQ1NDkxIDc3Ni43
ODQ3IDEwMS43MDI2IDc4OS41OTc2XQo+PgplbmRvYmoKODggMCBvYmoKPDwgL1R5cGUgL0Fj
dGlvbiAvUyAvVVJJIC9VUkkgODkgMCBSID4+CmVuZG9iago4OSAwIG9iagooaHR0cDovL3d3
dy5vcGVuLXN0ZC5vcmcvanRjMS9zYzIyL3dnMjEvZG9jcy9wYXBlcnMvMjAxNS9wMDAyOXIw
Lmh0bWwpCmVuZG9iago3MiAwIG9iago8PCAvQSA5MCAwIFIgL0JvcmRlciBbIDAgMCAwIF0g
L1R5cGUgL0Fubm90IC9TdWJ0eXBlIC9MaW5rIC9SZWN0IFs1NC40NTQ5MSA5Ni4wOTgyNSAx
MDEuNzAyNiAxMDguOTExMl0KPj4KZW5kb2JqCjkwIDAgb2JqCjw8IC9UeXBlIC9BY3Rpb24g
L1MgL1VSSSAvVVJJIDkxIDAgUiA+PgplbmRvYmoKOTEgMCBvYmoKKGh0dHA6Ly93d3cub3Bl
bi1zdGQub3JnL2p0YzEvc2MyMi93ZzIxL2RvY3MvcGFwZXJzLzIwMTUvcDAwMTdyMC5odG1s
KQplbmRvYmoKNzEgMCBvYmoKPDwgL0EgOTIgMCBSIC9Cb3JkZXIgWyAwIDAgMCBdIC9UeXBl
IC9Bbm5vdCAvU3VidHlwZSAvTGluayAvUmVjdCBbNTQuNDU0OTEgMTU1LjM1OCA4OC4wODg4
MyAxNjguMTcwOV0KPj4KZW5kb2JqCjkyIDAgb2JqCjw8IC9UeXBlIC9BY3Rpb24gL1MgL1VS
SSAvVVJJIDkzIDAgUiA+PgplbmRvYmoKOTMgMCBvYmoKKGh0dHA6Ly93d3cub3Blbi1zdGQu
b3JnL2p0YzEvc2MyMi93ZzIxL2RvY3MvcGFwZXJzLzIwMTUvbjQ0NzcucGRmKQplbmRvYmoK
NzAgMCBvYmoKPDwgL0EgOTQgMCBSIC9Cb3JkZXIgWyAwIDAgMCBdIC9UeXBlIC9Bbm5vdCAv
U3VidHlwZSAvTGluayAvUmVjdCBbNTQuNDU0OTEgMjE0LjYxNzggODguMDg4ODMgMjI3LjQz
MDddCj4+CmVuZG9iago5NCAwIG9iago8PCAvVHlwZSAvQWN0aW9uIC9TIC9VUkkgL1VSSSA5
NSAwIFIgPj4KZW5kb2JqCjk1IDAgb2JqCihodHRwOi8vd3d3Lm9wZW4tc3RkLm9yZy9qdGMx
L3NjMjIvd2cyMS9kb2NzL3BhcGVycy8yMDE1L240NDUxLnBkZikKZW5kb2JqCjY5IDAgb2Jq
Cjw8IC9BIDk2IDAgUiAvQm9yZGVyIFsgMCAwIDAgXSAvVHlwZSAvQW5ub3QgL1N1YnR5cGUg
L0xpbmsgL1JlY3QgWzU0LjQ1NDkxIDI3My44Nzc1IDg4LjA4ODgzIDI4Ni42OTA0XQo+Pgpl
bmRvYmoKOTYgMCBvYmoKPDwgL1R5cGUgL0FjdGlvbiAvUyAvVVJJIC9VUkkgOTcgMCBSID4+
CmVuZG9iago5NyAwIG9iagooaHR0cDovL3d3dy5vcGVuLXN0ZC5vcmcvanRjMS9zYzIyL3dn
MjEvZG9jcy9wYXBlcnMvMjAxNS9uNDQyOC5wZGYpCmVuZG9iago2OCAwIG9iago8PCAvQSA5
OCAwIFIgL0JvcmRlciBbIDAgMCAwIF0gL1R5cGUgL0Fubm90IC9TdWJ0eXBlIC9MaW5rIC9S
ZWN0IFs1NC40NTQ5MSAzMzMuMTM3MyAxMTMuNzE0NyAzNDUuOTUwMl0KPj4KZW5kb2JqCjk4
IDAgb2JqCjw8IC9UeXBlIC9BY3Rpb24gL1MgL1VSSSAvVVJJIDk5IDAgUiA+PgplbmRvYmoK
OTkgMCBvYmoKKGh0dHA6Ly9ib29zdG9yZy5naXRodWIuaW8vaGFuYS9pbmRleC5odG1sKQpl
bmRvYmoKNjcgMCBvYmoKPDwgL0EgMTAwIDAgUiAvQm9yZGVyIFsgMCAwIDAgXSAvVHlwZSAv
QW5ub3QgL1N1YnR5cGUgL0xpbmsgL1JlY3QgWzU0LjQ1NDkxIDM5Mi4zOTcgMTIwLjEyMTEg
NDA1LjIxXQo+PgplbmRvYmoKMTAwIDAgb2JqCjw8IC9UeXBlIC9BY3Rpb24gL1MgL1VSSSAv
VVJJIDEwMSAwIFIgPj4KZW5kb2JqCjEwMSAwIG9iagooaHR0cDovL3d3dy5ib29zdC5vcmcv
ZG9jL2xpYnMvMV82MF8wL2xpYnMvZnVzaW9uL2RvYy9odG1sL2luZGV4Lmh0bWwpCmVuZG9i
ago2NiAwIG9iago8PCAvQSAxMDIgMCBSIC9Cb3JkZXIgWyAwIDAgMCBdIC9UeXBlIC9Bbm5v
dCAvU3VidHlwZSAvTGluayAvUmVjdCBbMjcxLjQ3MzggNzExLjkxOTIgMzA1LjEwNzcgNzI0
LjczMjJdCj4+CmVuZG9iagoxMDIgMCBvYmoKPDwgL1R5cGUgL0FjdGlvbiAvUyAvVVJJIC9V
UkkgMTAzIDAgUiA+PgplbmRvYmoKMTAzIDAgb2JqCihodHRwOi8vd3d3Lm9wZW4tc3RkLm9y
Zy9qdGMxL3NjMjIvd2cyMS9kb2NzL3BhcGVycy8yMDE1L240NDUxLnBkZikKZW5kb2JqCjY1
IDAgb2JqCjw8IC9BIDEwNCAwIFIgL0JvcmRlciBbIDAgMCAwIF0gL1R5cGUgL0Fubm90IC9T
dWJ0eXBlIC9MaW5rIC9SZWN0IFsyMjEuODIzNyA3MTEuOTE5MiAyNTUuNDU3NiA3MjQuNzMy
Ml0KPj4KZW5kb2JqCjEwNCAwIG9iago8PCAvVHlwZSAvQWN0aW9uIC9TIC9VUkkgL1VSSSAx
MDUgMCBSID4+CmVuZG9iagoxMDUgMCBvYmoKKGh0dHA6Ly93d3cub3Blbi1zdGQub3JnL2p0
YzEvc2MyMi93ZzIxL2RvY3MvcGFwZXJzLzIwMTUvbjQ0MjgucGRmKQplbmRvYmoKNTAgMCBv
YmoKPDwgL0EgMTA2IDAgUiAvQm9yZGVyIFsgMCAwIDAgXSAvVHlwZSAvQW5ub3QgL1N1YnR5
cGUgL0xpbmsgL1JlY3QgWzI3NC42NzcgNDc3LjI4MjYgMzA5LjExMTcgNDkwLjA5NTZdCj4+
CmVuZG9iagoxMDYgMCBvYmoKPDwgL1R5cGUgL0FjdGlvbiAvUyAvVVJJIC9VUkkgMTA3IDAg
UiA+PgplbmRvYmoKMTA3IDAgb2JqCihodHRwOi8vd3d3Lm9wZW4tc3RkLm9yZy9qdGMxL3Nj
MjIvd2cyMS9kb2NzL3BhcGVycy8yMDE1L240NDUxLnBkZikKZW5kb2JqCjQ5IDAgb2JqCjw8
IC9BIDEwOCAwIFIgL0JvcmRlciBbIDAgMCAwIF0gL1R5cGUgL0Fubm90IC9TdWJ0eXBlIC9M
aW5rIC9SZWN0IFsyMjUuODI3NyA0NzcuMjgyNiAyNTkuNDYxNiA0OTAuMDk1Nl0KPj4KZW5k
b2JqCjEwOCAwIG9iago8PCAvVHlwZSAvQWN0aW9uIC9TIC9VUkkgL1VSSSAxMDkgMCBSID4+
CmVuZG9iagoxMDkgMCBvYmoKKGh0dHA6Ly93d3cub3Blbi1zdGQub3JnL2p0YzEvc2MyMi93
ZzIxL2RvY3MvcGFwZXJzLzIwMTUvbjQ0MjgucGRmKQplbmRvYmoKNDMgMCBvYmoKPDwgL0Eg
MTEwIDAgUiAvQm9yZGVyIFsgMCAwIDAgXSAvVHlwZSAvQW5ub3QgL1N1YnR5cGUgL0xpbmsg
L1JlY3QgWzI1MC42NTI4IDI4OS4wOTI5IDI5Ny45MDA0IDMwMS45MDU4XQo+PgplbmRvYmoK
MTEwIDAgb2JqCjw8IC9UeXBlIC9BY3Rpb24gL1MgL1VSSSAvVVJJIDExMSAwIFIgPj4KZW5k
b2JqCjExMSAwIG9iagooaHR0cDovL3d3dy5vcGVuLXN0ZC5vcmcvanRjMS9zYzIyL3dnMjEv
ZG9jcy9wYXBlcnMvMjAxNS9wMDE0NHIwLnBkZikKZW5kb2JqCjQyIDAgb2JqCjw8IC9BIDEx
MiAwIFIgL0JvcmRlciBbIDAgMCAwIF0gL1R5cGUgL0Fubm90IC9TdWJ0eXBlIC9MaW5rIC9S
ZWN0IFszMC40MzA2OSAzMTguNzIyNyA3Ny42NzgzMyAzMzEuNTM1N10KPj4KZW5kb2JqCjEx
MiAwIG9iago8PCAvVHlwZSAvQWN0aW9uIC9TIC9VUkkgL1VSSSAxMTMgMCBSID4+CmVuZG9i
agoxMTMgMCBvYmoKKGh0dHA6Ly93d3cub3Blbi1zdGQub3JnL2p0YzEvc2MyMi93ZzIxL2Rv
Y3MvcGFwZXJzLzIwMTUvcDAwMTdyMC5odG1sKQplbmRvYmoKNDEgMCBvYmoKPDwgL0EgMTE0
IDAgUiAvQm9yZGVyIFsgMCAwIDAgXSAvVHlwZSAvQW5ub3QgL1N1YnR5cGUgL0xpbmsgL1Jl
Y3QgWzMxMi4zMTQ5IDQ0My42NDg3IDM1OS41NjI2IDQ1Ni40NjE2XQo+PgplbmRvYmoKMTE0
IDAgb2JqCjw8IC9UeXBlIC9BY3Rpb24gL1MgL1VSSSAvVVJJIDExNSAwIFIgPj4KZW5kb2Jq
CjExNSAwIG9iagooaHR0cDovL3d3dy5vcGVuLXN0ZC5vcmcvanRjMS9zYzIyL3dnMjEvZG9j
cy9wYXBlcnMvMjAxNS9wMDAxN3IwLmh0bWwpCmVuZG9iagoyNyAwIG9iago8PCAvQSAxMTYg
MCBSIC9Cb3JkZXIgWyAwIDAgMCBdIC9UeXBlIC9Bbm5vdCAvU3VidHlwZSAvTGluayAvUmVj
dCBbMTgwLjk4MjUgMjEyLjIxNTMgMjI5LjAzMSAyMjUuMDI4M10KPj4KZW5kb2JqCjExNiAw
IG9iago8PCAvVHlwZSAvQWN0aW9uIC9TIC9VUkkgL1VSSSAxMTcgMCBSID4+CmVuZG9iagox
MTcgMCBvYmoKKGh0dHA6Ly93d3cub3Blbi1zdGQub3JnL2p0YzEvc2MyMi93ZzIxL2RvY3Mv
cGFwZXJzLzIwMTUvcDAxNDRyMC5wZGYpCmVuZG9iagoyNiAwIG9iago8PCAvQSAxMTggMCBS
IC9Cb3JkZXIgWyAwIDAgMCBdIC9UeXBlIC9Bbm5vdCAvU3VidHlwZSAvTGluayAvUmVjdCBb
MTUwLjU1MTggNDY0LjQ2OTcgMTg0Ljk4NjUgNDc3LjI4MjZdCj4+CmVuZG9iagoxMTggMCBv
YmoKPDwgL1R5cGUgL0FjdGlvbiAvUyAvVVJJIC9VUkkgMTE5IDAgUiA+PgplbmRvYmoKMTE5
IDAgb2JqCihodHRwOi8vd3d3Lm9wZW4tc3RkLm9yZy9qdGMxL3NjMjIvd2cyMS9kb2NzL3Bh
cGVycy8yMDE1L240NDc3LnBkZikKZW5kb2JqCjI1IDAgb2JqCjw8IC9BIDEyMCAwIFIgL0Jv
cmRlciBbIDAgMCAwIF0gL1R5cGUgL0Fubm90IC9TdWJ0eXBlIC9MaW5rIC9SZWN0IFsxMjQu
OTI2IDU4Mi4xODg0IDE3Mi4xNzM2IDU5NS4wMDEzXQo+PgplbmRvYmoKMTIwIDAgb2JqCjw8
IC9UeXBlIC9BY3Rpb24gL1MgL1VSSSAvVVJJIDEyMSAwIFIgPj4KZW5kb2JqCjEyMSAwIG9i
agooZmlsZTovLy9Vc2Vycy92aWJvZXMvZ2l0aHViL3N0ZF9tYWtlL2RvYy9wcm9wb3NhbC9y
ZWZsZWN0aW9uL29yJTIwaXRzJTIwY29tcGV0aXRvciUyMCU1QlAwMTUxUjAlNUQpCmVuZG9i
agoyNCAwIG9iago8PCAvQSAxMjIgMCBSIC9Cb3JkZXIgWyAwIDAgMCBdIC9UeXBlIC9Bbm5v
dCAvU3VidHlwZSAvTGluayAvUmVjdCBbMjU5LjQ2MTYgNjY0LjY3MTYgMzE4LjcyMTQgNjc3
LjQ4NDVdCj4+CmVuZG9iagoxMjIgMCBvYmoKPDwgL1R5cGUgL0FjdGlvbiAvUyAvVVJJIC9V
UkkgMTIzIDAgUiA+PgplbmRvYmoKMTIzIDAgb2JqCihodHRwOi8vYm9vc3RvcmcuZ2l0aHVi
LmlvL2hhbmEvaW5kZXguaHRtbCkKZW5kb2JqCjIzIDAgb2JqCjw8IC9BIDEyNCAwIFIgL0Jv
cmRlciBbIDAgMCAwIF0gL1R5cGUgL0Fubm90IC9TdWJ0eXBlIC9MaW5rIC9SZWN0IFsxNjgu
OTcwNCA2NjQuNjcxNiAyMzUuNDM3NCA2NzcuNDg0NV0KPj4KZW5kb2JqCjEyNCAwIG9iago8
PCAvVHlwZSAvQWN0aW9uIC9TIC9VUkkgL1VSSSAxMjUgMCBSID4+CmVuZG9iagoxMjUgMCBv
YmoKKGh0dHA6Ly93d3cuYm9vc3Qub3JnL2RvYy9saWJzLzFfNjBfMC9saWJzL2Z1c2lvbi9k
b2MvaHRtbC9pbmRleC5odG1sKQplbmRvYmoKMTQgMCBvYmoKPDwgL0EgMTI2IDAgUiAvQm9y
ZGVyIFsgMCAwIDAgXSAvVHlwZSAvQW5ub3QgL1N1YnR5cGUgL0xpbmsgL1JlY3QgWzQ0MC40
NDQxIDI0OS4wNTI1IDQ4Ny42OTE4IDI2MS44NjU0XQo+PgplbmRvYmoKMTI2IDAgb2JqCjw8
IC9UeXBlIC9BY3Rpb24gL1MgL1VSSSAvVVJJIDEyNyAwIFIgPj4KZW5kb2JqCjEyNyAwIG9i
agooaHR0cDovL3d3dy5vcGVuLXN0ZC5vcmcvanRjMS9zYzIyL3dnMjEvZG9jcy9wYXBlcnMv
MjAxNS9wMDE0NHIwLnBkZikKZW5kb2JqCjEzIDAgb2JqCjw8IC9BIDEyOCAwIFIgL0JvcmRl
ciBbIDAgMCAwIF0gL1R5cGUgL0Fubm90IC9TdWJ0eXBlIC9MaW5rIC9SZWN0IFszNzYuMzc5
NSAzMTMuOTE3OSA0MTAuMDEzNSAzMjYuNzMwOF0KPj4KZW5kb2JqCjEyOCAwIG9iago8PCAv
VHlwZSAvQWN0aW9uIC9TIC9VUkkgL1VSSSAxMjkgMCBSID4+CmVuZG9iagoxMjkgMCBvYmoK
KGh0dHA6Ly93d3cub3Blbi1zdGQub3JnL2p0YzEvc2MyMi93ZzIxL2RvY3MvcGFwZXJzLzIw
MTUvbjQ0NzcucGRmKQplbmRvYmoKMTIgMCBvYmoKPDwgL0EgMTMwIDAgUiAvQm9yZGVyIFsg
MCAwIDAgXSAvVHlwZSAvQW5ub3QgL1N1YnR5cGUgL0xpbmsgL1JlY3QgWzE2MC4xNjE1IDQ3
My4yNzg2IDE5My43OTU0IDQ4Ni4wOTE1XQo+PgplbmRvYmoKMTMwIDAgb2JqCjw8IC9UeXBl
IC9BY3Rpb24gL1MgL1VSSSAvVVJJIDEzMSAwIFIgPj4KZW5kb2JqCjEzMSAwIG9iagooaHR0
cDovL3d3dy5vcGVuLXN0ZC5vcmcvanRjMS9zYzIyL3dnMjEvZG9jcy9wYXBlcnMvMjAxNS9u
NDQ3Ny5wZGYpCmVuZG9iagoxMSAwIG9iago8PCAvQSAxMzIgMCBSIC9Cb3JkZXIgWyAwIDAg
MCBdIC9UeXBlIC9Bbm5vdCAvU3VidHlwZSAvTGluayAvUmVjdCBbMzE1LjUxODIgNjI4LjYz
NTMgNDQ2Ljg1MDYgNjQxLjQ0ODJdCj4+CmVuZG9iagoxMzIgMCBvYmoKPDwgL1R5cGUgL0Fj
dGlvbiAvUyAvVVJJIC9VUkkgMTMzIDAgUiA+PgplbmRvYmoKMTMzIDAgb2JqCihtYWlsdG86
dmljZW50ZS5ib3RldEB3YW5hZG9vLmZyKQplbmRvYmoKMTUgMCBvYmoKPDwgL1R5cGUgL0Zv
bnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvRlZYTFBLK0hlbHZldGljYS1Cb2xk
IC9Gb250RGVzY3JpcHRvcgoxMzQgMCBSIC9FbmNvZGluZyAvTWFjUm9tYW5FbmNvZGluZyAv
Rmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAxMjEgL1dpZHRocyBbCjI3OCAwIDAgMCAwIDAgMCAw
IDAgMCAwIDAgMCAzMzMgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDYxMSAw
IDcyMgowIDcyMiA3MjIgNjY3IDAgMCAwIDI3OCAwIDAgMCA4MzMgMCA3NzggNjY3IDc3OCA3
MjIgMCA2MTEgMCAwIDk0NCAwIDAgMCAwCjAgMCAwIDAgMCA1NTYgNjExIDU1NiA2MTEgNTU2
IDMzMyA2MTEgNjExIDI3OCAwIDU1NiAyNzggODg5IDYxMSA2MTEgNjExIDAKMzg5IDU1NiAz
MzMgNjExIDU1NiA3NzggNTU2IDU1NiBdID4+CmVuZG9iagoxMzQgMCBvYmoKPDwgL1R5cGUg
L0ZvbnREZXNjcmlwdG9yIC9Gb250TmFtZSAvRlZYTFBLK0hlbHZldGljYS1Cb2xkIC9GbGFn
cyAzMiAvRm9udEJCb3gKWy0xMDE4IC00ODEgMTQzNiAxMTU5XSAvSXRhbGljQW5nbGUgMCAv
QXNjZW50IDc3MCAvRGVzY2VudCAtMjMwIC9DYXBIZWlnaHQKNzIwIC9TdGVtViAxNDkgL1hI
ZWlnaHQgNTMyIC9TdGVtSCAxMjQgL0F2Z1dpZHRoIDYyMSAvTWF4V2lkdGggMTUwMCAvRm9u
dEZpbGUyCjEzNSAwIFIgPj4KZW5kb2JqCjEzNSAwIG9iago8PCAvTGVuZ3RoIDEzNiAwIFIg
L0xlbmd0aDEgMTQyOTYgL0ZpbHRlciAvRmxhdGVEZWNvZGUgPj4Kc3RyZWFtCngBxXsLfFNF
9vDMfSY3jyZp3n0kaZKm73cbAqVNS1sKbaGUV4sttEBZYAEL1vJaFEEtFFR0RRDZxQcqou6G
ghBg4c/H4oIiuyi6KKLoCohiRVkUXZqb78xNqdDffvv5+33+9svtufO8M2fOOXPmzJlp+4K7
W5EKLUc0qp3U0jYDSb+8YwjRmmlzW9oiaf0lCN+a1tFuj6TZNChfNaPtV3MjadkuhBQbfjVn
cd/3Rgah+LSZrS3TI+WoF8KCmZARSeM8CF0z57YviqT11RBunnPntL5yA7SHaue2LOrrH52F
tH1ey9zWSP28pyFMarvzrva+dBaEbW0LWvvq43rA7xTCkOtBS5AczUEyRCENPIAhf0mxATFQ
SsoBvh+96PEpUYXfIa1Mau5ZT8ZyEnl73InHrp/t9SjukVdAPblUnxTAN1yymIyQEkP5h4p7
+ktIKfl5gqgxNYjqACoBigDyAFJSd8j8+/A6pG+65pdjG4MUtvctXx/EGcCDi9I7gDP8ShWS
T1tZaJu2cmVlcokcVyEvg5ENlyOXFJZ1u162BXFRt8sJwdBIQHV74yCF/HKvyxbyTrX1eoMy
7I+x/eD6re06wPeuYtt3rmzb21DvpHe47UQJlHfbjqcEKQjedAUZ7I+yHXPdZ3vNm2zb5R1i
6/ZAXrdtRwkEu21bvffZnrtfynk2RQqecQXxpm7b0yTYbdsC7T+xUipYH/lwRSRou1/q6M6d
UjBvZ5B6ebdtrivRNhU+xH6Frck1x9bo8tnGlQSxu9tWQz7bbav2nLBVka67bf5IRwWR1vNd
EsY5kW7TXPttSZEeEkhtf7TN7qq2xUH7aU8/YUtzTbaVpATxtj2VSSmuSs8TBUF8TeqDBIAo
CeZFgmmeA/hFNBwl40nIjZ/cWZkMOON13baVEGzaWZnkdQfpS36dbaen0nM/QAGAG2B8EI/z
p/Eb+On8eD6XT+WT+UTewcfzMbxeppNpZGqZUibIZDJOxsgoGZLpg+FP/KlEkvSchgQczBiM
GCmuoUgcXvBGFJZRaCQKcugBY0exuVhXpPVVlP2bV7OU2VyW+tPP/FM01YzjAk9Uja0PbI9r
COSQSDiu4Zby/5doayl8XVW3eGfd4ssTylud5c3O8laA5sCajpnmwPKpdvuOy4tJgT1AJzZP
nTaThC2tgcXO1rLAZWeZfUed9N2A4gmkuM5ZtgNNKB9Xv2OCv7Wsu85fV+5sKWvYWVteOeq2
vlb391VZ/m/6KieNVZK+aqXvBvQ1ihTXkr5Gkb5Gkb5q/bVSX6mp5bPGliL2ENKyh1E6uwHF
MaUoDqHwGYAPSSiODV9hTyIhHAr30KDdcAKBczewHv0R8WgPugc0zjtoO5YjJ+rBOegDHIdT
0PtIRB+ifyArWoOehnc5uoS/B03zBU6COgVoBfo92hJuQ22oGJ5LmEUGNAh9EV4aPhb+EZWi
LnQE8zgax4X3okzUCc8mtBkrqanhHciMqtFC0Owr0BvoTLg7/CW0X4AuYC3OZIaEPwIBYyHH
h1aj7WgPdmAnTsF3hC9AvhlwbETbwzXhDvjuCtTKRKPQUujtU2zDiTgVb8If0z3h5eGHYWyx
UDYeTYNnLroPbUSb0atSralMLGuA9stQFZQ9jN5Cl9BVULrJuBQvot6jv6S/YYYwm8JHAI/x
0F8z2oJpoIoLj8fTcRt+Fe/Cf8bfU16qhfbR7zFtzDOA23i0Cj2DDqCj6BT6CF1GPehfKIQZ
wKkIj8ZL8e/gu39QuVQTtYxaS52hrtDZ9McMz6xhH2D3h5nwe+F/Ac7xKAUNgZk+BtWjVnhm
oHnobnQvuh/zaAPagf4M2J5D57CANTgTZ+PheBy+A/8aL0aP4q14Hz6Lz+OL+AvALpqyUU4q
k+qA/lZQq6lXqW5qL9VDa+l2ehl9iP6Y/p4xME3MIXjOselsOxfLVfFjxMfFc+H08LrwJuCL
ER4XSkbpqAgzQMW56H7g5Gqg2Wa0Fb2M/oC6UXf4BvahI+htwOtTdAVdB47FwuPAOXgQrsVj
AMM5eC6+F28EDLfj3YDlfrwfncan8Q14RGSh5FQ6dQfVQi2GZxPaSJ2S6KOkHXQSnU5X0WPD
39Kv0jvoq4ybmcTMZ5YyXcxGZgsbyw5lJ7KT2DZ2PbubPc7+nb3CXuPiuE5uK7eLO8XL+Dx+
Iy/iBMDFjt1oFzoIUvcE3QZpFxqG7weuTkBvgfT2oNfRDfQjOoRexHFIpAk3E8PPoGB4FXDz
AHqN/g0qRI9Sv6VGhovpbbQc54SvQ1tZwK/+x5+SnORJdLucCQ67LT4uNsZqMZuMBn20TquJ
UquUCkEu4zmWoSmM0sqdFc32QGJzgEl0Vlamk7SzBTJabsloDtghq+L2OgE7+a4Fim6r6Yea
MwbU9Edq+vtrYo29EBWmp9nLnfbAiTKnPYgnjamH+ENlzgZ7oEeK10jxdVJcBXGHAz6wl5tn
ltkDuNleHqjomNlV3lyWnob3+mExENLT0F6E/EhBGg6gYS3LQLmiYaRGecDqLCsPWJwQhzLa
Xd4yPVA7pr68LMbhaEhPC+Bh05xTA8hZGohK7fucfAdK0F1XD32np80KAP5ojXK6c/qaoB9N
bSaxlsb6AN3SEKCaSR/a1IDJWRYwLblg/il5M1a+9pbCAOWuaGntqgj4m9cA0UmymaRa1kKq
aqwdmqUeaKgP4AcAOYKEhHtkFJFlwt082x6QO0udM7tmNwPNUW19t9VvLXc2lzUEUF19t8Vv
kRLpaXvN9wxxAFH2ppekl5BwiMN8TyT8fGUk/51DJDTfc+QTCKvq+umCSd/OEYBmwD4NOgFa
AK6DyKt1EOqaNgjIB78GDKOcBfgMC1AgSrQ7wLpHtASWj+1Do2VmWR9ys8u65RartC6VNkD9
5i7NYGAg1Nc47V3fIeCss+er23Na+nI4t+Y7RAoJ//tFKIBbbsY7yPrphiVpptk5k7CvQ2I1
pJ3m8lsyIE3WrXQwONOqgkheW78D44cbgjj8QBCVxe2FBYaeMhmKU4nAzSqD7iCRlgYZKQ6I
AQYV0FEFkQx7l71rxPQue4V9JogU45ZCKGjtasgEgo2tB7KgcfWOgL8hpj/a2tAwGNrJIO3A
J1C9qwFamN3XAoRSVmYIKmWmVcGoEmvrx9QHlpfFBPxlDUB0EOJDtfWBQyC/DQ1QK6sfU8B4
2SxzH87ZgHNWCpTnRFoBs2Y5NNHQ1UXaHFvvdAQOdXXFdJFZF0mDhTwww9+XEUSkCqFwEC+v
hW8hcDpiJJI7nA5Aq4HQNBcE+KYAgVn/nymc3483fFkA2OZLFPb+QhQe9HMo7PtZFB7cj+lt
FB4COA8mFC7871F46G0ULvrPFC7uxxuQ9AO2xRKFS34hCpf+HAoP+1kULuvH9DYKlwPOZYTC
Ff89Cg+/jcKV/5nCI/rxBiRHArYjJApX/UIUrv45FK75WRQe1Y/pbRQeDTiPIhSu/e9ReMxt
FK77zxQe2483IDkOsB0rUXj8L0ThCT+HwhN/FoXr+zG9jcINgHM9ofCkfgr7YwLoVj28fIDa
Rb+4Yr7jNpI3/meSN/UPBLCeDOg3SSSf8guRvPnnkLzlZ5F8aj+mt5F8GuA8lZB8+v9Hkrfe
QnLEHkWbKB+4LLajTOYztBTSeQCNAJvZCeh5KLuf2442cD7UCunnpPAoeg7qOviHUDxzFxpC
voNwOITFEGZCWwaIlwJ0wverIW8FhGv4OLSc5PWVLaPj0AooK+2rvwziVmhfTUIAA9jPEX8f
OO0QB/sThOxoEnGw/B9+xP3yf/vRUAH8NrB/5WBPGflFXIgITCyw2JECelNBTC0VRkWq3PbW
IC3SoWikBxyNyAR7b4QssOOOgX11HOxTEbIBpg6UAHtyF3KjROnrPJSH6tA+XIn3URqqlJpN
fUNX0GuZAuYF5u/sbm4S183b+SXgd2qXfS0fJJ8jUEKC8KbCqmhT/FVpVv5eeUlVqHpa9bH6
nigj7Ko3wSCGgm+DhnEU+R0sFwd7J4aPo5HAMnE0TVnlHB+HkUUm3+6YUwiOpVHXCmtChaM0
3xfWaEKFqLgwVEggOytX69B6ADYxzwV7T7CH/1UUZOpu/IGgjVEm3kXNpUg/Dr8OJdDYyp6D
bAvDvudYVkGaPd+kuViDMnuys6IdWkcmVRQ6TB0WrwKOS4HY89m34VsnmuBPsRg1KnUU59Rn
4CRaYJ0P2lzgCdFH66k2mhacsb2C1Z0wz2lxuYM4Zqfj3tUS0jU9gHJNj1bny+zx+TIzUXFP
j684dFFr8mVnIQxdIm9Bbg5j0PNcFOZ4jncU4WJc4C3Iz0t0JnAGB76EU8S/i1v2d7zyD5xa
kjhn+OBoJRavcnlzRriMSQ0d7S3iOewQz7HqhdXvv7uioWCcN70wsfal+8b5Yuze0uplm8YC
LWjgIGK3Ac0pSU7O+n89k8IeNkkYxHnlldxMYZGwilnFbaLXMxu57fTzzDYuiIPCMXxMeJ9+
XzBgnuMoJJPL4SVgnqX0guDWQVLPsm4dlPGyFOI/FBSwEebkAs3KFCqTyaoQGI4NYn23nKYg
2C1YlK13LzCndozSXDPXhHw++NP6LOAjK7toBvqYCmuKCwt1QCxgL9uZkbpMUwWmOnMoJsAc
aejMMPdl0JBBH2kAyvrgr1NTWMgDZGfhJtSEHQpwVDjA0eDAVCbuCL6MGylB7J4S+nSGeJDa
B36JMjzmX0U4U3xbokhj+DS7lL0C8m9D7f7kicLj/OMy+g6qIaY+bgazEK9mX9J3M3uEvzBH
FWeoD/Ufmc/F/GDWmIJY4XdaZTKrssRG07oSq9xm9JpkXls8b3VEeeMtdseTjlcn3CIKWl/P
uz1EDIoLe0AoNCB4BGOdt8BhNxlNjkQPsJ0y6I25Od4Cr4NDDrsnUYsb/7YLG3H7K1N48a34
zHHPbzt84vfPjs+04ewkcY8YFg/v3k2tYya+vfva6q7ZBc3itz/8cH22b8G34jtvncCttBW4
vhn4vxRGK4dZP9afs1CHeZmH9yjrdbN1S5m1dBfTpdtIb2Q26l6lVVSKQZ5ipAwyzquxWrDb
YDFbgti+01HXN5iQJNeouLjn5hCw1gEoE7EtgIEYdQYNTyVDJj6KY89MyHzonQN3PNVcM6jj
abE79AC1lDncW3S647lPvxXjc1fNC6N28cxbYg/gR+bt84ArBXEFyiQnGvtA4clRFZxocJog
wifRPtAbMsjYBzWQFNKgGatSs7LJlLr5MB/3XqPeCuXRWTeeY3zMAfFoGIkPiNdJJxT4vBDe
DeqAfJnl1zIUuL4ZDiSWAWe8heX2wTmIA+fvWBzhXsgniSiwrhikjAzMg3eLf8U5T7KHwTWL
wY+HuCRoWocO+dfJES+TyVmtUWaRJyOPLFXu0qbovHy+rFA+SDcbtWoXo7u1q9GD2k3oCe02
9IL2KLou+0Eey8oEuVFmljO8zspbBZMOFLE2UzeULxaKdUt0e+W7dUd16ig+CjRslE4rlyFW
zVO0TuBptRZRahkt08MYKIb2ULooldoTZYmugyHAbAP9adGcPWsOFWqkoYASBR2qM/kwTCII
tEQlzW/C8EdImFeQD5NIbzQQcmJmLt4vfkqJX4jviZcp8VN8CCuJsqUvpD6VciOVeS/lqdTe
GPbwjcVE17TCfPoS5pNCWldK/B6j0qiz6C3WDVaWLYk10YqSKHks5Y2NjrHGy7zRlrj4c47L
A+ZJ3ywBpJpcuvw8SpoXulwXz0lzQhOZMlpMnzt9es+eM2f2UIfPvSgeEY+8+MknL+JCXPji
uVDRWaz+8QccJV798Ufx6pJTr7xyCj+E1x9/5ZXj4q9pJZGD50DWFMA3GayKRf7YDXgDRylT
GEZNp0QBPQE7q4FWudUWvSGI426ZAWQ1qukhU4Bod2keJzqBVjkF+YghEYgyBvrM4rlALtvc
xThb/OE78aj4V2rFxyBqzVPFUbPvEkPvh75mD5+/AnJMAd3Ws98C3fQoFR30z9vjDiYfdR9L
/sHC7obVwWK2WiwsHRMTY7UyMRxNa4zmVMESYzMbDRzNqvQW1mJlp+oYxgreSIblGI1gtsbQ
qc4Ys8XmkXL0qhIPrS+xyS2vCN5Ua7rG67SkpQ8gfo/lmpmoqB5YpoiCJRJCYiafDBSybJnm
dUQSUEJEh8hOpya1MLUw8iYMw00uUF8er0layQjrtBqTMRfBAmfiPbDOOYlau8lCelJ2TMr6
LeudauPxP+85s7n1Ier1LE/19me6xwyZ1iV+8qfzX/4P+J7jD39yVsXrHn7h4cqCMXMIV3vF
kPj2yvG4/oF7x23Zti1b73jlb/hR/PjfXtr5N3EtkLSPv/OBvwJ4dOv9KXYghoH1RCemYHAJ
pyRTnjhZnD0hmjMlcF5TzESNNQ153EmW1LQgjh/I7fNHQkdgxFqfDyaPxPeQT1rKcZ/yA+1d
YDTFY4Oe4+PBDa0HVWggSj0TZ+CITOCTuGlmXmNDzvQPXxycNWj2khnjZco08VU1p8QUNW2V
eFg8RZ1iDovt5pTfPJhhDVWUDVo1cdbxlOQNT01rdfli3NnxRSWrH5ocOgijwmCrIeY4xHg0
yK/EXApPMTI5qAAUxPXdlBvW3nq/nANL6pCDrLtgSdVcC4UkDVADwktsKMBeepjj4nDxTbGc
PSzeuDGMOQAedExsQv5OaF+HZ/uvCgzLypWcZiRTzlYqVzGdbJdylaoz6kHNB8xp9kPl3zVa
I1jAetaiMkWxMB5EMwzF8TwLlgOvkqnNakpOk1Y4TqbgtLzOJJgUZuViejHTwXZwHdp99D5m
F/sa9wb9BvMX9i/cB/QHYGL+nfuC/oK5yF7kbPX0JGY8O5GbqJ1Fz2JmsDO4mYoZWgXByqI0
al5T7NdeUFzQXhe+U/xTq1AIlIXYKbxcq6MsOrcORIIoTC3DygUdi0AulQpQ1Qqw6TglreYR
1tI6mtHQaoooUuEgDiIew/kogBoHd+ss0a0XfrJfzp8PRWyXGmlGRGYJTAiYP4WgXk1Ev0pW
TFXdoiWaIzBDlkViRF/Mn4+aIEt9G0DBgvk42uSNdkgvMGbAjMGtf05JfQGX/zE9/XXsE1vE
M915ed3iP8TJ7OHeXZcv0mPg/Q96PGjkyThO/Kz3WWAZ/Gg0JPwxM4iZAnsCHxqMHvGPHkLl
FyzGqzHzfjxO/OfFlM+dahULp3PR1lQ442ASMxIzUkgGE6NIiDGmDbbxKYIiLUcxOLoG1WQM
zk8pSrQWWmti0mU1+ZYhhX/CFpDBSvwH1GfmXJNs3vNa34kLFyQdDob6CUl7RBRGhEapksJs
wmos2b2SxQMa46blSyxhiDty4KRFq4cZBdMoA0uaIyExPw+USzT1cYw3yz/JUzpmcONT9Kuj
E4Y2TWpNiRfEHvlwIODONWsoOjZWfFMl0ENqGtsf/19PjX++jdJpDXKlxuSpG1Ey55ErQpTV
Oyw3x138SOO64cNfF5V5IwclqVIcg93+9PyXnnpjUrYBvxvRI0vDnzGb2UOwvttRqd8ttyvU
OiWyuHS8QrC7WIXhfsqaEGcTbCqPwuJI2OioHdVnOVw737dS9MBaUawlKhV0pM6gB73oSfQY
yOSDsebqwHoi5h/PEWrQL/3zm9Odddk+8QscW1BSs9C9JN735FOD439zLzNJfPM7UewusNeu
Zg+FrlUn5fS2dz/aXr3uoaqFa4MRfIeHzzB5wHeyq5vnL3/SuM1IdcbiEYZ63UzdImGxLmg4
Gn3MIDNTHBP3DuOKt/JGtaDU7FG69Ip4TUGUDRXEm+KsdlmByWKzdzoq+8YjsVfrC12T7Nge
UIY+MGalUBJq0P6SFUuGATo/h5ixZM2m8jUItjomTGtkjqzWdfmxsbkPTR8nx05h3IPijyKs
07pvT2DWLMZQ+4dmlz5Sfc+iEavmTFjRvh8P+hFb8KDgF3grDI5CxSDTrcALDYxutD/tkhJ2
J4Y4SkMjk0vDc0KcS1AYaGu0jbPRHsZqsxaoLPG2jY7K8j4ZJQwJXTsPnCDrXIQrsJ6RpQsZ
TUQZ5quxMwERlG+yReIKtWRTFuy2Lg/d3P4/4g2MT++5p7WobtndCxczjRNrKNm//Bta6nH+
VWzC/t4Fux45NiHvwNoNr8E8zAyfZQYDP8Ckh931y/4RFbJO/Qb8JOyPsJzlNKy1iq3QjLA/
iB+I6rQJtJE2RRujTZWyamO1aYS10dhommQ9iz9kvoj73H7drhmJKzSr2JUaBrZV6/25o9VT
1HeqabU6hnMlOHiTLi1GYaSpBLrAtDQhvlm5XEkprS7Kpl4fb3G6gBQ3pZMIZ1ON1ne+JzNC
jhORrUlTCKghmYMI5iKsXrCwwcM74NW3OYFlPAFpNWgIxifnqvF+fukdq84M90crqJCRaxky
tt4bb8JOxaS1vSfFw9h2QU+3/2b2/Lsvz5jXsrzqoa2lyTkxWS3Tt2AlLI4xcB0Jfpj4Tqg1
sO82oftKMiFFozTguA2NBjt9CgAoJsgxQU0F8L8R5qMcaKqG9d0CuSbwZQhQmwY/CPFwyOFG
lhrS0egxqG0Bf4cFq4EDzXAG37cYnocdaOG71/ps4mLiZyjuabrWQ6QBVu8MDIw35BqcIBXO
/Fyie3KpnLRE8/zU/fvF81s2DynqYd+m6Us0nW+3F77R+yh95xsVfyydCjiUiqXMZOC5Cm40
ZKFJfk1XPFhMrCsrk9dxbpUrOYiL/fZYe5o5Kouy6WxuT1ZatDUn9v6YdHlBmiU75xaRjahV
Mu/Og1YNnSgGRwJwiljtYG1F/AV9U04HjMp3aMGn4EhweW4ybCjxL4Allp+ny/VSB7pWznvC
F28f/IRi6Ew/NgxfIr7wtviDGhcoYzLmbspLSM4cv+qdG1c/vuPLDc8/9exDVfOmjOyiF1hS
7/rdje9P/Tq49bkco+dXpZsrKpwl2NP7T1xFR/jXCfbIZPYAcKLY72YpD1Wvnqlm9CYdUrpM
vIYXZAWs1RKt8WhhT3nQUds3JSXnDjGngfigI6XVQbKkgOySVuSkjYi2COfSw57PT9eLH8V7
5s6/WzyPY4uem8RMrqgcet9joeXUhvqC6g1rQ93sgdD1KVUEJwruNiC8nT0OHOHREH9CNarG
jagRrnHsAGnieEGylzgP5sFM6r6JkuRwIm4JsJKKa8DAJ44F2AoR2B7xuRC/CwNXYsSFN8DF
h+HmAGLmwtgV6Bt/t5+qYN+lLlBMFOzpxrOr2UdkD8tfZ9+UfcCfk52VK2ScmcukM5kkNp3z
0oO4arqSa6IbuNn0LG4Rs4rZQK/nX6L/yGzntvG76SDzF7CIrFXcSH4Cu4pZKTvCHpMR4+gj
/oxMwcrlxKZSKOC+Fw9RuI8gUHaaPg6bASiiKYaj5AJDcwIvwD7VqsKCBynsiiyFX8EoLEpV
p6P2MzIfepskN9vXZJsLm0Ni4YN1X5ORykh+mCUNR5AO8ny+qE6NjLhcgFHzm0BPgPsMO+Sw
Y+S1jhXYjKfhFnElXituE290iJfYA70X8SZxSmg6fmep+BKh1Rp4EX8Ujdz+aAphgSVGqweD
c66fBTUROxWQiWy58TbxMxxHLBuMlsM4NjOT4BbL4ZIa5AUuw7U2eBP/ohtgFopCs0EbLIZw
CYSrIeyC8EkIn4TwJYC9AJ8Dt9RQ3wE3YmjQFCrwe6aDniBvN8iLDVqNAy0jA72S2adhOLjZ
JMdR8IUW1SA9xOLBKogDXRMPOiYD/I5OaK8W7lf1mQBHNKBPrt0cDRiGoGbAcxLZO4D/BxQN
PAa6T9ZhHt8U+0jUYSAGAhhDZEOVyz6y1pehESjxrD5xRke6SfxU75q1JMUEQmnIzxx7/7Ka
IvugsfVzmEmDKnxjvbNDY6jdRUnVU/NGhBZSq1vSRo9Obwi1Mf4t411+b25tc3o6jJ/M2xbQ
VcQrXOVPZ7EBu7EX1ytmKjis03ByFyh/NSOY2AJTFGW1aIlv4bYZfISsquDgAvUEstNT7Oub
xf92LB6667R41pTS8WhBLMzhaG92fecspnHHiVACtWFCxrilJa2hbkBxnLuUKBbQpWDPbGZa
gVvEa13jTzLRWKZcpVyloU0qc9QMFc26zHpe4VIrzGYZVWCyWmUFWovFGsQdO/uXuz5/rK/f
uYAXoAXz+9SntMK7kMOO8vPI24Cpyw8+uGxZZ+cyKkP8Svwcnq+wHkwRC9aHTr3RvXXrjh1b
t3bPEF/G47/5Ck8SX/iK8gMtl4ljmU0gmyqQipH+ZFO0TIi1Ui47b+UEV7TCopapzKoCjTWB
s8Hu3WP5t/aitBpL1gmYjBHjpM84lKyqfB1ZeiULktgrkoDQ7XfdBxZia2HdwmVxWC6G3lox
ITNdvIi1GXlTVlJbDv921KKDNenBJymfeFG8In4ivlPiKg8dY688Mzx5BJA5osOoG0wjrJgj
9yIaD99JRanAFTzcb4nmVZxSsFNZlJ+iDcTLpFZ4lJJfZPpOR+2Mm7L+bmRz2UT0JqxP7xLV
CUYVmBDEtO1HlvpIER2TonpliAP8I5rS7NrlTCPG4lmaaiteGbrOlB6cmzSM4EQB7z+EO2It
4BVJQ/f4R8s1XKJFRcsZh0JRJYxQDHeU2SuTT9OyuAS7UmCMqYzRmpam45m0JEVaWpRBsMcZ
axJ4Qzpf47ZmKFFcTVQ6qkm1pGfcYtVeAzeOZKdfAxEGBQfkjwhJ6ITmhDRRJzdNxk1YMn8k
S90NZm5+HkxLps9vKxm80kTWg4MjMR/jafL4/EfGTUtKEsN7q6t7Tr+FcbT4GWfJnN80OiUl
vH38uG97xfB3cGGusdruy8nJsliGZpSXLd/wwXPHvPbBgz3ZRtOgpDF1S5898cE2GiYC2Efh
L6lF7EyYpyN3a9KibMo07T48HzG40W/kUSOHOTOwJoq7xsg96DHgkzmI1TsdzYQ97xaeDxVe
KyT8+Ro2/+Bh7ykGewIOP/LJOQoxcojnucBr4DkYm9awEVt37EiYqIpTd745MoueexxniSeP
hw4Ngx3peyxfkz2D2kLkPXyJGQ+6g5wkVfszBKPVmGIcZJzAt/KcFVYczqhWCSzsK6wqwWM1
K6yxuMBsiYn9afkn81Lnqwm9K9Gc7ChA5QO1Ye8nWZv5RGzAJueJWU5Qc+NnjJ4FjxXAlUTx
MmM3Dls27uq4TPwVUxq6sylzbId/FjXmxsFNbE50YdofmvdTj8YB7ayg4ybCXVoO/d4/2sON
46Zzz3Ovwd09Dmuo4VC0hGqnFzLccLwKdbIb2BfZPewx+nN8HctpO8N4dLDGUnaMPTpogqNY
uB7P0ZQgAz8HDmJlN83CTFHuZix8K6G35dZDDovmL8QpQNwCuohLgBxswILaf6YBcTLm+cTq
BjMDO6JpN84RF4qnxMXY/xlTeuMgU9p7FsYB53ucA8ahRD5yyx8FEQuOchkAcZjTAELmPuAL
i8BR5yPe8psxZV+MeMpjSB/SSUk01YkdL2zHyeA+/fDlV8X3iWN7O3R2hdbeOEhbey9C/GpE
PxAa1jJwLRDT/g0yUMUUz0QzVgEczi4mkUsRChifUM6MEMYzDcJ65knhaeaPwi5mD79fOMK8
KbzDfChcYK4zJoY2Myzt0YHfnWHNDM16dGCfCnKzoJB7dOA+FxRmQa4AUmOEGV5gEMfCyZIC
XN6CnAdbh8aCAL4luK9OzplkLyE4WVKqXopIeh/l+3wzmeYjmiMwp8GeIc474r0jvm/gBHi/
NZ3g0pRYoXndrGE7U5fJbk31l7GdGvNPNYk5OB835YLJA3SEtwJbcbu4GTft7sZjxU0Q/92f
DlBJlFk8ggtDPaFTeLi4F3hiEIcD/aZIZ7Af+Ns8wgRhhrBe2CqcEsBowxwXy2tV6bxdNZTP
VlXxTTxZgRfyi1XgUStQdcpXKTYqggpOr1fKVJRdqfTowMnF8ZRNJvPAeRyJqgSDEujE8XJk
o9KibZooPW8EGqlVCiXI504oECD0K6Mfk1laDcZ+ml2rOW/uBfoQ6DuSAyVecz50HgwW6VQO
xAmDD5gFaxAcWq/n9gkviRNfcOZNAbZhY4G3CHsiUkbBviPRg3e4UqqtllRGbMNDv/4UTt+6
5txzIDEjA694m6IEnXaOklnQe5Z23Tgpvrke05ye6H7pFya3pv/dzwOZNOzsEsBeSwT7KwlW
iCyUg3LhvDMfrMLBcB+8HFXA3etKNAL+saEKbqmPgr1kLdzFrkNj4X73BDQRbmU3wOn8HbCb
JBqWSBz5cWQvWjGhvrq2KrWydU5Ha/usaS3ppXfOmU5q3fwRj0QA4BDASYBPAL6JVMAaCO0A
WQB+gFqAZoA2gOUA6wCeBggAHAI4CfAJwDeRgVMaCO0AWQB+gFqAZoA2gOUA6wCeBggAHAI4
CfAJwDeEKOG+H4JffxyDRXJ7On1AunhAumRAWlqSb2mvbEB5+YC0ZFbcUr9mQPnoAenaAekx
A9J1A9LjBqQnDki3DEhPHZCeNiA9fUBakrtb8J8xoPxXA9IzB6RnDUj/ekB6zoC09D9ut/Q3
b0D5nQPSbQPSCwak7xqQbh+QvntAumNAeuGA9KIBaTjwQ+h/A1Cn72gKZW5kc3RyZWFtCmVu
ZG9iagoxMzYgMCBvYmoKOTM5MQplbmRvYmoKMzIgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1
YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAvR0xSQkpEK01vbmFjbyAvRm9udERlc2NyaXB0
b3IKMTM3IDAgUiAvRW5jb2RpbmcgL01hY1JvbWFuRW5jb2RpbmcgL0ZpcnN0Q2hhciAzMiAv
TGFzdENoYXIgMTI1IC9XaWR0aHMgWwo2MDAgMCAwIDAgMCAwIDYwMCAwIDYwMCA2MDAgNjAw
IDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgMCAwIDAgMCAwIDAgMCAwCjYwMCA2MDAgNjAw
IDYwMCA2MDAgMCAwIDAgMCA2MDAgMCA2MDAgMCAwIDAgNjAwIDAgMCAwIDAgNjAwIDAgMCAw
IDAgMCA2MDAKMCAwIDAgMCAwIDAgMCAwIDAgMCA2MDAgMCA2MDAgNjAwIDYwMCA2MDAgNjAw
IDYwMCA2MDAgNjAwIDYwMCAwIDYwMCA2MDAgNjAwCjYwMCA2MDAgNjAwIDYwMCA2MDAgNjAw
IDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgMCA2MDAgXSA+PgplbmRvYmoKMTM3
IDAgb2JqCjw8IC9UeXBlIC9Gb250RGVzY3JpcHRvciAvRm9udE5hbWUgL0dMUkJKRCtNb25h
Y28gL0ZsYWdzIDMyIC9Gb250QkJveCBbLTYxMCAtNDIxIDgwNCAxMjIzXQovSXRhbGljQW5n
bGUgMCAvQXNjZW50IDEwMDAgL0Rlc2NlbnQgLTI1MCAvQ2FwSGVpZ2h0IDc4MCAvU3RlbVYg
OTggL0xlYWRpbmcKODMgL1hIZWlnaHQgNTYxIC9TdGVtSCA3NiAvTWF4V2lkdGggNjA2IC9G
b250RmlsZTIgMTM4IDAgUiA+PgplbmRvYmoKMTM4IDAgb2JqCjw8IC9MZW5ndGggMTM5IDAg
UiAvTGVuZ3RoMSAxNTk2NCAvRmlsdGVyIC9GbGF0ZURlY29kZSA+PgpzdHJlYW0KeAGVewlg
FEW6f1X1PfeZuZL0TCb3NQk5IBCSBpIAQcItiTqQAOGQK1xRXEBwQTTik11AWMOhggqC7hAO
QwB1EVFQ3i6rq6vuvtUFvIPoIiJkJu+rngRInvv+/zeTr6urq6a76uvv+H1fVRYvXFKP9Ggl
YtDou+oapiP1078BIebbqXProKQfEy3fn9q42EtrCPFboP3q9IYZc6N1zXqEOOeMOUu7fm/e
h1Bq7Mz6umnRdtQBZeFMuBCt43woE2fOXXx/tG7cDeXbc+ZP7Wo3l0F9+ty6+7uej/4Gde+8
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
m4Zhf6p6hEHHwwKCUd3vNADb/V5wpaUMRfoZuABSQAX5AYZ6V1+eHQI8uw08q91mwMQfnJhh
c9kmb2zeFrm03Wgx64Tl22tqtj4o6MwW43Zs2da8oRY6ZEwky3InTVWK7lkYzBo4oTk0f0DZ
6IkFSf7g6uaH6hIT8ieOLh8wb//WCSWZwYX3FClTJ0Vt3orIOua6yqc1ytDb+RTlD4qP8itO
yGdRksUVv5aGxVkAGDKzLPFxJyy38SjLcsbgGrBa3cpyZSTwqJtTVwARwkv8/2NTNiRNS3E3
Y7zABSNDN4lRpqmMYSjg8EFWUmUaBqaVYPJicGK6NcombNlh6skm047IpW3NGyfbXNb0nmza
un9eMbAJgup7Vjf/us6fUEDZNP/3zbexie6ahE/nAZpD+4VPH7jGgMxrYd+lvttrgA+xQXRB
dzt6wU8mww7HTNjR2BcNRmWoHFXAuvgwMByVAC7vgP+hHIVGozHw/33j4P886H+NTETVYFTu
Qneje+A/VSahWvW5GCI78Jnw4eFJaOgdYwdXlmWMnD+vbup8KvPdnz/BCf2/zm+BOqBBBwTb
DnEmUDHQHUD3AM0BWga0Dmgr0D6gY0DvAv0N6FugDkis6YBigTKBioHuALoHaA7QMqB1QFuB
9gEdA3oX6G9A3wJ1AHN0QLFAmUDFQHcA3QM0B2gZ0DqgrUD7gI4BvQv0t86uD53UzXOwwb3q
yb3qqb3qab3q8J8QPe6X2aue1auubhm87fmBXu3gHHvcT921elv//r3aB/SqF/eqD+xVh6Ri
j/sP6VUv71Uf3qte1as+vld9cq96Xa/6lF71qb3q03rV63vVp/eqz+hVn9mrPqtXfXav+pxe
9bm96vN61UExevCvoVd9Qa/6wl51+I+5Hr9f3Kuupp5ve9+NvdpppHq7/N7fqw451B7tD/Sq
q+m62+6/nLb/N9aoRyMKZW5kc3RyZWFtCmVuZG9iagoxMzkgMCBvYmoKMTEwMzYKZW5kb2Jq
CjkgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVUeXBlIC9CYXNlRm9udCAv
RUpOSVFWK0NvdXJpZXIgL0ZvbnREZXNjcmlwdG9yCjE0MCAwIFIgL0VuY29kaW5nIC9NYWNS
b21hbkVuY29kaW5nIC9GaXJzdENoYXIgMzIgL0xhc3RDaGFyIDEyMiAvV2lkdGhzIFsKNjAw
IDAgMCAwIDAgMCAwIDAgMCAwIDAgMCA2MDAgMCA2MDAgNjAwIDAgNjAwIDAgMCAwIDAgMCAw
IDAgMCA2MDAgMCA2MDAgNjAwCjYwMCAwIDAgMCAwIDYwMCAwIDAgMCAwIDAgNjAwIDAgMCAw
IDAgNjAwIDAgMCAwIDAgMCA2MDAgNjAwIDAgMCAwIDAgMCAwIDAKMCAwIDYwMCAwIDYwMCAw
IDYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgMCA2MDAgNjAwIDYwMCA2MDAgNjAw
IDAgNjAwCjYwMCA2MDAgNjAwIDYwMCA2MDAgNjAwIDYwMCA2MDAgXSA+PgplbmRvYmoKMTQw
IDAgb2JqCjw8IC9UeXBlIC9Gb250RGVzY3JpcHRvciAvRm9udE5hbWUgL0VKTklRVitDb3Vy
aWVyIC9GbGFncyAzMiAvRm9udEJCb3ggWy02NTUgLTQwOSAxMDYzIDEwOTBdCi9JdGFsaWNB
bmdsZSAwIC9Bc2NlbnQgNzU0IC9EZXNjZW50IC0yNDYgL0NhcEhlaWdodCA1OTUgL1N0ZW1W
IDc2IC9YSGVpZ2h0CjQ2MiAvU3RlbUggNjcgL01heFdpZHRoIDgyMyAvRm9udEZpbGUyIDE0
MSAwIFIgPj4KZW5kb2JqCjE0MSAwIG9iago8PCAvTGVuZ3RoIDE0MiAwIFIgL0xlbmd0aDEg
MTUzMTYgL0ZpbHRlciAvRmxhdGVEZWNvZGUgPj4Kc3RyZWFtCngBrZsLdBzVmeerukotyW1L
anVLbbmlfqi7urrVklpqPVqybMU28hsc84iRSAAbbNkmGPwAbOcx4AFjbOIJCYkNBLIMAfM4
mURxGCPLeTghPDIzJM7JhuCsOXnsJITdbNYnD0LAau/vq6puteWcPXN2Vjp/1b23qm/X/b7/
97pVum377RuUWcpdiqasvmbd1lHF+un7nqJoNTduWbfV7usRjj+48Y7b5MiPepY/odGtG7dY
XcVVw9iOjTfvdj5ftkBRsn/atGHdevu8co5j7yYG7L7azTG+acttu+y+dg/HR2++9UbnvC7z
r96ybpfz/coZ+pFb1m3ZYF/f96T0t9664zanL/Nt3bp9g3O9Okz/kKLy11Q/o1QqH1PKrJ6i
zFAUl6IlWa9qjXDNIw+c7bq+et6f1YYKa7ov7bGPPzqu7XvvxXMTFXsqXuCE25mBpdKpyHOR
+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
ajvTVy74QK9etu/gvifqGgKBTjg+zJuCN+gTJE7flBdDY5Zti7uzn2BKnizCTXEs5yiPHCs4
dhTf4rnoUbNj+FZCJKmZ+0whD5Kn756Cf/xPaFseHtkvRdlOJyG+0tku81r7riU7hvJyA8lw
IemdbxeqTaq2s7OtpSX/0Q9t/HA+1Gh2Dtzw2OLb/4vp9z7Xkuj+0DbDbG3W1jdTd+aPPrnp
pmRTtDNgxleuiK1dH1ZXoZfQaz3pVHbkX5HhMt6O3MHbsp3K+yf44+YJhDzrr2Wx8taX7Bux
T4KndCM9kWY5xzCjActKZZeR/TXO13Ju6tmwU0ZM2WybWGRbic3OkYE5JTbrPAy1XCrlqW1X
/4n93KnaROPWZAPUb23QNSua5ZSFEglGTdGAveNdlLTUjrYehPaFbavS0+qWm3Zs+cJ+M5Zo
+Uki3N7JviU7IWv3X/rUU3VDWTN1OBZUt/3dbQc2qY9FY4l4dMHkFRFDSsyhFbmvfk39rsSs
xg4iEjpInX9TfxwdJNQF3A6+2Q9Mbs9+jkESLk6rlwx6CVgDRsEd4F5wCBwBx8DL4HXwG/AO
sN4llFcc64Brm1QXmjKD5S+UQT/y56GX/d6jHz/tx0/78dN+/LQfP+3HT/vx0378tB8/7cdP
+9mI9ONX/Ja7kdwneGaCPWJNCTLvBHmR32pJ6WALOMFqgrSTRY/u7DVPseOigFtadU7feZZv
izk7HvJMR97vCIEwivQ5lb5lUWm1snQ3QPbd7fcQzUcXsUmhzu5PZC8xVF2NzrusN9Gv9iST
nYtq88caOjPpTINm5RVhk2fVu137wikzLLuKk2YuGumz9Hb+d+jtR+htrko4GGCVKTDASmXn
cKbEwhlkRXMkM7JlnELGKWScQsYpZJxCxilknELGKWScQsYpZJxCxilknLJknGLGDmQsLyzb
laHsjPhsTvjghA9O+OCED0744IQPTvjghA9O+OCED0744IQPTvgKnPDBCTal4MQc5vVZugsW
WzG+W75rggrUbtl7D/OKOnQexkzp0HGmUwPOM1TLmVpZaU5M3npNRxbD61J8gf38hg0dXEgD
YpuDjbK9Z52bkG1W5yp5SccAYrHyoo6qWVHG1GznaO3PWfvNaTVoF46BoFqIWXbqVe58xLV2
z4xkMp6s+XVli2EmVE9vot7rbYvM/fIeT9KMp2o++dTs9OKOeLc6MxyOZ385yzTjLVXqubyR
CCWyrtNRszkeNmfH9DJ98hn1+UTI7MyvdQ2zoRnieVfENemTIez6Cha5H35cot7PvxzAjUEw
VDOVgzXaOmxEh43osBEdNqLDRnTYiA4b0WEjOmxEh43osBEdNqJDXp+SNwbLaPB809KhIi1L
nDoC0vkeebnGfuI5wQ6EfdZi5CAKHywwchBGDsLIQRg5CCMHYeQgjByEkYMwchBGDsLIQRg5
CCMHLUZKIpWDkc30c9a3ykiWb87y1HVRcVR2sRYXGXNRHpcSPlBDFMuWix6ZOvtVFoUurmMk
1yl9zXhqc7uDW+kE8kCqi2M3WAgWwRzDduzFyqTgI4rPIgK5CzglXmQqFlhbEKZ6f1O2r7Mn
/7tQsnfArw7lv1s1t61r2Wu9nbnuip++VtfX29Gr6mEzm2vM/1K9bkaipWPlv/VkO1r6zh00
muPNyZDRrF6q9oStjaXm+I9/HI2ZMTNsxPI/yT9ncL45Hk28A4f6qWsPwqGMeikWiF4NILuA
fpbjt32MgUadtLGfxnIwAjaD3WA/eBg8C46D74PT4G3wVyBpo8GMrZaP8VubdczNSNDmZxB+
BuFnEH4G4WcQfgbhZxB+BuFnEH4G4WcQftqPihx+BuEdz43wMWEnKggX7W+QN/EM57sk1eos
8uSiYHDRw7OpereQnpVWXzYl7Igg31duvfLM41kkJk8//lZ56iPMS8Zre4qpwOGQotwVTC/v
Tpn5roxhmqefyH/GCiCBPiuAVKt+c3F3ov8vKbO177xCORaP8JqK+gHXDyXMWyHktMuMJCWE
4CAk5rO1os9Er6YaJDKiU9XaD5JMKok07PfxJpBVo/Uuz3EpOzhXeO9I5RpZj7yZI65Rjqmi
BCNiWJESw5opAzMl2SoITEJImag3hx9ZCq4GG8FOsA8cBk+DF8Ar4KfgLfAX4PyLQhk3VYZ6
uS0s0W/58AjzNtjVTAPVDO/s2tVMA9VHA9VHA9VHA9VHA9VHA9VHA9VHA9VHA9VHA9VHA9VM
A9UML8rK/lDUKkPsYsN+/pBTo3aZYWXDjmdXD6p/QOzN3Ysmv9Q3t6HdNS/PW2bx+CXLXIEl
S9vaDnavYdf3SJvZ3hrsaHcNdF2dTSafS5ld2ablaWKR/L8KP7xzxotlf+PHZEwj7ZD/z/Hz
uob9fzgJaqVOBNiHyxvCRpayxuX8U9tK5VLlMuWD/IPb5cSAK5UPYTtXs/YR5Rr+0+gjyrXM
psrrqNY3uUnKlMUrVi2/fE36kltv3755w3bnjJx+EoyBk+AU+AVgx0s+qtaACOgAC8BqsBZs
BXeBB8DjYAycBKfAL8BZe8HyP46uCOgAC8BqsBZsBXeBB8DjYAycBKfAL8BZEcZ550fhp9hW
Yd2F/dZp/fZp/cy0fue0/txp/XnT+vOn9Qen9S+Z1l8+rb9qWv+qaf0PTetfP62/blr/xmn9
9dP6G6b1R6f1N07r81zhAvlunta/aVr/5ml96/9ZS/Rzy7Tzt07rb53W3z6tv2Na3/p/1ZL5
b5923rKnkvOyzVzKFzarLujvntb/mPT/D+ykXq8KZW5kc3RyZWFtCmVuZG9iagoxNDIgMCBv
YmoKODg0OAplbmRvYmoKMzMgMCBvYmoKPDwgL1R5cGUgL0ZvbnQgL1N1YnR5cGUgL1RydWVU
eXBlIC9CYXNlRm9udCAvSkZIQUdIK0NvdXJpZXItQm9sZCAvRm9udERlc2NyaXB0b3IKMTQz
IDAgUiAvRW5jb2RpbmcgL01hY1JvbWFuRW5jb2RpbmcgL0ZpcnN0Q2hhciA0NCAvTGFzdENo
YXIgMTE3IC9XaWR0aHMgWwo2MDAgMCA2MDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDYwMCAw
IDYwMCAwIDYwMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCA2
MDAgNjAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCA2MDAgMCAwIDYwMCA2MDAgMCAwIDAgNjAw
IDAKMCA2MDAgMCAwIDAgNjAwIDAgNjAwIDYwMCA2MDAgNjAwIF0gPj4KZW5kb2JqCjE0MyAw
IG9iago8PCAvVHlwZSAvRm9udERlc2NyaXB0b3IgL0ZvbnROYW1lIC9KRkhBR0grQ291cmll
ci1Cb2xkIC9GbGFncyAzMiAvRm9udEJCb3gKWy02NTYgLTQwMyAxMDc0IDExMTldIC9JdGFs
aWNBbmdsZSAwIC9Bc2NlbnQgNzU0IC9EZXNjZW50IC0yNDYgL0NhcEhlaWdodAo1OTUgL1N0
ZW1WIDEyNiAvWEhlaWdodCA0NjIgL1N0ZW1IIDEwOCAvTWF4V2lkdGggODIzIC9Gb250Rmls
ZTIgMTQ0IDAgUiA+PgplbmRvYmoKMTQ0IDAgb2JqCjw8IC9MZW5ndGggMTQ1IDAgUiAvTGVu
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
ve5ZVo8tq2O+295fs6y+dVn9/mX1oWV1eatF8sjftYvq+HBz23oHl9Xl79xF4yeW9U8uq08t
qx/j9f8B0dNUCgplbmRzdHJlYW0KZW5kb2JqCjE0NSAwIG9iagozNjk1CmVuZG9iago2MyAw
IG9iago8PCAvVHlwZSAvRm9udCAvU3VidHlwZSAvVHJ1ZVR5cGUgL0Jhc2VGb250IC9SWkVY
SUcrSGVsdmV0aWNhLU9ibGlxdWUgL0ZvbnREZXNjcmlwdG9yCjE0NiAwIFIgL0VuY29kaW5n
IC9NYWNSb21hbkVuY29kaW5nIC9GaXJzdENoYXIgNDggL0xhc3RDaGFyIDU0IC9XaWR0aHMg
WyA1NTYKMCAwIDAgMCAwIDU1NiBdID4+CmVuZG9iagoxNDYgMCBvYmoKPDwgL1R5cGUgL0Zv
bnREZXNjcmlwdG9yIC9Gb250TmFtZSAvUlpFWElHK0hlbHZldGljYS1PYmxpcXVlIC9GbGFn
cyA5NiAvRm9udEJCb3gKWy05MzMgLTQ4MSAxNTcxIDExMzhdIC9JdGFsaWNBbmdsZSAtNiAv
QXNjZW50IDc3MCAvRGVzY2VudCAtMjMwIC9DYXBIZWlnaHQKNzE3IC9TdGVtViA5OCAvWEhl
aWdodCA1MjMgL1N0ZW1IIDg1IC9BdmdXaWR0aCAtNDQxIC9NYXhXaWR0aCAxNTAwIC9Gb250
RmlsZTIKMTQ3IDAgUiA+PgplbmRvYmoKMTQ3IDAgb2JqCjw8IC9MZW5ndGggMTQ4IDAgUiAv
TGVuZ3RoMSA1Nzc2IC9GaWx0ZXIgL0ZsYXRlRGVjb2RlID4+CnN0cmVhbQp4Ab1YfXRU5Zl/
nvsxMyGxhgSSScIwdxwmHyRpPpDwETZMwkxI+AwE6AwfOpNkYpIlmsWYFbvSHBe6MkTsSqUW
erRsu66AyCWJ9IYUSKke62ntoq7uWt1TrWj3o9buLvTYqnP3995JsoStHv7geN/z3Pf5eN/n
/b2/+8z9mN4d98ToJuonmZo2R3vayTqymtD5W7ujPUk7cwB9fmtfr5a01X8ikgfae+7oTtop
EaJprju27xyfn/lDIsnfEYu2JeP0CfqqDjiSNt+Kfk5Hd++9STuzH33a9rtax+OZw7Ad3dF7
x9ent2Brd0a7Y+hxZM3BqaTnrrt7LZNmivyFPTti4+M5RKT8FTG8Mh2kFGuUROlo24js/zbN
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
5K0qyBe7qFpQNa8yy24jGJkZ2F5lFlchYrPbrO1dGpRySnd/67e16zpu6xp+q6IoceE/X7y0
elHHi7zqdw8mfpzd/GTvRY/r3of2P6t4NpZvTvx74pMtpYXvX/px4lWuwPdZ6hlu+8On2Xe+
cOjwgyPnUUUSkXkZEsPH6586ZDgzKQdnpozxOrTqcv3mYKhxeXFDbHtfrLezNVq6tmV751/g
n2QxcuKYAUWDlJvjhwhM6ozanmpXCft/AQj/Jl0KZW5kc3RyZWFtCmVuZG9iagoxNDggMCBv
YmoKMzIyNQplbmRvYmoKOCAwIG9iago8PCAvVHlwZSAvRm9udCAvU3VidHlwZSAvVHJ1ZVR5
cGUgL0Jhc2VGb250IC9TRkhZV0orSGVsdmV0aWNhIC9Gb250RGVzY3JpcHRvcgoxNDkgMCBS
IC9FbmNvZGluZyAvTWFjUm9tYW5FbmNvZGluZyAvRmlyc3RDaGFyIDMyIC9MYXN0Q2hhciAy
MjMgL1dpZHRocyBbCjI3OCAwIDAgMCAwIDAgMCAxOTEgMzMzIDMzMyAwIDU4NCAyNzggMzMz
IDI3OCAyNzggNTU2IDU1NiA1NTYgMCA1NTYgNTU2IDU1Ngo1NTYgNTU2IDU1NiAyNzggMCA1
ODQgNTg0IDU4NCA1NTYgMTAxNSA2NjcgNjY3IDcyMiA3MjIgNjY3IDYxMSA3NzggNzIyIDI3
OAo1MDAgMCA1NTYgODMzIDcyMiA3NzggNjY3IDc3OCA3MjIgNjY3IDYxMSA3MjIgNjY3IDk0
NCA2NjcgMCAwIDAgMCAwIDAgMCAwCjU1NiA1NTYgNTAwIDU1NiA1NTYgMjc4IDU1NiA1NTYg
MjIyIDIyMiA1MDAgMjIyIDgzMyA1NTYgNTU2IDU1NiA1NTYgMzMzIDUwMAoyNzggNTU2IDUw
MCA3MjIgNTAwIDUwMCA1MDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAg
MCAwIDAgMCAwCjAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAg
MCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAKMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAg
MCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMCAwIDAgMAowIDAg
NTAwIDUwMCBdID4+CmVuZG9iagoxNDkgMCBvYmoKPDwgL1R5cGUgL0ZvbnREZXNjcmlwdG9y
IC9Gb250TmFtZSAvU0ZIWVdKK0hlbHZldGljYSAvRmxhZ3MgMzIgL0ZvbnRCQm94IFstOTUx
IC00ODEgMTQ0NSAxMTIyXQovSXRhbGljQW5nbGUgMCAvQXNjZW50IDc3MCAvRGVzY2VudCAt
MjMwIC9DYXBIZWlnaHQgNzE3IC9TdGVtViA5OCAvWEhlaWdodAo1MjMgL1N0ZW1IIDg1IC9B
dmdXaWR0aCA0NDEgL01heFdpZHRoIDE1MDAgL0ZvbnRGaWxlMiAxNTAgMCBSID4+CmVuZG9i
agoxNTAgMCBvYmoKPDwgL0xlbmd0aCAxNTEgMCBSIC9MZW5ndGgxIDIyODEyIC9GaWx0ZXIg
L0ZsYXRlRGVjb2RlID4+CnN0cmVhbQp4AdV8eXgUVbr+ObV0Va/pfUuv6XR3QkhCErKRQJqQ
kLCKgJAgIPumDIsQFoVBZRdxQRbBDRdAUAkQJYg4jIKIOgqKGy6jIzrOknFmLjoj0JXfe6oD
QmbufeaP+9zn+XXnqzqnqrrqnO9851ve81XmzZ0/mRjJMsKTIaPGz55C1M+wLELE8xNnjp+d
qtvOEUK3TGyaF0rVRZznb5kye+rMVF1+kBCdf+otizp+73QTUtlt2uTxk1LnySXsS6bhQKpO
u2OfOW3mvIWpurUF9+92y6yJHecdt+P41pnjF3Y8n3yGeugX42dOTl0/TMA+c/asW+el6kPr
sX959tzJHdfTBrTvXUJxdCB5gGjJzUQiHDHjO4YQ6Tudnwg4y87j06/XZ4Gb0ip/IBZZrd80
6F51f3r4b+775+RLcf398k84oL18PdtrspVsQgwU59v09185o/4Om4GtZFhOK+kHqgIVg3Jy
ervJMrqD3Ad6HMST6fRusgi0BvQQSLhSega1Q/Tu/YKceIkuIl7aP6EXgsPtnqBbpw++10o1
LY8GP3F/fZh6MHpfUc9+I9H21tHH6WNkEgnSp0mULib1JItuPZB9S3AcTj1DZoOWgXh1S+kz
+wOFwVdoVxIVKH4TIwGBvhj8fUFu8JuCVo7uD74abxWw+3UAtURa8Kj/0eCv/FODr4D2pE7t
zsYVLwaf8d8S3BBopVv3Bx/wt1L85v7Ubr4fP30xODN7U3BSgXp+4KZWbs/+YDnOj0jogyVl
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
6jAo15zv1qmOl5CuOV/Yqd69U724Ux0vcVzz+9JOdcjQNefx3yquqffoVK/sVO/Zqd6rU72q
Uz3Rqd67U726U71Pp3pNp3ptp3rfTvW6TvX6TnWAFtf0l0WCV48X0xZX1wd1qg/uVL+uU31I
pzrL+Lz6fkM71Yd1qg/vVL+hU31Ep/rITvWGTnWmQa5+/oRO9Ymd6pM61VWdetX8mdLp/NRO
9Wmd6tM71Wd0qt/cqX5Lp7r6f36vej5DGq/uz6xO9dmd6nM61ed2qt/aqT6vU31+p3pTp/qC
TvWFneqLOtUXX1u/qGr3n/t3UbVm/w85i1NECmVuZHN0cmVhbQplbmRvYmoKMTUxIDAgb2Jq
CjE1NTAyCmVuZG9iagoxNTIgMCBvYmoKKHR1cGxlX2xpa2UpCmVuZG9iagoxNTMgMCBvYmoK
KE1hYyBPUyBYIDEwLjExLjIgUXVhcnR6IFBERkNvbnRleHQpCmVuZG9iagoxNTQgMCBvYmoK
KE1hY0Rvd24pCmVuZG9iagoxNTUgMCBvYmoKKEQ6MjAxNjAxMTIyMjQ2MzVaMDAnMDAnKQpl
bmRvYmoKMTU2IDAgb2JqCigpCmVuZG9iagoxNTcgMCBvYmoKWyBdCmVuZG9iagoxIDAgb2Jq
Cjw8IC9UaXRsZSAxNTIgMCBSIC9Qcm9kdWNlciAxNTMgMCBSIC9DcmVhdG9yIDE1NCAwIFIg
L0NyZWF0aW9uRGF0ZSAxNTUgMCBSCi9Nb2REYXRlIDE1NSAwIFIgL0tleXdvcmRzIDE1NiAw
IFIgL0FBUEw6S2V5d29yZHMgMTU3IDAgUiA+PgplbmRvYmoKeHJlZgowIDE1OAowMDAwMDAw
MDAwIDY1NTM1IGYgCjAwMDAxMzA4MzUgMDAwMDAgbiAKMDAwMDAwNjc3MCAwMDAwMCBuIAow
MDAwMDY3MjMwIDAwMDAwIG4gCjAwMDAwMDAwMjIgMDAwMDAgbiAKMDAwMDAwNjc1MCAwMDAw
MCBuIAowMDAwMDA2ODg5IDAwMDAwIG4gCjAwMDAwMDk3OTMgMDAwMDAgbiAKMDAwMDExNDA2
MyAwMDAwMCBuIAowMDAwMDk2MjI5IDAwMDAwIG4gCjAwMDAwMDcwMDkgMDAwMDAgbiAKMDAw
MDA3Mzk0MyAwMDAwMCBuIAowMDAwMDczNjc3IDAwMDAwIG4gCjAwMDAwNzM0MTEgMDAwMDAg
biAKMDAwMDA3MzE0MyAwMDAwMCBuIAowMDAwMDc0MTc1IDAwMDAwIG4gCjAwMDAwMDcwNTcg
MDAwMDAgbiAKMDAwMDAwOTc3MiAwMDAwMCBuIAowMDAwMDIxNjIxIDAwMDAwIG4gCjAwMDAw
MDk4MjkgMDAwMDAgbiAKMDAwMDAyMTU5OSAwMDAwMCBuIAowMDAwMDIxNzQzIDAwMDAwIG4g
CjAwMDAwMjE4NjQgMDAwMDAgbiAKMDAwMDA3Mjg3NCAwMDAwMCBuIAowMDAwMDcyNjMyIDAw
MDAwIG4gCjAwMDAwNzIzMzQgMDAwMDAgbiAKMDAwMDA3MjA2OCAwMDAwMCBuIAowMDAwMDcx
ODAxIDAwMDAwIG4gCjAwMDAwMzM4MzUgMDAwMDAgbiAKMDAwMDAyMTkxOSAwMDAwMCBuIAow
MDAwMDMzODEzIDAwMDAwIG4gCjAwMDAwMzM5NDIgMDAwMDAgbiAKMDAwMDA4NDM3NSAwMDAw
MCBuIAowMDAwMTA1ODU1IDAwMDAwIG4gCjAwMDAwMzQxMjggMDAwMDAgbiAKMDAwMDAzNDE3
MyAwMDAwMCBuIAowMDAwMDQwMDAzIDAwMDAwIG4gCjAwMDAwMzQyMjIgMDAwMDAgbiAKMDAw
MDAzOTk4MiAwMDAwMCBuIAowMDAwMDQwMTI1IDAwMDAwIG4gCjAwMDAwNDAyOTkgMDAwMDAg
biAKMDAwMDA3MTUzMiAwMDAwMCBuIAowMDAwMDcxMjYzIDAwMDAwIG4gCjAwMDAwNzA5OTUg
MDAwMDAgbiAKMDAwMDA0MzgxOCAwMDAwMCBuIAowMDAwMDQwMzQwIDAwMDAwIG4gCjAwMDAw
NDM3OTcgMDAwMDAgbiAKMDAwMDA0Mzk0MCAwMDAwMCBuIAowMDAwMDQ0MDYxIDAwMDAwIG4g
CjAwMDAwNzA3MjkgMDAwMDAgbiAKMDAwMDA3MDQ2NCAwMDAwMCBuIAowMDAwMDUwMzU2IDAw
MDAwIG4gCjAwMDAwNDQwOTUgMDAwMDAgbiAKMDAwMDA1MDMzNSAwMDAwMCBuIAowMDAwMDUw
NDYzIDAwMDAwIG4gCjAwMDAwNjA2NDEgMDAwMDAgbiAKMDAwMDA1MDYwMyAwMDAwMCBuIAow
MDAwMDYwNjIwIDAwMDAwIG4gCjAwMDAwNjA3NDggMDAwMDAgbiAKMDAwMDA2NTUyOCAwMDAw
MCBuIAowMDAwMDYwOTEwIDAwMDAwIG4gCjAwMDAwNjU1MDcgMDAwMDAgbiAKMDAwMDA2NTY1
MCAwMDAwMCBuIAowMDAwMTEwMjY0IDAwMDAwIG4gCjAwMDAwNjU3ODMgMDAwMDAgbiAKMDAw
MDA3MDE5OCAwMDAwMCBuIAowMDAwMDY5OTMyIDAwMDAwIG4gCjAwMDAwNjk2NjYgMDAwMDAg
biAKMDAwMDA2OTQyOCAwMDAwMCBuIAowMDAwMDY5MTY2IDAwMDAwIG4gCjAwMDAwNjg5MDQg
MDAwMDAgbiAKMDAwMDA2ODY0MyAwMDAwMCBuIAowMDAwMDY4Mzc4IDAwMDAwIG4gCjAwMDAw
NjY5NjggMDAwMDAgbiAKMDAwMDA2NzM1MyAwMDAwMCBuIAowMDAwMDY1ODU5IDAwMDAwIG4g
CjAwMDAwNjY5NDcgMDAwMDAgbiAKMDAwMDA2NzA5MSAwMDAwMCBuIAowMDAwMDY3MTg5IDAw
MDAwIG4gCjAwMDAwNjgxMTMgMDAwMDAgbiAKMDAwMDA2Nzg0OSAwMDAwMCBuIAowMDAwMDY3
NTg1IDAwMDAwIG4gCjAwMDAwNjc0MjkgMDAwMDAgbiAKMDAwMDA2NzUyMCAwMDAwMCBuIAow
MDAwMDY3NzA3IDAwMDAwIG4gCjAwMDAwNjc3NjMgMDAwMDAgbiAKMDAwMDA2Nzk3MSAwMDAw
MCBuIAowMDAwMDY4MDI3IDAwMDAwIG4gCjAwMDAwNjgyMzUgMDAwMDAgbiAKMDAwMDA2ODI5
MSAwMDAwMCBuIAowMDAwMDY4NTAwIDAwMDAwIG4gCjAwMDAwNjg1NTYgMDAwMDAgbiAKMDAw
MDA2ODc2NCAwMDAwMCBuIAowMDAwMDY4ODIwIDAwMDAwIG4gCjAwMDAwNjkwMjYgMDAwMDAg
biAKMDAwMDA2OTA4MiAwMDAwMCBuIAowMDAwMDY5Mjg4IDAwMDAwIG4gCjAwMDAwNjkzNDQg
MDAwMDAgbiAKMDAwMDA2OTU1MCAwMDAwMCBuIAowMDAwMDY5NjA2IDAwMDAwIG4gCjAwMDAw
Njk3ODYgMDAwMDAgbiAKMDAwMDA2OTg0NCAwMDAwMCBuIAowMDAwMDcwMDU1IDAwMDAwIG4g
CjAwMDAwNzAxMTMgMDAwMDAgbiAKMDAwMDA3MDMyMSAwMDAwMCBuIAowMDAwMDcwMzc5IDAw
MDAwIG4gCjAwMDAwNzA1ODYgMDAwMDAgbiAKMDAwMDA3MDY0NCAwMDAwMCBuIAowMDAwMDcw
ODUyIDAwMDAwIG4gCjAwMDAwNzA5MTAgMDAwMDAgbiAKMDAwMDA3MTExOCAwMDAwMCBuIAow
MDAwMDcxMTc2IDAwMDAwIG4gCjAwMDAwNzEzODYgMDAwMDAgbiAKMDAwMDA3MTQ0NCAwMDAw
MCBuIAowMDAwMDcxNjU1IDAwMDAwIG4gCjAwMDAwNzE3MTMgMDAwMDAgbiAKMDAwMDA3MTky
MyAwMDAwMCBuIAowMDAwMDcxOTgxIDAwMDAwIG4gCjAwMDAwNzIxOTEgMDAwMDAgbiAKMDAw
MDA3MjI0OSAwMDAwMCBuIAowMDAwMDcyNDU2IDAwMDAwIG4gCjAwMDAwNzI1MTQgMDAwMDAg
biAKMDAwMDA3Mjc1NSAwMDAwMCBuIAowMDAwMDcyODEzIDAwMDAwIG4gCjAwMDAwNzI5OTcg
MDAwMDAgbiAKMDAwMDA3MzA1NSAwMDAwMCBuIAowMDAwMDczMjY2IDAwMDAwIG4gCjAwMDAw
NzMzMjQgMDAwMDAgbiAKMDAwMDA3MzUzNCAwMDAwMCBuIAowMDAwMDczNTkyIDAwMDAwIG4g
CjAwMDAwNzM4MDAgMDAwMDAgbiAKMDAwMDA3Mzg1OCAwMDAwMCBuIAowMDAwMDc0MDY2IDAw
MDAwIG4gCjAwMDAwNzQxMjQgMDAwMDAgbiAKMDAwMDA3NDYwOSAwMDAwMCBuIAowMDAwMDc0
ODY5IDAwMDAwIG4gCjAwMDAwODQzNTMgMDAwMDAgbiAKMDAwMDA4NDgzMSAwMDAwMCBuIAow
MDAwMDg1MDc3IDAwMDAwIG4gCjAwMDAwOTYyMDYgMDAwMDAgbiAKMDAwMDA5NjY1NyAwMDAw
MCBuIAowMDAwMDk2ODkyIDAwMDAwIG4gCjAwMDAxMDU4MzMgMDAwMDAgbiAKMDAwMDEwNjIx
MyAwMDAwMCBuIAowMDAwMTA2NDU1IDAwMDAwIG4gCjAwMDAxMTAyNDIgMDAwMDAgbiAKMDAw
MDExMDQ2MiAwMDAwMCBuIAowMDAwMTEwNzI0IDAwMDAwIG4gCjAwMDAxMTQwNDEgMDAwMDAg
biAKMDAwMDExNDc3MCAwMDAwMCBuIAowMDAwMTE1MDIyIDAwMDAwIG4gCjAwMDAxMzA2MTcg
MDAwMDAgbiAKMDAwMDEzMDY0MCAwMDAwMCBuIAowMDAwMTMwNjcwIDAwMDAwIG4gCjAwMDAx
MzA3MjQgMDAwMDAgbiAKMDAwMDEzMDc1MSAwMDAwMCBuIAowMDAwMTMwNzk0IDAwMDAwIG4g
CjAwMDAxMzA4MTQgMDAwMDAgbiAKdHJhaWxlcgo8PCAvU2l6ZSAxNTggL1Jvb3QgODMgMCBS
IC9JbmZvIDEgMCBSIC9JRCBbIDw4ZWZlN2ViMWQwOTE1OWViNjRlM2M3OGViODAzNzRhZT4K
PDhlZmU3ZWIxZDA5MTU5ZWI2NGUzYzc4ZWI4MDM3NGFlPiBdID4+CnN0YXJ0eHJlZgoxMzA5
ODYKJSVFT0YK
--------------090501000302050008000404--
.
Author: Larry Evans <cppljevans@suddenlink.net>
Date: Tue, 12 Jan 2016 17:12:27 -0600
Raw View
On 01/12/2016 04:52 PM, Vicente J. Botet Escriba wrote:
> Hi,
>
> I've been working on a proposal (see attached document)
>
>
> Default tuple-like access
>
> Defining tuple-like
> access |tuple_size|, |tuple_element| and |get<I>/get<T>| as comparison
> operators, as proposed in N4475
> <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4477.pdf>, for
That's a link to n4477, not 4475
[snip]
--
---
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-proposals/.
.
Author: "Vicente J. Botet Escriba" <vicente.botet@wanadoo.fr>
Date: Wed, 13 Jan 2016 00:59:52 +0100
Raw View
Le 13/01/2016 00:12, Larry Evans a =C3=A9crit :
> On 01/12/2016 04:52 PM, Vicente J. Botet Escriba wrote:
>> Hi,
>>
>> I've been working on a proposal (see attached document)
>>
>>
>> Default tuple-like access
>>
>> Defining tuple-like
>> access |tuple_size|, |tuple_element| and |get<I>/get<T>| as comparison
>> operators, as proposed in N4475
>> <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4477.pdf>, for
> That's a link to n4477, not 4475
>
>
Fixed on the draft.
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4475.pdf
Thanks,
Vicente
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: =?UTF-8?Q?Daniel_Kr=C3=BCgler?= <daniel.kruegler@gmail.com>
Date: Wed, 13 Jan 2016 07:45:06 +0100
Raw View
2016-01-13 0:59 GMT+01:00 Vicente J. Botet Escriba <vicente.botet@wanadoo.f=
r>:
> Le 13/01/2016 00:12, Larry Evans a =C3=A9crit :
>>
>> On 01/12/2016 04:52 PM, Vicente J. Botet Escriba wrote:
>>>
>>> Hi,
>>>
>>> I've been working on a proposal (see attached document)
>>>
>>>
>>> Default tuple-like access
>>>
>>> Defining tuple-like
>>> access |tuple_size|, |tuple_element| and |get<I>/get<T>| as comparison
>>> operators, as proposed in N4475
>>> <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4477.pdf>, fo=
r
>>
>> That's a link to n4477, not 4475
>>
>>
> Fixed on the draft.
>
> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4475.pdf
If that is a draft, please always ensure that it uses a D-number for
both the actual document number referred to in the document and as
file name within public communication.
Thanks,
- Daniel
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: "Vicente J. Botet Escriba" <vicente.botet@wanadoo.fr>
Date: Wed, 13 Jan 2016 13:21:10 +0100
Raw View
Le 13/01/2016 07:45, Daniel Kr=C3=BCgler a =C3=A9crit :
> 2016-01-13 0:59 GMT+01:00 Vicente J. Botet Escriba <vicente.botet@wanadoo=
..fr>:
>> Le 13/01/2016 00:12, Larry Evans a =C3=A9crit :
>>> On 01/12/2016 04:52 PM, Vicente J. Botet Escriba wrote:
>>>> Hi,
>>>>
>>>> I've been working on a proposal (see attached document)
>>>>
>>>>
>>>> Default tuple-like access
>>>>
>>>> Defining tuple-like
>>>> access |tuple_size|, |tuple_element| and |get<I>/get<T>| as comparison
>>>> operators, as proposed in N4475
>>>> <http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4477.pdf>, f=
or
>>> That's a link to n4477, not 4475
>>>
>>>
>> Fixed on the draft.
>>
>> http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4475.pdf
> If that is a draft, please always ensure that it uses a D-number for
> both the actual document number referred to in the document and as
> file name within public communication.
>
>
There is a misunderstanding.
http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2015/n4475.pdf
is not a draft document. It's just that the reference to this document was =
wrong on my fist post and on my draft document (attached on my second post)=
..
Vicente
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: Matthew Woehlke <mwoehlke.floss@gmail.com>
Date: Thu, 14 Jan 2016 12:30:54 -0500
Raw View
On 2016-01-12 17:52, Vicente J. Botet Escriba wrote:
> I've been working on a proposal (see attached document)
>
> Default tuple-like access
May not be relevant at this time, as you aren't proposing wording yet,
but I'd still like to see the default implementation of tuple_size
defined in terms of 'the largest value N for which all get<0..N>(C) are
well formed' :-). Also, that tuple_size is defined for all C where
get<0>(C) is well-formed (i.e. looser restrictions for implicit
tuple_size than for implicit get<N>).
Explicit conversion to std::pair / std::tuple is not necessary if we
have an unpacking operator :-).
What's with the swap / hash_value stuff at the end? Copy/paste detritus?
Thanks for working on this!
--
Matthew
--
---
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-proposals/.
.
Author: "Vicente J. Botet Escriba" <vicente.botet@wanadoo.fr>
Date: Thu, 14 Jan 2016 19:22:59 +0100
Raw View
Le 14/01/2016 18:30, Matthew Woehlke a =C3=A9crit :
> On 2016-01-12 17:52, Vicente J. Botet Escriba wrote:
>> I've been working on a proposal (see attached document)
>>
>> Default tuple-like access
> May not be relevant at this time, as you aren't proposing wording yet,
Even if there is no wording, your comments are welcome.
> but I'd still like to see the default implementation of tuple_size
> defined in terms of 'the largest value N for which all get<0..N>(C) are
> well formed' :-). Also, that tuple_size is defined for all C where
> get<0>(C) is well-formed (i.e. looser restrictions for implicit
> tuple_size than for implicit get<N>).
Are you talking of the tuple_size for the classes that will have a=20
default implementation or for all the classes.
If it is for first case I don't see the advantage? If it is for the last=20
case (all the classes) I believe this is out of the scope of this=20
proposal as it is orthogonal.
Please, could you clarify?
> Explicit conversion to std::pair / std::tuple is not necessary if we
> have an unpacking operator :-).
>
> What's with the swap / hash_value stuff at the end? Copy/paste detritus?
Right. Fixed.
> Thanks for working on this!
>
Thanks for your help,
Vicente
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: Matthew Woehlke <mwoehlke.floss@gmail.com>
Date: Thu, 14 Jan 2016 13:37:38 -0500
Raw View
On 2016-01-14 13:22, Vicente J. Botet Escriba wrote:
> Le 14/01/2016 18:30, Matthew Woehlke a =C3=A9crit :
>> On 2016-01-12 17:52, Vicente J. Botet Escriba wrote:
>>> I've been working on a proposal (see attached document)
>>>
>>> Default tuple-like access
>>
>> May not be relevant at this time, as you aren't proposing wording yet,
>> Even if there is no wording, your comments are welcome.
>> but I'd still like to see the default implementation of tuple_size
>> defined in terms of 'the largest value N for which all get<0..N>(C) are
>> well formed' :-). Also, that tuple_size is defined for all C where
>> get<0>(C) is well-formed (i.e. looser restrictions for implicit
>> tuple_size than for implicit get<N>).
>=20
> Are you talking of the tuple_size for the classes that will have a
> default implementation or for all the classes.
> If it is for first case I don't see the advantage? If it is for the last
> case (all the classes) I believe this is out of the scope of this
> proposal as it is orthogonal.
> Please, could you clarify?
Both. I'm not sure it's out of scope... I can see that argument, but
they're somewhat coupled.
Generally speaking, I'm wondering why it should *ever* be necessary to
(explicitly) define tuple_size. If I have a class that isn't implicitly
tuple-like, but I would like to make tuple-like, I would prefer that
defining get<N> is the only requirement. If I have a class that would be
implicitly tuple-like, but the implicit definitions aren't appropriate,
I would likewise prefer that defining (or deleting) get<N> is the only
requirement.
If a separation makes sense, I'm more inclined to think it should be that:
- Some types T may=C2=B9 have get<N>(T) implicitly defined.
- tuple_size(T) is=C2=B9 implicitly defined if get<0>(T) is defined.
....that is, if I were to separate the two, I would argue that it makes
more sense to completely separate implicit tuple_size from implicit
get<N>, rather than have two flavors of implicit tuple_size.
(=C2=B9 i.e. if not explicitly specialized or deleted.)
--=20
Matthew
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: "Vicente J. Botet Escriba" <vicente.botet@wanadoo.fr>
Date: Thu, 14 Jan 2016 21:35:07 +0100
Raw View
This is a multi-part message in MIME format.
--------------080201000908020709020605
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: quoted-printable
Le 14/01/2016 19:37, Matthew Woehlke a =C3=A9crit :
> On 2016-01-14 13:22, Vicente J. Botet Escriba wrote:
>> Le 14/01/2016 18:30, Matthew Woehlke a =C3=A9crit :
>>> On 2016-01-12 17:52, Vicente J. Botet Escriba wrote:
>>>> I've been working on a proposal (see attached document)
>>>>
>>>> Default tuple-like access
>>> May not be relevant at this time, as you aren't proposing wording yet,
>>> Even if there is no wording, your comments are welcome.
>>> but I'd still like to see the default implementation of tuple_size
>>> defined in terms of 'the largest value N for which all get<0..N>(C) are
>>> well formed' :-). Also, that tuple_size is defined for all C where
>>> get<0>(C) is well-formed (i.e. looser restrictions for implicit
>>> tuple_size than for implicit get<N>).
>> Are you talking of the tuple_size for the classes that will have a
>> default implementation or for all the classes.
>> If it is for first case I don't see the advantage? If it is for the last
>> case (all the classes) I believe this is out of the scope of this
>> proposal as it is orthogonal.
>> Please, could you clarify?
> Both. I'm not sure it's out of scope... I can see that argument, but
> they're somewhat coupled.
>
> Generally speaking, I'm wondering why it should *ever* be necessary to
> (explicitly) define tuple_size. If I have a class that isn't implicitly
> tuple-like, but I would like to make tuple-like, I would prefer that
> defining get<N> is the only requirement. If I have a class that would be
> implicitly tuple-like, but the implicit definitions aren't appropriate,
> I would likewise prefer that defining (or deleting) get<N> is the only
> requirement.
>
> If a separation makes sense, I'm more inclined to think it should be that=
:
>
> - Some types T may=C2=B9 have get<N>(T) implicitly defined.
> - tuple_size(T) is=C2=B9 implicitly defined if get<0>(T) is defined.
>
> ...that is, if I were to separate the two, I would argue that it makes
> more sense to completely separate implicit tuple_size from implicit
> get<N>, rather than have two flavors of implicit tuple_size.
>
> (=C2=B9 i.e. if not explicitly specialized or deleted.)
>
I don't see how implement the tuple_size you are suggesting efficiently.=20
How will you find the N? trying with get<0>, get<1>, get<2>, ... get<N>,=20
up to a failing get<N+1>?
With my proposal the compiler will know or provide N directly.
What others think?
Vicente
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
--------------080201000908020709020605
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<html>
<head>
<meta content=3D"text/html; charset=3Dutf-8" http-equiv=3D"Content-Type=
">
</head>
<body bgcolor=3D"#FFFFFF" text=3D"#000000">
<div class=3D"moz-cite-prefix">Le 14/01/2016 19:37, Matthew Woehlke a
=C3=A9crit=C2=A0:<br>
</div>
<blockquote cite=3D"mid:n78ptj$dt3$1@ger.gmane.org" type=3D"cite">
<pre wrap=3D"">On 2016-01-14 13:22, Vicente J. Botet Escriba wrote:
</pre>
<blockquote type=3D"cite">
<pre wrap=3D"">Le 14/01/2016 18:30, Matthew Woehlke a =C3=A9crit :
</pre>
<blockquote type=3D"cite">
<pre wrap=3D"">On 2016-01-12 17:52, Vicente J. Botet Escriba wrot=
e:
</pre>
<blockquote type=3D"cite">
<pre wrap=3D"">I've been working on a proposal (see attached do=
cument)
Default tuple-like access
</pre>
</blockquote>
<pre wrap=3D"">
May not be relevant at this time, as you aren't proposing wording yet,
Even if there is no wording, your comments are welcome.
but I'd still like to see the default implementation of tuple_size
defined in terms of 'the largest value N for which all get<0..N>(C) a=
re
well formed' :-). Also, that tuple_size is defined for all C where
get<0>(C) is well-formed (i.e. looser restrictions for implicit
tuple_size than for implicit get<N>).
</pre>
</blockquote>
<pre wrap=3D"">
Are you talking of the tuple_size for the classes that will have a
default implementation or for all the classes.
If it is for first case I don't see the advantage? If it is for the last
case (all the classes) I believe this is out of the scope of this
proposal as it is orthogonal.
Please, could you clarify?
</pre>
</blockquote>
<pre wrap=3D"">
Both. I'm not sure it's out of scope... I can see that argument, but
they're somewhat coupled.
Generally speaking, I'm wondering why it should *ever* be necessary to
(explicitly) define tuple_size. If I have a class that isn't implicitly
tuple-like, but I would like to make tuple-like, I would prefer that
defining get<N> is the only requirement. If I have a class that would=
be
implicitly tuple-like, but the implicit definitions aren't appropriate,
I would likewise prefer that defining (or deleting) get<N> is the onl=
y
requirement.
If a separation makes sense, I'm more inclined to think it should be that:
- Some types T may=C2=B9 have get<N>(T) implicitly defined.
- tuple_size(T) is=C2=B9 implicitly defined if get<0>(T) is defined.
....that is, if I were to separate the two, I would argue that it makes
more sense to completely separate implicit tuple_size from implicit
get<N>, rather than have two flavors of implicit tuple_size.
(=C2=B9 i.e. if not explicitly specialized or deleted.)
</pre>
</blockquote>
<font size=3D"+1">I don't see how implement the tuple_size you are
suggesting efficiently. How will you find the N? trying with
get<0>, get<1>, get<2>, ... get<N>, up to
a failing get<N+1>?<br>
<br>
With my proposal the compiler will know or provide N directly.<br>
<br>
What others think?<br>
<br>
Vicente<br>
</font>
</body>
</html>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
Visit this group at <a href=3D"https://groups.google.com/a/isocpp.org/group=
/std-proposals/">https://groups.google.com/a/isocpp.org/group/std-proposals=
/</a>.<br />
--------------080201000908020709020605--
.
Author: Matthew Woehlke <mwoehlke.floss@gmail.com>
Date: Thu, 14 Jan 2016 16:04:34 -0500
Raw View
On 2016-01-14 15:35, Vicente J. Botet Escriba wrote:
> Le 14/01/2016 19:37, Matthew Woehlke a =C3=A9crit :
>> Generally speaking, I'm wondering why it should *ever* be necessary to
>> (explicitly) define tuple_size. If I have a class that isn't implicitly
>> tuple-like, but I would like to make tuple-like, I would prefer that
>> defining get<N> is the only requirement. If I have a class that would be
>> implicitly tuple-like, but the implicit definitions aren't appropriate,
>> I would likewise prefer that defining (or deleting) get<N> is the only
>> requirement.
>>
>> If a separation makes sense, I'm more inclined to think it should be
>> that:
>>
>> - Some types T may=C2=B9 have get<N>(T) implicitly defined.
>> - tuple_size(T) is=C2=B9 implicitly defined if get<0>(T) is defined.
>>
>> ...that is, if I were to separate the two, I would argue that it makes
>> more sense to completely separate implicit tuple_size from implicit
>> get<N>, rather than have two flavors of implicit tuple_size.
>>
>> (=C2=B9 i.e. if not explicitly specialized or deleted.)
>
> I don't see how implement the tuple_size you are suggesting efficiently.
> How will you find the N? trying with get<0>, get<1>, get<2>, ... get<N>,
> up to a failing get<N+1>?
Yes, exactly. I don't see a serious efficiency problem here; I expect
that in most cases, the number will be small, and if the implicit
definition is compiler-provided, the compiler should be able to make
this determination quickly (and can cache the result).
Moreover, if it is found to be not efficient for some specific case, the
user can just specialize that case, and we will have lost nothing. The
objective is to avoid adding unnecessary requirements.
> With my proposal the compiler will know or provide N directly.
That is QoI. The compiler can still do this if using implicit get<N>.
--=20
Matthew
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: Nevin Liber <nevin@eviloverlord.com>
Date: Thu, 14 Jan 2016 15:40:53 -0600
Raw View
--001a11409fc2788c2c05295226bb
Content-Type: text/plain; charset=UTF-8
On 14 January 2016 at 15:04, Matthew Woehlke <mwoehlke.floss@gmail.com>
wrote:
> > I don't see how implement the tuple_size you are suggesting efficiently.
> > How will you find the N? trying with get<0>, get<1>, get<2>, ... get<N>,
> > up to a failing get<N+1>?
>
> Yes, exactly. I don't see a serious efficiency problem here; I expect
> that in most cases, the number will be small,
Please don't make that assumption. It reminds me of life before variadic
templates.
One use case for knowing N is when you want to get things in reverse
order. Users shouldn't have to go through hoops just to figure out how to
do that, nor write code that requires O(N) template instantiations to
calculate it, because when they get it wrong, they'll still get horrible
error messages.
--
Nevin ":-)" Liber <mailto:nevin@eviloverlord.com> +1-847-691-1404
--
---
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-proposals/.
--001a11409fc2788c2c05295226bb
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">On 14 January 2016 at 15:04, Matthew Woehlke <span dir=3D"=
ltr"><<a href=3D"mailto:mwoehlke.floss@gmail.com" target=3D"_blank">mwoe=
hlke.floss@gmail.com</a>></span> wrote:<br><div class=3D"gmail_extra"><d=
iv class=3D"gmail_quote"><blockquote class=3D"gmail_quote" style=3D"margin:=
0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><span class=3D"">&g=
t; I don't see how implement the tuple_size you are suggesting efficien=
tly.<br>
> How will you find the N? trying with get<0>, get<1>, get&l=
t;2>, ... get<N>,<br>
> up to a failing get<N+1>?<br>
<br>
</span>Yes, exactly. I don't see a serious efficiency problem here; I e=
xpect<br>
that in most cases, the number will be small, </blockquote><div><br></div><=
div>Please don't make that assumption.=C2=A0 It reminds me of life befo=
re variadic templates.</div><div><br></div><div>One use case for knowing N =
is when you want to get things in reverse order.=C2=A0 Users shouldn't =
have to go through hoops just to figure out how to do that, nor write code =
that requires O(N) template instantiations to calculate it, because when th=
ey get it wrong, they'll still get horrible error messages.</div></div>=
-- <br><div class=3D"gmail_signature"><div dir=3D"ltr"><div><div dir=3D"ltr=
"><div>=C2=A0Nevin ":-)" Liber=C2=A0 <mailto:<a href=3D"mailto=
:nevin@eviloverlord.com" target=3D"_blank">nevin@eviloverlord.com</a>> =
=C2=A0+1-847-691-1404</div></div></div></div></div>
</div></div>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
Visit this group at <a href=3D"https://groups.google.com/a/isocpp.org/group=
/std-proposals/">https://groups.google.com/a/isocpp.org/group/std-proposals=
/</a>.<br />
--001a11409fc2788c2c05295226bb--
.
Author: Matthew Woehlke <mwoehlke.floss@gmail.com>
Date: Thu, 14 Jan 2016 17:11:04 -0500
Raw View
On 2016-01-14 16:40, Nevin Liber wrote:
> On 14 January 2016 at 15:04, Matthew Woehlke wrote:
>>> I don't see how implement the tuple_size you are suggesting efficiently.
>>> How will you find the N? trying with get<0>, get<1>, get<2>, ... get<N>,
>>> up to a failing get<N+1>?
>>
>> Yes, exactly. I don't see a serious efficiency problem here; I expect
>> that in most cases, the number will be small,
>
> Please don't make that assumption. It reminds me of life before variadic
> templates.
I'm really struggling to think of why you would have a (non-array)
tuple-like that has more than a few dozen members. That's a *very*
complicated complex type. (Array-like types don't count; you'll almost
certainly specialize tuple_size for those.)
> One use case for knowing N is when you want to get things in reverse
> order. Users shouldn't have to go through hoops just to figure out how to
> do that, nor write code that requires O(N) template instantiations to
> calculate it, because when they get it wrong, they'll still get horrible
> error messages.
....but it *doesn't* "require O(N) template instantiations". That's just
the case *if you don't provide a specialization*. If you have a type for
which N is large, then provide your own tuple_size. Nothing about what
I'm suggesting prevents you from doing that. This is why I don't
understand the objection; either I am not adequately communicating my
suggestion (maybe), or you are concerned that having the *option* to be
lazy will have disastrous consequences (which I don't understand / agree
with).
Let me restate that for clarity: code that will work under your proposal
as-is will work *exactly the same* with my modification. The only case
that is different is if tuple_size is not user provided; without my
modification, such code won't have a tuple_size *at all*. With my
modification, it will have a (possibly inefficient) implicit implementation.
That said... back up a moment and remind me when tuple_size is actually
needed? Does unpacking need it, for example? Or is it only used in user
code? If I can do most of what I want to do with a tuple-like by
providing only get<N>, then I care less.
What I really want to avoid is being required to define tuple_size *in
addition to get<N>* for a 2- or 3-tuple before I can do anything useful
with it. To me that's just pointless extra work that the compiler can
and should be doing for me.
--
Matthew
--
---
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-proposals/.
.
Author: Tony V E <tvaneerd@gmail.com>
Date: Thu, 14 Jan 2016 17:16:25 -0500
Raw View
Is there any value in separating size from get?
For example, a tuple of three ints, but returns =E2=80=8E17 (or more likely=
0) for get<3>, get<4>, get<99>, etc.=C2=A0
ie I have 3 but I can make up the rest. Similar to infinite ranges.
Sent=C2=A0from=C2=A0my=C2=A0BlackBerry=C2=A0portable=C2=A0Babbage=C2=A0Devi=
ce
=C2=A0 Original Message =C2=A0
From: Matthew Woehlke
Sent: Thursday, January 14, 2016 1:37 PM
To: std-proposals@isocpp.org
Reply To: std-proposals@isocpp.org
Subject: [std-proposals] Re: Default tuple-like access
On 2016-01-14 13:22, Vicente J. Botet Escriba wrote:
> Le 14/01/2016 18:30, Matthew Woehlke a =C3=A9crit :
>> On 2016-01-12 17:52, Vicente J. Botet Escriba wrote:
>>> I've been working on a proposal (see attached document)
>>>
>>> Default tuple-like access
>>
>> May not be relevant at this time, as you aren't proposing wording yet,
>> Even if there is no wording, your comments are welcome.
>> but I'd still like to see the default implementation of tuple_size
>> defined in terms of 'the largest value N for which all get<0..N>(C) are
>> well formed' :-). Also, that tuple_size is defined for all C where
>> get<0>(C) is well-formed (i.e. looser restrictions for implicit
>> tuple_size than for implicit get<N>).
>=20
> Are you talking of the tuple_size for the classes that will have a
> default implementation or for all the classes.
> If it is for first case I don't see the advantage? If it is for the last
> case (all the classes) I believe this is out of the scope of this
> proposal as it is orthogonal.
> Please, could you clarify?
Both. I'm not sure it's out of scope... I can see that argument, but
they're somewhat coupled.
Generally speaking, I'm wondering why it should *ever* be necessary to
(explicitly) define tuple_size. If I have a class that isn't implicitly
tuple-like, but I would like to make tuple-like, I would prefer that
defining get<N> is the only requirement. If I have a class that would be
implicitly tuple-like, but the implicit definitions aren't appropriate,
I would likewise prefer that defining (or deleting) get<N> is the only
requirement.
If a separation makes sense, I'm more inclined to think it should be that:
- Some types T may=C2=B9 have get<N>(T) implicitly defined.
- tuple_size(T) is=C2=B9 implicitly defined if get<0>(T) is defined.
....that is, if I were to separate the two, I would argue that it makes
more sense to completely separate implicit tuple_size from implicit
get<N>, rather than have two flavors of implicit tuple_size.
(=C2=B9 i.e. if not explicitly specialized or deleted.)
--=20
Matthew
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: Nevin Liber <nevin@cplusplusguy.com>
Date: Thu, 14 Jan 2016 16:21:28 -0600
Raw View
--001a11409fc29b8039052952b7ca
Content-Type: text/plain; charset=UTF-8
On 14 January 2016 at 16:11, Matthew Woehlke <mwoehlke.floss@gmail.com>
wrote:
> On 2016-01-14 16:40, Nevin Liber wrote:
> > On 14 January 2016 at 15:04, Matthew Woehlke wrote:
> >>> I don't see how implement the tuple_size you are suggesting
> efficiently.
> >>> How will you find the N? trying with get<0>, get<1>, get<2>, ...
> get<N>,
> >>> up to a failing get<N+1>?
> >>
> >> Yes, exactly. I don't see a serious efficiency problem here; I expect
> >> that in most cases, the number will be small,
> >
> > Please don't make that assumption. It reminds me of life before variadic
> > templates.
>
> I'm really struggling to think of why you would have a (non-array)
> tuple-like that has more than a few dozen members.
A tuple-like data structure to capture an expression template, for
instance. It can be arbitrarily large.
Don't engineer in limits if you don't have to, and don't engineer in O(N)
algorithms (even at compile time) if you don't have to. There is no reason
not to expose it. What is the actual objection to doing so, other than we
aren't providing the absolute barest possible minimal set of operations by
doing so.
> That's a *very*
> complicated complex type. (Array-like types don't count; you'll almost
> certainly specialize tuple_size for those.)
>
> > One use case for knowing N is when you want to get things in reverse
> > order. Users shouldn't have to go through hoops just to figure out how
> to
> > do that, nor write code that requires O(N) template instantiations to
> > calculate it, because when they get it wrong, they'll still get horrible
> > error messages.
>
> ...but it *doesn't* "require O(N) template instantiations". That's just
> the case *if you don't provide a specialization*. If you have a type for
> which N is large, then provide your own tuple_size.
Why should I have to? This is why people rightly complain about C++. We
really don't have to make everything hard to accomplish.
--
Nevin ":-)" Liber <mailto:nevin@cplusplusguy.com <nevin@eviloverlord.com>>
+1-847-691-1404
--
---
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-proposals/.
--001a11409fc29b8039052952b7ca
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">On 14 January 2016 at 16:11, Matthew Woehlke <span dir=3D"=
ltr"><<a href=3D"mailto:mwoehlke.floss@gmail.com" target=3D"_blank">mwoe=
hlke.floss@gmail.com</a>></span> wrote:<br><div class=3D"gmail_extra"><d=
iv class=3D"gmail_quote"><blockquote class=3D"gmail_quote" style=3D"margin:=
0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">On 2016-01-14 16:40=
, Nevin Liber wrote:<br>
<span class=3D"">> On 14 January 2016 at 15:04, Matthew Woehlke wrote:<b=
r>
>>> I don't see how implement the tuple_size you are suggestin=
g efficiently.<br>
>>> How will you find the N? trying with get<0>, get<1>=
;, get<2>, ... get<N>,<br>
>>> up to a failing get<N+1>?<br>
>><br>
>> Yes, exactly. I don't see a serious efficiency problem here; I=
expect<br>
>> that in most cases, the number will be small,<br>
><br>
> Please don't make that assumption.=C2=A0 It reminds me of life bef=
ore variadic<br>
> templates.<br>
<br>
</span>I'm really struggling to think of why you would have a (non-arra=
y)<br>
tuple-like that has more than a few dozen members.</blockquote><div><br></d=
iv><div>A tuple-like data structure to capture an expression template, for =
instance.=C2=A0 It can be arbitrarily large.</div><div><br></div><div>Don&#=
39;t engineer in limits if you don't have to, and don't engineer in=
O(N) algorithms (even at compile time) if you don't have to.=C2=A0 The=
re is no reason not to expose it.=C2=A0 What is the actual objection to doi=
ng so, other than we aren't providing the absolute barest possible mini=
mal set of operations by doing so.</div><div>=C2=A0<br></div><blockquote cl=
ass=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;p=
adding-left:1ex"> That's a *very*<br>
complicated complex type. (Array-like types don't count; you'll alm=
ost<br>
certainly specialize tuple_size for those.)<br>
<span class=3D""><br>
> One use case for knowing N is when you want to get things in reverse<b=
r>
> order.=C2=A0 Users shouldn't have to go through hoops just to figu=
re out how to<br>
> do that, nor write code that requires O(N) template instantiations to<=
br>
> calculate it, because when they get it wrong, they'll still get ho=
rrible<br>
> error messages.<br>
<br>
</span>...but it *doesn't* "require O(N) template instantiations&q=
uot;. That's just<br>
the case *if you don't provide a specialization*. If you have a type fo=
r<br>
which N is large, then provide your own tuple_size. </blockquote><div><br><=
/div><div>Why should I have to?=C2=A0 This is why people rightly complain a=
bout C++.=C2=A0 We really don't have to make everything hard to accompl=
ish.<br>-- <br><div class=3D"gmail_signature"><div dir=3D"ltr">=C2=A0Nevin =
":-)" Liber=C2=A0 <mailto:<a href=3D"mailto:nevin@eviloverlord=
..com" target=3D"_blank">nevin@cplusplusguy.com</a>>=C2=A0 +1-847-691-140=
4<br></div></div>
</div></div></div>
</div>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
Visit this group at <a href=3D"https://groups.google.com/a/isocpp.org/group=
/std-proposals/">https://groups.google.com/a/isocpp.org/group/std-proposals=
/</a>.<br />
--001a11409fc29b8039052952b7ca--
.
Author: Patrice Roy <patricer@gmail.com>
Date: Thu, 14 Jan 2016 21:02:04 -0500
Raw View
--001a113f9b442d4099052955ca8e
Content-Type: text/plain; charset=UTF-8
The risks mostly come from program-generated tuples / variadics; these are
the ones that will get long. I'm also uncomfortable with beliefs of low
number of types / elements... Things such as tuples resulting from merging
tuples, for example. Let's play it safe and plan for survival in the face
of big numbers.
2016-01-14 17:21 GMT-05:00 Nevin Liber <nevin@cplusplusguy.com>:
> On 14 January 2016 at 16:11, Matthew Woehlke <mwoehlke.floss@gmail.com>
> wrote:
>
>> On 2016-01-14 16:40, Nevin Liber wrote:
>> > On 14 January 2016 at 15:04, Matthew Woehlke wrote:
>> >>> I don't see how implement the tuple_size you are suggesting
>> efficiently.
>> >>> How will you find the N? trying with get<0>, get<1>, get<2>, ...
>> get<N>,
>> >>> up to a failing get<N+1>?
>> >>
>> >> Yes, exactly. I don't see a serious efficiency problem here; I expect
>> >> that in most cases, the number will be small,
>> >
>> > Please don't make that assumption. It reminds me of life before
>> variadic
>> > templates.
>>
>> I'm really struggling to think of why you would have a (non-array)
>> tuple-like that has more than a few dozen members.
>
>
> A tuple-like data structure to capture an expression template, for
> instance. It can be arbitrarily large.
>
> Don't engineer in limits if you don't have to, and don't engineer in O(N)
> algorithms (even at compile time) if you don't have to. There is no reason
> not to expose it. What is the actual objection to doing so, other than we
> aren't providing the absolute barest possible minimal set of operations by
> doing so.
>
>
>> That's a *very*
>> complicated complex type. (Array-like types don't count; you'll almost
>> certainly specialize tuple_size for those.)
>>
>> > One use case for knowing N is when you want to get things in reverse
>> > order. Users shouldn't have to go through hoops just to figure out how
>> to
>> > do that, nor write code that requires O(N) template instantiations to
>> > calculate it, because when they get it wrong, they'll still get horrible
>> > error messages.
>>
>> ...but it *doesn't* "require O(N) template instantiations". That's just
>> the case *if you don't provide a specialization*. If you have a type for
>> which N is large, then provide your own tuple_size.
>
>
> Why should I have to? This is why people rightly complain about C++. We
> really don't have to make everything hard to accomplish.
> --
> Nevin ":-)" Liber <mailto:nevin@cplusplusguy.com
> <nevin@eviloverlord.com>> +1-847-691-1404
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "ISO C++ Standard - Future Proposals" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to std-proposals+unsubscribe@isocpp.org.
> To post to this group, send email to std-proposals@isocpp.org.
> Visit this group at
> https://groups.google.com/a/isocpp.org/group/std-proposals/.
>
--
---
You received this message because you are subscribed to the Google Groups "ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an email to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-proposals/.
--001a113f9b442d4099052955ca8e
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<div dir=3D"ltr">The risks mostly come from program-generated tuples / vari=
adics; these are the ones that will get long. I'm also uncomfortable wi=
th beliefs of low number of types / elements... Things such as tuples resul=
ting from merging tuples, for example. Let's play it safe and plan for =
survival in the face of big numbers.<br></div><div class=3D"gmail_extra"><b=
r><div class=3D"gmail_quote">2016-01-14 17:21 GMT-05:00 Nevin Liber <span d=
ir=3D"ltr"><<a href=3D"mailto:nevin@cplusplusguy.com" target=3D"_blank">=
nevin@cplusplusguy.com</a>></span>:<br><blockquote class=3D"gmail_quote"=
style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><d=
iv dir=3D"ltr"><span class=3D"">On 14 January 2016 at 16:11, Matthew Woehlk=
e <span dir=3D"ltr"><<a href=3D"mailto:mwoehlke.floss@gmail.com" target=
=3D"_blank">mwoehlke.floss@gmail.com</a>></span> wrote:<br></span><div c=
lass=3D"gmail_extra"><div class=3D"gmail_quote"><span class=3D""><blockquot=
e class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc sol=
id;padding-left:1ex">On 2016-01-14 16:40, Nevin Liber wrote:<br>
<span>> On 14 January 2016 at 15:04, Matthew Woehlke wrote:<br>
>>> I don't see how implement the tuple_size you are suggestin=
g efficiently.<br>
>>> How will you find the N? trying with get<0>, get<1>=
;, get<2>, ... get<N>,<br>
>>> up to a failing get<N+1>?<br>
>><br>
>> Yes, exactly. I don't see a serious efficiency problem here; I=
expect<br>
>> that in most cases, the number will be small,<br>
><br>
> Please don't make that assumption.=C2=A0 It reminds me of life bef=
ore variadic<br>
> templates.<br>
<br>
</span>I'm really struggling to think of why you would have a (non-arra=
y)<br>
tuple-like that has more than a few dozen members.</blockquote><div><br></d=
iv></span><div>A tuple-like data structure to capture an expression templat=
e, for instance.=C2=A0 It can be arbitrarily large.</div><div><br></div><di=
v>Don't engineer in limits if you don't have to, and don't engi=
neer in O(N) algorithms (even at compile time) if you don't have to.=C2=
=A0 There is no reason not to expose it.=C2=A0 What is the actual objection=
to doing so, other than we aren't providing the absolute barest possib=
le minimal set of operations by doing so.</div><span class=3D""><div>=C2=A0=
<br></div><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bord=
er-left:1px #ccc solid;padding-left:1ex"> That's a *very*<br>
complicated complex type. (Array-like types don't count; you'll alm=
ost<br>
certainly specialize tuple_size for those.)<br>
<span><br>
> One use case for knowing N is when you want to get things in reverse<b=
r>
> order.=C2=A0 Users shouldn't have to go through hoops just to figu=
re out how to<br>
> do that, nor write code that requires O(N) template instantiations to<=
br>
> calculate it, because when they get it wrong, they'll still get ho=
rrible<br>
> error messages.<br>
<br>
</span>...but it *doesn't* "require O(N) template instantiations&q=
uot;. That's just<br>
the case *if you don't provide a specialization*. If you have a type fo=
r<br>
which N is large, then provide your own tuple_size. </blockquote><div><br><=
/div></span><div>Why should I have to?=C2=A0 This is why people rightly com=
plain about C++.=C2=A0 We really don't have to make everything hard to =
accomplish.<span class=3D"HOEnZb"><font color=3D"#888888"><br>-- <br><div><=
div dir=3D"ltr">=C2=A0Nevin ":-)" Liber=C2=A0 <mailto:<a href=
=3D"mailto:nevin@eviloverlord.com" target=3D"_blank">nevin@cplusplusguy.com=
</a>>=C2=A0 <a href=3D"tel:%2B1-847-691-1404" value=3D"+18476911404" tar=
get=3D"_blank">+1-847-691-1404</a><br></div></div>
</font></span></div></div></div>
</div><div class=3D"HOEnZb"><div class=3D"h5">
<p></p>
-- <br>
<br>
--- <br>
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br>
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org" target=3D"_=
blank">std-proposals+unsubscribe@isocpp.org</a>.<br>
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org" target=3D"_blank">std-proposals@isocpp.org</a>.<br>
Visit this group at <a href=3D"https://groups.google.com/a/isocpp.org/group=
/std-proposals/" target=3D"_blank">https://groups.google.com/a/isocpp.org/g=
roup/std-proposals/</a>.<br>
</div></div></blockquote></div><br></div>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
Visit this group at <a href=3D"https://groups.google.com/a/isocpp.org/group=
/std-proposals/">https://groups.google.com/a/isocpp.org/group/std-proposals=
/</a>.<br />
--001a113f9b442d4099052955ca8e--
.
Author: Matthew Woehlke <mwoehlke.floss@gmail.com>
Date: Fri, 15 Jan 2016 10:03:41 -0500
Raw View
On 2016-01-14 17:16, Tony V E wrote:
> Is there any value in separating size from get?
>=20
> For example, a tuple of three ints, but returns =E2=80=8E17 (or more like=
ly 0) for get<3>, get<4>, get<99>, etc.=20
>=20
> ie I have 3 but I can make up the rest. Similar to infinite ranges.
Nothing in my suggestion precludes that. You could implement a generic
get<N> that returns the "out of range" value, and a tuple_size that
returns the "real" size. (You'd have to provide an explicit tuple_size
in such case, and I wouldn't count on an unbounded get<N> not causing
other problems...)
--=20
Matthew
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: Matthew Woehlke <mwoehlke.floss@gmail.com>
Date: Fri, 15 Jan 2016 10:07:59 -0500
Raw View
On 2016-01-14 17:21, Nevin Liber wrote:
> On 14 January 2016 at 16:11, Matthew Woehlke wrote:
>> I'm really struggling to think of why you would have a (non-array)
>> tuple-like that has more than a few dozen members.
>=20
> A tuple-like data structure to capture an expression template, for
> instance. It can be arbitrarily large.
>=20
> Don't engineer in limits if you don't have to, and don't engineer in O(N)
> algorithms (even at compile time) if you don't have to. There is no reas=
on
> not to expose it. What is the actual objection to doing so, other than w=
e
> aren't providing the absolute barest possible minimal set of operations b=
y
> doing so.
How does my suggestion=C2=B9 engineer in limits? How does it fail to expose
the ability for the user to provide tuple_size?
I think you must be misunderstanding what I am proposing. I am *NOT IN
ANY WAY* suggesting that the user *can't* provide their own tuple_size.
I am only suggesting that they should have the *option* of using one
provided by the compiler instead.
If the O(N) algorithm is going to be a problem, just provide tuple_size
explicitly, the same as would be *required* without IPTS. All IPTS does
is make it optional rather than required, by having the compiler provide
an implementation *IFF* the user does not.
(=C2=B9 Hereafter, IPTS, or implicitly provided tuple_size, for brevity.)
>> On 2016-01-14 16:40, Nevin Liber wrote:
>>> One use case for knowing N is when you want to get things in
>>> reverse order. Users shouldn't have to go through hoops just to
>>> figure out how to do that, nor write code that requires O(N)
>>> template instantiations to calculate it, because when they get it
>>> wrong, they'll still get horrible error messages.
>>=20
>> ...but it *doesn't* "require O(N) template instantiations". That's just
>> the case *if you don't provide a specialization*. If you have a type for
>> which N is large, then provide your own tuple_size.
>=20
> Why should I have to? This is why people rightly complain about C++. We
> really don't have to make everything hard to accomplish.
I don't get it. Without IPTS, either you provide an explicit tuple_size,
or tuple_size is just not available for that type. With IPTS, you have
tuple_size if you have get<N>, but it might be slow if you don't provide
an explicit tuple_size.
IOW, tuple_size is available if (TSPE =3D tuple_size provided explicitly):
no get<N> no TSPE TSPE
no IPTS: no no yes (fast)
with IPTS: no yes (slow) yes (fast)
The only change is if an explicit tuple_size is not provided. IPTS makes
it easier to use a tuple-like because you don't *always* have to provide
tuple_size explicitly.
Not providing IPTS makes it harder to implement a tuple-like, because
now I *have* to provide two functions, *always*, when in many cases one
ought to suffice. It almost seems like you're arguing my point for me...
--=20
Matthew
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: =?UTF-8?Q?Agust=c3=adn_K-ballo_Berg=c3=a9?= <kaballo86@hotmail.com>
Date: Fri, 15 Jan 2016 12:18:08 -0300
Raw View
On 1/15/2016 12:07 PM, Matthew Woehlke wrote:
> On 2016-01-14 17:21, Nevin Liber wrote:
>> On 14 January 2016 at 16:11, Matthew Woehlke wrote:
>>> I'm really struggling to think of why you would have a (non-array)
>>> tuple-like that has more than a few dozen members.
>>
>> A tuple-like data structure to capture an expression template, for
>> instance. It can be arbitrarily large.
>>
>> Don't engineer in limits if you don't have to, and don't engineer in O(N=
)
>> algorithms (even at compile time) if you don't have to. There is no rea=
son
>> not to expose it. What is the actual objection to doing so, other than =
we
>> aren't providing the absolute barest possible minimal set of operations =
by
>> doing so.
>
> How does my suggestion=C2=B9 engineer in limits? How does it fail to expo=
se
> the ability for the user to provide tuple_size?
I don't think your suggestion is viable, the standard mandates a hard=20
error when the `I` in `get<I>` is out of bounds, which rules out poking=20
via SFINAE.
Now I don't think that this requirement necessarily translates to user=20
provided `get`s, but in any case it would mean that users would have to=20
choose between playing nice or specializing `tuple_size`.
Regards,
--=20
Agust=C3=ADn K-ballo Berg=C3=A9.-
http://talesofcpp.fusionfenix.com
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: Matthew Woehlke <mwoehlke.floss@gmail.com>
Date: Fri, 15 Jan 2016 10:24:26 -0500
Raw View
On 2016-01-15 10:18, Agust=C3=ADn K-ballo Berg=C3=A9 wrote:
> I don't think your suggestion is viable, the standard mandates a hard
> error when the `I` in `get<I>` is out of bounds, which rules out poking
> via SFINAE.
Does that necessarily apply if it is the compiler itself doing the
poking? Is there a reason that restriction (if it even does genuinely
prevent SFINAE) cannot have an exception for IPTS?
--=20
Matthew
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: =?UTF-8?Q?Agust=c3=adn_K-ballo_Berg=c3=a9?= <kaballo86@hotmail.com>
Date: Fri, 15 Jan 2016 12:40:52 -0300
Raw View
On 1/15/2016 12:24 PM, Matthew Woehlke wrote:
> On 2016-01-15 10:18, Agust=C3=ADn K-ballo Berg=C3=A9 wrote:
>> I don't think your suggestion is viable, the standard mandates a hard
>> error when the `I` in `get<I>` is out of bounds, which rules out poking
>> via SFINAE.
>
> Does that necessarily apply if it is the compiler itself doing the
> poking? Is there a reason that restriction (if it even does genuinely
> prevent SFINAE) cannot have an exception for Implicitly Provided Tuple Si=
ze?
That would equate to speculative compilation, and having to roll back=20
the entire state of the compiler at any arbitrary point during=20
instantiation.
There's a reason for SFINAE only happening in an "immediate context".=20
Maybe the compiler could fork itself and see how the instantiation=20
goes... :)
Regards,
--=20
Agust=C3=ADn K-ballo Berg=C3=A9.-
http://talesofcpp.fusionfenix.com
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: Tony V E <tvaneerd@gmail.com>
Date: Fri, 15 Jan 2016 11:18:33 -0500
Raw View
Yes I understand nothing precludes it. I wonder if there is value in it. Wh=
ether it has value might sway which way I'd like to see things implemented.=
=C2=A0
For example, if it had value, then *always* (ie mandating) calculating size=
from get would be bad. =E2=80=8EOn the other hand, if we want to prevent t=
hat craziness, maybe we should mandate it.=C2=A0
Sent=C2=A0from=C2=A0my=C2=A0BlackBerry=C2=A0portable=C2=A0Babbage=C2=A0Devi=
ce
=C2=A0 Original Message =C2=A0
From: Matthew Woehlke
Sent: Friday, January 15, 2016 10:03 AM
To: std-proposals@isocpp.org
Reply To: std-proposals@isocpp.org
Subject: [std-proposals] Re: Default tuple-like access
On 2016-01-14 17:16, Tony V E wrote:
> Is there any value in separating size from get?
>=20
> For example, a tuple of three ints, but returns =E2=80=8E17 (or more like=
ly 0) for get<3>, get<4>, get<99>, etc.=20
>=20
> ie I have 3 but I can make up the rest. Similar to infinite ranges.
Nothing in my suggestion precludes that. You could implement a generic
get<N> that returns the "out of range" value, and a tuple_size that
returns the "real" size. (You'd have to provide an explicit tuple_size
in such case, and I wouldn't count on an unbounded get<N> not causing
other problems...)
--=20
Matthew
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: Tony V E <tvaneerd@gmail.com>
Date: Fri, 15 Jan 2016 11:18:54 -0500
Raw View
You could always provide a calc_tuple_size<T> (calculates via get<> if only=
SFINAE worked) and then let the user do
using tuple_size<MyType> =3D calc_tuple_size<MyType>;=E2=80=8E
So it is still explicit, but doesn't get out of sync with get<>.=C2=A0
=E2=80=8E
Sent=C2=A0from=C2=A0my=C2=A0BlackBerry=C2=A0portable=C2=A0Babbage=C2=A0Devi=
ce
=C2=A0 Original Message =C2=A0
From: Matthew Woehlke
Sent: Friday, January 15, 2016 10:10 AM
To: std-proposals@isocpp.org
Reply To: std-proposals@isocpp.org
Subject: [std-proposals] Re: Default tuple-like access
On 2016-01-14 17:21, Nevin Liber wrote:
> On 14 January 2016 at 16:11, Matthew Woehlke wrote:
>> I'm really struggling to think of why you would have a (non-array)
>> tuple-like that has more than a few dozen members.
>=20
> A tuple-like data structure to capture an expression template, for
> instance. It can be arbitrarily large.
>=20
> Don't engineer in limits if you don't have to, and don't engineer in O(N)
> algorithms (even at compile time) if you don't have to. There is no reaso=
n
> not to expose it. What is the actual objection to doing so, other than we
> aren't providing the absolute barest possible minimal set of operations b=
y
> doing so.
How does my suggestion=C2=B9 engineer in limits? How does it fail to expose
the ability for the user to provide tuple_size?
I think you must be misunderstanding what I am proposing. I am *NOT IN
ANY WAY* suggesting that the user *can't* provide their own tuple_size.
I am only suggesting that they should have the *option* of using one
provided by the compiler instead.
If the O(N) algorithm is going to be a problem, just provide tuple_size
explicitly, the same as would be *required* without IPTS. All IPTS does
is make it optional rather than required, by having the compiler provide
an implementation *IFF* the user does not.
(=C2=B9 Hereafter, IPTS, or implicitly provided tuple_size, for brevity.)
>> On 2016-01-14 16:40, Nevin Liber wrote:
>>> One use case for knowing N is when you want to get things in
>>> reverse order. Users shouldn't have to go through hoops just to
>>> figure out how to do that, nor write code that requires O(N)
>>> template instantiations to calculate it, because when they get it
>>> wrong, they'll still get horrible error messages.
>>=20
>> ...but it *doesn't* "require O(N) template instantiations". That's just
>> the case *if you don't provide a specialization*. If you have a type for
>> which N is large, then provide your own tuple_size.
>=20
> Why should I have to? This is why people rightly complain about C++. We
> really don't have to make everything hard to accomplish.
I don't get it. Without IPTS, either you provide an explicit tuple_size,
or tuple_size is just not available for that type. With IPTS, you have
tuple_size if you have get<N>, but it might be slow if you don't provide
an explicit tuple_size.
IOW, tuple_size is available if (TSPE =3D tuple_size provided explicitly):
no get<N> no TSPE TSPE
no IPTS: no no yes (fast)
with IPTS: no yes (slow) yes (fast)
The only change is if an explicit tuple_size is not provided. IPTS makes
it easier to use a tuple-like because you don't *always* have to provide
tuple_size explicitly.
Not providing IPTS makes it harder to implement a tuple-like, because
now I *have* to provide two functions, *always*, when in many cases one
ought to suffice. It almost seems like you're arguing my point for me...
--=20
Matthew
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: Matthew Woehlke <mwoehlke.floss@gmail.com>
Date: Fri, 15 Jan 2016 11:47:28 -0500
Raw View
On 2016-01-15 11:18, Tony V E wrote:
> Yes I understand nothing precludes it. I wonder if there is value in=20
> it. Whether it has value might sway which way I'd like to see things
> implemented.
>=20
> For example, if it had value, then *always* (ie mandating)=20
> calculating size from get would be bad. =E2=80=8EOn the other hand, if we=
=20
> want to prevent that craziness, maybe we should mandate it.
IMHO *always* calculating is bad for reasons that Vicente already gave
:-). Ergo, I don't think we should mandate that. Perhaps we could
somehow enforce that get<O..N-1>(T) (N =3D=3D tuple_size<T>()) must work an=
d
get<N>(T) must not, but that seems complicated and excessive. I feel
like in this case it's sufficient to say "don't do that" if it would
break things.
As to whether or not it's interesting to have get<N>(T) work for one or
more values of N > tuple_size<T>(), I'm not strongly opinionated. It
doesn't sound inherently crazy to me, FWIW.
--=20
Matthew
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
.
Author: "Vicente J. Botet Escriba" <vicente.botet@wanadoo.fr>
Date: Fri, 15 Jan 2016 21:43:41 +0100
Raw View
This is a multi-part message in MIME format.
--------------040103000307010603050203
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: quoted-printable
Le 15/01/2016 17:47, Matthew Woehlke a =C3=A9crit :
> On 2016-01-15 11:18, Tony V E wrote:
>> Yes I understand nothing precludes it. I wonder if there is value in
>> it. Whether it has value might sway which way I'd like to see things
>> implemented.
>>
>> For example, if it had value, then *always* (ie mandating)
>> calculating size from get would be bad. =E2=80=8EOn the other hand, if w=
e
>> want to prevent that craziness, maybe we should mandate it.
> IMHO *always* calculating is bad for reasons that Vicente already gave
> :-). Ergo, I don't think we should mandate that. Perhaps we could
> somehow enforce that get<O..N-1>(T) (N =3D=3D tuple_size<T>()) must work =
and
> get<N>(T) must not, but that seems complicated and excessive. I feel
> like in this case it's sufficient to say "don't do that" if it would
> break things.
>
> As to whether or not it's interesting to have get<N>(T) work for one or
> more values of N > tuple_size<T>(), I'm not strongly opinionated. It
> doesn't sound inherently crazy to me, FWIW.
>
If the problem is to solve the possible de-synchronization, I believe=20
that the author could and should add unit test checking the behavior of=20
get<K>(Tpl) respect to tuple_size<Tpl>::value.
Vicente
--=20
---=20
You received this message because you are subscribed to the Google Groups "=
ISO C++ Standard - Future Proposals" group.
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to std-proposals+unsubscribe@isocpp.org.
To post to this group, send email to std-proposals@isocpp.org.
Visit this group at https://groups.google.com/a/isocpp.org/group/std-propos=
als/.
--------------040103000307010603050203
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable
<html>
<head>
<meta content=3D"text/html; charset=3Dutf-8" http-equiv=3D"Content-Type=
">
</head>
<body bgcolor=3D"#FFFFFF" text=3D"#000000">
<div class=3D"moz-cite-prefix">Le 15/01/2016 17:47, Matthew Woehlke a
=C3=A9crit=C2=A0:<br>
</div>
<blockquote cite=3D"mid:n7b7r1$uum$1@ger.gmane.org" type=3D"cite">
<pre wrap=3D"">On 2016-01-15 11:18, Tony V E wrote:
</pre>
<blockquote type=3D"cite">
<pre wrap=3D"">Yes I understand nothing precludes it. I wonder if t=
here is value in=20
it. Whether it has value might sway which way I'd like to see things
implemented.
For example, if it had value, then *always* (ie mandating)=20
calculating size from get would be bad. =E2=80=8EOn the other hand, if we=
=20
want to prevent that craziness, maybe we should mandate it.
</pre>
</blockquote>
<pre wrap=3D"">
IMHO *always* calculating is bad for reasons that Vicente already gave
:-). Ergo, I don't think we should mandate that. Perhaps we could
somehow enforce that get<O..N-1>(T) (N =3D=3D tuple_size<T>()) =
must work and
get<N>(T) must not, but that seems complicated and excessive. I feel
like in this case it's sufficient to say "don't do that" if it would
break things.
As to whether or not it's interesting to have get<N>(T) work for one =
or
more values of N > tuple_size<T>(), I'm not strongly opinionated. =
It
doesn't sound inherently crazy to me, FWIW.
</pre>
</blockquote>
<font size=3D"+1">If the problem is to solve the possible
de-synchronization, I believe that the author could and should add
unit test checking the behavior of get<K>(</font><font
size=3D"+1"><font size=3D"+1">Tpl</font>) respect to
tuple_size<Tpl>::value.<br>
<br>
Vicente<br>
</font>
</body>
</html>
<p></p>
-- <br />
<br />
--- <br />
You received this message because you are subscribed to the Google Groups &=
quot;ISO C++ Standard - Future Proposals" group.<br />
To unsubscribe from this group and stop receiving emails from it, send an e=
mail to <a href=3D"mailto:std-proposals+unsubscribe@isocpp.org">std-proposa=
ls+unsubscribe@isocpp.org</a>.<br />
To post to this group, send email to <a href=3D"mailto:std-proposals@isocpp=
..org">std-proposals@isocpp.org</a>.<br />
Visit this group at <a href=3D"https://groups.google.com/a/isocpp.org/group=
/std-proposals/">https://groups.google.com/a/isocpp.org/group/std-proposals=
/</a>.<br />
--------------040103000307010603050203--
.