Each ordinary day: select one locally eligible cumulative passage and two or three locally eligible words; no automatic new grapheme in this bank. Say a chosen word normally, then model its full ordered phonemes using the reviewed map. Digraph sh/ch/optional final ck represents one phoneme; s+t and n+d stay separate sounds. Let child blend the print, reread a phrase naturally, then give the meaning. If the first reading attempt is needed, capture it before modelling. For writing, say the separate chosen dictation word normally; learner segments, selects graphemes and writes/types/arranges them if suitable. Teacher can model and invite another attempt after capture; mark supplied graphemes separately. Handwriting: offer one locally taught unjoined letter from the word, modelling that school's letter formation and inviting an actual comfortable attempt; exact formation needs local judgement and is not provided by a system font. Familiar a/is require explicit actual teaching as described in the lexicon. Meaning context confirms reading; do not replace grapheme blending by picture guessing. Oral sound manipulation is separate from printed new-code teaching. If no passage fits, keep rich listening/composition and explicitly teach one earlier taught correspondence with a locally matched word; not-yet-offered print is not failed reading. Long vowels, two-syllable patterns, wider high-frequency words and morphemes need separate actual school teaching; this bank does not claim to complete them.
Default profile has two empty lists: it assigns no independent child print. Actual local school teaching and current observation must support every correspondence/familiar word. A declaration match is eligibility, not mastery or learner performance. No learner name, diagnosis, address or profile storage required. CLI prints to stdout only; no network.
Paper equivalent: choose a passage; list every printed token, use lexicon full map; confirm every correspondence and a/is teaching. Separate reading and dictation matches. If any token is missing, do not silently supply it and call reading independent. Rich heard work and prior code teaching remain available.
Commands from source root: python -B scripts/select_print.py --profile profile-template.json --day 41 ; add --component first or later for teacher-only public checks. No empty profile can expose a scored print recipe as eligible.
Optional final ck route only after actual local teaching; it is one phoneme. Final ck is a useful common short-vowel spelling pattern, not a rule without exceptions. Three ordinary choices use cumulative code; optional ck replaces a choice, never a forced extra. Names/capitals and familiar a/is are introduced explicitly; scripts do not choose pronunciation for a learner.
Full reviewed token maps
a: familiar word /ə/ in these phrases; introduce explicitly; one/non-specific item
bag: b / a / g; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
bash: b / a / sh; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
bend: b / e / n / d; 4 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
bus: b / u / s; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
can: c / a / n; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
cap: c / a / p; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
cat: c / a / t; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
chad: ch / a / d; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
chat: ch / a / t; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
check: ch / e / ck; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
chop: ch / o / p; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
cob: c / o / b; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
dish: d / i / sh; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
dock: d / o / ck; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
dog: d / o / g; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
duck: d / u / ck; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
fin: f / i / n; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
fish: f / i / sh; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
gum: g / u / m; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
gush: g / u / sh; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
hand: h / a / n / d; 4 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
hen: h / e / n; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
hug: h / u / g; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
hum: h / u / m; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
in: i / n; 2 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
is: familiar word /ɪz/; written s represents /z/ here; introduce explicitly; state/linking word
jab: j / a / b; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
map: m / a / p; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
mat: m / a / t; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
mend: m / e / n / d; 4 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
net: n / e / t; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
on: o / n; 2 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
pack: p / a / ck; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
pen: p / e / n; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
pick: p / i / ck; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
rag: r / a / g; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
red: r / e / d; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
rip: r / i / p; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
rock: r / o / ck; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
rug: r / u / g; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
rush: r / u / sh; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
sack: s / a / ck; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
sam: s / a / m; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
sand: s / a / n / d; 4 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
sham: sh / a / m; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
ship: sh / i / p; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
shut: sh / u / t; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
sit: s / i / t; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
sock: s / o / ck; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
stan: s / t / a / n; 4 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
stand: s / t / a / n / d; 5 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
step: s / t / e / p; 4 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
stop: s / t / o / p; 4 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
tap: t / a / p; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
tim: t / i / m; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
tin: t / i / n; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
van: v / a / n; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught
vet: v / e / t; 3 ordered phonemes; each letter short-vowel/consonant correspondence actually taught