# Absentee voting — FLAGS (v1.3, 2026-10-14)

1. **Two files have no town column** *(v1.3: both now mapped to their town; see the end of this item)*. The SOS files for the February 24, 2026 special election (House District 94, Lewiston) and the April 2, 2019 special (HD 52) leave the municipality blank on every
   record; those two elections appear with `municipality` and `unit_id` empty (747 records). The ward/precinct and
   district codes are still in `absentee_by_town_precinct_district.csv`. **v1.3:** those codes match exactly one town each:
   - 2019 HD 52 (wards 1-1 to 7-1, CD 1, SD 23, CC 2) is **Bath**, with the same codes as in Nov 2018 and Nov 2019.
   - 2026 HD 94 (wards 2-1 to 5-1, CD 2, SD 21) is **Lewiston**, with the same codes as in Nov 2025 and June 2026.

   `municipality` and `unit_id` are now filled.
2. **Unparseable lines.** Each file ends with a few lines that are not records (report trailers); 3–22 per file were
   skipped, 60 in the November 2013 and June 2014 files. `absentee_elections.csv` shows the count per file.
3. **Township names.** 776 records over 18 years come from unorganized townships that the SOS spells inconsistently
   (e.g. "Frenchtown Twp (Kokadjo)", "T15 R15 Wels Twp", "Ta R7 Wels (Dolby)"); 8 such spellings (19 town rows) could not
   be matched to a `unit_id` and are kept with `unit_id` blank (v1.1 matched T17 R3 Van Buren Cove → MPD-0614; v1.2, with
   Matt's approval of 2026-10-05, matched Kossuth Twp → MPD-1027 (former town of Kossuth), Williamsburg Twp → MPD-1015 and
   Long Pond Twp → MPD-1019 (former Long Pond Plt)). Frenchtown, Harfords Point, Lily Bay, Shawtown, Sandbar Tract,
   T15 R15 Wels and Ta R7 Wels have no unit in the units tables. (Checked again in v1.3. None of the seven clearly matches an existing unit. T15 R15 appears in the results only inside the combined "Big Twenty / T15 R15", MPD-0602, which is a join roll-up, not the same unit. They stay unmatched until Matt decides whether to create units for them.) Sinclair (T17 R4), Codyville Plt, Blanchard Twp and T4 Indian
   Purchase Twp were matched by hand.
4. **Code changes over time.** Files before 2015 have no "request denied" or rejection-reason column (rejection reasons
   start with the March 2015 file). The June 2026 file uses a new layout: accepted ballots are coded `ACT` (mapped to
   `ACC` here), there is a ballot-type column (RB regular, SB state blank, AC), and a new return code `DB` = drop box;
   `returned_drop_box` is therefore zero before 2026 (drop-box returns were coded as "delivered by voter" earlier).
5. **Party codes.** D, R, G (Green Independent), L (Libertarian), N (No Labels, 2023–2025; written `NL` in the files),
   U (unenrolled). A few dozen records carry retired codes (A, C, PE, FW) or a blank; they are in `unknown` (the
   retired codes were folded in v1.1; v1 kept them as separate party rows).
6. **"Requested" is applications, not voters.** Duplicate applications by the same voter are separate records
   (`DUP` flag) and are counted; they are a fraction of a percent.
7. **Special elections** cover only the district voting, so their town lists are short; `special_district` names the
   seat where the SOS label gives it.
8. **Not included:** the SOS "Absentee Ballot Summary Statistics" Excel for November 2020 (a summary of the same file)
   and the daily absentee "cumulative reports" the SOS posts during an election period; also nothing before
   November 2008, which is where the SOS archive starts.
9. **Returned > issued (30 town rows, kept as in the file).** In 30 election × town × party rows more ballots are recorded
   as returned than issued — 14 in November 2008, 13 in November 2012, 2 in June 2014, 1 in November 2014, almost all by
   one (LaGrange Nov 2008: 42 issued / 45 returned; Steuben D, Garland U, Liberty R Nov 2012: by 2). These are SOS records
   with a received date but no issue code; the counts are left as recorded.
10. **UOCAVA definitions.** `uocava` counts records whose request type is UR (UOCAVA request), FPCA, FW or FWAB, or whose
   issue type is FW/FWAB. The 2008 and 2009 layouts carry none of these codes, so `uocava` is blank (unknown), not 0.
   June 2026 was mis-coded in v1 (WF = "Written Immediate Family" counted as UOCAVA) and corrected in v1.1 to 987.
11. **Combined reporting units.** Absentee rows are per township; the results sometimes combine townships with a
   neighbour (Guilford/Kingsbury, Benedicta/Silver Ridge, Benedicta/Sinclair, Saint Agatha/Sinclair, Caribou/Connor,
   Hodgdon/Cary). Roll up before computing absentee shares — see the README.
12. **`rejected` is not defined the same way in every file (Data Audit II, R4).** In most files `rejected` includes ballots that were issued but never came back by the deadline (reason BND), so statewide `accepted + rejected − issued` is between −1 and +185. **In these files the unreturned ballots are not counted as rejected**, so `rejected` is far smaller:

| Election | Rejected | Issued but not returned | accepted + rejected − issued |
|---|---|---|---|
| 2010-11-02 | 1,132 | 12,875 | −12,868 |
| 2015-03-10 special | 0 | 108 | −108 |
| 2015-11-03 | 167 | 4,192 | −4,154 |
| 2017-11-07 | 620 | 9,607 | −9,496 |
| 2018-06-12 | 300 | 4,018 | −3,990 |
| 2019-11-05 | 260 | 6,190 | −6,111 |
| 2022-11-08 | 1,578 | 14,022 | −13,585 |
| 2023-06-13 special | 1 | 90 | −90 |
| 2024-03-05 | 164 | 4,845 | −4,801 |

   In these files the reject-reason table has almost no BND records: 1 in 2015-11, 4 in 2017-11, 36 in 2022-11 and 6 in 2024-03, against thousands in the other files. The SOS evidently did not code late ballots as rejected in those extracts.

   Smaller shortfalls are in 2009-11 (−148), 2012-11 (−140), the 2016-03 special (−14) and the 2019-03 special (−29).

   **Effect:** a rejection-rate chart would show 2022 at about 0.7% instead of about 6%. For a consistent measure use `issued − accepted` (ballots issued that did not count) or `returned − accepted` (returned ballots turned down); both mean the same thing in every file. The raw files are not kept here, so `rejected` was not recomputed.
13. **UOCAVA counts are uneven between file layouts (Data Audit II, R5; probable).**

   | Election | Statewide `uocava` |
   |---|---|
   | Nov 2012 | 1,350 |
   | **Nov 2014** | **104** |
   | Nov 2016 | 2,366 |
   | Nov 2018 | 892 |
   | Nov 2020 | 3,955 |
   | Nov 2022 | 826 |
   | Nov 2024 | 2,150 |
   | **June 2014 primary** | **54** |

   A general election with 104 military and overseas voters is implausible, so the request and issue codes probably changed in the 2014 layouts. The off-year referendums run high (2013: 3,508; June 2017: 4,602, 30% of requests; 2021: 5,469; 2025: 6,053), probably because standing overseas requests (FPCA) produce a ballot for every election. Treat `uocava` as comparable only within a file layout.

   To settle it, check each layout's REQTYPE and SENTTYPE code lists against the federal EAVS survey, Section B. The 2024 EAVS brief has no UOCAVA figures, so the full EAVS dataset is needed.
