#!/usr/bin/env python3
"""Week 7 Generator - R-Controlled Vowels

Phonics: Soft c (ce, ci, cy = /s/), soft g (ge, gi, gy = /j/) vs. hard forms
Spelling: 12 words, all 6+ letters
Grammar: Adjectives -- describing words
"""

import os, sys
sys.path.insert(0, os.path.join(os.path.dirname(__file__), ".."))
from monday import generate_monday
from tuesday import generate_tuesday
from wednesday import generate_wednesday
from thursday import generate_thursday
from friday import generate_friday
from teacher_guide import generate_teacher_guide
from validate import validate_week

WEEK = os.path.expanduser("~/Home_School/2nd_Grade/English_Language_Arts/Week_07")

# =====================================================================
# WORD LIST - 12 words, all 6+ letters, Soft C / Soft G
# =====================================================================
WORDS = [
    ("market", "ar", "a place where people buy and sell things"),
    ("doctor", "or", "a person who helps sick people"),
    ("purple", "ur", "the color of grapes"),
    ("corner", "or", "where two lines or edges meet"),
    ("farmer", "ar", "a person who grows food on a farm"),
    ("silver", "er", "a shiny gray metal"),
    ("turtle", "ur", "a slow animal with a hard shell"),
    ("winter", "er", "the coldest season of the year"),
    ("mirror", "ir", "something you look into to see yourself"),
    ("faster", "ar", "moving at a higher speed"),
    ("better", "er", "of higher quality or improved"),
    ("feather", "er", "a soft covering on a bird"),
]
WORD_NAMES = [w[0] for w in WORDS]
PHONICS_LABEL = "R_Controlled_Vowels"

# =====================================================================
# SHARED CONTENT
# =====================================================================
LEARNING_TEXT = (
    "The letter <strong>R</strong> next to a vowel changes its sound!<br><br>"
    "When R follows a vowel, it controls the sound the vowel makes.<br>"
    "The R is like a boss &mdash; it tells the vowel how to sound!"<br><br>"
    "ar = /ar/, er = /er/, ir = /er/, or = /or/, ur = /er/"
)


GRAMMAR_NOTE = (
    "Today we learn about <strong>adverbs</strong> &mdash; words that describe VERBS.<br>"
    "Adverbs tell us HOW something happens. Most adverbs end in <strong>-ly</strong>." 
)

GRAMMAR_DEEP = (
    "Adverbs describe VERBS &mdash; they tell us HOW something happens.<br><br>"
    "Example: The turtle moved <em>slowly</em>. How did it move? <strong>Slowly</strong>.<br>"
    "The doctor worked <em>quickly</em>. How did she work? <strong>Quickly</strong>.<br>"
    "The farmer smiled <em>happily</em>. How did he smile? <strong>Happily</strong>." 
)

VOWEL_EXAMPLES_MONDAY = (
    "<strong>ar</strong> = /ar/ (like car) &mdash; market, farmer, faster<br>"
    "<strong>er</strong> = /er/ (like her) &mdash; silver, winter, better, feather<br>"
    "<strong>ir</strong> = /er/ (like bird) &mdash; mirror<br>"
    "<strong>or</strong> = /or/ (like for) &mdash; doctor, corner<br>"
    "<strong>ur</strong> = /er/ (like fur) &mdash; purple, turtle"
)

VOWEL_EXAMPLES_TUE = [
    '<strong>Soft C = /s/</strong> &mdash; <em>circle</em>, <em>notice</em>, <em>decide</em>, <em>ceiling</em>, <em>bicycle</em>',
    '<strong>Soft G = /j/</strong> &mdash; <em>garage</em>, <em>gentle</em>, <em>finger</em>, <em>college</em>, <em>danger</em>, <em>change</em>, <em>energy</em>',
    '<strong>Hard C = /k/</strong> &mdash; <em>cat</em>, <em>cup</em>, <em>cake</em>',
    '<strong>Hard G = /g/</strong> &mdash; <em>go</em>, <em>game</em>, <em>girl</em>',
]

SORT_LABELS = ["ar Words", "er/ir/ur Words", "or Words"]
SORT_TITLE = "Vowel Pattern Sort"

LEARNING_SKILLS_WED = [
    "<strong>Reading</strong> &mdash; identify soft c and soft g in context",
    "<strong>Synonyms &amp; Antonyms</strong> &mdash; words with similar and opposite meanings",
    "<strong>Word Webs</strong> &mdash; connecting related vocabulary",
]

