# Elsewhere data ledger

This is a private, local educational adaptation. No data-provider endorsement is implied.

Snapshot downloaded **2026-10-13**. Simulation/data version **1**. The full numeric file is `src/data/world-v1.json`. Every metric carries `value`, `year`, and `basis`; imputed values also carry `donorYears`. `data/manifest.json` records each download URL and SHA-256. Original responses are in `data/raw/`. Data retrieval is a development-time operation; **there are no runtime data requests**.

## UN births: actual projected counts, not fabricated country weights

- Producer: United Nations, Department of Economic and Social Affairs, Population Division (2024), **World Population Prospects 2024, Online Edition**.
- Variable: live births during the calendar year, all sexes, all ages, **medium scenario for 2026**. These are projections, not observed 2026 birth registrations or live daily counts.
- Official home: https://population.un.org/wpp/
- Original demographic workbook: https://population.un.org/wpp/assets/Excel%20Files/1_Indicator%20(Standard)/EXCEL_FILES/1_General/WPP2024_GEN_F01_DEMOGRAPHIC_INDICATORS_FULL.xlsx
- Distribution/processing: **Our World in Data**, https://ourworldindata.org/grapher/number-of-births-per-year
- CSV: https://ourworldindata.org/grapher/number-of-births-per-year.csv
- Chart metadata: https://ourworldindata.org/grapher/number-of-births-per-year.metadata.json
- Full series metadata: https://api.ourworldindata.org/v1/indicators/950622.metadata.json
- License: **UN CC BY 3.0 IGO**, https://creativecommons.org/licenses/by/3.0/igo/ (recorded in the saved series metadata); OWID's processing is **CC BY 4.0**, https://ourworldindata.org/faqs#how-can-i-use-and-cite-your-work. Underlying third-party terms remain applicable.
- The downloaded metadata includes **the 2026-01-19 Togo interim revision**, accessed by OWID on 2026-03-31. Original update URL: https://population.un.org/wpp/assets/Excel%20Files/1_Indicator%20(Standard)/WPP2024_CSV_files_update.zip. We do not mislabel this snapshot as the untouched July 2024 file.
- Derivation: select CSV rows with `Year == 2026`, use **`Projected (Projected)`** (not the historical `Number of births` column), match ISO3 to World Bank non-aggregate country records, retain positive counts, round to whole births, sort by ISO3. No hand-entered birth counts.
- Coverage: **215 countries/territories**, **132,287,690 births**, approximately **99.837%** of the UN world projection. Probability is `country.births / includedBirths`. Country/territory coverage is not a sovereignty claim. Unmatched territories are excluded, not assigned made-up counts. The simulation is conditional on this stated coverage.

## World Bank World Development Indicators

- Source: https://databank.worldbank.org/source/world-development-indicators
- API documentation: https://datahelpdesk.worldbank.org/knowledgebase/articles/889392-about-the-indicators-api-documentation
- License: **Creative Commons Attribution 4.0**, subject to the World Bank dataset terms and underlying provider notices: https://datacatalog.worldbank.org/public-licenses#cc-by and https://www.worldbank.org/en/about/legal/terms-of-use-for-datasets. Indicator landing pages display licensing and name original providers. Attribution is to the World Bank WDI and those providers, not a claim that the World Bank collected every value.
- Country metadata, regions, income group classification, ISO2/ISO3 and geographic coordinates: https://api.worldbank.org/v2/country?format=json&per_page=400. This is the classification returned on the retrieval date, **not a historical classification aligned to each indicator's observation year**. Region `NA` records (aggregates) are excluded. The coordinates are country metadata/capital reference points, used only for geographic markers; no birthplace city is inferred.
- Indicator URL pattern: `https://api.worldbank.org/v2/country/all/indicator/{CODE}?format=json&date=2015:2024&per_page=20000`. The script asserts a single API page, rather than silently dropping pagination.
- Metadata URL pattern: `https://api.worldbank.org/v2/indicator/{CODE}?format=json`; saved alongside observations. These provide exact WDI titles, definitions and provider/source organizations.
- Years: latest non-null value **within 2015-2024** for each country/indicator. The lagged window is deliberate and frozen. This is not a claim to use the latest data available worldwide in October 2026. An observation may itself be a provider estimate or modeled value.

