{
  "title": "Learning Resource: Math Curriculum",
  "version": "2.0",
  "generated": "2026-10-14",
  "structure": "Levels A1 to X1 in learning order. Each level has 100 worksheets in 10 blocks of 10: blocks 1–9 teach new skills, block 10 is a checkpoint covering the whole level.",
  "spiral_review": "About 20% of every sheet in blocks 1–9 reviews skills from the levels in review_from. Checkpoint sheets are 70% this level, 30% review.",
  "mastery_rule": "Move to the next block when the last 2 sheets are both at least 90% correct within the target time. Pass the checkpoint at 90% to unlock the next level.",
  "timing": "target_minutes is a provisional per-sheet target including corrections. Calibrate it with test families before launch.",
  "expectations_note": "ontario_expectations lists Ontario 2020 Grades 1–8 math specific expectations as G<grade> <code>, e.g. G3 B2.2 = Grade 3, Number strand, Operations, expectation 2. A block can point to a different grade where that skill sits in the Ontario curriculum. Empty for Pre-K, Kindergarten and high school levels, which use curriculum_ref instead.",
  "curriculum_note": "curriculum_ref names the Ontario grade or course the level supports. ontario_strand gives the 2020 elementary strand letter (B Number, C Algebra, D Data, E Spatial Sense, F Financial Literacy). Add specific expectation codes after checking them against the official curriculum documents.",
  "strands": {
    "P": "Pencil skills",
    "N": "Number",
    "A": "Algebra",
    "D": "Data",
    "S": "Spatial sense",
    "F": "Financial literacy",
    "Fn": "Functions",
    "T": "Trigonometry",
    "C": "Calculus",
    "V": "Vectors",
    "M": "Matrices",
    "Pr": "Probability",
    "St": "Statistics",
    "G": "Geometry"
  },
  "levels": [
    {
      "id": "A1",
      "stage": "Early years",
      "grade": "Pre-K",
      "title": "Pencil control",
      "curriculum_ref": null,
      "sheet_count": 100,
      "review_from": [],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Trace straight lines",
          "strand": "Pencil skills",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 0,
          "target_minutes": 2
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Trace curved lines",
          "strand": "Pencil skills",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 0,
          "target_minutes": 2
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Zig-zag lines",
          "strand": "Pencil skills",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 0,
          "target_minutes": 2
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Corners and turns",
          "strand": "Pencil skills",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 0,
          "target_minutes": 2
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Colour inside shapes",
          "strand": "Pencil skills",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 0,
          "target_minutes": 2
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Trace circles and ovals",
          "strand": "Pencil skills",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 0,
          "target_minutes": 2
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Simple mazes",
          "strand": "Pencil skills",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 0,
          "target_minutes": 2
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Join the dots to 10",
          "strand": "Pencil skills",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 0,
          "target_minutes": 2
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Draw basic shapes",
          "strand": "Pencil skills",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 0,
          "target_minutes": 2
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Pencil control",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 3
        }
      ]
    },
    {
      "id": "A2",
      "stage": "Early years",
      "grade": "Pre-K",
      "title": "Counting and shapes",
      "curriculum_ref": null,
      "sheet_count": 100,
      "review_from": [
        "A1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Count objects to 5",
          "strand": "Number",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Count objects to 10",
          "strand": "Number",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Match quantities to numerals",
          "strand": "Number",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Name circles, squares, triangles",
          "strand": "Spatial sense",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Sort by colour and size",
          "strand": "Data",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Copy AB patterns",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "More, fewer, same",
          "strand": "Number",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Count dots to 10",
          "strand": "Number",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Read numbers to 10",
          "strand": "Number",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Counting and shapes",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 3
        }
      ]
    },
    {
      "id": "B1",
      "stage": "Early years",
      "grade": "Kindergarten",
      "title": "Numbers to 20",
      "curriculum_ref": "Kindergarten Program",
      "sheet_count": 100,
      "review_from": [
        "A1",
        "A2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Trace numerals 0–5",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Trace numerals 6–10",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Write numbers 0–10",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Read numbers to 20",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Count objects to 20",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "One more, one less",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "First to fifth (ordinal numbers)",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "AB and ABC patterns",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Position words: above, below, beside",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Numbers to 20",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 3
        }
      ]
    },
    {
      "id": "B2",
      "stage": "Early years",
      "grade": "Kindergarten",
      "title": "Numbers to 50 and first measuring",
      "curriculum_ref": "Kindergarten Program",
      "sheet_count": 100,
      "review_from": [
        "A2",
        "B1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Number order to 30",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Write numbers to 30",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Number order to 50",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Write numbers to 50",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Longer, shorter, taller",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Name Canadian coins",
          "strand": "Financial literacy",
          "ontario_strand": "F",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Read picture graphs",
          "strand": "Data",
          "ontario_strand": "D",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "2D shapes: sides and corners",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Count by 10s to 100",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Numbers to 50 and first measuring",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 3
        }
      ]
    },
    {
      "id": "C1",
      "stage": "Primary",
      "grade": "Grade 1",
      "title": "Numbers to 100, adding and subtracting 1 and 2",
      "curriculum_ref": "Grade 1",
      "sheet_count": 100,
      "review_from": [
        "B1",
        "B2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Read and write numbers to 100",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B1.1",
            "G2 B1.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Hundred chart patterns",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 C1.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Add 1 (to 20)",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Subtract 1 (to 20)",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Add 1 to larger numbers",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Add and subtract 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Doubles to 5 + 5",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Make 10 (number bonds)",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B1.2",
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Add and subtract 3",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Numbers to 100, adding and subtracting 1 and 2",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 3
        }
      ]
    },
    {
      "id": "C2",
      "stage": "Primary",
      "grade": "Grade 1",
      "title": "Add and subtract within 10",
      "curriculum_ref": "Grade 1",
      "sheet_count": 100,
      "review_from": [
        "B2",
        "C1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Add 4 and 5",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Subtract 4 and 5",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Fact families to 10",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.1",
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Add 6 and 7",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Subtract within 10",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Time to the hour",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G3 E2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Coin values: 5¢, 10¢, 25¢",
          "strand": "Financial literacy",
          "ontario_strand": "F",
          "ontario_expectations": [
            "G1 F1.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Tally charts",
          "strand": "Data",
          "ontario_strand": "D",
          "ontario_expectations": [
            "G1 D1.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Mixed facts to 10",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 2
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Add and subtract within 10",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 3
        }
      ]
    },
    {
      "id": "D1",
      "stage": "Primary",
      "grade": "Grade 1",
      "title": "Addition facts to 20",
      "curriculum_ref": "Grade 1",
      "sheet_count": 100,
      "review_from": [
        "C1",
        "C2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Add 8",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Add 9",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Add 10",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Doubles and near doubles",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Sums to 15",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.3",
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Sums to 20",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.3",
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Missing numbers (5 + __ = 9)",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G1 C2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Skip count by 2s, 5s, 10s",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G1 B1.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Mixed addition to 20",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Addition facts to 20",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 4
        }
      ]
    },
    {
      "id": "D2",
      "stage": "Primary",
      "grade": "Grade 1–2",
      "title": "Subtraction facts to 20",
      "curriculum_ref": "Grade 1–2",
      "sheet_count": 100,
      "review_from": [
        "C2",
        "D1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Subtract from 12",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Subtract from 15",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Subtract from 20",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Fact families to 20",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.1",
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Mixed addition and subtraction to 20",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Word problems to 20",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G1 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Time to the half hour",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G3 E2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Measure in centimetres",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G2 E2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Equal and not equal",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G1 C2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Subtraction facts to 20",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 4
        }
      ]
    },
    {
      "id": "E1",
      "stage": "Primary",
      "grade": "Grade 2",
      "title": "Two-digit addition",
      "curriculum_ref": "Grade 2",
      "sheet_count": 100,
      "review_from": [
        "D1",
        "D2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Tens and ones",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B1.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Compare numbers with <, >, =",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B1.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Add tens to 100",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "2-digit + 1-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "2-digit + 1-digit with regrouping",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "2-digit + 2-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "2-digit + 2-digit with regrouping",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Make amounts to $1",
          "strand": "Financial literacy",
          "ontario_strand": "F",
          "ontario_expectations": [
            "G2 F1.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Bar graphs",
          "strand": "Data",
          "ontario_strand": "D",
          "ontario_expectations": [
            "G2 D1.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Two-digit addition",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 4
        }
      ]
    },
    {
      "id": "E2",
      "stage": "Primary",
      "grade": "Grade 2",
      "title": "Two-digit subtraction and equal groups",
      "curriculum_ref": "Grade 2",
      "sheet_count": 100,
      "review_from": [
        "D2",
        "E1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "2-digit − 1-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "2-digit − 1-digit with regrouping",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "2-digit − 2-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "2-digit − 2-digit with regrouping",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Mixed 2-digit addition and subtraction",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Two-step word problems",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Repeated addition",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Equal groups and arrays",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Metres and centimetres",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G2 E2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Two-digit subtraction and equal groups",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 4
        }
      ]
    },
    {
      "id": "F1",
      "stage": "Primary",
      "grade": "Grade 3",
      "title": "Three-digit numbers",
      "curriculum_ref": "Grade 3",
      "sheet_count": 100,
      "review_from": [
        "E1",
        "E2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Place value to 1000",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B1.1",
            "G3 B1.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "3-digit addition",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "3-digit addition with regrouping",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.4",
            "G3 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "3-digit subtraction",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Subtracting across zeros",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.4",
            "G3 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Round to 10 and 100",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B1.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Mass and capacity",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G3 E2.3",
            "G3 E2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Time to 5 minutes",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G3 E2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "3D objects",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G3 E1.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Three-digit numbers",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 4
        }
      ]
    },
    {
      "id": "F2",
      "stage": "Primary",
      "grade": "Grade 3",
      "title": "Times tables: 2, 5, 10, 3, 4, 6",
      "curriculum_ref": "Grade 3",
      "sheet_count": 100,
      "review_from": [
        "E2",
        "F1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "× 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "× 5",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "× 10",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "× 3",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.6",
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "× 4",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.6",
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Mixed: 2, 3, 4, 5, 10",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.6",
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "× 6",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Add dollars and cents",
          "strand": "Financial literacy",
          "ontario_strand": "F",
          "ontario_expectations": [
            "G3 F1.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Pictographs with a scale",
          "strand": "Data",
          "ontario_strand": "D",
          "ontario_expectations": [
            "G3 D1.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Times tables: 2, 5, 10, 3, 4, 6",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 4
        }
      ]
    },
    {
      "id": "G1",
      "stage": "Primary",
      "grade": "Grade 3",
      "title": "All times tables and division facts",
      "curriculum_ref": "Grade 3",
      "sheet_count": 100,
      "review_from": [
        "F1",
        "F2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "× 7",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "× 8",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "× 9",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "All tables mixed",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Division as sharing",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G2 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "÷ 2, 5, 10",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G3 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "÷ 3, 4",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "÷ 6 to 9",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Perimeter",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G3 E2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 3
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: All times tables and division facts",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 4
        }
      ]
    },
    {
      "id": "G2",
      "stage": "Junior",
      "grade": "Grade 4",
      "title": "Multiplying by one digit",
      "curriculum_ref": "Grade 4",
      "sheet_count": 100,
      "review_from": [
        "F2",
        "G1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "2-digit × 1-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "2-digit × 1-digit with regrouping",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "3-digit × 1-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "4-digit × 1-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Division with remainders 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Division with remainders 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Area of rectangles",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G4 E2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Fractions as parts of a whole",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B1.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Likely and unlikely",
          "strand": "Data",
          "ontario_strand": "D",
          "ontario_expectations": [
            "G4 D2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Multiplying by one digit",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 6
        }
      ]
    },
    {
      "id": "H1",
      "stage": "Junior",
      "grade": "Grade 4",
      "title": "Short division and decimals",
      "curriculum_ref": "Grade 4",
      "sheet_count": 100,
      "review_from": [
        "G1",
        "G2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "2-digit ÷ 1-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "3-digit ÷ 1-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "3-digit ÷ 1-digit with remainders",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Tenths",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B1.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Hundredths",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B1.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Add decimals (money)",
          "strand": "Financial literacy",
          "ontario_strand": "F",
          "ontario_expectations": [
            "G5 B2.4",
            "G5 F1.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Subtract decimals (money)",
          "strand": "Financial literacy",
          "ontario_strand": "F",
          "ontario_expectations": [
            "G5 B2.4",
            "G5 F1.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Compare fractions, same denominator",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B1.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Grid coordinates",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G4 E1.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Short division and decimals",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 6
        }
      ]
    },
    {
      "id": "H2",
      "stage": "Junior",
      "grade": "Grade 5",
      "title": "Long multiplication",
      "curriculum_ref": "Grade 5",
      "sheet_count": 100,
      "review_from": [
        "G2",
        "H1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "2-digit × 2-digit 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "2-digit × 2-digit 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "3-digit × 2-digit",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "× 10, 100, 1000",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G4 B2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Mixed four operations",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Order of operations (whole numbers)",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Equivalent fractions",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B1.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Classify angles",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G4 E2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Simple budgets",
          "strand": "Financial literacy",
          "ontario_strand": "F",
          "ontario_expectations": [
            "G5 F1.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 4
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Long multiplication",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 6
        }
      ]
    },
    {
      "id": "I1",
      "stage": "Junior",
      "grade": "Grade 5",
      "title": "Long division",
      "curriculum_ref": "Grade 5",
      "sheet_count": 100,
      "review_from": [
        "H1",
        "H2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "÷ 2-digit 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "÷ 2-digit 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "÷ 2-digit 3",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "÷ 2-digit 4",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Quotients of 2+ digits 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Quotients of 2+ digits 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Decimals ÷ whole numbers",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B2.11"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Mean, median, mode",
          "strand": "Data",
          "ontario_strand": "D",
          "ontario_expectations": [
            "G5 D1.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Volume of rectangular prisms",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G7 E2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Long division",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 8
        }
      ]
    },
    {
      "id": "I2",
      "stage": "Junior",
      "grade": "Grade 5–6",
      "title": "Fraction foundations",
      "curriculum_ref": "Grade 5–6",
      "sheet_count": 100,
      "review_from": [
        "H2",
        "I1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Factors and multiples",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Simplify fractions 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B1.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Simplify fractions 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B1.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Improper fractions and mixed numbers",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B1.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Common denominators",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Add fractions, same denominator",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Add fractions, unlike denominators 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Fractions to decimals",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B1.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Introducing percent",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G5 B1.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Fraction foundations",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 8
        }
      ]
    },
    {
      "id": "J1",
      "stage": "Junior",
      "grade": "Grade 6",
      "title": "Adding and subtracting fractions",
      "curriculum_ref": "Grade 6",
      "sheet_count": 100,
      "review_from": [
        "I1",
        "I2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Add fractions, unlike denominators 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Add fractions, unlike denominators 3",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Add mixed numbers 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Add mixed numbers 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Subtract fractions 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Subtract fractions 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Subtract mixed numbers with borrowing",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Mixed fraction addition and subtraction",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Decimal × decimal",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.9"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Adding and subtracting fractions",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 8
        }
      ]
    },
    {
      "id": "J2",
      "stage": "Junior",
      "grade": "Grade 6",
      "title": "Multiplying and dividing fractions",
      "curriculum_ref": "Grade 6",
      "sheet_count": 100,
      "review_from": [
        "I2",
        "J1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Multiply fractions 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.8"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Multiply fractions 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.8"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Multiply mixed numbers",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Divide fractions",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.8"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Divide mixed numbers",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Mixed × and ÷ with fractions",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "All four operations, 2 fractions 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "All four operations, 2 fractions 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Ratios and rates",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B2.12"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Multiplying and dividing fractions",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 8
        }
      ]
    },
    {
      "id": "K1",
      "stage": "Intermediate",
      "grade": "Grade 7",
      "title": "Multi-step fractions and percent",
      "curriculum_ref": "Grade 7",
      "sheet_count": 100,
      "review_from": [
        "J1",
        "J2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "× and ÷ with three fractions",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.6"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Add three fractions",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Add and subtract three fractions",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Order of operations with fractions 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Order of operations with fractions 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Order of operations with fractions 3",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Fractions and decimals together",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B1.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Percent of a number",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Simple interest",
          "strand": "Financial literacy",
          "ontario_strand": "F",
          "ontario_expectations": [
            "G8 F1.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Multi-step fractions and percent",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 8
        }
      ]
    },
    {
      "id": "K2",
      "stage": "Intermediate",
      "grade": "Grade 7",
      "title": "Word problems and integers",
      "curriculum_ref": "Grade 7",
      "sheet_count": 100,
      "review_from": [
        "J2",
        "K1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Fraction word problems 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Fraction word problems 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Decimal word problems",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Integers on a number line",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G6 B1.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Add integers 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Add integers 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Subtract integers 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.4",
            "G8 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Subtract integers 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.4",
            "G8 B2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Circles: circumference and area",
          "strand": "Spatial sense",
          "ontario_strand": "E",
          "ontario_expectations": [
            "G7 E2.3",
            "G7 E2.5"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Word problems and integers",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 8
        }
      ]
    },
    {
      "id": "L1",
      "stage": "Intermediate",
      "grade": "Grade 7–8",
      "title": "Integers and expressions",
      "curriculum_ref": "Grade 7–8",
      "sheet_count": 100,
      "review_from": [
        "K1",
        "K2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Multiply integers",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Divide integers",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Four operations with integers 1",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Four operations with integers 2",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G8 B2.7"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Evaluate expressions 1",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G7 C2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Evaluate expressions 2",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G8 C2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Exponents and square roots",
          "strand": "Number",
          "ontario_strand": "B",
          "ontario_expectations": [
            "G7 B2.7",
            "G8 B1.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Probability of simple events",
          "strand": "Data",
          "ontario_strand": "D",
          "ontario_expectations": [
            "G7 D2.2"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Histograms",
          "strand": "Data",
          "ontario_strand": "D",
          "ontario_expectations": [
            "G6 D1.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 5
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Integers and expressions",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 8
        }
      ]
    },
    {
      "id": "L2",
      "stage": "Intermediate",
      "grade": "Grade 8",
      "title": "Simplifying and solving",
      "curriculum_ref": "Grade 8",
      "sheet_count": 100,
      "review_from": [
        "K2",
        "L1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Collect like terms 1",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G7 C2.1",
            "G8 C2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Collect like terms 2",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G7 C2.1",
            "G8 C2.1"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Distributive property 1",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Distributive property 2",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "One-step equations",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G7 C2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Two-step equations",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G7 C2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Equations with brackets",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G8 C2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Variables on both sides",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G8 C2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Equations with fractions",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G8 C2.3"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Simplifying and solving",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 9
        }
      ]
    },
    {
      "id": "M1",
      "stage": "Secondary",
      "grade": "Grade 8–9",
      "title": "Linear relations",
      "curriculum_ref": "Grade 8 / MTH1W",
      "sheet_count": 100,
      "review_from": [
        "L1",
        "L2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Rearrange formulas 1",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Rearrange formulas 2",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Graph linear relations 1",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Graph linear relations 2",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Slope and rate of change",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Inequalities 1",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G8 C2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Inequalities 2",
          "strand": "Algebra",
          "ontario_strand": "C",
          "ontario_expectations": [
            "G8 C2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Pythagorean theorem 1",
          "strand": "Geometry",
          "ontario_strand": null,
          "ontario_expectations": [
            "G8 E2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Pythagorean theorem 2",
          "strand": "Geometry",
          "ontario_strand": null,
          "ontario_expectations": [
            "G8 E2.4"
          ],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Linear relations",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 9
        }
      ]
    },
    {
      "id": "M2",
      "stage": "Secondary",
      "grade": "Grade 9–10",
      "title": "Systems of equations",
      "curriculum_ref": "MTH1W / Grade 10",
      "sheet_count": 100,
      "review_from": [
        "L2",
        "M1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Elimination 1",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Elimination 2",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Elimination 3",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Substitution 1",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Substitution 2",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Solve systems by graphing",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Three-variable systems 1",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Three-variable systems 2",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "System word problems",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Systems of equations",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 9
        }
      ]
    },
    {
      "id": "N1",
      "stage": "Secondary",
      "grade": "Grade 9–10",
      "title": "Polynomials and factoring",
      "curriculum_ref": "MTH1W / Grade 10",
      "sheet_count": 100,
      "review_from": [
        "M1",
        "M2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Exponent laws 1",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Exponent laws 2",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Add and subtract polynomials",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Multiply polynomials",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Special products",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Common factoring",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Factor trinomials 1",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Factor trinomials 2",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Factor when a ≠ 1",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 6
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Polynomials and factoring",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 9
        }
      ]
    },
    {
      "id": "N2",
      "stage": "Secondary",
      "grade": "Grade 10",
      "title": "Quadratics and right-triangle trig",
      "curriculum_ref": "Grade 10",
      "sheet_count": 100,
      "review_from": [
        "M2",
        "N1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Radicals 1",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 7
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Radicals 2",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 7
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Radicals 3",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 7
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Solve quadratics by factoring",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 7
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Complete the square",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 7
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Quadratic formula",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 7
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Graph quadratics (vertex form) 1",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 7
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Graph quadratics (vertex form) 2",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 7
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "SOH CAH TOA",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 7
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Quadratics and right-triangle trig",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 10
        }
      ]
    },
    {
      "id": "O1",
      "stage": "Senior",
      "grade": "Grade 11",
      "title": "Advanced factoring and rational expressions",
      "curriculum_ref": "MCR3U",
      "sheet_count": 100,
      "review_from": [
        "N1",
        "N2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Expand polynomial products",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Factor by grouping",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Sum and difference of cubes",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Factor higher-degree polynomials 1",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Factor higher-degree polynomials 2",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Simplify rational expressions",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "× and ÷ rational expressions",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "+ and − rational expressions",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "The discriminant",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Advanced factoring and rational expressions",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 12
        }
      ]
    },
    {
      "id": "O2",
      "stage": "Senior",
      "grade": "Grade 11",
      "title": "Functions and quadratics",
      "curriculum_ref": "MCR3U",
      "sheet_count": 100,
      "review_from": [
        "N2",
        "O1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Function notation, domain and range",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Quadratic max and min 1",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Quadratic max and min 2",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Quadratic max and min 3",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Find a quadratic from points",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Linear-quadratic systems",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Introducing complex numbers",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Sum and product of roots",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Transformations of functions",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 8
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Functions and quadratics",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 12
        }
      ]
    },
    {
      "id": "P1",
      "stage": "Senior",
      "grade": "Grade 11",
      "title": "Exponentials and trigonometry",
      "curriculum_ref": "MCR3U",
      "sheet_count": 100,
      "review_from": [
        "O1",
        "O2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Exponential functions",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Graph exponentials",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Exponential equations",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Sine law and cosine law",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Triangle area with sine",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Angles of any size",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Trig identities 1",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Sinusoidal graphs",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Arithmetic and geometric sequences",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Exponentials and trigonometry",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 15
        }
      ]
    },
    {
      "id": "P2",
      "stage": "Senior",
      "grade": "Grade 11",
      "title": "Series, finance and radian trig",
      "curriculum_ref": "MCR3U",
      "sheet_count": 100,
      "review_from": [
        "O2",
        "P1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Arithmetic and geometric series",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Recursive sequences",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Compound interest",
          "strand": "Financial literacy",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Annuities",
          "strand": "Financial literacy",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Radian measure",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Trig graphs in radians",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Trig equations",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Quadratic inequalities",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Proof by induction",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Series, finance and radian trig",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 15
        }
      ]
    },
    {
      "id": "Q1",
      "stage": "Senior",
      "grade": "Grade 12",
      "title": "Polynomial and rational functions",
      "curriculum_ref": "MHF4U",
      "sheet_count": 100,
      "review_from": [
        "P1",
        "P2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Polynomial division",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Remainder theorem",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Factor theorem",
          "strand": "Algebra",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Graph polynomial functions",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Polynomial inequalities",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Graph rational functions 1",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Graph rational functions 2",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Rational equations and inequalities",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Radical equations",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Polynomial and rational functions",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 15
        }
      ]
    },
    {
      "id": "Q2",
      "stage": "Senior",
      "grade": "Grade 12",
      "title": "Logarithms and advanced trig",
      "curriculum_ref": "MHF4U",
      "sheet_count": 100,
      "review_from": [
        "P2",
        "Q1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Logarithms",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Log laws",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Graph logarithms",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Log and exponential equations",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Growth and decay applications",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Compound angle formulas 1",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Compound angle formulas 2",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Prove trig identities",
          "strand": "Trigonometry",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Absolute value functions",
          "strand": "Functions",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 10
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Logarithms and advanced trig",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 15
        }
      ]
    },
    {
      "id": "R1",
      "stage": "Calculus",
      "grade": "Grade 12",
      "title": "Limits and derivatives",
      "curriculum_ref": "MCV4U",
      "sheet_count": 100,
      "review_from": [
        "Q1",
        "Q2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Limits 1",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Limits 2",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Continuity",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Derivative from first principles",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Power rule",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Product and quotient rules",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Chain rule",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Tangent lines",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Rates of change",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Limits and derivatives",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 18
        }
      ]
    },
    {
      "id": "R2",
      "stage": "Calculus",
      "grade": "Grade 12",
      "title": "Applying derivatives",
      "curriculum_ref": "MCV4U",
      "sheet_count": 100,
      "review_from": [
        "Q2",
        "R1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Increasing and decreasing",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Turning points 1",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Turning points 2",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Concavity",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Curve sketching",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Optimization 1",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Optimization 2",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Related rates",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Derivatives of trig functions",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Applying derivatives",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 18
        }
      ]
    },
    {
      "id": "S1",
      "stage": "Calculus",
      "grade": "Grade 12+",
      "title": "Exponential derivatives and integration",
      "curriculum_ref": "MCV4U and beyond",
      "sheet_count": 100,
      "review_from": [
        "R1",
        "R2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Derivatives of eˣ and ln x",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Limits of trig functions",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Infinite sequences and limits",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Infinite geometric series",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Antiderivatives 1",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Antiderivatives 2",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Definite integrals",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Fundamental theorem of calculus",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Area under a curve",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Exponential derivatives and integration",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 22
        }
      ]
    },
    {
      "id": "S2",
      "stage": "Calculus",
      "grade": "University prep",
      "title": "Integration techniques",
      "curriculum_ref": "Beyond MCV4U",
      "sheet_count": 100,
      "review_from": [
        "R2",
        "S1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Substitution 1",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Substitution 2",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Integration by parts 1",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Integration by parts 2",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Definite integrals by substitution",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Area between curves",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Volumes of revolution 1",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Volumes of revolution 2",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Integration review",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 15
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Integration techniques",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 22
        }
      ]
    },
    {
      "id": "T1",
      "stage": "Calculus",
      "grade": "University prep",
      "title": "Calculus in action",
      "curriculum_ref": "Beyond MCV4U",
      "sheet_count": 100,
      "review_from": [
        "S1",
        "S2"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Arc length",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 20
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Velocity and distance",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 20
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Separable differential equations 1",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 20
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Separable differential equations 2",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 20
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Growth and decay models",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 20
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Science and economics models",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 20
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Higher derivatives",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 20
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Mixed differentiation",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 20
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Mixed integration",
          "strand": "Calculus",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 20
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Calculus in action",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 30
        }
      ]
    },
    {
      "id": "U1",
      "stage": "Electives",
      "grade": "Grade 12",
      "title": "Vectors",
      "curriculum_ref": "MCV4U",
      "sheet_count": 100,
      "review_from": [
        "N2",
        "O1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "2D vectors 1",
          "strand": "Vectors",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "2D vectors 2",
          "strand": "Vectors",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Vector operations",
          "strand": "Vectors",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Dot product",
          "strand": "Vectors",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Cross product",
          "strand": "Vectors",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "3D coordinates and vectors",
          "strand": "Vectors",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Lines in 3D",
          "strand": "Vectors",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Planes",
          "strand": "Vectors",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Intersections of lines and planes",
          "strand": "Vectors",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Vectors",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 18
        }
      ]
    },
    {
      "id": "V1",
      "stage": "Electives",
      "grade": "Grade 12+",
      "title": "Matrices and transformations",
      "curriculum_ref": null,
      "sheet_count": 100,
      "review_from": [
        "M2",
        "O1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Matrix addition and subtraction",
          "strand": "Matrices",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Matrix multiplication",
          "strand": "Matrices",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Determinants and inverses",
          "strand": "Matrices",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Solve systems with matrices",
          "strand": "Matrices",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Reflections",
          "strand": "Matrices",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Rotations",
          "strand": "Matrices",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Dilations",
          "strand": "Matrices",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Combining transformations",
          "strand": "Matrices",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Mappings",
          "strand": "Matrices",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Matrices and transformations",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 18
        }
      ]
    },
    {
      "id": "W1",
      "stage": "Electives",
      "grade": "Grade 12",
      "title": "Counting and probability",
      "curriculum_ref": "MDM4U",
      "sheet_count": 100,
      "review_from": [
        "L1",
        "K1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Fundamental counting principle",
          "strand": "Probability",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Permutations",
          "strand": "Probability",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Circular and repeated permutations",
          "strand": "Probability",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Combinations",
          "strand": "Probability",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "Pascal's triangle and binomial theorem",
          "strand": "Probability",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Probability",
          "strand": "Probability",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Conditional probability",
          "strand": "Probability",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Independent events",
          "strand": "Probability",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Expected value",
          "strand": "Probability",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Counting and probability",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 18
        }
      ]
    },
    {
      "id": "X1",
      "stage": "Electives",
      "grade": "Grade 12",
      "title": "Statistics",
      "curriculum_ref": "MDM4U",
      "sheet_count": 100,
      "review_from": [
        "W1"
      ],
      "blocks": [
        {
          "block": 1,
          "sheet_from": 1,
          "sheet_to": 10,
          "topic": "Sampling and organizing data",
          "strand": "Statistics",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 2,
          "sheet_from": 11,
          "sheet_to": 20,
          "topic": "Spread and standard deviation",
          "strand": "Statistics",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 3,
          "sheet_from": 21,
          "sheet_to": 30,
          "topic": "Binomial distribution",
          "strand": "Statistics",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 4,
          "sheet_from": 31,
          "sheet_to": 40,
          "topic": "Normal distribution",
          "strand": "Statistics",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 5,
          "sheet_from": 41,
          "sheet_to": 50,
          "topic": "z-scores",
          "strand": "Statistics",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 6,
          "sheet_from": 51,
          "sheet_to": 60,
          "topic": "Probability density",
          "strand": "Statistics",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 7,
          "sheet_from": 61,
          "sheet_to": 70,
          "topic": "Sampling distributions",
          "strand": "Statistics",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 8,
          "sheet_from": 71,
          "sheet_to": 80,
          "topic": "Hypothesis testing",
          "strand": "Statistics",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 9,
          "sheet_from": 81,
          "sheet_to": 90,
          "topic": "Correlation and regression",
          "strand": "Statistics",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "learn",
          "review_pct": 20,
          "target_minutes": 12
        },
        {
          "block": 10,
          "sheet_from": 91,
          "sheet_to": 100,
          "topic": "Checkpoint: Statistics",
          "strand": "Mixed review",
          "ontario_strand": null,
          "ontario_expectations": [],
          "type": "checkpoint",
          "review_pct": 30,
          "target_minutes": 18
        }
      ]
    }
  ]
}