Re: Preliminary Droop-fit proportionality results

Etjon Basha via Election-Methods <[email protected]> Sun, 31 May 2026 19:33:51 +1000
Newsgroups gmane.politics.election-methods
Message-ID <CA+EJN6SmfK_k3fWgL=crRGguYPhSRoAcGZCPGLMLOQW5fWnXyw@mail.gmail.com>
--===============8472898130164075731==
Content-Type: multipart/alternative; boundary="0000000000004d11a3065319c7af"

--0000000000004d11a3065319c7af
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

Thank you for sharing these Kristofer,

Always a pleasure to see one's biases reinforced by independent sources,
with such a total Warren/Meek STV victory over Schultze. If only Warren had
outdone Meek, this would have been perfect.

Best regards,

Etjon

The only thing th

On Sun, 31 May 2026, 1:31=E2=80=AFam Kristofer Munsterhjelm via Election-Me=
thods, <
[email protected]> wrote:

> So I implemented a quick version of a spatial Droop proportionality
> measure:
>
> The voters are drawn from a standard normal over a 1D opinion space, and
> the candidates are drawn either from the same standard normal or a
> uniform distribution (odd iterations use one, even iterations use the
> other).[1] Each voter ranks the candidates in distance (and rates them
> according to negative distance).
>
> The "ideal" kth candidate is the k/(s+1)th quantile of the (drawn) voter
> distribution; the error is then the square root of the sum of squares
> between each ideal kth candidate and the kth candidate actually elected
> (in order from leftmost to rightmost).
>
> So, for instance, if it's a two-candidate election and the voters'
> quantiles are -0.43 and +0.43, and method X elects candidates who are at
> -0.27 and +0.34 respectively. Then the error for method X in that
> election is the Euclidean distance between (-0.43, 0.43) and (-0.27,
> 0.34) ~=3D 0.184.[2]
>
> I then calculated the VSE over this measure with 4096 voters, 10
> candidates, and different numbers of seats. Here are some results with
> some comments afterwards.
>
> Note that a bad result (low VSE) only gives an indication that the
> method doesn't select candidates close to the Droop quantiles, but not
> *why*. It doesn't distinguish between that happening because the method
> has a different notion of proportionality, or because it has no such
> notion and is all over the place.
>
> (I'd like to implement something that determines what that notion of
> proportionality is if there is one. But I should read Ryan's post more
> thoroughly before I do that.)
>
> 2 seats:
> Name                             VSE
> Log-penalty voting              -1.47
> Random ballots                   0.29
> Isoelastic (r=3D1)                 0.32
> Isoelastic (r=3D10)                0.37
> Schulze STV                      0.45
> SNTV                             0.46
> QPQ (0.01)                       0.47
> Psi voting (delta=3D0)             0.52
> Psi voting (Sainte-Lagu=C3=AB)        0.55
> Psi voting (d'Hondt)             0.56
> QPQ (Sainte-Lagu=C3=AB)               0.59
> Isoelastic (r=3D2)                 0.64
> (Bloc) Normalized 0-20 Range     0.65
> (Bloc) Borda                     0.68
> PSC-CLE                          0.72
> QPQ (d'Hondt)                    0.79
> Meek/Warren STV                  0.80
> STV                              0.80
> STV-ME(Schulze)                  0.80
> Harmonic voting (delta=3D0.02)     0.80
> Harmonic voting (d'Hondt)        0.87
> Harmonic voting (Sainte-Lagu=C3=AB)   0.93
>
> 5 seats:
> Name                             VSE
> Log-penalty voting              -1.36
> Isoelastic (r=3D10)               -0.30
> Schulze STV                      0.21
> QPQ (0.01)                       0.32
> Isoelastic (r=3D1)                 0.36
> Psi voting (delta=3D0)             0.39
> Random ballots                   0.38
> Psi voting (Sainte-Lagu=C3=AB)        0.40
> Psi voting (d'Hondt)             0.41
> (Bloc) Normalized 0-20 Range     0.44
> Isoelastic (r=3D2)                 0.44
> (Bloc) Borda                     0.49
> Harmonic voting (delta=3D0.02)     0.59
> SNTV                             0.67
> Harmonic voting (d'Hondt)        0.76
> PSC-CLE                          0.81
> QPQ (Sainte-Lagu=C3=AB)               0.83
> Harmonic voting (Sainte-Lagu=C3=AB)   0.89
> STV                              0.94
> QPQ (d'Hondt)                    0.94
> Meek/Warren STV                  0.94
> STV-ME(Schulze)                  0.96
>
> 9 seats:
> Name                             VSE
> Log-penalty voting              -0.70
> Schulze STV                      0.00
> Isoelastic (r=3D10)                0.10
> Isoelastic (r=3D1)                 0.19
> Random ballots                   0.41
> SNTV                             0.57
> Harmonic voting (delta=3D0.02)     0.57
> QPQ (0.01)                       0.57
> Isoelastic (r=3D2)                 0.71
> (Bloc) Normalized 0-20 Range     0.71
> (Bloc) Borda                     0.81
> Psi voting (d'Hondt)             0.82
> Psi voting (Sainte-Lagu=C3=AB)        0.82
> Psi voting (delta=3D0)             0.83
> Harmonic voting (d'Hondt)        0.90
> QPQ (Sainte-Lagu=C3=AB)               0.91
> PSC-CLE                          0.92
> Harmonic voting (Sainte-Lagu=C3=AB)   0.95
> STV                              0.98
> STV-ME(Schulze)                  0.98
> QPQ (d'Hondt)                    0.998
> Meek/Warren STV                  0.998
>
> ("Random ballots" is the method where one repeatedly picks a random
> voter and elects their favorite continuing candidate.)
>
> The most surprising part, to me, is the bad fit of Schulze STV and how
> little IRV's problems seem to generalize to STV, at least by this
> measure. It's also a bit surprising that for most tunable methods,
> d'Hondt does better than Sainte-Lagu=C3=AB, but for Harmonic the opposite=
 is
> true.
>
> Harmonic seems to do better than Psi, just as it did in the my earlier
> simulations.
>
> In retrospect, it's not that surprising that Harmonic is beaten by
> ranked methods because it doesn't optimize the same thing (just like
> single-winner Range has a different objective than majority rule).
>
> If I were to guess, I'd imagine that there is some kind of property
> that, if passed, leads to good performance here; and STV passes its due
> to the way it works, but Schulze STV doesn't because it was designed
> primarily to be strategy-resistant. But that's just a guess.
>
> -km
>
> [1] My point with doing this was to penalize methods that just make
> assumptions about the voter distribution from the candidate distribution
> or vice versa.
>
> [2] Ideally, the error measure should be designed to generalize to
> something like the Sainte-Lagu=C3=AB index in the party list case, but I =
just
> chose something easy and broadly reasonable here.
> ----
> Election-Methods mailing list - see https://electorama.com/em for list
> info
>

--0000000000004d11a3065319c7af
Content-Type: text/html; charset="UTF-8"
Content-Transfer-Encoding: quoted-printable

<div dir=3D"auto">Thank you for sharing these Kristofer,<div dir=3D"auto"><=
br></div><div dir=3D"auto">Always a pleasure to see one&#39;s biases reinfo=
rced by independent sources, with such a total Warren/Meek STV victory over=
 Schultze. If only Warren had outdone Meek, this would have been perfect.</=
div><div dir=3D"auto"><br></div><div dir=3D"auto">Best regards,</div><div d=
ir=3D"auto"><br></div><div dir=3D"auto">Etjon</div><div dir=3D"auto"><br></=
div><div dir=3D"auto">The only thing th</div></div><br><div class=3D"gmail_=
quote gmail_quote_container"><div dir=3D"ltr" class=3D"gmail_attr">On Sun, =
31 May 2026, 1:31=E2=80=AFam Kristofer Munsterhjelm via Election-Methods, &=
lt;<a href=3D"mailto:[email protected]">election-method=
[email protected]</a>&gt; wrote:<br></div><blockquote class=3D"gmail_q=
uote" style=3D"margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1e=
x">So I implemented a quick version of a spatial Droop proportionality meas=
ure:<br>
<br>
The voters are drawn from a standard normal over a 1D opinion space, and <b=
r>
the candidates are drawn either from the same standard normal or a <br>
uniform distribution (odd iterations use one, even iterations use the <br>
other).[1] Each voter ranks the candidates in distance (and rates them <br>
according to negative distance).<br>
<br>
The &quot;ideal&quot; kth candidate is the k/(s+1)th quantile of the (drawn=
) voter <br>
distribution; the error is then the square root of the sum of squares <br>
between each ideal kth candidate and the kth candidate actually elected <br=
>
(in order from leftmost to rightmost).<br>
<br>
So, for instance, if it&#39;s a two-candidate election and the voters&#39; =
<br>
quantiles are -0.43 and +0.43, and method X elects candidates who are at <b=
r>
-0.27 and +0.34 respectively. Then the error for method X in that <br>
election is the Euclidean distance between (-0.43, 0.43) and (-0.27, <br>
0.34) ~=3D 0.184.[2]<br>
<br>
I then calculated the VSE over this measure with 4096 voters, 10 <br>
candidates, and different numbers of seats. Here are some results with <br>
some comments afterwards.<br>
<br>
Note that a bad result (low VSE) only gives an indication that the <br>
method doesn&#39;t select candidates close to the Droop quantiles, but not =
<br>
*why*. It doesn&#39;t distinguish between that happening because the method=
 <br>
has a different notion of proportionality, or because it has no such <br>
notion and is all over the place.<br>
<br>
(I&#39;d like to implement something that determines what that notion of <b=
r>
proportionality is if there is one. But I should read Ryan&#39;s post more =
<br>
thoroughly before I do that.)<br>
<br>
2 seats:<br>
Name=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0VSE<br>
Log-penalty voting=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 -1.47<br=
>
Random ballots=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A00.29<br>
Isoelastic (r=3D1)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A00.32<br>
Isoelastic (r=3D10)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
0.37<br>
Schulze STV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 0.45<br>
SNTV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00.46<br>
QPQ (0.01)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A00.47<br>
Psi voting (delta=3D0)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00.52<=
br>
Psi voting (Sainte-Lagu=C3=AB)=C2=A0 =C2=A0 =C2=A0 =C2=A0 0.55<br>
Psi voting (d&#39;Hondt)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00.5=
6<br>
QPQ (Sainte-Lagu=C3=AB)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A00.59<br>
Isoelastic (r=3D2)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A00.64<br>
(Bloc) Normalized 0-20 Range=C2=A0 =C2=A0 =C2=A00.65<br>
(Bloc) Borda=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A00.68<br>
PSC-CLE=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 0.72<br>
QPQ (d&#39;Hondt)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 0.79<br>
Meek/Warren STV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 0.80<br>
STV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 0.80<br>
STV-ME(Schulze)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 0.80<br>
Harmonic voting (delta=3D0.02)=C2=A0 =C2=A0 =C2=A00.80<br>
Harmonic voting (d&#39;Hondt)=C2=A0 =C2=A0 =C2=A0 =C2=A0 0.87<br>
Harmonic voting (Sainte-Lagu=C3=AB)=C2=A0 =C2=A00.93<br>
<br>
5 seats:<br>
Name=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0VSE<br>
Log-penalty voting=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 -1.36<br=
>
Isoelastic (r=3D10)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0-=
0.30<br>
Schulze STV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 0.21<br>
QPQ (0.01)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A00.32<br>
Isoelastic (r=3D1)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A00.36<br>
Psi voting (delta=3D0)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00.39<=
br>
Random ballots=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A00.38<br>
Psi voting (Sainte-Lagu=C3=AB)=C2=A0 =C2=A0 =C2=A0 =C2=A0 0.40<br>
Psi voting (d&#39;Hondt)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00.4=
1<br>
(Bloc) Normalized 0-20 Range=C2=A0 =C2=A0 =C2=A00.44<br>
Isoelastic (r=3D2)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A00.44<br>
(Bloc) Borda=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A00.49<br>
Harmonic voting (delta=3D0.02)=C2=A0 =C2=A0 =C2=A00.59<br>
SNTV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00.67<br>
Harmonic voting (d&#39;Hondt)=C2=A0 =C2=A0 =C2=A0 =C2=A0 0.76<br>
PSC-CLE=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 0.81<br>
QPQ (Sainte-Lagu=C3=AB)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A00.83<br>
Harmonic voting (Sainte-Lagu=C3=AB)=C2=A0 =C2=A00.89<br>
STV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 0.94<br>
QPQ (d&#39;Hondt)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 0.94<br>
Meek/Warren STV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 0.94<br>
STV-ME(Schulze)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 0.96<br>
<br>
9 seats:<br>
Name=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0VSE<br>
Log-penalty voting=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 -0.70<br=
>
Schulze STV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 0.00<br>
Isoelastic (r=3D10)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
0.10<br>
Isoelastic (r=3D1)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A00.19<br>
Random ballots=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A00.41<br>
SNTV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00.57<br>
Harmonic voting (delta=3D0.02)=C2=A0 =C2=A0 =C2=A00.57<br>
QPQ (0.01)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A00.57<br>
Isoelastic (r=3D2)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A00.71<br>
(Bloc) Normalized 0-20 Range=C2=A0 =C2=A0 =C2=A00.71<br>
(Bloc) Borda=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A00.81<br>
Psi voting (d&#39;Hondt)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00.8=
2<br>
Psi voting (Sainte-Lagu=C3=AB)=C2=A0 =C2=A0 =C2=A0 =C2=A0 0.82<br>
Psi voting (delta=3D0)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A00.83<=
br>
Harmonic voting (d&#39;Hondt)=C2=A0 =C2=A0 =C2=A0 =C2=A0 0.90<br>
QPQ (Sainte-Lagu=C3=AB)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A00.91<br>
PSC-CLE=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 =C2=A0 =C2=A0 =C2=A0 0.92<br>
Harmonic voting (Sainte-Lagu=C3=AB)=C2=A0 =C2=A00.95<br>
STV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 0.98<br>
STV-ME(Schulze)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 0.98<br>
QPQ (d&#39;Hondt)=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =
=C2=A0 =C2=A0 0.998<br>
Meek/Warren STV=C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=A0 =C2=
=A0 0.998<br>
<br>
(&quot;Random ballots&quot; is the method where one repeatedly picks a rand=
om <br>
voter and elects their favorite continuing candidate.)<br>
<br>
The most surprising part, to me, is the bad fit of Schulze STV and how <br>
little IRV&#39;s problems seem to generalize to STV, at least by this <br>
measure. It&#39;s also a bit surprising that for most tunable methods, <br>
d&#39;Hondt does better than Sainte-Lagu=C3=AB, but for Harmonic the opposi=
te is <br>
true.<br>
<br>
Harmonic seems to do better than Psi, just as it did in the my earlier <br>
simulations.<br>
<br>
In retrospect, it&#39;s not that surprising that Harmonic is beaten by <br>
ranked methods because it doesn&#39;t optimize the same thing (just like <b=
r>
single-winner Range has a different objective than majority rule).<br>
<br>
If I were to guess, I&#39;d imagine that there is some kind of property <br=
>
that, if passed, leads to good performance here; and STV passes its due <br=
>
to the way it works, but Schulze STV doesn&#39;t because it was designed <b=
r>
primarily to be strategy-resistant. But that&#39;s just a guess.<br>
<br>
-km<br>
<br>
[1] My point with doing this was to penalize methods that just make <br>
assumptions about the voter distribution from the candidate distribution <b=
r>
or vice versa.<br>
<br>
[2] Ideally, the error measure should be designed to generalize to <br>
something like the Sainte-Lagu=C3=AB index in the party list case, but I ju=
st <br>
chose something easy and broadly reasonable here.<br>
----<br>
Election-Methods mailing list - see <a href=3D"https://electorama.com/em" r=
el=3D"noreferrer noreferrer" target=3D"_blank">https://electorama.com/em</a=
> for list info<br>
</blockquote></div>

--0000000000004d11a3065319c7af--

--===============8472898130164075731==
Content-Type: text/plain; charset="us-ascii"
MIME-Version: 1.0
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

----
Election-Methods mailing list - see https://electorama.com/em for list info

--===============8472898130164075731==--