| Bundled field | WDI code and exact source link | Unit | Main original provider / use |
|---|---|---|---|
| lifeFemale | [SP.DYN.LE00.FE.IN](https://data.worldbank.org/indicator/SP.DYN.LE00.FE.IN) | years at birth | UN WPP and national sources; calibrate female lifespan |
| lifeMale | [SP.DYN.LE00.MA.IN](https://data.worldbank.org/indicator/SP.DYN.LE00.MA.IN) | years at birth | UN WPP and national sources; calibrate male lifespan |
| sexRatio | [SP.POP.BRTH.MF](https://data.worldbank.org/indicator/SP.POP.BRTH.MF) | male births per female birth | UN WPP; probability r/(1+r) |
| urban | [SP.URB.TOTL.IN.ZS](https://data.worldbank.org/indicator/SP.URB.TOTL.IN.ZS) | percent of population | UN World Urbanization Prospects, national definitions; urban/rural proxy |
| gdpPpp | [NY.GDP.PCAP.PP.CD](https://data.worldbank.org/indicator/NY.GDP.PCAP.PP.CD) | current international dollars per person (PPP) | World Bank ICP/national accounts; context and explicitly illustrative income scenario |
| infantMortality | [SP.DYN.IMRT.IN](https://data.worldbank.org/indicator/SP.DYN.IMRT.IN) | deaths before one per 1,000 live births | UN Inter-agency Group for Child Mortality Estimation (UN IGME); childhood survival |
| under5Mortality | [SH.DYN.MORT](https://data.worldbank.org/indicator/SH.DYN.MORT) | deaths before five per 1,000 live births | UN IGME; cumulative under-five survival |
| primary | [SE.PRM.CMPT.ZS](https://data.worldbank.org/indicator/SE.PRM.CMPT.ZS) | primary completion rate, percent of relevant age group | UNESCO Institute for Statistics; pathway proxy |
| secondary | [SE.SEC.CMPT.LO.ZS](https://data.worldbank.org/indicator/SE.SEC.CMPT.LO.ZS) | lower-secondary completion rate, percent of relevant age group | UNESCO UIS; pathway proxy |
| tertiary | [SE.TER.ENRR](https://data.worldbank.org/indicator/SE.TER.ENRR) | gross tertiary enrollment, percent | UNESCO UIS; proxy, **not graduation probability** |
| literacy | [SE.ADT.LITR.ZS](https://data.worldbank.org/indicator/SE.ADT.LITR.ZS) | literacy, percent of population aged 15+ | UNESCO UIS; country context only |
| fertility | [SP.DYN.TFRT.IN](https://data.worldbank.org/indicator/SP.DYN.TFRT.IN) | total fertility, births per woman | UN WPP/national statistics; coarse family-size proxy, **not completed cohort fertility** |
| agriculture | [SL.AGR.EMPL.ZS](https://data.worldbank.org/indicator/SL.AGR.EMPL.ZS) | percent of employment | ILO modeled estimates; broad sector draw |
| industry | [SL.IND.EMPL.ZS](https://data.worldbank.org/indicator/SL.IND.EMPL.ZS) | percent of employment | ILO modeled estimates; services are the residual |
| employment | [SL.EMP.TOTL.SP.ZS](https://data.worldbank.org/indicator/SL.EMP.TOTL.SP.ZS) | employment-to-population ratio, 15+, percent | ILO modeled estimates; coarse employment scenario, **not a new entrant's job probability** |

### Missingness and transformation

Missing country indicators are filled in this deterministic order: median of observed peers in the same World Bank region AND income group with at least 3 peers; otherwise income-group median with at least 3 peers; otherwise median of all observed countries. Donors can have different observation years. Donor-year ranges are saved. Source observations are never overwritten with clamped values; probability clamping happens only in the simulation. Thus rates above 100% remain visible in the data explorer.

Gross completion/enrollment ratios can exceed 100% because the numerator includes people outside the official age cohort. They are clipped to [0,1] when used as probabilities. Secondary probability cannot exceed primary, and tertiary cannot exceed secondary. This improves internal consistency but does **not** convert aggregate indicators into causal individual models.

A missing literacy observation is common in high-income countries; we do not fabricate 99% literacy for them. Literacy is displayed as context and is not used to decide the education pathway. Group medians are transparent approximations, not official country estimates.

## Simulation assumptions (original model, not sourced measurements)

- Stable FNV-1a seed hashing plus Mulberry32; ASCII seeds 1-64 characters. Prefix `elsewhere:v1:` freezes the stream contract. Countries sorted by ISO3. New source data or changed RNG calls require a new supported model version.
- Sex draw uses binary categories available in the source; not gender identity. Urbanization is not newborn-specific; setting remains fixed.
- Infant mortality `q0`; cumulative under-five mortality `q5`; one categorical draw avoids double-counting. Conditional ages are Uniform(0,1) and Uniform(1,5). Minimum simulated age 0.01 year. UI rounds ages down, displaying less than one month when appropriate.
- Surviving to five: `age = 5 + scale * (-ln(1-u))^(1/5)`. Weibull shape = 5; `scale = (conditionalMean - 5) / Gamma(1.2)`, `Gamma(1.2)=0.9181687423997606`; `conditionalMean = (e0 - q0*0.5 - (q5-q0)*3)/(1-q5)`. Maximum 120 years. Cap introduces a small mean bias. It is not a full age-specific life table.
- School milestones at 6, 16, 22; qualification gates at 12, 16, 22. A shared schooling draw makes completion paths nested. Primary completion is also used as the school-entry proxy; this conflates entry/completion and is an explicit simplification.
- Work at 18 or 22, conditioned on survival. Broad sector only, no country stereotypes or implied job prestige. The national 15+ employment ratio is used for a single working-life scenario, not modeled yearly employment spells.
- Income only for modeled paid employment: PPP GDP × 0.55 × education multiplier (0.75 primary/none, 1 secondary, 1.4 tertiary) × mean-one lognormal noise sigma 0.65; rounded to 100 international dollars. A zero rounded result means a very small modeled amount, not an observed zero wage. **GDP is not pay, PPP international dollars are not USD, and this is not a validated income distribution.**
- Marriage: 72% assumed chance; uniform integer age 22-36, only if alive. Not country marriage observations.
- Children: Poisson(period fertility, clamped 0-10), max loop 20; used for either sex independently of marriage. First birth integer 22-33, later intervals 2-4 years; events omitted after death or age 49. No claim to model completed fertility, adoption, all partnerships or diverse family structures.
- Original fictional memories; age-65 retirement/change-of-pace narrative if employed and alive. Not pension eligibility data. No life-value, happiness or desirability score.
- No future forecasts of medicine, conflict, climate, migration, structural inequality, individual illness or wealth inheritance. Country indicators from different years are held fixed. Dependence between urbanization, education and income is mostly omitted; causality is not established.

## Geographic and design assets

- **Natural Earth 1:110m land geometry**, bundled through `world-atlas@2.0.2`: https://github.com/topojson/world-atlas and https://www.naturalearthdata.com/about/terms-of-use/. Natural Earth data are **public domain**; world-atlas packaging is **ISC**. SVGs are projected with D3 geo and TopoJSON; country metadata points are visual reference points, not precise place-of-birth claims. Boundaries do not express a political position.
- **Manrope** and **DM Sans** variable fonts, locally bundled through Fontsource: https://fontsource.org/fonts/manrope and https://fontsource.org/fonts/dm-sans. **SIL Open Font License 1.1**. Licenses are copied to `public/licenses/`.
- **Phosphor Icons**, https://phosphoricons.com/, **MIT**. All application icons belong to this family. The small favicon uses a simple original geometric globe mark.
- All page copy, layout, style, simulated memories, share-card composition and static OG composition were authored for Elsewhere. No code, text, imagery or design assets were taken from the site mentioned in the brief.

## Reproduce offline

```sh
npm run data:build
npm test
npm run build
```

`data:build` reads the committed raw source responses only and rewrites the same JSON and manifest deterministically. It requires Python 3 standard library. `npm run data:refresh` deliberately uses curl to update upstream responses; sources can be revised. Archive v1 and implement a new version before distributing changed data so existing shared links keep their meaning. Normal installation/build/tests do not call data providers.

## Exact observation-year ranges in this bundle

These ranges refer to direct country observations selected by the script. Per-country years and donor-year ranges remain in the JSON.

| Field | Earliest selected year | Latest selected year | Imputed countries (of 215) |
|---|---:|---:|---:|
| lifeFemale | 2024 | 2024 | 0 |
| lifeMale | 2024 | 2024 | 0 |
| sexRatio | 2024 | 2024 | 0 |
| urban | 2024 | 2024 | 0 |
| gdpPpp | 2015 | 2024 | 16 |
| infantMortality | 2024 | 2024 | 20 |
| under5Mortality | 2024 | 2024 | 20 |
| primary | 2015 | 2024 | 33 |
| secondary | 2015 | 2024 | 34 |
| tertiary | 2015 | 2024 | 43 |
| literacy | 2016 | 2024 | 96 |
| fertility | 2024 | 2024 | 0 |
| agriculture | 2021 | 2024 | 29 |
| industry | 2021 | 2024 | 29 |
| employment | 2021 | 2024 | 29 |

### Unmatched 2026 country/territory series

The exact unmatched geographic series in the OWID file are: Anguilla (AIA), Bonaire/Sint Eustatius/Saba (BES), Cook Islands (COK), Falkland Islands (FLK), French Guiana (GUF), Guadeloupe (GLP), Guernsey (GGY), Jersey (JEY), Kosovo (OWID_KOS), Martinique (MTQ), Mayotte (MYT), Montserrat (MSR), Niue (NIU), Reunion (REU), Saint Barthelemy (BLM), Saint Helena (SHN), Saint Pierre and Miquelon (SPM), Taiwan (TWN), Tokelau (TKL), Vatican (VAT), Wallis and Futuna (WLF), and Western Sahara (ESH). Names follow the source. The unmatched records include ISO naming mismatches as well as places without a separate World Bank entry; this v1 uses strict code matching and makes no manual political or statistical reassignment. The world total is **132,503,470** projected births; a provider world aggregate can differ slightly from the sum of separately rounded country series.

## Interactive game v2 (separate from the frozen v1 model)

The v1 data, RNG stream and `/life/?seed=…&v=1` results remain unchanged. New draws use `v=2`; they start an interactive session rather than returning a precomputed obituary. A seed, settings, choices and annual focus together determine a v2 life. A shared URL reproduces its **birth**, not its subsequent choices. Notes stay in React memory and are never sent anywhere. Reload starts over.

### Additional weights and factual context

`npm run data:game` reads saved inputs without network access and generates `src/data/game-weights.json`. `data/game-manifest.json` records the separate SHA-256 checksums. The original data manifest is not repurposed.

- **Era weights:** the existing UN WPP / OWID births CSV supplies observed/historical **1986** births and medium-projection **2026 / 2066** births. Strict ISO3 matching uses the same 215-country scope; missing/nonpositive era weights are excluded from that draw. Birth probabilities are normalized over included positive weights for the selected year. `any` selects one of those three years with equal game probability. Mortality has its own WPP era inputs below. Other indicators retain their v1 observation years; the game is not a reconstruction of historical medicine or a forecast of future living standards. Certificates and cards show birth-share probabilities for the selected birth year even when population weighting is selected.
- **Population weighting:** World Bank WDI [`SP.POP.TOTL`](https://data.worldbank.org/indicator/SP.POP.TOTL), observed **2024**, downloaded 2026-10-13 from `https://api.worldbank.org/v2/country/all/indicator/SP.POP.TOTL?format=json&date=2024&per_page=400`. Saved in `data/raw/game-population-2024.json`; pagination is asserted. Positive values for matched countries are used; missing values receive weight **zero**, never an invented population. This is explicitly labeled “2024” in all era settings. World Bank terms described above apply.
- **Tobacco:** [WHO, Tobacco and nicotine, 26 June 2026](https://www.who.int/en/news-room/fact-sheets/detail/tobacco), greater than **7 million deaths per year** worldwide. This context appears in the smoking and quitting decisions. Game quit-success odds and health effects are not clinical treatment estimates.
- **Chronic illness:** [WHO, Noncommunicable diseases, 25 September 2025](https://www.who.int/news-room/fact-sheets/detail/noncommunicable-diseases), **75% of non-pandemic deaths globally in 2021**. Used as background for health-related choices and adult cause-of-death context. The fictional assigned cause is not sampled from a validated country cause-of-death distribution.
- **Actual salary benchmarks:** US Bureau of Labor Statistics Occupational Outlook Handbook, **May 2025 annual median wages**: [software developers **USD 135,980**](https://www.bls.gov/ooh/computer-and-information-technology/software-developers.htm), [registered nurses **USD 97,550**](https://www.bls.gov/ooh/healthcare/registered-nurses.htm), [electricians **USD 63,190**](https://www.bls.gov/ooh/construction-and-extraction/electricians.htm). Official pages checked 2026-10-13; newer values supersede their May 2024 figures. These are **US medians across experience levels**, neither entry salaries nor international dollars. The first-job card shows these observed benchmarks separately from the fictional **local PPP offers**. We do not have occupational wage data for every country. Local offers remain game estimates, not observed local wage statistics.

Only original paraphrases and scalar facts are used from WHO/BLS; their site art and article prose are not reproduced. The transcribed values, scope, years and source links are in `data/raw/game-facts.json`. Every other decision cites a relevant frozen WDI metric via `SourceFact`, including observation year or donor-year range and whether the value is a country observation or a group-median estimate. A statistic supplies context; it does not validate the displayed success odds.

### Frozen v2 mortality inputs

Source: **United Nations, Department of Economic and Social Affairs, Population Division (2024), World Population Prospects 2024, Online Edition**, [official downloads](https://population.un.org/wpp/downloads/), processed by Our World in Data (CC BY attribution). The [OWID life-expectancy projection metadata](https://ourworldindata.org/grapher/future-life-expectancy-projections) describes period LE and the medium variant. Direct UN downloads were unavailable from this environment; the frozen data are fetched from OWID's documented indicator API, with upstream UN provenance retained in each metadata response.

Downloaded **2026-10-13**. Eight source series: male LE estimates/medium **950948/950951**, female **950938/950941**, infant mortality **950970/950973**, under-five mortality **950974/950977**. Each original JSON data and metadata response is losslessly gzip-compressed in `data/raw/wpp-mortality/`; `data/mortality-manifest.json` records exact endpoint URLs and compressed-file SHA-256 checksums. `scripts/build_mortality_data.py` selects exact ISO3/year matches for all 215 countries and **1986, 2026, 2066**, with no missing-country imputation. Childhood rates are both-sex probabilities: OWID percentage values are divided by **100**, not 1,000. The certificate converts probabilities to deaths per 1,000 for display. LE is in years, separate by sex.

`npm run data:mortality` reproduces `src/data/mortality.json` offline. Only an explicit `python3 scripts/build_mortality_data.py --refresh` fetches upstream responses. Normal builds/tests make no provider calls. 1986 uses estimates; 2026 and 2066 use the WPP medium projection. Mortality is stationary at the selected period's rates: this is neither a real cohort forecast nor a reconstruction of historical/future socioeconomic conditions.

### Explicit v2 game rules

- **37 original decision definitions**, each with 2–4 options, all stories/options/consequences translated into en/ja/ko/zh. A life only receives eligible events. Ages are seed-keyed integer draws inside event windows; prior choices gate university fields, service/military, job retries, smoking cessation, family, business trouble, debt and retirement follow-ups. Knowledge/training affects relevant decision odds. A Bernoulli draw resolves each chosen option. Fees can apply even on failure; failed and successful consequences differ.
- **Randomness:** FNV-1a/Mulberry32 from the v1 utility with a separate `elsewhere:v2:` namespace and purpose-specific keys. Birth, each event, peer identity and outcome draws cannot consume each other's random stream. The engine is pure and does not read Date, browser APIs or ambient RNG. Four peers run independent full engine lives with deterministic automatic choices; their progress is disclosed at the player's current age, and final lifespans are compared on the result page.
- **Survival:** `src/game/mortality.ts` uses WPP sex/era LE and both-sex infant/under-five death probabilities. Age 0 hazard is `-ln(1-q0)`; ages 1–4 share `-ln((1-q5)/(1-q0))/4`. Adult annual hazards are Makeham background `0.00015 + 0.008*q5` plus `scale*exp(slope*(age-75))`. Scale is numerically fitted so the integrated survival area equals LE at birth; the initial slope 0.095 increases as needed to bound age-100 survival at HR 0.7 to 1.5% (3% when LE ≥85). The mean is re-fitted after each slope change. Annual `q[x]=1-exp(-hazard[x])`; within each year risk is constant. These age-pattern and tail constraints are **game approximations**, not measured UN age-specific tables. There is a final forced death at 110, included in calibration. LE is capped at 94 (selected input maximum 93.398, so the cap currently changes none). The period table stays fixed as the character ages; future years beyond 2066 never add life expectancy.
- **Choice risk:** after age 5, health contributes `exp((75-health)/250)`, smoking ×1.18, chronic illness ×1.12, and income ×0.96–1.04 (adults only). The combined HR is clamped to [0.7,1.5]. These are gameplay constants, not causal medical estimates. One seeded exponential death budget is integrated by the same function in player, peer and mortality-report simulations. Family mortality uses this period model conditional on current age; pets retain their fictional lifespan rule. No QA survival override exists in production.
- **Survival UI:** curve, reflection, clipboard text and PNG share use the baseline cohort's male/female survival mixture, weighted by the frozen WDI birth sex ratio. This matches wording about all children born in the selected era, before personal choices; it is not a measured cohort or a causal counterfactual. The report tests unmodified HR=1 calibration; separate engine tests exercise covariates, peers, conditional family draws and playback equivalence.
- **Clock:** normal duration is 30/60/90 minutes per 80 simulated years at 1×, excluding decisions/reflections; early deaths shorten a session and longevity lengthens it. Speeds are 1/2/4/8/16×. Engine updates use quarter-year boundaries. Next decision advances the same engine; it cannot bypass death or enabled reflection gates. `qa=1` compresses only presentation time (1.5 seconds/year at 1×, shorter transitions/countdowns) and allows a known seed through the landing. It does not alter simulation probabilities or data.
- **Identity:** names combine small curated, locale/country-language naming palettes and territory mappings. These are fictional representative names, not a demographic name distribution or complete coverage of cultural naming conventions. Household setting, parental ages/jobs, religion/tradition and income fifth are explicitly fictional; no ethnicity/caste/religion probabilities are presented as country data. Income fifth is a uniform five-way draw. City/rural comes from the v1 urban-population proxy; the scene depicts an unnamed neighborhood. Capital coordinates are used only for the country mini-map ping.
- **Game meters:** health, happiness, knowledge and relationships are bounded [0,100]. They are fictional player-state meters, not national rankings or human-worth measures. Focus effects occur once per birthday. Switching focus does not award instant points. Aging, illness, bereavement, work, learning and care affect these meters. Family members have fictional lifetimes; partners can leave, children move out at 21, and pets have modeled 8–18-year lifetimes. Flashbacks store historical household/location/home states.
- **Money:** all playable budgets use PPP international dollars and frozen GDP context. First-job offers are GDP PPP × role factors (0.78 technology / 0.56 care-support / 0.40 trade). Other event multipliers, treatment fees, tuition, purchase prices, grants and debt amounts are declared in `events.ts`. These are **not observed wages, medical bills, credit quotes or housing prices**. Annual living expenses are GDP PPP × `(0.16 + 0.045 × dependent children)`; budgeting cuts them 20%; fictional tax is 15% of pay; negative wealth has 4% interest. Earned income grows 1.2% annually or 3.5% with work focus. Investment focus uses a seeded return between −7% and +13% on positive wealth. No trade is performed. Yearly wealth changes reconcile with the ledger, including between-birthday decision costs and transfers.
- **Ranks:** a logistic game percentile `100/(1+exp(-1.7*ln(income/median)))`, with country “median” = GDP PPP × 0.45 and global reference = 12,000 PPP Intl$. These reference values are **assumptions**, not a validated world income distribution. UI labels both ranks as modeled. The ledger reflects the game's simplified annual accrual, not a personal financial statement.
- **Live landing:** a small visual population with deterministic simulated births/deaths since page open. Initial dots use population weights; new dots use birth weights. Four visual births per second and artificial dot lifetimes are animation rules, **not live global birth/death measurements**. Hover/title locations identify their country only.
- **Original assets:** `pixels.ts` constructs our avatar from rectangles; `Scene.tsx` draws the house, city/trees, family, pets and weather in SVG. Canvas export uses the same sprite geometry. No reference PNG is a runtime asset or a tracing template. Natural Earth remains the only geographic geometry source. Music and its controls were removed after quality feedback; no audio generation, files or network requests remain.
- **Charities:** UNICEF, Médecins Sans Frontières, IFRC and Room to Read links are informational and conditional on relevant life events. No donations, messages or posts are automatically submitted. X/Threads links open a prefilled composer only when clicked.
