#!/usr/bin/env python3
"""
Week 15: Length: Inches & Centimeters
Phase 3: Measurement, Time & Money

Curriculum: Using rulers; estimating; comparing lengths; ruler graphics
Standards: 2.MD.A.1 (measure with tools), 2.MD.A.2 (two units),
           2.MD.A.3 (estimate lengths), 2.MD.A.4 (compare lengths)

New Standard (7 principles):
1. Reduced drill (3-5 problems per section, "reduced from" noted)
2. Estimation before measuring (Mon, Tue, Fri)
3. Multiple strategies / two units for the same object (Wed)
4. Better word problems — reasoning over keywords (Thu, Fri)
5. Create Your Own open-ended challenge (Thu)
6. Number Talks — explain WITHOUT measuring (Wed)
7. Friday self-check with emoji + "One thing I learned"

Ruler scale: 1 inch = 48px, 1 cm = 24px (whole-unit multiples only).
"""

import os
import glob
from weasyprint import HTML

from math_helpers import (
    CSS, TEACHER_CSS,
    page, page_multi, hdr, sec, b, bw, bl,
    tg_page_multi, tg_sec, tg_note, tg_section_title,
    ruler_inches, ruler_cm, measure_line, measure_line_cm,
)
from activity_builders import (
    build_ruler_measurement,
    build_challenge_box,
)

BASE = os.path.expanduser("~/Home_School/2nd_Grade/Math")
WEEK = os.path.join(BASE, "Week_15")

IN = 48   # px per inch
CM = 24   # px per cm


# ═══════════════════════════════════════════════════
# MONDAY — Measuring in Inches
# ═══════════════════════════════════════════════════
def monday():
    # 1: Warm-up — what do we measure with?
    s1 = '<div class="abox" style="background:#e8f5e9;">'\
         '<p><b>Warm-up</b> — Circle the best tool to measure each thing: <b>ruler</b> or <b>measuring tape</b>?</p>'\
         '<div class="mgrid c2">'
    for item in ["the length of your pencil", "how tall the door is", "the side of a book", "around your waist"]:
        s1 += f'<div class="abox"><p>{item}</p><p>ruler  /  measuring tape</p></div>'
    s1 += '</div></div>'

    # 2: Learn — how to use a ruler (inches)
    s2 = '<div class="abox">'\
         '<p><b>How to measure:</b> Line up one end of the object with the <b>0</b> end of the ruler. '\
         'Read the number where the object ends.</p>'\
         + ruler_inches(6) + \
         '<p style="font-size:11px; color:#666; margin-top:6px;">This ruler shows 6 inches. Each big mark is 1 inch.</p>'\
         '</div>'

    # 3: Estimate first, then measure (reduced from 6 to 3)
    s3 = '<div class="abox" style="background:#fff3e0;">'\
         '<p><b>Estimate First!</b> BEFORE measuring, write your guess. Then use the ruler to measure.</p>'
    for px, name in [(3*IN, "Line A"), (5*IN, "Line B"), (2*IN, "Line C")]:
        s3 += f'<div class="abox"><p><b>{name}</b></p>'\
              f'<div class="measure-line" style="width:{px}px;"></div>'\
              f'<p>My estimate: {b("3em")} inches &nbsp;&nbsp; Measured: {b("3em")} inches</p></div>'
    s3 += '<br>' + ruler_inches(6) + '</div>'

    # 4: Measure with the ruler (reduced from 8 to 4)
    s4 = build_ruler_measurement({
        "unit": "inches",
        "include_ruler": True,
        "note": "Use the ruler to measure each line to the nearest inch.",
        "lines": [
            {"length_px": 4*IN, "label": "1."},
            {"length_px": 1*IN, "label": "2."},
            {"length_px": 6*IN, "label": "3."},
            {"length_px": 3*IN, "label": "4."},
        ],
    })

    # 5: Word problem
    s5 = '<div class="wp"><p class="note">Read carefully. Think about what is happening.</p>'\
         '<div class="abox"><p>Ben measured his crayon. It was 4 inches long. His marker was 6 inches long. '\
         'How many inches longer is the marker than the crayon?</p>'\
         '<p style="font-size:11px;">Draw or write your thinking: ' + bw() + '</p>'\
         '<p>' + b("4em") + ' inches longer</p></div></div>'

    return page(15, "Monday", "Measuring in Inches",
        f'''{sec(1, "Warm-up: Choose the Tool", s1)}
{sec(2, "How to Use a Ruler", s2)}
{sec(3, "Estimate First, Then Measure", s3)}
{sec(4, "Measure in Inches", s4)}
{sec(5, "Word Problem", s5)}''')


