smoke-me branches, github, travis - wanting it all...

As Jim correctly observed, this should be its own message:

The "migration to github" was described as being about bugs from RT to
Github, with the potential of effectively swapping "master" and "mirror"
between https://perl5.git.perl.org/perl.git and GitHub

To my knowledge there's been nothing mentioned about how everything else is
supposed to work. Historically we'd been using smoke-me branches to get
automated testing. github "thinks" otherwise about how to describe something
that would like testing, but the existing smokers don't know that.

Likewise, historically all the requests I made in the other message here
went to the list. In the brave new future, er, present, what *is* the plan
for what goes where? We're now onto our third bug tracker, third hosting of
version control, and not-sure-what iteration of mail archives.

I feel that Github itself is in safer hands owned by Microsoft than in its
previous state (gratuitously cashflow negative), but I'm wary of assuming
that anything is going to be around forever, or is defaulting to what we
really need.


So how are things supposed to be done?

specifically - exploiting both any existing smoke-me smokers, but also
github and Travis (and anything else that is "free")

and more generally - getting the most out of github, without getting
railroaded by defaults and features that don't fit what we need

Nicholas Clark
0
nick
11/6/2019 2:18:25 PM
perl.perl5.porters 48062 articles. 1 followers. Follow

9 Replies
69 Views

Similar Articles

[PageSpeed] 43

On Wed, Nov 6, 2019 at 8:18 AM Nicholas Clark <nick@ccl4.org> wrote:
> So how are things supposed to be done?

> and more generally - getting the most out of github, without getting
> railroaded by defaults and features that don't fit what we need

My current pet peeve is that there is no replacement for the  "git
blame" interface of standard gitweb.  Try to do any blame view in
GitHub on any file more than a few hundred lines long and you'll get a
great big angry unicorn icon and a message that says, "This page is
taking way too long to load. Sorry about that. Please try refreshing
and contact us if the problem persists."  I don't know what metrics
they are using exactly, but whether it's number of lines in the file
or number of commits on the file, it gives up way too easily and hangs
up on you in a fraction of a second.  There seems to have been an
explicit decision made that making a version control system show
versions is too expensive and one shouldn't ask for it.

I know we had no choice, really, and that BitBucket or GitLab or
SourceForge or whatever would have had various different and possibly
worse problems. But not being able to do archive diving for a
long-running project with large source files is a major defect in
GitHub, and is something that standard gitweb does quite handily out
of the box.  I spent an hour a week or two ago trying to teach myself
how to do git blame with line ranges from the command line and it
didn't go well.  Is there any chance we could get
https://perl5.git.perl.org/perl.git to be a reasonably up-to-date
mirror?  If so, then all of the things GitHub doesn't do would be less
of a problem.
0
craig
11/8/2019 4:44:21 AM
On Wed, 6 Nov 2019, Nicholas Clark wrote:

> As Jim correctly observed, this should be its own message:
>
> The "migration to github" was described as being about bugs from RT to
> Github, with the potential of effectively swapping "master" and "mirror"
> between https://perl5.git.perl.org/perl.git and GitHub
>
> To my knowledge there's been nothing mentioned about how everything else is
> supposed to work. Historically we'd been using smoke-me branches to get
> automated testing. github "thinks" otherwise about how to describe something
> that would like testing, but the existing smokers don't know that.

Someone that is part of the Perl organization could set up repository web 
hooks to send events (like new branch) to a CI server (like Travis or 
Jenkins) and automatically kick off smokes on their machines that would be 
reported on the PRs are checks passing or failing. We run that setup with 
Jenkins at $WORK.

> Likewise, historically all the requests I made in the other message here
> went to the list. In the brave new future, er, present, what *is* the plan
> for what goes where? We're now onto our third bug tracker, third hosting of
> version control, and not-sure-what iteration of mail archives.

Carlos Guevara (it appears) and I have machines that smoke every 
"smoke-me" branch that appears, so no requesting necessary.

