{-# LANGUAGE OverloadedStrings #-}

-- | This module defines the course lessons.
module Study.Courses.English.Grammar.Introduction.Lessons  where

import Core
import Study.Courses.English.Grammar.Introduction.Documents
import Study.Courses.English.Grammar.Introduction.Exercises
import Study.Courses.English.Grammar.Introduction.Vocabulary

-- | Lesson: Basics 1.
lesson1 :: Lesson
lesson1 :: Lesson
lesson1 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Basics 1" ExerciseGenerator
exercises1 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture1) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan1) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary1_cumulative)

-- | Lesson: Basics 2.
lesson2 :: Lesson
lesson2 :: Lesson
lesson2 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Basics 2" ExerciseGenerator
exercises2 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture2) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan2) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary2_cumulative)

-- | Lesson: Basics 3.
lesson3 :: Lesson
lesson3 :: Lesson
lesson3 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Basics 3" ExerciseGenerator
exercises3 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture3) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan3) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary3_cumulative)

-- | Lesson: Tanru 1.
lesson4 :: Lesson
lesson4 :: Lesson
lesson4 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Tanru 1" ExerciseGenerator
exercises4 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture4) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan4) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary4_cumulative)

-- | Lesson: Questions 1.
lesson5 :: Lesson
lesson5 :: Lesson
lesson5 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Questions 1" ExerciseGenerator
exercises5 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture5) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan5) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary5_cumulative)

-- | Lesson: Abstractions 1.
lesson6 :: Lesson
lesson6 :: Lesson
lesson6 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Abstractions 1" ExerciseGenerator
exercises6 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture6) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan6) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary6_cumulative)

-- | Lesson: Terminator elision.
lesson7 :: Lesson
lesson7 :: Lesson
lesson7 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Terminator elision" ExerciseGenerator
exercises7 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture7) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan7) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary7_cumulative)

-- | Lesson: Checkpoint (Lessons 1--7).
checkpoint1to7 :: Lesson
checkpoint1to7 :: Lesson
checkpoint1to7 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Checkpoint: Lessons 1–7" ExerciseGenerator
exercises1to7 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture1to7) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan1to7) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary7_cumulative)

-- | Lesson: Relative clauses.
lesson9 :: Lesson
lesson9 :: Lesson
lesson9 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Relative clauses" ExerciseGenerator
exercises9 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture9) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan9) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary9_cumulative)

-- | Lesson: Linked sumti.
lesson10 :: Lesson
lesson10 :: Lesson
lesson10 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Linked sumti" ExerciseGenerator
exercises10 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture10) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan10) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary10_cumulative)

-- | Lesson: Sumtcita
lesson11 :: Lesson
lesson11 :: Lesson
lesson11 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Sumtcita" ExerciseGenerator
exercises11 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture11) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan11) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary11_cumulative)

-- | Lesson: Tenses 1
lesson12 :: Lesson
lesson12 :: Lesson
lesson12 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Tenses 1" ExerciseGenerator
exercises12 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture12) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan12) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary12_cumulative)

-- | Lesson: Checkpoint (Lessons 9--12)
checkpoint9to12 :: Lesson
checkpoint9to12 :: Lesson
checkpoint9to12 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Checkpoint: Lessons 9-12" ExerciseGenerator
exercises9to12 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture9to12) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan9to12) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary12_cumulative)

-- | Lesson: Quotations 1
lesson14 :: Lesson
lesson14 :: Lesson
lesson14 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Quotations 1" ExerciseGenerator
exercises14 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture14) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan14) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary14_cumulative)

-- | Lesson: Relative phrases
lesson15 :: Lesson
lesson15 :: Lesson
lesson15 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Relative phrases" ExerciseGenerator
exercises15 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture15) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan15) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary15_cumulative)

-- | Lesson: Logical connectives 1
lesson16 :: Lesson
lesson16 :: Lesson
lesson16 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Logical connectives 1" ExerciseGenerator
exercises16 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture16) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan16) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary16_cumulative)

-- | Lesson: Negation 1
lesson17 :: Lesson
lesson17 :: Lesson
lesson17 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Negation 1" ExerciseGenerator
exercises17 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture17) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan17) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary17_cumulative)

-- | Lesson: Misc 1
lesson18 :: Lesson
lesson18 :: Lesson
lesson18 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Misc. 1" ExerciseGenerator
exercises18 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture18) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan18) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary18_cumulative)

-- | Lesson: Checkpoint (Lessons 14--18)
checkpoint14to18 :: Lesson
checkpoint14to18 :: Lesson
checkpoint14to18 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Checkpoint: Lessons 14-18" ExerciseGenerator
exercises14to18 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture14to18) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan14to18) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary18_cumulative)

-- | Lesson 20: Morphology
lesson20 :: Lesson
lesson20 :: Lesson
lesson20 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Morphology" ExerciseGenerator
exercises20 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture20) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan20) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary20_cumulative)

-- | Lesson 21: Gadri 1
lesson21 :: Lesson
lesson21 :: Lesson
lesson21 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Gadri 1" ExerciseGenerator
exercises21 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture21) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan21) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary21_cumulative)

-- | Lesson 22: Numbers 1
lesson22 :: Lesson
lesson22 :: Lesson
lesson22 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Numbers 1" ExerciseGenerator
exercises22 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture22) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan22) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary22_cumulative)

-- | Lesson 23: Tenses 2
lesson23 :: Lesson
lesson23 :: Lesson
lesson23 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Tenses 2" ExerciseGenerator
exercises23 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture23) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan23) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary23_cumulative)

-- | Lesson 24: Gadri 2
lesson24 :: Lesson
lesson24 :: Lesson
lesson24 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Gadri 2" ExerciseGenerator
exercises24 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture24) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan24) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary24_cumulative)

-- | Lesson: Checkpoint (Lessons 20--24)
checkpoint20to24 :: Lesson
checkpoint20to24 :: Lesson
checkpoint20to24 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Checkpoint: Lessons 20-24" ExerciseGenerator
exercises20to24 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture20to24) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan20to24) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary24_cumulative)

-- | Lesson 26: Quantifying sumti 1
lesson26 :: Lesson
lesson26 :: Lesson
lesson26 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Quantifying sumti 1" ExerciseGenerator
exercises26 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture26) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan26) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary26_cumulative)

-- | Lesson 27: Tenses 3
lesson27 :: Lesson
lesson27 :: Lesson
lesson27 = Text
-> ExerciseGenerator
-> Maybe Pandoc
-> Maybe Pandoc
-> Maybe Vocabulary
-> Lesson
Lesson Text
"Tenses 3" ExerciseGenerator
exercises27 (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
lecture27) (Pandoc -> Maybe Pandoc
forall a. a -> Maybe a
Just Pandoc
plan27) (Vocabulary -> Maybe Vocabulary
forall a. a -> Maybe a
Just Vocabulary
vocabulary27_cumulative)