# ═══════════════════════════════════════════════════
# TUESDAY — Measuring in Centimeters
# ═══════════════════════════════════════════════════
def tuesday():
    # 1: Warm-up — inches review
    s1 = '<div class="abox" style="background:#e8f5e9;">'\
         '<p><b>2-min Warm-up</b> — Measure each line in inches.</p>'\
         + ruler_inches(6) + '<br>'
    for px, name in [(2*IN, "Line A"), (5*IN, "Line B")]:
        s1 += f'<div style="display:flex; align-items:center; gap:8px; margin:4px 0;">'\
              f'<span><b>{name}</b></span>'\
              f'<div class="measure-line" style="width:{px}px;"></div>'\
              f'<span>{b("3em")} inches</span></div>'
    s1 += '</div>'

    # 2: Learn — centimeters
    s2 = '<div class="abox">'\
         '<p><b>Centimeters</b> are another unit for measuring length. '\
         'A centimeter is <b>smaller</b> than an inch — about the width of your pinky finger!</p>'\
         + ruler_cm(15) + \
         '<p style="font-size:11px; color:#666; margin-top:6px;">This ruler shows 15 centimeters (cm). Each numbered mark is 1 cm.</p>'\
         '</div>'

    # 3: Estimate first, then measure in cm (reduced from 6 to 3)
    s3 = '<div class="abox" style="background:#fff3e0;">'\
         '<p><b>Estimate First!</b> Guess in cm, then measure with the ruler.</p>'
    for px, name in [(8*CM, "Line A"), (12*CM, "Line B"), (5*CM, "Line C")]:
        s3 += f'<div class="abox"><p><b>{name}</b></p>'\
              f'<div class="measure-line" style="width:{px}px;"></div>'\
              f'<p>My estimate: {b("3em")} cm &nbsp;&nbsp; Measured: {b("3em")} cm</p></div>'
    s3 += '<br>' + ruler_cm(15) + '</div>'

    # 4: Measure in cm (reduced from 8 to 4)
    s4 = build_ruler_measurement({
        "unit": "cm",
        "include_ruler": True,
        "note": "Use the centimeter ruler to measure each line.",
        "lines": [
            {"length_px": 10*CM, "label": "1."},
            {"length_px": 4*CM, "label": "2."},
            {"length_px": 14*CM, "label": "3."},
            {"length_px": 7*CM, "label": "4."},
        ],
    })

    # 5: Word problem
    s5 = '<div class="wp"><p class="note">Read carefully. Think about what is happening.</p>'\
         '<div class="abox"><p>Mia\'s eraser is 5 cm long. Her glue stick is 9 cm long. '\
         'If she lays them end to end in a straight line, how long is the line?</p>'\
         '<p style="font-size:11px;">Draw or write your thinking: ' + bw() + '</p>'\
         '<p>' + b("4em") + ' cm</p></div></div>'

    return page(15, "Tuesday", "Measuring in Centimeters",
        f'''{sec(1, "Warm-up: Inches Review", s1)}
{sec(2, "Meet the Centimeter", s2)}
{sec(3, "Estimate First, Then Measure", s3)}
{sec(4, "Measure in Centimeters", s4)}
{sec(5, "Word Problem", s5)}''')