To get the reports, check the smoking reports mailing list or visit a page 
like: 
http://perl.develop-help.com/?b=smoke-me%2Fnicholas%2FIO-Handle-getline_XS

There's also http://perl5.test-smoke.org/search but it inexplicably 
doesn't allow searching by branch.

I stopped Cc:'ing people directly on smoke reports a while back due to 
controversy over whether that was worthwhile.

> So how are things supposed to be done?
>
> specifically - exploiting both any existing smoke-me smokers, but also
> github and Travis (and anything else that is "free")
>
> and more generally - getting the most out of github, without getting
> railroaded by defaults and features that don't fit what we need

The one nice thing that GitHub integration could give is I could set up a 
Jenkins server that OAuths to GitHub and lets anyone in the Perl 
organization kick off immediate builds with arbitrary configurations 
they've selected, instead of only asynchronous builds using the profiles 
I've chosen to run smokers under.

-- 
George Greer
0
perl
11/10/2019 6:23:40 AM
On Thu, Nov 07, 2019 at 10:44:21PM -0600, Craig A. Berry wrote:
> didn't go well.  Is there any chance we could get
> https://perl5.git.perl.org/perl.git to be a reasonably up-to-date
> mirror?  If so, then all of the things GitHub doesn't do would be less
> of a problem.

I have a mirror visible via gitweb at:

http://git.imager.perl.org/perl5.git

mirrored every 20 minutes.

I'm moving this to a new linode, so URLs might change.

I've been experimenting with other gitweb-ish UIs, but they've tended
to be much slower than gitweb.

Tony
0
tony
11/11/2019 2:42:22 AM
On Sun, Nov 10, 2019 at 8:42 PM Tony Cook <tony@develop-help.com> wrote:
>
> On Thu, Nov 07, 2019 at 10:44:21PM -0600, Craig A. Berry wrote:
> > didn't go well.  Is there any chance we could get
> > https://perl5.git.perl.org/perl.git to be a reasonably up-to-date
> > mirror?  If so, then all of the things GitHub doesn't do would be less
> > of a problem.
>
> I have a mirror visible via gitweb at:
>
> http://git.imager.perl.org/perl5.git
>
> mirrored every 20 minutes.

Thank you!  This has been very, very helpful.

> I'm moving this to a new linode, so URLs might change.

Keep us posted.
0
craig
11/17/2019 8:12:11 PM
--Apple-Mail=_B46D42A0-EE8F-4BEB-8801-38EC79ADA00D
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii



> On Nov 7, 2019, at 10:44 PM, Craig A. Berry <craig.a.berry@gmail.com> =
wrote:
>=20
> On Wed, Nov 6, 2019 at 8:18 AM Nicholas Clark <nick@ccl4.org> wrote:
>> So how are things supposed to be done?
>=20
>> and more generally - getting the most out of github, without getting
>> railroaded by defaults and features that don't fit what we need
>=20
> My current pet peeve is that there is no replacement for the  "git
> blame" interface of standard gitweb.  Try to do any blame view in
> GitHub on any file more than a few hundred lines long and you'll get a
> great big angry unicorn icon and a message that says, "This page is
> taking way too long to load. Sorry about that. Please try refreshing
> and contact us if the problem persists."  I don't know what metrics
> they are using exactly, but whether it's number of lines in the file
> or number of commits on the file, it gives up way too easily and hangs
> up on you in a fraction of a second.  There seems to have been an
> explicit decision made that making a version control system show
> versions is too expensive and one shouldn't ask for it.
>=20
> I know we had no choice, really, and that BitBucket or GitLab or
> SourceForge or whatever would have had various different and possibly
> worse problems. But not being able to do archive diving for a
> long-running project with large source files is a major defect in
> GitHub, and is something that standard gitweb does quite handily out
> of the box.  I spent an hour a week or two ago trying to teach myself
> how to do git blame with line ranges from the command line and it
> didn't go well.  Is there any chance we could get
> https://perl5.git.perl.org/perl.git to be a reasonably up-to-date
> mirror?  If so, then all of the things GitHub doesn't do would be less
> of a problem.

