Ames 60 percent, one row per ballot: evidence account
In plain words
The count under plurality elected Ames.
A comparison audit then compared sampled paper ballots to their machine records at a 10% risk limit.
The sample supports the outcome.
No sampled paper ballot disagreed with its machine record.
The hand reads came from the file, not from a sealed box.
Container custody has findings that block a confirmed outcome.
Outcome status: preliminary. Software tallies stay preliminary until an audit on the record confirms them or a full hand count of the record replaces them.
How the sample was chosen
This seed names no sealed machine records and no published box list. This account does not show the sample was chosen before anyone could see the ballots.
The contest
Title: Ames 60 percent, one row per ballot
Candidates: Ames, Baird.
Records in this count: 500.
Ballot file: comparison-cvrs
Source: Synthetic committed CVRs for the Lindeman and Stark 2012 comparison example (diluted margin 20%).
300 ballots mark Ames first, 200 mark Baird first. Each row is one physical ballot. Paper rankings are omitted, so they match the committed CVRs. This is a fixture, not a sealed container.
Where the records sat:
| Batch | Ballots | Container count | Seal | Custody |
|---|---|---|---|---|
| box-1 | 200 | 200 | S-101 | 3 transfers |
| box-2 | 200 | 192 | S-102 | 2 transfers |
| box-3 | 100 | 100 | S-103 | 3 transfers |
What was configured
Configuration version: comparison-cvrs-custody-gap-plurality-v1.
Configuration fingerprint (SHA-256): 0d2be551458a9b1a47677207167a4084ecdcb5539ca7f462b364368c9630cf62.
Counting rule: plurality.
Ballot rules used: Two or more marks at one rank end the ballot there; 2 ranks in a row left blank end the ballot; a candidate marked again lower down counts as a rank left blank.
Ballot file: comparison-cvrs. A third party with this file can rerun the count.
Audit: ballot-level comparison risk-limiting audit. Public seed: plurality-custody-gap. Risk limit 10% (used in the audit math).
Plain-language configuration (check against statute intent):
Configuration version: comparison-cvrs-custody-gap-plurality-v1
Fingerprint (SHA-256): 0d2be551458a9b1a47677207167a4084ecdcb5539ca7f462b364368c9630cf62
Election: Ames 60 percent, three boxes whose custody does not hold
A demonstration configuration over synthetic committed CVRs. No real election was counted under it.
The box list and custody records are a published sample record. No one observed physical custody of any box.
One box holds a different count than the box list says, and one box has a stretch of custody nobody signed.
Contests and candidates:
Ames 60 percent, three boxes whose custody does not hold (comparison-cvrs): Ames; Baird.
Counting rule: plurality (most first choices).
Tiebreak: not used under this counting rule.
Ballot rules (how marks become a ranking):
Two or more marks at one rank: the ballot counts up to that rank and no further.
A candidate marked again lower down: that rank counts as a rank left blank.
2 ranks in a row left blank: the ballot counts up to there and no further.
A mark for anyone not on the ballot: a mark, so the rank is not blank, but never a vote.
Audit risk limit: 10%. A risk-limiting audit that runs under this configuration stops when the sample confirms the outcome at that limit, or sends the contest to a full hand count.
How a ballot is counted and how an audit stops are fixed by this version. Changing any of the lines above requires a new version id.
The count
What follows is the counting account under plurality, including every intermediate step.
What was counted
Ballots in this count: 500.
Ballots from: Synthetic committed CVRs for the Lindeman and Stark 2012 comparison example (diluted margin 20%).
300 ballots mark Ames first, 200 mark Baird first. Each row is one physical ballot. Paper rankings are omitted, so they match the committed CVRs. This is a fixture, not a sealed container.
How the marks on a ballot were read:
Two or more marks at one rank: the ballot counts up to that rank and no further.
A candidate marked again lower down: that rank counts as a rank left blank.
2 ranks in a row left blank: the ballot counts up to there and no further.
A mark for anyone not on the ballot: a mark, so the rank is not blank, but never a vote.
The rankings the ballots form, and how many ballots form each. A candidate a ranking does not name is ranked last on those ballots.
| Ranking | Ballots |
|---|---|
| Ames > Baird | 300 |
| Baird > Ames | 200 |
The count
Each ballot counts once, for the candidate it marks first.
| Candidate | First choices | Share |
|---|---|---|
| Ames | 300 | 60.00% |
| Baird | 200 | 40.00% |
Ballots counting for a candidate: 500.
Ballots marking no candidate: 0.
Ballots stopped by two or more marks at their first rank: 0.
Ames is elected with 300 first choices, more than any other candidate.
Records with no mark, by contest and by machine
At the close of polls, the share of records with no mark in each contest, by contest and by machine. Leaving a contest blank is a voter's right; an outlier below is a question about the ballot or the machine, not a verdict.
| Contest | Records | With no mark | Share |
|---|---|---|---|
| comparison-cvrs | 500 | 0 | 0.00% |
The audit
This is the ballot-level comparison test in Lindeman and Stark, A Gentle Introduction to Risk-limiting Audits (2012), section III.B. Risk limit 10%. It is the Kaplan-Markov product (Stark 2010, super-simple comparison) for a plurality, winner versus runner-up. A majority is not required.
A risk-limiting audit does not prove the outcome is right. It has a large chance of forcing a full hand count when the outcome is wrong. If the outcome is right, this test cannot change it.
Reported winner: Ames with 300 first choices. Runner-up: Baird with 200.
Ballots N (every CVR, including undervotes and invalids): 500. Diluted margin m = (300 - 200) / 500 = 20.00%. Max overstatement per ballot u = 2. Inflator gamma = 1.03905. U = 2 gamma / m = 10.3905.
Each draw multiplies the P-value bound by (1 - 1/U) / (1 - o / (2 gamma)). Stop and confirm when the bound is at most 0.1. Stop and count every ballot by hand when the remaining ballots cannot confirm, or when the draw cap is hit without confirming.
Public seed: plurality-custody-gap
A sealed CVR commitment was not required or verified for this account. Do not read this run as proof the CVRs were fixed before the seed.
Ballot 1 is the first CVR. Sampling is with replacement, SHA-256 of "seed,draw,attempt" mapped onto 1 through N.
The hand read of each drawn ballot is simulated from the per-ballot paper ranking on the fixture (the CVR ranking, when paper is omitted). That is a fixture, not a sealed container. A live audit replaces each simulation with a person reading the paper at that place.
Ballot manifest:
| Batch | Ballots |
|---|---|
| box-1 | 200 |
| box-2 | 200 |
| box-3 | 100 |
Custody findings (blocking confirmation):
- Container box-2: container record count (192) does not match box list (200).
- Container box-3: stretch nobody signed for at 2026-09-02T20:45:00.000Z (transport).
Draws:
| Draw | Index | Batch | Place | CVR | Paper | o | Factor | P-value |
|---|---|---|---|---|---|---|---|---|
| 1 | 277 | box-2 | 77 | Ames | Ames | 0 | 0.9038 | 0.9038 |
| 2 | 98 | box-1 | 98 | Ames | Ames | 0 | 0.9038 | 0.8168 |
| 3 | 186 | box-1 | 186 | Ames | Ames | 0 | 0.9038 | 0.7382 |
| 4 | 28 | box-1 | 28 | Ames | Ames | 0 | 0.9038 | 0.6671 |
| 5 | 48 | box-1 | 48 | Ames | Ames | 0 | 0.9038 | 0.6029 |
| 6 | 167 | box-1 | 167 | Ames | Ames | 0 | 0.9038 | 0.5449 |
| 7 | 34 | box-1 | 34 | Ames | Ames | 0 | 0.9038 | 0.4925 |
| 8 | 151 | box-1 | 151 | Ames | Ames | 0 | 0.9038 | 0.4451 |
| 9 | 316 | box-2 | 116 | Baird | Baird | 0 | 0.9038 | 0.4022 |
| 10 | 326 | box-2 | 126 | Baird | Baird | 0 | 0.9038 | 0.3635 |
| 11 | 89 | box-1 | 89 | Ames | Ames | 0 | 0.9038 | 0.3285 |
| 12 | 442 | box-3 | 42 | Baird | Baird | 0 | 0.9038 | 0.2969 |
| 13 | 72 | box-1 | 72 | Ames | Ames | 0 | 0.9038 | 0.2683 |
| 14 | 97 | box-1 | 97 | Ames | Ames | 0 | 0.9038 | 0.2425 |
| 15 | 499 | box-3 | 99 | Baird | Baird | 0 | 0.9038 | 0.2192 |
| 16 | 239 | box-2 | 39 | Ames | Ames | 0 | 0.9038 | 0.1981 |
| 17 | 322 | box-2 | 122 | Baird | Baird | 0 | 0.9038 | 0.1790 |
| 18 | 291 | box-2 | 91 | Ames | Ames | 0 | 0.9038 | 0.1618 |
| 19 | 70 | box-1 | 70 | Ames | Ames | 0 | 0.9038 | 0.1462 |
| 20 | 472 | box-3 | 72 | Baird | Baird | 0 | 0.9038 | 0.1321 |
| 21 | 1 | box-1 | 1 | Ames | Ames | 0 | 0.9038 | 0.1194 |
| 22 | 73 | box-1 | 73 | Ames | Ames | 0 | 0.9038 | 0.1079 |
| 23 | 370 | box-2 | 170 | Baird | Baird | 0 | 0.9038 | 0.0975 |
Draws examined: 23. Final P-value bound: 0.0975.
The P-value bound is at most 0.1, so the sample reached the audit threshold, but confirmation is blocked because container custody has findings: Container box-2: container record count (192) does not match box list (200). Container box-3: stretch nobody signed for at 2026-09-02T20:45:00.000Z (transport). Outcome status: preliminary. Software tallies stay preliminary until an audit on the record confirms them or a full hand count of the record replaces them.
What was found
Decision: confirmed.
There were no CVR/paper disagreements in the sample.
Custody findings (blocking confirmation):
- Container box-2: container record count (192) does not match box list (200).
- Container box-3: stretch nobody signed for at 2026-09-02T20:45:00.000Z (transport).
Why it stopped
Decision: preliminary (confirmation blocked by custody).
The sample reached the audit stopping threshold, but confirmation is blocked because container custody has findings.
Outcome status: preliminary. Software tallies stay preliminary until an audit on the record confirms them or a full hand count of the record replaces them.