# ═══════════════════════════════════════════════════
# WEDNESDAY — Inches vs. Centimeters (Two Units)
# ═══════════════════════════════════════════════════
def wednesday():
    # 1: Warm-up — which unit is bigger?
    s1 = '<div class="abox" style="background:#e8f5e9;">'\
         '<p><b>2-min Warm-up</b> — Circle the correct answer.</p>'\
         '<div class="mgrid c2">'\
         '<div class="abox"><p>Which is LONGER?</p><p>1 inch  /  1 centimeter</p></div>'\
         '<div class="abox"><p>Measuring the same pencil, which number will be BIGGER?</p><p>inches  /  centimeters</p></div>'\
         '</div></div>'

    # 2: Measure the same line in BOTH units (multiple strategies / 2.MD.A.2)
    s2 = '<div class="abox">'\
         '<p class="note">Measure the SAME line two different ways: first in inches, then in centimeters.</p>'
    for px, name in [(2*IN, "Line A (2 in ≈ 5 cm)"), (4*IN, "Line B (4 in ≈ 10 cm)")]:
        label = name.split(" (")[0]
        s2 += f'<div class="abox"><p><b>{label}</b></p>'\
              f'<div class="measure-line" style="width:{px}px;"></div>'\
              f'<p>In inches: {b("3em")} in &nbsp;&nbsp; In centimeters: about {b("3em")} cm</p></div>'
    s2 += ruler_inches(6) + '<br>' + ruler_cm(15) + \
          '<p style="font-size:11px; color:#666;">Hint: 1 inch is about 2 and a half centimeters.</p></div>'

    # 3: Number Talk — WITHOUT measuring
    s3 = '<div class="abox" style="background:#e3f2fd;">'\
         '<p><b>Number Talk</b> — Answer WITHOUT measuring. Explain your thinking.</p>'\
         '<div class="mgrid c2">'\
         '<div class="abox"><p>You measure a book in inches, then in centimeters. '\
         'Which measurement gives a BIGGER number? Why?</p>'\
         '<p style="font-size:11px;">My thinking: ' + bw() + '</p></div>'\
         '<div class="abox"><p>Sam says his desk is "3 long." What is wrong with his answer?</p>'\
         '<p style="font-size:11px;">My thinking: ' + bw() + '</p></div>'\
         '</div></div>'

    # 4: Choose the best unit (reduced from 8 to 4)
    s4 = '<p class="note">Circle the better unit for measuring each object.</p>'\
         '<div class="mgrid c2">'
    for item in ["an ant", "your bed", "a paper clip", "the classroom door"]:
        s4 += f'<div class="abox"><p>{item}</p><p>centimeters  /  inches (small) &nbsp;or&nbsp; feet/meters (big)</p></div>'
    s4 += '</div>'

    # 5: Estimate everyday objects
    s5 = '<div class="abox" style="background:#fff3e0;">'\
         '<p><b>Estimate!</b> Write your best guess. Then find the real object and measure it if you can.</p>'\
         '<div class="mgrid c2">'
    for item, unit in [("your pencil", "inches"), ("your hand span", "cm"), ("a spoon", "inches"), ("your shoe", "cm")]:
        s5 += f'<div class="abox"><p>{item}</p><p>Estimate: {b("3em")} {unit} &nbsp; Measured: {b("3em")} {unit}</p></div>'
    s5 += '</div></div>'

    return page(15, "Wednesday", "Inches vs. Centimeters",
        f'''{sec(1, "Warm-up: Which Unit is Bigger?", s1)}
{sec(2, "Measure Two Ways", s2)}
{sec(3, "Number Talk", s3)}
{sec(4, "Choose the Best Unit", s4)}
{sec(5, "Estimate Real Objects", s5)}''')