Craig,=20

I opened a case (https://github.com/Perl/perl5/issues/17310 =
<https://github.com/Perl/perl5/issues/17310>) to address this issue. I =
have an open channel to github and they are monitoring our migration =
project (https://github.com/Perl/perl5/projects/1 =
<https://github.com/Perl/perl5/projects/1>). They might be able to =
address our issue so I've made sure it's included there. Any additional =
details you can give will help.

As for the backup mirror, I'm a month out and I've still not been able =
to get the original primary mirror reversed. I think dromedary.p5h.org =
<http://dromedary.p5h.org/> (currently a digital ocean droplet) is =
probably going to become the backup mirror. I'm trying to get the A =
record moved for the original repo at which point this might solve some =
issues at least temporarily.

Thanks,
Todd



--Apple-Mail=_B46D42A0-EE8F-4BEB-8801-38EC79ADA00D
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=us-ascii

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dus-ascii"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" class=3D""><br =
class=3D""><div><br class=3D""><blockquote type=3D"cite" class=3D""><div =
class=3D"">On Nov 7, 2019, at 10:44 PM, Craig A. Berry &lt;<a =
href=3D"mailto:craig.a.berry@gmail.com" =
class=3D"">craig.a.berry@gmail.com</a>&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><div class=3D"">On =
Wed, Nov 6, 2019 at 8:18 AM Nicholas Clark &lt;<a =
href=3D"mailto:nick@ccl4.org" class=3D"">nick@ccl4.org</a>&gt; wrote:<br =
class=3D""><blockquote type=3D"cite" class=3D"">So how are things =
supposed to be done?<br class=3D""></blockquote><br class=3D""><blockquote=
 type=3D"cite" class=3D"">and more generally - getting the most out of =
github, without getting<br class=3D"">railroaded by defaults and =
features that don't fit what we need<br class=3D""></blockquote><br =
class=3D"">My current pet peeve is that there is no replacement for the =
&nbsp;"git<br class=3D"">blame" interface of standard gitweb. &nbsp;Try =
to do any blame view in<br class=3D"">GitHub on any file more than a few =
hundred lines long and you'll get a<br class=3D"">great big angry =
unicorn icon and a message that says, "This page is<br class=3D"">taking =
way too long to load. Sorry about that. Please try refreshing<br =
class=3D"">and contact us if the problem persists." &nbsp;I don't know =
what metrics<br class=3D"">they are using exactly, but whether it's =
number of lines in the file<br class=3D"">or number of commits on the =
file, it gives up way too easily and hangs<br class=3D"">up on you in a =
fraction of a second. &nbsp;There seems to have been an<br =
class=3D"">explicit decision made that making a version control system =
show<br class=3D"">versions is too expensive and one shouldn't ask for =
it.<br class=3D""><br class=3D"">I know we had no choice, really, and =
that BitBucket or GitLab or<br class=3D"">SourceForge or whatever would =
have had various different and possibly<br class=3D"">worse problems. =
But not being able to do archive diving for a<br class=3D"">long-running =
project with large source files is a major defect in<br class=3D"">GitHub,=
 and is something that standard gitweb does quite handily out<br =
class=3D"">of the box. &nbsp;I spent an hour a week or two ago trying to =
teach myself<br class=3D"">how to do git blame with line ranges from the =
command line and it<br class=3D"">didn't go well. &nbsp;Is there any =
chance we could get<br class=3D""><a =
href=3D"https://perl5.git.perl.org/perl.git" =
class=3D"">https://perl5.git.perl.org/perl.git</a> to be a reasonably =
up-to-date<br class=3D"">mirror? &nbsp;If so, then all of the things =
GitHub doesn't do would be less<br class=3D"">of a problem.<br =
class=3D""></div></div></blockquote></div><br class=3D""><div =
class=3D"">Craig,&nbsp;</div><div class=3D""><br class=3D""></div><div =
class=3D"">I opened a case (<a =
href=3D"https://github.com/Perl/perl5/issues/17310" =
class=3D"">https://github.com/Perl/perl5/issues/17310</a>)&nbsp;to =
address this issue. I have an open channel to github and they are =
monitoring our migration project (<a =
href=3D"https://github.com/Perl/perl5/projects/1" =
class=3D"">https://github.com/Perl/perl5/projects/1</a>). They might be =
able to address our issue so I've made sure it's included there. Any =
additional details you can give will help.</div><div class=3D""><br =
class=3D""></div><div class=3D"">As for the backup mirror, I'm a month =
out and I've still not been able to get the original primary mirror =
reversed. I think <a href=3D"http://dromedary.p5h.org" =
class=3D"">dromedary.p5h.org</a>&nbsp;(currently a digital ocean =
droplet) is probably going to become the backup mirror. I'm trying to =
get the A record moved for the original repo at which point this might =
solve some issues at least temporarily.</div><div class=3D""><br =
class=3D""></div><div class=3D"">Thanks,</div><div =
class=3D"">Todd</div><div class=3D""><br class=3D""></div><div =
class=3D""><br class=3D""></div></body></html>=

--Apple-Mail=_B46D42A0-EE8F-4BEB-8801-38EC79ADA00D--
0
toddr
11/18/2019 5:21:09 PM

> On Nov 10, 2019, at 12:23 AM, George Greer <perl@greerga.m-l.org> =
wrote:
>=20
> On Wed, 6 Nov 2019, Nicholas Clark wrote:
>=20
>> As Jim correctly observed, this should be its own message:
>>=20
>> The "migration to github" was described as being about bugs from RT =
to
>> Github, with the potential of effectively swapping "master" and =
"mirror"
>> between https://perl5.git.perl.org/perl.git and GitHub
>>=20
>> To my knowledge there's been nothing mentioned about how everything =
else is
>> supposed to work. Historically we'd been using smoke-me branches to =
get
>> automated testing. github "thinks" otherwise about how to describe =
something
>> that would like testing, but the existing smokers don't know that.
>=20
> Someone that is part of the Perl organization could set up repository =
web hooks to send events (like new branch) to a CI server (like Travis =
or Jenkins) and automatically kick off smokes on their machines that =
would be reported on the PRs are checks passing or failing. We run that =
setup with Jenkins at $WORK.

I am happy to give out webhooks to anyone that wants to smoke branches =
automatically. Travis (Ubuntu) and Github Actions (Windows) are already =
doing this.
0
toddr
11/18/2019 11:20:52 PM
On Mon, Nov 18, 2019 at 11:21 AM Todd Rinaldo <toddr@cpanel.net> wrote:

> I opened a case (https://github.com/Perl/perl5/issues/17310) to address t=
his issue. I have an open channel to github and they are monitoring our mig=
ration project (https://github.com/Perl/perl5/projects/1). They might be ab=
le to address our issue so I've made sure it's included there. Any addition=
al details you can give will help.

Thanks for those.  I think you found the relevant details: for a file
of any size, git blame just hangs up on you.  If there's any way to
turn off display of profile pictures or anything else that makes the
GitHub display more expensive than standard gitweb, that might be
worth looking into.  Otherwise I'm not sure what we can reasonably ask
the GitHub folks to do.
0
craig
11/19/2019 4:09:53 AM
On Sun, Nov 17, 2019 at 02:12:11PM -0600, Craig A. Berry wrote:
> On Sun, Nov 10, 2019 at 8:42 PM Tony Cook <tony@develop-help.com> wrote:
> > I have a mirror visible via gitweb at:
> >
> > http://git.imager.perl.org/perl5.git
> >
> > mirrored every 20 minutes.
> 
> Thank you!  This has been very, very helpful.
> 
> > I'm moving this to a new linode, so URLs might change.
> 
> Keep us posted.

This is now on the new linode (as DNS updates propagate) on the URL
above.

Tony
0
tony
12/28/2019 1:07:20 AM
--Apple-Mail=_260BD8BA-946F-486C-8B22-AC44CF9934F0
Content-Type: multipart/alternative;
	boundary="Apple-Mail=_EF3D589E-207D-46F2-A5A3-AB4A27B58351"


--Apple-Mail=_EF3D589E-207D-46F2-A5A3-AB4A27B58351
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii



> On Dec 27, 2019, at 7:07 PM, Tony Cook <tony@develop-help.com> wrote:
>=20
> On Sun, Nov 17, 2019 at 02:12:11PM -0600, Craig A. Berry wrote:
>> On Sun, Nov 10, 2019 at 8:42 PM Tony Cook <tony@develop-help.com> =
wrote:
>>> I have a mirror visible via gitweb at:
>>>=20
>>> http://git.imager.perl.org/perl5.git
>>>=20
>>> mirrored every 20 minutes.
>>=20
>> Thank you!  This has been very, very helpful.
>>=20
>>> I'm moving this to a new linode, so URLs might change.
>>=20
>> Keep us posted.
>=20
> This is now on the new linode (as DNS updates propagate) on the URL
> above.
>=20
> Tony

Sorry for the confusion guys. https://perl5.git.perl.org/perl.git =
<https://perl5.git.perl.org/perl.git> is a live mirror of github and =
gets a hook to update any time something is pushed to github.

Todd


--Apple-Mail=_EF3D589E-207D-46F2-A5A3-AB4A27B58351
Content-Transfer-Encoding: quoted-printable
Content-Type: text/html;
	charset=us-ascii

<html><head><meta http-equiv=3D"Content-Type" content=3D"text/html; =
charset=3Dus-ascii"></head><body style=3D"word-wrap: break-word; =
-webkit-nbsp-mode: space; line-break: after-white-space;" class=3D""><br =
class=3D""><div><br class=3D""><blockquote type=3D"cite" class=3D""><div =
class=3D"">On Dec 27, 2019, at 7:07 PM, Tony Cook &lt;<a =
href=3D"mailto:tony@develop-help.com" =
class=3D"">tony@develop-help.com</a>&gt; wrote:</div><br =
class=3D"Apple-interchange-newline"><div class=3D""><div class=3D"">On =
Sun, Nov 17, 2019 at 02:12:11PM -0600, Craig A. Berry wrote:<br =
class=3D""><blockquote type=3D"cite" class=3D"">On Sun, Nov 10, 2019 at =
8:42 PM Tony Cook &lt;<a href=3D"mailto:tony@develop-help.com" =
class=3D"">tony@develop-help.com</a>&gt; wrote:<br class=3D""><blockquote =
type=3D"cite" class=3D"">I have a mirror visible via gitweb at:<br =
class=3D""><br class=3D""><a href=3D"http://git.imager.perl.org/perl5.git"=
 class=3D"">http://git.imager.perl.org/perl5.git</a><br class=3D""><br =
class=3D"">mirrored every 20 minutes.<br class=3D""></blockquote><br =
class=3D"">Thank you! &nbsp;This has been very, very helpful.<br =
class=3D""><br class=3D""><blockquote type=3D"cite" class=3D"">I'm =
moving this to a new linode, so URLs might change.<br =
class=3D""></blockquote><br class=3D"">Keep us posted.<br =
class=3D""></blockquote><br class=3D"">This is now on the new linode (as =
DNS updates propagate) on the URL<br class=3D"">above.<br class=3D""><br =
class=3D"">Tony<br class=3D""></div></div></blockquote></div><br =
class=3D""><div class=3D"">Sorry for the confusion guys.&nbsp;<a =
href=3D"https://perl5.git.perl.org/perl.git" =
class=3D"">https://perl5.git.perl.org/perl.git</a>&nbsp;is a live mirror =
of github and gets a hook to update any time something is pushed to =
github.</div><div class=3D""><br class=3D""></div><div =
class=3D"">Todd</div><div class=3D""><br class=3D""></div></body></html>=

--Apple-Mail=_EF3D589E-207D-46F2-A5A3-AB4A27B58351--

--Apple-Mail=_260BD8BA-946F-486C-8B22-AC44CF9934F0
Content-Disposition: attachment;
	filename=smime.p7s
Content-Type: application/pkcs7-signature;
	name=smime.p7s
Content-Transfer-Encoding: base64

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
9eNKjkypdR8i0yW2sxpepwRIm4rx20rno0JKuriIMpoqr03E5cWapdfbM3wccaNDZvZe/S/Uvk2T
UxA8oDX3F5ZBykYQYVRR3SQ36gejH4v1pXWuN82IKPdsmTqQlo49ps+LbnTeef8hNfl7xZ8+cbDh
W5nv0qGPVgGt/biTkR7WwtMewu2mIr06MbiJBEF2rpn9OVXH+EYB7PmHfpsEkzGp0cul3AhSROpP
yx7d53Q97ANyH/yQc+jl9mXm7UHR5ymr+wM3/mwIbnYOz5BTk7kTAgMBAAGjggFkMIIBYDAfBgNV
HSMEGDAWgBRTeb9aqitKz1SA4dibwJ3ysgNmyzAdBgNVHQ4EFgQUCcDy/AvalNtf/ivfqJlCz8ng
rQAwDgYDVR0PAQH/BAQDAgGGMBIGA1UdEwEB/wQIMAYBAf8CAQAwHQYDVR0lBBYwFAYIKwYBBQUH
AwIGCCsGAQUFBwMEMBEGA1UdIAQKMAgwBgYEVR0gADBQBgNVHR8ESTBHMEWgQ6BBhj9odHRwOi8v
Y3JsLnVzZXJ0cnVzdC5jb20vVVNFUlRydXN0UlNBQ2VydGlmaWNhdGlvbkF1dGhvcml0eS5jcmww
dgYIKwYBBQUHAQEEajBoMD8GCCsGAQUFBzAChjNodHRwOi8vY3J0LnVzZXJ0cnVzdC5jb20vVVNF
UlRydXN0UlNBQWRkVHJ1c3RDQS5jcnQwJQYIKwYBBQUHMAGGGWh0dHA6Ly9vY3NwLnVzZXJ0cnVz
dC5jb20wDQYJKoZIhvcNAQEMBQADggIBAEFEdQCrOcIV9d6OlW0ycWiMAN0X13ocEDiQyOOxvRcx
kfO244K0oX7GzCGHYaqRbklCszzNWVT4DZU/vYrLaeVEDUbCYg+Ci7vhNn9dNqscbzN0xKBoOuRV
jPPWDechU70geT3pXCxpwi8EXwl+oiz7xpYfY99JSs3E/piztTSxljHitcPr5yoWr9lbkFR8KU3+
uGTZ11BfKfuSSaRrZFBv133SeY0d2AqvB9Dj2ZDaFZA0OQkkhfAqNgDpVRH99lQV4JSKx0N7/QAE
tMj6OF5dRXV6hhXuU3A0Eql4d0247oBpxvnfcmV95QfG8HP059hZSJe7T2wwC+IzXVDQO4xnnvrQ
J07ZWemxc/grFpgiG+o+pQxapF1bKftysi02Rl6uhdp5wbTeLeYzt2SI9oKSChwGDQQFixtkNnxu
wbdrTwvASwvViDPdIGzIQJrTBqriE5/9nzkXbDZmld8/7DyriJ/A73RIZllX4dH8mHqsRpU8NEX8
IQZWpHWGK5A5nVgvl7MxNfRlIvCvKZQTSnCL8oNqJgHXm6zCB4gBwDonM8V/2kuQAUVazVA3I376
eIWGwzjuqh3H88v7mNHzubLHm5h0ERCSQNz6UoHVZy3q5xeqbYSaxpDQz3lCNObL6sNaOQNh3Dcy
zqZJYTcGfuLlmC3AIteAAh7lbybJszYnMYIDxDCCA8ACAQEwgaswgZYxCzAJBgNVBAYTAkdCMRsw
GQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIxEDAOBgNVBAcTB1NhbGZvcmQxGDAWBgNVBAoTD1Nl
Y3RpZ28gTGltaXRlZDE+MDwGA1UEAxM1U2VjdGlnbyBSU0EgQ2xpZW50IEF1dGhlbnRpY2F0aW9u
IGFuZCBTZWN1cmUgRW1haWwgQ0ECEH20f1TAKbuAcUO+E4qNWHcwDQYJYIZIAWUDBAIBBQCgggHp
MBgGCSqGSIb3DQEJAzELBgkqhkiG9w0BBwEwHAYJKoZIhvcNAQkFMQ8XDTIwMDIwNDIwMDEyNFow
LwYJKoZIhvcNAQkEMSIEIEEyIzPXQbsN4gZzzka+1ZBdPR6Kf+IPHqx4cnCcEvDlMIG8BgkrBgEE
AYI3EAQxga4wgaswgZYxCzAJBgNVBAYTAkdCMRswGQYDVQQIExJHcmVhdGVyIE1hbmNoZXN0ZXIx
EDAOBgNVBAcTB1NhbGZvcmQxGDAWBgNVBAoTD1NlY3RpZ28gTGltaXRlZDE+MDwGA1UEAxM1U2Vj
dGlnbyBSU0EgQ2xpZW50IEF1dGhlbnRpY2F0aW9uIGFuZCBTZWN1cmUgRW1haWwgQ0ECEH20f1TA
KbuAcUO+E4qNWHcwgb4GCyqGSIb3DQEJEAILMYGuoIGrMIGWMQswCQYDVQQGEwJHQjEbMBkGA1UE
CBMSR3JlYXRlciBNYW5jaGVzdGVyMRAwDgYDVQQHEwdTYWxmb3JkMRgwFgYDVQQKEw9TZWN0aWdv
IExpbWl0ZWQxPjA8BgNVBAMTNVNlY3RpZ28gUlNBIENsaWVudCBBdXRoZW50aWNhdGlvbiBhbmQg
U2VjdXJlIEVtYWlsIENBAhB9tH9UwCm7gHFDvhOKjVh3MA0GCSqGSIb3DQEBAQUABIIBAIYCLV7Y
+Zef/NDgKYm25PjcGF622uLEXYIVQ0a6F3M+PgUs5b+63bFHTx62SQ7rYN9luJFs9kSVLaa598qH
bByY2XML4Zj2eyCeImhbRC5hkcEwuvdMEGMH5DaxAjC75VBKdB7PiFI3tRlk6Y0uVXW5hyTa/jeX
cSIYEtdmWBZqdNCQD+rwUiMqtsnqWqLvo+1ueuj6tiOJPZkO68FkOq0gjOpMJ3uRQeJvmBAA4mtM
4CJscS4EA6YNNet5hEDMDJ/13UiMlDldQXQD/ERK2C7aFauW2R8qvwSxpFkpzKW3CK462v2e6GDu
TpgRMO6TdsejyCvfmeX1a/gWChqKZIAAAAAAAAA=
--Apple-Mail=_260BD8BA-946F-486C-8B22-AC44CF9934F0--
0
toddr
2/4/2020 8:01:24 PM
Reply: