Full Code of votingworks/arlo for AI

main 3c166ed82423 cached
687 files
16.2 MB
4.3M tokens
2445 symbols
1 requests
Copy disabled (too large) Download .txt
Showing preview only (17,130K chars total). Download the full file to get everything.
Repository: votingworks/arlo
Branch: main
Commit: 3c166ed82423
Files: 687
Total size: 16.2 MB

Directory structure:
gitextract_yj7g7chq/

├── .basedpyright/
│   └── baseline.json
├── .circleci/
│   └── config.yml
├── .github/
│   └── workflows/
│       └── add-to-arlo.yml
├── .gitignore
├── .gitmodules
├── .husky/
│   └── pre-commit
├── .prettierignore
├── .pylintrc
├── .python-version
├── .slugignore
├── .vscode/
│   └── settings.json
├── LICENSE
├── Makefile
├── Procfile
├── README.md
├── alembic.ini
├── app.json
├── arlo.code-workspace
├── client/
│   ├── .eslintignore
│   ├── .eslintrc.js
│   ├── .gitignore
│   ├── .node-version
│   ├── .prettierignore
│   ├── .prettierrc.js
│   ├── .stylelintrc-css.js
│   ├── .stylelintrc.js
│   ├── Makefile
│   ├── cypress/
│   │   ├── end-to-end/
│   │   │   ├── ballot-comparison.cy.js
│   │   │   ├── ballot-polling.cy.js
│   │   │   ├── batch-comparison.cy.js
│   │   │   └── full-hand-tally.cy.js
│   │   ├── fixtures/
│   │   │   ├── CSVs/
│   │   │   │   ├── candidate-total-batch/
│   │   │   │   │   └── sample_candidate_totals_by_batch.csv
│   │   │   │   ├── contest/
│   │   │   │   │   ├── ballot_comparison_contests.csv
│   │   │   │   │   ├── sample_standardized_contests.csv
│   │   │   │   │   ├── sample_standardized_contests_contest_name_col_error.csv
│   │   │   │   │   └── sample_standardized_contests_jurisdiction_col_error.csv
│   │   │   │   ├── cvr/
│   │   │   │   │   ├── ballot_comparison_cvr.csv
│   │   │   │   │   └── ballot_comparison_cvr_col_error.csv
│   │   │   │   ├── jurisdiction/
│   │   │   │   │   ├── sample_jurisdiction_filesheet.csv
│   │   │   │   │   └── sample_jurisdiction_filesheet_jurisdiction_col_error.csv
│   │   │   │   └── manifest/
│   │   │   │       ├── ballot_comparison_manifest.csv
│   │   │   │       ├── ballot_comparison_manifest_col_error.csv
│   │   │   │       ├── ballot_polling_manifest.csv
│   │   │   │       ├── ballot_polling_manifest_col_error.csv
│   │   │   │       └── batch_comparison_manifest.csv
│   │   │   └── example.json
│   │   ├── plugins.ts
│   │   ├── seed-test-db.sh
│   │   └── support/
│   │       ├── commands.js
│   │       └── e2e.js
│   ├── cypress.config.ts
│   ├── index.html
│   ├── package.json
│   ├── public/
│   │   ├── 99e97f1f-18fd-4ba7-8ce7-189287f60bf3.txt
│   │   ├── manifest.json
│   │   ├── sample_ballot_manifest.csv
│   │   ├── sample_candidate_totals_by_batch.csv
│   │   ├── sample_jurisdiction_filesheet.csv
│   │   ├── sample_manifest_BC.csv
│   │   ├── sample_manifest_hybrid.csv
│   │   ├── sample_standardized_contests.csv
│   │   └── us-states-counties.json
│   ├── run-cypress-tests.sh
│   ├── src/
│   │   ├── App.css
│   │   ├── App.test.tsx
│   │   ├── App.tsx
│   │   ├── components/
│   │   │   ├── Atoms/
│   │   │   │   ├── AsyncButton.test.tsx
│   │   │   │   ├── AsyncButton.tsx
│   │   │   │   ├── CSVForm.tsx
│   │   │   │   ├── CodeInput.test.tsx
│   │   │   │   ├── CodeInput.tsx
│   │   │   │   ├── Confirm.test.tsx
│   │   │   │   ├── Confirm.tsx
│   │   │   │   ├── CopyToClipboard.test.tsx
│   │   │   │   ├── CopyToClipboard.tsx
│   │   │   │   ├── Count.test.tsx
│   │   │   │   ├── Count.tsx
│   │   │   │   ├── FileUpload.test.tsx
│   │   │   │   ├── FileUpload.tsx
│   │   │   │   ├── Form/
│   │   │   │   │   ├── FormButton.tsx
│   │   │   │   │   ├── FormButtonBar.tsx
│   │   │   │   │   ├── FormField.test.tsx
│   │   │   │   │   ├── FormField.tsx
│   │   │   │   │   ├── FormSection.tsx
│   │   │   │   │   ├── FormWrapper.tsx
│   │   │   │   │   ├── Select.tsx
│   │   │   │   │   ├── __snapshots__/
│   │   │   │   │   │   └── FormField.test.tsx.snap
│   │   │   │   │   ├── _helpers.tsx
│   │   │   │   │   └── styledBits.tsx
│   │   │   │   ├── H2Title.tsx
│   │   │   │   ├── H3Title.tsx
│   │   │   │   ├── Layout.tsx
│   │   │   │   ├── LinkButton.tsx
│   │   │   │   ├── ListAndDetail.tsx
│   │   │   │   ├── RefreshTag.test.tsx
│   │   │   │   ├── RefreshTag.tsx
│   │   │   │   ├── SegmentedControl.test.tsx
│   │   │   │   ├── SegmentedControl.tsx
│   │   │   │   ├── Sidebar.test.tsx
│   │   │   │   ├── Sidebar.tsx
│   │   │   │   ├── SpacedCard.tsx
│   │   │   │   ├── StatusBar.tsx
│   │   │   │   ├── StatusBox.test.tsx
│   │   │   │   ├── StatusBox.tsx
│   │   │   │   ├── StatusTag.tsx
│   │   │   │   ├── Steps.test.tsx
│   │   │   │   ├── Steps.tsx
│   │   │   │   ├── Table.tsx
│   │   │   │   ├── Wrapper.tsx
│   │   │   │   ├── __snapshots__/
│   │   │   │   │   └── Sidebar.test.tsx.snap
│   │   │   │   └── react-table-config.d.ts
│   │   │   ├── AuditAdmin/
│   │   │   │   ├── ActivityLog.test.tsx
│   │   │   │   ├── ActivityLog.tsx
│   │   │   │   ├── AuditAdminView.test.tsx
│   │   │   │   ├── AuditAdminView.tsx
│   │   │   │   ├── Progress/
│   │   │   │   │   ├── AuditBoardsTable.tsx
│   │   │   │   │   ├── JurisdictionDetail.test.tsx
│   │   │   │   │   ├── JurisdictionDetail.tsx
│   │   │   │   │   ├── JurisdictionDiscrepancies.tsx
│   │   │   │   │   ├── Progress.test.tsx
│   │   │   │   │   ├── Progress.tsx
│   │   │   │   │   ├── ProgressMap.tsx
│   │   │   │   │   └── map-county-corrections.ts
│   │   │   │   ├── Setup/
│   │   │   │   │   ├── Contests/
│   │   │   │   │   │   ├── ContestForm.tsx
│   │   │   │   │   │   ├── ContestSelect.test.tsx
│   │   │   │   │   │   ├── ContestSelect.tsx
│   │   │   │   │   │   ├── Contests.test.tsx
│   │   │   │   │   │   ├── Contests.tsx
│   │   │   │   │   │   ├── HybridContestForm.test.tsx
│   │   │   │   │   │   ├── __snapshots__/
│   │   │   │   │   │   │   ├── Contests.test.tsx.snap
│   │   │   │   │   │   │   └── HybridContestForm.test.tsx.snap
│   │   │   │   │   │   ├── _mocks.ts
│   │   │   │   │   │   └── schema.ts
│   │   │   │   │   ├── Participants/
│   │   │   │   │   │   ├── Participants.test.tsx
│   │   │   │   │   │   ├── Participants.tsx
│   │   │   │   │   │   └── _mocks.ts
│   │   │   │   │   ├── Review/
│   │   │   │   │   │   ├── ConfirmLaunch.tsx
│   │   │   │   │   │   ├── CvrChoiceNameConsistencyError.tsx
│   │   │   │   │   │   ├── LabeledValue.tsx
│   │   │   │   │   │   ├── Review.test.tsx
│   │   │   │   │   │   ├── Review.tsx
│   │   │   │   │   │   ├── SamplePreview.tsx
│   │   │   │   │   │   ├── StandardizeContestChoiceNamesDialog.tsx
│   │   │   │   │   │   ├── StandardizeContestNames.tsx
│   │   │   │   │   │   ├── _mocks.ts
│   │   │   │   │   │   └── useSampleSizes.ts
│   │   │   │   │   ├── Settings/
│   │   │   │   │   │   ├── Settings.test.tsx
│   │   │   │   │   │   ├── Settings.tsx
│   │   │   │   │   │   ├── schema.ts
│   │   │   │   │   │   └── states.ts
│   │   │   │   │   ├── Setup.test.tsx
│   │   │   │   │   └── Setup.tsx
│   │   │   │   ├── __snapshots__/
│   │   │   │   │   ├── ActivityLog.test.tsx.snap
│   │   │   │   │   └── AuditAdminView.test.tsx.snap
│   │   │   │   ├── timers.test.tsx
│   │   │   │   └── useRoundsAuditAdmin.ts
│   │   │   ├── AuditBoard/
│   │   │   │   ├── Atoms.tsx
│   │   │   │   ├── AuditBoardView.test.tsx
│   │   │   │   ├── AuditBoardView.tsx
│   │   │   │   ├── Ballot.test.tsx
│   │   │   │   ├── Ballot.tsx
│   │   │   │   ├── BallotAudit.tsx
│   │   │   │   ├── BlockCheckbox.tsx
│   │   │   │   ├── BoardTable.test.tsx
│   │   │   │   ├── BoardTable.tsx
│   │   │   │   ├── MemberForm.test.tsx
│   │   │   │   ├── MemberForm.tsx
│   │   │   │   ├── SignOff.test.tsx
│   │   │   │   ├── SignOff.tsx
│   │   │   │   ├── __snapshots__/
│   │   │   │   │   ├── AuditBoardView.test.tsx.snap
│   │   │   │   │   ├── Ballot.test.tsx.snap
│   │   │   │   │   ├── BoardTable.test.tsx.snap
│   │   │   │   │   ├── MemberForm.test.tsx.snap
│   │   │   │   │   └── SignOff.test.tsx.snap
│   │   │   │   ├── _mocks.ts
│   │   │   │   ├── ballotInterpretation.test.ts
│   │   │   │   └── ballotInterpretation.ts
│   │   │   ├── Header.test.tsx
│   │   │   ├── Header.tsx
│   │   │   ├── HomeScreen.test.tsx
│   │   │   ├── HomeScreen.tsx
│   │   │   ├── JurisdictionAdmin/
│   │   │   │   ├── BatchInventory.test.tsx
│   │   │   │   ├── BatchInventory.tsx
│   │   │   │   ├── BatchRoundProgress.tsx
│   │   │   │   ├── BatchRoundSteps/
│   │   │   │   │   ├── BatchRoundSteps.test.tsx
│   │   │   │   │   ├── BatchRoundSteps.tsx
│   │   │   │   │   ├── BatchRoundTallyEntry/
│   │   │   │   │   │   ├── BatchDetail.tsx
│   │   │   │   │   │   ├── BatchRoundTallyEntry.test.tsx
│   │   │   │   │   │   ├── BatchRoundTallyEntry.tsx
│   │   │   │   │   │   └── index.ts
│   │   │   │   │   ├── DownloadBatchRetrievalListButton.tsx
│   │   │   │   │   ├── DownloadBatchTallySheetsButton.tsx
│   │   │   │   │   ├── DownloadStackLabelsButton.tsx
│   │   │   │   │   ├── EnterTalliesStep.tsx
│   │   │   │   │   ├── PrepareBatchesStep.tsx
│   │   │   │   │   └── TallyEntryAccountsStep.tsx
│   │   │   │   ├── CreateAuditBoards.test.tsx
│   │   │   │   ├── CreateAuditBoards.tsx
│   │   │   │   ├── FullHandTallyDataEntry.test.tsx
│   │   │   │   ├── FullHandTallyDataEntry.tsx
│   │   │   │   ├── JurisdictionAdminView.test.tsx
│   │   │   │   ├── JurisdictionAdminView.tsx
│   │   │   │   ├── QRs.tsx
│   │   │   │   ├── RoundDataEntry.test.tsx
│   │   │   │   ├── RoundDataEntry.tsx
│   │   │   │   ├── RoundManagement.test.tsx
│   │   │   │   ├── RoundManagement.tsx
│   │   │   │   ├── RoundProgress.test.tsx
│   │   │   │   ├── RoundProgress.tsx
│   │   │   │   ├── __snapshots__/
│   │   │   │   │   ├── FullHandTallyDataEntry.test.tsx.snap
│   │   │   │   │   └── RoundProgress.test.tsx.snap
│   │   │   │   ├── _mocks.ts
│   │   │   │   ├── candidateTotalsByBatchTemplateCsv.ts
│   │   │   │   ├── generateSheets.test.tsx
│   │   │   │   ├── generateSheets.ts
│   │   │   │   ├── useAuditSettingsJurisdictionAdmin.ts
│   │   │   │   ├── useBallots.ts
│   │   │   │   ├── useBatchResults.ts
│   │   │   │   ├── useContestsJurisdictionAdmin.ts
│   │   │   │   ├── useFullHandTallyResults.ts
│   │   │   │   ├── useResults.ts
│   │   │   │   └── useRoundsJurisdictionAdmin.ts
│   │   │   ├── PublicPages/
│   │   │   │   ├── AuditPlanner/
│   │   │   │   │   ├── AuditPlanCard.tsx
│   │   │   │   │   ├── AuditPlanner.test.tsx
│   │   │   │   │   ├── AuditPlanner.tsx
│   │   │   │   │   ├── ElectionResultsCard.tsx
│   │   │   │   │   ├── SampleSize.tsx
│   │   │   │   │   ├── electionResults.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   └── sampleSizes.ts
│   │   │   │   ├── NotFound.tsx
│   │   │   │   └── PublicPages.tsx
│   │   │   ├── SupportTools/
│   │   │   │   ├── Audit.tsx
│   │   │   │   ├── Breadcrumbs.tsx
│   │   │   │   ├── Jurisdiction.tsx
│   │   │   │   ├── List.tsx
│   │   │   │   ├── Organization.tsx
│   │   │   │   ├── RoundsTable.tsx
│   │   │   │   ├── SupportTools.test.tsx
│   │   │   │   ├── SupportTools.tsx
│   │   │   │   ├── index.tsx
│   │   │   │   ├── shared.tsx
│   │   │   │   └── support-api.tsx
│   │   │   ├── TallyEntryUser/
│   │   │   │   ├── TallyEntryLoginScreen.test.tsx
│   │   │   │   ├── TallyEntryLoginScreen.tsx
│   │   │   │   ├── TallyEntryScreen.test.tsx
│   │   │   │   ├── TallyEntryScreen.tsx
│   │   │   │   ├── TallyEntryUserView.test.tsx
│   │   │   │   ├── TallyEntryUserView.tsx
│   │   │   │   └── useCurrentUser.ts
│   │   │   ├── UserContext.tsx
│   │   │   ├── _mocks.ts
│   │   │   ├── testUtilities.test.tsx
│   │   │   ├── testUtilities.tsx
│   │   │   ├── useAuditAdminsOrganizations.ts
│   │   │   ├── useAuditBoards.ts
│   │   │   ├── useAuditSettings.ts
│   │   │   ├── useBatchFilesBundle.ts
│   │   │   ├── useCSV.ts
│   │   │   ├── useContestChoiceNameStandardizations.ts
│   │   │   ├── useContestNameStandardizations.ts
│   │   │   ├── useContests.ts
│   │   │   ├── useContestsBallotComparison.ts
│   │   │   ├── useFeatureFlag.ts
│   │   │   ├── useFileUpload.ts
│   │   │   ├── useJurisdictions.ts
│   │   │   ├── useSearchParams.ts
│   │   │   ├── useStandardizedContests.ts
│   │   │   ├── utilities.test.ts
│   │   │   └── utilities.ts
│   │   ├── fonts/
│   │   │   └── Proxima-Nova-Condensed-Regular.otf
│   │   ├── index.css
│   │   ├── index.tsx
│   │   ├── react-app-env.d.ts
│   │   ├── setupTests.ts
│   │   ├── types.ts
│   │   └── utils/
│   │       ├── api.ts
│   │       ├── array.test.ts
│   │       ├── array.ts
│   │       ├── debounce.test.ts
│   │       ├── debounce.ts
│   │       ├── indexes.test.ts
│   │       ├── indexes.ts
│   │       ├── number-schema.test.ts
│   │       ├── number-schema.ts
│   │       ├── number.test.ts
│   │       ├── number.ts
│   │       ├── objects.test.ts
│   │       ├── objects.ts
│   │       ├── responsiveness.ts
│   │       ├── sleep.ts
│   │       ├── string.test.ts
│   │       └── string.ts
│   ├── tsconfig.json
│   └── vite.config.ts
├── docs/
│   ├── architecture.md
│   ├── auth0.md
│   ├── contribution-guidelines.md
│   └── loadtesting.md
├── fixtures/
│   ├── README.md
│   ├── __init__.py
│   ├── generate_election.py
│   ├── medium-election/
│   │   ├── Acton - Lord of Coin - candidate totals by batch.csv
│   │   ├── Acton - ballot manifest.csv
│   │   ├── Acton - cvrs.csv
│   │   ├── Black Hallows - Lord of Coin - candidate totals by batch.csv
│   │   ├── Black Hallows - ballot manifest.csv
│   │   ├── Black Hallows - cvrs.csv
│   │   ├── Lindow - Lord of Coin - candidate totals by batch.csv
│   │   ├── Lindow - ballot manifest.csv
│   │   ├── Lindow - cvrs.csv
│   │   ├── Medium Election - jurisdictions.csv
│   │   ├── Medium Election - standardized contests.csv
│   │   ├── Wolford - Lord of Coin - candidate totals by batch.csv
│   │   ├── Wolford - ballot manifest.csv
│   │   ├── Wolford - cvrs.csv
│   │   ├── Yellowseed - Lord of Coin - candidate totals by batch.csv
│   │   ├── Yellowseed - ballot manifest.csv
│   │   ├── Yellowseed - cvrs.csv
│   │   └── medium-election.spec.json
│   ├── regenerate-all-elections.sh
│   ├── small-election/
│   │   ├── Kendall Park - Master of Magic - candidate totals by batch.csv
│   │   ├── Kendall Park - Minister of Farming - candidate totals by batch.csv
│   │   ├── Kendall Park - Secretary of Treasure - candidate totals by batch.csv
│   │   ├── Kendall Park - ballot manifest.csv
│   │   ├── Kendall Park - cvrs.csv
│   │   ├── Mount Olive - Minister of Farming - candidate totals by batch.csv
│   │   ├── Mount Olive - ballot manifest.csv
│   │   ├── Mount Olive - cvrs.csv
│   │   ├── Siletz - Minister of Farming - candidate totals by batch.csv
│   │   ├── Siletz - ballot manifest.csv
│   │   ├── Siletz - cvrs.csv
│   │   ├── Small Election - jurisdictions.csv
│   │   ├── Small Election - standardized contests.csv
│   │   ├── Waurika - Master of Magic - candidate totals by batch.csv
│   │   ├── Waurika - Minister of Farming - candidate totals by batch.csv
│   │   ├── Waurika - ballot manifest.csv
│   │   ├── Waurika - cvrs.csv
│   │   ├── Worthington Hills - Master of Magic - candidate totals by batch.csv
│   │   ├── Worthington Hills - Minister of Farming - candidate totals by batch.csv
│   │   ├── Worthington Hills - ballot manifest.csv
│   │   ├── Worthington Hills - cvrs.csv
│   │   └── small-election.spec.json
│   ├── tabulator-status.xml
│   └── test/
│       ├── __init__.py
│       ├── snapshots/
│       │   ├── __init__.py
│       │   └── snap_test_generate_election.py
│       └── test_generate_election.py
├── heroku-release-phase.sh
├── images/
│   └── .gitkeep
├── package.json
├── pyproject.toml
├── pytest.ini
├── run-dev.sh
├── scripts/
│   ├── __init__.py
│   ├── batch-inventory-progress.py
│   ├── clear-audit-boards.py
│   ├── cleardb.py
│   ├── combine-hybrid-results.py
│   ├── create-admin.py
│   ├── create-org.py
│   ├── create.py
│   ├── fix-ess-cvr-quotes.py
│   ├── manifest-for-cvr.py
│   ├── migrate-files-to-s3.py
│   ├── parse-xml-cvrs.py
│   ├── reopen-round.py
│   ├── resetdb.py
│   ├── restore-db-backup.sh
│   ├── run-basedpyright.sh
│   ├── run-dev-worker.py
│   ├── scrapers/
│   │   └── georgia-results-downloader/
│   │       ├── README.md
│   │       ├── index.css
│   │       ├── index.html
│   │       └── index.js
│   └── seed-probely-db.sh
├── server/
│   ├── __init__.py
│   ├── activity_log/
│   │   ├── __init__.py
│   │   ├── activity_log.py
│   │   └── slack_worker.py
│   ├── api/
│   │   ├── __init__.py
│   │   ├── activity.py
│   │   ├── audit_boards.py
│   │   ├── ballot_manifest.py
│   │   ├── ballots.py
│   │   ├── batch_files.py
│   │   ├── batch_inventory.py
│   │   ├── batch_tallies.py
│   │   ├── batches.py
│   │   ├── contests.py
│   │   ├── cvrs.py
│   │   ├── discrepancies.py
│   │   ├── election_settings.py
│   │   ├── elections.py
│   │   ├── full_hand_tally.py
│   │   ├── jurisdictions.py
│   │   ├── offline_results.py
│   │   ├── public.py
│   │   ├── reports.py
│   │   ├── rounds.py
│   │   ├── sample_preview.py
│   │   ├── sample_sizes.py
│   │   ├── shared.py
│   │   ├── standardized_contests.py
│   │   └── support.py
│   ├── app.py
│   ├── audit_math/
│   │   ├── __init__.py
│   │   ├── ballot_polling.py
│   │   ├── ballot_polling_types.py
│   │   ├── bravo.py
│   │   ├── macro.py
│   │   ├── minerva.py
│   │   ├── providence.py
│   │   ├── raire.py
│   │   ├── raire_utils.py
│   │   ├── sampler.py
│   │   ├── sampler_contest.py
│   │   ├── suite.py
│   │   ├── supersimple.py
│   │   └── supersimple_raire.py
│   ├── auth/
│   │   ├── __init__.py
│   │   ├── auth_helpers.py
│   │   ├── auth_routes.py
│   │   ├── email_boilerplate.html
│   │   ├── email_login_code.html
│   │   └── email_login_code.txt
│   ├── config.py
│   ├── database.py
│   ├── errors.py
│   ├── feature_flags.py
│   ├── main.py
│   ├── migrations/
│   │   ├── README.md
│   │   ├── __init__.py
│   │   ├── env.py
│   │   ├── script.py.mako
│   │   └── versions/
│   │       ├── 07859b6b370b_json_sample_sizes.py
│   │       ├── 11e35dd1c515_batch_tallies_file.py
│   │       ├── 141edd274627_fix_null_round_contest_sample_size.py
│   │       ├── 22c615fe67ab_jurisdictionresult.py
│   │       ├── 244744c21027_tally_entry_accounts.py
│   │       ├── 266fba5a5c8a_rename_offlinebatchresult_to_.py
│   │       ├── 2aeb618b9438_jurisdiction_cvr_file_type.py
│   │       ├── 30f47ec7308c_batchresultsfinalized.py
│   │       ├── 342f43b1c9d9_batch_has_cvrs.py
│   │       ├── 34824a2d1ba8_batch_combined_batch_name.py
│   │       ├── 34939a0c9f5c_ballotinterpretation_has_invalid_write_in.py
│   │       ├── 3edc260ab0b1_audittype_ballot_comparison.py
│   │       ├── 3efe804f6952_remove_offlinebatchresultchangelog.py
│   │       ├── 496ee3db6da8_cvrfiletype_hart.py
│   │       ├── 4aa612e28c2e_delete_auditboard_without_cascading.py
│   │       ├── 4aec6c8a419f_backgroundtask_lock_key.py
│   │       ├── 4b1bf0241301_add_batch_file_bundle_table.py
│   │       ├── 5004a93f75d8_batchresulttallysheet.py
│   │       ├── 5238d088cf62_offlinebatchresultchangelog.py
│   │       ├── 593823da406d_fix_delete_cascades.py
│   │       ├── 5acbd2f95b9f_standardized_contests_file.py
│   │       ├── 5b7164faeda5_sampledballotdraw_contest_id.py
│   │       ├── 5bb25bdd56b7_hybrid_audit_type.py
│   │       ├── 6a4dc1ef268c_add_a_sessions_table_as_we_move_.py
│   │       ├── 6bd43f181daa_add_auditmathtype.py
│   │       ├── 6c256e8152f8_backgroundtask_worker_id.py
│   │       ├── 74c579ae8555_batch_last_edited_by.py
│   │       ├── 754cca3f4448_add_providence_to_auditmathtype.py
│   │       ├── 7ca7a4b0bcc0_contest_pending_ballots.py
│   │       ├── 7f86511c05e0_cvrs.py
│   │       ├── 83bc53b14021_organization_default_state.py
│   │       ├── 8452f909a07e_jurisdiction_contest_choice_name_standardizations.py
│   │       ├── 848293b46b37_batchinventorydata.py
│   │       ├── 848ffc831a04_election_sample_preview.py
│   │       ├── 8ab39ac619ed_activity_log.py
│   │       ├── 8b6b89bfbc97_backgroundtask.py
│   │       ├── 8bc5c2037187_adding_audit_math_type.py
│   │       ├── 95660eea5c1c_offline_batch_results.py
│   │       ├── 971d6d153879_background_task_progress.py
│   │       ├── 9956d373c6b8_interpretation_contest_not_on_ballot.py
│   │       ├── 9d9c4e058cb2_jurisdiction_contest_name_.py
│   │       ├── 9ed660c31c0a_election_audit_type.py
│   │       ├── a3004ca81e25_sampledbatchdraw.py
│   │       ├── aa3978570981_batchresult.py
│   │       ├── b0b160c2f187_initial.py
│   │       ├── b5fcf654c681_remove_single_jurisdiction_flow.py
│   │       ├── b91b345bf0a9_cvrballot_unique_constraint.py
│   │       ├── bc97ac0e8267_remove_file_contents.py
│   │       ├── c012fa6b13a9_sampledbatchdraw_contest_id.py
│   │       ├── c2b90f147183_organization_name_unique.py
│   │       ├── cb8de251c1a5_batchinventorydata_system_type.py
│   │       ├── cec7ecc73bd8_samplesizeoptions_table.py
│   │       ├── d0fc64ab8b98_on_delete_cleanup.py
│   │       ├── dd3f3330aee2_cvrfiletype_ess.py
│   │       ├── de96efe4d679_ja_login_code.py
│   │       ├── df1334fc5fe9_election_deleted_at.py
│   │       ├── df3c0681fad9_file_storage_path.py
│   │       ├── e372310f31c1_batch_container.py
│   │       ├── f400f19f7a35_file_background_task.py
│   │       ├── f44bbbb8b076_cvrballot_ballot_position_and_record_id.py
│   │       ├── f8e901e92f0a_background_sample_size_options.py
│   │       ├── fa342e75506b_overvotes.py
│   │       ├── fea3ed38fb6c_jurisdiction_expected_manifest_num_.py
│   │       └── fed66f26125e_remove_batch_comparison_audit_boards.py
│   ├── models.py
│   ├── sentry.py
│   ├── static.py
│   ├── tests/
│   │   ├── __init__.py
│   │   ├── api/
│   │   │   ├── __init__.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_audit_boards.py
│   │   │   │   ├── snap_test_ballots.py
│   │   │   │   ├── snap_test_contests.py
│   │   │   │   ├── snap_test_jurisdictions.py
│   │   │   │   ├── snap_test_public.py
│   │   │   │   ├── snap_test_reports.py
│   │   │   │   ├── snap_test_rounds.py
│   │   │   │   ├── snap_test_sample_preview.py
│   │   │   │   └── snap_test_sample_sizes.py
│   │   │   ├── test_activity.py
│   │   │   ├── test_audit_boards.py
│   │   │   ├── test_ballot_manifest.py
│   │   │   ├── test_ballots.py
│   │   │   ├── test_batch_files.py
│   │   │   ├── test_contests.py
│   │   │   ├── test_election_settings.py
│   │   │   ├── test_elections.py
│   │   │   ├── test_jurisdictions.py
│   │   │   ├── test_jurisdictions_file.py
│   │   │   ├── test_public.py
│   │   │   ├── test_reports.py
│   │   │   ├── test_rounds.py
│   │   │   ├── test_sample_preview.py
│   │   │   ├── test_sample_sizes.py
│   │   │   └── test_support.py
│   │   ├── audit_math/
│   │   │   ├── __init__.py
│   │   │   ├── raire_data/
│   │   │   │   ├── input/
│   │   │   │   │   ├── Berkeley_2010.raire
│   │   │   │   │   └── SpecialCases/
│   │   │   │   │       └── Aspen_2009_wrong_winner.raire
│   │   │   │   ├── output/
│   │   │   │   │   ├── Berkeley_2010.raire.out
│   │   │   │   │   └── SpecialCases/
│   │   │   │   │       └── Aspen_2009_wrong_winner.raire.out
│   │   │   │   └── sfda19/
│   │   │   │       ├── SFDA2019_PrelimReport12VBMJustDASheets.raire
│   │   │   │       ├── mvr_prepilot_test.json
│   │   │   │       └── sample.csv
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_bravo.py
│   │   │   │   ├── snap_test_macro.py
│   │   │   │   └── snap_test_sampler.py
│   │   │   ├── test_bravo.py
│   │   │   ├── test_macro.py
│   │   │   ├── test_minerva.py
│   │   │   ├── test_minerva2.py
│   │   │   ├── test_raire.py
│   │   │   ├── test_raire_utils.py
│   │   │   ├── test_sampler.py
│   │   │   ├── test_sampler_contest.py
│   │   │   ├── test_suite.py
│   │   │   ├── test_supersimple.py
│   │   │   └── test_supersimple_raire.py
│   │   ├── ballot_comparison/
│   │   │   ├── __init__.py
│   │   │   ├── conftest.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_ballot_comparison.py
│   │   │   │   ├── snap_test_ballot_comparison_cardstyledata.py
│   │   │   │   ├── snap_test_ballot_comparison_manifests.py
│   │   │   │   ├── snap_test_contest_name_standardizations.py
│   │   │   │   └── snap_test_cvrs.py
│   │   │   ├── test_ballot_comparison.py
│   │   │   ├── test_ballot_comparison_cardstyledata.py
│   │   │   ├── test_ballot_comparison_manifests.py
│   │   │   ├── test_contest_name_standardizations.py
│   │   │   ├── test_cvrs.py
│   │   │   ├── test_single_jurisdiction_ballot_comparison.py
│   │   │   └── test_standardized_contests.py
│   │   ├── ballot_polling/
│   │   │   ├── __init__.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_ballot_polling.py
│   │   │   │   ├── snap_test_minerva2_ballot_polling.py
│   │   │   │   ├── snap_test_minerva_ballot_polling.py
│   │   │   │   └── snap_test_providence_ballot_polling.py
│   │   │   ├── test_ballot_polling.py
│   │   │   ├── test_minerva_ballot_polling.py
│   │   │   └── test_providence_ballot_polling.py
│   │   ├── batch_comparison/
│   │   │   ├── __init__.py
│   │   │   ├── conftest.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_batch_comparison.py
│   │   │   │   ├── snap_test_batch_inventory.py
│   │   │   │   ├── snap_test_batches.py
│   │   │   │   ├── snap_test_multi_contest_batch_comparison.py
│   │   │   │   └── snap_test_sample_extra_batches_by_counting_group.py
│   │   │   ├── test_batch_comparison.py
│   │   │   ├── test_batch_inventory.py
│   │   │   ├── test_batch_tallies.py
│   │   │   ├── test_batches.py
│   │   │   ├── test_multi_contest_batch_comparison.py
│   │   │   ├── test_sample_extra_batches_by_counting_group.py
│   │   │   ├── test_sample_extra_batches_to_ensure_one_per_jurisdiction.py
│   │   │   ├── test_single_jurisdiction_batch_comparison.py
│   │   │   └── test_support_batch_comparison.py
│   │   ├── conftest.py
│   │   ├── helpers.py
│   │   ├── hybrid/
│   │   │   ├── __init__.py
│   │   │   ├── conftest.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   └── snap_test_hybrid.py
│   │   │   ├── test_hybrid.py
│   │   │   └── test_hybrid_manifests.py
│   │   ├── snapshots/
│   │   │   ├── __init__.py
│   │   │   ├── snap_test_full_hand_tally.py
│   │   │   ├── snap_test_jointly_targeted_contests.py
│   │   │   ├── snap_test_multi_winner_contest.py
│   │   │   ├── snap_test_multiple_targeted_contests.py
│   │   │   ├── snap_test_offline_data_entry.py
│   │   │   └── snap_test_slack_worker.py
│   │   ├── test_app.py
│   │   ├── test_auth.py
│   │   ├── test_background_tasks.py
│   │   ├── test_errors.py
│   │   ├── test_full_hand_tally.py
│   │   ├── test_helpers.py
│   │   ├── test_migrations.py
│   │   ├── test_multi_winner_contest.py
│   │   ├── test_multiple_targeted_contests.py
│   │   ├── test_offline_data_entry.py
│   │   ├── test_slack_worker.py
│   │   ├── test_websessions.py
│   │   └── util/
│   │       ├── __init__.py
│   │       ├── test-ballot-manifest.xlsx
│   │       ├── test_binpacking.py
│   │       ├── test_collections.py
│   │       ├── test_csv_parse.py
│   │       ├── test_cvr_snapshot_parse.py
│   │       ├── test_file_storage.py
│   │       ├── test_get_json.py
│   │       ├── test_hart_parse.py
│   │       ├── test_jsonschema.py
│   │       ├── test_strings.py
│   │       ├── windows1252-encoded.csv
│   │       └── xls-mislabeled-as-csv.csv
│   ├── util/
│   │   ├── __init__.py
│   │   ├── binpacking.py
│   │   ├── collections.py
│   │   ├── csv_download.py
│   │   ├── csv_parse.py
│   │   ├── cvr_snapshot_parse.py
│   │   ├── file.py
│   │   ├── get_json.py
│   │   ├── hart_parse.py
│   │   ├── isoformat.py
│   │   ├── jsonschema.py
│   │   ├── redirect.py
│   │   └── string.py
│   ├── websession.py
│   └── worker/
│       ├── __init__.py
│       ├── tasks.py
│       └── worker.py
└── stubs/
    ├── consistent_sampler/
    │   └── __init__.pyi
    ├── cryptorandom/
    │   ├── __init__.pyi
    │   └── cryptorandom/
    │       └── __init__.pyi
    └── r2b2/
        ├── __init__.pyi
        ├── __main__.pyi
        ├── athena.pyi
        ├── audit.pyi
        ├── brla.pyi
        ├── cli.pyi
        ├── contest.pyi
        ├── election.pyi
        ├── eor_bravo.pyi
        ├── minerva.pyi
        ├── minerva2.pyi
        ├── simulation/
        │   ├── __init__.pyi
        │   ├── athena.pyi
        │   ├── eor_bravo.pyi
        │   ├── filip_athena.pyi
        │   ├── minerva.pyi
        │   ├── minerva2.pyi
        │   └── so_bravo.pyi
        ├── simulator.pyi
        ├── so_bravo.pyi
        └── tests/
            ├── __init__.pyi
            ├── test_athena.pyi
            ├── test_audit.pyi
            ├── test_brla.pyi
            ├── test_cli.pyi
            ├── test_contest.pyi
            ├── test_election.pyi
            ├── test_eor_bravo.pyi
            ├── test_filip_athena_sim.pyi
            ├── test_minerva.pyi
            ├── test_minerva2.pyi
            ├── test_so_bravo.pyi
            └── util.pyi

================================================
FILE CONTENTS
================================================

================================================
FILE: .basedpyright/baseline.json
================================================
{
    "files": {
        "./fixtures/generate_election.py": [
            {
                "code": "reportDeprecated",
                "range": {
                    "startColumn": 4,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 13,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnnecessaryComparison",
                "range": {
                    "startColumn": 33,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 65,
                    "endColumn": 76,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingTypeArgument",
                "range": {
                    "startColumn": 78,
                    "endColumn": 80,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 39,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingTypeArgument",
                "range": {
                    "startColumn": 52,
                    "endColumn": 54,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 40,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 5,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 40,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 52,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 55,
                    "endColumn": 66,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingTypeArgument",
                "range": {
                    "startColumn": 68,
                    "endColumn": 70,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 17,
                    "endColumn": 24,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 67,
                    "endColumn": 78,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingTypeArgument",
                "range": {
                    "startColumn": 80,
                    "endColumn": 82,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 61,
                    "endColumn": 72,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingTypeArgument",
                "range": {
                    "startColumn": 74,
                    "endColumn": 76,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 8,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 22,
                    "endColumn": 35,
                    "lineCount": 1
                }
            }
        ],
        "./fixtures/test/snapshots/snap_test_generate_election.py": [
            {
                "code": "reportMissingTypeStubs",
                "range": {
                    "startColumn": 5,
                    "endColumn": 17,
                    "lineCount": 1
                }
            }
        ],
        "./fixtures/test/test_generate_election.py": [
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 42,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 42,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 52,
                    "endColumn": 56,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 52,
                    "endColumn": 56,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 74,
                    "endColumn": 78,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 50,
                    "endColumn": 54,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 50,
                    "endColumn": 54,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 50,
                    "endColumn": 54,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 68,
                    "endColumn": 72,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 66,
                    "endColumn": 70,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 25,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 25,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 77,
                    "endColumn": 81,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 8,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 8,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 29,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 63,
                    "endColumn": 82,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 43,
                    "endColumn": 74,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 76,
                    "endColumn": 80,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 12,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 60,
                    "endColumn": 67,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/batch-inventory-progress.py": [
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 24,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 24,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 14,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalSubscript",
                "range": {
                    "startColumn": 17,
                    "endColumn": 48,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 43,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 60,
                    "endColumn": 75,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 60,
                    "endColumn": 75,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 57,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 57,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 70,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 70,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 25,
                    "endColumn": 59,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/clear-audit-boards.py": [
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 16,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 18,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 18,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 18,
                    "endColumn": 57,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 27,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 56,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 56,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 36,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 36,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 12,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 83,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 42,
                    "endColumn": 57,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 70,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/cleardb.py": [
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 23,
                    "endColumn": 33,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/combine-hybrid-results.py": [
            {
                "code": "reportPrivateLocalImportUsage",
                "range": {
                    "startColumn": 4,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportPrivateLocalImportUsage",
                "range": {
                    "startColumn": 4,
                    "endColumn": 42,
                    "lineCount": 1
                }
            },
            {
                "code": "reportPrivateLocalImportUsage",
                "range": {
                    "startColumn": 4,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportPrivateLocalImportUsage",
                "range": {
                    "startColumn": 4,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportPrivateLocalImportUsage",
                "range": {
                    "startColumn": 4,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 51,
                    "endColumn": 57,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 61,
                    "endColumn": 76,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 52,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 40,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 60,
                    "endColumn": 67,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 27,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 27,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 36,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 36,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 25,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 37,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 58,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 68,
                    "endColumn": 83,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 62,
                    "endColumn": 69,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 21,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 53,
                    "endColumn": 60,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 18,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportArgumentType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 34,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 36,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 63,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 65,
                    "endColumn": 76,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 47,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 47,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 21,
                    "endColumn": 43,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 17,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 38,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 40,
                    "endColumn": 65,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 56,
                    "endColumn": 75,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 53,
                    "endColumn": 70,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 11,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 11,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 40,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 44,
                    "endColumn": 62,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 40,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 44,
                    "endColumn": 62,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 7,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 7,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 36,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 36,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 53,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 53,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 11,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 9,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 67,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 67,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 29,
                    "endColumn": 60,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 61,
                    "endColumn": 77,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 61,
                    "endColumn": 80,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 29,
                    "endColumn": 60,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 61,
                    "endColumn": 77,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 61,
                    "endColumn": 80,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 49,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 30,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/create-admin.py": [
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 8,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 31,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 20,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 42,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 55,
                    "endColumn": 66,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 38,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 46,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 55,
                    "endColumn": 70,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 10,
                    "endColumn": 17,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 10,
                    "endColumn": 17,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/create-org.py": [
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 23,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 45,
                    "endColumn": 49,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/create.py": [
            {
                "code": "reportMissingTypeStubs",
                "range": {
                    "startColumn": 5,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 29,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 46,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 23,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 31,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 31,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 28,
                    "endColumn": 38,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 28,
                    "endColumn": 38,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/fix-ess-cvr-quotes.py": [
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 21,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 21,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 21,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedCallResult",
                "range": {
                    "startColumn": 16,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 43,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 56,
                    "endColumn": 72,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedCallResult",
                "range": {
                    "startColumn": 16,
                    "endColumn": 48,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/manifest-for-cvr.py": [
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 13,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 39,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/migrate-files-to-s3.py": [
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 17,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 17,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 45,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 56,
                    "endColumn": 60,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 36,
                    "endColumn": 40,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 23,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 40,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 14,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 17,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 17,
                    "endColumn": 69,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 56,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 35,
                    "endColumn": 62,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 42,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 54,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 42,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 42,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 34,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 62,
                    "endColumn": 77,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 34,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 62,
                    "endColumn": 77,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 40,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 34,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 62,
                    "endColumn": 77,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 11,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 31,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 38,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 36,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 25,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/parse-xml-cvrs.py": [
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 8,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 9,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 9,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 17,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 17,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 11,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 17,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 17,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 48,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 37,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 38,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 41,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 41,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 23,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 38,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 13,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 13,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 15,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 7,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 40,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 48,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 52,
                    "endColumn": 56,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 48,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 70,
                    "endColumn": 74,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 66,
                    "endColumn": 70,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 45,
                    "endColumn": 49,
                    "lineCount": 1
                }
            },
            {
                "code": "reportArgumentType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalSubscript",
                "range": {
                    "startColumn": 12,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportIndexIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 51,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 41,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportArgumentType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalSubscript",
                "range": {
                    "startColumn": 12,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportIndexIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 46,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 14,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 48,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 48,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingTypeArgument",
                "range": {
                    "startColumn": 21,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 24,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 37,
                    "endColumn": 58,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 53,
                    "endColumn": 58,
                    "lineCount": 1
                }
            },
            {
                "code": "reportOptionalMemberAccess",
                "range": {
                    "startColumn": 53,
                    "endColumn": 58,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 49,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 50,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 36,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingTypeArgument",
                "range": {
                    "startColumn": 29,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 23,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 43,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 34,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 49,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 42,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 23,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 36,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 27,
                    "endColumn": 69,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 27,
                    "endColumn": 69,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 31,
                    "endColumn": 73,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 31,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/reopen-round.py": [
            {
                "code": "reportPrivateLocalImportUsage",
                "range": {
                    "startColumn": 30,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 15,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 38,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 10,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 25,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            }
        ],
        "./scripts/resetdb.py": [
            {
                "code": "reportMissingTypeStubs",
                "range": {
                    "startColumn": 5,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 29,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 46,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 63,
                    "endColumn": 76,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 23,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 27,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 27,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 26,
                    "endColumn": 36,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 26,
                    "endColumn": 36,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 24,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 24,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 54,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 54,
                    "endColumn": 64,
                    "lineCount": 1
                }
            }
        ],
        "./server/activity_log/activity_log.py": [
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 49,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 48,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 48,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 15,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 14,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 16,
                    "lineCount": 1
                }
            }
        ],
        "./server/activity_log/slack_worker.py": [
            {
                "code": "reportPossiblyUnboundVariable",
                "range": {
                    "startColumn": 32,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportPossiblyUnboundVariable",
                "range": {
                    "startColumn": 24,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportPossiblyUnboundVariable",
                "range": {
                    "startColumn": 24,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportPossiblyUnboundVariable",
                "range": {
                    "startColumn": 24,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportPossiblyUnboundVariable",
                "range": {
                    "startColumn": 24,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 10,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 38,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 14,
                    "lineCount": 5
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 20,
                    "lineCount": 6
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 39,
                    "endColumn": 75,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 39,
                    "endColumn": 79,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 39,
                    "endColumn": 85,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 18,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 8,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 46,
                    "endColumn": 66,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 46,
                    "endColumn": 66,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 8,
                    "endColumn": 16,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 60,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 68,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 68,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 68,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 68,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 68,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 68,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 68,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 68,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 42,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 42,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 52,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 25,
                    "lineCount": 1
                }
            }
        ],
        "./server/api/__init__.py": [
            {
                "code": "reportImportCycles",
                "range": {
                    "startColumn": 0,
                    "endColumn": 0,
                    "lineCount": 1
                }
            },
            {
                "code": "reportImportCycles",
                "range": {
                    "startColumn": 0,
                    "endColumn": 0,
                    "lineCount": 1
                }
            },
            {
                "code": "reportImportCycles",
                "range": {
                    "startColumn": 0,
                    "endColumn": 0,
                    "lineCount": 1
                }
            },
            {
                "code": "reportImportCycles",
                "range": {
                    "startColumn": 0,
                    "endColumn": 0,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 23,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 31,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedImport",
                "range": {
                    "startColumn": 14,
                    "endColumn": 27,
                    "lineCount": 1
                }
            }
        ],
        "./server/api/activity.py": [
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 42,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 63,
                    "endColumn": 80,
                    "lineCount": 1
                }
            },
            {
                "code": "reportExplicitAny",
                "range": {
                    "startColumn": 35,
                    "endColumn": 38,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 12,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 20,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 21,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 28,
                    "endColumn": 77,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 29,
                    "endColumn": 54,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 12,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 19,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 26,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 26,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 32,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 8,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 31,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 74,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 49,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 56,
                    "endColumn": 74,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 14,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 12,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 18,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 18,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 39,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 53,
                    "endColumn": 61,
                    "lineCount": 1
                }
            }
        ],
        "./server/api/audit_boards.py": [
            {
                "code": "reportMissingTypeStubs",
                "range": {
                    "startColumn": 5,
                    "endColumn": 13,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 0,
                    "endColumn": 5,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 38,
                    "endColumn": 56,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 76,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 18,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 49,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 53,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 14,
                    "lineCount": 5
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 33,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 33,
                    "endColumn": 16,
                    "lineCount": 3
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 34,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 45,
                    "endColumn": 70,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 27,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 39,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 54,
                    "endColumn": 85,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 54,
                    "endColumn": 20,
                    "lineCount": 3
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 45,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 56,
                    "endColumn": 81,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportArgumentType",
                "range": {
                    "startColumn": 29,
                    "endColumn": 38,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 40,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 23,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 22,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 22,
                    "lineCount": 13
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 17,
                    "lineCount": 19
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 30,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 46,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 38,
                    "lineCount": 5
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 33,
                    "lineCount": 6
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 35,
                    "lineCount": 6
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 20,
                    "endColumn": 40,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 57,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 38,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 33,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 35,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 17,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 23,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 24,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 27,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 27,
                    "endColumn": 11,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 42,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 40,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 41,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 14,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 16,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 16,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 9,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 44,
                    "lineCount": 4
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 31,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 5
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 44,
                    "lineCount": 5
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 31,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 33,
                    "endColumn": 67,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 68,
                    "endColumn": 73,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 68,
                    "endColumn": 73,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 33,
                    "endColumn": 67,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 68,
                    "endColumn": 73,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 68,
                    "endColumn": 73,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 14,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 33,
                    "endColumn": 58,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 33,
                    "endColumn": 58,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownParameterType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportMissingParameterType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 8,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 23,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 8,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedParameter",
                "range": {
                    "startColumn": 4,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 16,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 12,
                    "lineCount": 3
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 18,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 30,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 47,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 59,
                    "endColumn": 61,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedParameter",
                "range": {
                    "startColumn": 4,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedParameter",
                "range": {
                    "startColumn": 4,
                    "endColumn": 16,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedParameter",
                "range": {
                    "startColumn": 4,
                    "endColumn": 9,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 27,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 31,
                    "endColumn": 55,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 7,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 12,
                    "endColumn": 49,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 84,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 52,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 57,
                    "endColumn": 84,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedParameter",
                "range": {
                    "startColumn": 4,
                    "endColumn": 9,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 16,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportArgumentType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedParameter",
                "range": {
                    "startColumn": 4,
                    "endColumn": 16,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 7,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 7,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 16,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            }
        ],
        "./server/api/ballot_manifest.py": [
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 46,
                    "endColumn": 63,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 24,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 49,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 12,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 83,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 46,
                    "endColumn": 58,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 62,
                    "endColumn": 83,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 17,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 31,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 5
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 60,
                    "lineCount": 5
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 32,
                    "endColumn": 40,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 65,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 17,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 60,
                    "lineCount": 3
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 32,
                    "endColumn": 40,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 29,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 65,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 16,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 19,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 56,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 43,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 38,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 38,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 16,
                    "endColumn": 18,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 16,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 16,
                    "endColumn": 31,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 16,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 16,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 16,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 16,
                    "endColumn": 24,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 26,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 38,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 38,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 45,
                    "endColumn": 57,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 63,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 48,
                    "endColumn": 63,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 33,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 36,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 36,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 24,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 29,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 29,
                    "endColumn": 50,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 52,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 26,
                    "endColumn": 64,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 47,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 34,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 34,
                    "endColumn": 51,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 22,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedCallResult",
                "range": {
                    "startColumn": 4,
                    "endColumn": 16,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 17,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 8,
                    "endColumn": 10,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 8,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 8,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportCallIssue",
                "range": {
                    "startColumn": 8,
                    "endColumn": 19,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 30,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 31,
                    "endColumn": 35,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 17,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAttributeAccessIssue",
                "range": {
                    "startColumn": 17,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 28,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 69,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 25,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 59,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedParameter",
                "range": {
                    "startColumn": 24,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 54,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 28,
                    "endColumn": 54,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 45,
                    "endColumn": 71,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 45,
                    "endColumn": 71,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedParameter",
                "range": {
                    "startColumn": 4,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 11,
                    "endColumn": 37,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 48,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 22,
                    "endColumn": 48,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 34,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnusedParameter",
                "range": {
                    "startColumn": 4,
                    "endColumn": 12,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 21,
                    "lineCount": 1
                }
            }
        ],
        "./server/api/ballots.py": [
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 27,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 43,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 32,
                    "endColumn": 44,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 20,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 36,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 5
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 6
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 75,
                    "lineCount": 6
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 4,
                    "endColumn": 11,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 41,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 2
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 3
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 4
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 18,
                    "lineCount": 5
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 13,
                    "lineCount": 12
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 13
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 17,
                    "lineCount": 20
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 15,
                    "lineCount": 27
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 9,
                    "lineCount": 41
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 60,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 16,
                    "endColumn": 74,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 14,
                    "endColumn": 39,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 12,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 12,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 12,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 12,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportAny",
                "range": {
                    "startColumn": 12,
                    "endColumn": 27,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 45,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 24,
                    "endColumn": 56,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 21,
                    "endColumn": 42,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownMemberType",
                "range": {
                    "startColumn": 21,
                    "endColumn": 53,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 25,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownArgumentType",
                "range": {
                    "startColumn": 25,
                    "endColumn": 32,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 8,
                    "endColumn": 14,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
                "code": "reportUnknownVariableType",
                "range": {
                    "startColumn": 12,
                    "endColumn": 21,
                    "lineCount": 1
                }
            },
            {
Download .txt
gitextract_yj7g7chq/

├── .basedpyright/
│   └── baseline.json
├── .circleci/
│   └── config.yml
├── .github/
│   └── workflows/
│       └── add-to-arlo.yml
├── .gitignore
├── .gitmodules
├── .husky/
│   └── pre-commit
├── .prettierignore
├── .pylintrc
├── .python-version
├── .slugignore
├── .vscode/
│   └── settings.json
├── LICENSE
├── Makefile
├── Procfile
├── README.md
├── alembic.ini
├── app.json
├── arlo.code-workspace
├── client/
│   ├── .eslintignore
│   ├── .eslintrc.js
│   ├── .gitignore
│   ├── .node-version
│   ├── .prettierignore
│   ├── .prettierrc.js
│   ├── .stylelintrc-css.js
│   ├── .stylelintrc.js
│   ├── Makefile
│   ├── cypress/
│   │   ├── end-to-end/
│   │   │   ├── ballot-comparison.cy.js
│   │   │   ├── ballot-polling.cy.js
│   │   │   ├── batch-comparison.cy.js
│   │   │   └── full-hand-tally.cy.js
│   │   ├── fixtures/
│   │   │   ├── CSVs/
│   │   │   │   ├── candidate-total-batch/
│   │   │   │   │   └── sample_candidate_totals_by_batch.csv
│   │   │   │   ├── contest/
│   │   │   │   │   ├── ballot_comparison_contests.csv
│   │   │   │   │   ├── sample_standardized_contests.csv
│   │   │   │   │   ├── sample_standardized_contests_contest_name_col_error.csv
│   │   │   │   │   └── sample_standardized_contests_jurisdiction_col_error.csv
│   │   │   │   ├── cvr/
│   │   │   │   │   ├── ballot_comparison_cvr.csv
│   │   │   │   │   └── ballot_comparison_cvr_col_error.csv
│   │   │   │   ├── jurisdiction/
│   │   │   │   │   ├── sample_jurisdiction_filesheet.csv
│   │   │   │   │   └── sample_jurisdiction_filesheet_jurisdiction_col_error.csv
│   │   │   │   └── manifest/
│   │   │   │       ├── ballot_comparison_manifest.csv
│   │   │   │       ├── ballot_comparison_manifest_col_error.csv
│   │   │   │       ├── ballot_polling_manifest.csv
│   │   │   │       ├── ballot_polling_manifest_col_error.csv
│   │   │   │       └── batch_comparison_manifest.csv
│   │   │   └── example.json
│   │   ├── plugins.ts
│   │   ├── seed-test-db.sh
│   │   └── support/
│   │       ├── commands.js
│   │       └── e2e.js
│   ├── cypress.config.ts
│   ├── index.html
│   ├── package.json
│   ├── public/
│   │   ├── 99e97f1f-18fd-4ba7-8ce7-189287f60bf3.txt
│   │   ├── manifest.json
│   │   ├── sample_ballot_manifest.csv
│   │   ├── sample_candidate_totals_by_batch.csv
│   │   ├── sample_jurisdiction_filesheet.csv
│   │   ├── sample_manifest_BC.csv
│   │   ├── sample_manifest_hybrid.csv
│   │   ├── sample_standardized_contests.csv
│   │   └── us-states-counties.json
│   ├── run-cypress-tests.sh
│   ├── src/
│   │   ├── App.css
│   │   ├── App.test.tsx
│   │   ├── App.tsx
│   │   ├── components/
│   │   │   ├── Atoms/
│   │   │   │   ├── AsyncButton.test.tsx
│   │   │   │   ├── AsyncButton.tsx
│   │   │   │   ├── CSVForm.tsx
│   │   │   │   ├── CodeInput.test.tsx
│   │   │   │   ├── CodeInput.tsx
│   │   │   │   ├── Confirm.test.tsx
│   │   │   │   ├── Confirm.tsx
│   │   │   │   ├── CopyToClipboard.test.tsx
│   │   │   │   ├── CopyToClipboard.tsx
│   │   │   │   ├── Count.test.tsx
│   │   │   │   ├── Count.tsx
│   │   │   │   ├── FileUpload.test.tsx
│   │   │   │   ├── FileUpload.tsx
│   │   │   │   ├── Form/
│   │   │   │   │   ├── FormButton.tsx
│   │   │   │   │   ├── FormButtonBar.tsx
│   │   │   │   │   ├── FormField.test.tsx
│   │   │   │   │   ├── FormField.tsx
│   │   │   │   │   ├── FormSection.tsx
│   │   │   │   │   ├── FormWrapper.tsx
│   │   │   │   │   ├── Select.tsx
│   │   │   │   │   ├── __snapshots__/
│   │   │   │   │   │   └── FormField.test.tsx.snap
│   │   │   │   │   ├── _helpers.tsx
│   │   │   │   │   └── styledBits.tsx
│   │   │   │   ├── H2Title.tsx
│   │   │   │   ├── H3Title.tsx
│   │   │   │   ├── Layout.tsx
│   │   │   │   ├── LinkButton.tsx
│   │   │   │   ├── ListAndDetail.tsx
│   │   │   │   ├── RefreshTag.test.tsx
│   │   │   │   ├── RefreshTag.tsx
│   │   │   │   ├── SegmentedControl.test.tsx
│   │   │   │   ├── SegmentedControl.tsx
│   │   │   │   ├── Sidebar.test.tsx
│   │   │   │   ├── Sidebar.tsx
│   │   │   │   ├── SpacedCard.tsx
│   │   │   │   ├── StatusBar.tsx
│   │   │   │   ├── StatusBox.test.tsx
│   │   │   │   ├── StatusBox.tsx
│   │   │   │   ├── StatusTag.tsx
│   │   │   │   ├── Steps.test.tsx
│   │   │   │   ├── Steps.tsx
│   │   │   │   ├── Table.tsx
│   │   │   │   ├── Wrapper.tsx
│   │   │   │   ├── __snapshots__/
│   │   │   │   │   └── Sidebar.test.tsx.snap
│   │   │   │   └── react-table-config.d.ts
│   │   │   ├── AuditAdmin/
│   │   │   │   ├── ActivityLog.test.tsx
│   │   │   │   ├── ActivityLog.tsx
│   │   │   │   ├── AuditAdminView.test.tsx
│   │   │   │   ├── AuditAdminView.tsx
│   │   │   │   ├── Progress/
│   │   │   │   │   ├── AuditBoardsTable.tsx
│   │   │   │   │   ├── JurisdictionDetail.test.tsx
│   │   │   │   │   ├── JurisdictionDetail.tsx
│   │   │   │   │   ├── JurisdictionDiscrepancies.tsx
│   │   │   │   │   ├── Progress.test.tsx
│   │   │   │   │   ├── Progress.tsx
│   │   │   │   │   ├── ProgressMap.tsx
│   │   │   │   │   └── map-county-corrections.ts
│   │   │   │   ├── Setup/
│   │   │   │   │   ├── Contests/
│   │   │   │   │   │   ├── ContestForm.tsx
│   │   │   │   │   │   ├── ContestSelect.test.tsx
│   │   │   │   │   │   ├── ContestSelect.tsx
│   │   │   │   │   │   ├── Contests.test.tsx
│   │   │   │   │   │   ├── Contests.tsx
│   │   │   │   │   │   ├── HybridContestForm.test.tsx
│   │   │   │   │   │   ├── __snapshots__/
│   │   │   │   │   │   │   ├── Contests.test.tsx.snap
│   │   │   │   │   │   │   └── HybridContestForm.test.tsx.snap
│   │   │   │   │   │   ├── _mocks.ts
│   │   │   │   │   │   └── schema.ts
│   │   │   │   │   ├── Participants/
│   │   │   │   │   │   ├── Participants.test.tsx
│   │   │   │   │   │   ├── Participants.tsx
│   │   │   │   │   │   └── _mocks.ts
│   │   │   │   │   ├── Review/
│   │   │   │   │   │   ├── ConfirmLaunch.tsx
│   │   │   │   │   │   ├── CvrChoiceNameConsistencyError.tsx
│   │   │   │   │   │   ├── LabeledValue.tsx
│   │   │   │   │   │   ├── Review.test.tsx
│   │   │   │   │   │   ├── Review.tsx
│   │   │   │   │   │   ├── SamplePreview.tsx
│   │   │   │   │   │   ├── StandardizeContestChoiceNamesDialog.tsx
│   │   │   │   │   │   ├── StandardizeContestNames.tsx
│   │   │   │   │   │   ├── _mocks.ts
│   │   │   │   │   │   └── useSampleSizes.ts
│   │   │   │   │   ├── Settings/
│   │   │   │   │   │   ├── Settings.test.tsx
│   │   │   │   │   │   ├── Settings.tsx
│   │   │   │   │   │   ├── schema.ts
│   │   │   │   │   │   └── states.ts
│   │   │   │   │   ├── Setup.test.tsx
│   │   │   │   │   └── Setup.tsx
│   │   │   │   ├── __snapshots__/
│   │   │   │   │   ├── ActivityLog.test.tsx.snap
│   │   │   │   │   └── AuditAdminView.test.tsx.snap
│   │   │   │   ├── timers.test.tsx
│   │   │   │   └── useRoundsAuditAdmin.ts
│   │   │   ├── AuditBoard/
│   │   │   │   ├── Atoms.tsx
│   │   │   │   ├── AuditBoardView.test.tsx
│   │   │   │   ├── AuditBoardView.tsx
│   │   │   │   ├── Ballot.test.tsx
│   │   │   │   ├── Ballot.tsx
│   │   │   │   ├── BallotAudit.tsx
│   │   │   │   ├── BlockCheckbox.tsx
│   │   │   │   ├── BoardTable.test.tsx
│   │   │   │   ├── BoardTable.tsx
│   │   │   │   ├── MemberForm.test.tsx
│   │   │   │   ├── MemberForm.tsx
│   │   │   │   ├── SignOff.test.tsx
│   │   │   │   ├── SignOff.tsx
│   │   │   │   ├── __snapshots__/
│   │   │   │   │   ├── AuditBoardView.test.tsx.snap
│   │   │   │   │   ├── Ballot.test.tsx.snap
│   │   │   │   │   ├── BoardTable.test.tsx.snap
│   │   │   │   │   ├── MemberForm.test.tsx.snap
│   │   │   │   │   └── SignOff.test.tsx.snap
│   │   │   │   ├── _mocks.ts
│   │   │   │   ├── ballotInterpretation.test.ts
│   │   │   │   └── ballotInterpretation.ts
│   │   │   ├── Header.test.tsx
│   │   │   ├── Header.tsx
│   │   │   ├── HomeScreen.test.tsx
│   │   │   ├── HomeScreen.tsx
│   │   │   ├── JurisdictionAdmin/
│   │   │   │   ├── BatchInventory.test.tsx
│   │   │   │   ├── BatchInventory.tsx
│   │   │   │   ├── BatchRoundProgress.tsx
│   │   │   │   ├── BatchRoundSteps/
│   │   │   │   │   ├── BatchRoundSteps.test.tsx
│   │   │   │   │   ├── BatchRoundSteps.tsx
│   │   │   │   │   ├── BatchRoundTallyEntry/
│   │   │   │   │   │   ├── BatchDetail.tsx
│   │   │   │   │   │   ├── BatchRoundTallyEntry.test.tsx
│   │   │   │   │   │   ├── BatchRoundTallyEntry.tsx
│   │   │   │   │   │   └── index.ts
│   │   │   │   │   ├── DownloadBatchRetrievalListButton.tsx
│   │   │   │   │   ├── DownloadBatchTallySheetsButton.tsx
│   │   │   │   │   ├── DownloadStackLabelsButton.tsx
│   │   │   │   │   ├── EnterTalliesStep.tsx
│   │   │   │   │   ├── PrepareBatchesStep.tsx
│   │   │   │   │   └── TallyEntryAccountsStep.tsx
│   │   │   │   ├── CreateAuditBoards.test.tsx
│   │   │   │   ├── CreateAuditBoards.tsx
│   │   │   │   ├── FullHandTallyDataEntry.test.tsx
│   │   │   │   ├── FullHandTallyDataEntry.tsx
│   │   │   │   ├── JurisdictionAdminView.test.tsx
│   │   │   │   ├── JurisdictionAdminView.tsx
│   │   │   │   ├── QRs.tsx
│   │   │   │   ├── RoundDataEntry.test.tsx
│   │   │   │   ├── RoundDataEntry.tsx
│   │   │   │   ├── RoundManagement.test.tsx
│   │   │   │   ├── RoundManagement.tsx
│   │   │   │   ├── RoundProgress.test.tsx
│   │   │   │   ├── RoundProgress.tsx
│   │   │   │   ├── __snapshots__/
│   │   │   │   │   ├── FullHandTallyDataEntry.test.tsx.snap
│   │   │   │   │   └── RoundProgress.test.tsx.snap
│   │   │   │   ├── _mocks.ts
│   │   │   │   ├── candidateTotalsByBatchTemplateCsv.ts
│   │   │   │   ├── generateSheets.test.tsx
│   │   │   │   ├── generateSheets.ts
│   │   │   │   ├── useAuditSettingsJurisdictionAdmin.ts
│   │   │   │   ├── useBallots.ts
│   │   │   │   ├── useBatchResults.ts
│   │   │   │   ├── useContestsJurisdictionAdmin.ts
│   │   │   │   ├── useFullHandTallyResults.ts
│   │   │   │   ├── useResults.ts
│   │   │   │   └── useRoundsJurisdictionAdmin.ts
│   │   │   ├── PublicPages/
│   │   │   │   ├── AuditPlanner/
│   │   │   │   │   ├── AuditPlanCard.tsx
│   │   │   │   │   ├── AuditPlanner.test.tsx
│   │   │   │   │   ├── AuditPlanner.tsx
│   │   │   │   │   ├── ElectionResultsCard.tsx
│   │   │   │   │   ├── SampleSize.tsx
│   │   │   │   │   ├── electionResults.ts
│   │   │   │   │   ├── index.ts
│   │   │   │   │   └── sampleSizes.ts
│   │   │   │   ├── NotFound.tsx
│   │   │   │   └── PublicPages.tsx
│   │   │   ├── SupportTools/
│   │   │   │   ├── Audit.tsx
│   │   │   │   ├── Breadcrumbs.tsx
│   │   │   │   ├── Jurisdiction.tsx
│   │   │   │   ├── List.tsx
│   │   │   │   ├── Organization.tsx
│   │   │   │   ├── RoundsTable.tsx
│   │   │   │   ├── SupportTools.test.tsx
│   │   │   │   ├── SupportTools.tsx
│   │   │   │   ├── index.tsx
│   │   │   │   ├── shared.tsx
│   │   │   │   └── support-api.tsx
│   │   │   ├── TallyEntryUser/
│   │   │   │   ├── TallyEntryLoginScreen.test.tsx
│   │   │   │   ├── TallyEntryLoginScreen.tsx
│   │   │   │   ├── TallyEntryScreen.test.tsx
│   │   │   │   ├── TallyEntryScreen.tsx
│   │   │   │   ├── TallyEntryUserView.test.tsx
│   │   │   │   ├── TallyEntryUserView.tsx
│   │   │   │   └── useCurrentUser.ts
│   │   │   ├── UserContext.tsx
│   │   │   ├── _mocks.ts
│   │   │   ├── testUtilities.test.tsx
│   │   │   ├── testUtilities.tsx
│   │   │   ├── useAuditAdminsOrganizations.ts
│   │   │   ├── useAuditBoards.ts
│   │   │   ├── useAuditSettings.ts
│   │   │   ├── useBatchFilesBundle.ts
│   │   │   ├── useCSV.ts
│   │   │   ├── useContestChoiceNameStandardizations.ts
│   │   │   ├── useContestNameStandardizations.ts
│   │   │   ├── useContests.ts
│   │   │   ├── useContestsBallotComparison.ts
│   │   │   ├── useFeatureFlag.ts
│   │   │   ├── useFileUpload.ts
│   │   │   ├── useJurisdictions.ts
│   │   │   ├── useSearchParams.ts
│   │   │   ├── useStandardizedContests.ts
│   │   │   ├── utilities.test.ts
│   │   │   └── utilities.ts
│   │   ├── fonts/
│   │   │   └── Proxima-Nova-Condensed-Regular.otf
│   │   ├── index.css
│   │   ├── index.tsx
│   │   ├── react-app-env.d.ts
│   │   ├── setupTests.ts
│   │   ├── types.ts
│   │   └── utils/
│   │       ├── api.ts
│   │       ├── array.test.ts
│   │       ├── array.ts
│   │       ├── debounce.test.ts
│   │       ├── debounce.ts
│   │       ├── indexes.test.ts
│   │       ├── indexes.ts
│   │       ├── number-schema.test.ts
│   │       ├── number-schema.ts
│   │       ├── number.test.ts
│   │       ├── number.ts
│   │       ├── objects.test.ts
│   │       ├── objects.ts
│   │       ├── responsiveness.ts
│   │       ├── sleep.ts
│   │       ├── string.test.ts
│   │       └── string.ts
│   ├── tsconfig.json
│   └── vite.config.ts
├── docs/
│   ├── architecture.md
│   ├── auth0.md
│   ├── contribution-guidelines.md
│   └── loadtesting.md
├── fixtures/
│   ├── README.md
│   ├── __init__.py
│   ├── generate_election.py
│   ├── medium-election/
│   │   ├── Acton - Lord of Coin - candidate totals by batch.csv
│   │   ├── Acton - ballot manifest.csv
│   │   ├── Acton - cvrs.csv
│   │   ├── Black Hallows - Lord of Coin - candidate totals by batch.csv
│   │   ├── Black Hallows - ballot manifest.csv
│   │   ├── Black Hallows - cvrs.csv
│   │   ├── Lindow - Lord of Coin - candidate totals by batch.csv
│   │   ├── Lindow - ballot manifest.csv
│   │   ├── Lindow - cvrs.csv
│   │   ├── Medium Election - jurisdictions.csv
│   │   ├── Medium Election - standardized contests.csv
│   │   ├── Wolford - Lord of Coin - candidate totals by batch.csv
│   │   ├── Wolford - ballot manifest.csv
│   │   ├── Wolford - cvrs.csv
│   │   ├── Yellowseed - Lord of Coin - candidate totals by batch.csv
│   │   ├── Yellowseed - ballot manifest.csv
│   │   ├── Yellowseed - cvrs.csv
│   │   └── medium-election.spec.json
│   ├── regenerate-all-elections.sh
│   ├── small-election/
│   │   ├── Kendall Park - Master of Magic - candidate totals by batch.csv
│   │   ├── Kendall Park - Minister of Farming - candidate totals by batch.csv
│   │   ├── Kendall Park - Secretary of Treasure - candidate totals by batch.csv
│   │   ├── Kendall Park - ballot manifest.csv
│   │   ├── Kendall Park - cvrs.csv
│   │   ├── Mount Olive - Minister of Farming - candidate totals by batch.csv
│   │   ├── Mount Olive - ballot manifest.csv
│   │   ├── Mount Olive - cvrs.csv
│   │   ├── Siletz - Minister of Farming - candidate totals by batch.csv
│   │   ├── Siletz - ballot manifest.csv
│   │   ├── Siletz - cvrs.csv
│   │   ├── Small Election - jurisdictions.csv
│   │   ├── Small Election - standardized contests.csv
│   │   ├── Waurika - Master of Magic - candidate totals by batch.csv
│   │   ├── Waurika - Minister of Farming - candidate totals by batch.csv
│   │   ├── Waurika - ballot manifest.csv
│   │   ├── Waurika - cvrs.csv
│   │   ├── Worthington Hills - Master of Magic - candidate totals by batch.csv
│   │   ├── Worthington Hills - Minister of Farming - candidate totals by batch.csv
│   │   ├── Worthington Hills - ballot manifest.csv
│   │   ├── Worthington Hills - cvrs.csv
│   │   └── small-election.spec.json
│   ├── tabulator-status.xml
│   └── test/
│       ├── __init__.py
│       ├── snapshots/
│       │   ├── __init__.py
│       │   └── snap_test_generate_election.py
│       └── test_generate_election.py
├── heroku-release-phase.sh
├── images/
│   └── .gitkeep
├── package.json
├── pyproject.toml
├── pytest.ini
├── run-dev.sh
├── scripts/
│   ├── __init__.py
│   ├── batch-inventory-progress.py
│   ├── clear-audit-boards.py
│   ├── cleardb.py
│   ├── combine-hybrid-results.py
│   ├── create-admin.py
│   ├── create-org.py
│   ├── create.py
│   ├── fix-ess-cvr-quotes.py
│   ├── manifest-for-cvr.py
│   ├── migrate-files-to-s3.py
│   ├── parse-xml-cvrs.py
│   ├── reopen-round.py
│   ├── resetdb.py
│   ├── restore-db-backup.sh
│   ├── run-basedpyright.sh
│   ├── run-dev-worker.py
│   ├── scrapers/
│   │   └── georgia-results-downloader/
│   │       ├── README.md
│   │       ├── index.css
│   │       ├── index.html
│   │       └── index.js
│   └── seed-probely-db.sh
├── server/
│   ├── __init__.py
│   ├── activity_log/
│   │   ├── __init__.py
│   │   ├── activity_log.py
│   │   └── slack_worker.py
│   ├── api/
│   │   ├── __init__.py
│   │   ├── activity.py
│   │   ├── audit_boards.py
│   │   ├── ballot_manifest.py
│   │   ├── ballots.py
│   │   ├── batch_files.py
│   │   ├── batch_inventory.py
│   │   ├── batch_tallies.py
│   │   ├── batches.py
│   │   ├── contests.py
│   │   ├── cvrs.py
│   │   ├── discrepancies.py
│   │   ├── election_settings.py
│   │   ├── elections.py
│   │   ├── full_hand_tally.py
│   │   ├── jurisdictions.py
│   │   ├── offline_results.py
│   │   ├── public.py
│   │   ├── reports.py
│   │   ├── rounds.py
│   │   ├── sample_preview.py
│   │   ├── sample_sizes.py
│   │   ├── shared.py
│   │   ├── standardized_contests.py
│   │   └── support.py
│   ├── app.py
│   ├── audit_math/
│   │   ├── __init__.py
│   │   ├── ballot_polling.py
│   │   ├── ballot_polling_types.py
│   │   ├── bravo.py
│   │   ├── macro.py
│   │   ├── minerva.py
│   │   ├── providence.py
│   │   ├── raire.py
│   │   ├── raire_utils.py
│   │   ├── sampler.py
│   │   ├── sampler_contest.py
│   │   ├── suite.py
│   │   ├── supersimple.py
│   │   └── supersimple_raire.py
│   ├── auth/
│   │   ├── __init__.py
│   │   ├── auth_helpers.py
│   │   ├── auth_routes.py
│   │   ├── email_boilerplate.html
│   │   ├── email_login_code.html
│   │   └── email_login_code.txt
│   ├── config.py
│   ├── database.py
│   ├── errors.py
│   ├── feature_flags.py
│   ├── main.py
│   ├── migrations/
│   │   ├── README.md
│   │   ├── __init__.py
│   │   ├── env.py
│   │   ├── script.py.mako
│   │   └── versions/
│   │       ├── 07859b6b370b_json_sample_sizes.py
│   │       ├── 11e35dd1c515_batch_tallies_file.py
│   │       ├── 141edd274627_fix_null_round_contest_sample_size.py
│   │       ├── 22c615fe67ab_jurisdictionresult.py
│   │       ├── 244744c21027_tally_entry_accounts.py
│   │       ├── 266fba5a5c8a_rename_offlinebatchresult_to_.py
│   │       ├── 2aeb618b9438_jurisdiction_cvr_file_type.py
│   │       ├── 30f47ec7308c_batchresultsfinalized.py
│   │       ├── 342f43b1c9d9_batch_has_cvrs.py
│   │       ├── 34824a2d1ba8_batch_combined_batch_name.py
│   │       ├── 34939a0c9f5c_ballotinterpretation_has_invalid_write_in.py
│   │       ├── 3edc260ab0b1_audittype_ballot_comparison.py
│   │       ├── 3efe804f6952_remove_offlinebatchresultchangelog.py
│   │       ├── 496ee3db6da8_cvrfiletype_hart.py
│   │       ├── 4aa612e28c2e_delete_auditboard_without_cascading.py
│   │       ├── 4aec6c8a419f_backgroundtask_lock_key.py
│   │       ├── 4b1bf0241301_add_batch_file_bundle_table.py
│   │       ├── 5004a93f75d8_batchresulttallysheet.py
│   │       ├── 5238d088cf62_offlinebatchresultchangelog.py
│   │       ├── 593823da406d_fix_delete_cascades.py
│   │       ├── 5acbd2f95b9f_standardized_contests_file.py
│   │       ├── 5b7164faeda5_sampledballotdraw_contest_id.py
│   │       ├── 5bb25bdd56b7_hybrid_audit_type.py
│   │       ├── 6a4dc1ef268c_add_a_sessions_table_as_we_move_.py
│   │       ├── 6bd43f181daa_add_auditmathtype.py
│   │       ├── 6c256e8152f8_backgroundtask_worker_id.py
│   │       ├── 74c579ae8555_batch_last_edited_by.py
│   │       ├── 754cca3f4448_add_providence_to_auditmathtype.py
│   │       ├── 7ca7a4b0bcc0_contest_pending_ballots.py
│   │       ├── 7f86511c05e0_cvrs.py
│   │       ├── 83bc53b14021_organization_default_state.py
│   │       ├── 8452f909a07e_jurisdiction_contest_choice_name_standardizations.py
│   │       ├── 848293b46b37_batchinventorydata.py
│   │       ├── 848ffc831a04_election_sample_preview.py
│   │       ├── 8ab39ac619ed_activity_log.py
│   │       ├── 8b6b89bfbc97_backgroundtask.py
│   │       ├── 8bc5c2037187_adding_audit_math_type.py
│   │       ├── 95660eea5c1c_offline_batch_results.py
│   │       ├── 971d6d153879_background_task_progress.py
│   │       ├── 9956d373c6b8_interpretation_contest_not_on_ballot.py
│   │       ├── 9d9c4e058cb2_jurisdiction_contest_name_.py
│   │       ├── 9ed660c31c0a_election_audit_type.py
│   │       ├── a3004ca81e25_sampledbatchdraw.py
│   │       ├── aa3978570981_batchresult.py
│   │       ├── b0b160c2f187_initial.py
│   │       ├── b5fcf654c681_remove_single_jurisdiction_flow.py
│   │       ├── b91b345bf0a9_cvrballot_unique_constraint.py
│   │       ├── bc97ac0e8267_remove_file_contents.py
│   │       ├── c012fa6b13a9_sampledbatchdraw_contest_id.py
│   │       ├── c2b90f147183_organization_name_unique.py
│   │       ├── cb8de251c1a5_batchinventorydata_system_type.py
│   │       ├── cec7ecc73bd8_samplesizeoptions_table.py
│   │       ├── d0fc64ab8b98_on_delete_cleanup.py
│   │       ├── dd3f3330aee2_cvrfiletype_ess.py
│   │       ├── de96efe4d679_ja_login_code.py
│   │       ├── df1334fc5fe9_election_deleted_at.py
│   │       ├── df3c0681fad9_file_storage_path.py
│   │       ├── e372310f31c1_batch_container.py
│   │       ├── f400f19f7a35_file_background_task.py
│   │       ├── f44bbbb8b076_cvrballot_ballot_position_and_record_id.py
│   │       ├── f8e901e92f0a_background_sample_size_options.py
│   │       ├── fa342e75506b_overvotes.py
│   │       ├── fea3ed38fb6c_jurisdiction_expected_manifest_num_.py
│   │       └── fed66f26125e_remove_batch_comparison_audit_boards.py
│   ├── models.py
│   ├── sentry.py
│   ├── static.py
│   ├── tests/
│   │   ├── __init__.py
│   │   ├── api/
│   │   │   ├── __init__.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_audit_boards.py
│   │   │   │   ├── snap_test_ballots.py
│   │   │   │   ├── snap_test_contests.py
│   │   │   │   ├── snap_test_jurisdictions.py
│   │   │   │   ├── snap_test_public.py
│   │   │   │   ├── snap_test_reports.py
│   │   │   │   ├── snap_test_rounds.py
│   │   │   │   ├── snap_test_sample_preview.py
│   │   │   │   └── snap_test_sample_sizes.py
│   │   │   ├── test_activity.py
│   │   │   ├── test_audit_boards.py
│   │   │   ├── test_ballot_manifest.py
│   │   │   ├── test_ballots.py
│   │   │   ├── test_batch_files.py
│   │   │   ├── test_contests.py
│   │   │   ├── test_election_settings.py
│   │   │   ├── test_elections.py
│   │   │   ├── test_jurisdictions.py
│   │   │   ├── test_jurisdictions_file.py
│   │   │   ├── test_public.py
│   │   │   ├── test_reports.py
│   │   │   ├── test_rounds.py
│   │   │   ├── test_sample_preview.py
│   │   │   ├── test_sample_sizes.py
│   │   │   └── test_support.py
│   │   ├── audit_math/
│   │   │   ├── __init__.py
│   │   │   ├── raire_data/
│   │   │   │   ├── input/
│   │   │   │   │   ├── Berkeley_2010.raire
│   │   │   │   │   └── SpecialCases/
│   │   │   │   │       └── Aspen_2009_wrong_winner.raire
│   │   │   │   ├── output/
│   │   │   │   │   ├── Berkeley_2010.raire.out
│   │   │   │   │   └── SpecialCases/
│   │   │   │   │       └── Aspen_2009_wrong_winner.raire.out
│   │   │   │   └── sfda19/
│   │   │   │       ├── SFDA2019_PrelimReport12VBMJustDASheets.raire
│   │   │   │       ├── mvr_prepilot_test.json
│   │   │   │       └── sample.csv
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_bravo.py
│   │   │   │   ├── snap_test_macro.py
│   │   │   │   └── snap_test_sampler.py
│   │   │   ├── test_bravo.py
│   │   │   ├── test_macro.py
│   │   │   ├── test_minerva.py
│   │   │   ├── test_minerva2.py
│   │   │   ├── test_raire.py
│   │   │   ├── test_raire_utils.py
│   │   │   ├── test_sampler.py
│   │   │   ├── test_sampler_contest.py
│   │   │   ├── test_suite.py
│   │   │   ├── test_supersimple.py
│   │   │   └── test_supersimple_raire.py
│   │   ├── ballot_comparison/
│   │   │   ├── __init__.py
│   │   │   ├── conftest.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_ballot_comparison.py
│   │   │   │   ├── snap_test_ballot_comparison_cardstyledata.py
│   │   │   │   ├── snap_test_ballot_comparison_manifests.py
│   │   │   │   ├── snap_test_contest_name_standardizations.py
│   │   │   │   └── snap_test_cvrs.py
│   │   │   ├── test_ballot_comparison.py
│   │   │   ├── test_ballot_comparison_cardstyledata.py
│   │   │   ├── test_ballot_comparison_manifests.py
│   │   │   ├── test_contest_name_standardizations.py
│   │   │   ├── test_cvrs.py
│   │   │   ├── test_single_jurisdiction_ballot_comparison.py
│   │   │   └── test_standardized_contests.py
│   │   ├── ballot_polling/
│   │   │   ├── __init__.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_ballot_polling.py
│   │   │   │   ├── snap_test_minerva2_ballot_polling.py
│   │   │   │   ├── snap_test_minerva_ballot_polling.py
│   │   │   │   └── snap_test_providence_ballot_polling.py
│   │   │   ├── test_ballot_polling.py
│   │   │   ├── test_minerva_ballot_polling.py
│   │   │   └── test_providence_ballot_polling.py
│   │   ├── batch_comparison/
│   │   │   ├── __init__.py
│   │   │   ├── conftest.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   ├── snap_test_batch_comparison.py
│   │   │   │   ├── snap_test_batch_inventory.py
│   │   │   │   ├── snap_test_batches.py
│   │   │   │   ├── snap_test_multi_contest_batch_comparison.py
│   │   │   │   └── snap_test_sample_extra_batches_by_counting_group.py
│   │   │   ├── test_batch_comparison.py
│   │   │   ├── test_batch_inventory.py
│   │   │   ├── test_batch_tallies.py
│   │   │   ├── test_batches.py
│   │   │   ├── test_multi_contest_batch_comparison.py
│   │   │   ├── test_sample_extra_batches_by_counting_group.py
│   │   │   ├── test_sample_extra_batches_to_ensure_one_per_jurisdiction.py
│   │   │   ├── test_single_jurisdiction_batch_comparison.py
│   │   │   └── test_support_batch_comparison.py
│   │   ├── conftest.py
│   │   ├── helpers.py
│   │   ├── hybrid/
│   │   │   ├── __init__.py
│   │   │   ├── conftest.py
│   │   │   ├── snapshots/
│   │   │   │   ├── __init__.py
│   │   │   │   └── snap_test_hybrid.py
│   │   │   ├── test_hybrid.py
│   │   │   └── test_hybrid_manifests.py
│   │   ├── snapshots/
│   │   │   ├── __init__.py
│   │   │   ├── snap_test_full_hand_tally.py
│   │   │   ├── snap_test_jointly_targeted_contests.py
│   │   │   ├── snap_test_multi_winner_contest.py
│   │   │   ├── snap_test_multiple_targeted_contests.py
│   │   │   ├── snap_test_offline_data_entry.py
│   │   │   └── snap_test_slack_worker.py
│   │   ├── test_app.py
│   │   ├── test_auth.py
│   │   ├── test_background_tasks.py
│   │   ├── test_errors.py
│   │   ├── test_full_hand_tally.py
│   │   ├── test_helpers.py
│   │   ├── test_migrations.py
│   │   ├── test_multi_winner_contest.py
│   │   ├── test_multiple_targeted_contests.py
│   │   ├── test_offline_data_entry.py
│   │   ├── test_slack_worker.py
│   │   ├── test_websessions.py
│   │   └── util/
│   │       ├── __init__.py
│   │       ├── test-ballot-manifest.xlsx
│   │       ├── test_binpacking.py
│   │       ├── test_collections.py
│   │       ├── test_csv_parse.py
│   │       ├── test_cvr_snapshot_parse.py
│   │       ├── test_file_storage.py
│   │       ├── test_get_json.py
│   │       ├── test_hart_parse.py
│   │       ├── test_jsonschema.py
│   │       ├── test_strings.py
│   │       ├── windows1252-encoded.csv
│   │       └── xls-mislabeled-as-csv.csv
│   ├── util/
│   │   ├── __init__.py
│   │   ├── binpacking.py
│   │   ├── collections.py
│   │   ├── csv_download.py
│   │   ├── csv_parse.py
│   │   ├── cvr_snapshot_parse.py
│   │   ├── file.py
│   │   ├── get_json.py
│   │   ├── hart_parse.py
│   │   ├── isoformat.py
│   │   ├── jsonschema.py
│   │   ├── redirect.py
│   │   └── string.py
│   ├── websession.py
│   └── worker/
│       ├── __init__.py
│       ├── tasks.py
│       └── worker.py
└── stubs/
    ├── consistent_sampler/
    │   └── __init__.pyi
    ├── cryptorandom/
    │   ├── __init__.pyi
    │   └── cryptorandom/
    │       └── __init__.pyi
    └── r2b2/
        ├── __init__.pyi
        ├── __main__.pyi
        ├── athena.pyi
        ├── audit.pyi
        ├── brla.pyi
        ├── cli.pyi
        ├── contest.pyi
        ├── election.pyi
        ├── eor_bravo.pyi
        ├── minerva.pyi
        ├── minerva2.pyi
        ├── simulation/
        │   ├── __init__.pyi
        │   ├── athena.pyi
        │   ├── eor_bravo.pyi
        │   ├── filip_athena.pyi
        │   ├── minerva.pyi
        │   ├── minerva2.pyi
        │   └── so_bravo.pyi
        ├── simulator.pyi
        ├── so_bravo.pyi
        └── tests/
            ├── __init__.pyi
            ├── test_athena.pyi
            ├── test_audit.pyi
            ├── test_brla.pyi
            ├── test_cli.pyi
            ├── test_contest.pyi
            ├── test_election.pyi
            ├── test_eor_bravo.pyi
            ├── test_filip_athena_sim.pyi
            ├── test_minerva.pyi
            ├── test_minerva2.pyi
            ├── test_so_bravo.pyi
            └── util.pyi
Download .txt
Showing preview only (234K chars total). Download the full file or copy to clipboard to get everything.
SYMBOL INDEX (2445 symbols across 377 files)

FILE: client/cypress.config.ts
  method setupNodeEvents (line 16) | setupNodeEvents(on, _config) {

FILE: client/cypress/end-to-end/ballot-comparison.cy.js
  function urlify (line 220) | function urlify(text) {

FILE: client/cypress/end-to-end/ballot-polling.cy.js
  function urlify (line 188) | function urlify(text) {

FILE: client/cypress/plugins.ts
  function getPdfContent (line 9) | async function getPdfContent(pdfName) {
  function configureDownloadDirectory (line 15) | function configureDownloadDirectory(on) {
  function setupMockSmtpServer (line 32) | function setupMockSmtpServer(on) {

FILE: client/src/App.tsx
  type PrivateRouteProps (line 61) | interface PrivateRouteProps extends RouteProps {

FILE: client/src/components/Atoms/AsyncButton.tsx
  type IAsyncButtonProps (line 5) | interface IAsyncButtonProps extends IButtonProps {

FILE: client/src/components/Atoms/CSVForm.tsx
  type IValues (line 38) | interface IValues {
  type IProps (line 43) | interface IProps {

FILE: client/src/components/Atoms/CodeInput.tsx
  type InputProps (line 17) | type InputProps = Pick<
  type ICodeInputProps (line 22) | interface ICodeInputProps extends InputProps {

FILE: client/src/components/Atoms/Confirm.tsx
  type IConfirmOptions (line 5) | interface IConfirmOptions {
  type IUseConfirmResult (line 14) | interface IUseConfirmResult {
  type IConfirmProps (line 53) | interface IConfirmProps extends IConfirmOptions {

FILE: client/src/components/Atoms/Count.tsx
  type IProps (line 3) | interface IProps {

FILE: client/src/components/Atoms/FileUpload.tsx
  type IFileUploadProps (line 21) | interface IFileUploadProps extends IFileUpload {

FILE: client/src/components/Atoms/Form/FormButton.tsx
  type IProps (line 16) | interface IProps {

FILE: client/src/components/Atoms/Form/FormField.test.tsx
  function testForm (line 6) | function testForm({

FILE: client/src/components/Atoms/Form/FormField.tsx
  type IWrapperProps (line 7) | interface IWrapperProps {
  type IProps (line 40) | interface IProps {

FILE: client/src/components/Atoms/Form/FormSection.tsx
  type IProps (line 16) | interface IProps {

FILE: client/src/components/Atoms/Form/FormWrapper.tsx
  type IProps (line 12) | interface IProps {

FILE: client/src/components/Atoms/H2Title.tsx
  type IProps (line 12) | interface IProps {

FILE: client/src/components/Atoms/H3Title.tsx
  type IProps (line 12) | interface IProps {

FILE: client/src/components/Atoms/Layout.tsx
  type IFlexboxProps (line 3) | interface IFlexboxProps {

FILE: client/src/components/Atoms/LinkButton.tsx
  type ILinkButtonProps (line 5) | interface ILinkButtonProps

FILE: client/src/components/Atoms/ListAndDetail.tsx
  type IListProps (line 57) | interface IListProps {
  constant SELECTED_LIST_ITEM_COLOR (line 87) | const SELECTED_LIST_ITEM_COLOR = 'rgba(19, 124, 189, 0.15)'
  type IListItemProps (line 111) | interface IListItemProps {

FILE: client/src/components/Atoms/SegmentedControl.tsx
  type IOption (line 13) | interface IOption<T> {
  type IProps (line 18) | interface IProps<T extends string> {

FILE: client/src/components/Atoms/Sidebar.tsx
  type ISidebarMenuItem (line 23) | interface ISidebarMenuItem
  type IProps (line 28) | interface IProps {

FILE: client/src/components/Atoms/StatusBar.tsx
  type IAuditHeadingProps (line 22) | interface IAuditHeadingProps {

FILE: client/src/components/Atoms/StatusBox.tsx
  type IStatusBoxProps (line 44) | interface IStatusBoxProps {
  type IAuditAdminProps (line 120) | interface IAuditAdminProps {
  type IAuditAdminAnotherRoundStatusBoxProps (line 300) | interface IAuditAdminAnotherRoundStatusBoxProps {

FILE: client/src/components/Atoms/StatusTag.tsx
  type ExtendedIntent (line 38) | type ExtendedIntent = Intent | 'in-progress'
  type IStatusTagProps (line 40) | interface IStatusTagProps extends Omit<ITagProps, 'minimal' | 'intent'> {

FILE: client/src/components/Atoms/Steps.tsx
  type StepState (line 49) | type StepState = 'incomplete' | 'current' | 'complete'
  type IStepListItemProps (line 76) | interface IStepListItemProps {

FILE: client/src/components/Atoms/Table.tsx
  type IFilterInputProps (line 31) | interface IFilterInputProps {
  type ITableProps (line 80) | interface ITableProps<T extends object> {

FILE: client/src/components/Atoms/Wrapper.tsx
  type IInnerProps (line 13) | interface IInnerProps {

FILE: client/src/components/Atoms/react-table-config.d.ts
  type TableOptions (line 21) | interface TableOptions<D extends object>
  type Hooks (line 25) | interface Hooks<D extends object = {}> extends UseSortByHooks<D> {}
  type TableInstance (line 27) | interface TableInstance<D extends object = {}>
  type TableState (line 31) | interface TableState<D extends object = {}>
  type ColumnInterface (line 35) | interface ColumnInterface<D extends object = {}>
  type ColumnInstance (line 39) | interface ColumnInstance<D extends object = {}>
  type Cell (line 43) | interface Cell<D extends object = {}, V = any> {}
  type Row (line 45) | interface Row<D extends object = {}> {}

FILE: client/src/components/AuditAdmin/ActivityLog.test.tsx
  method get (line 266) | get() {

FILE: client/src/components/AuditAdmin/ActivityLog.tsx
  type IActivity (line 10) | interface IActivity {

FILE: client/src/components/AuditAdmin/AuditAdminView.tsx
  type IParams (line 26) | interface IParams {

FILE: client/src/components/AuditAdmin/Progress/AuditBoardsTable.tsx
  type IAuditBoardMinimal (line 7) | interface IAuditBoardMinimal {
  type IProps (line 13) | interface IProps {

FILE: client/src/components/AuditAdmin/Progress/JurisdictionDetail.test.tsx
  function mockJsPDF (line 40) | function mockJsPDF(options?: any) {

FILE: client/src/components/AuditAdmin/Progress/JurisdictionDetail.tsx
  type IJurisdictionDetailProps (line 49) | interface IJurisdictionDetailProps {

FILE: client/src/components/AuditAdmin/Progress/JurisdictionDiscrepancies.tsx
  function getContestName (line 33) | function getContestName(contests: IContest[], contestId: string) {
  function getChoiceName (line 39) | function getChoiceName(
  function formatVoteCount (line 51) | function formatVoteCount(val: string | number | undefined): string {
  type IJurisdictionDiscrepanciesProps (line 67) | interface IJurisdictionDiscrepanciesProps {

FILE: client/src/components/AuditAdmin/Progress/Progress.test.tsx
  function mockJsPDF (line 34) | function mockJsPDF(options?: any) {
  function getDefaultExpectedCalls (line 85) | function getDefaultExpectedCalls() {
  method get (line 811) | get() {

FILE: client/src/components/AuditAdmin/Progress/Progress.tsx
  type IProgressProps (line 71) | interface IProgressProps {

FILE: client/src/components/AuditAdmin/Progress/ProgressMap.tsx
  type IProps (line 18) | interface IProps {

FILE: client/src/components/AuditAdmin/Progress/map-county-corrections.ts
  type MapCountyCorrections (line 9) | interface MapCountyCorrections {

FILE: client/src/components/AuditAdmin/Setup/Contests/ContestForm.tsx
  type ICheckboxList (line 61) | type ICheckboxList = {
  type IDropdownCheckboxListProps (line 67) | interface IDropdownCheckboxListProps {
  type IProps (line 170) | interface IProps {
  type IChoiceValues (line 178) | interface IChoiceValues {
  type IContestValues (line 186) | interface IContestValues {

FILE: client/src/components/AuditAdmin/Setup/Contests/ContestSelect.test.tsx
  function uuidv4 (line 64) | function uuidv4() {

FILE: client/src/components/AuditAdmin/Setup/Contests/ContestSelect.tsx
  type IProps (line 17) | interface IProps {
  type IFormValues (line 24) | interface IFormValues {

FILE: client/src/components/AuditAdmin/Setup/Contests/Contests.tsx
  type IContestsProps (line 7) | interface IContestsProps {

FILE: client/src/components/AuditAdmin/Setup/Participants/Participants.tsx
  type IParticipantsProps (line 12) | interface IParticipantsProps {

FILE: client/src/components/AuditAdmin/Setup/Review/ConfirmLaunch.tsx
  type IConfirmLaunchProps (line 5) | interface IConfirmLaunchProps {

FILE: client/src/components/AuditAdmin/Setup/Review/CvrChoiceNameConsistencyError.tsx
  type IProps (line 15) | interface IProps {

FILE: client/src/components/AuditAdmin/Setup/Review/LabeledValue.tsx
  type IProps (line 3) | interface IProps {

FILE: client/src/components/AuditAdmin/Setup/Review/Review.test.tsx
  function testContest (line 1240) | function testContest(contestIndex: number): Omit<IContest, 'choices'> {

FILE: client/src/components/AuditAdmin/Setup/Review/Review.tsx
  type IProps (line 85) | interface IProps {
  type ISelectSampleSizesProps (line 801) | interface ISelectSampleSizesProps {

FILE: client/src/components/AuditAdmin/Setup/Review/SamplePreview.tsx
  type IProps (line 8) | interface IProps {

FILE: client/src/components/AuditAdmin/Setup/Review/StandardizeContestChoiceNamesDialog.tsx
  function isContestChoiceNameStandardizationComplete (line 18) | function isContestChoiceNameStandardizationComplete(
  type IDialogProps (line 49) | interface IDialogProps {
  type ICalloutProps (line 185) | interface ICalloutProps {

FILE: client/src/components/AuditAdmin/Setup/Review/StandardizeContestNames.tsx
  type IStandardizeContestNamesDialogProps (line 17) | interface IStandardizeContestNamesDialogProps {

FILE: client/src/components/AuditAdmin/Setup/Review/useSampleSizes.ts
  type ISampleSizeOption (line 5) | interface ISampleSizeOption {
  type ISampleSizeOptions (line 14) | interface ISampleSizeOptions {
  type ISelectedSampleSizes (line 18) | interface ISelectedSampleSizes {
  type ISampleSizesResponse (line 22) | interface ISampleSizesResponse {

FILE: client/src/components/AuditAdmin/Setup/Settings/Settings.tsx
  constant RANDOM_SEED_INSTRUCTIONS (line 28) | const RANDOM_SEED_INSTRUCTIONS =
  type IProps (line 91) | interface IProps {
  type IValues (line 97) | type IValues = Pick<

FILE: client/src/components/AuditAdmin/Setup/Setup.tsx
  type Stage (line 26) | type Stage = ElementType<typeof setupStages>
  type ISetupProps (line 36) | interface ISetupProps {

FILE: client/src/components/AuditAdmin/useRoundsAuditAdmin.ts
  type IRound (line 14) | interface IRound {
  type ISampleSizes (line 30) | interface ISampleSizes {
  type ICreateRoundBody (line 69) | interface ICreateRoundBody {
  type ISamplePreviewJurisdiction (line 156) | interface ISamplePreviewJurisdiction {
  type ISamplePreview (line 162) | interface ISamplePreview {

FILE: client/src/components/AuditBoard/Ballot.tsx
  type IProps (line 93) | interface IProps {
  type IInterpretationSummaryProps (line 109) | interface IInterpretationSummaryProps {

FILE: client/src/components/AuditBoard/BallotAudit.tsx
  function constructEmptyInterpretation (line 72) | function constructEmptyInterpretation(
  function hasInterpretationBeenSpecified (line 85) | function hasInterpretationBeenSpecified({
  type IProps (line 99) | interface IProps {
  type IBallotAuditContestProps (line 211) | interface IBallotAuditContestProps {

FILE: client/src/components/AuditBoard/BlockCheckbox.tsx
  type IProps (line 45) | interface IProps {

FILE: client/src/components/AuditBoard/BoardTable.tsx
  type IProps (line 125) | interface IProps {

FILE: client/src/components/AuditBoard/MemberForm.tsx
  type IProps (line 9) | interface IProps {

FILE: client/src/components/AuditBoard/SignOff.tsx
  type IProps (line 11) | interface IProps {

FILE: client/src/components/AuditBoard/ballotInterpretation.ts
  constant INVALID_WRITE_IN (line 3) | const INVALID_WRITE_IN = 'INVALID_WRITE_IN'
  type IBallotInterpretationFormState (line 8) | interface IBallotInterpretationFormState {
  function ballotInterpretationToFormState (line 20) | function ballotInterpretationToFormState({
  function ballotInterpretationFromFormState (line 42) | function ballotInterpretationFromFormState({

FILE: client/src/components/Header.tsx
  function Nav (line 79) | function Nav(
  type TParams (line 127) | interface TParams {
  type IHeaderAuditBoardProps (line 246) | interface IHeaderAuditBoardProps {

FILE: client/src/components/HomeScreen.tsx
  type INewAudit (line 454) | interface INewAudit {

FILE: client/src/components/JurisdictionAdmin/BatchInventory.tsx
  type Step (line 40) | type Step =
  constant STEPS (line 46) | const STEPS: Step[] = [
  constant STEPS_IF_NOT_SHOWING_BALLOT_MANIFEST (line 53) | const STEPS_IF_NOT_SHOWING_BALLOT_MANIFEST: Step[] = [
  function areAllFilesUploaded (line 63) | function areAllFilesUploaded({
  constant DATA_TYPES (line 78) | const DATA_TYPES = ['systemType', 'cvr', 'tabulatorStatus', 'signOff'] a...
  type DataType (line 79) | type DataType = typeof DATA_TYPES[number]
  function batchInventoryQueryKey (line 81) | function batchInventoryQueryKey(
  type ISystemTypeQueries (line 88) | interface ISystemTypeQueries {
  type ISignOffQueries (line 184) | interface ISignOffQueries {

FILE: client/src/components/JurisdictionAdmin/BatchRoundProgress.tsx
  type IBatchRoundProgressProps (line 7) | interface IBatchRoundProgressProps {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundSteps.test.tsx
  function mockJsPDF (line 36) | function mockJsPDF(options?: any) {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundSteps.tsx
  type IBatchRoundStepsProps (line 18) | interface IBatchRoundStepsProps {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundTallyEntry/BatchDetail.tsx
  type ITabsWrapperProps (line 36) | interface ITabsWrapperProps {
  constant VOTE_TOTALS_TAB_ID (line 108) | const VOTE_TOTALS_TAB_ID = 'vote-totals'
  type IBatchResultTallySheetStateEntry (line 114) | interface IBatchResultTallySheetStateEntry extends IBatchResultTallySheet {
  type ITab (line 118) | interface ITab {
  function sheetToSheetStateEntry (line 123) | function sheetToSheetStateEntry(
  function sheetStateEntryToSheet (line 129) | function sheetStateEntryToSheet(
  function defaultSheetName (line 138) | function defaultSheetName(sheetNumber: number) {
  function constructEmptySheet (line 142) | function constructEmptySheet(sheetName: string): IBatchResultTallySheet {
  function tabsFromSheets (line 149) | function tabsFromSheets(sheets: IBatchResultTallySheetStateEntry[]): ITa...
  type IBatchDetailProps (line 159) | interface IBatchDetailProps {
  type IBatchResultTallySheetProps (line 376) | interface IBatchResultTallySheetProps {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundTallyEntry/BatchRoundTallyEntry.tsx
  type IProps (line 22) | interface IProps {
  type IBatchRoundTallyEntryContentProps (line 59) | interface IBatchRoundTallyEntryContentProps {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/DownloadBatchRetrievalListButton.tsx
  type IDownloadBatchRetrievalListButtonProps (line 6) | interface IDownloadBatchRetrievalListButtonProps extends IButtonProps {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/DownloadBatchTallySheetsButton.tsx
  type IDownloadBatchTallySheetsButtonProps (line 12) | interface IDownloadBatchTallySheetsButtonProps extends IButtonProps {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/DownloadStackLabelsButton.tsx
  type DownloadStackLabelsButtonProps (line 10) | interface DownloadStackLabelsButtonProps extends IButtonProps {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/EnterTalliesStep.tsx
  type IEnterTalliesStepProps (line 26) | interface IEnterTalliesStepProps {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/PrepareBatchesStep.tsx
  type IPrepareBatchesStepProps (line 11) | interface IPrepareBatchesStepProps {

FILE: client/src/components/JurisdictionAdmin/BatchRoundSteps/TallyEntryAccountsStep.tsx
  type ITallyEntryLoginRequest (line 51) | interface ITallyEntryLoginRequest {
  type ITallyEntryAccountStatus (line 57) | interface ITallyEntryAccountStatus {
  type ITurnOnTallyEntryAccountsPromptProps (line 136) | interface ITurnOnTallyEntryAccountsPromptProps {
  type IConfirmTallyEntryLoginProps (line 181) | interface IConfirmTallyEntryLoginProps {
  type IManageTallyEntryAccountsProps (line 343) | interface IManageTallyEntryAccountsProps {
  type ITallyEntryAccountsStep (line 455) | interface ITallyEntryAccountsStep {

FILE: client/src/components/JurisdictionAdmin/CreateAuditBoards.tsx
  type IValues (line 13) | interface IValues {
  type IProps (line 17) | interface IProps {

FILE: client/src/components/JurisdictionAdmin/FullHandTallyDataEntry.tsx
  type IProps (line 112) | interface IProps {
  type FormValues (line 147) | interface FormValues {

FILE: client/src/components/JurisdictionAdmin/RoundDataEntry.tsx
  type IProps (line 26) | interface IProps {
  type IValues (line 30) | interface IValues {

FILE: client/src/components/JurisdictionAdmin/RoundManagement.test.tsx
  function mockJsPDF (line 37) | function mockJsPDF(options?: jsPDFOptions) {

FILE: client/src/components/JurisdictionAdmin/RoundManagement.tsx
  type IRoundManagementProps (line 39) | interface IRoundManagementProps {
  type IJAFileDownloadButtonsProps (line 208) | interface IJAFileDownloadButtonsProps {

FILE: client/src/components/JurisdictionAdmin/_mocks.ts
  type INullResultValues (line 11) | interface INullResultValues {

FILE: client/src/components/JurisdictionAdmin/candidateTotalsByBatchTemplateCsv.ts
  function candidateTotalsByBatchTemplateCsvPath (line 2) | function candidateTotalsByBatchTemplateCsvPath({

FILE: client/src/components/JurisdictionAdmin/generateSheets.test.tsx
  function constructMinimalContest (line 46) | function constructMinimalContest(
  function mockJsPDF (line 61) | function mockJsPDF(options?: jsPDFOptions) {

FILE: client/src/components/JurisdictionAdmin/generateSheets.ts
  function renderTextWrapped (line 34) | function renderTextWrapped({
  function addPageBreakIfNecessary (line 60) | function addPageBreakIfNecessary({
  constant LABEL_HEIGHT (line 81) | const LABEL_HEIGHT = 72
  constant LABEL_WIDTH (line 82) | const LABEL_WIDTH = 190
  constant LABEL_START_Y (line 83) | const LABEL_START_Y = 36
  constant LABEL_START_X (line 84) | const LABEL_START_X = 13
  constant LABEL_MARGIN_X (line 85) | const LABEL_MARGIN_X = 9
  constant LABEL_PADDING_Y (line 86) | const LABEL_PADDING_Y = 7
  constant LABEL_PADDING_X (line 87) | const LABEL_PADDING_X = 7
  constant PLACEHOLDERS_WIDTH (line 171) | const PLACEHOLDERS_WIDTH = 180
  constant PLACEHOLDERS_START_X (line 172) | const PLACEHOLDERS_START_X = 20
  constant PLACEHOLDERS_START_Y (line 173) | const PLACEHOLDERS_START_Y = 20
  type IMinimalContest (line 356) | interface IMinimalContest {
  method didParseCell (line 512) | didParseCell(data) {
  method willDrawCell (line 519) | willDrawCell(data) {
  constant STACK_LABEL_MAX_CONTEST_NAME_LENGTH (line 803) | const STACK_LABEL_MAX_CONTEST_NAME_LENGTH = 40
  constant STACK_LABEL_MAX_CANDIDATE_NAME_LENGTH (line 804) | const STACK_LABEL_MAX_CANDIDATE_NAME_LENGTH = 20
  constant STACK_LABEL_TITLE_LENGTH_XL_FONT_CUTOFF (line 805) | const STACK_LABEL_TITLE_LENGTH_XL_FONT_CUTOFF = 12
  constant STACK_LABEL_TEXT_COLOR (line 806) | const STACK_LABEL_TEXT_COLOR = Colors.GRAY2
  constant STACK_LABEL_TITLE_COLORS (line 807) | const STACK_LABEL_TITLE_COLORS = [
  constant DEFAULT_STACK_LABELS (line 819) | const DEFAULT_STACK_LABELS = [
  function formCandidateLabelTitle (line 824) | function formCandidateLabelTitle(candidateFullName: string): string {
  function formCandidateLabelSubtitle (line 845) | function formCandidateLabelSubtitle(contestName: string): string {
  function formCandidateLabels (line 851) | function formCandidateLabels(

FILE: client/src/components/JurisdictionAdmin/useBallots.ts
  type IBallot (line 9) | interface IBallot {
  type ISampleCount (line 59) | interface ISampleCount {

FILE: client/src/components/JurisdictionAdmin/useBatchResults.ts
  type IBatchResults (line 4) | interface IBatchResults {
  type IBatchResultTallySheet (line 8) | interface IBatchResultTallySheet {
  type IBatch (line 13) | interface IBatch {
  type IBatches (line 21) | interface IBatches {

FILE: client/src/components/JurisdictionAdmin/useFullHandTallyResults.ts
  type IFullHandTallyBatchResult (line 4) | interface IFullHandTallyBatchResult {
  type IFullHandTallyBatchResults (line 18) | interface IFullHandTallyBatchResults {

FILE: client/src/components/JurisdictionAdmin/useResults.ts
  type IResultValues (line 4) | interface IResultValues {

FILE: client/src/components/PublicPages/AuditPlanner/AuditPlanCard.tsx
  constant HIDDEN_LABEL_CLASS_NAME (line 11) | const HIDDEN_LABEL_CLASS_NAME = 'hidden-label'
  type IContainerProps (line 13) | interface IContainerProps {
  constant DEFAULT_RISK_LIMIT_PERCENTAGE (line 70) | const DEFAULT_RISK_LIMIT_PERCENTAGE = 5
  type IProps (line 72) | interface IProps {

FILE: client/src/components/PublicPages/AuditPlanner/AuditPlanner.test.tsx
  function renderAuditPlanner (line 16) | function renderAuditPlanner() {
  function areExpectedErrorMessagesDisplayed (line 26) | async function areExpectedErrorMessagesDisplayed({
  function checkThatElectionResultsCardIsInInitialState (line 52) | async function checkThatElectionResultsCardIsInInitialState() {
  function moveSlider (line 116) | function moveSlider(

FILE: client/src/components/PublicPages/AuditPlanner/ElectionResultsCard.tsx
  constant HIDDEN_INPUT_CLASS_NAME (line 25) | const HIDDEN_INPUT_CLASS_NAME = 'hidden-input'
  constant MAX_NUMERICAL_VALUE (line 120) | const MAX_NUMERICAL_VALUE = 1e15
  type INumericInputProps (line 132) | interface INumericInputProps {
  type INumericInputFormGroupProps (line 190) | interface INumericInputFormGroupProps
  type IProps (line 214) | interface IProps {

FILE: client/src/components/PublicPages/AuditPlanner/SampleSize.tsx
  constant CONTAINER_HEIGHT (line 9) | const CONTAINER_HEIGHT = 36
  type IProps (line 27) | interface IProps {

FILE: client/src/components/PublicPages/AuditPlanner/electionResults.ts
  type ICandidate (line 1) | interface ICandidate {
  type IElectionResults (line 6) | interface IElectionResults {
  type ICandidateFormState (line 12) | interface ICandidateFormState {
  type IElectionResultsFormState (line 17) | interface IElectionResultsFormState {
  function constructNewCandidate (line 23) | function constructNewCandidate(): ICandidateFormState {
  function constructInitialElectionResults (line 30) | function constructInitialElectionResults(): IElectionResultsFormState {
  function assertIsElectionResults (line 38) | function assertIsElectionResults(

FILE: client/src/components/PublicPages/AuditPlanner/sampleSizes.ts
  constant BALLOT_POLLING_SAMPLE_SIZE_KEYS (line 6) | const BALLOT_POLLING_SAMPLE_SIZE_KEYS = ['asn', '0.7', '0.8', '0.9'] as ...
  type BallotPollingSampleSizeKey (line 7) | type BallotPollingSampleSizeKey = typeof BALLOT_POLLING_SAMPLE_SIZE_KEYS...
  type SampleSizes (line 9) | type SampleSizes = {
  type UseSampleSizesOptions (line 19) | interface UseSampleSizesOptions {

FILE: client/src/components/SupportTools/Breadcrumbs.tsx
  type BreadcrumbsProps (line 3) | interface BreadcrumbsProps {

FILE: client/src/components/SupportTools/List.tsx
  type ILinkItemProps (line 36) | interface ILinkItemProps {

FILE: client/src/components/SupportTools/RoundsTable.tsx
  type IProps (line 10) | interface IProps {
  type ILastRoundActionProps (line 69) | interface ILastRoundActionProps {

FILE: client/src/components/SupportTools/shared.tsx
  type ColumnProps (line 8) | interface ColumnProps {

FILE: client/src/components/SupportTools/support-api.tsx
  type IOrganizationBase (line 6) | interface IOrganizationBase {
  type IOrganization (line 11) | interface IOrganization extends IOrganizationBase {
  type IOrganizationForSupport (line 17) | interface IOrganizationForSupport extends IOrganizationBase {
  type IElectionBase (line 23) | interface IElectionBase {
  type IAuditAdmin (line 35) | interface IAuditAdmin {
  type IRound (line 40) | interface IRound {
  type IElectionWithOrg (line 46) | interface IElectionWithOrg extends IElectionBase {
  type IElection (line 50) | interface IElection extends IElectionWithOrg {
  type IElectionForSupport (line 55) | interface IElectionForSupport extends IElectionWithOrg {
  type IJurisdictionBase (line 60) | interface IJurisdictionBase {
  type IJurisdiction (line 65) | interface IJurisdiction extends IJurisdictionBase {
  type IJurisdictionAdmin (line 73) | interface IJurisdictionAdmin {
  type IAuditBoard (line 77) | interface IAuditBoard {
  type IBatch (line 83) | interface IBatch {
  type ICombinedBatch (line 88) | interface ICombinedBatch {

FILE: client/src/components/TallyEntryUser/TallyEntryLoginScreen.tsx
  type ILoginStartFormValues (line 44) | interface ILoginStartFormValues {
  type ILoginCodeDisplayProps (line 131) | interface ILoginCodeDisplayProps {
  type ITallyEntryLoginScreenProps (line 176) | interface ITallyEntryLoginScreenProps {

FILE: client/src/components/TallyEntryUser/TallyEntryScreen.tsx
  type ITallyEntryScreenProps (line 18) | interface ITallyEntryScreenProps {

FILE: client/src/components/UserContext.tsx
  type IElection (line 10) | interface IElection {
  type IOrganization (line 19) | interface IOrganization {
  type IJurisdiction (line 25) | interface IJurisdiction {
  type IAuditAdmin (line 32) | interface IAuditAdmin {
  type IJurisdictionAdmin (line 39) | interface IJurisdictionAdmin {
  type IMember (line 47) | interface IMember {
  type IAuditBoard (line 52) | interface IAuditBoard {
  type ITallyEntryUser (line 64) | interface ITallyEntryUser {
  type IUser (line 77) | type IUser =
  type ISupportUser (line 83) | interface ISupportUser {
  type IAuthData (line 87) | interface IAuthData {

FILE: client/src/components/testUtilities.tsx
  type MatchParameter (line 26) | type MatchParameter<Params> = { [K in keyof Params]?: string }
  type RenderWithRouterReturn (line 66) | type RenderWithRouterReturn = RenderResult<Queries> & {
  function renderWithRouter (line 71) | function renderWithRouter(
  type FetchRequest (line 97) | interface FetchRequest {
  function maybeMockAxios (line 126) | function maybeMockAxios() {
  function hasTextAcrossElements (line 300) | function hasTextAcrossElements(text: string): Matcher {
  function readBlobAsText (line 316) | function readBlobAsText(blob: Blob): Promise<string> {

FILE: client/src/components/useAuditAdminsOrganizations.ts
  function useAuditAdminsOrganizations (line 5) | function useAuditAdminsOrganizations(

FILE: client/src/components/useAuditBoards.ts
  type IAuditBoardMember (line 6) | interface IAuditBoardMember {
  type IAuditBoard (line 11) | interface IAuditBoard {

FILE: client/src/components/useAuditSettings.ts
  type AuditType (line 10) | type AuditType =
  type IAuditSettings (line 16) | interface IAuditSettings {
  type TNewSettings (line 34) | type TNewSettings = Pick<

FILE: client/src/components/useBatchFilesBundle.ts
  type IBundleStatus (line 6) | interface IBundleStatus {

FILE: client/src/components/useCSV.ts
  type FileProcessingStatus (line 8) | enum FileProcessingStatus {
  type CvrFileType (line 15) | enum CvrFileType {
  type IFileInfo (line 23) | interface IFileInfo {
  type IUpload (line 40) | interface IUpload {
  type UploadUrlResponseData (line 45) | type UploadUrlResponseData = {

FILE: client/src/components/useContestChoiceNameStandardizations.ts
  type IContestChoiceNameStandardizations (line 12) | interface IContestChoiceNameStandardizations {
  type IContestChoiceNameStandardizationsResponse (line 20) | interface IContestChoiceNameStandardizationsResponse {

FILE: client/src/components/useContestNameStandardizations.ts
  type IContestNameStandardizations (line 8) | interface IContestNameStandardizations {

FILE: client/src/components/useContestsBallotComparison.ts
  type INewContest (line 4) | interface INewContest {
  type IContest (line 12) | interface IContest extends INewContest {

FILE: client/src/components/useFeatureFlag.ts
  type BatchInventoryConfig (line 4) | interface BatchInventoryConfig {
  constant BATCH_INVENTORY_CONFIGS (line 8) | const BATCH_INVENTORY_CONFIGS: {

FILE: client/src/components/useFileUpload.ts
  type IUseFileUploadProps (line 15) | interface IUseFileUploadProps {
  type IFileUpload (line 20) | interface IFileUpload {
  type CompleteFileUploadArgs (line 60) | type CompleteFileUploadArgs = {
  type UploadUrlResponseData (line 65) | type UploadUrlResponseData = {
  type ICvrsFileUpload (line 288) | interface ICvrsFileUpload extends Omit<IFileUpload, 'uploadFiles'> {

FILE: client/src/components/useJurisdictions.ts
  type IBallotManifestInfo (line 8) | interface IBallotManifestInfo extends IFileInfo {
  type ICvrFileInfo (line 16) | interface ICvrFileInfo extends IFileInfo {
  type IBatchTalliesFileInfo (line 20) | interface IBatchTalliesFileInfo extends IFileInfo {
  type JurisdictionRoundStatus (line 24) | enum JurisdictionRoundStatus {
  type JurisdictionProgressStatus (line 30) | enum JurisdictionProgressStatus {
  type IJurisdiction (line 42) | interface IJurisdiction {
  type LastLoginByJurisdiction (line 164) | type LastLoginByJurisdiction = Record<string, IActivity>
  type DiscrepanciesByJurisdiction (line 177) | type DiscrepanciesByJurisdiction = Record<
  type ContestDiscrepancies (line 185) | type ContestDiscrepancies = {

FILE: client/src/components/useSearchParams.ts
  type SearchParams (line 4) | type SearchParams = Record<string, string | undefined>

FILE: client/src/components/useStandardizedContests.ts
  type IStandardizedContest (line 4) | interface IStandardizedContest {

FILE: client/src/components/utilities.ts
  function tick (line 134) | function tick() {
  function assert (line 196) | function assert(

FILE: client/src/react-app-env.d.ts
  type ProcessEnv (line 6) | interface ProcessEnv {

FILE: client/src/setupTests.ts
  type Matchers (line 18) | interface Matchers<R> {
  method toMatchPdfSnapshot (line 25) | async toMatchPdfSnapshot(pdf: string | Buffer, options?: CompareOptions) {
  method setStart (line 55) | setStart() {
  method setEnd (line 58) | setEnd() {

FILE: client/src/types.ts
  type ElementType (line 1) | type ElementType<
  type IErrorResponse (line 5) | interface IErrorResponse {
  type IChoice (line 11) | interface IChoice {
  type ICvrChoiceNameConsistencyError (line 19) | interface ICvrChoiceNameConsistencyError {
  type IContest (line 27) | interface IContest {
  type Interpretation (line 40) | enum Interpretation {
  type IBallotInterpretation (line 47) | interface IBallotInterpretation {
  type BallotStatus (line 60) | enum BallotStatus {

FILE: client/src/utils/api.ts
  class ApiError (line 31) | class ApiError extends Error {
    method constructor (line 34) | public constructor(message: string, statusCode: number) {

FILE: client/src/utils/array.ts
  function groupBy (line 2) | function groupBy<T extends object>(
  function sortBy (line 16) | function sortBy<T>(arr: T[], keyFn: (elt: T) => number | string): T[] {
  function hashBy (line 26) | function hashBy<T>(
  function replaceAtIndex (line 33) | function replaceAtIndex<T>(arr: T[], index: number, newElement: T): T[] {
  function range (line 40) | function range(start: number, stop: number): number[] {
  function partition (line 44) | function partition<T>(

FILE: client/src/utils/debounce.ts
  function useDebounce (line 18) | function useDebounce<T>(value: T, delayMs = 250): [T, boolean] {

FILE: client/src/utils/number-schema.ts
  type RoundMethod (line 21) | type RoundMethod = 'ceil' | 'floor' | 'round' | 'trunc'
  function getGroupingSeparator (line 23) | function getGroupingSeparator() {
  function parse (line 42) | function parse(value: unknown): number {
  class NumberSchema (line 65) | class NumberSchema extends (MixedSchema as new (
    method constructor (line 68) | public constructor() {
    method _typeCheck (line 77) | protected _typeCheck(possiblyWrappedValue: unknown): boolean {
    method min (line 86) | public min(min: number, message = locale.min): this {
    method max (line 98) | public max(max: number, message = locale.max): this {
    method lessThan (line 110) | public lessThan(less: number, message = locale.lessThan): this {
    method moreThan (line 122) | public moreThan(more: number, message = locale.moreThan): this {
    method positive (line 134) | public positive(msg = locale.positive): this {
    method negative (line 138) | public negative(msg = locale.negative): this {
    method integer (line 142) | public integer(message = locale.integer): this {
    method truncate (line 150) | public truncate(): this {
    method round (line 156) | public round(methodWithPossibleIncorrectCasing?: RoundMethod): this {
  function number (line 178) | function number(): NumberSchema {

FILE: client/src/utils/number.ts
  function sum (line 2) | function sum(nums: number[]): number {

FILE: client/src/utils/objects.ts
  function isObjectEmpty (line 1) | function isObjectEmpty(object: Record<string, unknown>): boolean {
  function mapValues (line 5) | function mapValues<OrigValue, NewValue>(

FILE: client/src/utils/responsiveness.ts
  function useMediaQuery (line 10) | function useMediaQuery(query: string): boolean {
  constant BREAKPOINT_M (line 29) | const BREAKPOINT_M = '40em'
  constant BREAKPOINT_L (line 31) | const BREAKPOINT_L = '64em'
  type IBreakpoints (line 33) | interface IBreakpoints {
  function useCssBreakpoints (line 43) | function useCssBreakpoints(): IBreakpoints {

FILE: client/src/utils/sleep.ts
  function sleep (line 2) | function sleep(ms: number): Promise<void> {

FILE: client/src/utils/string.ts
  function blankLine (line 1) | function blankLine(length: number): string {
  function pluralize (line 9) | function pluralize(word: string, n: number): string {

FILE: client/vite.config.ts
  constant IS_CI (line 5) | const IS_CI = process.env['CI'] === 'true';

FILE: fixtures/generate_election.py
  class ContestSpec (line 23) | class ContestSpec(TypedDict):
  class JurisdictionSpec (line 32) | class JurisdictionSpec(TypedDict):
  class ElectionSpec (line 36) | class ElectionSpec(TypedDict):
  class JurisdictionTally (line 46) | class JurisdictionTally(TypedDict):
  class Batch (line 55) | class Batch(TypedDict):
  class Ballot (line 67) | class Ballot(TypedDict):
  function generate_contest_votes (line 82) | def generate_contest_votes(
  function safe_dict (line 101) | def safe_dict(*args):
  function generate_ballot_votes (line 105) | def generate_ballot_votes(tallies: JurisdictionTallies) -> Iterable[Ball...
  function generate_batches (line 122) | def generate_batches(
  function generate_cvrs (line 136) | def generate_cvrs(
  function write_dominion_cvrs (line 157) | def write_dominion_cvrs(election_spec: ElectionSpec, cvrs: Cvrs, output_...
  function cvrs_to_manifest (line 218) | def cvrs_to_manifest(cvrs: Cvrs) -> Manifest:
  function write_manifest (line 230) | def write_manifest(manifest: Manifest, output_file: IO):
  function cvrs_to_batch_tallies (line 237) | def cvrs_to_batch_tallies(cvrs: Cvrs, contest: ContestSpec) -> BatchTall...
  function write_batch_tallies (line 261) | def write_batch_tallies(
  function random_numbers_that_sum_to_total (line 273) | def random_numbers_that_sum_to_total(
  function split_contest_tallies_across_jurisdictions (line 289) | def split_contest_tallies_across_jurisdictions(
  function generate_jurisdiction_admins (line 322) | def generate_jurisdiction_admins(
  function write_jurisdictions (line 333) | def write_jurisdictions(jurisdiction_admins: dict[str, list[str]], outpu...
  function write_standardized_contests (line 341) | def write_standardized_contests(election_spec: ElectionSpec, output_file...
  function generate_election (line 353) | def generate_election(election_spec: ElectionSpec, output_dir_path: str):

FILE: fixtures/test/test_generate_election.py
  function rand (line 9) | def rand():
  function test_random_numbers_that_sum_to_total (line 13) | def test_random_numbers_that_sum_to_total(snapshot, rand):
  function assert_is_valid_jurisdiction_tallies (line 31) | def assert_is_valid_jurisdiction_tallies(
  function assert_is_valid_cvrs (line 55) | def assert_is_valid_cvrs(cvrs: list[Ballot], tallies: JurisdictionTallies):
  function assert_is_valid_manifest (line 83) | def assert_is_valid_manifest(manifest: Manifest, cvrs: list[Ballot]):
  function assert_is_valid_batch_tallies (line 88) | def assert_is_valid_batch_tallies(
  function test_simple_election (line 104) | def test_simple_election(snapshot, rand):
  function test_small_election (line 154) | def test_small_election(rand):

FILE: scripts/batch-inventory-progress.py
  function file_status (line 21) | def file_status(file):

FILE: scripts/combine-hybrid-results.py
  function ballot_comparison_stratum (line 13) | def ballot_comparison_stratum(contest):
  function ballot_polling_stratum (line 35) | def ballot_polling_stratum(contest, remap):
  function combined_contests (line 63) | def combined_contests(cvr_contest, bp_contest, remap):

FILE: scripts/fix-ess-cvr-quotes.py
  function split_attach_sep (line 7) | def split_attach_sep(pattern, str):

FILE: scripts/migrate-files-to-s3.py
  function migrate_file (line 7) | def migrate_file(file, path):

FILE: scripts/parse-xml-cvrs.py
  function find (line 19) | def find(xml, tag):
  function findall (line 23) | def findall(xml, tag):
  function get_directory_name (line 30) | def get_directory_name(file_path):
  function parse_scanned_ballot_file (line 36) | def parse_scanned_ballot_file(file_path, cvr_workstation_mapping):
  function parse_cvr_file (line 48) | def parse_cvr_file(

FILE: scripts/run-dev-worker.py
  class RunDevWorkerEventHandler (line 10) | class RunDevWorkerEventHandler(FileSystemEventHandler):
    method __init__ (line 11) | def __init__(self, command: list[str], patterns: list[str]):
    method start_process (line 18) | def start_process(self):
    method on_modified (line 26) | def on_modified(self, event: DirModifiedEvent | FileModifiedEvent):

FILE: scripts/scrapers/georgia-results-downloader/index.js
  function transformData (line 20) | function transformData(jsonData) {
  function createAndDownloadCSV (line 61) | function createAndDownloadCSV(rows) {

FILE: server/activity_log/activity_log.py
  class ActivityBase (line 13) | class ActivityBase:
  class Activity (line 25) | class Activity:
  class DeleteAudit (line 31) | class DeleteAudit(Activity):
  class CreateAudit (line 36) | class CreateAudit(Activity):
  class StartRound (line 41) | class StartRound(Activity):
  class EndRound (line 46) | class EndRound(Activity):
  class CalculateSampleSizes (line 52) | class CalculateSampleSizes(Activity):
  class JurisdictionActivity (line 57) | class JurisdictionActivity(Activity):
  class UploadFile (line 63) | class UploadFile(JurisdictionActivity):
  class CreateAuditBoards (line 69) | class CreateAuditBoards(JurisdictionActivity):
  class RecordResults (line 74) | class RecordResults(JurisdictionActivity):
  class FinalizeBatchResults (line 79) | class FinalizeBatchResults(JurisdictionActivity):
  class AuditBoardSignOff (line 84) | class AuditBoardSignOff(JurisdictionActivity):
  class JurisdictionAdminLogin (line 89) | class JurisdictionAdminLogin(Activity):
  function activity_base (line 93) | def activity_base(election: Election) -> ActivityBase:
  function record_activity (line 109) | def record_activity(activity: Activity, session: Session = db_session):

FILE: server/activity_log/slack_worker.py
  function slack_message (line 14) | def slack_message(activity: activity_log.Activity):
  function send_new_slack_notification (line 322) | def send_new_slack_notification(organization_id: str | None = None) -> N...

FILE: server/api/activity.py
  function serialize_activity (line 12) | def serialize_activity(activity: ActivityLogRecord):
  function list_activities (line 40) | def list_activities(organization_id: str):

FILE: server/api/audit_boards.py
  function validate_audit_boards (line 38) | def validate_audit_boards(
  function assign_sampled_ballots (line 62) | def assign_sampled_ballots(
  function create_audit_boards (line 173) | def create_audit_boards(election: Election, jurisdiction: Jurisdiction, ...
  function round_status_by_audit_board (line 206) | def round_status_by_audit_board(
  function serialize_audit_board (line 235) | def serialize_audit_board(audit_board: AuditBoard, round_status: JSONDic...
  function serialize_members (line 245) | def serialize_members(audit_board):
  function list_audit_boards (line 265) | def list_audit_boards(
  function validate_members (line 306) | def validate_members(members: list[JSONDict]):
  function set_audit_board_members (line 326) | def set_audit_board_members(
  function validate_sign_off (line 358) | def validate_sign_off(sign_off_request: JSONDict, audit_board: AuditBoard):
  function sign_off_audit_board (line 383) | def sign_off_audit_board(
  function reopen_audit_board (line 414) | def reopen_audit_board(

FILE: server/api/ballot_manifest.py
  class CountingGroup (line 45) | class CountingGroup(str, enum.Enum):
  function all_manifests_uploaded (line 66) | def all_manifests_uploaded(contest: Contest):
  function set_total_ballots_from_manifests (line 73) | def set_total_ballots_from_manifests(contest: Contest):
  function hybrid_contest_total_ballots (line 82) | def hybrid_contest_total_ballots(contest: Contest) -> HybridPair:
  function hybrid_jurisdiction_total_ballots (line 95) | def hybrid_jurisdiction_total_ballots(jurisdiction: Jurisdiction) -> Hyb...
  function process_ballot_manifest_file (line 107) | def process_ballot_manifest_file(
  function is_batch_inventory_worksheet (line 248) | def is_batch_inventory_worksheet(first_line: bytes) -> bool:
  function validate_is_not_batch_inventory_worksheet (line 252) | def validate_is_not_batch_inventory_worksheet(file: BinaryIO):
  function save_ballot_manifest_file (line 259) | def save_ballot_manifest_file(
  function clear_ballot_manifest_file (line 279) | def clear_ballot_manifest_file(jurisdiction: Jurisdiction):
  function start_upload_for_ballot_manifest (line 296) | def start_upload_for_ballot_manifest(
  function complete_upload_for_ballot_manifest (line 320) | def complete_upload_for_ballot_manifest(
  function get_ballot_manifest (line 347) | def get_ballot_manifest(election: Election, jurisdiction: Jurisdiction):
  function download_ballot_manifest_file (line 359) | def download_ballot_manifest_file(
  function clear_ballot_manifest (line 377) | def clear_ballot_manifest(

FILE: server/api/ballots.py
  function ballot_retrieval_list (line 21) | def ballot_retrieval_list(jurisdiction: Jurisdiction, round: Round) -> T...
  function get_retrieval_list (line 141) | def get_retrieval_list(election: Election, jurisdiction: Jurisdiction, r...
  function deserialize_interpretation (line 149) | def deserialize_interpretation(
  function serialize_interpretation (line 167) | def serialize_interpretation(interpretation: BallotInterpretation) -> JS...
  function serialize_ballot (line 177) | def serialize_ballot(
  function list_ballots_for_jurisdiction (line 211) | def list_ballots_for_jurisdiction(
  function list_ballots_for_audit_board (line 271) | def list_ballots_for_audit_board(
  function validate_interpretation (line 352) | def validate_interpretation(interpretation: JSONDict):
  function validate_audit_ballot (line 388) | def validate_audit_ballot(ballot_audit: JSONDict, jurisdiction: Jurisdic...
  function audit_ballot (line 409) | def audit_ballot(

FILE: server/api/batch_files.py
  function start_candidate_totals_bundle_generation (line 35) | def start_candidate_totals_bundle_generation(election: Election):
  function start_manifests_bundle_generation (line 79) | def start_manifests_bundle_generation(election: Election):
  function get_batch_files_bundle_status (line 123) | def get_batch_files_bundle_status(election: Election, bundle_id: str):
  function _get_bundle_download_url (line 154) | def _get_bundle_download_url(bundle: BatchFileBundle) -> str:
  function download_batch_files_bundle (line 181) | def download_batch_files_bundle(election: Election, bundle_id: str):
  function generate_batch_files_bundle (line 209) | def generate_batch_files_bundle(election_id: str, bundle_id: str, bundle...
  function _upload_bundle_file (line 332) | def _upload_bundle_file(file_path: str, filename: str, election_id: str)...

FILE: server/api/batch_inventory.py
  function batch_key_to_name (line 85) | def batch_key_to_name(
  class ElectionResults (line 100) | class ElectionResults(TypedDict):
  function dict_to_items_list (line 111) | def dict_to_items_list(dictionary):
  function items_list_to_dict (line 115) | def items_list_to_dict(items):
  function validate_choice_name_and_get_choice_id (line 124) | def validate_choice_name_and_get_choice_id(
  function process_batch_inventory_cvr_file (line 151) | def process_batch_inventory_cvr_file(
  function process_batch_inventory_tabulator_status_file (line 699) | def process_batch_inventory_tabulator_status_file(
  function set_batch_inventory_system_type (line 836) | def set_batch_inventory_system_type(
  function get_batch_inventory_system_type (line 875) | def get_batch_inventory_system_type(
  function start_upload_for_batch_inventory_cvr (line 894) | def start_upload_for_batch_inventory_cvr(
  function complete_upload_for_batch_inventory_cvr (line 922) | def complete_upload_for_batch_inventory_cvr(
  function get_batch_inventory_cvr (line 978) | def get_batch_inventory_cvr(
  function clear_batch_inventory_cvr (line 996) | def clear_batch_inventory_cvr(
  function download_batch_inventory_cvr (line 1024) | def download_batch_inventory_cvr(
  function start_upload_for_batch_inventory_tabulator_status (line 1043) | def start_upload_for_batch_inventory_tabulator_status(
  function complete_upload_for_batch_inventory_tabulator_status (line 1065) | def complete_upload_for_batch_inventory_tabulator_status(
  function get_batch_inventory_tabulator_status (line 1107) | def get_batch_inventory_tabulator_status(
  function clear_batch_inventory_tabulator_status (line 1127) | def clear_batch_inventory_tabulator_status(
  function download_batch_inventory_tabulator_status (line 1152) | def download_batch_inventory_tabulator_status(
  function download_batch_inventory_worksheet (line 1171) | def download_batch_inventory_worksheet(election: Election, jurisdiction:...
  function batch_inventory_sign_off_status (line 1234) | def batch_inventory_sign_off_status(
  function clear_sign_off (line 1247) | def clear_sign_off(batch_inventory_data: BatchInventoryData):
  function sign_off_batch_inventory (line 1257) | def sign_off_batch_inventory(
  function undo_sign_off_batch_inventory (line 1275) | def undo_sign_off_batch_inventory(
  function download_batch_inventory_ballot_manifest (line 1290) | def download_batch_inventory_ballot_manifest(
  function download_batch_inventory_batch_tallies (line 1338) | def download_batch_inventory_batch_tallies(

FILE: server/api/batch_tallies.py
  function construct_contest_choice_csv_headers (line 51) | def construct_contest_choice_csv_headers(
  function process_batch_tallies_file (line 71) | def process_batch_tallies_file(
  function validate_batch_tallies_upload (line 194) | def validate_batch_tallies_upload(election: Election, jurisdiction: Juri...
  function clear_batch_tallies_data (line 214) | def clear_batch_tallies_data(jurisdiction: Jurisdiction):
  function reprocess_batch_tallies_file_if_uploaded (line 218) | def reprocess_batch_tallies_file_if_uploaded(
  function start_upload_for_batch_tallies (line 241) | def start_upload_for_batch_tallies(
  function complete_upload_for_batch_tallies (line 265) | def complete_upload_for_batch_tallies(
  function get_batch_tallies (line 304) | def get_batch_tallies(election: Election, jurisdiction: Jurisdiction):
  function download_batch_tallies_file (line 316) | def download_batch_tallies_file(
  function clear_batch_tallies (line 334) | def clear_batch_tallies(
  function download_batch_tallies_template_csv (line 354) | def download_batch_tallies_template_csv(election: Election, jurisdiction...
  function download_batch_tallies_summed_by_jurisdiction_csv (line 382) | def download_batch_tallies_summed_by_jurisdiction_csv(election: Election):

FILE: server/api/batches.py
  function replace_combined_batches_with_representative_batches (line 27) | def replace_combined_batches_with_representative_batches(
  function already_audited_batches (line 48) | def already_audited_batches(jurisdiction: Jurisdiction, round: Round) ->...
  function get_batch_retrieval_list (line 65) | def get_batch_retrieval_list(
  function serialize_batch (line 92) | def serialize_batch(batch: Batch) -> JSONDict:
  function construct_batch_last_edited_by_string (line 111) | def construct_batch_last_edited_by_string(batch: Batch) -> str | None:
  function list_batches_for_jurisdiction (line 135) | def list_batches_for_jurisdiction(
  function validate_batch_results (line 191) | def validate_batch_results(
  function record_batch_results (line 270) | def record_batch_results(
  function finalize_batch_results (line 348) | def finalize_batch_results(
  function unfinalize_batch_results (line 398) | def unfinalize_batch_results(

FILE: server/api/contests.py
  function serialize_contest (line 110) | def serialize_contest(contest: Contest) -> JSONDict:
  function deserialize_contest_choice (line 201) | def deserialize_contest_choice(
  function deserialize_contest (line 212) | def deserialize_contest(contest: JSONDict, election_id: str) -> Contest:
  function validate_contests (line 237) | def validate_contests(contests: list[JSONDict], election: Election):
  function set_contest_metadata (line 281) | def set_contest_metadata(election: Election):
  function should_reprocess_batch_tallies (line 301) | def should_reprocess_batch_tallies(
  function create_or_update_all_contests (line 333) | def create_or_update_all_contests(election: Election):
  function list_contests (line 384) | def list_contests(election: Election):
  function list_jurisdictions_contests (line 395) | def list_jurisdictions_contests(
  function list_audit_board_contests (line 408) | def list_audit_board_contests(
  function put_contest_name_standardizations (line 459) | def put_contest_name_standardizations(election: Election):
  function get_contest_name_standardizations (line 482) | def get_contest_name_standardizations(election: Election):
  function put_contest_choice_name_standardizations (line 531) | def put_contest_choice_name_standardizations(election: Election):  # pra...
  function get_contest_choice_name_standardizations (line 559) | def get_contest_choice_name_standardizations(election: Election):  # pra...

FILE: server/api/cvrs.py
  function peek (line 78) | def peek(iterator: Iterator[T]) -> tuple[T, Iterator[T]]:
  class CvrChoiceMetadata (line 83) | class CvrChoiceMetadata(TypedDict):
  class CvrContestMetadata (line 88) | class CvrContestMetadata(TypedDict):
  function validate_uploaded_cvrs (line 99) | def validate_uploaded_cvrs(contest: Contest):
  function are_uploaded_cvrs_valid (line 123) | def are_uploaded_cvrs_valid(contest: Contest):
  function cvr_contests_metadata (line 135) | def cvr_contests_metadata(
  function set_total_ballots_from_cvrs (line 205) | def set_total_ballots_from_cvrs(contest: Contest):
  function set_contest_metadata_from_cvrs (line 218) | def set_contest_metadata_from_cvrs(contest: Contest):
  function hybrid_contest_choice_vote_counts (line 253) | def hybrid_contest_choice_vote_counts(
  function csv_reader_for_cvr (line 277) | def csv_reader_for_cvr(cvr_file: BinaryIO) -> CSVIterator:
  function parse_clearballot_cvrs (line 284) | def parse_clearballot_cvrs(
  function parse_dominion_cvrs (line 383) | def parse_dominion_cvrs(
  class EssCvrFiles (line 528) | class EssCvrFiles(TypedDict):
  function separate_ess_cvr_and_ballots_files (line 534) | def separate_ess_cvr_and_ballots_files(
  function read_ess_ballots_file (line 601) | def read_ess_ballots_file(
  function parse_ess_cvrs (line 627) | def parse_ess_cvrs(
  function parse_scanned_ballot_information_file (line 969) | def parse_scanned_ballot_information_file(
  function parse_hart_cvrs (line 1030) | def parse_hart_cvrs(
  function process_cvr_file (line 1266) | def process_cvr_file(
  function validate_cvr_upload (line 1488) | def validate_cvr_upload(
  function clear_cvr_contests_metadata (line 1506) | def clear_cvr_contests_metadata(jurisdiction: Jurisdiction):
  function finalize_cvr_upload (line 1510) | def finalize_cvr_upload(
  function clear_cvr_ballots (line 1532) | def clear_cvr_ballots(election_id: str, jurisdiction_id: str):
  function get_cvrs (line 1550) | def get_cvrs(election: Election, jurisdiction: Jurisdiction):
  function start_upload_for_cvrs (line 1563) | def start_upload_for_cvrs(election: Election, jurisdiction: Jurisdiction):
  function complete_upload_for_cvrs (line 1588) | def complete_upload_for_cvrs(election: Election, jurisdiction: Jurisdict...
  function download_cvr_file (line 1618) | def download_cvr_file(
  function clear_contests_total_ballots_cast (line 1630) | def clear_contests_total_ballots_cast(election: Election):
  function clear_cvrs (line 1640) | def clear_cvrs(

FILE: server/api/discrepancies.py
  function get_discrepancies_by_jurisdiction (line 39) | def get_discrepancies_by_jurisdiction(election: Election):
  function get_batch_comparison_discrepancies_by_jurisdiction (line 64) | def get_batch_comparison_discrepancies_by_jurisdiction(
  function show_batch_comparison_discrepancies_by_jurisdiction (line 168) | def show_batch_comparison_discrepancies_by_jurisdiction(
  function get_ballot_comparison_discrepancies_by_jurisdiction (line 190) | def get_ballot_comparison_discrepancies_by_jurisdiction(
  function show_ballot_comparison_discrepancies_by_jurisdiction (line 269) | def show_ballot_comparison_discrepancies_by_jurisdiction(

FILE: server/api/election_settings.py
  function serialize_election_settings (line 43) | def serialize_election_settings(election: Election) -> JSONDict:
  function get_election_settings (line 58) | def get_election_settings(election: Election):
  function get_jurisdiction_election_settings (line 66) | def get_jurisdiction_election_settings(
  function validate_election_settings (line 73) | def validate_election_settings(settings: JSONDict, election: Election):
  function put_election_settings (line 82) | def put_election_settings(election: Election):

FILE: server/api/elections.py
  function validate_new_election (line 47) | def validate_new_election(election: JSONDict):
  function create_election (line 82) | def create_election():
  function delete_election (line 122) | def delete_election(election: Election):
  function list_organizations_and_elections (line 135) | def list_organizations_and_elections(audit_admin_id: str):

FILE: server/api/full_hand_tally.py
  class BatchType (line 18) | class BatchType(str, enum.Enum):
  function validate_full_hand_tally_batch_result_request (line 50) | def validate_full_hand_tally_batch_result_request(
  function validate_full_hand_tally_batch_result (line 89) | def validate_full_hand_tally_batch_result(
  function serialize_full_hand_tally_batch_results (line 107) | def serialize_full_hand_tally_batch_results(
  function add_full_hand_tally_batch_result (line 139) | def add_full_hand_tally_batch_result(
  function update_full_hand_tally_batch_result (line 173) | def update_full_hand_tally_batch_result(
  function delete_full_hand_tally_batch_result (line 216) | def delete_full_hand_tally_batch_result(
  function finalize_full_hand_tally_batch_results (line 238) | def finalize_full_hand_tally_batch_results(
  function unfinalize_full_hand_tally_batch_results (line 278) | def unfinalize_full_hand_tally_batch_results(
  function get_full_hand_tally_batch_results (line 306) | def get_full_hand_tally_batch_results(

FILE: server/api/jurisdictions.py
  function process_jurisdictions_file (line 66) | def process_jurisdictions_file(election_id: str):
  function serialize_jurisdiction (line 142) | def serialize_jurisdiction(
  class JurisdictionStatus (line 226) | class JurisdictionStatus(str, enum.Enum):
  function round_status_by_jurisdiction (line 232) | def round_status_by_jurisdiction(
  class JurisdictionAuditBoardStatus (line 244) | class JurisdictionAuditBoardStatus(str, enum.Enum):
  function jurisdiction_audit_board_status (line 250) | def jurisdiction_audit_board_status(
  function ballot_round_status (line 278) | def ballot_round_status(election: Election, round: Round) -> dict[str, J...
  function batch_round_status (line 451) | def batch_round_status(election: Election, round: Round) -> dict[str, JS...
  function get_last_login_by_jurisdiction (line 537) | def get_last_login_by_jurisdiction(election: Election):
  function list_jurisdictions (line 575) | def list_jurisdictions(election: Election):
  function get_jurisdictions_file (line 599) | def get_jurisdictions_file(election: Election):
  function download_jurisdictions_file (line 608) | def download_jurisdictions_file(election: Election):
  function start_upload_for_jurisdictions_file (line 626) | def start_upload_for_jurisdictions_file(election: Election):
  function complete_upload_for_jurisdictions_file (line 642) | def complete_upload_for_jurisdictions_file(election: Election):

FILE: server/api/offline_results.py
  function validate_offline_results (line 26) | def validate_offline_results(
  function record_offline_results (line 93) | def record_offline_results(
  function serialize_results (line 133) | def serialize_results(round: Round, results: list[JurisdictionResult]) -...
  function get_offline_results (line 158) | def get_offline_results(

FILE: server/api/public.py
  function public_compute_sample_sizes (line 67) | def public_compute_sample_sizes():
  function parse_compute_sample_sizes_input (line 87) | def parse_compute_sample_sizes_input(
  function compute_ballot_comparison_sample_size (line 121) | def compute_ballot_comparison_sample_size(
  function compute_ballot_polling_sample_size (line 128) | def compute_ballot_polling_sample_size(
  function compute_batch_comparison_sample_size (line 140) | def compute_batch_comparison_sample_size(
  function upload_file_to_local_filesystem (line 159) | def upload_file_to_local_filesystem():

FILE: server/api/reports.py
  function pretty_affiliation (line 41) | def pretty_affiliation(affiliation: str | None) -> str:
  function pretty_boolean (line 52) | def pretty_boolean(boolean: bool) -> str:
  function pretty_targeted (line 56) | def pretty_targeted(is_targeted: bool) -> str:
  function pretty_pvalue (line 60) | def pretty_pvalue(value: float) -> str:
  function pretty_ballot_ticket_numbers (line 79) | def pretty_ballot_ticket_numbers(
  function pretty_batch_ticket_numbers_for_contest (line 103) | def pretty_batch_ticket_numbers_for_contest(
  function pretty_batch_ticket_numbers (line 119) | def pretty_batch_ticket_numbers(
  function pretty_ballot_interpretation (line 132) | def pretty_ballot_interpretation(
  function pretty_cvr_interpretation (line 165) | def pretty_cvr_interpretation(
  function add_sign (line 190) | def add_sign(value: int) -> str:
  function pretty_vote_deltas (line 194) | def pretty_vote_deltas(
  function pretty_discrepancy (line 211) | def pretty_discrepancy(
  function pretty_choice_votes (line 221) | def pretty_choice_votes(
  function heading (line 234) | def heading(heading: str):
  function election_info_rows (line 238) | def election_info_rows(election: Election):
  function contest_rows (line 246) | def contest_rows(election: Election):
  function contest_name_standardization_rows (line 328) | def contest_name_standardization_rows(election: Election):
  function audit_settings_rows (line 349) | def audit_settings_rows(election: Election):
  function audit_board_rows (line 371) | def audit_board_rows(election: Election):
  function round_rows (line 400) | def round_rows(election: Election):
  function full_hand_tally_result_rows (line 567) | def full_hand_tally_result_rows(
  function sampled_ballot_rows (line 609) | def sampled_ballot_rows(election: Election, jurisdiction: Jurisdiction |...
  function sampled_batch_rows (line 851) | def sampled_batch_rows(election: Election, jurisdiction: Jurisdiction | ...
  function audit_admin_audit_report (line 1142) | def audit_admin_audit_report(election: Election):
  function jursdiction_admin_audit_report (line 1180) | def jursdiction_admin_audit_report(election: Election, jurisdiction: Jur...
  function audit_admin_discrepancy_report (line 1204) | def audit_admin_discrepancy_report(election: Election):

FILE: server/api/rounds.py
  function is_round_ready_to_finish (line 60) | def is_round_ready_to_finish(election: Election, round: Round) -> bool:
  function is_audit_complete (line 173) | def is_audit_complete(round: Round | None):
  function count_audited_votes (line 187) | def count_audited_votes(election: Election, round: Round):
  function calculate_risk_measurements (line 278) | def calculate_risk_measurements(election: Election, round: Round):
  function draw_sample (line 326) | def draw_sample(round_id: str, election_id: str):
  function draw_sample_batches (line 354) | def draw_sample_batches(
  function draw_sample_ballots (line 370) | def draw_sample_ballots(
  function create_selected_sample_sizes_schema (line 424) | def create_selected_sample_sizes_schema(audit_type: AuditType):
  function create_round_schema (line 454) | def create_round_schema(audit_type: AuditType):
  function validate_round (line 467) | def validate_round(round: dict, election: Election):
  function validate_sample_size (line 479) | def validate_sample_size(round: dict, election: Election):
  function delete_round_and_corresponding_sampled_ballots (line 543) | def delete_round_and_corresponding_sampled_ballots(round: Round):
  function create_round (line 564) | def create_round(election: Election):
  function finish_round (line 622) | def finish_round(election: Election):
  function serialize_round (line 650) | def serialize_round(round: Round) -> dict:
  function list_rounds_audit_admin (line 665) | def list_rounds_audit_admin(election: Election):
  function list_rounds_jurisdiction_admin (line 677) | def list_rounds_jurisdiction_admin(election: Election, jurisdiction: Jur...
  function undo_round_start (line 683) | def undo_round_start(election: Election):

FILE: server/api/sample_preview.py
  function compute_sample_preview (line 27) | def compute_sample_preview(election_id: str, sample_sizes: dict[str, Sam...
  function create_sample_preview_schema (line 90) | def create_sample_preview_schema(audit_type: AuditType):
  function start_computing_sample_preview (line 101) | def start_computing_sample_preview(election: Election):
  function get_sample_preview (line 124) | def get_sample_preview(election: Election):

FILE: server/api/sample_sizes.py
  function validate_all_manifests_uploaded (line 34) | def validate_all_manifests_uploaded(contest: Contest):
  function validate_batch_tallies (line 39) | def validate_batch_tallies(contest):
  function validate_hybrid_manifests_and_cvrs (line 61) | def validate_hybrid_manifests_and_cvrs(contest: Contest):
  function sample_size_options (line 122) | def sample_size_options(election: Election) -> dict[str, dict[str, Sampl...
  function next_round_sample_size_options (line 224) | def next_round_sample_size_options(election_id: str):
  function autoselect_sample_size (line 236) | def autoselect_sample_size(options: dict[str, SampleSizeOption], audit_t...
  function serialize_sample_size_options (line 249) | def serialize_sample_size_options(sample_size_options):
  function get_sample_sizes (line 260) | def get_sample_sizes(election: Election, round_num: int):

FILE: server/api/shared.py
  function get_current_round (line 26) | def get_current_round(election: Election) -> Round | None:
  function get_previous_round (line 32) | def get_previous_round(election: Election, round: Round) -> Round | None:
  function contest_results_by_round (line 38) | def contest_results_by_round(
  function active_targeted_contests (line 51) | def active_targeted_contests(election: Election) -> list[Contest]:
  function samples_not_found_by_round (line 62) | def samples_not_found_by_round(contest: Contest) -> dict[str, int]:
  function batch_tallies (line 88) | def batch_tallies(contest: Contest) -> BatchTallies:
  class CombinedBatch (line 98) | class CombinedBatch(TypedDict):
  function combined_batch_representative (line 104) | def combined_batch_representative(sub_batches: list[Batch]) -> Batch:
  function group_combined_batches (line 120) | def group_combined_batches(all_sub_batches: list[Batch]) -> list[Combine...
  function combined_batch_keys (line 133) | def combined_batch_keys(election_id: str) -> list[set[sampler.BatchKey]]:
  function sampled_batch_results (line 148) | def sampled_batch_results(
  function sampled_batches_by_ticket_number (line 236) | def sampled_batches_by_ticket_number(contest: Contest) -> dict[str, samp...
  function round_sizes (line 257) | def round_sizes(contest: Contest) -> ballot_polling_types.BALLOT_POLLING...
  function cvrs_for_contest (line 296) | def cvrs_for_contest(contest: Contest) -> sampler_contest.CVRS:
  function sampled_ballot_interpretations_to_cvrs (line 356) | def sampled_ballot_interpretations_to_cvrs(
  function hybrid_contest_strata (line 443) | def hybrid_contest_strata(
  function ballot_vote_deltas (line 515) | def ballot_vote_deltas(
  function batch_vote_deltas (line 551) | def batch_vote_deltas(
  function full_hand_tally_sizes (line 568) | def full_hand_tally_sizes(election: Election):
  function needs_full_hand_tally (line 584) | def needs_full_hand_tally(round: Round, election: Election) -> bool:
  function is_full_hand_tally (line 607) | def is_full_hand_tally(round: Round, election: Election):
  class SampleSize (line 615) | class SampleSize(TypedDict):
  class BallotDraw (line 623) | class BallotDraw(TypedDict):
  class BatchDraw (line 630) | class BatchDraw(TypedDict):
  function compute_sample_batches_for_contest (line 636) | def compute_sample_batches_for_contest(
  function compute_sample_batches (line 810) | def compute_sample_batches(
  function compute_sample_ballots (line 825) | def compute_sample_ballots(

FILE: server/api/standardized_contests.py
  function process_standardized_contests_file (line 53) | def process_standardized_contests_file(election_id: str):
  function start_upload_for_standardized_contests_file (line 185) | def start_upload_for_standardized_contests_file(election: Election):
  function complete_upload_for_standardized_contests_file (line 202) | def complete_upload_for_standardized_contests_file(election: Election):
  function get_standardized_contests_file (line 239) | def get_standardized_contests_file(election: Election):
  function get_standardized_contests (line 248) | def get_standardized_contests(election: Election):
  function download_standardized_contests_file (line 254) | def download_standardized_contests_file(election: Election):

FILE: server/api/support.py
  function get_current_round_info (line 45) | def get_current_round_info(election):
  function auth0_get_token (line 56) | def auth0_get_token() -> str:
  function auth0_create_audit_admin (line 65) | def auth0_create_audit_admin(email: str) -> str | None:
  function list_active_elections (line 92) | def list_active_elections():
  function list_organizations (line 130) | def list_organizations():
  function list_users_by_organization (line 142) | def list_users_by_organization():
  function create_organization (line 208) | def create_organization():
  function get_organization (line 223) | def get_organization(organization_id: str):
  function delete_organization (line 255) | def delete_organization(organization_id: str):
  function update_organization (line 270) | def update_organization(organization_id: str):
  function get_election (line 293) | def get_election(election_id: str):
  function permanently_delete_election (line 315) | def permanently_delete_election(election_id: str):
  function create_audit_admin (line 353) | def create_audit_admin(organization_id: str):
  function remove_audit_admin_from_org (line 388) | def remove_audit_admin_from_org(organization_id: str, audit_admin_id: str):
  function get_jurisdiction (line 408) | def get_jurisdiction(jurisdiction_id: str):
  function clear_jurisdiction_audit_boards (line 468) | def clear_jurisdiction_audit_boards(jurisdiction_id: str):
  function clear_offline_results (line 497) | def clear_offline_results(jurisdiction_id: str):
  function log_in_as_audit_admin (line 528) | def log_in_as_audit_admin(email: str):
  function log_in_as_jurisdiction_admin (line 538) | def log_in_as_jurisdiction_admin(email: str):
  function log_in_to_audit_as_audit_admin (line 550) | def log_in_to_audit_as_audit_admin(election_id: str):
  function log_in_to_audit_as_jurisdiction_admin (line 565) | def log_in_to_audit_as_jurisdiction_admin(jurisdiction_id: str):
  function support_undo_round_start (line 585) | def support_undo_round_start(round_id: str):
  function reopen_current_round (line 606) | def reopen_current_round(election_id: str):
  function list_jurisdiction_batches (line 630) | def list_jurisdiction_batches(jurisdiction_id: str):
  function create_combined_batch (line 677) | def create_combined_batch(jurisdiction_id: str):
  function delete_combined_batch (line 719) | def delete_combined_batch(jurisdiction_id: str, combined_batch_name: str):

FILE: server/app.py
  function shutdown_session (line 60) | def shutdown_session(exception=None):

FILE: server/audit_math/ballot_polling.py
  function get_sample_size (line 16) | def get_sample_size(
  function compute_risk (line 53) | def compute_risk(

FILE: server/audit_math/ballot_polling_types.py
  class SampleSizeOption (line 4) | class SampleSizeOption(TypedDict):

FILE: server/audit_math/bravo.py
  function get_expected_sample_size (line 24) | def get_expected_sample_size(
  function get_test_statistics (line 115) | def get_test_statistics(
  function bravo_sample_sizes (line 169) | def bravo_sample_sizes(
  function expected_prob (line 274) | def expected_prob(
  function compute_cumulative_sample (line 330) | def compute_cumulative_sample(sample_results):
  function get_sample_size (line 341) | def get_sample_size(
  function compute_risk (line 483) | def compute_risk(
  function is_tie (line 539) | def is_tie(contest: Contest) -> bool:
  function is_landslide (line 551) | def is_landslide(contest: Contest) -> bool:

FILE: server/audit_math/macro.py
  class BatchError (line 25) | class BatchError(TypedDict):
  function compute_unauditable_ballots (line 30) | def compute_unauditable_ballots(
  function compute_error (line 54) | def compute_error(
  function compute_max_error (line 117) | def compute_max_error(
  function compute_U (line 175) | def compute_U(
  function get_sample_sizes (line 209) | def get_sample_sizes(
  function compute_risk (line 287) | def compute_risk(

FILE: server/audit_math/minerva.py
  function make_arlo_contest (line 25) | def make_arlo_contest(tally, num_winners=1, votes_allowed=1):
  function make_sample_results (line 44) | def make_sample_results(
  function make_athena_audit (line 59) | def make_athena_audit(arlo_contest, alpha):
  function get_sample_size (line 92) | def get_sample_size(
  function collect_risks (line 167) | def collect_risks(
  function compute_risk (line 215) | def compute_risk(

FILE: server/audit_math/providence.py
  function make_r2b2_contest (line 22) | def make_r2b2_contest(arlo_contest: Contest):
  function make_providence_audit (line 42) | def make_providence_audit(arlo_contest: Contest, alpha: float):
  function _run_providence_audit (line 50) | def _run_providence_audit(
  function get_sample_size (line 83) | def get_sample_size(
  function compute_risk (line 118) | def compute_risk(

FILE: server/audit_math/raire.py
  function make_neb_matrix (line 20) | def make_neb_matrix(contest: Contest, cvrs: CVRS, asn_func) -> NEBMatrix:
  function make_frontier (line 58) | def make_frontier(
  function find_assertions (line 90) | def find_assertions(
  function compute_raire_assertions (line 193) | def compute_raire_assertions(

FILE: server/audit_math/raire_utils.py
  class SampleCVR (line 19) | class SampleCVR(TypedDict):
  function ranking (line 27) | def ranking(cand: str, ballot: dict[str, int]) -> int:
  function vote_for_cand (line 43) | def vote_for_cand(
  class RaireAssertion (line 81) | class RaireAssertion:
    method __init__ (line 82) | def __init__(self, contest: str, winner: str, loser: str):
    method is_vote_for_winner (line 106) | def is_vote_for_winner(self, cvr: CVR):
    method is_vote_for_loser (line 116) | def is_vote_for_loser(self, cvr: CVR):
    method subsumes (line 126) | def subsumes(self, other):
    method __eq__ (line 140) | def __eq__(self, other):
    method __lt__ (line 147) | def __lt__(self, other):
    method __gt__ (line 150) | def __gt__(self, other):
    method __repr__ (line 153) | def __repr__(self):
  class NEBAssertion (line 157) | class NEBAssertion(RaireAssertion):
    method is_vote_for_winner (line 174) | def is_vote_for_winner(self, cvr: CVR) -> Literal[0, 1]:
    method is_vote_for_loser (line 181) | def is_vote_for_loser(self, cvr: CVR) -> Literal[0, 1]:
    method subsumes (line 189) | def subsumes(self, other: Type[RaireAssertion]) -> bool:
    method __eq__ (line 224) | def __eq__(self, other) -> bool:
    method __hash__ (line 232) | def __hash__(self) -> int:
    method __repr__ (line 235) | def __repr__(self) -> str:
  class NENAssertion (line 239) | class NENAssertion(RaireAssertion):
    method __init__ (line 256) | def __init__(self, contest: str, winner: str, loser: str, eliminated: ...
    method is_vote_for_winner (line 261) | def is_vote_for_winner(self, cvr: CVR) -> Literal[0, 1]:
    method is_vote_for_loser (line 267) | def is_vote_for_loser(self, cvr: CVR) -> Literal[0, 1]:
    method subsumes (line 273) | def subsumes(self, other: RaireAssertion) -> bool:
    method __eq__ (line 288) | def __eq__(self, other) -> bool:
    method __hash__ (line 297) | def __hash__(self) -> int:
    method __repr__ (line 300) | def __repr__(self) -> str:
  class RaireNode (line 306) | class RaireNode:
    method __init__ (line 307) | def __init__(self, tail: list[str]):
    method is_descendent_of (line 327) | def is_descendent_of(self, node: RaireNode) -> bool:
    method __eq__ (line 348) | def __eq__(self, other):
    method __repr__ (line 356) | def __repr__(self):
  class RaireFrontier (line 360) | class RaireFrontier:
    method __init__ (line 361) | def __init__(self):
    method insert_node (line 364) | def insert_node(self, node: RaireNode):
    method replace_descendents (line 395) | def replace_descendents(self, node: RaireNode):
    method __eq__ (line 408) | def __eq__(self, other):
    method __repr__ (line 411) | def __repr__(self):
  function find_best_audit (line 415) | def find_best_audit(
  function perform_dive (line 513) | def perform_dive(

FILE: server/audit_math/sampler.py
  function draw_sample (line 13) | def draw_sample(
  function draw_ppeb_sample (line 72) | def draw_ppeb_sample(

FILE: server/audit_math/sampler_contest.py
  function from_db_contest (line 10) | def from_db_contest(db_contest):
  class Contest (line 35) | class Contest:
    method __init__ (line 55) | def __init__(self, name: str, contest_info_dict: dict[str, int]):
    method __repr__ (line 162) | def __repr__(self) -> str:
  class SampleCVR (line 176) | class SampleCVR(TypedDict):

FILE: server/audit_math/suite.py
  class HybridPair (line 25) | class HybridPair(NamedTuple):
  class BallotPollingStratum (line 34) | class BallotPollingStratum:
    method __init__ (line 49) | def __init__(
    method compute_pvalue (line 86) | def compute_pvalue(
  class MisstatementCounts (line 176) | class MisstatementCounts(TypedDict):
  class BallotComparisonStratum (line 187) | class BallotComparisonStratum:
    method __init__ (line 200) | def __init__(
    method compute_pvalue (line 229) | def compute_pvalue(self, reported_margin, winner, loser, null_lambda) ...
  function maximize_fisher_combined_pvalue (line 274) | def maximize_fisher_combined_pvalue(
  function try_n (line 426) | def try_n(
  function get_sample_size_for_wl_pair (line 562) | def get_sample_size_for_wl_pair(
  function get_sample_size (line 633) | def get_sample_size(
  function compute_risk (line 692) | def compute_risk(
  function misstatements (line 751) | def misstatements(

FILE: server/audit_math/supersimple.py
  class Discrepancy (line 20) | class Discrepancy(TypedDict):
  function nMin (line 25) | def nMin(
  function compute_discrepancies (line 48) | def compute_discrepancies(
  function discrepancy (line 114) | def discrepancy(
  function get_sample_sizes (line 170) | def get_sample_sizes(
  function compute_risk (line 244) | def compute_risk(

FILE: server/audit_math/supersimple_raire.py
  function nMin (line 20) | def nMin(
  function compute_discrepancies (line 43) | def compute_discrepancies(
  function normalize_cvr (line 102) | def normalize_cvr(cvr: CVR) -> CVR:
  function discrepancy (line 148) | def discrepancy(
  function get_sample_sizes (line 179) | def get_sample_sizes(
  function compute_margin_for_assertion (line 267) | def compute_margin_for_assertion(cvrs: CVRS, assertion: RaireAssertion) ...
  function compute_risk (line 281) | def compute_risk(

FILE: server/auth/auth_helpers.py
  class UserType (line 14) | class UserType(str, enum.Enum):
  function set_loggedin_user (line 41) | def set_loggedin_user(
  function get_loggedin_user (line 52) | def get_loggedin_user(session) -> tuple[UserType, str] | tuple[None, None]:
  function clear_loggedin_user (line 58) | def clear_loggedin_user(session):
  function check_session_expiration (line 62) | def check_session_expiration(session):
  function set_support_user (line 89) | def set_support_user(session: SessionMixin, email: str):
  function clear_support_user (line 95) | def clear_support_user(session: SessionMixin):
  function get_support_user (line 99) | def get_support_user(session: SessionMixin) -> str | None:
  function find_or_404 (line 105) | def find_or_404(query: Query):
  function check_access (line 112) | def check_access(
  function restrict_access (line 164) | def restrict_access(user_types: list[UserType]):
  function restrict_access_support (line 235) | def restrict_access_support(route: Callable):
  function allow_public_access (line 252) | def allow_public_access(route: Callable):
  function allow_any_logged_in_user_access (line 266) | def allow_any_logged_in_user_access(route: Callable):

FILE: server/auth/auth_routes.py
  function serialize_election (line 80) | def serialize_election(election):
  function api_me (line 94) | def api_me():
  function logout (line 166) | def logout():
  function support_logout (line 175) | def support_logout():
  function support_login (line 183) | def support_login():
  function support_login_callback (line 190) | def support_login_callback():
  function auditadmin_login (line 209) | def auditadmin_login():
  function auditadmin_login_callback (line 216) | def auditadmin_login_callback():
  function is_code_expired (line 229) | def is_code_expired(timestamp: datetime):
  function jurisdiction_admin_generate_code (line 235) | def jurisdiction_admin_generate_code():
  function record_login (line 299) | def record_login(user: User, error: str | None = None):
  function jurisdiction_admin_login (line 322) | def jurisdiction_admin_login():
  function auditboard_passphrase (line 393) | def auditboard_passphrase(passphrase: str):
  function tally_entry_passphrase (line 410) | def tally_entry_passphrase(passphrase: str):
  function tally_entry_user_generate_code (line 436) | def tally_entry_user_generate_code():
  function tally_entry_jurisdiction_generate_passphrase (line 477) | def tally_entry_jurisdiction_generate_passphrase(
  function tally_entry_jurisdiction_status (line 498) | def tally_entry_jurisdiction_status(
  function tally_entry_jurisdiction_confirm_login_code (line 528) | def tally_entry_jurisdiction_confirm_login_code(
  function tally_entry_jurisdiction_reject_request (line 552) | def tally_entry_jurisdiction_reject_request(
  function handle_oauth_error (line 568) | def handle_oauth_error(error):

FILE: server/config.py
  function read_env_var (line 7) | def read_env_var(
  function parse_bool (line 18) | def parse_bool(value: str) -> bool:

FILE: server/database.py
  class Base (line 24) | class Base:
    method __tablename__ (line 28) | def __tablename__(cls):
  function init_db (line 34) | def init_db(engine=engine):
  function reset_db (line 40) | def reset_db():
  function clear_db (line 47) | def clear_db():  # pragma: no cover

FILE: server/errors.py
  function handle_validation_error (line 15) | def handle_validation_error(error):
  function handle_400 (line 23) | def handle_400(error):
  function handle_401 (line 31) | def handle_401(error):
  function handle_409 (line 39) | def handle_409(error):
  function handle_403 (line 47) | def handle_403(error):
  function handle_500 (line 55) | def handle_500(error):

FILE: server/feature_flags.py
  function is_enabled_sample_extra_batches_by_counting_group (line 4) | def is_enabled_sample_extra_batches_by_counting_group(election: Election):
  function is_enabled_sample_extra_batches_to_ensure_one_per_jurisdiction (line 16) | def is_enabled_sample_extra_batches_to_ensure_one_per_jurisdiction(elect...
  function is_enabled_automatically_end_audit_after_one_round (line 23) | def is_enabled_automatically_end_audit_after_one_round(election: Election):

FILE: server/migrations/env.py
  function run_migrations_offline (line 41) | def run_migrations_offline():  # pragma: no cover
  function run_migrations_online (line 68) | def run_migrations_online():

FILE: server/migrations/versions/07859b6b370b_json_sample_sizes.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 29) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/11e35dd1c515_batch_tallies_file.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 36) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/141edd274627_fix_null_round_contest_sample_size.py
  function upgrade (line 19) | def upgrade():
  function downgrade (line 35) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/22c615fe67ab_jurisdictionresult.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 74) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/244744c21027_tally_entry_accounts.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 60) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/266fba5a5c8a_rename_offlinebatchresult_to_.py
  function upgrade (line 18) | def upgrade():
  function downgrade (line 60) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/2aeb618b9438_jurisdiction_cvr_file_type.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 35) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/30f47ec7308c_batchresultsfinalized.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 45) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/342f43b1c9d9_batch_has_cvrs.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 24) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/34824a2d1ba8_batch_combined_batch_name.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 26) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/34939a0c9f5c_ballotinterpretation_has_invalid_write_in.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 29) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/3edc260ab0b1_audittype_ballot_comparison.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 39) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/3efe804f6952_remove_offlinebatchresultchangelog.py
  function upgrade (line 18) | def upgrade():
  function downgrade (line 22) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/496ee3db6da8_cvrfiletype_hart.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 39) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/4aa612e28c2e_delete_auditboard_without_cascading.py
  function upgrade (line 19) | def upgrade():
  function downgrade (line 42) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/4aec6c8a419f_backgroundtask_lock_key.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 26) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/4b1bf0241301_add_batch_file_bundle_table.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 36) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/5004a93f75d8_batchresulttallysheet.py
  function upgrade (line 21) | def upgrade():
  function downgrade (line 85) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/5238d088cf62_offlinebatchresultchangelog.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 50) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/593823da406d_fix_delete_cascades.py
  function upgrade (line 18) | def upgrade():
  function downgrade (line 47) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/5acbd2f95b9f_standardized_contests_file.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 47) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/5b7164faeda5_sampledballotdraw_contest_id.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 60) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/5bb25bdd56b7_hybrid_audit_type.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 58) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/6a4dc1ef268c_add_a_sessions_table_as_we_move_.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 31) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/6bd43f181daa_add_auditmathtype.py
  function upgrade (line 28) | def upgrade():
  function downgrade (line 45) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/6c256e8152f8_backgroundtask_worker_id.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 26) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/74c579ae8555_batch_last_edited_by.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 63) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/754cca3f4448_add_providence_to_auditmathtype.py
  function upgrade (line 28) | def upgrade():
  function downgrade (line 45) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/7ca7a4b0bcc0_contest_pending_ballots.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 24) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/7f86511c05e0_cvrs.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 53) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/83bc53b14021_organization_default_state.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 26) | def downgrade():

FILE: server/migrations/versions/8452f909a07e_jurisdiction_contest_choice_name_standardizations.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 27) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/848293b46b37_batchinventorydata.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 62) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/848ffc831a04_election_sample_preview.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 36) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/8ab39ac619ed_activity_log.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 39) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/8b6b89bfbc97_backgroundtask.py
  function backfill (line 21) | def backfill():  # pragma: no cover
  function upgrade (line 60) | def upgrade():
  function downgrade (line 87) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/8bc5c2037187_adding_audit_math_type.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 40) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/95660eea5c1c_offline_batch_results.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 55) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/971d6d153879_background_task_progress.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 29) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/9956d373c6b8_interpretation_contest_not_on_ballot.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 39) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/9d9c4e058cb2_jurisdiction_contest_name_.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 27) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/9ed660c31c0a_election_audit_type.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 42) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/a3004ca81e25_sampledbatchdraw.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 63) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/aa3978570981_batchresult.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 48) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/b0b160c2f187_initial.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 473) | def downgrade():

FILE: server/migrations/versions/b5fcf654c681_remove_single_jurisdiction_flow.py
  function upgrade (line 19) | def upgrade():
  function downgrade (line 31) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/b91b345bf0a9_cvrballot_unique_constraint.py
  function upgrade (line 19) | def upgrade():
  function downgrade (line 32) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/bc97ac0e8267_remove_file_contents.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 27) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/c012fa6b13a9_sampledbatchdraw_contest_id.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 56) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/c2b90f147183_organization_name_unique.py
  function upgrade (line 19) | def upgrade():
  function downgrade (line 23) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/cb8de251c1a5_batchinventorydata_system_type.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 35) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/cec7ecc73bd8_samplesizeoptions_table.py
  function upgrade (line 19) | def upgrade():
  function downgrade (line 62) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/d0fc64ab8b98_on_delete_cleanup.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 35) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/dd3f3330aee2_cvrfiletype_ess.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 38) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/de96efe4d679_ja_login_code.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 31) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/df1334fc5fe9_election_deleted_at.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 24) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/df3c0681fad9_file_storage_path.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 24) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/e372310f31c1_batch_container.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 31) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/f400f19f7a35_file_background_task.py
  function backfill (line 21) | def backfill():  # pragma: no cover
  function upgrade (line 99) | def upgrade():
  function downgrade (line 116) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/f44bbbb8b076_cvrballot_ballot_position_and_record_id.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 26) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/f8e901e92f0a_background_sample_size_options.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 38) | def downgrade():  # pragma: no cover

FILE: server/migrations/versions/fa342e75506b_overvotes.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 75) | def downgrade():

FILE: server/migrations/versions/fea3ed38fb6c_jurisdiction_expected_manifest_num_.py
  function upgrade (line 20) | def upgrade():
  function downgrade (line 27) | def downgrade():

FILE: server/migrations/versions/fed66f26125e_remove_batch_comparison_audit_boards.py
  function upgrade (line 18) | def upgrade():
  function downgrade (line 23) | def downgrade():  # pragma: no cover

FILE: server/models.py
  class UTCDateTime (line 69) | class UTCDateTime(TypeDecorator):
    method process_bind_param (line 74) | def process_bind_param(self, value, dialect):
    method process_result_value (line 82) | def process_result_value(self, value, dialect):
  class BaseModel (line 86) | class BaseModel(Base):
  class WebSession (line 99) | class WebSession(BaseModel):
  class Organization (line 108) | class Organization(BaseModel):
  class AuditType (line 123) | class AuditType(str, enum.Enum):
  class AuditMathType (line 130) | class AuditMathType(str, enum.Enum):
  class Election (line 141) | class Election(BaseModel):
  class CvrFileType (line 234) | class CvrFileType(str, enum.Enum):
  class Jurisdiction (line 243) | class Jurisdiction(BaseModel):
  class User (line 333) | class User(BaseModel):
    method lowercase_email (line 354) | def lowercase_email(self, _key, email):
  class AuditAdministration (line 358) | class AuditAdministration(BaseModel):
  class JurisdictionAdministration (line 379) | class JurisdictionAdministration(BaseModel):
  class Batch (line 403) | class Batch(BaseModel):
  class Contest (line 468) | class Contest(BaseModel):
  class ContestChoice (line 512) | class ContestChoice(BaseModel):
  class Affiliation (line 552) | class Affiliation(str, enum.Enum):
  class AuditBoard (line 562) | class AuditBoard(BaseModel):
  class TallyEntryUser (line 598) | class TallyEntryUser(BaseModel):
  class SampleSizeOptions (line 621) | class SampleSizeOptions(BaseModel):
  class Round (line 636) | class Round(BaseModel):
  class BallotStatus (line 664) | class BallotStatus(str, enum.Enum):
  class SampledBallot (line 672) | class SampledBallot(BaseModel):
  class SampledBallotDraw (line 710) | class SampledBallotDraw(BaseModel):
  class Interpretation (line 735) | class Interpretation(str, enum.Enum):
  class BallotInterpretation (line 744) | class BallotInterpretation(BaseModel):
  class RoundContest (line 799) | class RoundContest(BaseModel):
  class RoundContestResult (line 826) | class RoundContestResult(BaseModel):
  class FullHandTallyBatchResult (line 858) | class FullHandTallyBatchResult(BaseModel):
  class JurisdictionResult (line 879) | class JurisdictionResult(BaseModel):
  class SampledBatchDraw (line 913) | class SampledBatchDraw(BaseModel):
  class BatchResultTallySheet (line 945) | class BatchResultTallySheet(BaseModel):
  class BatchResult (line 966) | class BatchResult(BaseModel):
  class BatchResultsFinalized (line 984) | class BatchResultsFinalized(BaseModel):
  class CvrBallot (line 999) | class CvrBallot(Base):
  class File (line 1025) | class File(BaseModel):
    method is_processing (line 1034) | def is_processing(self):
  class BackgroundTask (line 1040) | class BackgroundTask(BaseModel):
  class BatchFileBundle (line 1056) | class BatchFileBundle(BaseModel):
  class ActivityLogRecord (line 1080) | class ActivityLogRecord(Base):
  class BatchInventoryData (line 1092) | class BatchInventoryData(BaseModel):
  class ProcessingStatus (line 1126) | class ProcessingStatus(str, enum.Enum):
  class USState (line 1133) | class USState(str, enum.Enum):
  function get_or_404 (line 1194) | def get_or_404(model: Type[Base], primary_key: str):

FILE: server/sentry.py
  function set_sentry_user (line 9) | def set_sentry_user():
  function configure_sentry (line 21) | def configure_sentry(app: Flask | None = None):

FILE: server/static.py
  function serve (line 14) | def serve(path="index.html"):

FILE: server/tests/api/test_activity.py
  function test_list_activities (line 11) | def test_list_activities(
  function test_list_activities_wrong_org (line 155) | def test_list_activities_wrong_org(
  function test_list_activities_wrong_user_type (line 165) | def test_list_activities_wrong_user_type(
  function test_list_activities_not_logged_in (line 175) | def test_list_activities_not_logged_in(client: FlaskClient, org_id: str):
  function test_list_activities_logins (line 181) | def test_list_activities_logins(
  function test_file_upload_errors (line 290) | def test_file_upload_errors(

FILE: server/tests/api/test_audit_boards.py
  function assert_ballots_got_assigned_correctly (line 16) | def assert_ballots_got_assigned_correctly(
  function test_audit_boards_list_empty (line 40) | def test_audit_boards_list_empty(
  function test_audit_boards_create_one (line 56) | def test_audit_boards_create_one(
  function test_audit_boards_list_one (line 90) | def test_audit_boards_list_one(
  function test_audit_boards_create_two (line 168) | def test_audit_boards_create_two(
  function test_audit_boards_list_two (line 202) | def test_audit_boards_list_two(
  function test_audit_boards_create_round_2 (line 288) | def test_audit_boards_create_round_2(
  function test_audit_boards_list_round_2 (line 326) | def test_audit_boards_list_round_2(
  function test_audit_boards_missing_field (line 373) | def test_audit_boards_missing_field(
  function test_audit_boards_duplicate_name (line 398) | def test_audit_boards_duplicate_name(
  function test_audit_boards_already_created (line 423) | def test_audit_boards_already_created(
  function test_audit_boards_wrong_round (line 455) | def test_audit_boards_wrong_round(
  function test_audit_boards_bad_round_id (line 481) | def test_audit_boards_bad_round_id(
  function test_audit_boards_set_members_valid (line 498) | def test_audit_boards_set_members_valid(
  function test_audit_boards_set_members_invalid (line 526) | def test_audit_boards_set_members_invalid(
  function set_up_audit_board (line 577) | def set_up_audit_board(
  function test_audit_boards_sign_off_happy_path (line 663) | def test_audit_boards_sign_off_happy_path(
  function test_count_audited_votes (line 775) | def test_count_audited_votes(
  function test_audit_boards_sign_off_missing_name (line 922) | def test_audit_boards_sign_off_missing_name(
  function test_audit_boards_sign_off_wrong_name (line 962) | def test_audit_boards_sign_off_wrong_name(
  function test_audit_boards_sign_off_before_finished (line 1003) | def test_audit_boards_sign_off_before_finished(
  function test_audit_board_only_one_member_sign_off_happy_path (line 1044) | def test_audit_board_only_one_member_sign_off_happy_path(
  function test_audit_board_only_one_member_sign_off_wrong_name (line 1072) | def test_audit_board_only_one_member_sign_off_wrong_name(
  function test_audit_boards_sign_off_whitespace (line 1108) | def test_audit_boards_sign_off_whitespace(
  function test_audit_board_human_order (line 1133) | def test_audit_board_human_order(
  function test_reopen_audit_board (line 1156) | def test_reopen_audit_board(
  function test_reopen_audit_board_error_cases (line 1191) | def test_reopen_audit_board_error_cases(

FILE: server/tests/api/test_ballot_manifest.py
  function test_ballot_manifest_upload (line 9) | def test_ballot_manifest_upload(
  function test_ballot_manifest_clear (line 54) | def test_ballot_manifest_clear(
  function test_ballot_manifest_replace_as_audit_admin (line 88) | def test_ballot_manifest_replace_as_audit_admin(
  function test_ballot_manifest_upload_missing_file_path (line 137) | def test_ballot_manifest_upload_missing_file_path(
  function test_ballot_manifest_upload_batch_inventory_worksheet (line 158) | def test_ballot_manifest_upload_batch_inventory_worksheet(
  function test_ballot_manifest_upload_bad_csv (line 193) | def test_ballot_manifest_upload_bad_csv(
  function test_ballot_manifest_upload_missing_field (line 246) | def test_ballot_manifest_upload_missing_field(
  function test_ballot_manifest_upload_invalid_num_ballots (line 284) | def test_ballot_manifest_upload_invalid_num_ballots(
  function test_ballot_manifest_upload_duplicate_batch_name (line 319) | def test_ballot_manifest_upload_duplicate_batch_name(
  function test_ballot_manifest_get_upload_url_missing_file_type (line 353) | def test_ballot_manifest_get_upload_url_missing_file_type(
  function test_ballot_manifest_get_upload_url (line 373) | def test_ballot_manifest_get_upload_url(

FILE: server/tests/api/test_ballots.py
  function test_ja_ballots_bad_round_id (line 14) | def test_ja_ballots_bad_round_id(
  function test_ja_ballots_round_1 (line 28) | def test_ja_ballots_round_1(
  function test_ja_ballots_before_audit_boards_set_up (line 142) | def test_ja_ballots_before_audit_boards_set_up(
  function test_ja_ballots_round_2 (line 176) | def test_ja_ballots_round_2(
  function test_ab_list_ballot_round_1 (line 229) | def test_ab_list_ballot_round_1(
  function test_ab_list_ballots_round_2 (line 341) | def test_ab_list_ballots_round_2(
  function test_ab_audit_ballot_not_found (line 414) | def test_ab_audit_ballot_not_found(
  function test_ab_audit_ballot_happy_path (line 430) | def test_ab_audit_ballot_happy_path(
  function test_ab_audit_ballot_overvote (line 576) | def test_ab_audit_ballot_overvote(
  function test_ab_audit_ballot_has_invalid_write_in (line 653) | def test_ab_audit_ballot_has_invalid_write_in(
  function test_ab_audit_ballot_wrong_audit_board (line 703) | def test_ab_audit_ballot_wrong_audit_board(
  function test_ab_audit_ballot_invalid (line 740) | def test_ab_audit_ballot_invalid(
  function test_ja_ballot_retrieval_list_bad_round_id (line 1121) | def test_ja_ballot_retrieval_list_bad_round_id(
  function test_ja_ballot_retrieval_list_before_audit_boards_set_up (line 1135) | def test_ja_ballot_retrieval_list_before_audit_boards_set_up(
  function test_ja_ballot_retrieval_list_round_1 (line 1157) | def test_ja_ballot_retrieval_list_round_1(
  function test_ja_ballot_retrieval_list_round_2 (line 1185) | def test_ja_ballot_retrieval_list_round_2(
  function test_ja_ballots_count (line 1213) | def test_ja_ballots_count(
  function test_ballots_human_sort_order (line 1230) | def test_ballots_human_sort_order(

FILE: server/tests/api/test_batch_files.py
  function test_start_manifests_bundle_generation (line 12) | def test_start_manifests_bundle_generation(
  function test_start_candidate_totals_bundle_generation (line 97) | def test_start_candidate_totals_bundle_generation(
  function test_batch_files_endpoints_require_audit_admin (line 223) | def test_batch_files_endpoints_require_audit_admin(
  function test_empty_bundle_when_no_files_uploaded (line 238) | def test_empty_bundle_when_no_files_uploaded(
  function test_bundle_status_with_error (line 273) | def test_bundle_status_with_error(
  function test_direct_download_endpoint (line 324) | def test_direct_download_endpoint(
  function test_download_endpoint_bundle_not_found (line 371) | def test_download_endpoint_bundle_not_found(
  function test_s3_presigned_url_generation (line 385) | def test_s3_presigned_url_generation(
  function test_s3_upload_function (line 478) | def test_s3_upload_function():

FILE: server/tests/api/test_contests.py
  function json_contests (line 14) | def json_contests(jurisdiction_ids: list[str]) -> list[JSONDict]:
  function test_contests_list_empty (line 87) | def test_contests_list_empty(client, election_id):
  function test_contests_create_get_update_one (line 93) | def test_contests_create_get_update_one(client, election_id, json_contes...
  function test_contests_create_get_update_multiple (line 120) | def test_contests_create_get_update_multiple(
  function test_contests_order (line 145) | def test_contests_order(
  function test_update_contests_after_audit_starts (line 167) | def test_update_contests_after_audit_starts(
  function test_update_contests_no_targeted (line 184) | def test_update_contests_no_targeted(
  function test_update_contests_missing_field (line 199) | def test_update_contests_missing_field(
  function test_update_contests_invalid_jurisdictions (line 257) | def test_update_contests_invalid_jurisdictions(
  function test_contest_too_many_votes (line 285) | def test_contest_too_many_votes(
  function test_jurisdictions_contests_list_empty (line 355) | def test_jurisdictions_contests_list_empty(
  function test_jurisdictions_contests_list (line 369) | def test_jurisdictions_contests_list(
  function test_audit_board_contests_list_empty (line 388) | def test_audit_board_contests_list_empty(
  function test_audit_board_contests_list (line 409) | def test_audit_board_contests_list(
  function test_audit_board_contests_list_order (line 430) | def test_audit_board_contests_list_order(

FILE: server/tests/api/test_election_settings.py
  function test_settings_get_empty (line 8) | def test_settings_get_empty(client: FlaskClient, election_id: str):
  function test_jurisdiction_settings_get_empty (line 23) | def test_jurisdiction_settings_get_empty(
  function test_update_election (line 45) | def test_update_election(
  function test_update_election_settings_after_audit_starts (line 85) | def test_update_election_settings_after_audit_starts(
  function test_invalid_state (line 112) | def test_invalid_state(client: FlaskClient, election_id: str):
  function test_invalid_risk_limit (line 137) | def test_invalid_risk_limit(client: FlaskClient, election_id: str):
  function test_invalid_additional_property (line 162) | def test_invalid_additional_property(client: FlaskClient, election_id: s...

FILE: server/tests/api/test_elections.py
  function test_create_election_missing_fields (line 9) | def test_create_election_missing_fields(client: FlaskClient, org_id: str):
  function test_create_election_not_logged_in (line 33) | def test_create_election_not_logged_in(client: FlaskClient, org_id: str):
  function test_create_election (line 55) | def test_create_election(client: FlaskClient, org_id: str):
  function test_create_election_new_batch_comparison_audit (line 75) | def test_create_election_new_batch_comparison_audit(client: FlaskClient,...
  function test_create_election_new_ballot_comparison_audit (line 93) | def test_create_election_new_ballot_comparison_audit(client: FlaskClient...
  function test_create_election_new_hybrid_audit (line 113) | def test_create_election_new_hybrid_audit(client: FlaskClient, org_id: s...
  function test_create_election_default_state (line 131) | def test_create_election_default_state(client: FlaskClient, org_id: str):
  function test_create_election_in_org_with_logged_in_admin_without_access (line 154) | def test_create_election_in_org_with_logged_in_admin_without_access(
  function test_create_election_jurisdiction_admin (line 181) | def test_create_election_jurisdiction_admin(
  function test_create_election_bad_audit_type (line 211) | def test_create_election_bad_audit_type(client: FlaskClient, org_id: str):
  function test_create_election_bad_bp_type (line 234) | def test_create_election_bad_bp_type(client: FlaskClient, org_id: str):
  function test_create_election_mismatched_type (line 257) | def test_create_election_mismatched_type(client: FlaskClient, org_id: str):
  function test_create_election_in_org_duplicate_audit_name (line 280) | def test_create_election_in_org_duplicate_audit_name(client: FlaskClient...
  function test_create_election_two_orgs_same_name (line 317) | def test_create_election_two_orgs_same_name(client: FlaskClient):
  function test_delete_election (line 351) | def test_delete_election(
  function test_list_organizations (line 407) | def test_list_organizations(client: FlaskClient):
  function test_list_organizations_not_authorized (line 436) | def test_list_organizations_not_authorized(

FILE: server/tests/api/test_jurisdictions.py
  function test_jurisdictions_list_empty (line 21) | def test_jurisdictions_list_empty(client: FlaskClient, election_id: str):
  function test_jurisdictions_list_no_manifest (line 27) | def test_jurisdictions_list_no_manifest(
  function test_jurisdictions_list_with_manifest (line 74) | def test_jurisdictions_list_with_manifest(
  function test_download_ballot_manifest_not_found (line 151) | def test_download_ballot_manifest_not_found(client, election_id, jurisdi...
  function test_duplicate_batch_name (line 158) | def test_duplicate_batch_name(client, election_id, jurisdiction_ids):
  function test_jurisdictions_status_round_1_no_audit_boards (line 224) | def test_jurisdictions_status_round_1_no_audit_boards(
  function test_jurisdictions_status_round_1_with_audit_boards (line 244) | def test_jurisdictions_status_round_1_with_audit_boards(
  function test_jurisdictions_status_round_1_with_audit_boards_without_ballots (line 289) | def test_jurisdictions_status_round_1_with_audit_boards_without_ballots(
  function test_jurisdictions_round_status_offline (line 316) | def test_jurisdictions_round_status_offline(
  function test_discrepancy_before_audit_launch (line 404) | def test_discrepancy_before_audit_launch(
  function test_discrepancy_non_batch_comparison_enabled (line 421) | def test_discrepancy_non_batch_comparison_enabled(
  function test_last_login_by_jurisdiction_with_round (line 439) | def test_last_login_by_jurisdiction_with_round(
  function test_last_login_by_jurisdiction_most_recent (line 498) | def test_last_login_by_jurisdiction_most_recent(client: FlaskClient, ele...

FILE: server/tests/api/test_jurisdictions_file.py
  function test_missing_file (line 9) | def test_missing_file(client: FlaskClient, election_id: str):
  function test_bad_csv_file (line 24) | def test_bad_csv_file(client: FlaskClient, election_id: str):
  function test_missing_one_csv_field (line 66) | def test_missing_one_csv_field(client, election_id):
  function test_jurisdictions_file_metadata (line 92) | def test_jurisdictions_file_metadata(client, election_id):
  function test_replace_jurisdictions_file (line 126) | def test_replace_jurisdictions_file(client, election_id):
  function test_no_jurisdiction (line 173) | def test_no_jurisdiction(client, election_id):
  function test_single_jurisdiction_single_admin (line 185) | def test_single_jurisdiction_single_admin(client, election_id):
  function test_single_jurisdiction_multiple_admins (line 202) | def test_single_jurisdiction_multiple_admins(client, election_id):
  function test_multiple_jurisdictions_single_admin (line 220) | def test_multiple_jurisdictions_single_admin(client, election_id):
  function test_download_jurisdictions_file_not_found (line 237) | def test_download_jurisdictions_file_not_found(client, election_id):
  function test_convert_emails_to_lowercase (line 242) | def test_convert_emails_to_lowercase(client, election_id):
  function test_upload_jurisdictions_file_after_audit_starts (line 261) | def test_upload_jurisdictions_file_after_audit_starts(
  function test_upload_jurisdictions_file_duplicate_row (line 282) | def test_upload_jurisdictions_file_duplicate_row(
  function test_jurisdictions_file_dont_clobber_other_elections (line 311) | def test_jurisdictions_file_dont_clobber_other_elections(
  function test_jurisdictions_file_expected_num_ballots (line 357) | def test_jurisdictions_file_expected_num_ballots(client: FlaskClient, el...
  function test_jurisdiction_file_get_upload_url_missing_file_type (line 384) | def test_jurisdiction_file_get_upload_url_missing_file_type(
  function test_jurisdiction_file_get_upload_url (line 400) | def test_jurisdiction_file_get_upload_url(client: FlaskClient, election_...

FILE: server/tests/api/test_public.py
  function copy_dict_and_remove_key (line 11) | def copy_dict_and_remove_key(input: dict, key: str):
  function test_public_compute_sample_sizes_input_validation (line 15) | def test_public_compute_sample_sizes_input_validation(client: FlaskClient):
  function test_public_compute_sample_sizes (line 262) | def test_public_compute_sample_sizes(client: FlaskClient, snapshot):
  function test_public_file_upload (line 557) | def test_public_file_upload(client: FlaskClient):
  function test_public_file_upload_path_traversal (line 576) | def test_public_file_upload_path_traversal(client: FlaskClient):
  function test_public_file_upload_unauthorized (line 599) | def test_public_file_upload_unauthorized(client: FlaskClient):
  function test_public_file_upload_error (line 621) | def test_public_file_upload_error(client: FlaskClient):

FILE: server/tests/api/test_reports.py
  function test_audit_admin_report (line 8) | def test_audit_admin_report(
  function test_audit_admin_report_round_2 (line 35) | def test_audit_admin_report_round_2(
  function test_jurisdiction_admin_report (line 50) | def test_jurisdiction_admin_report(
  function test_report_before_audit_starts (line 81) | def test_report_before_audit_starts(
  function test_discrepancy_report_wrong_audit_type (line 126) | def test_discrepancy_report_wrong_audit_type(

FILE: server/tests/api/test_rounds.py
  function test_rounds_list_empty (line 9) | def test_rounds_list_empty(
  function test_rounds_create_one (line 26) | def test_rounds_create_one(
  function test_rounds_create_two (line 100) | def test_rounds_create_two(
  function test_rounds_complete_audit (line 187) | def test_rounds_complete_audit(
  function test_rounds_round_2_required_if_all_blanks (line 245) | def test_rounds_round_2_required_if_all_blanks(
  function test_rounds_end_logic_unaffected_by_invalid_write_ins_1 (line 261) | def test_rounds_end_logic_unaffected_by_invalid_write_ins_1(
  function test_rounds_end_logic_unaffected_by_invalid_write_ins_2 (line 279) | def test_rounds_end_logic_unaffected_by_invalid_write_ins_2(
  function test_rounds_end_logic_unaffected_by_invalid_write_ins_3 (line 297) | def test_rounds_end_logic_unaffected_by_invalid_write_ins_3(
  function test_rounds_create_before_previous_round_complete (line 315) | def test_rounds_create_before_previous_round_complete(
  function test_rounds_wrong_number_too_big (line 340) | def test_rounds_wrong_number_too_big(
  function test_rounds_wrong_number_too_small (line 364) | def test_rounds_wrong_number_too_small(
  function test_rounds_missing_sample_sizes (line 402) | def test_rounds_missing_sample_sizes(client: FlaskClient, election_id: s...
  function test_rounds_missing_round_num (line 415) | def test_rounds_missing_round_num(
  function test_rounds_bad_sample_sizes (line 438) | def test_rounds_bad_sample_sizes(
  function test_finish_round_after_round_already_finished (line 480) | def test_finish_round_after_round_already_finished(
  function test_finish_round_before_launch (line 499) | def test_finish_round_before_launch(client: FlaskClient, election_id: str):
  function test_undo_start_round_before_launch (line 512) | def test_undo_start_round_before_launch(client: FlaskClient, election_id...
  function test_undo_start_round_1 (line 525) | def test_undo_start_round_1(
  function test_undo_start_round_1_with_audit_boards (line 553) | def test_undo_start_round_1_with_audit_boards(
  function test_undo_start_round_2 (line 572) | def test_undo_start_round_2(

FILE: server/tests/api/test_sample_preview.py
  function test_sample_preview (line 10) | def test_sample_preview(
  function test_sample_preview_in_progress (line 77) | def test_sample_preview_in_progress(
  function test_preview_after_audit_launch (line 128) | def test_preview_after_audit_launch(

FILE: server/tests/api/test_sample_sizes.py
  function test_sample_sizes_without_contests (line 10) | def test_sample_sizes_without_contests(client: FlaskClient, election_id:...
  function test_sample_sizes_without_risk_limit (line 28) | def test_sample_sizes_without_risk_limit(
  function test_sample_sizes_round_1 (line 50) | def test_sample_sizes_round_1(
  function test_sample_sizes_round_2 (line 66) | def test_sample_sizes_round_2(
  function test_samples_sizes_invalid_round_num (line 107) | def test_samples_sizes_invalid_round_num(
  function test_sample_sizes_background (line 121) | def test_sample_sizes_background(

FILE: server/tests/api/test_support.py
  function test_support_list_organizations (line 17) | def test_support_list_organizations(client: FlaskClient, org_id: str):
  function test_support_create_organization (line 27) | def test_support_create_organization(client: FlaskClient):
  function test_support_create_organization_invalid (line 45) | def test_support_create_organization_invalid(client: FlaskClient):
  function test_support_get_organization (line 54) | def test_support_get_organization(client: FlaskClient, org_id: str, elec...
  function test_support_get_organization_round (line 88) | def test_support_get_organization_round(
  function test_support_delete_organization (line 124) | def test_support_delete_organization(client: FlaskClient):
  function test_support_update_organization (line 156) | def test_support_update_organization(client: FlaskClient, org_id: str):
  function test_support_list_active_elections (line 204) | def test_support_list_active_elections(
  function test_support_get_election (line 254) | def test_support_get_election(
  function test_support_permanently_delete_election (line 294) | def test_support_permanently_delete_election(
  function test_support_create_audit_admin (line 321) | def test_support_create_audit_admin(
  function test_support_create_audit_admin_already_in_auth0 (line 378) | def test_support_create_audit_admin_already_in_auth0(
  function test_support_create_audit_admin_already_exists (line 431) | def test_support_create_audit_admin_already_exists(
  function test_support_create_audit_admin_already_admin (line 472) | def test_support_create_audit_admin_already_admin(
  function test_support_create_audit_admin_invalid_email (line 490) | def test_support_create_audit_admin_invalid_email(
  function test_support_remove_audit_admin (line 511) | def test_support_remove_audit_admin(client: FlaskClient):
  function test_support_remove_audit_admin_invalid (line 534) | def test_support_remove_audit_admin_invalid(client: FlaskClient, org_id:...
  function test_support_get_jurisdiction (line 551) | def test_support_get_jurisdiction(
  function test_support_log_in_as_audit_admin (line 586) | def test_support_log_in_as_audit_admin(
  function test_support_log_in_as_jurisdiction_admin (line 608) | def test_support_log_in_as_jurisdiction_admin(
  function test_support_log_in_to_audit_as_audit_admin (line 632) | def test_support_log_in_to_audit_as_audit_admin(client: FlaskClient, ele...
  function test_support_log_in_to_audit_as_jurisdiction_admin (line 651) | def test_support_log_in_to_audit_as_jurisdiction_admin(
  function test_support_clear_audit_boards (line 675) | def test_support_clear_audit_boards(
  function test_support_clear_offline_results_ballot_polling (line 714) | def test_support_clear_offline_results_ballot_polling(
  function test_support_clear_offline_results_wrong_audit_type (line 846) | def test_support_clear_offline_results_wrong_audit_type(
  function test_support_undo_round_start (line 883) | def test_support_undo_round_start(
  function test_support_reopen_current_round (line 930) | def test_support_reopen_current_round(
  function test_support_reopen_current_round_when_audit_not_started (line 969) | def test_support_reopen_current_round_when_audit_not_started(
  function test_support_reopen_current_round_when_round_in_progress (line 987) | def test_support_reopen_current_round_when_round_in_progress(
  function test_list_users_by_organization (line 1006) | def test_list_users_by_organization(

FILE: server/tests/audit_math/test_bravo.py
  function contests (line 18) | def contests():
  function test_expected_sample_size (line 27) | def test_expected_sample_size(contests):
  function test_expected_sample_size_second_round (line 69) | def test_expected_sample_size_second_round(contests):
  function test_bravo_sample_sizes (line 106) | def test_bravo_sample_sizes():
  function test_bravo_sample_sizes_small_prob (line 188) | def test_bravo_sample_sizes_small_prob():
  function test_bravo_sample_sizes_round1_finish (line 211) | def test_bravo_sample_sizes_round1_finish():
  function test_bravo_sample_sizes_round1_incomplete (line 235) | def test_bravo_sample_sizes_round1_incomplete():
  function test_get_sample_size (line 258) | def test_get_sample_size(contests):
  function test_bravo_expected_prob (line 330) | def test_bravo_expected_prob():
  function test_compute_risk (line 372) | def test_compute_risk(contests):
  function test_compute_risk_empty (line 463) | def test_compute_risk_empty(contests):
  function test_compute_risk_zero_test_statistic (line 556) | def test_compute_risk_zero_test_statistic():
  function test_tied_contest (line 578) | def test_tied_contest():
  function test_ballot_polling_not_found_ballots (line 621) | def test_ballot_polling_not_found_ballots(snapshot):
  function test_bravo_sample_size_considers_all_candidate_pairs (line 661) | def test_bravo_sample_size_considers_all_candidate_pairs():
  function test_bravo_sample_size_zero_risk_limit (line 689) | def test_bravo_sample_size_zero_risk_limit():

FILE: server/tests/audit_math/test_macro.py
  function contests (line 38) | def contests():
  function batches (line 48) | def batches():
  function test_max_error (line 104) | def test_max_error(contests, batches) -> None:
  function test_get_sizes_extra_contests (line 144) | def test_get_sizes_extra_contests(contests, batches) -> None:
  function test_get_sample_sizes (line 187) | def test_get_sample_sizes(contests, batches) -> None:
  function test_full_recount (line 291) | def test_full_recount(contests, batches) -> None:
  function test_full_recount_with_replacement (line 317) | def test_full_recount_with_replacement(contests, batches) -> None:
  function test_almost_done (line 346) | def test_almost_done() -> None:
  function test_worst_case (line 369) | def test_worst_case() -> None:
  function test_compute_risk (line 401) | def test_compute_risk(contests, batches) -> None:
  function test_tied_contest (line 505) | def test_tied_contest() -> None:
  function test_close_contest (line 565) | def test_close_contest() -> None:
  function test_combined_batches_no_discrepancies (line 648) | def test_combined_batches_no_discrepancies():
  function test_combined_batches_one_discrepancy (line 726) | def test_combined_batches_one_discrepancy():
  function test_combined_batches_sampled_and_unsampled (line 822) | def test_combined_batches_sampled_and_unsampled():
  function test_pending_ballots (line 918) | def test_pending_ballots(snapshot):
  function test_unauditable_ballots (line 1031) | def test_unauditable_ballots(snapshot):

FILE: server/tests/audit_math/test_minerva.py
  function contests (line 10) | def contests():
  function test_get_sample_size (line 23) | def test_get_sample_size():
  function test_get_sample_size_landslide (line 81) | def test_get_sample_size_landslide():
  function test_get_sample_size_big (line 91) | def test_get_sample_size_big():
  function test_get_sample_size_bigger_approx (line 102) | def test_get_sample_size_bigger_approx():
  function test_get_sample_size_second_round (line 116) | def test_get_sample_size_second_round():
  function test_compute_risk_2r (line 132) | def test_compute_risk_2r():
  function test_get_sample_size_2win (line 143) | def test_get_sample_size_2win():
  function test_collect_risks (line 155) | def test_collect_risks():
  function test_compute_risk_delta (line 171) | def test_compute_risk_delta():
  function test_compute_risk_2win (line 191) | def test_compute_risk_2win():
  function test_compute_risk_2win_2 (line 204) | def test_compute_risk_2win_2():
  function test_compute_risk_2win_2_2r (line 217) | def test_compute_risk_2win_2_2r():
  function test_compute_risk (line 230) | def test_compute_risk():
  function test_compute_risk_close_narrow (line 248) | def test_compute_risk_close_narrow():
  function test_compute_risk_close_narrow_2 (line 263) | def test_compute_risk_close_narrow_2():
  function test_compute_risk_close_narrow_3 (line 279) | def test_compute_risk_close_narrow_3():
  function test_compute_risk_too_low (line 295) | def test_compute_risk_too_low():

FILE: server/tests/audit_math/test_minerva2.py
  function test_make_r2b2_contest (line 13) | def test_make_r2b2_contest():
  function test_get_sample_size (line 24) | def test_get_sample_size():
  function test_get_sample_size_multi_candidate (line 41) | def test_get_sample_size_multi_candidate():
  function test_get_sample_size_2win (line 60) | def test_get_sample_size_2win():
  function test_get_sample_size_multiple_rounds (line 80) | def test_get_sample_size_multiple_rounds():
  function test_compute_risk (line 105) | def test_compute_risk():
  function test_compute_risk_2win (line 127) | def test_compute_risk_2win():
  function test_compute_risk_multi_round (line 147) | def test_compute_risk_multi_round():
  function test_compare_minervas (line 157) | def test_compare_minervas():
  function test_compare_bravo (line 173) | def test_compare_bravo():
  function test_abnormal_rounds (line 197) | def test_abnormal_rounds():
  function test_tight_margins_full_count (line 222) | def test_tight_margins_full_count():

FILE: server/tests/audit_math/test_raire.py
  function contest (line 30) | def contest() -> Contest:
  function cvrs (line 45) | def cvrs() -> CVRS:
  function ballots (line 60) | def ballots() -> list[dict[str, int]]:
  function asn_func (line 74) | def asn_func(m):
  function test_make_neb_matrix (line 78) | def test_make_neb_matrix(contest: Contest, cvrs: CVRS):
  function test_make_raire_frontier (line 96) | def test_make_raire_frontier(contest: Contest, cvrs: CVRS, ballots: Ball...
  function test_find_assertions_too_good_ancestor (line 117) | def test_find_assertions_too_good_ancestor(
  function test_find_assertions_infinite_to_expand (line 143) | def test_find_assertions_infinite_to_expand(
  function test_find_assertions_fake_ancestor (line 165) | def test_find_assertions_fake_ancestor(
  function test_find_assertions_infinite_branch (line 185) | def test_find_assertions_infinite_branch(
  function test_find_assertions_many_children (line 220) | def test_find_assertions_many_children(
  function compare_result (line 239) | def compare_result(path: str, contests: dict[str, list[str]]):
  function parse_raire_input (line 299) | def parse_raire_input(input_file: str):
  function run_test (line 354) | def run_test(input_file: str, output_file: str, agap: float):
  function test_raire (line 380) | def test_raire(contest: Contest, cvrs: CVRS):
  function test_raire_recount (line 406) | def test_raire_recount():
  function test_aspen_wrong_winner (line 430) | def test_aspen_wrong_winner():
  function test_berkeley_2010 (line 437) | def test_berkeley_2010():

FILE: server/tests/audit_math/test_raire_utils.py
  function test_ranking_not_on_ballots (line 13) | def test_ranking_not_on_ballots():
  function test_ranking (line 24) | def test_ranking():
  function test_vote_for_candidate (line 39) | def test_vote_for_candidate():
  function test_vote_for_eliminated_cand (line 53) | def test_vote_for_eliminated_cand():
  function test_raire_assertion_comparator (line 64) | def test_raire_assertion_comparator():
  function test_raire_assertion_to_str (line 90) | def test_raire_assertion_to_str():
  function test_nebassertion (line 107) | def test_nebassertion():
  function test_simple_contest (line 130) | def test_simple_contest():
  function test_nebassertion_subsumes (line 160) | def test_nebassertion_subsumes():
  function test_neb_repr (line 184) | def test_neb_repr():
  function test_nenassertion_is_vote_for (line 191) | def test_nenassertion_is_vote_for():
  function test_nenassertion_subsumes (line 210) | def test_nenassertion_subsumes():
  function test_nen_repr (line 225) | def test_nen_repr():
  function test_nen_hash (line 231) | def test_nen_hash():
  function test_raire_node_descendents (line 237) | def test_raire_node_descendents():
  function test_raire_node_repr (line 254) | def test_raire_node_repr():
  function test_raire_frontier (line 280) | def test_raire_frontier():
  function test_find_best_audit_simple (line 324) | def test_find_best_audit_simple():
  function make_neb_assertion (line 363) | def make_neb_assertion(
  function make_nen_assertion (line 388) | def make_nen_assertion(
  function contest (line 415) | def contest() -> Contest:
  function cvrs (line 430) | def cvrs() -> CVRS:
  function ballots (line 445) | def ballots() -> list[dict[str, int]]:
  function asn_func (line 459) | def asn_func(m):
  function test_find_best_audit_complex (line 463) | def test_find_best_audit_complex(contest, cvrs, ballots):
  function test_find_best_with_eliminated (line 512) | def test_find_best_with_eliminated(contest, cvrs, ballots):
  function test_find_best_with_wrong_elimination (line 550) | def test_find_best_with_wrong_elimination(contest, cvrs, ballots):
  function test_perform_dive_impossible (line 585) | def test_perform_dive_impossible(contest, cvrs, ballots):
  function test_perform_dive_possible (line 631) | def test_perform_dive_possible(contest, cvrs, ballots):

FILE: server/tests/audit_math/test_sampler.py
  function macro_batches (line 14) | def macro_batches():
  function close_macro_batches (line 32) | def close_macro_batches():
  function macro_contest (line 51) | def macro_contest():
  function close_macro_contest (line 66) | def close_macro_contest():
  function test_draw_sample (line 80) | def test_draw_sample(snapshot):
  function test_draw_more_samples (line 93) | def test_draw_more_samples(snapshot):
  function test_draw_macro_sample (line 109) | def test_draw_macro_sample(macro_batches, macro_contest, snapshot):
  function test_draw_more_macro_sample (line 121) | def test_draw_more_macro_sample(macro_batches, macro_contest, snapshot):
  function test_draw_macro_full_hand_tally (line 148) | def test_draw_macro_full_hand_tally(close_macro_batches, close_macro_con...
  function test_draw_macro_multiple_contests (line 187) | def test_draw_macro_multiple_contests(macro_batches, snapshot):
  function test_draw_macro_contest_not_in_any_batches (line 218) | def test_draw_macro_contest_not_in_any_batches(macro_batches):
  function random_manifest (line 238) | def random_manifest():
  function test_ballot_labels (line 246) | def test_ballot_labels():

FILE: server/tests/audit_math/test_sampler_contest.py
  function contests (line 7) | def contests():
  function test_compute_margins (line 16) | def test_compute_margins(contests):
  function test_diluted_margin (line 61) | def test_diluted_margin(contests):
  function test_repr (line 70) | def test_repr(contests):

FILE: server/tests/audit_math/test_suite.py
  function strata (line 24) | def strata():
  function test_sprt_functionality (line 38) | def test_sprt_functionality(strata):
  function analytic_strata (line 50) | def analytic_strata():
  function test_sprt_analytic_example (line 64) | def test_sprt_analytic_example(analytic_strata):
  function test_edge_cases (line 76) | def test_edge_cases(analytic_strata):
  function cvr_strata (line 86) | def cvr_strata():
  function test_cvr_compute_risk (line 97) | def test_cvr_compute_risk(cvr_strata):
  function test_fishers_combined (line 181) | def test_fishers_combined():
  function test_get_sample_size (line 260) | def test_get_sample_size():
  function test_winner_loses_no_cvr (line 320) | def test_winner_loses_no_cvr():
  function test_close_contest_many_undervotes (line 389) | def test_close_contest_many_undervotes():
  function test_wide_margin (line 464) | def test_wide_margin():
  function test_wrong_outcome (line 548) | def test_wrong_outcome():
  function test_escalation (line 626) | def test_escalation():
  function test_really_close_race (line 754) | def test_really_close_race():
  function test_multi_winner (line 836) | def test_multi_winner():
  function test_multi_candidate (line 924) | def test_multi_candidate():
  function test_tie (line 1013) | def test_tie():
  function test_tiny_election (line 1094) | def test_tiny_election():
  function test_invalid_try_n (line 1164) | def test_invalid_try_n():
  function test_misstatements (line 1228) | def test_misstatements():
  function test_cvr_recount (line 1277) | def test_cvr_recount():
  function test_bp_recount (line 1357) | def test_bp_recount():
  function test_full_recount (line 1437) | def test_full_recount():
  function test_ess_misstatements (line 1517) | def test_ess_misstatements():

FILE: server/tests/audit_math/test_supersimple.py
  function cvrs (line 13) | def cvrs():
  function contests (line 64) | def contests():
  function test_compute_diluted_margin (line 73) | def test_compute_diluted_margin(contests):
  function test_find_no_discrepancies (line 83) | def test_find_no_discrepancies(contests, cvrs):
  function test_find_one_discrepancy (line 106) | def test_find_one_discrepancy(contests, cvrs):
  function test_negative_discrepancies (line 141) | def test_negative_discrepancies(contests, cvrs):
  function test_two_vote_overstatement_discrepancies (line 165) | def test_two_vote_overstatement_discrepancies(contests, cvrs):
  function test_race_not_in_cvr_discrepancy (line 187) | def test_race_not_in_cvr_discrepancy(contests, cvrs):
  function test_race_not_in_sample_discrepancy (line 209) | def test_race_not_in_sample_discrepancy(contests, cvrs):
  function test_ballot_not_found_discrepancy (line 231) | def test_ballot_not_found_discrepancy(contests, cvrs):
  function test_ballot_not_in_cvr (line 243) | def test_ballot_not_in_cvr(contests):
  function test_ballot_not_in_cvr_and_not_found (line 261) | def test_ballot_not_in_cvr_and_not_found(contests):
  function test_ess_discrepancies (line 274) | def test_ess_discrepancies(contests) -> None:
  function test_get_sample_sizes (line 463) | def test_get_sample_sizes(contests):
  function test_compute_risk (line 475) | def test_compute_risk(contests, cvrs):
  function test_tied_contest (line 620) | def test_tied_contest():
  function test_supersimple_full_hand_tally (line 675) | def test_supersimple_full_hand_tally():
  function test_snapshot_test (line 713) | def test_snapshot_test():
  function test_multiplicity (line 772) | def test_multiplicity():
  function test_supersimple_sample_size_zero_risk_limit (line 827) | def test_supersimple_sample_size_zero_risk_limit():

FILE: server/tests/audit_math/test_supersimple_raire.py
  function asn_func (line 20) | def asn_func(m):
  function cvrs (line 25) | def cvrs():
  function contests (line 57) | def contests():
  function assertions (line 67) | def assertions(contests, cvrs):
  function test_find_no_discrepancies (line 76) | def test_find_no_discrepancies(contests, cvrs, assertions):
  function test_find_one_discrepancy (line 99) | def test_find_one_discrepancy(contests, cvrs, assertions):
  function test_negative_discrepancies (line 127) | def test_negative_discrepancies(cvrs, assertions):
  function test_two_vote_overstatement_discrepancies (line 149) | def test_two_vote_overstatement_discrepancies(cvrs, assertions):
  function test_race_not_in_cvr_discrepancy (line 172) | def test_race_not_in_cvr_discrepancy(cvrs, assertions):
  function test_race_not_in_sample_discrepancy (line 194) | def test_race_not_in_sample_discrepancy(cvrs, assertions):
  function test_ballot_not_found_discrepancy (line 216) | def test_ballot_not_found_discrepancy(cvrs, assertions):
  function test_ballot_not_in_cvr (line 228) | def test_ballot_not_in_cvr(cvrs, assertions):
  function test_ballot_not_in_cvr_and_not_found (line 242) | def test_ballot_not_in_cvr_and_not_found(assertions):
  function test_fptp (line 255) | def test_fptp(contests, cvrs, assertions):
  function parse_shangrla_sample (line 418) | def parse_shangrla_sample(input_file: str) -> SAMPLECVRS:
  function test_get_sample_sizes_fptp (line 437) | def test_get_sample_sizes_fptp(contests, cvrs, assertions):
  function test_normalize_cvr (line 451) | def test_normalize_cvr():
  function test_discrepancy_validation (line 465) | def test_discrepancy_validation():
  function test_simple_irv_election (line 513) | def test_simple_irv_election():
  function test_raire_example_1 (line 647) | def test_raire_example_1():
  function test_raire_example_5 (line 768) | def test_raire_example_5():
  function test_raire_example_12 (line 897) | def test_raire_example_12():
  function test_raire_example_broken (line 1016) | def test_raire_example_broken():

FILE: server/tests/ballot_comparison/conftest.py
  function election_id (line 74) | def election_id(client: FlaskClient, org_id: str, request):
  function manifests (line 88) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function ess_manifests (line 121) | def ess_manifests(client: FlaskClient, election_id: str, jurisdiction_id...
  function hart_manifests (line 142) | def hart_manifests(client: FlaskClient, election_id: str, jurisdiction_i...
  function cvrs (line 163) | def cvrs(

FILE: server/tests/ballot_comparison/test_ballot_comparison.py
  function test_set_contest_metadata_on_contest_creation (line 20) | def test_set_contest_metadata_on_contest_creation(
  function test_set_contest_metadata_on_manifest_and_cvr_upload (line 61) | def test_set_contest_metadata_on_manifest_and_cvr_upload(
  function test_cvr_choice_name_validation (line 208) | def test_cvr_choice_name_validation(
  function test_set_contest_metadata_on_jurisdiction_change (line 336) | def test_set_contest_metadata_on_jurisdiction_change(
  function test_require_cvr_uploads (line 394) | def test_require_cvr_uploads(
  function test_require_manifest_uploads (line 438) | def test_require_manifest_uploads(
  function test_contest_names_dont_match_cvr_contests (line 481) | def test_contest_names_dont_match_cvr_contests(
  function ballot_key (line 519) | def ballot_key(ballot: SampledBallot):
  function audit_all_ballots (line 528) | def audit_all_ballots(
  function check_discrepancies (line 645) | def check_discrepancies(report: str, audit_results):
  function test_ballot_comparison_two_rounds (line 666) | def test_ballot_comparison_two_rounds(
  function generate_audit_results (line 1008) | def generate_audit_results(round_id: str):  # pragma: no cover
  function test_ballot_comparison_cvr_metadata (line 1048) | def test_ballot_comparison_cvr_metadata(
  function test_ballot_comparison_sample_size_validation (line 1153) | def test_ballot_comparison_sample_size_validation(
  function test_ballot_comparison_multiple_targeted_contests_sample_size (line 1212) | def test_ballot_comparison_multiple_targeted_contests_sample_size(
  function test_ballot_comparison_ess (line 1316) | def test_ballot_comparison_ess(
  function test_ballot_comparison_sample_preview (line 1528) | def test_ballot_comparison_sample_preview(

FILE: server/tests/ballot_comparison/test_ballot_comparison_cardstyledata.py
  function test_ballot_comparison_cardstyledata_two_rounds (line 24) | def test_ballot_comparison_cardstyledata_two_rounds(

FILE: server/tests/ballot_comparison/test_ballot_comparison_manifests.py
  function manifests (line 18) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function cvrs (line 61) | def cvrs(
  function test_ballot_comparison_container_manifest (line 111) | def test_ballot_comparison_container_manifest(
  function test_ballot_comparison_manifest_missing_tabulator (line 273) | def test_ballot_comparison_manifest_missing_tabulator(
  function test_ballot_comparison_manifest_unexpected_cvr_column (line 320) | def test_ballot_comparison_manifest_unexpected_cvr_column(

FILE: server/tests/ballot_comparison/test_contest_name_standardizations.py
  function test_standardize_contest_names (line 10) | def test_standardize_contest_names(
  function test_standardize_contest_names_before_cvrs (line 156) | def test_standardize_contest_names_before_cvrs(
  function test_standardize_contest_names_before_contests (line 181) | def test_standardize_contest_names_before_contests(
  function test_standardize_contest_names_cvr_change (line 195) | def test_standardize_contest_names_cvr_change(
  function test_standardize_contest_names_contest_change (line 277) | def test_standardize_contest_names_contest_change(
  function test_standardize_contest_names_wrong_audit_type (line 359) | def test_standardize_contest_names_wrong_audit_type(
  function test_standardize_contest_names_after_audit_starts (line 383) | def test_standardize_contest_names_after_audit_starts(

FILE: server/tests/ballot_comparison/test_cvrs.py
  function test_dominion_cvr_upload (line 11) | def test_dominion_cvr_upload(
  function test_cvrs_counting_group (line 150) | def test_cvrs_counting_group(
  function test_dominion_cvr_unique_voting_identifier (line 245) | def test_dominion_cvr_unique_voting_identifier(
  function test_dominion_cvrs_with_leading_equal_signs (line 339) | def test_dominion_cvrs_with_leading_equal_signs(
  function test_cvrs_clear (line 389) | def test_cvrs_clear(
  function test_cvrs_replace_as_audit_admin (line 438) | def test_cvrs_replace_as_audit_admin(
  function test_cvrs_upload_missing_file (line 491) | def test_cvrs_upload_missing_file(
  function test_cvrs_upload_bad_csv (line 515) | def test_cvrs_upload_bad_csv(
  function test_cvrs_wrong_audit_type (line 563) | def test_cvrs_wrong_audit_type(
  function test_cvrs_before_manifests (line 597) | def test_cvrs_before_manifests(
  function test_cvrs_newlines (line 647) | def test_cvrs_newlines(
  function test_invalid_cvrs (line 720) | def test_invalid_cvrs(
  function test_cvr_reprocess_after_manifest_reupload (line 1042) | def test_cvr_reprocess_after_manifest_reupload(
  function test_clearballot_cvr_upload (line 1186) | def test_clearballot_cvr_upload(
  function test_clearballot_cvr_upload_invalid (line 1260) | def test_clearballot_cvr_upload_invalid(
  function test_ess_cvr_upload (line 1436) | def test_ess_cvr_upload(
  function test_ess_cvr_upload_invalid (line 1534) | def test_ess_cvr_upload_invalid(
  function test_ess_cvr_upload_cvr_file_with_tabulator_cvr_column (line 1863) | def test_ess_cvr_upload_cvr_file_with_tabulator_cvr_column(
  function build_hart_cvr (line 1983) | def build_hart_cvr(
  function test_hart_cvr_upload (line 2169) | def test_hart_cvr_upload(
  function test_hart_cvr_upload_with_scanned_ballot_information (line 2241) | def test_hart_cvr_upload_with_scanned_ballot_information(
  function test_hart_cvr_upload_with_duplicate_batch_names (line 2430) | def test_hart_cvr_upload_with_duplicate_batch_names(
  function test_hart_cvr_upload_no_batch_match (line 2596) | def test_hart_cvr_upload_no_batch_match(
  function test_hart_cvr_upload_no_tabulator_plus_batch_match (line 2651) | def test_hart_cvr_upload_no_tabulator_plus_batch_match(
  function test_hart_cvr_upload_basic_input_validation (line 2735) | def test_hart_cvr_upload_basic_input_validation(
  function test_hart_cvr_upload_processing_validation (line 2786) | def test_hart_cvr_upload_processing_validation(
  function test_cvrs_unexpected_error (line 2889) | def test_cvrs_unexpected_error(
  function test_cvr_invalid_file_type (line 2951) | def test_cvr_invalid_file_type(
  function test_cvrs_get_upload_url_missing_file_type (line 2978) | def test_cvrs_get_upload_url_missing_file_type(
  function test_cvrs_get_upload_url (line 2998) | def test_cvrs_get_upload_url(
  function test_upload_cvrs_fails_while_processing_manifest_file (line 3038) | def test_upload_cvrs_fails_while_processing_manifest_file(
  function test_remove_cvrs_fails_while_processing_manifest_file (line 3076) | def test_remove_cvrs_fails_while_processing_manifest_file(
  function test_upload_ballot_manifest_fails_while_processing_cvr_file (line 3109) | def test_upload_ballot_manifest_fails_while_processing_cvr_file(
  function test_remove_ballot_manifest_fails_while_processing_cvr_file (line 3148) | def test_remove_ballot_manifest_fails_while_processing_cvr_file(

FILE: server/tests/ballot_comparison/test_single_jurisdiction_ballot_comparison.py
  function jurisdiction_ids (line 13) | def jurisdiction_ids(client: FlaskClient, election_id: str) -> list[str]:
  function manifests (line 34) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function cvrs (line 54) | def cvrs(
  function test_ballot_comparison_single_jurisdiction_discrepancies (line 73) | def test_ballot_comparison_single_jurisdiction_discrepancies(

FILE: server/tests/ballot_comparison/test_standardized_contests.py
  function test_upload_standardized_contests (line 9) | def test_upload_standardized_contests(
  function test_download_standardized_contests_file_before_upload (line 56) | def test_download_standardized_contests_file_before_upload(
  function test_standardized_contests_replace (line 63) | def test_standardized_contests_replace(
  function test_standardized_contests_bad_jurisdiction (line 102) | def test_standardized_contests_bad_jurisdiction(
  function test_standardized_contests_no_jurisdictions (line 138) | def test_standardized_contests_no_jurisdictions(
  function test_standardized_contests_missing_file (line 171) | def test_standardized_contests_missing_file(
  function test_standardized_contests_bad_csv (line 191) | def test_standardized_contests_bad_csv(
  function test_standardized_contests_wrong_audit_type (line 233) | def test_standardized_contests_wrong_audit_type(
  function test_standardized_contests_before_jurisdictions (line 261) | def test_standardized_contests_before_jurisdictions(
  function test_standardized_contests_newlines (line 280) | def test_standardized_contests_newlines(
  function test_standardized_contests_dominion_vote_for (line 306) | def test_standardized_contests_dominion_vote_for(
  function test_standardized_contests_change_jurisdictions_file (line 332) | def test_standardized_contests_change_jurisdictions_file(
  function test_standardized_contests_parse_all (line 427) | def test_standardized_contests_parse_all(
  function test_reupload_standardized_contests_after_contests_selected (line 450) | def test_reupload_standardized_contests_after_contests_selected(
  function test_standardized_contests_get_upload_url_missing_file_type (line 562) | def test_standardized_contests_get_upload_url_missing_file_type(
  function test_standardized_contests_get_upload_url (line 584) | def test_standardized_contests_get_upload_url(client: FlaskClient, elect...
  function test_replace_standardized_contests_file_while_processing_jurisdictions_file_fails (line 606) | def test_replace_standardized_contests_file_while_processing_jurisdictio...

FILE: server/tests/ballot_polling/test_ballot_polling.py
  function test_not_found_ballots (line 7) | def test_not_found_ballots(

FILE: server/tests/ballot_polling/test_minerva_ballot_polling.py
  function election_id (line 8) | def election_id(client: FlaskClient, org_id: str, request):
  function election_settings (line 20) | def election_settings(client: FlaskClient, election_id: str):
  function test_minerva_sample_size (line 32) | def test_minerva_sample_size(
  function test_minerva_ballot_polling_one_round (line 51) | def test_minerva_ballot_polling_one_round(
  function test_minerva_ballot_polling_two_rounds (line 173) | def test_minerva_ballot_polling_two_rounds(

FILE: server/tests/ballot_polling/test_providence_ballot_polling.py
  function election_id (line 8) | def election_id(client: FlaskClient, org_id: str, request):
  function election_settings (line 20) | def election_settings(client: FlaskClient, election_id: str):
  function test_providence_sample_size (line 32) | def test_providence_sample_size(

FILE: server/tests/batch_comparison/conftest.py
  function election_id (line 10) | def election_id(client: FlaskClient, org_id: str, request):
  function election_settings (line 22) | def election_settings(client: FlaskClient, election_id: str):
  function contest_ids (line 36) | def contest_ids(client: FlaskClient, election_id: str, jurisdiction_ids:...
  function contest_id (line 60) | def contest_id(contest_ids: list[str]) -> str:
  function manifests (line 65) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function batch_tallies (line 105) | def batch_tallies(
  function round_1_id (line 153) | def round_1_id(
  function tally_entry_user_id (line 186) | def tally_entry_user_id(

FILE: server/tests/batch_comparison/test_batch_comparison.py
  function parse_vote_deltas (line 10) | def parse_vote_deltas(
  function check_discrepancies (line 24) | def check_discrepancies(
  function test_batch_comparison_sample_size (line 44) | def test_batch_comparison_sample_size(
  function test_batch_comparison_without_all_batch_tallies (line 62) | def test_batch_comparison_without_all_batch_tallies(
  function test_batch_comparison_too_many_votes (line 88) | def test_batch_comparison_too_many_votes(
  function test_batch_comparison_round_1 (line 129) | def test_batch_comparison_round_1(
  function test_batch_comparison_round_2 (line 206) | def test_batch_comparison_round_2(
  function test_batch_comparison_custom_sample_size_validation (line 505) | def test_batch_comparison_custom_sample_size_validation(
  function test_batch_comparison_batches_sampled_multiple_times (line 541) | def test_batch_comparison_batches_sampled_multiple_times(
  function test_batch_comparison_sample_all_batches (line 743) | def test_batch_comparison_sample_all_batches(
  function test_batch_comparison_undo_start_round_1 (line 788) | def test_batch_comparison_undo_start_round_1(
  function test_batch_comparison_cant_create_audit_boards (line 808) | def test_batch_comparison_cant_create_audit_boards(
  function test_batch_comparison_sample_preview (line 830) | def test_batch_comparison_sample_preview(
  function test_batch_tallies_summed_by_jurisdiction_csv_generation (line 888) | def test_batch_tallies_summed_by_jurisdiction_csv_generation(
  function test_batch_comparison_combined_batches (line 913) | def test_batch_comparison_combined_batches(
  function test_batch_comparison_pending_ballots (line 1194) | def test_batch_comparison_pending_ballots(
  function test_batch_comparison_contests_pending_ballots_validation (line 1334) | def test_batch_comparison_contests_pending_ballots_validation(

FILE: server/tests/batch_comparison/test_batch_inventory.py
  function contest_id (line 104) | def contest_id(client: FlaskClient, election_id: str, jurisdiction_ids: ...
  function contest_ids (line 126) | def contest_ids(client: FlaskClient, election_id: str, jurisdiction_ids:...
  function test_batch_inventory_happy_path (line 163) | def test_batch_inventory_happy_path(
  function test_batch_inventory_happy_path_cvrs_with_leading_equal_signs (line 374) | def test_batch_inventory_happy_path_cvrs_with_leading_equal_signs(
  function test_batch_inventory_happy_path_cvrs_with_extra_spaces (line 585) | def test_batch_inventory_happy_path_cvrs_with_extra_spaces(
  function test_batch_inventory_happy_path_multi_contest_batch_comparison (line 796) | def test_batch_inventory_happy_path_multi_contest_batch_comparison(
  function test_batch_inventory_download_before_upload (line 1007) | def test_batch_inventory_download_before_upload(
  function test_batch_inventory_invalid_file_uploads (line 1030) | def test_batch_inventory_invalid_file_uploads(
  function test_batch_inventory_missing_data_multi_contest_batch_comparison (line 1167) | def test_batch_inventory_missing_data_multi_contest_batch_comparison(
  function test_batch_inventory_excel_tabulator_status_file (line 1222) | def test_batch_inventory_excel_tabulator_status_file(
  function test_batch_inventory_wrong_tabulator_status_file (line 1404) | def test_batch_inventory_wrong_tabulator_status_file(
  function test_batch_inventory_undo_sign_off (line 1532) | def test_batch_inventory_undo_sign_off(
  function test_batch_inventory_delete_cvr_after_sign_off (line 1587) | def test_batch_inventory_delete_cvr_after_sign_off(
  function test_batch_inventory_delete_tabulator_status_after_sign_off (line 1642) | def test_batch_inventory_delete_tabulator_status_after_sign_off(
  function test_batch_inventory_upload_cvr_before_contests (line 1697) | def test_batch_inventory_upload_cvr_before_contests(
  function test_batch_inventory_upload_tabulator_status_before_cvr (line 1730) | def test_batch_inventory_upload_tabulator_status_before_cvr(
  function test_batch_inventory_cvr_get_upload_url_missing_file_type (line 1764) | def test_batch_inventory_cvr_get_upload_url_missing_file_type(
  function test_batch_inventory_cvr_get_upload_url (line 1784) | def test_batch_inventory_cvr_get_upload_url(
  function test_batch_inventory_tabulator_status_get_upload_url_missing_file_type (line 1806) | def test_batch_inventory_tabulator_status_get_upload_url_missing_file_type(
  function test_batch_inventory_tabulator_status_get_upload_url (line 1826) | def test_batch_inventory_tabulator_status_get_upload_url(
  function test_upload_tabulator_status_file_while_cvr_file_is_processing_fails (line 1848) | def test_upload_tabulator_status_file_while_cvr_file_is_processing_fails(
  function test_remove_tabulator_status_file_while_cvr_file_is_processing_fails (line 1895) | def test_remove_tabulator_status_file_while_cvr_file_is_processing_fails(
  function test_upload_cvr_file_while_tabulator_status_file_is_processing_fails (line 1938) | def test_upload_cvr_file_while_tabulator_status_file_is_processing_fails(
  function test_remove_cvr_file_while_tabulator_status_file_is_processing_fails (line 1993) | def test_remove_cvr_file_while_tabulator_status_file_is_processing_fails(
  function test_batch_inventory_hart_cvr_upload (line 2045) | def test_batch_inventory_hart_cvr_upload(
  function test_batch_inventory_hart_cvr_upload_multi_contest (line 2184) | def test_batch_inventory_hart_cvr_upload_multi_contest(
  function test_batch_inventory_ess_cvr_upload (line 2320) | def test_batch_inventory_ess_cvr_upload(
  function test_batch_inventory_ess_cvr_upload_no_ballot_file (line 2510) | def test_batch_inventory_ess_cvr_upload_no_ballot_file(
  function test_batch_inventory_ess_cvr_upload_multi_contest (line 2625) | def test_batch_inventory_ess_cvr_upload_multi_contest(

FILE: server/tests/batch_comparison/test_batch_tallies.py
  function manifests (line 11) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function test_batch_tallies_upload (line 26) | def test_batch_tallies_upload(
  function test_batch_tallies_clear (line 134) | def test_batch_tallies_clear(
  function test_batch_tallies_replace_as_audit_admin (line 182) | def test_batch_tallies_replace_as_audit_admin(
  function test_batch_tallies_upload_missing_file (line 265) | def test_batch_tallies_upload_missing_file(
  function test_batch_tallies_upload_bad_csv (line 290) | def test_batch_tallies_upload_bad_csv(
  function test_batch_tallies_upload_missing_choice (line 347) | def test_batch_tallies_upload_missing_choice(
  function test_batch_tallies_wrong_batch_names (line 390) | def test_batch_tallies_wrong_batch_names(
  function test_batch_tallies_too_many_tallies (line 481) | def test_batch_tallies_too_many_tallies(
  function test_batch_tallies_ballot_polling (line 524) | def test_batch_tallies_ballot_polling(
  function test_batch_tallies_bad_jurisdiction (line 562) | def test_batch_tallies_bad_jurisdiction(
  function test_batch_tallies_before_manifests (line 594) | def test_batch_tallies_before_manifests(
  function test_batch_tallies_reprocess_after_manifest_reupload (line 625) | def test_batch_tallies_reprocess_after_manifest_reupload(
  function test_batch_tallies_template_csv_generation (line 715) | def test_batch_tallies_template_csv_generation(
  function test_batch_tallies_get_upload_url_missing_file_type (line 740) | def test_batch_tallies_get_upload_url_missing_file_type(
  function test_batch_tallies_get_upload_url (line 760) | def test_batch_tallies_get_upload_url(
  function test_upload_batch_tallies_fails_while_processing_manifest_file (line 785) | def test_upload_batch_tallies_fails_while_processing_manifest_file(
  function test_remove_batch_tallies_fails_while_processing_manifest_file (line 822) | def test_remove_batch_tallies_fails_while_processing_manifest_file(
  function test_upload_ballot_manifest_fails_while_processing_batch_tallies_file (line 854) | def test_upload_ballot_manifest_fails_while_processing_batch_tallies_file(
  function test_remove_ballot_manifest_fails_while_processing_batch_tallies_file (line 891) | def test_remove_ballot_manifest_fails_while_processing_batch_tallies_file(

FILE: server/tests/batch_comparison/test_batches.py
  function test_list_batches_bad_round_id (line 11) | def test_list_batches_bad_round_id(
  function test_list_batches (line 25) | def test_list_batches(
  function test_batch_retrieval_list_bad_round_id (line 68) | def test_batch_retrieval_list_bad_round_id(
  function test_batch_retrieval_list_round_1 (line 83) | def test_batch_retrieval_list_round_1(
  function test_record_batch_results (line 106) | def test_record_batch_results(
  function test_record_batch_results_as_support_user (line 331) | def test_record_batch_results_as_support_user(
  function test_batch_tally_sheet_order (line 376) | def test_batch_tally_sheet_order(
  function test_record_batch_results_invalid (line 450) | def test_record_batch_results_invalid(
  function test_unfinalize_batch_results (line 590) | def test_unfinalize_batch_results(
  function test_record_batch_results_bad_round (line 747) | def test_record_batch_results_bad_round(
  function test_batches_human_sort_order (line 876) | def test_batches_human_sort_order(
  function test_finalize_batch_results_incomplete (line 1007) | def test_finalize_batch_results_incomplete(

FILE: server/tests/batch_comparison/test_multi_contest_batch_comparison.py
  function contest_ids (line 9) | def contest_ids(client: FlaskClient, election_id: str, jurisdiction_ids:...
  function manifests (line 43) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function batch_tallies (line 108) | def batch_tallies(
  function put_batch_results (line 134) | def put_batch_results(
  function test_multi_contest_batch_comparison_jurisdiction_upload_validation (line 152) | def test_multi_contest_batch_comparison_jurisdiction_upload_validation(
  function test_multi_contest_batch_comparison_batch_results_validation (line 270) | def test_multi_contest_batch_comparison_batch_results_validation(
  function test_multi_contest_batch_comparison_end_to_end (line 435) | def test_multi_contest_batch_comparison_end_to_end(
  function test_multi_contest_batch_comparison_round_2 (line 726) | def test_multi_contest_batch_comparison_round_2(
  function test_multi_contest_batch_comparison_batch_tallies_template_csv_generation (line 1065) | def test_multi_contest_batch_comparison_batch_tallies_template_csv_gener...
  function test_multi_contest_batch_comparison_batch_tallies_summed_by_jurisdiction_csv_generation (line 1102) | def test_multi_contest_batch_comparison_batch_tallies_summed_by_jurisdic...
  function test_multi_contest_batch_comparison_editing_contests_after_uploads (line 1128) | def test_multi_contest_batch_comparison_editing_contests_after_uploads(
  function test_updating_contests_while_jurisdictions_file_is_being_processed (line 1180) | def test_updating_contests_while_jurisdictions_file_is_being_processed(
  function test_updating_contests_while_batch_tallies_file_is_being_processed (line 1217) | def test_updating_contests_while_batch_tallies_file_is_being_processed(
  function test_batch_tallies_dont_reprocess_when_contest_jurisdictions_change (line 1256) | def test_batch_tallies_dont_reprocess_when_contest_jurisdictions_change(

FILE: server/tests/batch_comparison/test_sample_extra_batches_by_counting_group.py
  function org_id (line 10) | def org_id(client: FlaskClient, request) -> str:
  function manifests (line 24) | def manifests(
  function test_sample_extra_batches_by_counting_group (line 76) | def test_sample_extra_batches_by_counting_group(
  function test_sample_extra_batches_with_no_extra_batches_to_sample (line 256) | def test_sample_extra_batches_with_no_extra_batches_to_sample(
  function test_sample_extra_batches_min_percentage_of_jurisdiction_ballots_selected (line 359) | def test_sample_extra_batches_min_percentage_of_jurisdiction_ballots_sel...
  function test_sample_extra_batches_hmpb_and_bmd_groups_selected (line 434) | def test_sample_extra_batches_hmpb_and_bmd_groups_selected(
  function test_sample_extra_batches_with_invalid_counting_group (line 530) | def test_sample_extra_batches_with_invalid_counting_group(
  function test_sample_extra_batches_with_combined_batches (line 610) | def test_sample_extra_batches_with_combined_batches(

FILE: server/tests/batch_comparison/test_sample_extra_batches_to_ensure_one_per_jurisdiction.py
  function org_id (line 10) | def org_id(client: FlaskClient, request) -> str:
  function manifests (line 24) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function batch_tallies (line 61) | def batch_tallies(
  function test_sample_extra_batches_to_ensure_one_per_jurisdiction (line 120) | def test_sample_extra_batches_to_ensure_one_per_jurisdiction(

FILE: server/tests/batch_comparison/test_single_jurisdiction_batch_comparison.py
  function jurisdiction_ids (line 11) | def jurisdiction_ids(client: FlaskClient, election_id: str) -> list[str]:
  function manifests (line 32) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function batch_tallies (line 57) | def batch_tallies(
  function test_batch_comparison_single_jurisdiction_discrepancies (line 88) | def test_batch_comparison_single_jurisdiction_discrepancies(

FILE: server/tests/batch_comparison/test_support_batch_comparison.py
  function test_support_get_jurisdiction_batch_comparison (line 6) | def test_support_get_jurisdiction_batch_comparison(
  function test_support_combined_batches (line 38) | def test_support_combined_batches(
  function test_support_invalid_combined_batches (line 220) | def test_support_invalid_combined_batches(

FILE: server/tests/conftest.py
  function mock_openid_configuration_response (line 31) | def mock_openid_configuration_response(method: str, url: str, **kwargs) ...
  function mock_oauth_requests (line 60) | def mock_oauth_requests():
  function reset_test_db (line 75) | def reset_test_db(tmp_path_factory, worker_id):
  function client (line 93) | def client() -> FlaskClient:
  function org_id (line 99) | def org_id(client: FlaskClient, request) -> str:
  function election_id (line 105) | def election_id(client: FlaskClient, org_id: str, request) -> str:
  function jurisdiction_ids (line 113) | def jurisdiction_ids(client: FlaskClient, election_id: str) -> list[str]:
  function contest_ids (line 142) | def contest_ids(
  function election_settings (line 200) | def election_settings(client: FlaskClient, election_id: str):
  function manifests (line 214) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function round_1_id (line 235) | def round_1_id(
  function round_2_id (line 263) | def round_2_id(
  function audit_board_round_1_ids (line 300) | def audit_board_round_1_ids(
  function audit_board_round_2_ids (line 323) | def audit_board_round_2_ids(
  function auth_decorator_test_routes (line 353) | def auth_decorator_test_routes():
  function error_test_routes (line 397) | def error_test_routes():

FILE: server/tests/helpers.py
  function default_ja_email (line 30) | def default_ja_email(election_id: str):
  function post_json (line 34) | def post_json(client: FlaskClient, url: str, obj=None) -> Any:
  function put_json (line 42) | def put_json(client: FlaskClient, url: str, obj) -> Any:
  function patch_json (line 48) | def patch_json(client: FlaskClient, url: str, obj) -> Any:
  function assert_ok (line 54) | def assert_ok(rv: Response):
  function set_logged_in_user (line 62) | def set_logged_in_user(
  function clear_logged_in_user (line 72) | def clear_logged_in_user(client: FlaskClient):
  function set_support_user (line 77) | def set_support_user(client: FlaskClient, email: str):
  function clear_support_user (line 82) | def clear_support_user(client: FlaskClient):
  function create_user (line 87) | def create_user(email=DEFAULT_AA_EMAIL) -> User:
  function create_org_and_admin (line 98) | def create_org_and_admin(
  function add_admin_to_org (line 110) | def add_admin_to_org(org_id: str, user_email: str):
  function create_jurisdiction_admin (line 119) | def create_jurisdiction_admin(jurisdiction_id: str, user_email: str) -> ...
  function create_jurisdiction (line 130) | def create_jurisdiction(
  function create_jurisdiction_and_admin (line 142) | def create_jurisdiction_and_admin(
  function create_election (line 152) | def create_election(
  function audit_ballot (line 175) | def audit_ballot(
  function run_audit_round (line 198) | def run_audit_round(
  function run_audit_round_all_blanks (line 256) | def run_audit_round_all_blanks(
  function scrub_datetime (line 300) | def scrub_datetime(string: str) -> str:
  function scrub_test_jurisdiction_admin_email_uuid (line 304) | def scrub_test_jurisdiction_admin_email_uuid(string: str) -> str:
  function assert_match_report (line 312) | def assert_match_report(report_bytes: bytes, snapshot):
  function assert_is_string (line 319) | def assert_is_string(value):
  function assert_is_int (line 324) | def assert_is_int(value):
  function assert_is_id (line 329) | def assert_is_id(value):
  function assert_is_date (line 335) | def assert_is_date(value):
  function assert_is_passphrase (line 348) | def assert_is_passphrase(value):
  function asserts_startswith (line 354) | def asserts_startswith(prefix: str):
  function compare_json (line 365) | def compare_json(actual_json, expected_json):
  function find_log (line 416) | def find_log(caplog, level: int, message: str) -> logging.LogRecord | None:
  function string_to_bytes_io (line 427) | def string_to_bytes_io(string: str) -> io.BytesIO:
  function upload_file_helper (line 433) | def upload_file_helper(
  function upload_ballot_manifest (line 465) | def upload_ballot_manifest(
  function upload_batch_tallies (line 482) | def upload_batch_tallies(
  function upload_cvrs (line 499) | def upload_cvrs(
  function upload_jurisdictions_file (line 526) | def upload_jurisdictions_file(
  function upload_standardized_contests (line 542) | def upload_standardized_contests(
  function upload_batch_inventory_cvr (line 558) | def upload_batch_inventory_cvr(
  function upload_batch_inventory_tabulator_status (line 579) | def upload_batch_inventory_tabulator_status(
  function zip_cvrs (line 596) | def zip_cvrs(cvrs: list[tuple[io.BytesIO, str]]) -> io.BytesIO:
  function zip_hart_cvrs (line 605) | def zip_hart_cvrs(cvrs: list[str]):
  function no_automatic_task_execution (line 616) | def no_automatic_task_execution():

FILE: server/tests/hybrid/conftest.py
  function election_id (line 10) | def election_id(client: FlaskClient, org_id: str, request):
  function contest_ids (line 22) | def contest_ids(
  function manifests (line 62) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function cvrs (line 97) | def cvrs(

FILE: server/tests/hybrid/test_hybrid.py
  function test_contest_vote_counts_before_cvrs (line 12) | def test_contest_vote_counts_before_cvrs(
  function test_contest_vote_counts (line 75) | def test_contest_vote_counts(
  function test_hybrid_sample_size (line 138) | def test_hybrid_sample_size(
  function test_sample_size_before_manifest (line 172) | def test_sample_size_before_manifest(
  function test_sample_size_before_cvrs (line 197) | def test_sample_size_before_cvrs(
  function test_contest_names_dont_match_cvrs (line 223) | def test_contest_names_dont_match_cvrs(
  function test_contest_choices_dont_match_cvrs (line 267) | def test_contest_choices_dont_match_cvrs(
  function test_hybrid_two_rounds (line 324) | def test_hybrid_two_rounds(
  function test_hybrid_manifest_validation_too_many_votes (line 523) | def test_hybrid_manifest_validation_too_many_votes(
  function test_hybrid_manifest_validation_too_few_cvr_ballots (line 593) | def test_hybrid_manifest_validation_too_few_cvr_ballots(
  function test_hybrid_manifest_validation_few_non_cvr_ballots (line 663) | def test_hybrid_manifest_validation_few_non_cvr_ballots(
  function test_hybrid_manifest_validation_too_many_cvr_votes (line 733) | def test_hybrid_manifest_validation_too_many_cvr_votes(
  function test_hybrid_filter_cvrs (line 776) | def test_hybrid_filter_cvrs(
  function test_hybrid_custom_sample_size (line 829) | def test_hybrid_custom_sample_size(
  function test_hybrid_invalid_sample_size (line 873) | def test_hybrid_invalid_sample_size(
  function test_hybrid_sample_preview (line 952) | def test_hybrid_sample_preview(

FILE: server/tests/hybrid/test_hybrid_manifests.py
  function test_hybrid_manifest (line 9) | def test_hybrid_manifest(
  function test_hybrid_manifest_missing_cvr_column (line 68) | def test_hybrid_manifest_missing_cvr_column(

FILE: server/tests/test_app.py
  function test_index (line 4) | def test_index(client: FlaskClient):
  function test_logo (line 15) | def test_logo(client: FlaskClient):
  function test_static_logo (line 20) | def test_static_logo(client: FlaskClient):

FILE: server/tests/test_auth.py
  function aa_email (line 27) | def aa_email(org_id: str) -> str:
  function election_id (line 37) | def election_id(client: FlaskClient, org_id: str, aa_email: str) -> str:
  function batch_election_id (line 43) | def batch_election_id(client: FlaskClient, org_id: str, aa_email: str) -...
  function jurisdiction_id (line 54) | def jurisdiction_id(election_id: str) -> str:
  function batch_jurisdiction_id (line 60) | def batch_jurisdiction_id(batch_election_id: str) -> str:
  function ja_email (line 66) | def ja_email(jurisdiction_id: str) -> str:
  function batch_ja_email (line 73) | def batch_ja_email(batch_jurisdiction_id: str) -> str:
  function create_round (line 79) | def create_round(election_id: str, round_num=1) -> str:
  function round_id (line 87) | def round_id(election_id: str) -> str:
  function batch_round_id (line 92) | def batch_round_id(batch_election_id: str) -> str:
  function create_audit_board (line 96) | def create_audit_board(jurisdiction_id: str, round_id: str) -> str:
  function audit_board_id (line 110) | def audit_board_id(jurisdiction_id: str, round_id: str) -> str:
  function create_tally_entry_user (line 114) | def create_tally_entry_user(jurisdiction_id: str) -> str:
  function tally_entry_user_id (line 127) | def tally_entry_user_id(batch_jurisdiction_id: str) -> str:
  function check_redirect_contains_redirect_uri (line 134) | def check_redirect_contains_redirect_uri(response, expected_url):
  function test_support_start (line 149) | def test_support_start(client: FlaskClient):
  function test_support_callback (line 154) | def test_support_callback(
  function test_support_callback_rejected (line 182) | def test_support_callback_rejected(
  function test_support_callback_multiple_allowed_domains (line 203) | def test_support_callback_multiple_allowed_domains(
  function test_auditadmin_start (line 221) | def test_auditadmin_start(client: FlaskClient):
  function test_auditadmin_callback (line 226) | def test_auditadmin_callback(client: FlaskClient, aa_email: str):
  function parse_login_code (line 252) | def parse_login_code(text: str):
  function parse_login_code_from_smtp (line 260) | def parse_login_code_from_smtp(mock_smtp):
  function test_jurisdiction_admin_login (line 266) | def test_jurisdiction_admin_login(mock_smtp, client: FlaskClient, ja_ema...
  function test_jurisdiction_admin_two_users (line 319) | def test_jurisdiction_admin_two_users(
  function test_jurisdiction_admin_bad_email (line 335) | def test_jurisdiction_admin_bad_email(client: FlaskClient):
  function test_jurisdiction_admin_reuse_code (line 362) | def test_jurisdiction_admin_reuse_code(mock_smtp, client: FlaskClient, j...
  function test_jurisdiction_admin_smtp_error (line 381) | def test_jurisdiction_admin_smtp_error(mock_smtp, client: FlaskClient, j...
  function test_jurisdiction_admin_bad_code (line 402) | def test_jurisdiction_admin_bad_code(mock_smtp, client: FlaskClient, ja_...
  function test_jurisdiction_admin_expired_code (line 462) | def test_jurisdiction_admin_expired_code(mock_smtp, client: FlaskClient,...
  function test_jurisdiction_admin_too_many_attempts (line 492) | def test_jurisdiction_admin_too_many_attempts(
  function test_audit_board_log_in (line 555) | def test_audit_board_log_in(
  function test_tally_entry_login (line 582) | def test_tally_entry_login(
  function test_tally_entry_reject_login_request (line 718) | def test_tally_entry_reject_login_request(
  function test_tally_entry_wrong_audit_type (line 788) | def test_tally_entry_wrong_audit_type(
  function test_tally_entry_generate_unique_code (line 806) | def test_tally_entry_generate_unique_code(
  function test_tally_entry_invalid_passphrase (line 871) | def test_tally_entry_invalid_passphrase(
  function test_tally_entry_invalid_members (line 898) | def test_tally_entry_invalid_members(
  function test_tally_entry_invalid_code (line 963) | def test_tally_entry_invalid_code(
  function test_logout (line 1076) | def test_logout(client: FlaskClient, aa_email: str):
  function test_support_logout (line 1124) | def test_support_logout(client: FlaskClient, aa_email: str):
  function test_auth0_error (line 1171) | def test_auth0_error(client: FlaskClient):
  function test_audit_board_not_found (line 1184) | def test_audit_board_not_found(
  function test_auth_me_audit_admin (line 1202) | def test_auth_me_audit_admin(client: FlaskClient, aa_email: str):
  function test_auth_me_jurisdiction_admin (line 1215) | def test_auth_me_jurisdiction_admin(
  function test_auth_me_audit_board (line 1251) | def test_auth_me_audit_board(
  function test_auth_me_not_logged_in (line 1275) | def test_auth_me_not_logged_in(client: FlaskClient):
  function test_session_expires_on_inactivity (line 1285) | def test_session_expires_on_inactivity(client: FlaskClient, aa_email: str):
  function test_session_expires_after_lifetime (line 1301) | def test_session_expires_after_lifetime(client: FlaskClient, aa_email: s...
  function test_support_session_expires_on_inactivity (line 1317) | def test_support_session_expires_on_inactivity(client: FlaskClient, aa_e...
  function test_support_session_expires_after_lifetime (line 1342) | def test_support_session_expires_after_lifetime(client: FlaskClient, aa_...
  function test_restrict_access_audit_admin (line 1371) | def test_restrict_access_audit_admin(client: FlaskClient, election_id: s...
  function test_restrict_access_audit_admin_wrong_org (line 1378) | def test_restrict_access_audit_admin_wrong_org(
  function test_restrict_access_audit_admin_not_found (line 1395) | def test_restrict_access_audit_admin_not_found(
  function test_restrict_access_audit_admin_with_jurisdiction_admin (line 1405) | def test_restrict_access_audit_admin_with_jurisdiction_admin(
  function test_restrict_access_audit_admin_audit_board_user (line 1424) | def test_restrict_access_audit_admin_audit_board_user(
  function test_restrict_access_audit_admin_tally_entry_user (line 1444) | def test_restrict_access_audit_admin_tally_entry_user(
  function test_restrict_access_audit_admin_anonymous_user (line 1462) | def test_restrict_access_audit_admin_anonymous_user(
  function test_restrict_access_jurisdiction_admin_jurisdiction_admin (line 1480) | def test_restrict_access_jurisdiction_admin_jurisdiction_admin(
  function test_restrict_access_jurisdiction_admin_wrong_org (line 1491) | def test_restrict_access_jurisdiction_admin_wrong_org(
  function test_restrict_access_jurisdiction_admin_wrong_election (line 1513) | def test_restrict_access_jurisdiction_admin_wrong_election(
  function test_restrict_access_jurisdiction_admin_wrong_jurisdiction (line 1530) | def test_restrict_access_jurisdiction_admin_wrong_jurisdiction(
  function test_restrict_access_jurisdiction_admin_election_not_found (line 1553) | def test_restrict_access_jurisdiction_admin_election_not_found(
  function test_restrict_access_jurisdiction_admin_jurisdiction_not_found (line 1565) | def test_restrict_access_jurisdiction_admin_jurisdiction_not_found(
  function test_restrict_access_jurisdiction_admin_with_audit_admin (line 1573) | def test_restrict_access_jurisdiction_admin_with_audit_admin(
  function test_restrict_access_jurisdiction_admin_with_audit_board_user (line 1584) | def test_restrict_access_jurisdiction_admin_with_audit_board_user(
  function test_restrict_access_jurisdiction_admin_with_tally_entry_user (line 1605) | def test_restrict_access_jurisdiction_admin_with_tally_entry_user(
  function test_restrict_access_jurisdiction_admin_with_anonymous_user (line 1626) | def test_restrict_access_jurisdiction_admin_with_anonymous_user(
  function test_restrict_access_audit_board_with_audit_board_user (line 1641) | def test_restrict_access_audit_board_with_audit_board_user(
  function test_restrict_access_audit_board_with_audit_admin (line 1661) | def test_restrict_access_audit_board_with_audit_admin(
  function test_restrict_access_audit_board_with_jurisdiction_admin (line 1685) | def test_restrict_access_audit_board_with_jurisdiction_admin(
  function test_restrict_access_audit_board_with_tally_entry_user (line 1709) | def test_restrict_access_audit_board_with_tally_entry_user(
  function test_restrict_access_audit_board_with_anonymous_user (line 1732) | def test_restrict_access_audit_board_with_anonymous_user(
  function test_restrict_access_audit_board_wrong_org (line 1752) | def test_restrict_access_audit_board_wrong_org(
  function test_restrict_access_audit_board_wrong_election (line 1784) | def test_restrict_access_audit_board_wrong_election(
  function test_restrict_access_audit_board_wrong_jurisdiction (line 1804) | def test_restrict_access_audit_board_wrong_jurisdiction(
  function test_restrict_access_audit_board_wrong_round (line 1824) | def test_restrict_access_audit_board_wrong_round(
  function test_restrict_access_audit_board_wrong_audit_board (line 1838) | def test_restrict_access_audit_board_wrong_audit_board(
  function test_restrict_access_audit_board_election_not_found (line 1861) | def test_restrict_access_audit_board_election_not_found(
  function test_restrict_access_audit_board_jurisdiction_not_found (line 1874) | def test_restrict_access_audit_board_jurisdiction_not_found(
  function test_restrict_access_audit_board_round_not_found (line 1887) | def test_restrict_access_audit_board_round_not_found(
  function test_restrict_access_audit_board_audit_board_not_found (line 1900) | def test_restrict_access_audit_board_audit_board_not_found(
  function test_restrict_access_tally_entry_with_tally_entry_user (line 1914) | def test_restrict_access_tally_entry_with_tally_entry_user(
  function test_restrict_access_tally_entry_with_audit_admin (line 1931) | def test_restrict_access_tally_entry_with_audit_admin(
  function test_restrict_access_tally_entry_with_jurisdiction_admin (line 1952) | def test_restrict_access_tally_entry_with_jurisdiction_admin(
  function test_restrict_access_tally_entry_with_audit_board (line 1973) | def test_restrict_access_tally_entry_with_audit_board(
  function test_restrict_access_tally_entry_with_anonymous_user (line 1994) | def test_restrict_access_tally_entry_with_anonymous_user(
  function test_restrict_access_tally_entry_election_not_found (line 2011) | def test_restrict_access_tally_entry_election_not_found(
  function test_restrict_access_tally_entry_jurisdiction_not_found (line 2023) | def test_restrict_access_tally_entry_jurisdiction_not_found(
  function test_restrict_access_tally_entry_tally_entry_user_not_logged_in (line 2035) | def test_restrict_access_tally_entry_tally_entry_user_not_logged_in(
  function test_restrict_access_tally_entry_wrong_election (line 2060) | def test_restrict_access_tally_entry_wrong_election(
  function test_restrict_access_tally_entry_wrong_jurisdiction (line 2081) | def test_restrict_access_tally_entry_wrong_jurisdiction(
  function test_support (line 2106) | def test_support(client: FlaskClient):
  function test_csrf (line 2116) | def test_csrf(client: FlaskClient, org_id: str):

FILE: server/tests/test_background_tasks.py
  function db_session (line 39) | def db_session(request):
  function setup (line 57) | def setup():
  function test_task_happy_path (line 63) | def test_task_happy_path(caplog, db_session):
  function test_task_user_error (line 143) | def test_task_user_error(caplog, db_session):
  function test_task_python_error (line 189) | def test_task_python_error(capture_exception, caplog, db_session):
  function test_task_python_error_format (line 238) | def test_task_python_error_format(capture_exception, caplog, db_session):
  function test_task_db_error (line 287) | def test_task_db_error(capture_exception, caplog, db_session):
  function test_task_multiple_run_in_order (line 337) | def test_task_multiple_run_in_order(db_session):
  function test_task_interrupted (line 362) | def test_task_interrupted(caplog, db_session):
  function test_multiple_workers (line 448) | def test_multiple_workers(db_session):
  function test_lock_key (line 518) | def test_lock_key(db_session):
  function test_multiple_workers_lock_on_election (line 556) | def test_multiple_workers_lock_on_election(db_session):
  function test_task_missing_election_id (line 647) | def test_task_missing_election_id():
  function test_task_missing_parameter (line 658) | def test_task_missing_parameter(db_session):
  function test_file_is_processing (line 670) | def test_file_is_processing(db_session):

FILE: server/tests/test_errors.py
  function test_uncaught_exception_500 (line 8) | def test_uncaught_exception_500(client: FlaskClient):
  function test_internal_error_500 (line 22) | def test_internal_error_500(client: FlaskClient):

FILE: server/tests/test_full_hand_tally.py
  function contest_ids (line 13) | def contest_ids(
  function manifests (line 50) | def manifests(client: FlaskClient, election_id: str, jurisdiction_ids: l...
  function test_all_ballots_sample_size (line 84) | def test_all_ballots_sample_size(
  function test_all_ballots_audit (line 99) | def test_all_ballots_audit(
  function test_full_hand_tally_results_validation (line 452) | def test_full_hand_tally_results_validation(
  function test_full_hand_tally_results_unfinalize (line 741) | def test_full_hand_tally_results_unfinalize(

FILE: server/tests/test_helpers.py
  function test_compare_json (line 5) | def test_compare_json():

FILE: server/tests/test_migrations.py
  function alembic_config (line 16) | def alembic_config():
  function alembic_engine (line 22) | def alembic_engine():

FILE: server/tests/test_multi_winner_contest.py
  function contest_ids (line 11) | def contest_ids(
  function test_multi_winner_sample_size (line 47) | def test_multi_winner_sample_size(
  function run_multi_winner_audit_round (line 64) | def run_multi_winner_audit_round(
  function test_multi_winner_two_rounds (line 104) | def test_multi_winner_two_rounds(

FILE: server/tests/test_multiple_targeted_contests.py
  function contest_ids (line 11) | def contest_ids(
  function test_sample_size_round_1 (line 89) | def test_sample_size_round_1(
  function test_multiple_targeted_contests_two_rounds (line 105) | def test_multiple_targeted_contests_two_rounds(
  function test_multiple_targeted_contests_full_hand_tally_error (line 243) | def test_multiple_targeted_contests_full_hand_tally_error(

FILE: server/tests/test_offline_data_entry.py
  function election_settings (line 8) | def election_settings(client: FlaskClient, election_id: str):
  function test_offline_results_empty (line 20) | def test_offline_results_empty(
  function test_run_offline_audit (line 43) | def test_run_offline_audit(
  function test_offline_results_without_audit_boards (line 162) | def test_offline_results_without_audit_boards(
  function test_offline_results_invalid (line 187) | def test_offline_results_invalid(
  function test_offline_results_bad_round (line 256) | def test_offline_results_bad_round(
  function test_offline_results_in_online_election (line 354) | def test_offline_results_in_online_election(
  function test_offline_results_jurisdiction_with_no_ballots (line 383) | def test_offline_results_jurisdiction_with_no_ballots(

FILE: server/tests/test_slack_worker.py
  function setup (line 15) | def setup():
  function test_slack_worker_require_webhook_url (line 21) | def test_slack_worker_require_webhook_url():
  function test_slack_worker_happy_path (line 28) | def test_slack_worker_happy_path(mock_post, client: FlaskClient, org_id:...
  function test_slack_worker_one_notification_at_a_time (line 55) | def test_slack_worker_one_notification_at_a_time(
  function test_slack_worker_error_in_slack_api (line 96) | def test_slack_worker_error_in_slack_api(mock_post, client: FlaskClient,...
  function test_slack_worker_message_format (line 123) | def test_slack_worker_message_format(snapshot):
  function test_slack_worker_truncate_long_error_messages (line 256) | def test_slack_worker_truncate_long_error_messages():

FILE: server/tests/test_websessions.py
  function test_websession_create (line 11) | def test_websession_create():

FILE: server/tests/util/test_binpacking.py
  function bucket (line 6) | def bucket():
  function bucketlist (line 11) | def bucketlist():
  function skewedbucketlist (line 38) | def skewedbucketlist():
  function balancedbucketlist (line 65) | def balancedbucketlist():
  function balancedskewedbucketlist (line 92) | def balancedskewedbucketlist(skewedbucketlist):
  class TestBucket (line 96) | class TestBucket:
    method test_init (line 97) | def test_init(self, bucket):
    method test_add_batch (line 109) | def test_add_batch(self, bucket):
    method test_remove_batch (line 167) | def test_remove_batch(self, bucket):
    method test_comparator (line 249) | def test_comparator(self, bucket):
    method test_repr (line 277) | def test_repr(self, bucket):
  class TestBucketList (line 295) | class TestBucketList:
    method test_init (line 296) | def test_init(self, bucketlist):
    method test_balance (line 301) | def test_balance(self, bucketlist):
    method test_balance_skewed (line 326) | def test_balance_skewed(self, skewedbucketlist):
    method test_repr_print (line 353) | def test_repr_print(self, bucketlist):
  class TestBalancedBucketList (line 386) | class TestBalancedBucketList:
    method test_init (line 387) | def test_init(self, balancedbucketlist):
    method test_is_balanced (line 392) | def test_is_balanced(self, bucketlist, balancedbucketlist):
    method test_balance_skewedbalanced (line 424) | def test_balance_skewedbalanced(self, skewedbucketlist, balancedskewed...
    method test_get_avg_size (line 456) | def test_get_avg_size(self, balancedbucketlist):
    method test_repr (line 459) | def test_repr(self, balancedbucketlist):

FILE: server/tests/util/test_collections.py
  function test_group_by (line 8) | def test_group_by():
  function test_find_first_duplicate (line 23) | def test_find_first_duplicate():
  function test_diff_file_lists_ignoring_order_and_case (line 33) | def test_diff_file_lists_ignoring_order_and_case():

FILE: server/tests/util/test_csv_parse.py
  function parse_csv (line 30) | def parse_csv(csv_string: str, columns: list[CSVColumnType]):
  function test_parse_csv_happy_path (line 35) | def test_parse_csv_happy_path():
  function test_parse_csv_optional_columns (line 56) | def test_parse_csv_optional_columns():
  function test_parse_csv_allow_empty_rows (line 92) | def test_parse_csv_allow_empty_rows():
  function test_parse_csv_composite_unique_key (line 115) | def test_parse_csv_composite_unique_key():
  function test_parse_csv_no_unique_key (line 129) | def test_parse_csv_no_unique_key():
  function test_parse_csv_empty (line 144) | def test_parse_csv_empty():
  function test_parse_csv_no_headers (line 150) | def test_parse_csv_no_headers():
  function test_parse_csv_no_rows_after_headers (line 158) | def test_parse_csv_no_rows_after_headers():
  function test_parse_csv_missing_header (line 164) | def test_parse_csv_missing_header():
  function test_parse_csv_duplicate_header (line 177) | def test_parse_csv_duplicate_header():
  function test_parse_csv_bad_number (line 188) | def test_parse_csv_bad_number():
  function test_parse_csv_bad_email (line 202) | def test_parse_csv_bad_email():
  function test_parse_csv_bad_yes_no (line 218) | def test_parse_csv_bad_yes_no():
  function test_parse_csv_empty_cell_in_column (line 234) | def test_parse_csv_empty_cell_in_column():
  function test_parse_csv_missing_cell_in_row (line 265) | def test_parse_csv_missing_cell_in_row():
  function test_parse_csv_extra_cell_in_row (line 274) | def test_parse_csv_extra_cell_in_row():
  function test_parse_csv_extra_column (line 285) | def test_parse_csv_extra_column():
  function test_parse_csv_not_comma_delimited (line 311) | def test_parse_csv_not_comma_delimited():
  function test_parse_csv_empty_trailing_columns_with_data_in_those_columns (line 324) | def test_parse_csv_empty_trailing_columns_with_data_in_those_columns():
  function test_parse_csv_duplicate_value_in_unique_column (line 339) | def test_parse_csv_duplicate_value_in_unique_column():
  function test_parse_csv_duplicate_value_with_composite_unique_columns (line 353) | def test_parse_csv_duplicate_value_with_composite_unique_columns():
  function test_parse_csv_total_row (line 367) | def test_parse_csv_total_row():
  function test_parse_csv_header_wrong_case (line 492) | def test_parse_csv_header_wrong_case():
  function test_parse_csv_space_in_header (line 514) | def test_parse_csv_space_in_header():
  function test_parse_csv_space_in_value (line 536) | def test_parse_csv_space_in_value():
  function test_parse_csv_comma_in_number (line 556) | def test_parse_csv_comma_in_number():
  function test_parse_csv_empty_row (line 567) | def test_parse_csv_empty_row():
  function test_parse_csv_headers_out_of_order (line 601) | def test_parse_csv_headers_out_of_order():
  function test_parse_csv_headers_out_of_order_with_optional_column (line 608) | def test_parse_csv_headers_out_of_order_with_optional_column():
  function test_parse_csv_empty_trailing_columns (line 618) | def test_parse_csv_empty_trailing_columns():
  function test_parse_csv_excel_mac_newlines (line 628) | def test_parse_csv_excel_mac_newlines():
  function test_parse_csv_real_world_examples (line 989) | def test_parse_csv_real_world_examples():
  function test_parse_csv_excel_file (line 1007) | def test_parse_csv_excel_file():
  function test_parse_csv_pdf_file (line 1021) | def test_parse_csv_pdf_file():
  function test_parse_csv_cant_detect_encoding (line 1034) | def test_parse_csv_cant_detect_encoding():
  function test_parse_csv_xls_mislabeled_as_csv (line 1046) | def test_parse_csv_xls_mislabeled_as_csv():
  function test_parse_csv_replace_bad_chars (line 1061) | def test_parse_csv_replace_bad_chars():

FILE: server/tests/util/test_cvr_snapshot_parse.py
  function test_read_cvr_snapshot_one_entry (line 6) | def test_read_cvr_snapshot_one_entry():
  function test_read_cvr_snapshot_two_entries_equal_length (line 11) | def test_read_cvr_snapshot_two_entries_equal_length():
  function test_read_cvr_snapshot_two_entries_earlier_snapshot_ends_sooner (line 20) | def test_read_cvr_snapshot_two_entries_earlier_snapshot_ends_sooner():
  function test_read_cvr_snapshot_two_entries_earlier_snapshot_ends_later (line 34) | def test_read_cvr_snapshot_two_entries_earlier_snapshot_ends_later():
  function test_read_cvr_snapshot_mismatched_row (line 50) | def test_read_cvr_snapshot_mismatched_row():
  function test_read_cvr_snapshot_many_entries_happy_path (line 65) | def test_read_cvr_snapshot_many_entries_happy_path():
  function test_read_cvr_snapshot_malformed_iterator (line 81) | def test_read_cvr_snapshot_malformed_iterator():

FILE: server/tests/util/test_file_storage.py
  function test_store_file_raises_with_s3_config (line 30) | def test_store_file_raises_with_s3_config(mock_boto_client):
  function test_retrieve_file_streaming (line 101) | def test_retrieve_file_streaming(mock_boto_client):
  function test_file_storage_local_file (line 127) | def test_file_storage_local_file():
  class HappyPathTestConfig (line 158) | class HappyPathTestConfig:
  function test_validate_and_get_standard_file_upload_request_params (line 166) | def test_validate_and_get_standard_file_upload_request_params(mock_reque...
  function test_validate_and_get_standard_file_upload_request_params_errors (line 206) | def test_validate_and_get_standard_file_upload_request_params_errors(moc...
  function test_get_full_storage_path (line 331) | def test_get_full_storage_path():
  function test_read_zip_filenames (line 345) | def test_read_zip_filenames():

FILE: server/tests/util/test_get_json.py
  function test_safe_get_json_dict (line 7) | def test_safe_get_json_dict():
  function test_safe_get_json_list (line 22) | def test_safe_get_json_list():

FILE: server/tests/util/test_hart_parse.py
  function namespace (line 12) | def namespace():
  function test_find_text_xml (line 16) | def test_find_text_xml(namespace):
  function test_find_xml (line 26) | def test_find_xml(namespace):
  function test_findall_xml (line 34) | def test_findall_xml(namespace):
  function test_parse_contest_results (line 43) | def test_parse_contest_results(namespace):

FILE: server/tests/util/test_jsonschema.py
  function test_validate_schema (line 57) | def test_validate_schema():

FILE: server/tests/util/test_strings.py
  function test_format_count (line 4) | def test_format_count():

FILE: server/util/binpacking.py
  class Bucket (line 6) | class Bucket:
    method __init__ (line 7) | def __init__(self, name: str):
    method add_batch (line 13) | def add_batch(self, batch_name: str, batch_size: int) -> None:
    method remove_batch (line 22) | def remove_batch(self, batch_name: str) -> dict[str, int]:
    method __repr__ (line 35) | def __repr__(self) -> str:
    method __gt__ (line 44) | def __gt__(self, other: "Bucket") -> bool:
    method __eq__ (line 47) | def __eq__(self, other: object) -> bool:
  class BucketList (line 53) | class BucketList:
    method __init__ (line 59) | def __init__(self, buckets: list[Bucket]):
    method get_avg_size (line 63) | def get_avg_size(self) -> float:
    method deviation (line 66) | def deviation(self) -> float:
    method balance (line 69) | def balance(self) -> "BucketList":
    method __repr__ (line 134) | def __repr__(self) -> str:
    method pretty_print (line 137) | def pretty_print(self):  # pragma: no cover
  class BalancedBucketList (line 144) | class BalancedBucketList:
    method __init__ (line 152) | def __init__(self, buckets):
    method get_avg_size (line 216) | def get_avg_size(self) -> float:
    method deviation (line 219) | def deviation(self) -> float:
    method __repr__ (line 222) | def __repr__(self) -> str:
    method pretty_print (line 225) | def pretty_print(self):  # pragma: no cover

FILE: server/util/collections.py
  function group_by_iter (line 8) | def group_by_iter(items: Iterable[T], key=None):
  function group_by (line 13) | def group_by(items: Iterable[T], key=None):
  function find_first_duplicate (line 18) | def find_first_duplicate(list: Iterable[T]) -> T | None:
  function diff_file_lists_ignoring_order_and_case (line 27) | def diff_file_lists_ignoring_order_and_case(

FILE: server/util/csv_download.py
  function election_timestamp_name (line 11) | def election_timestamp_name(election: Election) -> str:
  function jurisdiction_timestamp_name (line 17) | def jurisdiction_timestamp_name(election: Election, jurisdiction: Jurisd...
  function csv_response (line 24) | def csv_response(csv_file: IO, filename: str) -> Response:

FILE: server/util/csv_parse.py
  class CSVParseError (line 26) | class CSVParseError(UserError):
  class CSVValueType (line 30) | class CSVValueType(str, Enum):
  class CSVColumnType (line 37) | class CSVColumnType(NamedTuple):
  function parse_csv (line 61) | def parse_csv(file: BinaryIO, columns: list[CSVColumnType]) -> CSVDictIt...
  function is_filetype_csv_mimetype (line 83) | def is_filetype_csv_mimetype(file_type: str) -> bool:
  function read_chunks (line 87) | def read_chunks(file: IO[bytes], chunk_size: int) -> Iterable[bytes]:
  function decode_csv (line 95) | def decode_csv(file: IO[bytes]) -> TextIO:
  function validate_not_empty (line 128) | def validate_not_empty(file: IO[bytes]):
  function validate_comma_delimited (line 134) | def validate_comma_delimited(file: TextIO):
  function strip_whitespace (line 154) | def strip_whitespace(csv: CSVIterator) -> CSVIterator:
  function reject_no_rows (line 158) | def reject_no_rows(csv: CSVIterator) -> CSVIterator:
  function skip_empty_trailing_columns (line 167) | def skip_empty_trailing_columns(csv: CSVIterator) -> CSVIterator:
  function validate_and_normalize_headers (line 198) | def validate_and_normalize_headers(
  function is_empty_row (line 231) | def is_empty_row(row: dict[str, Any]) -> bool:
  function skip_empty_rows (line 235) | def skip_empty_rows(csv: CSVDictIterator) -> CSVDictIterator:
  function reject_empty_cells (line 241) | def reject_empty_cells(
  function validate_and_parse_values (line 260) | def validate_and_parse_values(
  function format_tuple (line 305) | def format_tuple(tup: tuple) -> str:
  function reject_duplicate_values (line 309) | def reject_duplicate_values(
  function reject_total_rows (line 341) | def reject_total_rows(csv: C
Copy disabled (too large) Download .json
Condensed preview — 687 files, each showing path, character count, and a content snippet. Download the .json file for the full structured content (17,982K chars).
[
  {
    "path": ".basedpyright/baseline.json",
    "chars": 4350264,
    "preview": "{\n    \"files\": {\n        \"./fixtures/generate_election.py\": [\n            {\n                \"code\": \"reportDeprecated\",\n"
  },
  {
    "path": ".circleci/config.yml",
    "chars": 3899,
    "preview": "version: 2.1\norbs:\n  browser-tools: circleci/browser-tools@1.4.0\n  node: circleci/node@6.3.0\n  python: circleci/python@2"
  },
  {
    "path": ".github/workflows/add-to-arlo.yml",
    "chars": 366,
    "preview": "name: Adds all issues to the Arlo project\n\non:\n  issues:\n    types:\n      - opened\n\njobs:\n  add-to-project:\n    name: Ad"
  },
  {
    "path": ".gitignore",
    "chars": 143,
    "preview": "*.pyc\n*.DS_Store\nnode_modules\n.mypy_cache\n.pytest_cache\n.coverage*\n.vscode/*.log\n\n# vim temp files\n*~\n*.swo\n*.swp\n\n.devc"
  },
  {
    "path": ".gitmodules",
    "chars": 133,
    "preview": "[submodule \"server/tests/arlo-extra-tests\"]\n\tpath = server/tests/arlo-extra-tests\n\turl = git@github.com:votingworks/arlo"
  },
  {
    "path": ".husky/pre-commit",
    "chars": 59,
    "preview": "#!/bin/sh\n. \"$(dirname \"$0\")/_/husky.sh\"\n\nyarn lint-staged\n"
  },
  {
    "path": ".prettierignore",
    "chars": 15,
    "preview": ".basedpyright/\n"
  },
  {
    "path": ".pylintrc",
    "chars": 17178,
    "preview": "[MASTER]\n\n# A comma-separated list of package or module names from where C extensions may\n# be loaded. Extensions are lo"
  },
  {
    "path": ".python-version",
    "chars": 5,
    "preview": "3.11\n"
  },
  {
    "path": ".slugignore",
    "chars": 86,
    "preview": "client/**/_mocks.ts\nclient/**/*.test.*\nclient/**/testUtilities.tsx\nclient/src/test/**\n"
  },
  {
    "path": ".vscode/settings.json",
    "chars": 48,
    "preview": "{\n  \"files.exclude\": {\n    \"client\": true\n  }\n}\n"
  },
  {
    "path": "LICENSE",
    "chars": 34523,
    "preview": "                    GNU AFFERO GENERAL PUBLIC LICENSE\n                       Version 3, 19 November 2007\n\n Copyright (C)"
  },
  {
    "path": "Makefile",
    "chars": 2703,
    "preview": "SHELL := /bin/bash\n\n#\n# Dev setup\n#\n\ndev-environment:\n\t@echo '⚠️  This command assumes an Ubuntu 24 environment'\n\t@echo\n"
  },
  {
    "path": "Procfile",
    "chars": 911,
    "preview": "release: ./heroku-release-phase.sh\n# gunicorn runs multiple worker processes based on the WEB_CONCURRENCY\n# environment "
  },
  {
    "path": "README.md",
    "chars": 9206,
    "preview": "# Arlo: Open-source risk-limiting audit software by [VotingWorks](https://voting.works)\n\nArlo is a web-based [risk-limit"
  },
  {
    "path": "alembic.ini",
    "chars": 2088,
    "preview": "# A generic, single database configuration.\n\n[alembic]\n# path to migration scripts\nscript_location = server/migrations\n\n"
  },
  {
    "path": "app.json",
    "chars": 627,
    "preview": "{\n  \"addons\": [\"heroku-postgresql:hobby-free\"],\n  \"buildpacks\": [\n    { \"url\": \"heroku/nodejs\" },\n    {\n      \"url\": \"ht"
  },
  {
    "path": "arlo.code-workspace",
    "chars": 493,
    "preview": "{\n  \"folders\": [\n    {\n      \"path\": \".\"\n    },\n    {\n      \"path\": \"client\"\n    }\n  ],\n  \"settings\": {\n    \"remote.SSH."
  },
  {
    "path": "client/.eslintignore",
    "chars": 113,
    "preview": "/build\n/cypress/plugins\n/cypress/integration/examples\n/cypress/end-to-end\n/cypress/support\n*.d.ts\nvite.config.ts\n"
  },
  {
    "path": "client/.eslintrc.js",
    "chars": 3346,
    "preview": "const jsExtensions = ['.js', '.jsx']\nconst tsExtensions = ['.ts', '.tsx']\nconst allExtensions = jsExtensions.concat(tsEx"
  },
  {
    "path": "client/.gitignore",
    "chars": 433,
    "preview": "# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.\n\n# dependencies\n/node_modules\n/.pn"
  },
  {
    "path": "client/.node-version",
    "chars": 8,
    "preview": "22.12.0\n"
  },
  {
    "path": "client/.prettierignore",
    "chars": 52,
    "preview": ".build\nandroid\nbuild\ncoverage\ndist\nios\nnode_modules\n"
  },
  {
    "path": "client/.prettierrc.js",
    "chars": 104,
    "preview": "module.exports = {\n  proseWrap: 'always',\n  semi: false,\n  singleQuote: true,\n  trailingComma: 'es5',\n}\n"
  },
  {
    "path": "client/.stylelintrc-css.js",
    "chars": 236,
    "preview": "// Config for stylelint parsing CSS\nmodule.exports = {\n    extends: [\n      'stylelint-config-palantir',\n      'stylelin"
  },
  {
    "path": "client/.stylelintrc.js",
    "chars": 653,
    "preview": "// Config for stylelint parsing CSS in Styled Components\n// Note the `--fix` flag doesn't yet work for CSS-in-JS\nmodule."
  },
  {
    "path": "client/Makefile",
    "chars": 79,
    "preview": "install:\n\tyarn install\n\nlint:\n\tyarn lint\n\ntest:\n\tyarn test\n\nbuild:\n\tyarn build\n"
  },
  {
    "path": "client/cypress/end-to-end/ballot-comparison.cy.js",
    "chars": 11325,
    "preview": "import 'cypress-file-upload'\n\nbefore(() => cy.exec('./cypress/seed-test-db.sh'))\n\ndescribe('Ballot Comparison Test Cases"
  },
  {
    "path": "client/cypress/end-to-end/ballot-polling.cy.js",
    "chars": 9213,
    "preview": "import 'cypress-file-upload'\n\nbefore(() => cy.exec('./cypress/seed-test-db.sh'))\n\ndescribe('Ballot Polling', () => {\n  c"
  },
  {
    "path": "client/cypress/end-to-end/batch-comparison.cy.js",
    "chars": 7430,
    "preview": "import 'cypress-file-upload'\n\nbefore(() => cy.exec('./cypress/seed-test-db.sh'))\n\ndescribe('Batch Comparison', () => {\n "
  },
  {
    "path": "client/cypress/end-to-end/full-hand-tally.cy.js",
    "chars": 7048,
    "preview": "import 'cypress-file-upload'\n\nbefore(() => cy.exec('./cypress/seed-test-db.sh'))\n\ndescribe('Full Hand Tally Data Entry',"
  },
  {
    "path": "client/cypress/fixtures/CSVs/candidate-total-batch/sample_candidate_totals_by_batch.csv",
    "chars": 179,
    "preview": "Batch Name,Vader,Palpatine\nBatch 1,90,10\nBatch 2,10,10\nBatch 3,600,400\nBatch 4,1000,200\nBatch 5,3000,0\nBatch 6,90,10\nBat"
  },
  {
    "path": "client/cypress/fixtures/CSVs/contest/ballot_comparison_contests.csv",
    "chars": 61,
    "preview": "Contest Name,Jurisdictions\nContest 1,Death Star\nContest 2,all"
  },
  {
    "path": "client/cypress/fixtures/CSVs/contest/sample_standardized_contests.csv",
    "chars": 61,
    "preview": "Contest Name,Jurisdictions\nContest 1,Death Star\nContest 2,all"
  },
  {
    "path": "client/cypress/fixtures/CSVs/contest/sample_standardized_contests_contest_name_col_error.csv",
    "chars": 184,
    "preview": "Contest Name_col,Jurisdictions\nPresident of the United States,all\nCongressional District 2,\"Adams County, Alamosa County"
  },
  {
    "path": "client/cypress/fixtures/CSVs/contest/sample_standardized_contests_jurisdiction_col_error.csv",
    "chars": 184,
    "preview": "Contest Name,Jurisdictions_col\nPresident of the United States,all\nCongressional District 2,\"Adams County, Alamosa County"
  },
  {
    "path": "client/cypress/fixtures/CSVs/cvr/ballot_comparison_cvr.csv",
    "chars": 1080,
    "preview": "Test Audit CVR Upload,5.2.16.1,,,,,,,,,,\n,,,,,,,Contest 1 (Vote For=1),Contest 1 (Vote For=1),Contest 2 (Vote For=2),Con"
  },
  {
    "path": "client/cypress/fixtures/CSVs/cvr/ballot_comparison_cvr_col_error.csv",
    "chars": 1095,
    "preview": "Test Audit CVR Upload,5.2.16.1,,,,,,,,,,,\n,,,,,,,Contest 1 (Vote For=1),Contest 1 (Vote For=1),Contest 2 (Vote For=2),Co"
  },
  {
    "path": "client/cypress/fixtures/CSVs/jurisdiction/sample_jurisdiction_filesheet.csv",
    "chars": 109,
    "preview": "Jurisdiction,Admin Email\nDeath Star,wtarkin@empire.gov\nHoth,admin@rebelalliance.ninja\nTatooine,jabba@hutt.biz"
  },
  {
    "path": "client/cypress/fixtures/CSVs/jurisdiction/sample_jurisdiction_filesheet_jurisdiction_col_error.csv",
    "chars": 113,
    "preview": "Jurisdiction_col,Admin Email\nDeath Star,wtarkin@empire.gov\nHoth,admin@rebelalliance.ninja\nTatooine,jabba@hutt.biz"
  },
  {
    "path": "client/cypress/fixtures/CSVs/manifest/ballot_comparison_manifest.csv",
    "chars": 118,
    "preview": "Tabulator,Batch Name,Number of Ballots\nTABULATOR1,BATCH1,3\nTABULATOR1,BATCH2,3\nTABULATOR2,BATCH1,3\nTABULATOR2,BATCH2,6"
  },
  {
    "path": "client/cypress/fixtures/CSVs/manifest/ballot_comparison_manifest_col_error.csv",
    "chars": 115,
    "preview": "Tabulator,Batch Name,No. of Ballots\nTABULATOR1,BATCH1,3\nTABULATOR1,BATCH2,3\nTABULATOR2,BATCH1,3\nTABULATOR2,BATCH2,6"
  },
  {
    "path": "client/cypress/fixtures/CSVs/manifest/ballot_polling_manifest.csv",
    "chars": 89,
    "preview": "Batch Name,Number of Ballots\n1,117\n2,269\n3,178\n4,213\n5,234\n6,253\n7,120\n8,244\n9,355\n10,134"
  },
  {
    "path": "client/cypress/fixtures/CSVs/manifest/ballot_polling_manifest_col_error.csv",
    "chars": 86,
    "preview": "Batch Name,No. of Ballots\n1,117\n2,269\n3,178\n4,213\n5,234\n6,253\n7,120\n8,244\n9,355\n10,134"
  },
  {
    "path": "client/cypress/fixtures/CSVs/manifest/batch_comparison_manifest.csv",
    "chars": 153,
    "preview": "Batch Name,Number of Ballots\nBatch 1,100\nBatch 2,20\nBatch 3,1000\nBatch 4,1200\nBatch 5,3000\nBatch 6,100\nBatch 7,20\nBatch "
  },
  {
    "path": "client/cypress/fixtures/example.json",
    "chars": 155,
    "preview": "{\n  \"name\": \"Using fixtures to represent data\",\n  \"email\": \"hello@cypress.io\",\n  \"body\": \"Fixtures are a great way to mo"
  },
  {
    "path": "client/cypress/plugins.ts",
    "chars": 1940,
    "preview": "/* eslint-disable @typescript-eslint/camelcase */\nimport fs from 'fs'\nimport path from 'path'\nimport pdf from 'pdf-parse"
  },
  {
    "path": "client/cypress/seed-test-db.sh",
    "chars": 304,
    "preview": "#!/usr/bin/env bash\n\nexport FLASK_ENV=test\ntrap 'kill 0' SIGINT SIGHUP\ncd \"$(dirname \"${BASH_SOURCE[0]}\")\"\ncd ../..\npoet"
  },
  {
    "path": "client/cypress/support/commands.js",
    "chars": 2516,
    "preview": "// ***********************************************\n// This example commands.js shows you how to\n// create various custom"
  },
  {
    "path": "client/cypress/support/e2e.js",
    "chars": 717,
    "preview": "// ***********************************************************\n// This example support/index.js is processed and\n// load"
  },
  {
    "path": "client/cypress.config.ts",
    "chars": 679,
    "preview": "import { defineConfig } from 'cypress'\nimport {\n  getPdfContent,\n  setupMockSmtpServer,\n  configureDownloadDirectory,\n} "
  },
  {
    "path": "client/index.html",
    "chars": 794,
    "preview": "<!DOCTYPE html>\n<html lang=\"en\">\n  <head>\n    <meta charset=\"utf-8\" />\n    <link rel=\"shortcut icon\" href=\"/favicon.ico\""
  },
  {
    "path": "client/package.json",
    "chars": 4486,
    "preview": "{\n  \"name\": \"arlo-client\",\n  \"version\": \"0.1.0\",\n  \"private\": true,\n  \"scripts\": {\n    \"build\": \"vite build\",\n    \"lint\""
  },
  {
    "path": "client/public/99e97f1f-18fd-4ba7-8ce7-189287f60bf3.txt",
    "chars": 8,
    "preview": "Probely\n"
  },
  {
    "path": "client/public/manifest.json",
    "chars": 306,
    "preview": "{\n  \"short_name\": \"React App\",\n  \"name\": \"Create React App Sample\",\n  \"icons\": [\n    {\n      \"src\": \"favicon.ico\",\n     "
  },
  {
    "path": "client/public/sample_ballot_manifest.csv",
    "chars": 99,
    "preview": "Batch Name,Number of Ballots\r\n1,117\r\n2,269\r\n3,178\r\n4,213\r\n5,234\r\n6,253\r\n7,120\r\n8,244\r\n9,355\r\n10,134"
  },
  {
    "path": "client/public/sample_candidate_totals_by_batch.csv",
    "chars": 105,
    "preview": "Batch Name,Trump,Biden,Write-in\r\n1,45,125,0\r\n2,3,3,0\r\n3,778,1944,0\r\n4,395,435,0\r\n5,321,889,1\r\n6,45,133,4"
  },
  {
    "path": "client/public/sample_jurisdiction_filesheet.csv",
    "chars": 126,
    "preview": "\"Jurisdiction\",\"Admin Email\"\n\"Death Star\",\"wtarkin@empire.gov\"\n\"Hoth\",\"admin@rebelalliance.ninja\"\n\"Tatooine\",\"jabba@hutt"
  },
  {
    "path": "client/public/sample_manifest_BC.csv",
    "chars": 215,
    "preview": "Container,Tabulator,Batch Name,Number of Ballots\r\nBox 1,1,1,3\r\nBox 1,2,1,2\r\nBox 1,2,2,5\r\nBox 1,3,1,5\r\nBox 1,3,2,5\r\nBox "
  },
  {
    "path": "client/public/sample_manifest_hybrid.csv",
    "chars": 243,
    "preview": "Container,Tabulator,Batch Name,Number of Ballots,CVR\r\nBox 1,1,1,3,Y\r\nBox 1,2,1,2,N\r\nBox 1,2,2,5,Y\r\nBox 1,3,1,5,N\r\nBox 1"
  },
  {
    "path": "client/public/sample_standardized_contests.csv",
    "chars": 184,
    "preview": "Contest Name,Jurisdictions\r\nPresident of the United States,all\r\nCongressional District 2,\"Adams County, Alamosa County, "
  },
  {
    "path": "client/public/us-states-counties.json",
    "chars": 1435078,
    "preview": "{\n  \"type\": \"Topology\",\n  \"bbox\": [-179.14733999999999, -14.552548999999999, 179.77847, 71.352561],\n  \"transform\": {\n   "
  },
  {
    "path": "client/run-cypress-tests.sh",
    "chars": 608,
    "preview": "#!/usr/bin/env bash\n\nexport ARLO_SMTP_HOST=localhost\nexport ARLO_SMTP_PORT=1025\nexport ARLO_SMTP_USERNAME=cypress-smtp-u"
  },
  {
    "path": "client/src/App.css",
    "chars": 3494,
    "preview": "/* Reset */\n\nhtml {\n  box-sizing: border-box;\n  line-height: 1;\n}\n*,\n*::before,\n*::after {\n  box-sizing: inherit;\n}\n\ntab"
  },
  {
    "path": "client/src/App.test.tsx",
    "chars": 10150,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen } from '@testing-library/rea"
  },
  {
    "path": "client/src/App.tsx",
    "chars": 5143,
    "preview": "import React from 'react'\nimport { Route, RouteProps, Switch, Redirect } from 'react-router-dom'\nimport './App.css'\nimpo"
  },
  {
    "path": "client/src/components/Atoms/AsyncButton.test.tsx",
    "chars": 1480,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { render, screen, waitFor } from '@te"
  },
  {
    "path": "client/src/components/Atoms/AsyncButton.tsx",
    "chars": 883,
    "preview": "import React, { useState, CSSProperties } from 'react'\nimport { IButtonProps, Button } from '@blueprintjs/core'\nimport {"
  },
  {
    "path": "client/src/components/Atoms/CSVForm.tsx",
    "chars": 9674,
    "preview": "/* eslint-disable jsx-a11y/label-has-associated-control */\nimport React, { useState } from 'react'\nimport { Formik, Form"
  },
  {
    "path": "client/src/components/Atoms/CodeInput.test.tsx",
    "chars": 8967,
    "preview": "import { describe, expect, it } from 'vitest'\nimport React, { useState } from 'react'\nimport { render, screen, within, w"
  },
  {
    "path": "client/src/components/Atoms/CodeInput.tsx",
    "chars": 3403,
    "preview": "import React, { useEffect } from 'react'\nimport styled from 'styled-components'\nimport { Classes } from '@blueprintjs/co"
  },
  {
    "path": "client/src/components/Atoms/Confirm.test.tsx",
    "chars": 2743,
    "preview": "import { afterEach, describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { render, screen, within, "
  },
  {
    "path": "client/src/components/Atoms/Confirm.tsx",
    "chars": 2758,
    "preview": "import React, { useState, ReactNode } from 'react'\nimport { Dialog, Classes, Button, Intent } from '@blueprintjs/core'\ni"
  },
  {
    "path": "client/src/components/Atoms/CopyToClipboard.test.tsx",
    "chars": 853,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { render, screen } from '@testing-lib"
  },
  {
    "path": "client/src/components/Atoms/CopyToClipboard.tsx",
    "chars": 1003,
    "preview": "import React, { useState } from 'react'\nimport copy from 'copy-to-clipboard'\nimport { Button } from '@blueprintjs/core'\n"
  },
  {
    "path": "client/src/components/Atoms/Count.test.tsx",
    "chars": 730,
    "preview": "import { test } from 'vitest'\nimport React from 'react'\nimport { render, screen } from '@testing-library/react'\n\nimport "
  },
  {
    "path": "client/src/components/Atoms/Count.tsx",
    "chars": 366,
    "preview": "import React from 'react'\n\ninterface IProps {\n  className?: string\n  count: number\n  plural: string\n  singular: string\n}"
  },
  {
    "path": "client/src/components/Atoms/FileUpload.test.tsx",
    "chars": 13214,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { render as testingLibraryRender, scr"
  },
  {
    "path": "client/src/components/Atoms/FileUpload.tsx",
    "chars": 5797,
    "preview": "import React from 'react'\nimport { H5, FileInput, Button, Callout, AnchorButton } from '@blueprintjs/core'\nimport { useF"
  },
  {
    "path": "client/src/components/Atoms/Form/FormButton.tsx",
    "chars": 1250,
    "preview": "import React from 'react'\nimport { Button } from '@blueprintjs/core'\nimport styled from 'styled-components'\n\nconst Verti"
  },
  {
    "path": "client/src/components/Atoms/Form/FormButtonBar.tsx",
    "chars": 305,
    "preview": "import styled from 'styled-components'\nimport { Colors } from '@blueprintjs/core'\n\nconst FormButtonBar = styled.div`\n  b"
  },
  {
    "path": "client/src/components/Atoms/Form/FormField.test.tsx",
    "chars": 2311,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { render, fireEvent } from '@testing-"
  },
  {
    "path": "client/src/components/Atoms/Form/FormField.tsx",
    "chars": 2018,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport { InputGroup, NumericInput, TextArea } from '@bl"
  },
  {
    "path": "client/src/components/Atoms/Form/FormSection.tsx",
    "chars": 792,
    "preview": "import React, { ReactNode } from 'react'\nimport styled from 'styled-components'\nimport H3Title from '../H3Title'\n\nexport"
  },
  {
    "path": "client/src/components/Atoms/Form/FormWrapper.tsx",
    "chars": 537,
    "preview": "import React, { ReactNode } from 'react'\nimport styled from 'styled-components'\nimport H2Title from '../H2Title'\n\nconst "
  },
  {
    "path": "client/src/components/Atoms/Form/Select.tsx",
    "chars": 144,
    "preview": "import styled from 'styled-components'\nimport { HTMLSelect } from '@blueprintjs/core'\n\nexport default styled(HTMLSelect)"
  },
  {
    "path": "client/src/components/Atoms/Form/__snapshots__/FormField.test.tsx.snap",
    "chars": 2851,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`FormField > renders a Field 1`] = `\n<div>\n  <div"
  },
  {
    "path": "client/src/components/Atoms/Form/_helpers.tsx",
    "chars": 503,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\n\nexport const generateOptions = (count: number): JSX.El"
  },
  {
    "path": "client/src/components/Atoms/Form/styledBits.tsx",
    "chars": 715,
    "preview": "import { Label } from '@blueprintjs/core'\nimport styled from 'styled-components'\nimport FormField from './FormField'\n\nex"
  },
  {
    "path": "client/src/components/Atoms/H2Title.tsx",
    "chars": 436,
    "preview": "import React from 'react'\nimport { H2 } from '@blueprintjs/core'\nimport styled from 'styled-components'\n\n/* stylelint-di"
  },
  {
    "path": "client/src/components/Atoms/H3Title.tsx",
    "chars": 436,
    "preview": "import React from 'react'\nimport { H3 } from '@blueprintjs/core'\nimport styled from 'styled-components'\n\n/* stylelint-di"
  },
  {
    "path": "client/src/components/Atoms/Layout.tsx",
    "chars": 1489,
    "preview": "import styled, { css } from 'styled-components'\n\nexport interface IFlexboxProps {\n  justifyContent?: 'start' | 'center' "
  },
  {
    "path": "client/src/components/Atoms/LinkButton.tsx",
    "chars": 775,
    "preview": "import React from 'react'\nimport { Link, LinkProps } from 'react-router-dom'\nimport { Button, IButtonProps } from '@blue"
  },
  {
    "path": "client/src/components/Atoms/ListAndDetail.tsx",
    "chars": 3254,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport {\n  Button,\n  Classes,\n  Colors,\n  IconName,\n  I"
  },
  {
    "path": "client/src/components/Atoms/RefreshTag.test.tsx",
    "chars": 1120,
    "preview": "import { describe, expect, it } from 'vitest'\nimport { prettifyRefreshStatus } from './RefreshTag'\n\ndescribe('prettifyRe"
  },
  {
    "path": "client/src/components/Atoms/RefreshTag.tsx",
    "chars": 1121,
    "preview": "import React, { useState } from 'react'\nimport styled from 'styled-components'\nimport { Tag } from '@blueprintjs/core'\ni"
  },
  {
    "path": "client/src/components/Atoms/SegmentedControl.test.tsx",
    "chars": 1196,
    "preview": "import { expect, test, vi } from 'vitest'\nimport React from 'react'\nimport userEvent from '@testing-library/user-event'\n"
  },
  {
    "path": "client/src/components/Atoms/SegmentedControl.tsx",
    "chars": 1487,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport { Button, ButtonGroup } from '@blueprintjs/core'"
  },
  {
    "path": "client/src/components/Atoms/Sidebar.test.tsx",
    "chars": 805,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { render } from '@testing-library/rea"
  },
  {
    "path": "client/src/components/Atoms/Sidebar.tsx",
    "chars": 1073,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport { Menu, IMenuItemProps } from '@blueprintjs/core"
  },
  {
    "path": "client/src/components/Atoms/SpacedCard.tsx",
    "chars": 357,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport { Card, Elevation, ICardProps } from '@blueprint"
  },
  {
    "path": "client/src/components/Atoms/StatusBar.tsx",
    "chars": 1223,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport { Classes, H1, H2 } from '@blueprintjs/core'\nimp"
  },
  {
    "path": "client/src/components/Atoms/StatusBox.test.tsx",
    "chars": 16069,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { BrowserRouter as Router, useParams "
  },
  {
    "path": "client/src/components/Atoms/StatusBox.tsx",
    "chars": 10149,
    "preview": "import React, { ReactElement } from 'react'\nimport { useParams } from 'react-router-dom'\nimport styled from 'styled-comp"
  },
  {
    "path": "client/src/components/Atoms/StatusTag.tsx",
    "chars": 1600,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport { Colors, Tag, ProgressBar, ITagProps, Intent } "
  },
  {
    "path": "client/src/components/Atoms/Steps.test.tsx",
    "chars": 2543,
    "preview": "import { describe, expect, it } from 'vitest'\nimport React from 'react'\nimport { render, screen } from '@testing-library"
  },
  {
    "path": "client/src/components/Atoms/Steps.tsx",
    "chars": 4317,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport { Card, Colors, H5, Icon } from '@blueprintjs/co"
  },
  {
    "path": "client/src/components/Atoms/Table.tsx",
    "chars": 6556,
    "preview": "import React, { useEffect } from 'react'\nimport { useTable, useSortBy, Column, Row, SortingRule } from 'react-table'\nimp"
  },
  {
    "path": "client/src/components/Atoms/Wrapper.tsx",
    "chars": 967,
    "preview": "import styled from 'styled-components'\n\nexport const Wrapper = styled.main.attrs({\n  id: 'main',\n  tabIndex: -1,\n})`\n  d"
  },
  {
    "path": "client/src/components/Atoms/__snapshots__/Sidebar.test.tsx.snap",
    "chars": 1902,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`Sidebar > renders all options 1`] = `\n<div>\n  <d"
  },
  {
    "path": "client/src/components/Atoms/react-table-config.d.ts",
    "chars": 1354,
    "preview": "// See docs for instructions on this file:\n// https://github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react"
  },
  {
    "path": "client/src/components/AuditAdmin/ActivityLog.test.tsx",
    "chars": 9997,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen, waitFor, render } from '@te"
  },
  {
    "path": "client/src/components/AuditAdmin/ActivityLog.tsx",
    "chars": 5864,
    "preview": "import React, { useState } from 'react'\nimport { useQuery } from 'react-query'\nimport { HTMLSelect, H1, Button } from '@"
  },
  {
    "path": "client/src/components/AuditAdmin/AuditAdminView.test.tsx",
    "chars": 14151,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { waitFor, fireEvent, screen, within "
  },
  {
    "path": "client/src/components/AuditAdmin/AuditAdminView.tsx",
    "chars": 5594,
    "preview": "import React, { useRef } from 'react'\nimport { useParams, Redirect, useHistory } from 'react-router-dom'\nimport { Spinne"
  },
  {
    "path": "client/src/components/AuditAdmin/Progress/AuditBoardsTable.tsx",
    "chars": 1635,
    "preview": "import React from 'react'\nimport { Button } from '@blueprintjs/core'\n\nimport { Confirm, useConfirm } from '../../Atoms/C"
  },
  {
    "path": "client/src/components/AuditAdmin/Progress/JurisdictionDetail.test.tsx",
    "chars": 25397,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport {\n  render as testingLibraryRender,\n "
  },
  {
    "path": "client/src/components/AuditAdmin/Progress/JurisdictionDetail.tsx",
    "chars": 12884,
    "preview": "/* eslint-disable jsx-a11y/label-has-associated-control */\nimport React, { useState } from 'react'\nimport {\n  Classes,\n "
  },
  {
    "path": "client/src/components/AuditAdmin/Progress/JurisdictionDiscrepancies.tsx",
    "chars": 4663,
    "preview": "import React from 'react'\nimport { Classes, Colors, Dialog, H6, HTMLTable } from '@blueprintjs/core'\nimport styled from "
  },
  {
    "path": "client/src/components/AuditAdmin/Progress/Progress.test.tsx",
    "chars": 49119,
    "preview": "import { afterAll, beforeEach, describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen, withi"
  },
  {
    "path": "client/src/components/AuditAdmin/Progress/Progress.tsx",
    "chars": 18483,
    "preview": "/* eslint-disable react/prop-types */\nimport React, { useState, useCallback } from 'react'\nimport { useParams } from 're"
  },
  {
    "path": "client/src/components/AuditAdmin/Progress/ProgressMap.tsx",
    "chars": 9748,
    "preview": "import React, { useState, useRef, useEffect } from 'react'\nimport styled from 'styled-components'\nimport { select, json,"
  },
  {
    "path": "client/src/components/AuditAdmin/Progress/map-county-corrections.ts",
    "chars": 1831,
    "preview": "/**\n * Some counties in our map topology data have names that are difficult to match\n * to jurisdictions. For example, i"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/ContestForm.tsx",
    "chars": 21135,
    "preview": "/* eslint-disable jsx-a11y/label-has-associated-control */\nimport React from 'react'\nimport equal from 'fast-deep-equal'"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/ContestSelect.test.tsx",
    "chars": 11003,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen, within, waitFor, render } f"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/ContestSelect.tsx",
    "chars": 7541,
    "preview": "/* eslint-disable jsx-a11y/label-has-associated-control */\nimport React, { useState } from 'react'\nimport { Formik, Form"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/Contests.test.tsx",
    "chars": 21177,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { waitFor, render, screen } from '@te"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/Contests.tsx",
    "chars": 634,
    "preview": "/* eslint-disable jsx-a11y/label-has-associated-control */\nimport React from 'react'\nimport ContestForm from './ContestF"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/HybridContestForm.test.tsx",
    "chars": 9919,
    "preview": "import { beforeEach, describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen, waitFor, render"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/__snapshots__/Contests.test.tsx.snap",
    "chars": 44517,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`Audit Setup > Contests > renders empty opportuni"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/__snapshots__/HybridContestForm.test.tsx.snap",
    "chars": 10326,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`Audit Setup > Contests (Hybrid) > Audit Setup > "
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/_mocks.ts",
    "chars": 2817,
    "preview": "export const contestsInputMocks = {\n  inputs: [\n    { key: 'Contest Name', value: 'Contest Name' },\n    { key: 'Name of "
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Contests/schema.ts",
    "chars": 3003,
    "preview": "import * as Yup from 'yup'\nimport number, { parse as parseNumber } from '../../../../utils/number-schema'\nimport { IChoi"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Participants/Participants.test.tsx",
    "chars": 14821,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen, waitFor, render } from '@te"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Participants/Participants.tsx",
    "chars": 3308,
    "preview": "import React from 'react'\nimport { Button } from '@blueprintjs/core'\nimport FormButtonBar from '../../../Atoms/Form/Form"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Participants/_mocks.ts",
    "chars": 574,
    "preview": "import { readFileSync } from 'fs'\nimport { join } from 'path'\n\nexport const jurisdictionFile = new File(\n  [\n    readFil"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/ConfirmLaunch.tsx",
    "chars": 1084,
    "preview": "import React from 'react'\nimport { Classes, Dialog, Intent } from '@blueprintjs/core'\nimport FormButton from '../../../A"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/CvrChoiceNameConsistencyError.tsx",
    "chars": 1910,
    "preview": "import { Callout } from '@blueprintjs/core'\nimport React from 'react'\nimport styled from 'styled-components'\n\nimport { I"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/LabeledValue.tsx",
    "chars": 357,
    "preview": "import React from 'react'\n\ninterface IProps {\n  label: string\n  children: React.ReactNode\n}\n\nconst LabeledValue: React.F"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/Review.test.tsx",
    "chars": 62670,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport userEvent from '@testing-library/user"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/Review.tsx",
    "chars": 38474,
    "preview": "import React, { useState, useEffect } from 'react'\nimport {\n  Callout,\n  RadioGroup,\n  Radio,\n  Spinner,\n  Card,\n  H4,\n "
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/SamplePreview.tsx",
    "chars": 3384,
    "preview": "import React from 'react'\nimport { Dialog, Spinner, Intent, Classes, H4 } from '@blueprintjs/core'\nimport styled from 's"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/StandardizeContestChoiceNamesDialog.tsx",
    "chars": 7099,
    "preview": "import {\n  Button,\n  Callout,\n  Classes,\n  Colors,\n  Dialog,\n  HTMLSelect,\n  HTMLTable,\n} from '@blueprintjs/core'\nimpor"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/StandardizeContestNames.tsx",
    "chars": 5051,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport {\n  HTMLTable,\n  Colors,\n  Dialog,\n  Classes,\n  "
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/_mocks.ts",
    "chars": 2388,
    "preview": "import { IAuditSettings } from '../../../useAuditSettings'\nimport { FileProcessingStatus } from '../../../useCSV'\nimport"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Review/useSampleSizes.ts",
    "chars": 1194,
    "preview": "import { UseQueryOptions, useQuery, UseQueryResult } from 'react-query'\nimport { FileProcessingStatus } from '../../../u"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Settings/Settings.test.tsx",
    "chars": 6640,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { waitFor, screen, render, within } f"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Settings/Settings.tsx",
    "chars": 9202,
    "preview": "import React from 'react'\nimport { Formik, FormikProps, Field, ErrorMessage } from 'formik'\nimport {\n  RadioGroup,\n  Rad"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Settings/schema.ts",
    "chars": 500,
    "preview": "import * as Yup from 'yup'\nimport number from '../../../../utils/number-schema'\n\nconst schema = Yup.object().shape({\n  s"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Settings/states.ts",
    "chars": 1115,
    "preview": "export const states: { [abbreviation: string]: string } = {\n  AL: 'Alabama',\n  AK: 'Alaska',\n  AZ: 'Arizona',\n  AR: 'Ark"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Setup.test.tsx",
    "chars": 10449,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen } from '@testing-library/rea"
  },
  {
    "path": "client/src/components/AuditAdmin/Setup/Setup.tsx",
    "chars": 4990,
    "preview": "/* eslint-disable react/prop-types */\nimport React, { useState } from 'react'\nimport Participants from './Participants/P"
  },
  {
    "path": "client/src/components/AuditAdmin/__snapshots__/ActivityLog.test.tsx.snap",
    "chars": 3878,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`Activity Log > shows a table of activity for the"
  },
  {
    "path": "client/src/components/AuditAdmin/__snapshots__/AuditAdminView.test.tsx.snap",
    "chars": 6827,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`AA setup flow > renders sidebar when authenticat"
  },
  {
    "path": "client/src/components/AuditAdmin/timers.test.tsx",
    "chars": 2382,
    "preview": "/**\n * These tests are segregated because they were creating unreliable interference\n */\n\nimport { afterEach, beforeEach"
  },
  {
    "path": "client/src/components/AuditAdmin/useRoundsAuditAdmin.ts",
    "chars": 4739,
    "preview": "import {\n  UseQueryOptions,\n  UseQueryResult,\n  useQuery,\n  UseMutationResult,\n  useQueryClient,\n  useMutation,\n} from '"
  },
  {
    "path": "client/src/components/AuditBoard/Atoms.tsx",
    "chars": 1845,
    "preview": "import styled from 'styled-components'\nimport { Field } from 'formik'\nimport { RadioGroup, Divider, H5, Colors } from '@"
  },
  {
    "path": "client/src/components/AuditBoard/AuditBoardView.test.tsx",
    "chars": 26638,
    "preview": "import { afterEach, describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { waitFor, screen, within "
  },
  {
    "path": "client/src/components/AuditBoard/AuditBoardView.tsx",
    "chars": 8955,
    "preview": "import React, { useState, useEffect } from 'react'\nimport { H1 } from '@blueprintjs/core'\nimport { Route, Switch, usePar"
  },
  {
    "path": "client/src/components/AuditBoard/Ballot.test.tsx",
    "chars": 10186,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport {\n  render,\n  fireEvent,\n  waitFor,\n "
  },
  {
    "path": "client/src/components/AuditBoard/Ballot.tsx",
    "chars": 7571,
    "preview": "import React from 'react'\nimport { H3, H4, Colors, OL } from '@blueprintjs/core'\nimport styled from 'styled-components'\n"
  },
  {
    "path": "client/src/components/AuditBoard/BallotAudit.tsx",
    "chars": 9029,
    "preview": "import React, { useState } from 'react'\nimport styled from 'styled-components'\nimport { Button, Colors, H3, H4, TextArea"
  },
  {
    "path": "client/src/components/AuditBoard/BlockCheckbox.tsx",
    "chars": 1522,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport { Colors } from '@blueprintjs/core'\n\nconst Block"
  },
  {
    "path": "client/src/components/AuditBoard/BoardTable.test.tsx",
    "chars": 4733,
    "preview": "import { describe, expect, it } from 'vitest'\nimport React from 'react'\nimport { render, screen } from '@testing-library"
  },
  {
    "path": "client/src/components/AuditBoard/BoardTable.tsx",
    "chars": 7815,
    "preview": "/* eslint-disable react/display-name */\n/* eslint-disable react/prop-types */\nimport React from 'react'\nimport styled fr"
  },
  {
    "path": "client/src/components/AuditBoard/MemberForm.test.tsx",
    "chars": 1396,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { render, fireEvent, waitFor } from '"
  },
  {
    "path": "client/src/components/AuditBoard/MemberForm.tsx",
    "chars": 2974,
    "preview": "import React from 'react'\nimport { H1, RadioGroup, Radio } from '@blueprintjs/core'\nimport { Formik, FormikProps, getIn "
  },
  {
    "path": "client/src/components/AuditBoard/SignOff.test.tsx",
    "chars": 1267,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { render, fireEvent, waitFor, screen "
  },
  {
    "path": "client/src/components/AuditBoard/SignOff.tsx",
    "chars": 2133,
    "preview": "import React from 'react'\nimport { Formik } from 'formik'\nimport styled from 'styled-components'\nimport { H1 } from '@bl"
  },
  {
    "path": "client/src/components/AuditBoard/__snapshots__/AuditBoardView.test.tsx.snap",
    "chars": 251413,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`AuditBoardView > ballot interaction > renders ba"
  },
  {
    "path": "client/src/components/AuditBoard/__snapshots__/Ballot.test.tsx.snap",
    "chars": 50409,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`Ballot > redirects if ballot does not exist 1`] "
  },
  {
    "path": "client/src/components/AuditBoard/__snapshots__/BoardTable.test.tsx.snap",
    "chars": 204982,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`BoardTable > enables the submit button when all "
  },
  {
    "path": "client/src/components/AuditBoard/__snapshots__/MemberForm.test.tsx.snap",
    "chars": 5779,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`MemberForm > renders correctly 1`] = `\n<div>\n  <"
  },
  {
    "path": "client/src/components/AuditBoard/__snapshots__/SignOff.test.tsx.snap",
    "chars": 4709,
    "preview": "// Vitest Snapshot v1, https://vitest.dev/guide/snapshot.html\n\nexports[`Sign Off > handles inputs 1`] = `\n<div>\n  <secti"
  },
  {
    "path": "client/src/components/AuditBoard/_mocks.ts",
    "chars": 33535,
    "preview": "import { BallotStatus, Interpretation } from '../../types'\nimport { IAuditBoard } from '../UserContext'\nimport { IBallot"
  },
  {
    "path": "client/src/components/AuditBoard/ballotInterpretation.test.ts",
    "chars": 3245,
    "preview": "import { expect, test } from 'vitest'\nimport {\n  ballotInterpretationFromFormState,\n  ballotInterpretationToFormState,\n "
  },
  {
    "path": "client/src/components/AuditBoard/ballotInterpretation.ts",
    "chars": 1782,
    "preview": "import { IBallotInterpretation, Interpretation } from '../../types'\n\nexport const INVALID_WRITE_IN = 'INVALID_WRITE_IN'\n"
  },
  {
    "path": "client/src/components/Header.test.tsx",
    "chars": 8238,
    "preview": "import { describe, expect, it } from 'vitest'\nimport React from 'react'\nimport { screen, within, waitFor } from '@testin"
  },
  {
    "path": "client/src/components/Header.tsx",
    "chars": 8328,
    "preview": "import React from 'react'\nimport styled from 'styled-components'\nimport {\n  Navbar,\n  NavbarGroup,\n  NavbarHeading,\n  Al"
  },
  {
    "path": "client/src/components/HomeScreen.test.tsx",
    "chars": 19405,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen, within, waitFor } from '@te"
  },
  {
    "path": "client/src/components/HomeScreen.tsx",
    "chars": 19337,
    "preview": "import React, { useState } from 'react'\nimport {\n  Card,\n  RadioGroup,\n  Radio,\n  HTMLSelect,\n  Callout,\n  ButtonGroup,\n"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchInventory.test.tsx",
    "chars": 12902,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen, within, waitFor } from '@te"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchInventory.tsx",
    "chars": 20022,
    "preview": "import React, { useState } from 'react'\nimport { H2, Button, H4, Checkbox, HTMLSelect } from '@blueprintjs/core'\nimport "
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundProgress.tsx",
    "chars": 1238,
    "preview": "import React from 'react'\nimport { ProgressBar, Classes } from '@blueprintjs/core'\nimport styled from 'styled-components"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundSteps.test.tsx",
    "chars": 19419,
    "preview": "import { afterEach, beforeEach, describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen, wait"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundSteps.tsx",
    "chars": 2860,
    "preview": "import React from 'react'\nimport {\n  useRouteMatch,\n  useLocation,\n  Link,\n  Switch,\n  Route,\n  Redirect,\n} from 'react-"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundTallyEntry/BatchDetail.tsx",
    "chars": 21276,
    "preview": "import classnames from 'classnames'\nimport React, { useState } from 'react'\nimport styled from 'styled-components'\nimpor"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundTallyEntry/BatchRoundTallyEntry.test.tsx",
    "chars": 27137,
    "preview": "import { describe, expect, it } from 'vitest'\nimport React from 'react'\nimport { render, screen, within, waitFor } from "
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundTallyEntry/BatchRoundTallyEntry.tsx",
    "chars": 4475,
    "preview": "import React, { useEffect, useState } from 'react'\n\nimport BatchDetail from './BatchDetail'\nimport useContestsJurisdicti"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/BatchRoundTallyEntry/index.ts",
    "chars": 95,
    "preview": "import BatchRoundTallyEntry from './BatchRoundTallyEntry'\n\nexport default BatchRoundTallyEntry\n"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/DownloadBatchRetrievalListButton.tsx",
    "chars": 792,
    "preview": "import React from 'react'\nimport { IButtonProps } from '@blueprintjs/core'\nimport AsyncButton from '../../Atoms/AsyncBut"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/DownloadBatchTallySheetsButton.tsx",
    "chars": 1826,
    "preview": "import React from 'react'\nimport { toast } from 'react-toastify'\nimport * as Sentry from '@sentry/react'\n\nimport { IButt"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/DownloadStackLabelsButton.tsx",
    "chars": 1451,
    "preview": "import React from 'react'\nimport { toast } from 'react-toastify'\nimport * as Sentry from '@sentry/react'\nimport { IButto"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/EnterTalliesStep.tsx",
    "chars": 3592,
    "preview": "import React from 'react'\nimport { Button, Callout, Classes, Colors } from '@blueprintjs/core'\nimport styled from 'style"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/PrepareBatchesStep.tsx",
    "chars": 2814,
    "preview": "import React from 'react'\nimport { H5, UL } from '@blueprintjs/core'\nimport { IJurisdiction } from '../../UserContext'\ni"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/BatchRoundSteps/TallyEntryAccountsStep.tsx",
    "chars": 14175,
    "preview": "import React, { useState } from 'react'\nimport {\n  H5,\n  Button,\n  InputGroup,\n  Card,\n  Icon,\n  Text,\n  Dialog,\n  Class"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/CreateAuditBoards.test.tsx",
    "chars": 1501,
    "preview": "import { expect, test, vi } from 'vitest'\nimport React from 'react'\nimport { render, waitFor, fireEvent } from '@testing"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/CreateAuditBoards.tsx",
    "chars": 2306,
    "preview": "import React from 'react'\nimport { Formik, Field } from 'formik'\nimport styled from 'styled-components'\nimport { generat"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/FullHandTallyDataEntry.test.tsx",
    "chars": 10060,
    "preview": "import { describe, expect, it, vi } from 'vitest'\nimport React from 'react'\nimport { screen, fireEvent, within } from '@"
  },
  {
    "path": "client/src/components/JurisdictionAdmin/FullHandTallyDataEntry.tsx",
    "chars": 16583,
    "preview": "import React, { useState } from 'react'\nimport { useParams } from 'react-router-dom'\nimport {\n  Formik,\n  FormikProps,\n "
  }
]

// ... and 487 more files (download for full content)

About this extraction

This page contains the full source code of the votingworks/arlo GitHub repository, extracted and formatted as plain text for AI agents and large language models (LLMs). The extraction includes 687 files (16.2 MB), approximately 4.3M tokens, and a symbol index with 2445 extracted functions, classes, methods, constants, and types. Use this with OpenClaw, Claude, ChatGPT, Cursor, Windsurf, or any other AI tool that accepts text input. You can copy the full output to your clipboard or download it as a .txt file.

Extracted by GitExtract — free GitHub repo to text converter for AI. Built by Nikandr Surkov.

Copied to clipboard!