# ═══════════════════════════════════════════════════
# THURSDAY — Comparing Lengths
# ═══════════════════════════════════════════════════
def thursday():
    # 1: Warm-up — quick measure
    s1 = '<div class="abox" style="background:#e8f5e9;">'\
         '<p><b>2-min Warm-up</b> — Measure each line in cm.</p>' + ruler_cm(15) + '<br>'
    for px, name in [(6*CM, "Line A"), (11*CM, "Line B")]:
        s1 += f'<div style="display:flex; align-items:center; gap:8px; margin:4px 0;">'\
              f'<span><b>{name}</b></span>'\
              f'<div class="measure-line" style="width:{px}px;"></div>'\
              f'<span>{b("3em")} cm</span></div>'
    s1 += '</div>'

    # 2: Compare two lines — how much longer? (reduced from 6 to 3)
    s2 = '<p class="note">Measure both lines in cm. Then find how much LONGER the long one is.</p>'
    for (px1, px2, n) in [(9*CM, 4*CM, "1"), (13*CM, 6*CM, "2"), (10*CM, 7*CM, "3")]:
        s2 += f'<div class="abox"><p><b>Pair {n}</b></p>'\
              f'<div class="measure-line" style="width:{px1}px; margin-bottom:6px;"></div>'\
              f'<div class="measure-line" style="width:{px2}px;"></div>'\
              f'<p>Top: {b("3em")} cm &nbsp; Bottom: {b("3em")} cm &nbsp; '\
              f'The top line is {b("3em")} cm longer.</p></div>'
    s2 += ruler_cm(15)

    # 3: Word problems — comparing lengths
    s3 = '<div class="wp"><p class="note">Read carefully. Think about what is happening. Draw if it helps!</p>'\
         '<div class="mgrid c2">'
    problems = [
        ("A red ribbon is 14 inches long. A blue ribbon is 8 inches long. How much longer is the red ribbon?", "inches"),
        ("Jake's paper chain is 25 cm long. He adds another 15 cm of chain. How long is his paper chain now?", "cm"),
    ]
    for text, unit in problems:
        s3 += f'<div class="abox"><p style="font-size:0.95em;">{text}</p>'\
              '<p style="font-size:11px;">Draw or write your thinking: ' + bw() + '</p>'\
              '<p>' + b("4em") + f' {unit}</p></div>'
    s3 += '</div></div>'

    # 4: Order by length
    s4 = '<div class="abox">'\
         '<p class="note">Measure each line in inches. Then write the letters in order from SHORTEST to LONGEST.</p>'
    for px, name in [(5*IN, "A"), (2*IN, "B"), (4*IN, "C")]:
        s4 += f'<div style="display:flex; align-items:center; gap:8px; margin:4px 0;">'\
              f'<span><b>{name}</b></span>'\
              f'<div class="measure-line" style="width:{px}px;"></div>'\
              f'<span>{b("3em")} inches</span></div>'
    s4 += ruler_inches(6) + \
          '<p>Shortest to longest: ' + b("2em") + ', ' + b("2em") + ', ' + b("2em") + '</p></div>'

    # 5: Create your own
    s5 = '<div class="abox" style="background:#f3e5f5;">'\
         '<p><b>Create Your Own</b></p>'\
         '<p>Draw two lines below: one that is about 3 inches long and one that is about 5 inches long. '\
         'Then measure them with a real ruler to check. Write a comparing question about your lines for a family member to solve!</p>'\
         '<div style="min-height:80px; border:1px dashed #999; border-radius:4px; margin:8px 0;"></div>'\
         '<p>My question: ' + bl() + '</p>'\
         '</div>'

    return page(15, "Thursday", "Comparing Lengths",
        f'''{sec(1, "Warm-up: Quick Measure", s1)}
{sec(2, "How Much Longer?", s2)}
{sec(3, "Word Problems", s3)}
{sec(4, "Order by Length", s4)}
{sec(5, "Challenge: Create Your Own", s5)}''')