REMINDER_TEXT = (
    "R-Controlled Vowels Rules:<br><br>"
    "R-Controlled Vowels Rules:<br><br>"
    "1. <strong>ar</strong> = /ar/ sound &mdash; <em>market</em>, <em>farmer</em>, <em>faster</em><br>"
    "2. <strong>er</strong> = /er/ sound &mdash; <em>silver</em>, <em>winter</em>, <em>better</em>, <em>feather</em><br>"
    "3. <strong>ir</strong> = /er/ sound &mdash; <em>mirror</em><br>"
    "4. <strong>or</strong> = /or/ sound &mdash; <em>doctor</em>, <em>corner</em><br>"
    "5. <strong>ur</strong> = /er/ sound &mdash; <em>purple</em>, <em>turtle</em>"

# =====================================================================
# MONDAY
# =====================================================================
MONDAY_STORY = (
    "On a cold <strong>winter</strong> morning, the <strong>farmer</strong> went to the <strong>market</strong> "
    "in the <strong>corner</strong> of town. He wore a <strong>purple</strong> scarf and carried a <strong>silver</strong> bucket. "
    "A <strong>turtle</strong> on his back moved slowly, but the farmer moved <strong>faster</strong>. "
    "He looked in the <strong>mirror</strong> on his cart &mdash; he looked <strong>better</strong> than ever. "
    "A <strong>feather</strong> blew across the corner of the market as he smiled happily." 
)

MONDAY_GRAMMAR_PRACTICE = [
    "The turtle moved slowly.",
    "The doctor worked quickly.",
    "The farmer smiled happily.",
]

MONDAY_FILL_DATA = [
    ("The doctor worked very ____", "faster"),
    ("The farmer walked ____ down the path", "happily"),
    ("The purple feather looked ____", "better"),
    ("The turtle swam ____ in the water", "quickly"),
]

MONDAY_OPPOSITE_WORDS = ["winter", "faster"]
# TUESDAY
# =====================================================================
TUESDAY_LEARNING = (
    "We are learning to find R-Controlled Vowels in real text. "
    "Can you spot the ar, er, ir, or, and ur patterns in the story?")

TUESDAY_READING = (
    "My pet turtle named Purple lived in a silver bowl on the corner of our table. "
    "In winter, I took him to the market to see the farmer. "
    "The doctor checked his shell in a mirror. She said he was doing better. "
    "I ran faster with joy! A feather landed on Purple's shell, "
    "and I knew my turtle was happy.")

TUESDAY_COMP_QUESTIONS = [
    "What was the turtle's name?",
    "Where did the turtle live?",
    "What landed on the turtle's shell?",
]

TUESDAY_REMEMBER_1 = (
    "Remember This!",
    "When R sits next to a vowel, it changes the vowel sound!<br>"
    "The R is like a boss &mdash; it tells the vowel how to sound."<br><br>"
    "ar = /ar/ (market, farmer, faster)<br>"
    "er = /er/ (silver, winter, better, feather)<br>"
    "ir = /er/ (mirror)<br>"
    "or = /or/ (doctor, corner)<br>"
    "ur = /er/ (purple, turtle)")

TUESDAY_REMEMBER_2 = (
    "Remember This!",
    "Adverbs describe VERBS &mdash; they tell HOW something happens!<br><br>"
    "The turtle moved <strong>slowly</strong> &mdash; slowly describes how it moved<br>"
    "The doctor worked <strong>quickly</strong> &mdash; quickly describes how she worked<br>"
    "The farmer walked <strong>happily</strong> &mdash; happily describes how he walked")

TUESDAY_SWAP_DATA = [
    ("I ride my bicycle on the circular path.", ("bicycle", "bicycle"), ("circular", "circular")),
    ("Be gentle with each finger on the handlebars.", ("gentle", "gentle"), ("finger", "finger")),
    ("The danger of the road made me decide to turn back.", ("danger", "danger"), ("decide", "decide")),
]

TUESDAY_BUILDER_PROMPTS = [
    ("Write a sentence about a bicycle.", "bicycle"),
    ("Write a sentence about danger.", "danger"),
    ("Write a sentence using a soft G word.", "gentle"),
]

# =====================================================================
# WEDNESDAY
# =====================================================================
WEDNESDAY_LEARNING = (
    "We are learning to use R-Controlled Vowel words in different contexts. "
    "Today we practice finding synonyms, antonyms, and using words in sentences." 
    ")

WEDNESDAY_READING = (
    "The silver mirror shop was on the corner of the market. "
    "The farmer visited every winter to buy gifts. "
    "This year he found a purple feather behind the counter. "
    "The doctor helped him carry it home faster. "
    "The turtle watched from the window, and everything was better.")

WEDNESDAY_VOCAB_Q = (
    "In the sentence 'The silver mirror shop was on the corner of the market,' "
    "what does <strong>corner</strong> mean?" 
    ")

WEDNESDAY_SYN_ANT = ["market", "doctor", "purple", "corner", "farmer", "silver"]

WEDNESDAY_CORRECT = [
    "the turtle swam slowly.",
    "my farmer hat is purple.",
    "the mirror on the corner.",
]

WEDNESDAY_FILL = [
    ("The ____ went to the market.", "farmer"),
    ("The ____ on the corner was silver.", "mirror"),
    ("The turtle moved ____ down the path.", "slowly"),
]

WEDNESDAY_CONTEXT = (
    'Read this sentence: "The farmer's purple scarf kept him warm in winter."'<br><br>'' 
    "What does <strong>scarf</strong> mean?" 
    ")

WEDNESDAY_DICTATION = ["circle", "notice", "decide", "ceiling", "bicycle", "garage"]

# =====================================================================
# THURSDAY
# =====================================================================
THURSDAY_LEARNING = (
    "We are learning to use R-Controlled Vowel words in creative writing. "
    "Today we will use our spelling words in stories and paragraphs." 
    ")

THURSDAY_STORY = (
    "My pet turtle named Purple lived in a silver bowl on the corner of our table. "
    "In winter, I took him to the market to see the farmer. "
    "The doctor checked his shell in a mirror. She said he was doing better. "
    "I ran faster with joy! A feather landed on Purple's shell, "
    "and I knew my turtle was happy.")

THURSDAY_COMP_QUESTIONS = [
    "Where did the turtle go with the writer?",
    "Who checked the turtle's shell?",
    "What did the writer feel when the doctor spoke?",
]

THURSDAY_SORT_DATA = [
    "The farmer went to the market on a cold winter morning",
    "The purple scarf was very pretty",
    "The silver mirror on the corner reflected the light",
]

THURSDAY_DETECTIVE = [
    "Find the R-Controlled Vowel words in the story.",
    "Circle each word with ar, er, ir, or, or ur.",
    "How many can you find?",
]

THURSDAY_PARA_PROMPTS = [
    "Write a paragraph about a turtle adventure.",
    "Write a paragraph about your visit to the market.",
]

# =====================================================================
# FRIDAY
# =====================================================================
FRIDAY_REVIEW_STORY = (
    "The <strong>Winter</strong> Turtle Race at the <strong>market</strong> corner was the fastest event of the year. "
    "The <strong>doctor</strong> kept score with a <strong>purple</strong> marker. "
    "The <strong>farmer</strong> rang a <strong>silver</strong> bell to start the race. "
    "My turtle moved <strong>faster</strong> than all the others! "
    "I looked in the <strong>mirror</strong> on the trophy and saw a <strong>feather</strong> on my head. "
    "I felt <strong>better</strong> than ever &mdash; we were the winners!")

FRIDAY_STORY_QUESTIONS = [
    "Who kept score at the turtle race?",
    "What color marker did the doctor use?",
    "What did the writer see on the trophy?",
]

FRIDAY_OPPOSITE_WORDS = ["gentle", "danger", "energy"]
FRIDAY_BUILDER_WORDS = ["bicycle", "garage", "ceiling", "circle"]
FRIDAY_JOURNAL_WORDS = ["decide", "notice", "change", "finger"]

# =====================================================================
# TEACHER GUIDE DATA
# =====================================================================

TEACHER_MONDAY_PHONICS_EXPLANATION = (
    "R-Controlled Vowels happen when the letter R sits next to a vowel and changes its sound.<br>"
    "The R is like a boss &mdash; it tells the vowel how to sound.""<br><br>"
    "ar = /ar/ (market, farmer, faster)<br>"
    "er = /er/ (silver, winter, better, feather)<br>"
    "ir = /er/ (mirror)<br>"
    "or = /or/ (doctor, corner)<br>"
    "ur = /er/ (purple, turtle)"
    ")

TEACHER_MONDAY_GRAMMAR_FOCUS = "Adjectives -- Describing Words"

TEACHER_MONDAY_GRAMMAR_EXPLANATION = (
    "Adverbs are DESCRIBING words that tell us HOW something happens. " 
    "Most adverbs end in -ly. They describe VERBS, not nouns.<br><br>"
    "• The turtle moved slowly. (slowly describes how it moved)<br>"
    "• The doctor worked quickly. (quickly describes how she worked)<br>"
    "• The farmer smiled happily. (happily describes how he smiled)" 
    ")

TEACHER_MONDAY_SORT_LABELS = ["Soft C Words", "Soft G Words"]

TEACHER_MONDAY_SORT_ANSWERS = [
    ["market", "farmer", "faster"],
    ["silver", "winter", "better", "feather", "mirror", "turtle", "purple"],
    ["doctor", "corner"]
]

TEACHER_MONDAY_FILL_ANSWERS = ["decide", "garage", "gentle", "energy"]

TEACHER_MONDAY_OPPOSITE_ANSWERS = [
    ("gentle", "rough"),
    ("danger", "safety"),
]

MONDAY_SENTENCE_WORDS = ["market", "doctor", "purple", "turtle"]
TEACHER_MONDAY_SENTENCE_WORDS = ["circle", "notice", "decide", "ceiling"]

TEACHER_TUESDAY_PHONICS_EXPLANATION = (
    "Students continue building fluency with R-Controlled Vowels sounds. "
    "Today's focus shifts from identification to APPLICATION -- finding R-Controlled Vowels "
    "in context, discriminating them from hard C and hard G, and using them in original sentences."
)

TEACHER_TUESDAY_SCRAMBLE_ANSWERS = [
    ("riccel", "circle"),
    ("citnoe", "notice"),
    ("cedied", "decide"),
    ("cielign", "ceiling"),
    ("byciclee", "bicycle"),
    ("garaeg", "garage"),
    ("elgent", "gentle"),
    ("finerg", "finger"),
    ("colgeee", "college"),
    ("daenerg", "danger"),
    ("chaneg", "change"),
    ("enegyr", "energy"),
]

TEACHER_TUESDAY_COMP_QUESTIONS = [
    "What does the child ride every morning?",
    "What did the dad say to be careful about?",
    "What brought new energy to the garden?",
]

TEACHER_TUESDAY_COMP_ANSWERS = [
    "A bicycle.",
    "The danger of falling.",
    "The change of seasons.",
]

TEACHER_TUESDAY_PATTERN_HUNT = {
    "match": ["circle", "notice", "decide", "ceiling", "bicycle", "garage", "gentle", "finger", "college", "danger", "change", "energy"],
    "decoy": ["cat", "cup", "go", "game", "girl", "coat"],
}

TEACHER_TUESDAY_SWAP_ANSWERS = [
    "bicycle, circular",
    "gentle, finger",
    "danger, decide",
]

TEACHER_TUESDAY_BUILDER_PROMPTS = [
    ("Write a sentence about a bicycle.", "bicycle"),
    ("Write a sentence about danger.", "danger"),
    ("Write a sentence using a soft G word.", "gentle"),
]

TEACHER_WEDNESDAY_PHONICS_EXPLANATION = (
    "Mid-week deepening. Students now move beyond recognition into ANALYSIS -- "
    "understanding word relationships (synonyms/antonyms), connecting vocabulary (word web), "
    "and applying listening skills (dictation). This is where the pattern knowledge becomes functional."
)

TEACHER_WEDNESDAY_VOCAB_Q_QUESTION = (
    "In the sentence 'The ceiling of the old garage was cracking,' what does cracking mean?"
)

TEACHER_WEDNESDAY_VOCAB_Q_ANSWER = "B) Breaking apart with lines or splits"

TEACHER_WEDNESDAY_SYN_ANT_WORDS = ["gentle", "danger", "energy", "change", "decide", "notice"]

TEACHER_WEDNESDAY_WORD_WEB_CENTER = "bicycle"

TEACHER_WEDNESDAY_WORD_WEB_SUGGESTIONS = [
    "wheels", "pedal", "chain", "handlebars", "seat", "helmet", "path", "ride", "speed", "tires"
]

TEACHER_WEDNESDAY_SORT_ANSWERS = {
    "sentences": [
        "I ride my bicycle on the circular path every morning",
        "The gentle breeze brought a change to the garden",
    ],
    "correct_order": [
        "I ride my bicycle on the circular path every morning.",
        "The gentle breeze brought a change to the garden.",
    ],
}

TEACHER_WEDNESDAY_CORRECT_ANSWERS = [
    ("the bicycle is very fast.", "The bicycle is very fast."),
    ("my finger got caught in the garage door.", "My finger got caught in the garage door."),
    ("the ceiling is painted white.", "The ceiling is painted white."),
]

TEACHER_WEDNESDAY_FILL_ANSWERS = ["decide", "gentle", "change"]

TEACHER_WEDNESDAY_CONTEXT_CLUE_QUESTION = (
    "In 'Be gentle with the baby bird; it might get hurt,' what does gentle mean?"
)

TEACHER_WEDNESDAY_CONTEXT_CLUE_ANSWER = "B) Kind and careful"

TEACHER_WEDNESDAY_DICTATION_WORDS = ["circle", "notice", "decide", "ceiling", "bicycle", "garage"]

TEACHER_THURSDAY_PHONICS_EXPLANATION = (
    "Production day. Students have now seen and practiced the patterns for 3 days -- "
    "today they actively CREATE with them. Spelling Detective builds metacognition. "
    "Spelling Maps teach word analysis. Paragraph writing brings it all together."
)

TEACHER_THURSDAY_COMP_QUESTIONS = [
    "What did the child notice about the ceiling?",
    "What was the dad gentle about?",
    "Where does the child want to ride someday?",
]

TEACHER_THURSDAY_COMP_ANSWERS = [
    "It had a crack that was dangerous.",
    "About telling the child to decide on a safer path.",
    "To college on the bicycle.",
]

TEACHER_THURSDAY_DETECTIVE_ANSWERS = [
    ("cirele", "circle"),
    ("notcie", "notice"),
    ("deciide", "decide"),
    ("ceiing", "ceiling"),
    ("bicyele", "bicycle"),
    ("garege", "garage"),
    ("genlte", "gentle"),
    ("figner", "finger"),
    ("colleege", "college"),
    ("dangr", "danger"),
    ("chane", "change"),
    ("enrgy", "energy"),
]

TEACHER_THURSDAY_SWAP_ANSWERS = [
    "bicycle, circular",
    "gentle, finger",
]

TEACHER_THURSDAY_MAP_WORD = "bicycle"

TEACHER_THURSDAY_MAP_SUGGESTIONS = [
    "bi-cycle (2 syllables)",
    "Split between i and c: bi-cycle",
    "Contains soft C (cy = /s/ sound)",
    "Related words: bicycle, bicycles",
]

TEACHER_THURSDAY_PARA_PROMPTS = [
    "Write a paragraph about a bicycle adventure.",
    "Write a paragraph about being gentle with something.",
]

TEACHER_FRIDAY_PHONICS_EXPLANATION = (
    "Review and assessment day. All 12 words are tested through the spelling test, "
    "but the full worksheet also reviews reading comprehension, vocabulary, "
    "and writing skills from the week."
)

TEACHER_FRIDAY_TEST_ANSWERS = [
    "circle", "notice", "decide", "ceiling", "bicycle", "garage",
    "gentle", "finger", "college", "danger", "change", "energy",
]

TEACHER_FRIDAY_STORY_QUESTIONS = [
    "What did the child ride around the circular path?",
    "What did the mom say to be?",
    "Where does the child want to ride someday?",
]

TEACHER_FRIDAY_STORY_ANSWERS = [
    "A bicycle.",
    "To be gentle.",
    "To college.",
]

TEACHER_FRIDAY_OPPOSITE_ANSWERS = [
    ("gentle", "rough"),
    ("danger", "safety"),
    ("energy", "tiredness"),
]

TEACHER_FRIDAY_BUILDER_WORDS = ["bicycle", "garage", "ceiling", "circle"]

TEACHER_FRIDAY_JOURNAL_WORDS = ["decide", "notice", "change", "finger"]

# =====================================================================
# VALIDATION
# =====================================================================
FILL_DATA = MONDAY_FILL_DATA
DETECTIVE_WORDS = THURSDAY_DETECTIVE
DETECTIVE_ANSWERS = ["circle", "notice", "decide", "ceiling", "bicycle", "garage", "gentle", "finger", "college", "danger", "change", "energy"]
OPPOSITE_PAIRS = [("gentle", "rough"), ("danger", "safety")]
LEARNING_EXAMPLES = ["circle", "gentle", "bicycle"]
BREAKDOWNS = {
    "circle": "ci-r-cle",
    "gentle": "gen-tle",
    "bicycle": "bi-cycle",
}

def main():
    print("=" * 50)
    print("Week 7 Generator - R-Controlled Vowels")
    print("=" * 50)

    errors = validate_week(
        words=WORDS, word_names=WORD_NAMES,
        fill_data=FILL_DATA,
        detective_words=DETECTIVE_WORDS, detective_answers=DETECTIVE_ANSWERS,
        opposite_pairs=OPPOSITE_PAIRS,
        learning_examples=LEARNING_EXAMPLES,
        breakdowns=BREAKDOWNS,
        generate_friday=lambda: None,
    )
    if errors:
        print("\nVALIDATION FAILED:")
        for e in errors:
            print(f"  - {e}")
        exit(1)
    print("Validation passed.\n")

    generate_monday(
        week_dir=WEEK, week_num=6, phonics_label=PHONICS_LABEL, words=WORDS,
        learning_text=LEARNING_TEXT, vowel_examples=VOWEL_EXAMPLES_MONDAY,
        grammar_note=GRAMMAR_NOTE, grammar_deep=GRAMMAR_DEEP,
        grammar_practice=MONDAY_GRAMMAR_PRACTICE,
        story_text=MONDAY_STORY, sort_labels=SORT_LABELS, sort_title=SORT_TITLE,
        fill_data=MONDAY_FILL_DATA, opposite_words=MONDAY_OPPOSITE_WORDS,
        sentence_words=MONDAY_SENTENCE_WORDS,
    )

    generate_tuesday(
        week_dir=WEEK, week_num=6, phonics_label=PHONICS_LABEL, words=WORDS,
        learning_text=TUESDAY_LEARNING, vowel_examples=VOWEL_EXAMPLES_TUE,
        remember_boxes=[TUESDAY_REMEMBER_1, TUESDAY_REMEMBER_2],
        reading_text=TUESDAY_READING, comp_questions=TUESDAY_COMP_QUESTIONS,
        swap_data=TUESDAY_SWAP_DATA, builder_prompts=TUESDAY_BUILDER_PROMPTS,
    )

    generate_wednesday(
        week_dir=WEEK, week_num=6, phonics_label=PHONICS_LABEL, words=WORDS,
        learning_text=WEDNESDAY_LEARNING, learning_skills=LEARNING_SKILLS_WED,
        reading_passage=WEDNESDAY_READING, vocab_question=WEDNESDAY_VOCAB_Q,
        syn_ant_words=WEDNESDAY_SYN_ANT, word_web_center="bicycle",
        sentence_sort_data=WEDNESDAY_SORT_DATA, correct_sentences=WEDNESDAY_CORRECT,
        fill_data=WEDNESDAY_FILL, context_clue=WEDNESDAY_CONTEXT,
        dictation_words=WEDNESDAY_DICTATION,
    )

    generate_thursday(
        week_dir=WEEK, week_num=6, phonics_label=PHONICS_LABEL, words=WORDS,
        learning_text=THURSDAY_LEARNING, remember_text=REMINDER_TEXT,
        story_text=THURSDAY_STORY, comp_questions=THURSDAY_COMP_QUESTIONS,
        sentence_sort_data=THURSDAY_SORT_DATA, detective_words=THURSDAY_DETECTIVE,
        swap_data=THURSDAY_SWAP_DATA, map_word="bicycle",
        para_prompts=THURSDAY_PARA_PROMPTS,
    )

    generate_friday(
        week_dir=WEEK, week_num=6, phonics_label=PHONICS_LABEL, words=WORDS,
        review_story=FRIDAY_REVIEW_STORY, story_questions=FRIDAY_STORY_QUESTIONS,
        opposite_words=FRIDAY_OPPOSITE_WORDS, builder_words=FRIDAY_BUILDER_WORDS,
        journal_words=FRIDAY_JOURNAL_WORDS,
    )

    generate_teacher_guide(
        week_dir=WEEK, week_num=6, phonics_label=PHONICS_LABEL, words=WORDS,
        phonics_name="R-Controlled Vowels",

        monday_phonics_explanation=TEACHER_MONDAY_PHONICS_EXPLANATION,
        monday_grammar_focus=TEACHER_MONDAY_GRAMMAR_FOCUS,
        monday_grammar_explanation=TEACHER_MONDAY_GRAMMAR_EXPLANATION,
        monday_story_text=MONDAY_STORY,
        monday_sort_labels=TEACHER_MONDAY_SORT_LABELS,
        monday_sort_answers=TEACHER_MONDAY_SORT_ANSWERS,
        monday_fill_answers=TEACHER_MONDAY_FILL_ANSWERS,
        monday_opposite_answers=TEACHER_MONDAY_OPPOSITE_ANSWERS,
        monday_sentence_words=TEACHER_MONDAY_SENTENCE_WORDS,

        tuesday_phonics_explanation=TEACHER_TUESDAY_PHONICS_EXPLANATION,
        tuesday_scramble_answers=TEACHER_TUESDAY_SCRAMBLE_ANSWERS,
        tuesday_reading_text=TUESDAY_READING,
        tuesday_comp_questions=TEACHER_TUESDAY_COMP_QUESTIONS,
        tuesday_comp_answers=TEACHER_TUESDAY_COMP_ANSWERS,
        tuesday_pattern_hunt_answers=TEACHER_TUESDAY_PATTERN_HUNT,
        tuesday_swap_answers=TEACHER_TUESDAY_SWAP_ANSWERS,
        tuesday_builder_prompts=TEACHER_TUESDAY_BUILDER_PROMPTS,

        wednesday_phonics_explanation=TEACHER_WEDNESDAY_PHONICS_EXPLANATION,
        wednesday_reading_text=WEDNESDAY_READING,
        wednesday_vocab_q_question=TEACHER_WEDNESDAY_VOCAB_Q_QUESTION,
        wednesday_vocab_q_answer=TEACHER_WEDNESDAY_VOCAB_Q_ANSWER,
        wednesday_syn_ant_words=TEACHER_WEDNESDAY_SYN_ANT_WORDS,
        wednesday_word_web_center=TEACHER_WEDNESDAY_WORD_WEB_CENTER,
        wednesday_word_web_suggestions=TEACHER_WEDNESDAY_WORD_WEB_SUGGESTIONS,
        wednesday_sort_answers=TEACHER_WEDNESDAY_SORT_ANSWERS,
        wednesday_correct_answers=TEACHER_WEDNESDAY_CORRECT_ANSWERS,
        wednesday_fill_answers=TEACHER_WEDNESDAY_FILL_ANSWERS,
        wednesday_context_clue_question=TEACHER_WEDNESDAY_CONTEXT_CLUE_QUESTION,
        wednesday_context_clue_answer=TEACHER_WEDNESDAY_CONTEXT_CLUE_ANSWER,
        wednesday_dictation_words=TEACHER_WEDNESDAY_DICTATION_WORDS,

        thursday_phonics_explanation=TEACHER_THURSDAY_PHONICS_EXPLANATION,
        thursday_story_text=THURSDAY_STORY,
        thursday_comp_questions=TEACHER_THURSDAY_COMP_QUESTIONS,
        thursday_comp_answers=TEACHER_THURSDAY_COMP_ANSWERS,
        thursday_detective_answers=TEACHER_THURSDAY_DETECTIVE_ANSWERS,
        thursday_swap_answers=TEACHER_THURSDAY_SWAP_ANSWERS,
        thursday_map_word=TEACHER_THURSDAY_MAP_WORD,
        thursday_map_suggestions=TEACHER_THURSDAY_MAP_SUGGESTIONS,
        thursday_para_prompts=TEACHER_THURSDAY_PARA_PROMPTS,

        friday_phonics_explanation=TEACHER_FRIDAY_PHONICS_EXPLANATION,
        friday_test_answers=TEACHER_FRIDAY_TEST_ANSWERS,
        friday_story_questions=TEACHER_FRIDAY_STORY_QUESTIONS,
        friday_story_answers=TEACHER_FRIDAY_STORY_ANSWERS,
        friday_opposite_answers=TEACHER_FRIDAY_OPPOSITE_ANSWERS,
        friday_builder_words=TEACHER_FRIDAY_BUILDER_WORDS,
        friday_journal_words=TEACHER_FRIDAY_JOURNAL_WORDS,
    )

    print("\nAll done! Check Week_07/ for PDFs.")

if __name__ == "__main__":
    main()