# Flags and Open Questions — Registration Data (v7.2)

## What changed in v7.2 (2026-10-15: Matt's decision on the flagged rows)

Made by `fix_v7.2.py` (re-runnable on a v7.1 unzip) and checked by `verify_v7.2.py`; `verify_v7.py` still passes. `verify_v7.1.py` no longer passes by design (it expects the corrected rows to be flagged). Every reviewed case is in `v7.2_corrections.csv`: date, unit, decision (`corrected` / `left flagged`), the printed and corrected figures, the reliability before and after, the printed-county-total check and the reason.

**Rules (Matt, 2026-10-15).** *Registration:* "I want the data to be accurate and consistent" - a clear Republican/Democratic swap is swapped back (the Lovell 1962 / Winterport 1966 rule, now applied to every case); a figure whose right value the town's own row proves is corrected; anything that cannot be determined stays as printed and flagged. *Rule 19 exception:* a single town figure proved wrong by an official or printed total plus the town's own same-day figures is corrected; the printed figure is kept (here in the row's `correction_note` / `imputation_note` and in `v7.2_corrections.csv`).

**How each case was decided.**
* (a) **Clear swap → swapped back.** Both neighbouring reports show the reverse of the printed pair and swapping restores the series. The printed SOS county total was checked for every year that has one: in every case it equals the towns as printed, so the SOS added the swapped figures into its own total. That cannot prove or disprove a swap, so the county row (a sum of towns) now differs from the printed total by the swap, exactly as Oxford 1962 already did for Lovell.
* (b) **Provable correction → corrected.** No printed county total proves a single digit here (for every corrected year they equal the towns as printed, and the 1994–2006 SOS files compute their county totals from the same rows). The one provable pattern is in the towns' own rows: the registered total keyed in as unenrolled.
* (c) **Everything else → left as printed and flagged.** The reason is in `v7.2_corrections.csv`.

### Corrected (17 town-years)
| Town | Date | Printed | Now | Neighbouring reports |
|---|---|---|---|---|
| Orrington | Sept 1956 | 140 R / 933 D | 933 R / 140 D | 938 / 136 (1954), 888 / 139 (1958) |
| Arundel | 1962 | 62 R / 185 D | 185 R / 62 D | 233 / 95 (1960), 193 / 104 (1964) |
| Winterville Plt | 1970 | 55 R / 22 D | 22 R / 55 D | 25 / 66 (1968), 22 / 69 (1974) |
| Andover | June 1980 | 80 R / 206 D | 206 R / 80 D | 224 / 81 (1978), 198 / 81 (1982) |
| Ogunquit (VD) | June 1980 | 148 R / 350 D | 350 R / 148 D | 382 / 133 (1978), 325 / 139 (1982) |
| Kingman Twp | June 1982 | 79 R / 30 D | 30 R / 79 D | 25 / 85 (1980), 27 / 98 (1984) |
| Dallas Plt | June 1990 | 75 D / 32 unenrolled | 32 D / 75 unenrolled | 32 D / 80 U (1988), 31 D / 80 U (1992) |
| Rangeley Plt | June 2000 | 35 R / 56 D | 56 R / 35 D | 40 / 35 (Nov 1999), 56 / 31 (Nov 2000) |
| Rangeley Plt | Nov 2001 | 24 R / 53 D | 53 R / 24 D | 56 / 31 (Nov 2000), 54 / 25 (June 2002) |
| Dyer Brook | Nov 2004 | 36 R / 92 D | 92 R / 36 D | 90 / 39 (Jan 2004), 98 / 38 (2005) |
| Livermore Falls | Nov 1995 | 2,424 U / 3,884 total | 964 U / 2,424 total | 958 U / 2,336 (Nov 1994), 1,013 U / 2,476 (June 1996) |
| Andover | Nov 1995 | 657 U / 979 total | 335 U / 657 total | 323 / 648, 308 / 649 |
| Detroit | Nov 1995 | 530 U / 856 total | 204 U / 530 total | 198 / 538, 210 / 538 |
| Eastport | June 1996 | 2,431 total (1,446 U derived) | 461 U / 1,446 total | 501 / 1,458, 484 / 1,475 |
| Palermo | Nov 1996 | 1,356 total (830 U derived) | 304 U / 830 total | 307 / 792, 294 / 819 |
| Stockholm | June 2000 | 328 total (188 U derived) | 48 U / 188 total | 37 / 206, 50 / 216 |
| Vienna | Nov 2001 | 664 total (416 U derived) | 168 U / 416 total | 163 / 420, 156 / 414 |

* The swaps keep the registered total and the unenrolled figure. The total-as-unenrolled rows lower the registered total by the town's enrolled voters.
* **Total keyed as unenrolled.** The 1995 report prints an unenrolled cell equal to the town's registered total (it matches the reports either side within 1–4%), and its total column adds the enrolled voters on top. The 1996–2001 SOS files give only party counts and a total, and their total has the same doubling: total minus the parties equals the town's registered total. Seven towns show it, every one fits on both registered total and unenrolled once corrected, and it is the error already corrected for Orland 1995 (v5).
* **County rows that now differ from the printed county totals because of these corrections:** Penobscot 1956 (REP +793 / DEM −793), York 1962 (±123), Aroostook 1970 (∓33), Oxford 1980 (±126), York 1980 (±202; it was already DEM −300 for Saco), Penobscot 1982 (∓49), Franklin 1990 (DEM −43 / UNE +43), and Androscoggin, Oxford and Somerset 1995 (registered −1,460, −322 and −326). The 1996–2004 SOS files have no separate printed county totals.
* **Statewide** Nov 1995 is now **955,819** (the 957,927 in the 1995 notes below, minus 2,108).

### Left flagged (101 town-years)
* **Not a clean swap:** Solon 1980 (52 R / 180 D; swapping restores the Republicans, 186 and 156 either side, but leaves the Democrats at 52 against 226 and 188).
* **Copied row:** North Yarmouth 1980 (222 R, Pownal's figure). The printed Cumberland total includes the 222, so it cannot recover the real value.
* **A digit lost or mis-keyed, but which one cannot be proved:** Orrington June 2000 (DEM 69; 674 and 745 either side); Bowdoin Nov 1994 (DEM 990; probably 390, but the SOS's town total of 2,329 and its Sagadahoc total were computed from the 990) and its June 1996 carry-forward; Waltham Nov 2006 (DEM 4; 40-something); New Canada June 2002 (REP 3; 30-something); Bath 1995 (29 D); Medway Nov 1990 (2,152 registered; perhaps 1,252, but the printed Penobscot total uses 2,152).
* **The town's own total shows a figure is wrong, but not which one:** Rome 1964, Sorrento 1970, Cooper 1980, Whiting 1964.
* **Both parties far too low, or the whole row off (not a swap):** Whitefield 1978, Holden 1962, Van Buren 1958, Saint Francis and Vienna June 1988, Wellington 1964 (50 / 50 / 50), and the other party-test rows of 1956–1970.
* **Partial, duplicated or votes-cast reports and all-zero rows** (items 2 and 3 of v7.1): no single figure can be corrected.

### Still open
* Outside this review (flagged before v7.1, so not in its list), still flagged: Saint Francis and Machiasport Nov 1995 and Garland Nov 1997, whose total is the enrolled voters plus a figure equal to them (a doubled row); Freeman Twp Nov 2004 (375 registered against 157 and 172).
* **Not flagged, worth a check:** Sweden Jan 2004 (37 R / 60 D / 197 unenrolled / 297 registered, against 193 before and 230 after). It may be the same total-keyed-as-unenrolled error (197 registered, 97 unenrolled, which would match Nov 2004's 99), but the series is too short to be sure, so it is left as printed.

## What changed in v7.1 (2026-10-14: Data Audit II fixes)

Made by `fix_v7.1.py` (re-runnable on a v7 unzip) and checked by `verify_v7.1.py`; `verify_v7.py` still passes. Every changed flag, with its evidence, is listed in `v7.1_reliability_changes.csv`. **No printed figure was changed**, except that rows the SOS printed as all zeros for a unit that did not report are now blank (item 2). REP/DEM swaps are **flagged, not swapped**: whether to swap them is Matt's decision (see "Still for Matt" below). **[v7.2: Matt decided to swap them back; see v7.2.]**

### 1. Party-level glitches are now flagged (audit R1)
Until v7 the `reliability` test looked only at the registered **total**, so a wrong Republican or Democratic figure next to a sensible total was never flagged and was plotted. v7.1 adds:

* **The party test.** A Republican or Democratic count is flagged `implausible` when all of these hold:
  * it is more than **2 times** above, or less than half of, **both** of the unit's neighbouring reports (the previous and next report that is not itself flagged; 5 is added to each figure so tiny numbers do not trigger it);
  * the two neighbours agree with each other within 35%;
  * the larger neighbour is at least 20;
  * the row's registered total is *not* itself far off. If the whole report is off, the total test handles it instead.

  The tests are repeated, so a flagged row never serves as a neighbour. They apply only before 2007; from 2007 on the figures are the SOS's own statewide-system extracts. **42 town-years** were flagged this way: Dixmont, Saint John Plt, Kenduskeag, Mount Chase, Starks, Stacyville and Penobscot 1956; Union and Magalloway 1958; Garland, Wiscasset, Limington, Jay, Swanville, Princeton, Hollis and Mars Hill 1960; Cutler, Sangerville, Harmony, Wells and Byron 1962; Wallagrass, Wellington, New Vineyard and Rome 1964; Milbridge and Sedgwick 1966; Medway 1968; Bradford and Winterville Plt 1970; Ripley 1980; Saint Francis and Vienna June 1988; Dallas Plt 1990; Springfield 1992; Webster Plt Nov 1994; Bath (29 Democrats) and Macwahoc Plt Nov 1995; Alexander June 2000; New Canada June 2002; Waltham Nov 2006.
* **Named cases from the audit (16), all `implausible`, values kept as printed:**
  * **Probable REP/DEM swaps:** Orrington 1956 (140 R / 933 D; 938 / 136 in 1954, 888 / 139 in 1958); Arundel 1962 (62 / 185; 233 R in 1960, 193 R in 1964); Kingman Twp 1982 (79 / 30; 25 / 85 in 1980, 27 / 98 in 1984); Dyer Brook Nov 2004 (36 / 92; 90 R in Jan 2004, 98 R in 2005); Andover, Solon and Ogunquit 1980 (already described in the v7 section); Rangeley Plt June 2000 (35 / 56) and Nov 2001 (24 / 53), which alternate with the 56 / 31 and 54 / 25 reports between them.
  * **Dropped digit:** Orrington June 2000, DEM 69 (674 in 1999, 745 in Nov 2000). The total of 2,161 is about 600 short. The error is in the SOS's own file `June13_2000.xlsx`.
  * **Mis-keyed figure:** Bowdoin Nov 1994, DEM 990 (370 in June 1994, 350 in 1995). This inflates the total to 2,329, against 1,628 and 1,557 either side, and is probably 390. It is in the SOS's own `November_1994.xlsx`. **Bowdoin June 1996** is that same row carried forward (Bowdoin did not report in June 1996), so it is flagged too. Bowdoin Nov 1995 (350) is correct and stays `ok`.
  * **Both parties far too low:** Whitefield 1978 (116 / 143; 342 / 224 in 1976, 321 / 263 in 1980); Holden 1962 (64 / 8; 389 / 99, 443 / 124); Van Buren 1958 (360 / 126; 878 / 570, 889 / 703).
  * **Copied row:** North Yarmouth 1980. Its 222 R and its RCV-P vote of 60 are Pownal's cells from the line above; the page image shows the SOS typist copied them. The printed Cumberland total includes the 222.
* **Checked and not flagged.**
  * **Anson 1980** (527 R / 572 D against 452 / 431 in 1978 and 389 / 416 in 1982) is printed clearly. It accounts for most of Somerset's unexplained +122 R / +113 D against the printed county total, but it is within the test's limits.
  * **Yarmouth Sept 1958** (561 R; 885 in 1956, 1,038 in 1960) is item 6 below.
  * Every flagged row was reviewed by eye for real changes (mergers, new towns, splits). None was found: each flag is a one-report spike or dip between two reports that agree.

### 2. Zero and near-zero rows (audit R2)
* **Printed all zeros → `data_unavailable` (9 town-years).** The SOS printed zeros for units that did not report: Big Lake Twp June 1988, T1 R9 WELS June 1992, The Forks Plt June 1992, Indian Purchase Twp. June 1992 (was `partial_report`), Osborn and Mason Twp Nov 1995 (the 1995 notes below already said "all zeros (not reported)"), Orneville Twp Nov 2005 and June 2006, and Benedicta Twp June 2006 (163 before, 140 after). The zeros are not counts, so they are now blank. `data_unavailable = True` is set, the long table drops those rows, and `imputation_note` says "Printed as all zeros". County and state totals are unchanged.
* **Small-unit total test.** The v6.1 test applies only where 150 or more voters are registered and needs a 40% shortfall, so tiny plantations escaped it. v7.1 adds a second test for pre-2007 rows:
  * the total is more than **1.5 times** off **both** unflagged neighbours;
  * the neighbours agree within 30%;
  * the larger neighbour is at least 20.

  Results are `partial_report` when the total is too low and `implausible` when it is too high. **40 town-years** were flagged:
  * **Partial:** Saint Francis, Charlotte and Madrid Twp 1958; Reed Plt 1962; Whiting 1964 and 1986; Sorrento 1970; Webster Plt 1976; Seboeis Plt and Cooper 1980; Talmadge 1984; Rangeley Plt June 1988 (7 registered; 82 and 86 either side); Otis June 1994; The Forks Plt Nov 1994 and June 2006; Levant Nov 1994; Caratunk, Waite and Bremen 1995; Wilton 1997; Parkman, New Sweden and **Cyr Plt** June 1998 (17 registered; 81 and 77 either side; it was plotted on Cyr Plantation's page); Machiasport Nov 2000; Cornish 2001; Milford, Bucksport and Deblois June 2002; Baldwin Nov 2002; Bancroft Twp Nov 2006.
  * **Implausibly high:** Cary Twp and Willimantic Nov 1956; Medway Nov 1990 (2,152; 1,212 and 1,246 either side); Detroit, Livermore Falls and Andover 1995; Eastport June 1996; Palermo Nov 1996; Stockholm June 2000; Vienna 2001.

  The full figures are in `v7.1_reliability_changes.csv`.
* **Glenwood Plt** (2–13 registered since 1964) is too small for any test and is left alone.

### 3. November total-only snapshots below the votes cast (audit R3)
The November columns of the 1956, 1978, 1984, 1988, 1990 and 1992 reports give only a registered total. **11 town-years** are now `implausible`. In each, the November figure is more than 20% below both the same year's June or September report and the next report (which agree within 20%), and it is **no higher than the ballots cast in the town that day** (election results v3.11). In most of them the "registered" figure is within a few votes of the ballots cast, so the town evidently reported votes cast, not registered voters.

| Town | Date | November figure (ballots cast) | Report before | Report after |
|---|---|---|---|---|
| **Augusta** | 1956 | 7,294 (8,183) | 9,476 | 9,265 |
| Yarmouth | 1956 | 1,374 (1,370) | 1,723 | 1,887 |
| Searsport | 1956 | 545 (543) | 857 | 746 |
| South Bristol | 1978 | 412 (448) | 686 | 727 |
| West Bath | 1978 | 533 (523) | 705 | 770 |
| Raymond | 1984 | 1,443 (1,430) | 1,889 | 2,040 |
| Kingfield | 1988 | 641 (661) | 884 | 928 |
| Lamoine | 1990 | 634 (624) | 905 | 1,003 |
| Trenton | 1990 | 484 (480) | 639 | 716 |
| Freedom | 1990 | 261 (256) | 373 | 384 |
| Waldo | 1990 | 237 (249) | 318 | 366 |

Other November drops the audit listed are kept because they do not meet the test:
* Hollis, Wells and Prentiss 1956: they do not meet the test.
* Ellsworth 1988 and Mount Vernon 1978: ballots were 80–85% of the November figure.
* Higher November figures (for example Orono 1988, a college town) are left alone. Registrations normally rise before a general election.

### 4. Rows where nothing was derived (audit R8)
59 town-years carried `une_status = derived` (and mostly `reliability = derived_unenrolled`) although nothing could be derived. They are now `une_status = not_reported`, and `derived_unenrolled` becomes `ok`. **No value changed.**
* **24 rows: the SOS printed a registered total but no party enrollment.** They include Old Orchard Beach and York, Sept 1956 (blank in the report and in its printed county totals), Wade 1960, Codyville Plt 1954 and 1960, Marshfield 1954 and 1960, Poland, Madawaska and Phippsburg 1968 (enrollment blanked in v5), and Cyr Plt 1954, 1958 and 1964. `une_source` now reads "not reported (registered total only; the SOS printed no party enrollment)".
* **21 rows: the SOS printed party enrollment but no registered total** (the "--" towns, for example Saint Agatha 1956 and 1958, Brownville and Palmyra 1958, South Berwick 1964 and Madawaska 1970). `une_source` now reads "not reported (party enrollment only; the SOS printed no registered total)".
* **14 rows that were already `data_unavailable`** had `une_status = derived` and now read `not_reported`.

### 5. Other corrections
* **GC-15 (T3 ND BPP):** in Nov 1994 and Nov 1995 the SOS listed T3 ND BPP (MPD-0177) under Penobscot County. The township is in Hancock County, and the unit, the results and the geography all say Hancock. The two rows are now counted in Hancock, with a note on the precinct row. The Penobscot and Hancock county rows for those two dates move by 4 and 3 voters. Statewide totals are unchanged.
* **OCR labels:** 1980 "Machtasport" and 1990 "MACHTASPORT" / "MACHTAS" were OCR misreadings of Machiasport and Machias. They are now spelled correctly in `registration_precinct.csv`, `1980_transcribed.csv`, `1990_transcribed.csv` and `all_scanned_reports_long.csv`. The two OCR spellings are removed from `label_crosswalk.csv` and from `units.csv` `sos_labels`.
* **`snapshots.csv`:** 2021-11-03 is the SOS file's "as of" date; the referendum was Nov 2, 2021. A note now says so.
* **`units.csv` (geography audit GC-7, GC-8):**
  * Baring Plt (MPD-0438) is an organized plantation (Census "Baring plantation"; not on the State Auditor's deorganization list). Its type is now `plantation`; it was `unorganized township`.
  * **Convention:** `unit_type` is now the unit's **current** status, matching `canonical_name`, which already uses the current name. The earlier status goes in `former_names`.
    * Cary Twp, Codyville Twp, Oxbow North Twp and Atkinson Twp changed to `unorganized township` (they were `plantation` / `town`).
    * So did the four units whose series ended at deorganization: Grand Falls, Barnard, Blanchard and Elliottsville. Their names already say "(now … Twp)".
    * Drew, Magalloway and Bancroft already followed this rule.
  * `former_names` added, with the State Auditor's deorganization years:
    * Drew Plt (until 2023)
    * Oxbow Plt (until 2017)
    * Atkinson (town, until 2019)
    * Bancroft (town, until 2015)

    Magalloway (until 2021), Cary and Codyville (until 2019) were already right. Oxbow's `megis_notes` now gives the 2017 effective date as well as the 2016 signing.
  * If Matt prefers "status during most of the series", reverse these nine `unit_type` values in `fix_v7.1.py`.
* **Washington 1974 (audit R7):** of the candidate cells listed in the v7 section, **Pembroke** is the only single row that explains both +20 differences: DEM 177 → 157 and RV-P 498 → 478 would close them and fit its series (DEM 101 in 1970, 124 in 1976). At 400 dpi "177" looks clear and the middle digit of "498" is unclear, so this may be the SOS's own adding slip. The values are kept as printed; Pembroke is the first cell to check against the paper copy.
* **Winslow precincts, June and Nov 2022 (audit R8):** ward 2-1 holds about 27% of the town, against 19% in 2021 and from 2023 on, and wards 1-1 and 5-1 are correspondingly low. This is exactly as in the SOS file `11.8.22.txt` (2-1, HD 63 = 1,379). The town total is fine; only the 2022 precinct split comes from the SOS. The scores FLAGS note (P-118d) is therefore an SOS data issue, not a transcription error.

### 6. Yarmouth Sept 1958 (pending item P-169(3)) — checked, no change
* Yarmouth's 1958 row is 561 R / 113 D / 1,887 registered. In 1956 it was 885 / 124 / 1,723, and in 1960 1,038 / 255 / 2,270.
* The row matches `1958_transcribed.csv` cell for cell.
* The transcribed Cumberland towns add exactly to the printed county totals in `1958_printed_county_totals.csv` (46,509 R / 16,275 D / 85,710).
* So there is no keying error in the transcription: the SOS printed 561 and counted it in its county total.
* The Republican figure is low (0.58 times the average of its neighbours) but within the party test's limit of 2. It is kept as printed and not flagged.
* The 1954–1970 report PDFs are not in this folder, so the page itself was not re-read. If Matt wants a second look, the 1958 booklet's Cumberland page is the place to check.
* Separately, Yarmouth's **November 1956** total (1,374, about the 1,370 ballots cast) is now flagged under item 3.

### Still for Matt
* ~~**Swaps.**~~ **Decided 2026-10-15 (v7.2):** swap back. All the clear swaps in item 1 are now corrected; Solon 1980 is not a clean swap and stays flagged.
* **Unit-type convention** (item 5): current status (applied) or status during most of the series.


## What changed in v7 (2026-10-14: the 1974 and 1980 SOS reports from the Maine State Library)

**Source.** Matt's request through the State Archives thread was answered by the Maine State Library on 2026-10-14 with PDF copies of the 1974 and 1980 reports (call number S82.28/1:Gu896/974 c.3 for 1974); the Library does not have 1972. Neither PDF has a text layer (CCITT bilevel scans).

**Method.**
* 1980 (clean typescript): tesseract OCR, rows parsed by position, every county's towns summed against the printed county totals on the summary page and on each county page; every failing cell was read by eye from the page image (Hanover DCV-P, Upton DEV-P, No. 14 RV-P, Biddeford RCV-P, the Pleasant Point line).
* 1974 (dark photocopy, rotated 1–3°): pages deskewed at 300 dpi and every town's six registration-side columns (REV-P, DEV-P, RV-P, RGV-P, DGV-P, RV-GE) read by eye; the vote columns (Erwin … Gartley) were not transcribed. Where a county did not add, the column was re-read at higher magnification and checked against the town's 1970/1976 figures.
* Dating as for 1976/1978/1982: enrollment and registered voters at the primary → June 11, 1974 and June 10, 1980; RV-GE → total-only November 5, 1974. Unenrolled = registered − REP − DEM, same date.

**Readings fixed by the printed county total** (the digit on the copy is faint; the reading chosen is the only one that makes the county add): Franklin Avon DEV-P 82; Kennebec Albion DEV-P 181, Oakland RV-GE 2,599; Somerset New Portland DEV-P 86, Moose River RV-GE 128, Pleasant Ridge Plt RV-GE 68; York Acton DEV-P 110. **Derived from the county total** (cell illegible): Lincoln Alna RV-GE 285; Waldo Troy RV-GE 356. Each is noted on its row in `1974_transcribed.csv` and in `imputation_note`.

**Gaps.**
* 1974 Cumberland County: no pages in the copy. All 26 Cumberland units (incl. Otisfield, in Cumberland until 1978) are `data_unavailable` for 1974-06-11 and 1974-11-05; the Cumberland county row is the summary page's printed figures (UNE = 123,086 − 48,949 − 37,551 = 36,586). Ask the Library or Archives whether another copy has the Cumberland pages.
* 1974 Grand Falls Plt RV-GE: not reported (SOS footnote "*Grand Falls Plantation Missing" on Penobscot's 72,844).
* 1980 Pleasant Point Voting District: "Information not reported" (footnote "*Pleasant Point Voting District Missing"); `data_unavailable`. Its congressional primary votes (4 R, 9 D) are in the transcription.

**Where the towns do not add to the printed county totals** (town values kept as read; county and state rows are sums of towns, rule 19; full table in `v7_reconciliation.csv`):
* 1974 summary page: Oxford RV-P printed 28,805; the Oxford page prints 28,085, which equals its towns and makes the printed state total (613,227) add. Summary-page transposition.
* 1974 Hancock REV-P −1 (Sullivan read 295 at high magnification); Waldo RV-P −1; Knox RV-GE +2; Kennebec DGV-P +20 and Penobscot RGV-P +2 (vote columns only).
* 1974 Washington DEV-P +20, RV-P +20, RV-GE +22. **[v7.1: Pembroke is the most likely single row; see v7.1 item 5.]** Pages 17–18 are the darkest in the copy. Candidate cells (each read twice, values kept): Perry 163 / 184 / 347 / RV-GE 422 (402?), Pleasant Point VD 14 / 132 / 146 / 166, Pembroke RV-P 498, Baileyville RV-P 949, Danforth RV-P 660. Worth a look by a human with the paper copy.
* 1980 Franklin RV-P +754 (= Strong's 754: the SOS's adding left Strong out); Lincoln DEV-P +38 (= Monhegan's 38); Piscataquis REV-P +34; Somerset REV-P +122, DEV-P +113, RV-P +2,482 (every Somerset cell re-read; the printed total looks like an older figure); Washington DCV-P +100 (vote column); York DEV-P −300 — Saco's DEV-P is printed 3,805 with the 3 overtyped (a correction typed after the total was added, which would have been 4,105).

**Anomalies kept as printed.**
* 1980 Danforth 675 R / 248 D / 236 registered and Cooper 79 / 19 / 28: enrollment exceeds registration (unenrolled suppressed); Danforth is also `partial_report`.
* 1980 Andover 80 R / 206 D (1974: 226 / 59; 1982: 198 / 81), Ogunquit VD 148 / 350 (1978: 382 / 133) and Solon 52 / 180 look like the REP and DEV columns swapped on the SOS's sheet. They reconcile to the printed county totals, so they are left as printed; the site shows them as they are. **[v7.1: still as printed, but now flagged `implausible`, so they are kept off the charts; see v7.1 item 1.]**
* 1974 Highland Plt RV-P printed 20 (enrolled 29 R + 35 D; RV-GE 72): unenrolled suppressed.
* 1974 Madawaska RV-GE 3,209 vs 2,131 in June (printed).
* Barnard Plt still appears in 1980 (Piscataquis plantations); Grand Falls Plt in 1974; Allagash, Hamlin, Hammond, New Canada and Westmanland are listed as plantations in 1974.

**Units.** No new units. Same voting-district mappings as v6 (Sinclair, Connor District, Kingman District, Ogunquit VD, Indian Island / Indian Township / Pleasant Point VDs); Long Island Plt (Hancock, 1974) → Frenchboro; Denniston → Dennistown Plt; No. 14 / No. 21 → Cathance Twp / Big Lake Twp.

**Still open.** 1972 (not held by the State Library; the State Archives was the other possible holder) and the 1974 Cumberland pages.


## What changed in v6.2 (2026-10-07: 1960 and 1962 filled from the State Library's complete copies)

Made by `fix_v6.2.py` (re-runnable; reads v6.1, writes v6.2); checked by `verify_v6.2.py`. On 2026-10-07 the Maine State Library / State Archives sent Matt complete copies of the SOS booklets for 1960 and 1962 (22 pages each: summary page plus every county). They are in `source_hist_files/scanned_sos_reports/transcriptions/` as `1960_complete_StateLibrary.pdf` and `1962_complete_StateLibrary.pdf`. Both booklets were transcribed in full (`1960_1962_complete_StateLibrary_transcribed.csv`: every town, every column, plus the printed county totals and the summary page). Every column of every county adds to its printed county total, and the county totals add to the summary page's state totals, in both years. Three faint digits in vote columns were settled by the county total (below); none is in an enrollment or registration column.

1. **1960 gaps filled.** The 48 `data_unavailable` rows from v6.1 now carry the printed figures (`1960_aroostook_p4_washington_p2.csv`; Matt's own transcriptions `aro1960.txt` and `was1960.txt` agree with it figure for figure). Aroostook: Merrill through Woodland and the plantations Allagash through Oxbow (33). Washington: Princeton through No. 21 Plt (15). Peter Dana Point Voting District is Indian Township, No. 14 Plt is Cathance Twp and No. 21 Plt is Big Lake Twp, as before. **Topsfield** is also on the second Washington page (22 R / 4 D / 94 registered), so it gets a new 1960 row. v6.1 said it was first listed in 1962; that was only true of the old scan. Topsfield's `first_snapshot` is now 1960-11-08. Unenrolled is registered − REP − DEM, as for every 1954–1970 row. Five of the new rows come out negative and are left blank (`derived_suppressed`): Orient, Cathance Twp, Steuben, Vanceboro and Indian Township. A printed "-" next to a figure is recorded as 0, as elsewhere (Glenwood Plt Democrats).
2. **Total-only rows.** **Wade** prints "-" for both enrollment columns and 104 registered; **Codyville Plt** prints nothing for enrollment (the SOS footnote says its primary figures were missing) and 21 registered. Both have the registered total only, with REP, DEM and UNE blank, like Cyr Plt in 1954. **Connor Twp** ("Limestone Connor District") prints "-" for enrollment and registration and only has vote figures, so it stays `data_unavailable`.
3. **1962 York.** The York general-election page is in the new copy. The 28 York towns now have their registered totals (`1962_york_general.csv`; Matt's `yor1962.txt` agrees), so every 1962 town has derived unenrolled. None of the 28 is negative. The enrollment figures on that page are the same as the primary-section pages v6.1 used.
4. **County rows.** Aroostook and Washington 1960 and York 1962 are now the sum of their towns, like every other county row; `verify_v6.2.py` checks there are no exceptions left. Their Republican, Democratic and registered totals are unchanged and equal the printed totals (checked in the script). Unenrolled changes for two counties, because a county's unenrolled is the sum of its towns' non-negative derivations rather than printed total − REP − DEM. Aroostook 1960 is 15,679 (was 15,738: Wade's 104 has no enrollment split, and Orient −2 and St. Francis −43 are left blank). Washington 1960 is 4,224 (was 4,370: Marshfield 139 and Codyville 21 are total-only, and five negative towns total −14). York 1962 is unchanged at 19,728. Statewide 1960 unenrolled is 172,071 (was 172,276); every other statewide cell for 1960 and 1962 is unchanged.
5. **Flags re-run.** The v6.1 partial/implausible test and the stale-repeat test were re-run on the new tables. None of the 49 filled 1960 rows or the 28 York 1962 rows is flagged. Two flags on neighbouring rows now have a new previous report. **Grand Lake Stream Plt 1962** (71) is still `partial_report`, now against 155 in 1960 and 120 in 1964 (the note is updated). **Caswell 1962** (486) is still `implausible`, now against 228 in 1960 and 235 in 1964 (its v6 note is unchanged).
6. **`snapshots.csv`** 1960 and 1962 notes and `source_file` rewritten (the missing pages are now filled from the State Library copies; the inflated-1960-unenrolled caveat stays). The 1960 snapshot has 498 rows. **`units.csv`**: Topsfield `first_snapshot` 1960-11-08, `n_snapshots` 82.

### Cross-check of every 1960 and 1962 town against the complete copies

Every 1960 and 1962 town row's Republican, Democratic and registered figure in v6.1 (all 16 counties: the 448 1960 rows and 495 1962 rows that had figures; for York 1962, enrollment only) was compared with the new copies. **No cell differs.** The only differences are the deliberate ones already in v6.1:
* **Lovell 1962**: the new copy also prints 28 R / 411 D (registered 443), and the printed Oxford total (9,614 R / 7,302 D) uses those figures. v6.1's correction to 411 R / 28 D stays, so the Oxford 1962 county row still differs from the printed total by 383 in each party, as before.
* A printed "-" is stored as 0 in v6.1 (Westmanland Plt 1960 and 1962 D, Edinburg 1960 and 1962 D, Kingsbury Plt 1960 and 1962 R, E Plt and Nashville Plt 1962 D). That is the existing convention, not a discrepancy.
* 1962 Wade, Lowell and Codyville Plt: the new copy has the same "Data not received" footnotes, so those rows stay as they were (Wade and Codyville `data_unavailable`; Lowell registered 66 only).

### Faint digits in the vote columns (comparative votes, not in the registration tables)

Read at high zoom and settled by the printed county total:
* 1960 Cumberland, Windham DGV-GE: 687 (the middle digit is faint; the county total needs 687).
* 1960 Cumberland, South Portland DPV: 4,382 (same).
* 1960 Oxford, Newry RPV: 51 (looks like 61 at zoom; 51 + 39 = 90, the same as Newry's Governor votes 46 + 44, and the county total needs 51).
* 1960 Peter Dana Point Voting District RPV is printed "-" (3 Republican Governor votes).

## What changed in v6.1 (2026-10-05 data clean-up; audit items E7, E8, H6)

Made by `fix_v6.1.py` (re-runnable; reads v6, writes v6.1); checked by `verify_v6.1.py`. No printed value was changed anywhere. What changed: 48 rows added, 12 county/state cells, 59 notes, three new flag columns.

1. **1960 county and statewide totals now really are the SOS's printed totals** (audit E7). v6 said they were, but the Aroostook and Washington rows and the statewide row were sums of the pages that survive in the scan. They now match `transcriptions/1960_printed_county_totals.csv`, the same way York 1962 was already handled: Aroostook 22,189 R / 10,552 D / 48,479 registered (was 13,656 / 6,761 / 32,681), Washington 11,751 / 3,722 / 19,843 (was 10,018 / 3,357 / 17,211). Unenrolled for those two counties is printed total − REP − DEM (15,738 and 4,370). Statewide 1960 is now 247,314 R / 119,048 D / 172,276 U / **537,922** (was 519,492). Town rows are unchanged, so in 1960 the county total for Aroostook and Washington is larger than the sum of their towns. The only other place where county ≠ sum of towns is York 1962.
2. **The 48 municipalities on the two missing 1960 pages now have their own `data_unavailable` rows**: 33 in Aroostook and 15 in Washington. Every party cell on these rows is blank, `data_unavailable = True`, `reliability = data_unavailable`, and the `imputation_note` names the missing page. They are every Aroostook or Washington unit on the 1958 roster that has no 1960 line. Aroostook: Merrill, Monticello, New Limerick, New Sweden, Oakfield, Orient, Perham, Portage Lake, Presque Isle, Saint Agatha, Sherman, Smyrna, Stockholm, Van Buren, Wade, Washburn, Westfield, Weston, Woodland, plus the plantations Allagash, Cary, Caswell, Cyr, E, Garfield, Glenwood, Hamlin, Hammond, Macwahoc, Moro, Nashville, New Canada and Oxbow. Washington: Princeton, Peter Dana Point (Indian Township), Robbinston, Roque Bluffs, Steuben, Talmadge, Vanceboro, Waite, Wesley, Whiting, Whitneyville, Codyville Plt, Grand Lake Stream Plt, No. 14 Plt (Cathance Twp) and No. 21 Plt (Big Lake Twp). v6 gave the number as 47, which was a miscount. Baring Plt and Topsfield appear on the 1962 roster but not in 1958 (Topsfield's voters were counted with Codyville in 1956), so they get no 1960 row. The 1960 snapshot now has 497 rows. **[v6.2: all 48 are now filled from the State Library's complete copy, and Topsfield turns out to be on the 1960 page too; see "What changed in v6.2".]**
3. **Partial and implausible municipal reports** (audit E8). The test is now run on every unit: a pre-2007 town-year is flagged when its registered total is under 60% of BOTH neighbouring reports or over 180% of both, and the largest of the three totals is at least 150. That found 66 town-years. Together with the 30 rows already in v6's table and the four named in the audit (Bangor Nov 2005, which has only 4 of its wards; Berwick Nov 1995, a doubled report; Kingman Twp Nov 1995; Auburn Jan 2004), 79 town-years are now flagged. Of those, 64 are `partial_report` (far below the neighbouring reports) and 15 are `implausible` (far above them, or the arithmetic does not add). See the table below. Each of these keeps its value as printed. Its precinct rows carry an `imputation_note`, and `reliability` lets the site suppress the point. Some hits may reflect a real change in definition rather than an error. Kingman Twp, for example, alternates between about 135 at June primaries and about 265 at November generals in 1990–1992. These stay flagged under the rule; un-flag any you want shown.
4. **Stale repeats** (audit H6). 112 pre-2007 town-years have a party vector and total identical, cell for cell, to the unit's previous report, with a total of 150 or more. These are probably the SOS reusing a municipality's previous report. They are now flagged `stale_report`: Nov 1997 16, Jan 2004 21, Nov 2005 27, June 2006 22, and 26 more spread over 1998–2006 (list below). Excluded are rows already marked as carried forward (the SOS's asterisked towns in 2000, 2001 and 2006, and the June 1996 carry-forwards) and Moose River in Nov 1996, whose June 1996 row was carried back from it. Repeats from 2007 onward, and repeats with a total under 150, are not flagged, because tiny towns often really do not change.
5. **New `une_status` column**: `reported` / `derived` / `derived_suppressed` (derived but negative, so left blank) / `not_reported` (total-only snapshots). It is taken from `une_source`. Unenrolled is derived (TOTAL minus listed parties) for 1954–1970, June 1976, June 1978, June 1982, June 1984, and 1996–2004 (Wayback workbooks). Two consequences are now noted on the rows and in `snapshots.csv`. The **1960 unenrolled spike** (32% statewide against 23–27% in every other 1954–1970 report; Portland 11,995 against 3,669–7,763 in 1962–1968) is an artefact of the cross-date derivation. The **1998 Green gap**: the Green Party was de-qualified for 1997–98, so the June and November 1998 files have no Green column and Green enrollees are inside the unenrolled residual.
6. **New `reliability` and `reliability_note` columns** in `registration_precinct.csv` and `registration_town_wide.csv`; `reliability` alone in `registration_town_long.csv`. There is one value per town and snapshot, and the most severe applies: `data_unavailable` > `implausible` > `partial_report` > `stale_report` > `derived_unenrolled` > `ok`. Counts in `registration_town_wide.csv`: ok 31,802; derived_unenrolled 11,501; stale_report 112; partial_report 64; implausible 15; data_unavailable 84. **The site suppresses `partial_report`, `stale_report` and `implausible` points on charts.** It should also draw a rule at 2007 (registered voters before, active voters after) and dash the years where unenrolled is derived.
7. **`snapshots.csv` notes**:
   * The file labelled 2023-11-07 is the SOS's extract of January 18, 2024. Its 948,734 total matches the SOS's January 18, 2024 release.
   * 2022-11-08 is the extract of November 18, 2022.
   * The 2011-08-17 inactive count (16,319) is an isolated dip between 44,928 and 57,111.
   * The 2010-06-01 Wayback file has no Big Lake Twp line.
   * 1960 and 1998 notes as above.
8. **Documentation fixes.**
   * The 1995 statewide total is **957,927** **[v7.2: 955,819 after the Livermore Falls, Andover and Detroit corrections]**: the SOS's printed 958,477, minus the stray Washington "Limington" row (497), minus Anson's blanked duplicate row (53). v6 said 957,980 in one place.
   * Kingman Twp 1995 and Auburn January 2004 are now documented below.
   * The pre-2007 "voter status not stated" disclaimer stays and is marked as unverified, pending the SOS's answer.
   * Dennysville/Edmunds note added.

### Partial and implausible town-years (v6 table + v6.1 test + audit E8)

Every value is kept exactly as printed. The neighbouring reports are the unit's previous and next reports that have a total. The 1954 rows and the rows found only by v6's test (median of neighbouring reports, 45% / 220%) show "—".

| snapshot | unit | county | total as printed | previous report | next report | reliability | found by |
|---|---|---|---|---|---|---|---|
| 1954-09-13 | Southwest Harbor | HAN | 323 | — | — | partial_report | v6 table |
| 1954-09-13 | Buckfield | OXF | 212 | — | — | partial_report | v6 table |
| 1956-09-10 | Friendship | KNO | 306 | 533 (1954-09-13) | 534 (1956-11-06) | partial_report | v6.1 test |
| 1956-09-10 | Springfield | PEN | 83 | — | — | partial_report | v6 table |
| 1956-11-06 | Springfield | PEN | 81 | — | — | partial_report | v6 table |
| 1958-09-08 | Hodgdon | ARO | 270 | 530 (1956-11-06) | 470 (1960-11-08) | partial_report | v6.1 test |
| 1958-09-08 | Swans Island | HAN | 83 | 146 (1956-11-06) | 262 (1960-11-08) | partial_report | v6.1 test |
| 1958-09-08 | Medway | PEN | 286 | 498 (1956-11-06) | 550 (1960-11-08) | partial_report | v6.1 test |
| 1958-09-08 | Harmony | SOM | 183 | 419 (1956-11-06) | 398 (1960-11-08) | partial_report | v6.1 test |
| 1958-09-08 | Acton | YOR | 182 | 346 (1956-11-06) | 333 (1960-11-08) | partial_report | v6.1 test |
| 1960-11-08 | Amity | ARO | 150 | 68 (1958-09-08) | 49 (1962-11-06) | implausible | v6.1 test |
| 1962-11-06 | Amity | ARO | 49 | 150 (1960-11-08) | 89 (1966-11-08) | partial_report | v6.1 test |
| 1962-11-06 | Caswell | ARO | 486 | 228 (1960-11-08) | 235 (1964-11-03) | implausible | v6 table + v6.1 test |
| 1962-11-06 | Wallagrass | ARO | 136 | 289 (1960-11-08) | 232 (1964-11-03) | partial_report | v6 table + v6.1 test |
| 1962-11-06 | Boothbay Harbor | LIN | 1,007 | 1,847 (1960-11-08) | 1,787 (1964-11-03) | partial_report | v6.1 test |
| 1962-11-06 | Freedom | WAL | 133 | 234 (1960-11-08) | 222 (1964-11-03) | partial_report | v6.1 test |
| 1962-11-06 | Grand Lake Stream Plt | WAS | 71 | 155 (1960-11-08) | 120 (1964-11-03) | partial_report | v6.1 test |
| 1966-11-08 | Prentiss Twp T7 R3 NBPP | PEN | 242 | 70 (1964-11-03) | 96 (1968-11-05) | implausible | v6.1 test |
| 1968-11-05 | Cranberry Isles | HAN | 75 | 148 (1966-11-08) | 156 (1970-11-03) | partial_report | v6.1 test |
| 1970-11-03 | Kenduskeag | PEN | 183 | 306 (1968-11-05) | 422 (1976-06-08) | partial_report | v6 table + v6.1 test |
| 1970-11-03 | Lyman | YOR | 443 | — | — | partial_report | v6 table |
| 1976-06-08 | Baldwin | CUM | 198 | 446 (1970-11-03) | 664 (1978-06-13) | partial_report | v6.1 test |
| 1978-06-13 | Penobscot Nation Voting District | PEN | 83 | 229 (1976-06-08) | 248 (1978-11-07) | partial_report | v6.1 test |
| 1984-06-12 | Alexander | WAS | 106 | 224 (1982-06-08) | 246 (1984-11-06) | partial_report | v6.1 test |
| 1986-06-10 | Vienna | KEN | 156 | 323 (1984-11-06) | 456 (1988-06-14) | partial_report | v6.1 test |
| 1988-06-14 | Mariaville | HAN | 19 | 159 (1986-06-10) | 177 (1988-11-08) | partial_report | v6 table + v6.1 test |
| 1988-11-08 | Madrid Twp | FRA | 431 | 121 (1988-06-14) | 145 (1990-06-12) | implausible | v6.1 test |
| 1988-11-08 | Farmingdale | KEN | 1,387 | 2,364 (1988-06-14) | 2,463 (1990-06-12) | partial_report | v6.1 test |
| 1990-06-12 | Medford | PIS | 210 | 116 (1988-11-08) | 109 (1990-11-06) | implausible | v6.1 test |
| 1990-11-06 | Kingman Twp | PEN | 263 | 132 (1990-06-12) | 135 (1992-06-09) | implausible | v6.1 test |
| 1992-06-09 | New Sweden | ARO | 88 | 471 (1990-11-06) | 523 (1992-11-03) | partial_report | v6 table + v6.1 test |
| 1992-06-09 | Indian Purchase Twp. | PEN | 0 | — | — | partial_report | v6 table |
| 1992-06-09 | Kingman Twp | PEN | 135 | 263 (1990-11-06) | 269 (1992-11-03) | partial_report | v6.1 test |
| 1992-06-09 | Norridgewock | SOM | 1,217 | 2,295 (1990-11-06) | 2,517 (1992-11-03) | partial_report | v6.1 test |
| 1992-06-09 | Jonesboro | WAS | 113 | 384 (1990-11-06) | 340 (1992-11-03) | partial_report | v6 table + v6.1 test |
| 1992-11-03 | Kingman Twp | PEN | 269 | 135 (1992-06-09) | 138 (1994-06-14) | implausible | v6.1 test |
| 1994-06-14 | Milford | PEN | 506 | 2,511 (1992-11-03) | 2,237 (1994-11-08) | partial_report | v6 table + v6.1 test |
| 1995-11-07 | New Sweden | ARO | 233 | 534 (1994-11-08) | 534 (1996-06-11) | partial_report | v6 table + v6.1 test |
| 1995-11-07 | Saint Francis | ARO | 1,052 | 514 (1994-11-08) | 531 (1996-06-11) | implausible | v6.1 test |
| 1995-11-07 | Van Buren | ARO | 36 | 2,287 (1994-11-08) | 2,071 (1996-06-11) | partial_report | v6 table + v6.1 test |
| 1995-11-07 | Alton | PEN | 44 | 562 (1994-11-08) | 536 (1996-06-11) | partial_report | v6 table + v6.1 test |
| 1995-11-07 | Kingman Twp | PEN | 162 | — | — | implausible | named (audit E8) |
| 1995-11-07 | Lagrange | PEN | 220 | 531 (1994-11-08) | 531 (1996-06-11) | partial_report | v6 table + v6.1 test |
| 1995-11-07 | Hartland | SOM | 500 | 1,245 (1994-11-08) | 1,279 (1996-06-11) | partial_report | v6 table + v6.1 test |
| 1995-11-07 | Cherryfield | WAS | 418 | 923 (1994-11-08) | 923 (1996-06-11) | partial_report | v6.1 test |
| 1995-11-07 | Machiasport | WAS | 1,850 | 895 (1994-11-08) | 937 (1996-06-11) | implausible | v6.1 test |
| 1995-11-07 | Robbinston | WAS | 161 | 379 (1994-11-08) | 406 (1996-06-11) | partial_report | v6 table + v6.1 test |
| 1995-11-07 | Whiting | WAS | 156 | 357 (1994-11-08) | 383 (1996-06-11) | partial_report | v6 table + v6.1 test |
| 1995-11-07 | Berwick | YOR | 7,219 | 3,449 (1994-11-08) | 3,680 (1996-06-11) | implausible | v6.1 test + named (audit E8) |
| 1996-06-11 | Westfield | ARO | 59 | 400 (1995-11-07) | 414 (1996-11-05) | partial_report | v6.1 test |
| 1996-06-11 | Long Island | CUM | 59 | 237 (1995-11-07) | 247 (1996-11-05) | partial_report | v6.1 test |
| 1996-06-11 | Madrid Twp | FRA | 88 | 171 (1995-11-07) | 150 (1996-11-05) | partial_report | v6.1 test |
| 1996-06-11 | Bremen | LIN | 148 | 272 (1995-11-07) | 574 (1996-11-05) | partial_report | v6.1 test |
| 1996-06-11 | Whitneyville | WAS | 41 | 156 (1995-11-07) | 168 (1996-11-05) | partial_report | v6.1 test |
| 1997-11-04 | New Sweden | ARO | 186 | — | — | partial_report | v6 table |
| 1997-11-04 | Rumford | OXF | 954 | 5,705 (1996-11-05) | 4,556 (1998-06-09) | partial_report | v6 table + v6.1 test |
| 1997-11-04 | Garland | PEN | 1,466 | 723 (1996-11-05) | 733 (1998-06-09) | implausible | v6.1 test |
| 1998-11-03 | Jonesboro | WAS | 219 | 591 (1998-06-09) | 423 (1999-11-02) | partial_report | v6.1 test |
| 2000-06-13 | Saint Albans | SOM | 602 | 1,026 (1999-11-02) | 1,197 (2000-11-07) | partial_report | v6.1 test |
| 2001-11-06 | Somerville | LIN | 168 | 389 (2000-11-07) | 367 (2002-06-11) | partial_report | v6.1 test |
| 2001-11-06 | Carmel | PEN | 848 | 1,857 (2000-11-07) | 1,719 (2002-06-11) | partial_report | v6.1 test |
| 2001-11-06 | Machiasport | WAS | 126 | 488 (2000-11-07) | 833 (2002-06-11) | partial_report | v6.1 test |
| 2001-11-06 | Whitneyville | WAS | 31 | 156 (2000-11-07) | 145 (2002-06-11) | partial_report | v6.1 test |
| 2002-06-11 | Weld | FRA | 92 | 360 (2001-11-06) | 360 (2002-11-05) | partial_report | v6.1 test |
| 2004-01-01 | Auburn | AND | 16,069 | — | — | implausible | named (audit E8) |
| 2004-01-01 | Crystal | ARO | 86 | 188 (2002-11-05) | 213 (2004-11-02) | partial_report | v6.1 test |
| 2004-11-02 | Freeman Twp | FRA | 375 | 157 (2004-01-01) | 172 (2005-11-08) | implausible | v6.1 test |
| 2005-11-08 | Gardiner | KEN | 1,094 | — | — | partial_report | v6 table |
| 2005-11-08 | Hallowell | KEN | 397 | — | — | partial_report | v6 table |
| 2005-11-08 | Bangor | PEN | 9,487 | 20,261 (2004-11-02) | 20,486 (2006-06-13) | partial_report | v6.1 test + named (audit E8) |
| 2005-11-08 | Lagrange | PEN | 170 | 694 (2004-11-02) | 697 (2006-06-13) | partial_report | v6 table + v6.1 test |
| 2005-11-08 | Bath | SAG | 956 | 7,364 (2004-11-02) | 7,236 (2006-06-13) | partial_report | v6 table + v6.1 test |
| 2005-11-08 | Whitneyville | WAS | 49 | 123 (2004-11-02) | 247 (2006-06-13) | partial_report | v6.1 test |
| 2006-06-13 | Livermore Falls | AND | 396 | 2,586 (2005-11-08) | 2,458 (2006-11-07) | partial_report | v6 table + v6.1 test |
| 2006-06-13 | Gardiner | KEN | 1,078 | — | — | partial_report | v6 table |
| 2006-06-13 | Hallowell | KEN | 395 | — | — | partial_report | v6 table |
| 2006-06-13 | Richmond | SAG | 425 | 2,313 (2005-11-08) | 2,400 (2006-11-07) | partial_report | v6 table + v6.1 test |
| 2006-06-13 | Whitneyville | WAS | 247 | 49 (2005-11-08) | 102 (2006-11-07) | implausible | v6.1 test |
| 2006-11-07 | Vienna | KEN | 28 | 493 (2006-06-13) | 411 (2007-06-12) | partial_report | v6.1 test |

Notes on the named cases:
* **Kingman Twp, Nov 1995**: the transcription (`1995_transcribed.csv`, read by hand) gives 95 D / 2 Ind / 24 R / 0 G / 0 Ref / 21 U = 142, with a printed total of 162. Nothing on the page shows which cell is wrong, so it is kept as printed (`sum_matches_total = False`).
* **Auburn, Jan 2004**: four precinct rows in the SOS's January 2004 HTML table do not add up. Ward 1 sub-precinct 1 is 554 + 555 + 656 + 35 = 1,800 against a printed 1,600; the other three are off by 1, 1 and 10. Auburn's total (16,069, the sum of the printed totals) is therefore 188 below the sum of its party figures (16,257). Nothing proves which figure is wrong, so all are kept as printed.
* **Berwick, Nov 1995**: 1,144 D / 18 Ind / 1,593 R / 4 G / 0 Ref / 4,460 U = 7,219. That is about twice the 3,449 of Nov 1994 and the 3,680 of June 1996. The parts add up and the SOS county total includes the figure, so it is kept as printed.
* **Bangor, Nov 2005**: 9,487 is the SOS's municipal total of the 4 Bangor wards printed in the 2005 report, against 20,261 in Nov 2004 and 20,486 in June 2006.

### Stale repeats (`reliability = stale_report`)

Each town-year below has a party vector and total identical to the unit's previous report. Figures are the registered total.

* **1997-11-04** (16): Wales (AND, 814), Saint Francis (ARO, 539), Van Buren (ARO, 2,023), Harrison (CUM, 1,804), Scarborough (CUM, 13,914), Industry (FRA, 660), New Sharon (FRA, 1,021), Rangeley (FRA, 1,088), Tremont (HAN, 1,272), Winter Harbor (HAN, 716), Hope (KNO, 851), Fryeburg (OXF, 3,009), Medway (PEN, 1,427), Sebec (PIS, 460), Arrowsic (SAG, 401), Machias (WAS, 2,219)
* **1998-11-03** (2): Abbot (PIS, 537), Pleasant Point (WAS, 334)
* **2000-06-13** (3): Saint Francis (ARO, 516), Weston (ARO, 227), Jackson (WAL, 327)
* **2000-11-07** (1): Cross Lake Twp (ARO, 210)
* **2002-06-11** (5): Connor Twp (ARO, 282), Saint Francis (ARO, 551), Lagrange (PEN, 325), Mount Chase (PEN, 162), Canaan (SOM, 1,400)
* **2002-11-05** (5): Allagash (ARO, 235), Mapleton (ARO, 1,230), Wade (ARO, 218), Burlington (PEN, 291), Pleasant Point (WAS, 369)
* **2004-01-01** (21): Eagle Lake (ARO, 593), Oakfield (ARO, 513), Otisfield (CUM, 1,135), Cranberry Isles (HAN, 193), Tremont (HAN, 1,294), Clinton (KEN, 2,800), Winthrop (KEN, 4,377), Edinburg (PEN, 152), Etna (PEN, 826), Lagrange (PEN, 665), Lee (PEN, 708), Springfield (PEN, 259), Winn (PEN, 280), Athens (SOM, 670), Searsport (WAL, 1,867), Thorndike (WAL, 546), Cutler (WAS, 230), Dennysville (WAS, 245), Marshfield (WAS, 428), Pleasant Point (WAS, 369), Roque Bluffs (WAS, 215)
* **2004-11-02** (6): Vienna (KEN, 453), Albany Twp (OXF, 277), Charleston (PEN, 952), Moscow (SOM, 399), Harrington (WAS, 712), Indian Township (WAS, 473)
* **2005-11-08** (27): Greene (AND, 3,173), Eagle Lake (ARO, 788), Masardis (ARO, 211), Wallagrass (ARO, 530), Weston (ARO, 175), Winterville Plt (ARO, 178), Woodland (ARO, 1,011), Gray (CUM, 5,845), Stonington (HAN, 1,133), Tremont (HAN, 1,435), Winthrop (KEN, 4,617), Washington (KNO, 1,120), Albany Twp (OXF, 277), Andover (OXF, 699), Fryeburg (OXF, 3,154), Burlington (PEN, 309), Edinburg (PEN, 267), Lowell (PEN, 288), Mattawamkeag (PEN, 586), Dover-Foxcroft (PIS, 3,273), Sebec (PIS, 530), Bowdoin (SAG, 2,136), Athens (SOM, 750), Highland Plt (SOM, 165), Freedom (WAL, 523), Indian Township (WAS, 473), Marshfield (WAS, 474)
* **2006-06-13** (22): Greene (AND, 3,173), Blaine (ARO, 629), Eagle Lake (ARO, 788), Grand Isle (ARO, 372), Wallagrass (ARO, 530), Weston (ARO, 175), Madrid Twp (FRA, 173), Stonington (HAN, 1,133), Swans Island (HAN, 335), Vienna (KEN, 493), Winthrop (KEN, 4,617), Edgecomb (LIN, 1,112), Albany Twp (OXF, 277), Lowell (PEN, 288), Penobscot Nation Voting District (PEN, 363), Springfield (PEN, 263), Dover-Foxcroft (PIS, 3,273), Bowdoin (SAG, 2,136), Prospect (WAL, 506), Brookton Twp (WAS, 150), Pleasant Point (WAS, 493), Acton (YOR, 2,134)
* **2006-11-07** (4): Wayne (KEN, 1,013), Bowdoin (SAG, 2,136), Woolwich (SAG, 2,226), Pleasant Point (WAS, 493)

### Dennysville and Edmunds Township (join rule for turnout)

Edmunds Township votes at Dennysville, so its ballots are counted in Dennysville's election returns. The SOS reports Edmunds Twp's registration on its own line, and the 1956 report already noted that Dennysville's figure "includes 90 voters from Edmunds". Any turnout or votes-per-registered calculation for Dennysville has to add Edmunds Twp's registration to Dennysville's. Otherwise Dennysville's turnout can exceed 100%. This is a join rule, not a data error.


## What changed in v3 (your decisions applied)

1. **Inactive voters pulled and partitioned.** 28 SOS inactive-status files (June 2007 – Nov 2025, plus Feb 2025) now live in their own tables: `inactive_registration_precinct.csv`, `inactive_registration_town_wide.csv`, `inactive_registration_town_long.csv`, `inactive_registration_county_wide.csv`, `inactive_registration_statewide.csv`. Same unit IDs, same party codes, same grain as the active tables, and nothing from them touches the active tables. `snapshots.csv` shows the active and inactive statewide totals side by side. All 31 active snapshots from 2007 on now have a matching inactive file, including June 2022 and March 2026 (both supplied by you as the SOS Excel workbooks).

2. **June 1996 repaired per your method.** Using the SOS's own explanation: the 37 municipalities that did not report (36 on the SOS list plus Perkins Twp, which was "reported with Weld" but Weld itself did not report) are carried forward from Nov 1994; Moose River, unavailable in 1994, is carried back from Nov 1996. The seven townships the SOS folded into a neighbor (Sinclair, T3 R3, T17 R5 → St. Agatha; Salem → Kingfield; Milton → Woodstock; Mason → Bethel) were split out of the combined row in proportion to each unit's share of the group and party composition in the Nov 1994 and Nov 1996 files, averaged, with largest-remainder rounding so the split sums exactly to the SOS's combined figures. Every affected row carries `imputation` (`carried_forward`, `carried_back`, `apportioned_from_combined`) and an `imputation_note` written to be displayed on the site; the host rows also carry `combined_reported_total`. June 1996 statewide total after repair: 961,033 (between Nov 1994's 940,742 and Nov 1996's 1,001,292). Three tiny units the SOS did not mention (T3 ND, Greenville Twps, No. 27) have no prior data and remain absent for that date.

3. **Asterisked towns (2000, 2001, 2006)** keep their carried-forward figures with `carried_forward_flag = true`; the 2000 file's own note (figures as of the June 13, 2000 primary) is recorded in `snapshots.csv`.

4. **2012** is November 6, 2012; the same convention (November wins) is recorded for any future conflict.

5. **Pre-2007 townships** stay in the database and stay searchable. `units.csv` carries `last_snapshot` so the site can render the notation you specified: "After [last_snapshot] the Secretary of State no longer reported voter registration data from this political unit. Its totals are counted elsewhere, but are not described."

6. **Deorganized towns** keep one unit ID and one continuous series. Confirmed.

7. **Census GEOID for townships** remains `needs-spatial-join` for ~40 township units; will be resolved with the boundary overlay when map layers come in. No decision needed.

8. **Feb 6, 2025** active and inactive files added. The active file introduces a Constitution Party column (`CON`); it reports zero enrollments statewide as of that date.

9. **1994 district codes.** You were right: the June and November 1996 files carry identical district codes for every one of the 467 units they share, confirming both elections ran on the same apportionment, so the 1994 town rows now carry the 1996 Congressional, State Senate and State House codes with `district_source = "inferred from 1996 files"`. Because 1994 is a town-level file, the 42 towns that straddle more than one district list all their codes separated by semicolons (e.g. Auburn House `72;73`) rather than a per-district split — the 1994 file has no precinct rows to attach separate codes to.

10. **Chart colors.** Green Independent is now a bright green, the Independent Party a teal. One consequence: bright green and the Libertarian gold are near-identical to red-green colorblind readers, so the Libertarian line is dashed in every chart to keep them distinguishable. Unenrolled gray, Libertarian gold as you asked.

## v6 — the 1976, 1978 and 1982 SOS reports (Law Library scans), 2026-09-30

**Where they came from.** The SOS Elections Division told Matt it holds nothing for 1970–1984, but the department's own records-series report (Schedule 341, Series 9, "Tabulation Books") describes "Tabulation for Enrolled and Registered Voters for the years 1970 thru 1982", with a ten-year agency retention and disposition to the Maine State Archives. Three of those biennial booklets turned out to be online in the Law and Legislative Reference Library's election-returns collection, filed among the vote tabulations: `elec_19760608a.pdf` ("Number of Enrolled and Registered Voters with Comparative U.S. Senatorial Votes", 1976), `elec_19780000.pdf` ("Enrolled and Registered Voters with Comparative Gubernatorial and United States Senatorial Votes", 1978) and `elec_19820608a.pdf` ("Number of Enrolled and Registered Voters with Comparative Gubernatorial Votes", 1982). Every file in the library's 1972, 1974 and 1980 folders was checked; the enrollment booklets for those years are not among them. Requests to the State Archives and the Law Library for 1972, 1974 and 1980 are Matt's (emails sent 2026-09-30). Copies of the three PDFs are in `source_hist_files/scanned_sos_reports/law_library_scans/`.

**Method.** The library's scans carry an OCR text layer. It was parsed by column position (each number assigned to the header column whose right edge it sits under), every county's town rows were summed against the report's printed county totals and the county totals against its printed state totals, and every row that failed — an OCR misread such as "l13" for 43 or "Lf,426" for 4,426, a dropped digit, a blank cell — was read by eye from the page image and corrected (22 cells in all; each is listed in `transcriptions/build_transcriptions.py`). Result: 1978 reconciles exactly in every county and column, and 1976 and 1982 reconcile exactly except where the SOS's own totals do not add (below). Rows are dated per the project rule: enrollment and registered voters "at the primary" → the primary date (June 8 1976, June 13 1978, June 8 1982); the 1978 report's RV-GE column (registered at the Nov 7 1978 general election) → a total-only Nov 7 1978 snapshot, exactly as the 1984–1992 reports were handled. Unenrolled = registered − REP − DEM, same date (`une_source = derived (TOTAL minus enrolled parties)`).

**Units.** All labels map to existing units; no new units were needed. As in 1984: Kingman District (listed under Prentiss Plt) → Kingman Twp; Sinclair T17 R4 (under Saint Agatha) → Sinclair Twp; Connor District (under Caswell) → Connor Twp; the Ogunquit Voting District (under Wells; Ogunquit was set off in 1980) → Ogunquit; Indian Island / Indian Township / Pleasant Point voting districts → Penobscot Nation / Indian Township / Pleasant Point. Beaver Cove is listed as a plantation (its series now starts 1976 rather than 1984). Otisfield is under Cumberland in 1976 and under Oxford from 1978 (one unit, county as in `units.csv`). Barnard Plt and Grand Falls Plt appear in 1976–1978 but not 1982 (deorganized); Rockwood Strip appears from 1978; Madawaska Lake Twp and Brookton Twp first appear in 1984.

**SOS-side arithmetic slips and anomalies, kept as printed** (town values re-verified against the page image; county and state roll-ups in the tables are sums of towns, so they differ from the SOS printed totals by these amounts):
* 1976 PEN: printed county RV-P total 70,335 vs town sum 70,135 (+200).
* 1976 PIS: printed county RV-P total 11,237 vs town sum 10,347 (+890).
* 1976 WAS: printed county REV-P total 8,369 vs town sum 8,459 (−90). State printed totals (226,680 R / 626,450 registered) inherit all three; DEM reconciles exactly (224,753).
* 1976 PEN Mattawamkeag (154 R / 293 D / 378 registered) and PIS Dover-Foxcroft (1,619 R / 1,030 D / 2,330 registered): June enrollments exceed the registered total as printed; unenrolled suppressed (`negative result suppressed`), flagged.
* 1978 HAN: the printed county RV-GE total is illegible in the scan; the report's summary table gives 27,579, which the towns reconcile to exactly.
* 1982 ARO: printed county DEV-P total 21,972 vs town sum 21,982 (−10); Reed Plt's 30 is visibly hand-corrected on the page.
* 1982 WAS: Baring Plt and Codyville Plt print enrollment but no registered total (`reported_total` and UNE blank on those rows, REP/DEM kept; `une_source = not reported`); the printed county RV-P total is 22,408 on the county page and 22,404 in the summary table, 184 / 180 above the town sum (probably the two plantations' unprinted figures). State printed total 733,464 vs town sum 733,284.
* 1982 ARO: Haynesville is printed "Hayesville" (mapped).

**Still open (updated v7).** 1972 only (1974 and 1980 added in v7; see above). When it arrives, run `transcriptions/parse_reports.py` → `build_transcriptions.py` → `merge_v6.py` (all three kept in `transcriptions/`) with the new files added to `REPORTS`.

## Wayback-recovered snapshots (v4) — decisions applied

Fourteen snapshots the SOS no longer posts were recovered from the Wayback Machine's copies of the SOS site and merged into every table: January 2004 (an HTML "Enrolled and Registered Voters as of January 2004" table) and thirteen active+inactive file pairs dated 2008-09-08, 2008-10-20, 2008-10-29, 2008-12-04, 2010-04-06, 2010-06-01, 2010-10-13, 2011-08-17, 2012-02-13, 2012-05-14, 2012-08-22, 2012-10-12 and 2014-03-13. Every file was parsed with the same code as the 2007–2026 SOS files; all labels map to existing units; every file's statewide total was independently recounted against the built tables. Your decisions (2026-09-28):

D1. **2012-08-22** kept, dated by its Wayback capture date (the SOS posted the file undated). Flagged in `snapshots.csv`.
D2. **January 2004** kept as 2004-01-01 (the SOS says only "as of January, 2004"). Its rows carry the SOS's own arithmetic slips (five precinct rows whose parties do not add to their totals; an Old Town town total 110 above its four listed precincts), kept exactly as printed and flagged with `sum_matches_total = false`. Sum of rows 957,292 vs the SOS printed statewide total 957,485.
D3. **June 2017 relabeled 2017-06-13** (was 2017-06-03, the SOS site's label). The SOS file is `r-e-active6-13.txt`, June 3 was a Saturday, and June 13, 2017 was the referendum. Source files keep their original `6.3.17.txt` names.
D4. **Nov 8, 2011** kept as one snapshot under the SOS site label; the SOS file name (`110111`) is noted in `snapshots.csv`.
D5. **Nov 4, 2014 inactive file**: byte-identical to a copy captured 2014-10-10, so those inactive figures were generated before Oct 10, 2014. Nothing changed; noted here only.
D6. **Left out as duplicates**: an undated Oct 1, 2008 copy (identical to Sept 8, 2008), the SOS `6-12` file (identical to Nov 6, 2012), the `6-13` file (identical to the June 2017 file), copies captured Oct 2014 / July 2015 that repeat the June 2014 active file, and an undated July 2015 inactive file.

## Resolved since v3

A. **March 2026** comes from the SOS voter-data page (www.maine.gov/sos/elections-voting/voter-data). Its inactive workbook ("After Inactivation Process") holds 135,769 voters, which accounts for nearly all of the 140,000 decline in active registration since Nov 2025.

B. **Pre-2007 voter status** is still unverified: the question (did the pre-2007 municipal reports include inactive voters?) is waiting on an answer from the SOS. The README carries the display disclaimer (status not stated by the SOS; best assumption is all registered voters as reported by municipalities) and says it is unverified.

C. **June 2022 inactive** added from the SOS workbook (2,563 voters).

After v7 the open registration items are locating the 1972 SOS report and the 1974 Cumberland pages (see "v6" above) and the SOS's answer on pre-2007 inactive voters (B).


## Scanned SOS reports 1954–2006 (v5) — how they were read, and what to look at

**Sources.** The 54 PDFs from your "OldRegistrations" folder (indexed in "Enrollment and Registrations 1954-2006 Files.xlsx"). Twenty were used; the rest duplicate snapshots already in the dataset (Nov 1994, 1996, 1998, 2000, 2001, 2002, Nov 2004, Nov 2006) or are district/precinct breakdowns of the same figures, or repeat the primary columns of a November report (June 1988, June 1990, June 1992). Nothing usable was left out: after this pass the registration series is Sept 1954 – Nov 1970, June 1984 – Mar 2026, with the 1970–1984 gap being a gap in the SOS's own publications.

**Method.** OCR of these scans (typewriter and dot-matrix, 1954–1990) was too unreliable to trust, so every 1954–1995 table was transcribed from the page images and checked two ways: each town row's parties against its printed total, and each county's towns against the SOS's printed county total, with the county totals checked against the printed state total. Every county of every year reconciles exactly to the SOS's printed figures except where the SOS's own arithmetic is wrong (each case listed below; town values were re-verified at high zoom and kept as printed). The 1997, 1999, 2005 and 2006 reports (laser-printed ward/precinct tables) were OCR'd in three passes, solved row-by-row against the row totals, checked ward-sums against the SOS's "Municipal Totals" rows, and every municipality against the county totals; all rows that failed were read by eye. Result: every one of the 25 new snapshots reconciles to its printed state total (the two exceptions were: 1962 York's registered total, missing from the old scan and filled in v6.2 from the State Library copy; and 1995, which excludes a stray "Limington" row).

**Dating (your rule: undated files = election day).** 1954–1970 reports print party enrollment "at the June primary" and registered voters "at the state/general election"; each is one snapshot dated to that fall election (Sept 13 1954, Sept 10 1956, Sept 8 1958, then the November general from 1960) with `une_source` marking the cross-date derivation. 1956 also gives a registered total at the Nov 6 presidential election (a total-only snapshot). 1984, 1988, 1990 and 1992 reports give enrollment and registration at the June primary plus a registered total at the November general: each yields a full June snapshot and a total-only November snapshot. 1986 = June 10; 1994 = June 14; 1995 = Nov 7; 1997 = Nov 4; 1999 = Nov 2; 2005 = Nov 8; 2006 = June 13 (all printed on the reports).

**Unenrolled before 1986.** The SOS did not report unenrolled voters until 1986. For 1954–1970 (and June 1984) unenrolled is derived as registered − Republican − Democratic. For 1984 that is a same-date derivation. For 1954–1970 it mixes June enrollment with fall registration: where a town's June enrollments exceed its fall registered total (234 town-years in v5, 239 since v6.2, mostly small towns whose registered figure was reported inconsistently) unenrolled is left blank rather than negative; county and statewide unenrolled for those years are the sums of the towns' non-negative derivations and should be presented as approximate. (Statewide, the direct derivation total − REP − DEM gives e.g. 117,664 for 1954 vs 118,240 summed from towns.)

**Units.** 1,369 label spellings from the reports were mapped to units; 1,264 by normalized spelling, the rest by hand (all listed in `label_crosswalk.csv` with a note). Renamed/merged units keep one series: Webster → Sabattus (1971), North Kennebunkport → Arundel (1957), Otisfield (in Cumberland County until 1978), Connor District (under Limestone/Caswell) → Connor Twp, Sinclair (under St. Agatha) → Sinclair Twp, Kingman District → Kingman Twp, the Ogunquit / Pleasant Point / Peter Dana Point / Indian Island voting districts → Ogunquit / Pleasant Point / Indian Township / Penobscot Nation. Six new units were created for places that no longer appear in SOS files: Grand Falls Plt, Barnard Plt, Blanchard Plt, Elliottsville Plt (all deorganized in the 1970s–80s), Lexington Twp (1960 only), and the combined "T-A R-10 / T-A R-12" unit the SOS used in 1990–1994. Per your decision (2026-09-29) renamed places are one continuous series under the current name — No. 33 Plt → Great Pond, Long Island Plt → Frenchboro, Webster → Sabattus, North Kennebunkport → Arundel — and `units.csv` now carries a `former_names` column (e.g. "Webster (until 1971)") for the website to show as a note on the town's page.

**Snapshot-specific notes** (also in `snapshots.csv`): 1960 was missing two pages from the old scan (middle Aroostook, second Washington; 48 units, plus Topsfield) and 1962 the York general-election page; since v6.2 both are filled from the Maine State Library's complete copies (received 2026-10-07), and every county row is the sum of its towns; 1968 Gray and Harpswell Democratic cells are physically damaged in the scan and were inferred from the county total (269 / 191 — the only combination consistent with the visible digits); 1994 has eight non-reporting towns; 1995 has several SOS-side data-entry anomalies kept as printed (below). The June 1990 standalone report differs slightly from the primary columns of the November 1990 report (state totals differ by 10/9/11); the November report's figures were used as the SOS's revised ones.

**Corrections of SOS entry errors (your authorization 2026-09-29: fix where the right value can be logically inferred, note it on the row).** Seven rows carry `imputation = sos_error_corrected` or `sos_error_unrecoverable` with a plain-English `imputation_note`: Winterport 1966 and Lovell 1962 (Republican/Democratic figures transposed by the SOS — swapped back); Orland 1995 (SOS repeated the registered total in the unenrolled column — recomputed); West Bath and Prospect 1995 (SOS put the unenrolled count in the Independent Party column — moved); Anson 1995 (SOS printed The Forks Plantation's figures for Anson — blanked, since the real figures were never published); Phippsburg 1968 (1 R / 1 D placeholder — enrollment blanked, registered total kept). Cases where no correct value can be inferred (Bath's 29 Democrats in 1995, Whiting = Whitneyville in 1995, the partial-town figures in the table above) stay as printed with a flag.

**SOS-side arithmetic slips and anomalies, kept as printed** (town rows re-verified; the SOS's printed totals are recorded in `snapshots.csv` notes and in the per-report `*_printed_county_totals.csv` files):
* 1954 PIS: printed county Registered Voters total 10,579 exceeds the sum of the 20 printed town rows (10,574) by 5; rows verified at high zoom and kept as printed.
* 1954 LIN: Boothbay's enrolled figures (1,168 R / 68 D) were "received too late for official recording" and are excluded from the printed county and state enrolled totals; recorded on the town row. Registered total (1,236) is included.
* 1954 CUM: Gorham reported no enrolled or registered figures (vote columns only); left blank.
* 1954 HAN: Aurora reported no enrolled figures (registered 78); KNO: Isle-au-Haut (61) and South Thomaston (374) registered only; ARO: Cyr Plt (70), Hamlin Plt (120), Limestone Connor District (121) registered only; PEN: Burlington enrolled only (33 R / 3 D), no registered figure.
* 1956 FRA: Kingfield RV-PE 599 includes 26 voters from Freeman Township and 18 from Salem (SOS footnote).
* 1956 PEN: Alton RV-SE 157 includes 13 voters from Argyle (SOS footnote).
* 1956 PIS: Milo RV-PE 1,896 includes Orneville Twp 63 and Medford (unincorporated) 45 (SOS footnote).
* 1956 WAL: printed county RV-SE total 11,447 is 2 below the sum of the 26 printed town rows (11,449); rows verified at high zoom and kept as printed.
* 1956 WAS: Dennysville RV-SE 334 includes 90 voters from Edmunds (SOS footnote).
* 1956 WAS: Codyville Plt RV-SE 56 includes Topsfield (SOS footnote).
* 1958: Wells (and its Ogunquit Voting District) reported no enrolled or registered figures; Marshfield (WAS) likewise; several towns show '--' for registered voters (Isle-au-Haut, Saint Agatha, Wade, Cyr Plt enrolled, Brownville, Palmyra) - left blank.
* 1960 ARO: the SOS booklet as first scanned was missing the middle Aroostook page (Merrill through Woodland, then the plantations Allagash through Oxbow; 33 units; their combined figures were REP 8,533 / DEM 3,791 / registered 15,798). v6.1 gave them explicit data_unavailable rows. **Filled in v6.2** from the State Library's complete copy (PDF page 4); the 33 rows add exactly to those combined figures, and the Aroostook county row is now the sum of its towns.
* 1960 KNO/LIN/PEN pages: see per-county notes below.
* 1960 WAS: the old scan also lacked the second Washington County page (Princeton through No. 21 Plt; combined REP 1,733 / DEM 365 / registered 2,632). **Filled in v6.2** from the State Library's complete copy (PDF page 21). The page has 16 units, not 15: Topsfield (22 R / 4 D / 94) is listed there too, so it gets a 1960 row. The 16 rows add exactly to the combined figures. Codyville Plt has registered 21 and no enrollment (SOS footnote: "towns of Marshfield and Codyville Pl. missing (Primary)").
* 1960: Somerset lists "Lexington Unorganized Township" with enrolled 9 R / 11 D and no registered figure; Marshfield (WAS) registered only (139); Limestone Connor District no registration figures (votes only; still data_unavailable in v6.2); Wade (ARO) registered only (104, enrollment printed "-"); Codyville Plt (WAS) registered only (21).
* 1962 ARO: 'Data not received from town of Wade' (SOS footnote) - Wade blank.
* 1962 OXF: Lovell printed as 28 R / 411 D (registered 443). The D figure is almost certainly a transposition of the R figure (Lovell was 225 R / 12 D in 1960 and 135 R / 13 D in 1958), but the printed county total uses 28/411, so it is kept as printed and flagged. → CORRECTED in the dataset (v5): recorded as 411 R / 28 D, imputation = sos_error_corrected.
* 1962 PEN: 'Data not received from the town of Lowell' for enrollment (registered 66 given).
* 1962 WAS: 'Data not received from Plantation of Codyville'.
* 1962 YOR: the York County general-election (registered voters) page was missing from the old scan (p78 blank); enrolled R/D were taken from the primary-section York pages (reconcile exactly to county totals 22,115/18,981). **Filled in v6.2**: the page is in the State Library's complete copy (PDF page 22), its enrollment figures match, and its 28 registered totals add to the printed 60,824.
* 1964 ARO: 'Information not received from' Amity, Crystal, Hersey, Cyr Plt., Hamlin Plt. (SOS footnote). Amity/Crystal have enrollment but no registered total; Hersey and Cyr Plt. have registered total but no enrollment; Hamlin Plt. has enrollment but no registered total.
* 1964 ARO: town REV-P values (re-verified twice) sum to 20,741; SOS printed county total is 20,731 (SOS addition slip of 10; DEM and RV-GE reconcile exactly). Town values kept as printed.
* 1964 PEN: 'Information not received from Grand Falls Plantation' (SOS footnote) - blank.
* 1964 YOR: 'Information not received from South Berwick' (SOS footnote): enrollment printed (867 R / 235 D) but registered total blank.
* 1964 YOR: town RV-GE (registered) values re-verified; they sum to 60,216 (South Berwick blank) while the SOS printed county total is 66,965 (diff 6,749 - larger than South Berwick could account for; SOS-side slip, state total 522,236 inherits it). Town values kept as printed.
* 1966 KNO: 'Isle au Haut missing' (SOS footnote) - enrollment blank; registered 66 given.
* 1966 WAL: Winterport printed as 312 R / 812 D (1964 was 797 R / 265 D; 1968 should be checked). Probably a typing transposition/error at SOS, but the printed county totals use 312/812, so kept as printed and flagged. → CORRECTED in the dataset (v5): recorded as 812 R / 312 D, imputation = sos_error_corrected.
* 1966 YOR: the row between Shapleigh and Waterboro is mislabelled 'North Berwick' in the SOS report (a second occurrence, in South Berwick's alphabetical slot); recorded as South Berwick.
* 1968 AND: Poland enrollment not reported ('Without Poland' county total); registered 1,048 given.
* 1968 ARO: Madawaska enrollment not reported ('Without Madawaska' county total); registered 2,609 given.
* 1968 CUM: Gray and Harpswell DEV-P cells are physically damaged in the scan (legible fragments '26?' and '??1'); the county DEM total leaves a residual of 460 for the two, and the only combination consistent with the visible digits is Gray 269 / Harpswell 191 (also consistent with 1966: 261 / 169). Recorded with those values; flagged as inferred.
* 1968 PEN: 'Grand Falls Pl. missing' (SOS footnote) - enrollment 7/2 printed but registered blank.
* 1968 PEN: Orono REV-P partly obscured ('1,?13'); 1,313 is the value that reconciles the county total. Orono RV-GE reads 3,081 (faint third digit), which reconciles.
* 1968 PEN: 'Kingman District' is listed under Prentiss Plt. with no separate figures; recorded within Prentiss.
* 1968 PEN: Medway enrolled 11 R / 6 D against 599 registered (1966: 253/230) - printed as such; likely SOS error, flagged.
* 1968 SAG: Phippsburg enrolled printed as 1 R / 1 D against 795 registered (1966: 398/194) - obviously a placeholder/not-reported entry; SOS county totals include the 1/1. Kept as printed and flagged; treat as data_unavailable for enrollment. → Phippsburg enrollment BLANKED in the dataset (v5), registered total kept, imputation = sos_error_unrecoverable.
* 1968 WAS: 'Topsfield missing' (SOS footnote) - registered total blank; enrollment 57/34 printed.
* 1968 WAS: SOS printed county enrolled totals (10,672 R / 6,264 D) exceed the sum of the printed town values (9,185 / 5,772) by exactly Calais's figures (1,487 / 492) in both columns - the SOS total evidently double-counted Calais. Town values kept as printed; the state totals (227,199 / 160,437) inherit the error. Registered total reconciles exactly.
* 1970 (statewide): SOS footnote - Madawaska, Upton, Grand Falls Plantation and Topsfield did not report registered voters.
* 1970 AND: town DEV-P values (re-verified) sum to 23,466; SOS printed county total is 24,950 (diff 1,484 - SOS addition error; REP and registered reconcile exactly). Town values kept as printed; state DEM total inherits the error.
* 1988-11 (general file 19883.pdf): the report carries both the June 14 primary enrollment/registration and the Nov 8 general registration total per town; the primary columns duplicate the June 1988 report (19882.pdf), which is therefore not separately transcribed.
* 1990-11 (19901.pdf): report carries the June 12, 1990 primary enrollment/registration and the Nov 6 general registration total; primary columns duplicate the June 1990 report (1990.pdf), which is therefore not separately transcribed.
* 1990 ARO: 'E Plantation deorganized July 1, 1990' (SOS footnote) - primary figures 4 D / 32 R / 5 U = 41; no general-election total.
* 1990 FRA: 'Kingfield did not submit general election total' (SOS footnote) - general blank (printed as 0).
* 1990 ARO: Nashville Plt. unenrolled printed value illegible in OCR (16 D / 11 R / ? U = 28) - recorded 1 from the row total.
* 1990 PEN: Maxfield unenrolled recorded 7 from the row total (13 D / 28 R / ? = 48).
* 1990-06 vs 1990-11: the June 12, 1990 snapshot is taken from the primary columns of the November report (fully reconciled to its printed county/state totals). The standalone June report (1990.pdf) is nearly identical but not exact: its state totals are 272,079 D / 246,268 R / 306,281 U / 824,628 (vs 272,089 / 246,277 / 306,292 / 824,658 in the November report's primary columns); the one town-level difference confirmed is Ashland (June report 201 R / 1,021 total; November report 211 R / 1,031). The June report also prints Winterport's total as 2,539 where the parts sum to 2,335 (November report: 2,335). Treat the November report's primary columns as the SOS's revised June figures.
* 1990 general-election totals: Kingfield, Aurora, Albany Twp and Whitneyville 'did not submit general election total' (SOS footnotes) - blank.
* 1992 FRA: Carrabassett Valley printed 44 D / 0 L / 111 R / 135 U = 290 (parts sum to 290; kept).
* 1992-11 (1992.pdf): report carries the June 9, 1992 primary enrollment (D/Libertarian/R/U) with primary registration total and the Nov 3 general registration total. Primary columns duplicate the June 1992 report (19921.pdf), which is therefore not separately transcribed.
* 1992 SAG: town general-election totals (re-verified) sum to 25,153; SOS printed county total 25,159 (slip of 6). Kept as printed.
* 1992 WAS: town general-election totals (re-verified) sum to 26,184; SOS printed county total 26,190 (slip of 6). Kept as printed.
* 1992 PEN: 'Un. Twp. of Indian Purchase' shows 0 in all primary columns and 155 registered at the general election (first election with a combined ballot for Indian Purchase T3/T4 - SOS note). SOM: The Forks Plantation likewise 0 at primary, 64 at general.
* 1994-06 (1994.pdf, June 14 1994 primary): eight municipalities marked '*' had not submitted information: Richmond (SAG), Brighton Plt. and The Forks Plt. (SOM), Garland (PEN), Matinicus Isle Plt. (KNO), Grand Lake Stream Plt., Marshfield and Whitneyville (WAS) - recorded as data_unavailable. County and state totals exclude them.
* 1994 PEN: Greenfield does not appear in the June 1994 report (deorganized 1993; it appears in 1992). Not an omission.
* 1995 AND: Sabattus printed total 3,291 (parts sum to 3,291; SOS county total 75,501 = sum of printed totals). Kept as printed.
* 1995 ARO: Winterville Plt. printed 117 D / 32 Ind / 37 R / 0 / 0 / 0 Unenrolled = 186 (zero unenrolled; kept as printed). SOS county total row prints 17,128 R and 57,228 total where the towns sum to 17,126 / 57,226 (slip of 2); state total 274,498 R uses 17,128.
* 1995 HAN: Orland printed 370 D / 11 Ind / 374 R / 7 G / 0 Ref / 1,432 Unenrolled / 1,432 TOTAL - the 'unenrolled' cell repeats the total (parts sum to 2,194). Recorded as printed with unenrolled flagged; true unenrolled is probably 670 (1,432 - 762). SOS county total uses the printed values. → CORRECTED in the dataset (v5): unenrolled recomputed as 1,432 − 762 = 670, imputation = sos_error_corrected.
* 1995 HAN: Osborn all zeros (not reported). **[v7.1: blanked and `data_unavailable`.]** Brooksville shows 156 'Independent' and Eastbrook 63 'Independent' - as printed.
* 1995 (statewide): 'Independent' here is a party enrollment column (the Independent Party, briefly recognized in Maine in 1995), distinct from 'Unenrolled'.
* 1995 KNO: North Haven printed 107/7/118/2/22/100 = 358 (parts sum to 356); Thomaston parts sum to 2,467. County total 30,123 = sum of printed totals. Kept as printed.
* 1995 OXF: Un. Twp. of Mason all zeros (not reported). **[v7.1: blanked and `data_unavailable`.]** Upton printed 21 D / 33 Ind / 17 R / 0 / 0 / 0 Unenrolled = 71 (kept as printed).
* 1995 PEN: Alton, Edinburg, Webster Plt. print 0 unenrolled (as printed). Mattawamkeag 186 'Independent', Medway 148, Glenburn/Bangor large 'Independent' counts - as printed (Independent Party enrollment).
* 1995 SAG: Bath printed 29 D / 0 Ind / 2,031 R / 0 / 0 / 2,356 U = 4,416 (Democratic figure obviously wrong - Bath had 1,996 D in 1992 - but printed and used in the SOS county total). West Bath printed 400 D / 476 Ind / 425 R / 0 / 0 / 0 U = 1,301 (the 'Independent' cell is almost certainly the unenrolled count). Both kept as printed and flagged. → West Bath CORRECTED in the dataset (v5): 476 moved from Independent to unenrolled, imputation = sos_error_corrected; Bath left as printed (no correct value can be inferred).
* 1995 PIS: 'Greenville Townships' listed separately (36/1/61/0/0/85 = 183).
* 1995 SOM: Anson and The Forks Plantation both print 15 D / 21 Ind / 17 R / 0 / 0 / 0 = 53 - Anson's row is clearly a duplicate of The Forks' figures (Anson had 1,806 registered in 1994). SOS county total uses the printed values. Anson recorded as printed and flagged (treat Anson enrollment as unavailable for 1995). → Anson BLANKED in the dataset (v5), imputation = sos_error_unrecoverable (its real figures were never published).
* 1995 WAL: Prospect printed 140 D / 199 Ind / 128 R / 0 / 8 / 0 U = 475 ('Independent' cell probably the unenrolled count; kept as printed, flagged). → CORRECTED in the dataset (v5): 199 moved from Independent to unenrolled, imputation = sos_error_corrected.
* 1995 WAS: a row labelled 'Limington' (151/14/156/0/0/176 = 497) appears in the Washington County list between Jonesport and Lubec and is included in the Washington county total. York County has its own Limington row (482/23/423/2/0/603 = 1,533), so the Washington row is a stray of unknown origin (possibly Lubec-area 'Lubec'/'Trescott' confusion, or a town omitted elsewhere). Kept in the Washington list as printed, labelled '(sic)', and excluded from unit matching.
* 1995 WAS: Whiting and Whitneyville print identical rows (41/0/59/2/3/51 = 156) - likely a duplication error at SOS; kept as printed, flagged. 'Un. Twp. of Edmunds' appears twice (73/8/41/0/2/63 = 187 and 11/2/19/0/1/13 = 46); the second is probably a different township (e.g. Trescott area) mislabelled - kept as two rows with the second labelled 'UN.TWP. OF EDMUNDS (2nd listing)'. Machiasport 345 'Independent' - as printed. Grand Lake Stream Plt., Robbinston, Un.Twp. #27, Centerville print 0 unenrolled.
* 1997-11 YOR: Biddeford Municipal Totals row prints 8,760 D and a total of 14,350 where the parts sum to 14,550 (the SOS county total uses 14,550). Recorded 14,550.
* 1984 CUM: town Republican enrollments sum to 10 more than the SOS's printed county total; 1984 WAS: the SOS's own primary-column county totals for Washington do not add (REP 1,004 / DEM 610 / registered 2,504 short of the town sums) while the general-election total does; town values kept.
* 1995 WAS: a row labelled "Limington" (497 registered) sits in the Washington County list and is included in the SOS's Washington and state totals; York County has its own Limington. The stray row is excluded from every table and noted here. Statewide in the tables: 957,927 = SOS 958,477 − 497 (stray Limington) − 53 (Anson's row, blanked as a duplicate of The Forks); v6 gave 957,980 here, which omitted the Anson adjustment.
* 1997 YOR: Biddeford's printed municipal total (14,350) is 200 below its parts and the SOS county total; 14,550 recorded.

**Town-years that are implausible as printed** (v6 table, kept for reference; v6.1 extends it to 79 town-years and classifies each one — see "What changed in v6.1" at the top) (registered total under 45% or over 220% of the unit's neighbouring snapshots; every one re-checked against the page image and confirmed to be what the SOS printed - typically an incomplete municipal report, e.g. only one ward of Gardiner, Hallowell and Bath in Nov 2005, or a single-ward figure for Rumford in 1997). They are kept as printed, carry an `imputation_note` on the row, and should be suppressed or footnoted on the site:

| snapshot | unit | county | total as printed | median of neighbouring snapshots |
|---|---|---|---|---|
| 1954-09-13 | Southwest Harbor | HAN | 323 | 906 |
| 1954-09-13 | Buckfield | OXF | 212 | 569 |
| 1956-09-10 | Springfield | PEN | 83 | 220 |
| 1956-11-06 | Springfield | PEN | 81 | 213 |
| 1962-11-06 | Caswell | ARO | 486 | 210 |
| 1962-11-06 | Wallagrass | ARO | 136 | 317 |
| 1970-11-03 | Kenduskeag | PEN | 183 | 463 |
| 1970-11-03 | Lyman | YOR | 443 | 1,024 |
| 1988-06-14 | Mariaville | HAN | 19 | 167 |
| 1992-06-09 | New Sweden | ARO | 88 | 497 |
| 1992-06-09 | Indian Purchase Twp. | PEN | 0 | 150 |
| 1992-06-09 | Jonesboro | WAS | 113 | 386 |
| 1994-06-14 | Milford | PEN | 506 | 2,363 |
| 1995-11-07 | New Sweden | ARO | 233 | 534 |
| 1995-11-07 | Van Buren | ARO | 36 | 2,162 |
| 1995-11-07 | Alton | PEN | 44 | 549 |
| 1995-11-07 | Lagrange | PEN | 220 | 531 |
| 1995-11-07 | Hartland | SOM | 500 | 1,277 |
| 1995-11-07 | Robbinston | WAS | 161 | 406 |
| 1995-11-07 | Whiting | WAS | 156 | 404 |
| 1997-11-04 | New Sweden | ARO | 186 | 473 |
| 1997-11-04 | Rumford | OXF | 954 | 5,343 |
| 2005-11-08 | Gardiner | KEN | 1,094 | 4,114 |
| 2005-11-08 | Hallowell | KEN | 397 | 2,192 |
| 2005-11-08 | Lagrange | PEN | 170 | 695 |
| 2005-11-08 | Bath | SAG | 956 | 7,099 |
| 2006-06-13 | Livermore Falls | AND | 396 | 2,498 |
| 2006-06-13 | Gardiner | KEN | 1,078 | 4,217 |
| 2006-06-13 | Hallowell | KEN | 395 | 2,106 |
| 2006-06-13 | Richmond | SAG | 425 | 2,356 |

## Interpretation notes worth carrying onto the site

* The inactive series explains the active-count swings. Inactive totals: ~100K in 2007, tapering to ~25K by 2014, then only 2,000–6,000 from 2015 through 2021, then 216,035 in Nov 2022 after the 2022 confirmation mailing, declining to 185,622 by Nov 2024, then 534 in Feb 2025 after that cohort was removed following two federal elections. Inactive voters skew unenrolled (47% vs 30% of actives in Nov 2024).
* Unenrolled voters are in every table and roll-up; the 1990s Independent Party (`IND`) and Reform Party (`REF`) are separate codes and are never merged into Unenrolled.
* All previously documented quirks (9-9 placeholder rows 2007–2009, Eliot's off-by-one totals 2010–2011, Portland precinct 1-45, blank-precinct zero rows, 2006 report's statewide row disagreeing with its county totals by 1,536) are unchanged and flagged in the data.

## Libertarian enrollment since 2023 (site audit, 2026-10-02)

* Lewiston shows 823 Libertarians in the November 2023 file (3.8%), 983 in November 2025 (4.1%) and 650 in March 2026, against 0.1% in November 2022 and about 0.7% statewide; Auburn (2.2–2.3%) and Old Town (2.7–3.3%) are also high. The figures are **exactly as the SOS files report them** in every file from 11.7.23 onward (ward rows checked: Lewiston 3-1/HD 94 lists 193 L of 1,600; 5-1/HD 95 125 of 1,032), the column order is D|G|L|NL|R|U and every row's party counts sum to its printed total, so this is not a shifted column. The jump coincides with the Libertarian Party of Maine's 2023 enrollment drive that re-qualified it as a party in January 2024 (and with reports, in Aroostook County, of voters enrolled without meaning to be). Kept as reported; the Lewiston page says so under its registration table.
* Reports carry a party's enrollments whether or not it was ballot-qualified that year (Libertarian 2021–2022 residual counts), so the site no longer says minor parties appear "only in years they were ballot-qualified".
* District registration: since the November 2022 file every ward/precinct row carries its congressional, Senate and House district, so district totals for reports from then on are exact sums of those rows (`registration_precinct.csv`); earlier reports are apportioned by 2020 population. The site uses the exact figures (Portland's House districts no longer share one set of shares).