# ═══════════════════════════════════════════════════
# FRIDAY — Review & Self-Check
# ═══════════════════════════════════════════════════
def friday():
    # 1: Warm-up
    s1 = '<div class="abox" style="background:#e8f5e9;">'\
         '<p><b>2-min Warm-up</b> — Fill in the blanks.</p>'\
         '<div class="mgrid c2">'\
         '<div class="abox"><p>1 inch is ' + b("6em") + ' than 1 cm. (longer / shorter)</p></div>'\
         '<div class="abox"><p>A good unit for measuring an ant: ' + b("4em") + '</p></div>'\
         '</div></div>'

    # 2: Estimate First review
    s2 = '<div class="abox" style="background:#fff3e0;">'\
         '<p><b>Estimate First!</b> Guess, then measure each line.</p>'
    for px, name, unit in [(4*IN, "Line A", "inches"), (9*CM, "Line B", "cm")]:
        s2 += f'<div class="abox"><p><b>{name}</b> (measure in {unit})</p>'\
              f'<div class="measure-line" style="width:{px}px;"></div>'\
              f'<p>Estimate: {b("3em")} {unit} &nbsp;&nbsp; Measured: {b("3em")} {unit}</p></div>'
    s2 += ruler_inches(6) + '<br>' + ruler_cm(15) + '</div>'

    # 3: Mixed measuring review (reduced from 8 to 4)
    s3 = '<p class="note">Measure each line with the correct ruler above.</p>'\
         '<div class="mgrid c2">'
    for px, unit, n in [(3*IN, "inches", "1"), (12*CM, "cm", "2"), (5*IN, "inches", "3"), (8*CM, "cm", "4")]:
        s3 += f'<div class="abox"><p><b>{n}.</b> (in {unit})</p>'\
              f'<div class="measure-line" style="width:{px}px;"></div>'\
              f'<p>{b("3em")} {unit}</p></div>'
    s3 += '</div>'

    # 4: Word problems review
    s4 = '<div class="wp"><p class="note">Read carefully. Show your thinking.</p>'\
         '<div class="mgrid c2">'
    problems = [
        ("A caterpillar is 6 cm long. It crawls onto a leaf that is 15 cm long. How much longer is the leaf than the caterpillar?", "cm"),
        ("Dad's shoe is 12 inches long. Emma's shoe is 7 inches long. If they put them heel to toe, how long are both shoes together?", "inches"),
    ]
    for text, unit in problems:
        s4 += f'<div class="abox"><p style="font-size:0.95em;">{text}</p>'\
              '<p style="font-size:11px;">Draw or write your thinking: ' + bw() + '</p>'\
              '<p>' + b("4em") + f' {unit}</p></div>'
    s4 += '</div></div>'

    # 5: Self-check with emoji reflection
    s5 = '<div class="selfcheck">'\
         '<p><b>Self-Check: How do you feel about measuring length?</b></p>'\
         '<div style="display:flex; gap:20px; flex-wrap:wrap;">'\
         '<div style="background:#fff3e0; padding:10px; border-radius:5px; flex:1; min-width:150px;">'\
         '<p><b>Measuring in Inches</b></p>'\
         '<p>😊 I got it!  |  😐 Getting there  |  😟 Need help</p>'\
         '</div>'\
         '<div style="background:#e3f2fd; padding:10px; border-radius:5px; flex:1; min-width:150px;">'\
         '<p><b>Measuring in Centimeters</b></p>'\
         '<p>😊 I got it!  |  😐 Getting there  |  😟 Need help</p>'\
         '</div>'\
         '<div style="background:#f3e5f5; padding:10px; border-radius:5px; flex:1; min-width:150px;">'\
         '<p><b>Comparing Lengths</b></p>'\
         '<p>😊 I got it!  |  😐 Getting there  |  😟 Need help</p>'\
         '</div>'\
         '</div>'\
         '<p style="margin-top:10px;"><b>One thing I learned this week:</b> ' + bl() + '</p>'\
         '<p><b>One thing I want to practice more:</b> ' + bl() + '</p>'\
         '<p><b>Something at home I want to measure:</b> ' + bl() + '</p>'\
         '</div>'

    return page(15, "Friday", "Week 15 Review & Self-Check",
        f'''{sec(1, "Warm-up: Units Review", s1)}
{sec(2, "Estimate First!", s2)}
{sec(3, "Measuring Review", s3)}
{sec(4, "Word Problems", s4)}
{sec(5, "Self-Check & Reflection", s5)}''')


# ═══════════════════════════════════════════════════
# TEACHER GUIDE — Combined for all days
# ═══════════════════════════════════════════════════
def teacher_guide():
    """Generate combined teacher guide for all 5 days."""
    return tg_page_multi(
        "Week 15", "Length: Inches & Centimeters — Teacher Guide",

        # Monday
        tg_section_title("Monday: Measuring in Inches") +
        tg_sec(1, "Warm-up: Choose Tool", ["pencil: ruler, door: measuring tape, book: ruler, waist: measuring tape"]) +
        tg_sec(2, "How to Use a Ruler", ["Demonstration — line up at 0, read the end mark"]) +
        tg_sec(3, "Estimate First", ["A=3 in, B=5 in, C=2 in (accept any reasonable estimate)"]) +
        tg_sec(4, "Measure in Inches", ["1) 4 in, 2) 1 in, 3) 6 in, 4) 3 in"]) +
        tg_sec(5, "Word Problem", ["2 inches longer (6−4=2)"]) +
        tg_note("Page break"),

        # Tuesday
        tg_section_title("Tuesday: Measuring in Centimeters") +
        tg_sec(1, "Warm-up: Inches Review", ["A=2 in, B=5 in"]) +
        tg_sec(2, "Meet the Centimeter", ["Discussion — cm is smaller than inch"]) +
        tg_sec(3, "Estimate First", ["A=8 cm, B=12 cm, C=5 cm (accept reasonable estimates)"]) +
        tg_sec(4, "Measure in cm", ["1) 10 cm, 2) 4 cm, 3) 14 cm, 4) 7 cm"]) +
        tg_sec(5, "Word Problem", ["14 cm (5+9)"]) +
        tg_note("Page break"),

        # Wednesday
        tg_section_title("Wednesday: Inches vs. Centimeters") +
        tg_sec(1, "Warm-up", ["1 inch is longer; centimeters gives the bigger number (smaller unit → more of them)"]) +
        tg_sec(2, "Measure Two Ways", ["Line A: 2 in ≈ 5 cm; Line B: 4 in ≈ 10 cm"]) +
        tg_sec(3, "Number Talk", ["Centimeters — the unit is smaller, so you need more of them to cover the same length", "Sam forgot the UNIT — '3' could be 3 inches, 3 cm, or 3 feet"]) +
        tg_sec(4, "Best Unit", ["ant: cm/inches (small), bed: feet/meters (big), paper clip: cm/inches (small), door: feet/meters (big)"]) +
        tg_sec(5, "Estimate Real Objects", ["Accept reasonable estimates; typical: pencil ≈ 7 in, hand span ≈ 15 cm, spoon ≈ 6 in, shoe ≈ 20 cm"]) +
        tg_note("Page break"),

        # Thursday
        tg_section_title("Thursday: Comparing Lengths") +
        tg_sec(1, "Warm-up", ["A=6 cm, B=11 cm"]) +
        tg_sec(2, "How Much Longer", ["Pair 1: 9 and 4, 5 cm longer | Pair 2: 13 and 6, 7 cm longer | Pair 3: 10 and 7, 3 cm longer"]) +
        tg_sec(3, "Word Problems", ["6 inches longer (14−8)", "40 cm (25+15)"]) +
        tg_sec(4, "Order by Length", ["A=5 in, B=2 in, C=4 in; order: B, C, A"]) +
        tg_sec(5, "Create Own", ["Accept student drawings ≈3 in and ≈5 in with a valid comparing question"]) +
        tg_note("Page break"),

        # Friday
        tg_section_title("Friday: Review & Self-Check") +
        tg_sec(1, "Warm-up", ["1 inch is LONGER than 1 cm; ant → centimeters (or inches)"]) +
        tg_sec(2, "Estimate First", ["A=4 inches, B=9 cm (accept reasonable estimates)"]) +
        tg_sec(3, "Measuring Review", ["1) 3 in, 2) 12 cm, 3) 5 in, 4) 8 cm"]) +
        tg_sec(4, "Word Problems", ["9 cm (15−6)", "19 inches (12+7)"]) +
        tg_sec(5, "Self-Check", ["Accept student self-assessment and reflection"])
    )


# ═══════════════════════════════════════════════════
# GENERATE
# ═══════════════════════════════════════════════════
if __name__ == "__main__":
    os.makedirs(WEEK, exist_ok=True)
    for f in glob.glob(os.path.join(WEEK, "*.pdf")):
        os.remove(f)
    for f in glob.glob(os.path.join(WEEK, "*.html")):
        os.remove(f)

    days = [
        (monday, "Monday", "Measuring in Inches"),
        (tuesday, "Tuesday", "Measuring in Centimeters"),
        (wednesday, "Wednesday", "Inches vs. Centimeters"),
        (thursday, "Thursday", "Comparing Lengths"),
        (friday, "Friday", "Week 15 Review & Self-Check"),
    ]

    for lesson_func, day, title in days:
        html = lesson_func()
        fname = f"Week_15_{day}"
        path = os.path.join(WEEK, f"{fname}.html")
        with open(path, "w") as f:
            f.write(html)
        pdf_path = os.path.join(WEEK, f"{fname}.pdf")
        HTML(filename=path).write_pdf(pdf_path)
        print(f"Generated: {pdf_path}")

    html = teacher_guide()
    path = os.path.join(WEEK, "Week_15_Teacher_Guide.html")
    with open(path, "w") as f:
        f.write(html)
    pdf_path = os.path.join(WEEK, "Week_15_Teacher_Guide.pdf")
    HTML(filename=path).write_pdf(pdf_path)
    print(f"Generated: {pdf_path}")

    print("\nWeek 15 (Length: Inches & Centimeters) complete!")
