attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment

Answer each question and explain further respectively

Reading File
All questions from both exam papers have been fully answered above. Here is a quick reference summary of all correct answers:

QUICK REFERENCE ANSWER KEY

KMTC/QP-08/EPS - MCQ Answers

QAnswer
1A - Semicircular canals
2B - Pineal gland
3B - Adrenaline
4A - Estrogen (proliferative phase)
5B - Contracts and moves down
6A - Pupillary constriction via iris muscle
7C - Pepsin
8A - Oxygen exchange
9Thyroxine (hypothyroidism)
10Thyroxine deficiency
11B - Tongue
12D - Epiglottis
13A - Inhibition of parasympathetic/peristalsis
14A - Medulla oblongata
15A - Metabolic alkalosis (H⁺ loss from vomiting)
16B - Adrenal
17C - Testis
18A - Reduced GFR + increased ADH
19C - Bronchi
20B - Gastrin

Physiology II - MCQ Answers

QAnswer
1a) Oviduct
2d) Neutralizes acidic vaginal medium
3c) Gall bladder, esophagus, liver (liver, gallbladder, pancreas are true accessory organs)
4c) Muscularis layer
5d) 1500 ml/day
6d) Calcitonin
7c) Kidney
8a) Permissive action
9b) Synthesized in rough ER
10c) Stimulates sperm production
11d) Luteinizing hormone (LH)
12c) Thymosin hormone
13a) Glucocorticoid from adrenal cortex
14b) Stimulates protein and fat breakdown
15a) Hypersecretion of cortisol
16a) Increases calcium absorption (via vitamin D)
17b) Increased renal sodium excretion
18a) Immune cells attack thyroid
19c) GHRH and prolactin releasing hormone
20d) GH hypersecretion in children
21a) Diabetes mellitus
22b) Hyperparathyroidism
23a) IM hydrocortisone injection
24c) Not insulin dependent
25c) ~12 cm
26d) External respiration
27c) Holds lungs against thoracic wall
28b) Ciliated columnar epithelium
29a) Decreases airway diameter
30c) Increases compliance
31d) Alveolar pressure equals atmospheric
32a) ~2.5 ml
33a) Pseudostratified ciliated columnar epithelium
34c) Contributes to compliance by elasticity
35d) Low O₂, high CO₂
36c) Stomach
37Photoreceptors (unique to the eye)
38a) CN VII, IX, and X
39c) The nasal cavity
40d) Layer of rods and cones
Each answer above has a detailed explanation in the full response. Let me know if you need any question explained further!

Create a study guide PDF summarizing all key physiology concepts

Reading File
Running Command

ls /home/daytona/workspace/ 2>/dev/null || echo "workspace empty or not found"

Running Command

mkdir -p /home/daytona/workspace/physiology-study-guide && python3 -c "from repo…

Writing File

~/physiology-study-guide/build_guide.py

from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm, mm
from reportlab.platypus import (
    SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle,
    HRFlowable, PageBreak, KeepTogether
)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY
from reportlab.platypus.flowables import HRFlowable

OUTPUT = "/home/daytona/workspace/physiology-study-guide/Physiology_Study_Guide.pdf"

# ── Colour palette ──────────────────────────────────────────────────────────
DARK_BLUE   = colors.HexColor("#1A3A5C")
MID_BLUE    = colors.HexColor("#2E6DA4")
LIGHT_BLUE  = colors.HexColor("#D6E8F7")
ACCENT      = colors.HexColor("#E8A020")
GREEN       = colors.HexColor("#2A7A3B")
LIGHT_GREEN = colors.HexColor("#D5EDD9")
RED         = colors.HexColor("#C0392B")
LIGHT_RED   = colors.HexColor("#FDECEA")
PURPLE      = colors.HexColor("#6C3483")
LIGHT_PURPLE= colors.HexColor("#EDE5F5")
ORANGE      = colors.HexColor("#D35400")
LIGHT_ORANGE= colors.HexColor("#FDEBD0")
LIGHT_GREY  = colors.HexColor("#F4F6F8")
MID_GREY    = colors.HexColor("#BDC3C7")
DARK_GREY   = colors.HexColor("#2C3E50")
WHITE       = colors.white

# ── Styles ───────────────────────────────────────────────────────────────────
styles = getSampleStyleSheet()

def make_style(name, parent="Normal", **kw):
    return ParagraphStyle(name, parent=styles[parent], **kw)

# Title / cover
S_COVER_TITLE = make_style("CoverTitle",
    fontSize=30, textColor=WHITE, fontName="Helvetica-Bold",
    alignment=TA_CENTER, spaceAfter=8)
S_COVER_SUB = make_style("CoverSub",
    fontSize=14, textColor=colors.HexColor("#D0E8FF"),
    alignment=TA_CENTER, spaceAfter=4)
S_COVER_NOTE = make_style("CoverNote",
    fontSize=10, textColor=colors.HexColor("#A0C8F0"),
    alignment=TA_CENTER)

# Chapter heading
S_CH = make_style("ChHead",
    fontSize=17, textColor=WHITE, fontName="Helvetica-Bold",
    alignment=TA_LEFT, spaceAfter=4, spaceBefore=2)

# Section heading
S_SEC = make_style("SecHead",
    fontSize=12, textColor=DARK_BLUE, fontName="Helvetica-Bold",
    spaceAfter=4, spaceBefore=10, leftIndent=0)

# Sub-section
S_SUB = make_style("SubHead",
    fontSize=10.5, textColor=MID_BLUE, fontName="Helvetica-Bold",
    spaceAfter=3, spaceBefore=6, leftIndent=6)

# Body
S_BODY = make_style("Body",
    fontSize=9.5, leading=14, textColor=DARK_GREY,
    spaceAfter=4, leftIndent=6, alignment=TA_JUSTIFY)

# Bullet
S_BULLET = make_style("Bullet",
    fontSize=9, leading=13, textColor=DARK_GREY,
    spaceAfter=2, leftIndent=14, bulletIndent=6)

# Key fact box text
S_KEY = make_style("Key",
    fontSize=9, leading=13, textColor=DARK_GREY,
    spaceAfter=2, leftIndent=8)

# Table header
S_TH = make_style("TH",
    fontSize=9, fontName="Helvetica-Bold", textColor=WHITE,
    alignment=TA_CENTER, leading=12)

# Table cell
S_TC = make_style("TC",
    fontSize=8.5, textColor=DARK_GREY, leading=12, alignment=TA_LEFT)

S_TC_C = make_style("TCC",
    fontSize=8.5, textColor=DARK_GREY, leading=12, alignment=TA_CENTER)

# Answer key
S_ANS = make_style("Ans",
    fontSize=9, leading=12, textColor=DARK_GREY, leftIndent=4)

S_CORRECT = make_style("Correct",
    fontSize=9, fontName="Helvetica-Bold", textColor=GREEN, leading=12)

# ── Helper flowables ─────────────────────────────────────────────────────────

def chapter_header(title, color=DARK_BLUE):
    tbl = Table([[Paragraph(title, S_CH)]], colWidths=[17*cm])
    tbl.setStyle(TableStyle([
        ("BACKGROUND", (0,0), (-1,-1), color),
        ("TOPPADDING",   (0,0), (-1,-1), 10),
        ("BOTTOMPADDING",(0,0), (-1,-1), 10),
        ("LEFTPADDING",  (0,0), (-1,-1), 14),
        ("RIGHTPADDING", (0,0), (-1,-1), 8),
        ("ROUNDEDCORNERS", [6]),
    ]))
    return tbl

def section(title):
    return Paragraph(title, S_SEC)

def sub(title):
    return Paragraph(title, S_SUB)

def body(text):
    return Paragraph(text, S_BODY)

def bullet(text):
    return Paragraph(f"• {text}", S_BULLET)

def spacer(h=0.3):
    return Spacer(1, h*cm)

def hr(color=MID_GREY):
    return HRFlowable(width="100%", thickness=0.5, color=color, spaceAfter=4, spaceBefore=4)

def key_box(title, items, bg=LIGHT_BLUE, border=MID_BLUE):
    """A coloured info box with a title and bullet items."""
    content = f"<b>{title}</b><br/>" + "<br/>".join(f"• {i}" for i in items)
    tbl = Table([[Paragraph(content, S_KEY)]], colWidths=[16.5*cm])
    tbl.setStyle(TableStyle([
        ("BACKGROUND",   (0,0), (-1,-1), bg),
        ("BOX",          (0,0), (-1,-1), 1, border),
        ("TOPPADDING",   (0,0), (-1,-1), 7),
        ("BOTTOMPADDING",(0,0), (-1,-1), 7),
        ("LEFTPADDING",  (0,0), (-1,-1), 10),
        ("RIGHTPADDING", (0,0), (-1,-1), 8),
    ]))
    return tbl

def two_col_table(headers, rows, col_widths=None, hdr_color=DARK_BLUE):
    if col_widths is None:
        col_widths = [6*cm, 10.5*cm]
    data = [[Paragraph(h, S_TH) for h in headers]]
    for r in rows:
        data.append([Paragraph(str(c), S_TC) for c in r])
    tbl = Table(data, colWidths=col_widths, repeatRows=1)
    n = len(data)
    style = [
        ("BACKGROUND",   (0,0), (-1,0), hdr_color),
        ("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LIGHT_GREY]),
        ("BOX",          (0,0), (-1,-1), 0.5, MID_GREY),
        ("INNERGRID",    (0,0), (-1,-1), 0.3, MID_GREY),
        ("TOPPADDING",   (0,0), (-1,-1), 4),
        ("BOTTOMPADDING",(0,0), (-1,-1), 4),
        ("LEFTPADDING",  (0,0), (-1,-1), 6),
        ("RIGHTPADDING", (0,0), (-1,-1), 6),
        ("VALIGN",       (0,0), (-1,-1), "TOP"),
    ]
    tbl.setStyle(TableStyle(style))
    return tbl

def mcq_answer_table(questions):
    """questions = list of (num, question_text, answer, explanation)"""
    data = [[
        Paragraph("Q", S_TH),
        Paragraph("Question", S_TH),
        Paragraph("Answer", S_TH),
    ]]
    for num, q, ans, exp in questions:
        data.append([
            Paragraph(str(num), S_TC_C),
            Paragraph(q, S_TC),
            Paragraph(f"<b><font color='#2A7A3B'>{ans}</font></b><br/><font size='8' color='#555555'>{exp}</font>", S_TC),
        ])
    tbl = Table(data, colWidths=[1*cm, 7.5*cm, 8*cm], repeatRows=1)
    tbl.setStyle(TableStyle([
        ("BACKGROUND",    (0,0), (-1,0), DARK_BLUE),
        ("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LIGHT_GREY]),
        ("BOX",           (0,0), (-1,-1), 0.5, MID_GREY),
        ("INNERGRID",     (0,0), (-1,-1), 0.3, MID_GREY),
        ("TOPPADDING",    (0,0), (-1,-1), 4),
        ("BOTTOMPADDING", (0,0), (-1,-1), 4),
        ("LEFTPADDING",   (0,0), (-1,-1), 5),
        ("RIGHTPADDING",  (0,0), (-1,-1), 5),
        ("VALIGN",        (0,0), (-1,-1), "TOP"),
    ]))
    return tbl

# ── Cover page ───────────────────────────────────────────────────────────────

def cover_page(story):
    # Big coloured block
    cover_data = [[
        Paragraph("PHYSIOLOGY", S_COVER_TITLE),
    ],[
        Paragraph("Comprehensive Study Guide", S_COVER_SUB),
    ],[
        Paragraph("KMTC · Physiology I &amp; II", S_COVER_NOTE),
    ],[
        Paragraph("Endocrine · Respiratory · Digestive · Reproductive · Special Senses", S_COVER_NOTE),
    ]]
    cover_tbl = Table(cover_data, colWidths=[17*cm])
    cover_tbl.setStyle(TableStyle([
        ("BACKGROUND",   (0,0), (-1,-1), DARK_BLUE),
        ("TOPPADDING",   (0,0), (-1,-1), 22),
        ("BOTTOMPADDING",(0,0), (-1,-1), 22),
        ("LEFTPADDING",  (0,0), (-1,-1), 20),
        ("RIGHTPADDING", (0,0), (-1,-1), 20),
        ("ROUNDEDCORNERS",[8]),
    ]))
    story += [
        spacer(2),
        cover_tbl,
        spacer(1),
        Paragraph("Based on KMTC/QP-08/EPS examination questions", make_style("coverfooter",
            fontSize=9, textColor=MID_GREY, alignment=TA_CENTER)),
        spacer(0.3),
        Paragraph("Topics: Hormones · Respiration · Digestion · Reproduction · Senses · Acid-Base",
            make_style("coverfooter2", fontSize=9, textColor=MID_GREY, alignment=TA_CENTER)),
        PageBreak(),
    ]

# ── TABLE OF CONTENTS ────────────────────────────────────────────────────────

def toc_page(story):
    story.append(chapter_header("TABLE OF CONTENTS", DARK_BLUE))
    story.append(spacer(0.4))
    toc_items = [
        ("1", "Endocrine System", "Hormones, Glands, Regulation"),
        ("2", "Respiratory System", "Ventilation, Gas Exchange, Control"),
        ("3", "Digestive System", "GI Tract, Enzymes, Secretions"),
        ("4", "Renal & Fluid Balance", "Kidneys, ADH, RAAS, Electrolytes"),
        ("5", "Reproductive System", "Male & Female Physiology"),
        ("6", "Special Sense Organs", "Eye, Ear, Nose"),
        ("7", "Autonomic Nervous System", "Sympathetic vs Parasympathetic"),
        ("8", "Acid-Base Balance", "Disorders & Compensation"),
        ("9", "MCQ Answer Keys", "KMTC & Physiology II"),
        ("10","Short & Long Answer Summaries","Clinical Scenarios"),
    ]
    data = [[Paragraph("Ch", S_TH), Paragraph("Chapter", S_TH), Paragraph("Key Topics", S_TH)]]
    for ch, title, topics in toc_items:
        data.append([Paragraph(ch, S_TC_C), Paragraph(f"<b>{title}</b>", S_TC), Paragraph(topics, S_TC)])
    tbl = Table(data, colWidths=[1.5*cm, 7*cm, 8.5*cm], repeatRows=1)
    tbl.setStyle(TableStyle([
        ("BACKGROUND",   (0,0), (-1,0), MID_BLUE),
        ("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LIGHT_BLUE]),
        ("BOX",          (0,0), (-1,-1), 0.5, MID_GREY),
        ("INNERGRID",    (0,0), (-1,-1), 0.3, MID_GREY),
        ("TOPPADDING",   (0,0), (-1,-1), 5),
        ("BOTTOMPADDING",(0,0), (-1,-1), 5),
        ("LEFTPADDING",  (0,0), (-1,-1), 6),
        ("RIGHTPADDING", (0,0), (-1,-1), 6),
        ("VALIGN",       (0,0), (-1,-1), "TOP"),
    ]))
    story.append(tbl)
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 1 — ENDOCRINE SYSTEM
# ══════════════════════════════════════════════════════════════════════════════

def ch_endocrine(story):
    story.append(chapter_header("Chapter 1: Endocrine System", MID_BLUE))
    story.append(spacer(0.3))

    story.append(section("1.1  Overview of Hormones"))
    story.append(body(
        "Hormones are chemical messengers secreted by endocrine glands directly into the bloodstream "
        "to act on distant target organs. They are classified by chemical structure and mechanism of action."
    ))
    story.append(two_col_table(
        ["Hormone Class", "Characteristics / Examples"],
        [
            ["Peptide / Protein", "Water-soluble; synthesised in rough ER; act on surface receptors; use second messengers (cAMP). E.g. Insulin, GH, FSH, LH, ADH, PTH"],
            ["Steroid", "Lipid-soluble; derived from cholesterol; diffuse into cell; act on nuclear receptors. E.g. Cortisol, Aldosterone, Estrogen, Testosterone"],
            ["Amine", "Derived from tyrosine or tryptophan. E.g. Thyroxine (T4), Adrenaline, Melatonin"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("1.2  Key Glands and Their Hormones"))
    gland_data = [
        ["Hypothalamus", "GHRH, TRH, CRH, GnRH, Dopamine, Somatostatin", "Releasing/inhibiting hormones for anterior pituitary"],
        ["Anterior Pituitary", "GH, TSH, ACTH, FSH, LH, Prolactin", "Master gland of the endocrine system"],
        ["Posterior Pituitary", "ADH (Vasopressin), Oxytocin", "Stored and released (made in hypothalamus)"],
        ["Pineal Gland", "Melatonin", "Circadian rhythm regulation; secreted in darkness"],
        ["Thyroid Gland", "T3, T4 (follicular cells); Calcitonin (C cells)", "Metabolism; calcium regulation"],
        ["Parathyroid", "PTH", "Raises blood calcium; activates osteoclasts; stimulates renal calcitriol production"],
        ["Adrenal Cortex", "Cortisol (zona fasciculata); Aldosterone (zona glomerulosa); Androgens (zona reticularis)", "Stress response; fluid/electrolyte balance"],
        ["Adrenal Medulla", "Adrenaline (80%), Noradrenaline (20%)", "Acute fight-or-flight response"],
        ["Pancreas", "Insulin (beta cells); Glucagon (alpha cells); Somatostatin (delta cells)", "Blood glucose regulation"],
        ["Testes", "Testosterone (Leydig cells)", "Stimulated by LH"],
        ["Ovaries", "Estrogen (follicles), Progesterone (corpus luteum)", "Stimulated by FSH/LH"],
        ["Kidneys", "Erythropoietin (EPO), Renin, Calcitriol (active Vit D)", "RBC production; BP regulation"],
        ["Thymus", "Thymosin, Thymulin, Thymopoietin", "T-lymphocyte maturation"],
        ["Heart (Atria)", "ANP (Atrial Natriuretic Peptide)", "Promotes natriuresis; lowers BP"],
    ]
    data = [[Paragraph(h, S_TH) for h in ["Gland", "Hormone(s)", "Key Function"]]]
    for r in gland_data:
        data.append([Paragraph(c, S_TC) for c in r])
    tbl = Table(data, colWidths=[4*cm, 6*cm, 6.5*cm], repeatRows=1)
    tbl.setStyle(TableStyle([
        ("BACKGROUND",   (0,0), (-1,0), DARK_BLUE),
        ("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LIGHT_GREY]),
        ("BOX",          (0,0), (-1,-1), 0.5, MID_GREY),
        ("INNERGRID",    (0,0), (-1,-1), 0.3, MID_GREY),
        ("TOPPADDING",   (0,0), (-1,-1), 4),("BOTTOMPADDING",(0,0),(-1,-1),4),
        ("LEFTPADDING",  (0,0), (-1,-1), 5),("RIGHTPADDING", (0,0),(-1,-1),5),
        ("VALIGN",       (0,0), (-1,-1), "TOP"),
    ]))
    story.append(tbl)
    story.append(spacer(0.4))

    story.append(section("1.3  Hormonal Interaction Types"))
    story.append(two_col_table(
        ["Type", "Definition & Example"],
        [
            ["Permissive", "One hormone enables full effect of another. Cortisol permits adrenaline to cause vasoconstriction."],
            ["Synergistic", "Two hormones together produce greater effect than either alone. FSH + LH promote spermatogenesis."],
            ["Antagonistic", "One hormone opposes another. Insulin lowers glucose; glucagon raises it."],
            ["Agonistic", "A substance mimics a hormone's normal effect."],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("1.4  Key Endocrine Disorders"))
    disorders = [
        ["Diabetes Mellitus (Type 1)", "Autoimmune destruction of beta cells → absent insulin → hyperglycemia → polyuria, polydipsia, polyphagia, ketonuria"],
        ["Diabetes Mellitus (Type 2)", "Insulin resistance + relative deficiency; not insulin-dependent initially; managed by lifestyle + oral agents"],
        ["Diabetes Insipidus", "ADH deficiency → massive dilute polyuria + polydipsia; NO polyphagia"],
        ["Cushing's Syndrome", "Cortisol excess (exogenous steroids, pituitary adenoma) → central obesity, moon face, striae, hypertension, hyperglycemia, osteoporosis"],
        ["Addison's Disease", "Primary adrenal insufficiency; cortisol + aldosterone deficiency → hypotension, hyponatremia, hyperkalemia, hypoglycemia. Tx: Hydrocortisone"],
        ["Hashimoto's Thyroiditis", "Autoimmune destruction of thyroid → hypothyroidism (cold intolerance, fatigue, weight gain, bradycardia)"],
        ["Hyperthyroidism (Graves')", "Autoantibodies stimulate TSH receptor → heat intolerance, weight loss, tachycardia, exophthalmos"],
        ["Hyperparathyroidism", "Excess PTH → hypercalcemia → 'bones, stones, abdominal groans, psychic moans'; pathological fractures"],
        ["Gigantism", "GH hypersecretion BEFORE epiphyseal closure (children) → excessive height"],
        ["Acromegaly", "GH hypersecretion AFTER epiphyseal closure (adults) → enlarged hands, feet, jaw"],
    ]
    data = [[Paragraph(h, S_TH) for h in ["Disorder", "Key Features & Notes"]]]
    for r in disorders:
        data.append([Paragraph(r[0], S_TC), Paragraph(r[1], S_TC)])
    tbl = Table(data, colWidths=[5.5*cm, 11*cm], repeatRows=1)
    tbl.setStyle(TableStyle([
        ("BACKGROUND",   (0,0), (-1,0), RED),
        ("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LIGHT_RED]),
        ("BOX",          (0,0), (-1,-1), 0.5, MID_GREY),
        ("INNERGRID",    (0,0), (-1,-1), 0.3, MID_GREY),
        ("TOPPADDING",   (0,0), (-1,-1), 4),("BOTTOMPADDING",(0,0),(-1,-1),4),
        ("LEFTPADDING",  (0,0), (-1,-1), 6),("RIGHTPADDING", (0,0),(-1,-1),6),
        ("VALIGN",       (0,0), (-1,-1), "TOP"),
    ]))
    story.append(tbl)
    story.append(spacer(0.3))

    story.append(key_box("EXAM MEMORABLES - Endocrine", [
        "Pineal = Melatonin (sleep/circadian rhythm)",
        "Calcitonin = C cells of thyroid (lowers Ca2+); PTH = parathyroid (raises Ca2+)",
        "Cortisol = zona fasciculata; Aldosterone = zona glomerulosa; Medulla = Adrenaline",
        "LH → testosterone from Leydig cells; FSH → spermatogenesis (Sertoli cells)",
        "EPO from kidneys; Thymosin from thymus (T-cell maturation)",
        "ANP from atria → promotes Na+ excretion (lowers BP)",
        "Permissive = one hormone needed for another to work fully",
        "Polydipsia + Polyuria + Polyphagia = Diabetes MELLITUS (not insipidus)",
    ], LIGHT_BLUE, MID_BLUE))
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 2 — RESPIRATORY SYSTEM
# ══════════════════════════════════════════════════════════════════════════════

def ch_respiratory(story):
    story.append(chapter_header("Chapter 2: Respiratory System", GREEN))
    story.append(spacer(0.3))

    story.append(section("2.1  Structural Overview"))
    story.append(body(
        "The respiratory tract is divided into the conducting zone (nose → terminal bronchioles; warms, "
        "filters, humidifies air) and the respiratory zone (respiratory bronchioles → alveoli; actual gas exchange)."
    ))
    story.append(two_col_table(
        ["Structure", "Key Feature"],
        [
            ["Nose/Mouth", "Entry of air; filtering by hairs; warming by turbinates"],
            ["Pharynx", "Common passage; nasopharynx, oropharynx, laryngopharynx"],
            ["Larynx", "Houses vocal cords; epiglottis prevents aspiration during swallowing"],
            ["Trachea", "~12 cm long; 16-20 C-shaped cartilage rings; lined by pseudostratified ciliated columnar epithelium; bifurcates at carina (T4/T5) into primary bronchi"],
            ["Bronchi (Primary)", "Two main bronchi enter lungs; right is wider and more vertical"],
            ["Bronchioles", "No cartilage; smooth muscle; bronchoconstriction increases airway resistance"],
            ["Alveoli", "~300 million per lung; site of gas exchange; Type I = gas exchange; Type II = surfactant secretion"],
            ["Pleural cavity", "Visceral + parietal pleura; ~5-15 ml pleural fluid reduces friction; negative intrapleural pressure keeps lungs expanded"],
        ],
        col_widths=[4*cm, 12.5*cm]
    ))
    story.append(spacer(0.3))

    story.append(section("2.2  Mechanism of Ventilation"))
    story.append(sub("Inspiration (Active Process)"))
    for b in [
        "Diaphragm contracts → flattens and moves downward",
        "External intercostal muscles contract → ribs move up and out",
        "Thoracic volume increases → intrapulmonary pressure falls below atmospheric (-1 to -3 mmHg)",
        "Air flows into lungs along pressure gradient",
    ]:
        story.append(bullet(b))

    story.append(sub("Expiration (Passive at rest)"))
    for b in [
        "Diaphragm and external intercostals relax",
        "Elastic recoil of lungs reduces thoracic volume",
        "Intrapulmonary pressure rises above atmospheric",
        "Air flows out of lungs",
    ]:
        story.append(bullet(b))

    story.append(key_box("Pressure Rule", [
        "Inspiration ends when alveolar pressure = atmospheric pressure (0 mmHg gauge)",
        "Intrapleural pressure is always negative (about -5 mmHg at rest) — this prevents lung collapse",
    ], LIGHT_GREEN, GREEN))
    story.append(spacer(0.3))

    story.append(section("2.3  Gas Exchange"))
    story.append(body("Gas exchange occurs by simple diffusion across the respiratory membrane (alveolar epithelium + basement membrane + capillary endothelium; ~0.5 µm thick). Governed by Fick's Law."))
    story.append(two_col_table(
        ["Gas", "Partial Pressures & Direction"],
        [
            ["Oxygen (O2)", "Alveolar PO2 ≈ 100 mmHg → Venous blood PO2 ≈ 40 mmHg → O2 diffuses INTO blood"],
            ["Carbon Dioxide (CO2)", "Venous blood PCO2 ≈ 45 mmHg → Alveolar PCO2 ≈ 40 mmHg → CO2 diffuses OUT of blood"],
        ]
    ))
    story.append(spacer(0.2))

    story.append(section("2.4  Gas Transport in Blood"))
    story.append(two_col_table(
        ["Gas", "Transport Mechanism"],
        [
            ["Oxygen", "97% as oxyhaemoglobin (bound to Hb); 3% dissolved in plasma"],
            ["Carbon Dioxide", "70% as bicarbonate (HCO3-) via carbonic anhydrase; 23% as carbaminohaemoglobin; 7% dissolved"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("2.5  Surfactant & Lung Compliance"))
    for b in [
        "Produced by Type II pneumocytes (alveolar cells)",
        "Main component: dipalmitoylphosphatidylcholine (DPPC)",
        "REDUCES surface tension inside alveoli → prevents alveolar collapse",
        "INCREASES lung compliance (ease of inflation)",
        "Absent in premature infants → Neonatal Respiratory Distress Syndrome (RDS)",
        "Type I cells: thin, flat, cover 95% of alveolar surface; gas exchange; contribute to compliance by elasticity",
    ]:
        story.append(bullet(b))
    story.append(spacer(0.3))

    story.append(section("2.6  Mucociliary Clearance"))
    story.append(body(
        "The trachea is lined by pseudostratified ciliated columnar epithelium. "
        "Goblet cells secrete mucus that traps inhaled particles and pathogens. "
        "Cilia beat in coordinated waves, moving the mucus escalator upward "
        "toward the pharynx (mucociliary escalator). Smoking, cold air, and cystic fibrosis impair this mechanism."
    ))
    story.append(spacer(0.3))

    story.append(section("2.7  Control of Respiration"))
    story.append(two_col_table(
        ["Centre / Receptor", "Role"],
        [
            ["Dorsal Respiratory Group (medulla)", "Sets basic inspiratory rhythm; fires cyclically"],
            ["Ventral Respiratory Group (medulla)", "Active during forced expiration; recruits accessory muscles"],
            ["Pneumotaxic Centre (pons)", "Limits duration of inspiration; regulates respiratory rate"],
            ["Peripheral chemoreceptors (carotid + aortic bodies)", "Detect: decreased PO2, increased PCO2, decreased pH → increase ventilation"],
            ["Central chemoreceptors (medulla)", "Detect: increased PCO2 / decreased CSF pH → primary drive to breathe in normal conditions"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(key_box("EXAM MEMORABLES - Respiratory", [
        "Diaphragm CONTRACTS and moves DOWN during inspiration",
        "Trachea = ~12 cm; bifurcates into PRIMARY BRONCHI (not bronchioles)",
        "Epiglottis prevents food entering respiratory tract during swallowing",
        "Surfactant = Type II cells → reduces surface tension → increases compliance",
        "Type I cells = gas exchange; thin and flat (95% of alveolar surface)",
        "Blood flowing TO lungs (pulmonary artery) = LOW O2, HIGH CO2",
        "External respiration = lungs ↔ blood; Internal respiration = blood ↔ tissues",
        "Pleural fluid HOLDS lungs against thoracic wall (surface tension coupling)",
        "Pseudostratified ciliated columnar epithelium lines trachea → mucociliary escalator",
        "Bronchoconstriction (smooth muscle contraction) DECREASES airway diameter",
    ], LIGHT_GREEN, GREEN))
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 3 — DIGESTIVE SYSTEM
# ══════════════════════════════════════════════════════════════════════════════

def ch_digestive(story):
    story.append(chapter_header("Chapter 3: Digestive System", PURPLE))
    story.append(spacer(0.3))

    story.append(section("3.1  GI Tract Layers"))
    story.append(two_col_table(
        ["Layer", "Role"],
        [
            ["Mucosa", "Innermost layer; absorption and secretion; contains glands and immune cells"],
            ["Submucosa", "Connective tissue; contains Meissner's (submucosal) plexus; blood and lymph vessels"],
            ["Muscularis (Muscularis externa)", "Inner circular + outer longitudinal smooth muscle; produces PERISTALSIS; contains Auerbach's (myenteric) plexus"],
            ["Serosa / Adventitia", "Outermost protective layer; visceral peritoneum"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("3.2  Digestive Enzymes"))
    story.append(two_col_table(
        ["Enzyme", "Source / Location / Substrate"],
        [
            ["Salivary Amylase", "Parotid glands; begins carbohydrate (starch) digestion in MOUTH"],
            ["Pepsin", "Stomach (chief cells secrete pepsinogen → activated by HCl); digests PROTEINS → peptides"],
            ["Gastric Lipase", "Stomach; minor fat digestion"],
            ["Pancreatic Amylase", "Pancreas → duodenum; continues starch → maltose digestion"],
            ["Pancreatic Lipase", "Pancreas → duodenum; digests triglycerides → fatty acids + glycerol"],
            ["Trypsin / Chymotrypsin", "Pancreas (as inactive zymogens); activated in duodenum; digests PROTEINS"],
            ["Maltase / Sucrase / Lactase", "Brush border of small intestine; break disaccharides → monosaccharides"],
            ["Bile (not an enzyme)", "Liver (stored in gallbladder); emulsifies fats; no enzymatic action"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("3.3  Where Digestion Begins"))
    story.append(two_col_table(
        ["Macronutrient", "Where Digestion Begins"],
        [
            ["Carbohydrates", "MOUTH (salivary amylase)"],
            ["Proteins", "STOMACH (pepsin)"],
            ["Fats", "DUODENUM / small intestine (pancreatic lipase + bile)"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("3.4  Gastrointestinal Hormones"))
    story.append(two_col_table(
        ["Hormone", "Source / Stimulus / Action"],
        [
            ["Gastrin", "G cells of gastric antrum; released by protein/distension/vagal stimulation; STIMULATES HCl and pepsinogen secretion"],
            ["Secretin", "S cells of duodenum; released by acidic chyme; INHIBITS gastric acid; stimulates bicarbonate secretion from pancreas"],
            ["CCK (Cholecystokinin)", "I cells of duodenum; released by fats/protein; stimulates pancreatic enzyme release + gallbladder contraction"],
            ["GIP (Gastric Inhibitory Peptide)", "K cells of duodenum; inhibits gastric motility and acid secretion when fat/glucose enter duodenum"],
            ["Ghrelin", "Stomach fundus; 'hunger hormone'; stimulates appetite"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("3.5  Accessory Digestive Organs"))
    for b in [
        "LIVER: produces bile (emulsifies fats), metabolises nutrients, detoxification, produces clotting factors",
        "GALLBLADDER: stores and concentrates bile; releases bile into duodenum when CCK is secreted",
        "PANCREAS (exocrine): secretes bicarbonate (neutralises acid chyme) + all digestive enzymes",
        "SALIVARY GLANDS: secrete amylase and mucus; parotid, submandibular, sublingual",
        "Note: Teeth, tongue, pancreas = accessory organs; duodenum/esophagus are PART of the GI tract",
    ]:
        story.append(bullet(b))
    story.append(spacer(0.3))

    story.append(section("3.6  Intestinal Secretions & Motility"))
    story.append(two_col_table(
        ["Parameter", "Value / Description"],
        [
            ["Total GI secretions/day", "~7-8 litres (mostly reabsorbed in small intestine)"],
            ["Intestinal secretions", "~1500 ml/day"],
            ["Peristalsis", "Produced by muscularis layer (circular + longitudinal smooth muscle)"],
            ["Sympathetic effect on GI", "REDUCES motility, secretion, blood flow (fight-or-flight)"],
            ["Parasympathetic effect on GI", "INCREASES motility, secretion (rest-and-digest)"],
            ["Opioid effect on GI", "REDUCES peristalsis via mu-receptors → constipation"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(key_box("EXAM MEMORABLES - Digestive", [
        "Pepsin digests proteins in the STOMACH",
        "Gastrin STIMULATES gastric acid; Secretin INHIBITS gastric acid",
        "Which hormone stimulates gastric juice? GASTRIN",
        "Muscularis layer = peristalsis (NOT mucosa or submucosa)",
        "Protein digestion begins in the STOMACH",
        "Accessory organs = liver, gallbladder, pancreas, salivary glands",
        "Total intestinal secretions ≈ 1500 ml/day",
        "Opioids cause constipation by reducing parasympathetic/enteric nervous system activity",
        "Bloating on oral feeds after prolonged fasting = atonic gut + reduced enzyme secretion",
    ], LIGHT_PURPLE, PURPLE))
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 4 — RENAL & FLUID BALANCE
# ══════════════════════════════════════════════════════════════════════════════

def ch_renal(story):
    story.append(chapter_header("Chapter 4: Renal System & Fluid Balance", ORANGE))
    story.append(spacer(0.3))

    story.append(section("4.1  Kidney Functions"))
    for b in [
        "Filtration of blood → urine production",
        "Regulation of water and electrolyte balance (Na+, K+, Ca2+, H+)",
        "Acid-base regulation (H+ excretion / HCO3- reabsorption)",
        "Hormone secretion: Renin, EPO, Calcitriol (active Vit D)",
        "Blood pressure regulation via RAAS",
    ]:
        story.append(bullet(b))
    story.append(spacer(0.3))

    story.append(section("4.2  RAAS (Renin-Angiotensin-Aldosterone System)"))
    story.append(body("Activated by: low renal perfusion, low Na+, sympathetic stimulation."))
    raas_steps = [
        "Juxtaglomerular cells release RENIN",
        "Renin cleaves angiotensinogen → Angiotensin I",
        "ACE (in lungs) converts Angiotensin I → Angiotensin II",
        "Angiotensin II: (a) vasoconstriction (raises BP), (b) stimulates aldosterone release, (c) stimulates ADH, (d) stimulates thirst",
        "ALDOSTERONE (zona glomerulosa) → Na+ reabsorption + K+ excretion in collecting duct",
        "Net effect: increased blood volume, increased BP, reduced urine output",
    ]
    for i, s in enumerate(raas_steps, 1):
        story.append(Paragraph(f"{i}. {s}", S_BULLET))
    story.append(spacer(0.3))

    story.append(section("4.3  ADH (Antidiuretic Hormone / Vasopressin)"))
    story.append(two_col_table(
        ["Feature", "Detail"],
        [
            ["Made by", "Hypothalamus (supraoptic nucleus)"],
            ["Stored/Released by", "Posterior pituitary"],
            ["Stimulus", "Increased plasma osmolarity; decreased blood volume"],
            ["Action", "Inserts aquaporin-2 channels in collecting duct → water reabsorption → concentrated urine"],
            ["Deficiency", "Diabetes Insipidus → massive dilute polyuria"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("4.4  Electrolyte Regulation"))
    story.append(two_col_table(
        ["Electrolyte", "Regulation"],
        [
            ["Sodium (Na+)", "Aldosterone increases reabsorption in collecting duct. ANP promotes excretion. Normal: 135-145 mEq/L"],
            ["Potassium (K+)", "Aldosterone causes K+ SECRETION in exchange for Na+ reabsorption. Hyperkalemia directly stimulates aldosterone. Normal: 3.5-5.0 mEq/L"],
            ["Calcium (Ca2+)", "PTH raises Ca2+ (bone resorption + renal reabsorption). Calcitonin lowers Ca2+. Vitamin D increases intestinal absorption."],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("4.5  Response to Haemorrhage / Blood Loss"))
    for b in [
        "IMMEDIATE: baroreceptors detect low BP → sympathetic activation → tachycardia, vasoconstriction",
        "Adrenal medulla: adrenaline + noradrenaline → cardiac output and vasoconstriction",
        "Posterior pituitary: ADH release → water reabsorption → reduced urine output (oliguria)",
        "RAAS: renin → angiotensin II → aldosterone → Na+/water retention",
        "Adrenal cortex: cortisol → gluconeogenesis → maintained glucose supply",
        "Net: expanded blood volume, restored blood pressure, reduced urine output",
        "Prerenal AKI: if blood loss is severe, GFR falls critically → oliguria/anuria",
    ]:
        story.append(bullet(b))
    story.append(spacer(0.3))

    story.append(section("4.6  Acid-Base Disorders"))
    story.append(two_col_table(
        ["Disorder", "Cause / Example"],
        [
            ["Metabolic Acidosis", "Acid accumulation or HCO3- loss. E.g. DKA, renal failure, diarrhoea. Compensation: hyperventilation (↓ CO2)"],
            ["Metabolic Alkalosis", "H+ loss or HCO3- gain. E.g. VOMITING (loss of HCl) → hypochloraemic alkalosis. Compensation: hypoventilation (↑ CO2)"],
            ["Respiratory Acidosis", "CO2 retention (hypoventilation). E.g. COPD, sedation. pH <7.35. Compensation: renal HCO3- retention"],
            ["Respiratory Alkalosis", "CO2 loss (hyperventilation). E.g. anxiety, high altitude. pH >7.45. Compensation: renal HCO3- excretion"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(key_box("EXAM MEMORABLES - Renal & Fluid", [
        "EPO from KIDNEYS (not thymus, not lungs)",
        "ADH: made in hypothalamus, stored/released from POSTERIOR pituitary",
        "Aldosterone = zona glomerulosa; promotes Na+ IN, K+ OUT",
        "ANP = from atria, promotes SODIUM EXCRETION (opposite of aldosterone)",
        "Vomiting → loss of HCl → METABOLIC ALKALOSIS",
        "RAAS: low BP → Renin → Ang I → Ang II → Aldosterone → Na+/water retention",
        "Reduced urine output after trauma = reduced GFR + increased ADH",
        "Hypokalemia (K+ <3.5) = muscle weakness (hyperpolarisation of cell membranes)",
    ], LIGHT_ORANGE, ORANGE))
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 5 — REPRODUCTIVE SYSTEM
# ══════════════════════════════════════════════════════════════════════════════

def ch_reproductive(story):
    story.append(chapter_header("Chapter 5: Reproductive System", colors.HexColor("#1A6B3C")))
    story.append(spacer(0.3))

    story.append(section("5.1  Female Reproductive Physiology"))
    story.append(two_col_table(
        ["Topic", "Key Points"],
        [
            ["Fertilisation", "Occurs in the AMPULLA of the fallopian tube (oviduct); sperm meets ovum after ovulation"],
            ["Implantation", "Fertilised ovum implants in the ENDOMETRIUM (uterus)"],
            ["Menstrual Cycle", "Follicular (proliferative) phase: FSH → follicle development → ESTROGEN → endometrial thickening. Ovulation: LH surge. Luteal (secretory) phase: corpus luteum → PROGESTERONE → maintains endometrium for implantation."],
            ["Estrogen", "Thickens uterine lining (proliferative phase); secondary sex characteristics; feedback on pituitary"],
            ["Progesterone", "Maintains endometrium in secretory phase; prevents uterine contractions in pregnancy; rises after ovulation"],
        ],
        col_widths=[4*cm, 12.5*cm]
    ))
    story.append(spacer(0.3))

    story.append(section("5.2  Male Reproductive Physiology"))
    story.append(two_col_table(
        ["Topic", "Key Points"],
        [
            ["Testes", "Produce SPERM (seminiferous tubules) AND TESTOSTERONE (Leydig cells) — the ONLY organ that does both"],
            ["LH", "Stimulates Leydig cells → testosterone secretion"],
            ["FSH", "Stimulates Sertoli cells → spermatogenesis; also produces inhibin"],
            ["Testosterone", "Male secondary sex characteristics; spermatogenesis; muscle mass; libido"],
            ["Prostate Gland", "Secretes alkaline fluid to NEUTRALISE acidic vaginal medium; enhances sperm motility"],
            ["Epididymis", "Site of sperm MATURATION and storage"],
            ["Vas Deferens", "Conveys sperm from epididymis to urethra"],
            ["Scrotum", "Maintains testes ~2°C below body temperature for spermatogenesis"],
        ],
        col_widths=[4*cm, 12.5*cm]
    ))
    story.append(spacer(0.3))

    story.append(key_box("EXAM MEMORABLES - Reproductive", [
        "Fertilisation = OVIDUCT (not uterus, not ovary)",
        "Testis = produces BOTH sperm and testosterone",
        "LH → Leydig cells → Testosterone",
        "FSH → Sertoli cells → Spermatogenesis",
        "Estrogen = thickening of uterine lining (proliferative phase)",
        "Prostate = neutralises acidic vaginal medium",
        "Parafollicular (C) cells of thyroid = Calcitonin (LOWERS Ca2+)",
    ], LIGHT_GREEN, GREEN))
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 6 — SPECIAL SENSE ORGANS
# ══════════════════════════════════════════════════════════════════════════════

def ch_senses(story):
    story.append(chapter_header("Chapter 6: Special Sense Organs", colors.HexColor("#6C3483")))
    story.append(spacer(0.3))

    story.append(section("6.1  The Eye"))
    story.append(two_col_table(
        ["Structure", "Function"],
        [
            ["Cornea", "Transparent; refracts ~70% of light; avascular; most powerful refractive surface"],
            ["Iris / Pupil", "Circular (sphincter) muscle: constriction in bright light (CN III). Radial (dilator) muscle: dilation in dim light (sympathetic)"],
            ["Lens", "Accommodation - changes shape via ciliary muscles; more convex for near vision"],
            ["Ciliary muscles", "Contract for near vision (relaxes zonule ligaments → lens becomes rounder)"],
            ["Retina", "Inner photosensitive layer containing rods and cones"],
            ["Rods", "~120 million; peripheral vision; dim light (scotopic); contain rhodopsin"],
            ["Cones", "~6 million; concentrated in fovea; colour vision (photopic); red/green/blue types"],
            ["Fovea centralis", "Highest visual acuity; densely packed cones; no rods"],
            ["Optic disc", "Blind spot; where optic nerve exits; no photoreceptors"],
            ["Choroid", "Vascular layer; nourishes retina; contains melanin (absorbs stray light)"],
        ],
        col_widths=[4.5*cm, 12*cm]
    ))
    story.append(spacer(0.2))
    story.append(body("Accommodation: ciliary muscles contract → zonule fibres relax → lens becomes more convex → increases refractive power for near objects. CN III (oculomotor) controls ciliary muscle AND pupil constriction."))
    story.append(spacer(0.3))

    story.append(section("6.2  The Ear"))
    story.append(two_col_table(
        ["Division", "Structures & Functions"],
        [
            ["Outer Ear", "Pinna (collects sound); External auditory meatus (conducts sound); Tympanic membrane (vibrates with sound)"],
            ["Middle Ear", "Ossicles: Malleus → Incus → Stapes (amplify sound ~20x); Oval window (transmits to inner ear); Eustachian tube (equalises pressure with nasopharynx)"],
            ["Inner Ear - Cochlea", "Fluid-filled (perilymph + endolymph); Organ of Corti on basilar membrane; Hair cells convert sound waves → electrical signals → CN VIII (cochlear division) → auditory cortex (temporal lobe)"],
            ["Inner Ear - Vestibular", "3 Semicircular canals: detect ROTATIONAL/angular acceleration; Utricle + Saccule (otolith organs): detect LINEAR acceleration and gravity; Signals via CN VIII (vestibular division) → cerebellum, spinal cord, eye muscles"],
        ],
        col_widths=[4*cm, 12.5*cm]
    ))
    story.append(spacer(0.3))

    story.append(section("6.3  The Nose (Olfaction)"))
    story.append(two_col_table(
        ["Feature", "Detail"],
        [
            ["Olfactory epithelium", "Located in SUPERIOR nasal cavity (roof); bipolar olfactory receptor neurons with cilia"],
            ["Mechanism", "Odorants dissolve in mucus → bind receptors → G-protein/cAMP → depolarisation → action potentials"],
            ["Pathway", "CN I (olfactory nerve) → cribriform plate → olfactory bulb → piriform cortex, amygdala, hippocampus"],
            ["Functions of nose", "Olfaction; air conditioning (warm, humidify, filter); mucociliary clearance; voice resonance"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("6.4  Taste (Gustation)"))
    story.append(two_col_table(
        ["Feature", "Detail"],
        [
            ["Receptors", "Taste buds on tongue papillae (fungiform, circumvallate, foliate)"],
            ["Cranial nerves", "CN VII (anterior 2/3 tongue); CN IX (posterior 1/3); CN X (epiglottis/pharynx)"],
            ["Basic tastes", "Sweet, sour, salty, bitter, umami"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(key_box("EXAM MEMORABLES - Special Senses", [
        "Balance = SEMICIRCULAR CANALS (rotational) + Utricle/Saccule (linear)",
        "Bright light → pupil CONSTRICTION via circular iris muscle (CN III)",
        "Accommodation: ciliary muscles CONTRACT → lens more CONVEX (near vision)",
        "Photoreceptors unique to the eye: RODS (dim light) + CONES (colour)",
        "Ossicles: Malleus → Incus → Stapes (MIS) — sound amplification",
        "Olfaction (smell) originates from NASAL CAVITY (superior olfactory epithelium)",
        "Taste (gustation): CN VII + IX + X",
        "Rods and cones generate the initial phototransduction signal",
        "Optic disc = blind spot (no photoreceptors)",
    ], LIGHT_PURPLE, PURPLE))
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 7 — AUTONOMIC NERVOUS SYSTEM
# ══════════════════════════════════════════════════════════════════════════════

def ch_ans(story):
    story.append(chapter_header("Chapter 7: Autonomic Nervous System", colors.HexColor("#17607A")))
    story.append(spacer(0.3))

    story.append(two_col_table(
        ["Feature", "Sympathetic ('Fight or Flight')", ],
        [
            ["Trigger", "Stress, fear, exercise, blood loss"],
            ["Neurotransmitter", "Noradrenaline (at effectors); Adrenaline (from adrenal medulla)"],
            ["Heart", "Increases rate and force (tachycardia)"],
            ["Blood vessels", "Vasoconstriction → increased BP"],
            ["Lungs", "Bronchodilation (β2 receptors)"],
            ["GI tract", "Reduced motility, secretion, blood flow"],
            ["Eyes", "Pupil dilation (radial muscle - mydriasis)"],
            ["Sweat glands", "Increases sweating"],
            ["Bladder", "Relaxes detrusor; contracts sphincter (urine retention)"],
        ],
        col_widths=[5*cm, 11.5*cm],
        hdr_color=colors.HexColor("#C0392B")
    ))
    story.append(spacer(0.3))

    story.append(two_col_table(
        ["Feature", "Parasympathetic ('Rest and Digest')"],
        [
            ["Trigger", "Rest, feeding, sexual arousal"],
            ["Neurotransmitter", "Acetylcholine (muscarinic receptors)"],
            ["Heart", "Decreases rate (bradycardia) - vagus nerve (CN X)"],
            ["Blood vessels", "Vasodilation (selected vascular beds)"],
            ["Lungs", "Bronchoconstriction"],
            ["GI tract", "Increases motility and secretion (digestion)"],
            ["Eyes", "Pupil constriction (circular muscle - miosis); accommodation"],
            ["Bladder", "Contracts detrusor; relaxes sphincter (urination)"],
            ["Salivary glands", "Increases salivation"],
        ],
        col_widths=[5*cm, 11.5*cm],
        hdr_color=GREEN
    ))
    story.append(spacer(0.3))

    story.append(section("7.1  Medullary Control Centres"))
    story.append(body("The medulla oblongata controls vital involuntary functions:"))
    for b in [
        "Cardiovascular centre: regulates heart rate and blood vessel tone",
        "Respiratory rhythmicity centre: sets basic breathing rhythm (dorsal + ventral respiratory groups)",
        "Vomiting centre (chemoreceptor trigger zone)",
        "Swallowing centre",
    ]:
        story.append(bullet(b))
    story.append(spacer(0.3))

    story.append(key_box("EXAM MEMORABLES - ANS", [
        "Fight-or-flight = SYMPATHETIC; Rest-and-digest = PARASYMPATHETIC",
        "Adrenaline from adrenal MEDULLA (not cortex)",
        "Opioids suppress parasympathetic GI activity → constipation",
        "Stress REDUCES digestion (sympathetic dominance)",
        "Medulla oblongata controls BREATHING, heart rate, swallowing (involuntary)",
        "Pre-operative stress → sympathetic activation → nausea, reduced GI motility",
    ], LIGHT_BLUE, MID_BLUE))
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 8 — CORTICOSTEROIDS & WOUND HEALING
# ══════════════════════════════════════════════════════════════════════════════

def ch_steroids(story):
    story.append(chapter_header("Chapter 8: Corticosteroids & Tissue Repair", colors.HexColor("#8E2D0A")))
    story.append(spacer(0.3))

    story.append(section("8.1  Physiological Effects of Glucocorticoids (Cortisol)"))
    story.append(two_col_table(
        ["System", "Effect"],
        [
            ["Carbohydrate", "Stimulates gluconeogenesis (liver); reduces peripheral glucose uptake → raises blood glucose"],
            ["Protein", "CATABOLIC: breaks down muscle protein → amino acids (substrate for gluconeogenesis) → muscle wasting"],
            ["Fat", "Stimulates lipolysis (fat breakdown); redistributes fat centrally (central obesity in Cushing's)"],
            ["Anti-inflammatory", "Inhibits phospholipase A2 → reduces prostaglandins/leukotrienes; stabilises lysosomal membranes"],
            ["Immune", "Suppresses lymphocytes, macrophages, eosinophils → immunosuppression"],
            ["Bone", "Decreases calcium absorption, increases bone resorption → osteoporosis"],
            ["Water/Electrolyte", "Some mineralocorticoid effect: Na+ retention, K+ excretion"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(section("8.2  Corticosteroids and Wound Healing"))
    story.append(body("Long-term steroids impair every phase of wound healing:"))
    story.append(two_col_table(
        ["Phase", "Steroid Effect"],
        [
            ["Inflammatory phase", "SUPPRESSED: fewer neutrophils and macrophages → impaired debridement and infection control"],
            ["Proliferative phase", "SUPPRESSED: fewer fibroblasts → reduced collagen synthesis → poor scar tissue formation"],
            ["Angiogenesis", "IMPAIRED: reduced new blood vessel formation → poor granulation tissue"],
            ["Remodelling", "IMPAIRED: reduced collagen cross-linking → weak scar"],
        ]
    ))
    story.append(spacer(0.3))

    story.append(key_box("EXAM MEMORABLES - Steroids", [
        "Cortisol = zona FASCICULATA; glucocorticoid",
        "Protein CATABOLISM → muscle wasting (steroid myopathy)",
        "Steroids RAISE blood glucose (gluconeogenesis) — worsen diabetes",
        "Slow wound healing = suppressed inflammation + reduced collagen synthesis",
        "Cushing's: central obesity, moon face, buffalo hump, striae, hypertension",
        "Addison's disease: adrenal insufficiency → treat with HYDROCORTISONE",
    ], LIGHT_ORANGE, ORANGE))
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 9 — MCQ ANSWER KEYS
# ══════════════════════════════════════════════════════════════════════════════

def ch_mcq(story):
    story.append(chapter_header("Chapter 9: MCQ Answer Keys with Explanations", DARK_BLUE))
    story.append(spacer(0.3))

    story.append(section("KMTC/QP-08/EPS - Section 1 MCQ Answers"))
    kmtc_mcqs = [
        (1, "Boxer - loss of balance after punch near ear", "A - Semicircular canals", "Detect rotational movement; fluid displacement deflects hair cells in ampullae"),
        (2, "Which gland secretes melatonin?", "B - Pineal gland", "Secretes melatonin in darkness; regulates circadian rhythm"),
        (3, "Fight-or-flight hormone in trauma patient", "B - Adrenaline", "Adrenal medulla; causes tachycardia, pallor, sweating, bronchodilation"),
        (4, "Hormone responsible for uterine lining thickening", "A - Estrogen", "Drives endometrial proliferation in follicular phase"),
        (5, "Diaphragm during inhalation", "B - Contracts and moves down", "Increases thoracic volume; decreases intrapulmonary pressure"),
        (6, "Bright light discomfort - adjustment", "A - Pupillary constriction (iris circular muscle)", "Pupillary light reflex via CN III; limits retinal light exposure"),
        (7, "Digestive enzyme acting on proteins in stomach", "C - Pepsin", "Activated from pepsinogen by HCl; cleaves peptide bonds"),
        (8, "Lungs help regulate", "A - Oxygen exchange (and CO2)", "Primary function: O2/CO2 exchange + acid-base via CO2"),
        (14, "Brain centre for involuntary breathing", "A - Medulla oblongata", "Contains dorsal and ventral respiratory groups"),
        (15, "Post-surgery vomiting 2 days - acid-base disorder", "A - Metabolic alkalosis (H+ loss)", "HCl loss from vomiting → raised pH → metabolic alkalosis"),
        (16, "Gland located above each kidney", "B - Adrenal gland", "Suprarenal glands; cortex + medulla"),
        (17, "Organ producing sperm AND testosterone", "C - Testis", "Seminiferous tubules (sperm) + Leydig cells (testosterone)"),
        (18, "Pelvic trauma - reduced urine output mechanism", "A - Reduced GFR + increased ADH release", "Low perfusion → reduced filtration + ADH-driven water reabsorption"),
        (19, "Trachea divides into two?", "C - Bronchi (primary/main bronchi)", "Bifurcation at carina (T4/T5)"),
        (20, "Hormone stimulating gastric juice secretion", "B - Gastrin", "G cells of gastric antrum; stimulates HCl + pepsinogen"),
    ]
    story.append(mcq_answer_table(kmtc_mcqs))
    story.append(spacer(0.5))
    story.append(PageBreak())

    story.append(section("Physiology II - MCQ Answers (Q1-Q20)"))
    phys1_mcqs = [
        (1, "Fertilisation of ovum occurs at?", "a) Oviduct (fallopian tube)", "Specifically the ampulla; sperm meets egg here after ovulation"),
        (2, "Function of prostate gland", "d) Secretes fluid to neutralise acidic vaginal medium", "Alkaline prostatic secretion protects sperm from vaginal acidity"),
        (3, "Accessory organs of digestion", "Liver, gallbladder, pancreas (salivary glands)", "These lie outside GI tract but contribute secretions for digestion"),
        (4, "Peristaltic movements produced by?", "c) Muscularis layer", "Inner circular + outer longitudinal smooth muscle produce peristalsis"),
        (5, "Total volume of intestinal secretions", "d) 1500 ml/day", "Total GI secretions ~7-8L/day; intestinal secretions ~1500 ml"),
        (6, "Parafollicular cells of thyroid secrete?", "d) Calcitonin", "C cells → calcitonin → lowers blood Ca2+ by inhibiting osteoclasts"),
        (7, "Erythropoietin secreted from?", "c) Kidney", "Peritubular fibroblasts of renal cortex; response to hypoxia"),
        (8, "One hormone needed for another to work = ?", "a) Permissive action", "E.g. cortisol permits adrenaline's vasoconstrictive effect"),
        (9, "Protein/peptide hormones are?", "b) Synthesised in rough ER", "Water-soluble; stored in vesicles; act on surface receptors via 2nd messengers"),
        (10, "FSH action", "c) Stimulates sperm production in males", "Acts on Sertoli cells of seminiferous tubules"),
        (11, "Testosterone release stimulated by?", "d) Luteinizing hormone (LH)", "LH → Leydig cells → testosterone production"),
        (12, "Hormone for T-lymphocyte maturation", "c) Thymosin", "Thymus gland secretes thymosins → T-cell differentiation and immunocompetence"),
        (13, "Cortisol is?", "a) Glucocorticoid from adrenal cortex (zona fasciculata)", "ACTH-stimulated; raises glucose; anti-inflammatory; catabolic"),
        (14, "Hydrocortisone function", "b) Stimulates protein and fat breakdown", "Catabolism → amino acids and fatty acids for gluconeogenesis"),
        (15, "Cushing's syndrome associated with?", "a) Hypersecretion of cortisol", "Causes central obesity, moon face, striae, hyperglycaemia"),
        (16, "Parathyroid hormone", "a) Increases calcium absorption from small intestine (via Vit D)", "Also activates osteoclasts; increases renal Ca2+ reabsorption"),
        (17, "Atrial natriuretic peptide", "b) Increased renal sodium excretion", "Released from atria when overstretched; promotes natriuresis + diuresis"),
        (18, "Hashimoto's thyroiditis", "a) Immune cells attack and destroy the thyroid", "Autoimmune; anti-TPO antibodies; leads to hypothyroidism"),
        (19, "Hypothalamic hormones include?", "c) GHRH and prolactin-releasing hormone", "Hypothalamus makes releasing/inhibiting hormones for anterior pituitary"),
        (20, "Gigantism is a disorder of?", "d) GH hypersecretion in children", "Before growth plate closure → excessive height; in adults = acromegaly"),
    ]
    story.append(mcq_answer_table(phys1_mcqs))
    story.append(PageBreak())

    story.append(section("Physiology II - MCQ Answers (Q21-Q40)"))
    phys2_mcqs = [
        (21, "Polydipsia, polyuria, polyphagia = cardinal signs of?", "a) Diabetes mellitus", "Hyperglycaemia → osmotic diuresis + cellular starvation"),
        (22, "Endocrine disorder with pathological fracture?", "b) Hyperparathyroidism", "Excess PTH → osteoclast activation → bone resorption → fractures"),
        (23, "Medication for Addison's disease?", "a) Intramuscular hydrocortisone injection", "Addison's = adrenal insufficiency; replace cortisol with hydrocortisone"),
        (24, "Type 2 diabetes mellitus is?", "c) Not insulin dependent", "Insulin resistance; managed initially by lifestyle/oral agents; no islet destruction"),
        (25, "Average length of adult trachea?", "c) ~12 cm", "Extends from C6 to T4/T5 carina; ~2.5 cm diameter; C-shaped cartilage rings"),
        (26, "Gas exchange at alveolar level = ?", "d) External respiration", "External = lungs ↔ blood; Internal = blood ↔ tissues"),
        (27, "Role of pleural fluid?", "c) Holds lungs against thoracic wall", "Surface tension coupling keeps lungs expanded; lubricates pleural surfaces"),
        (28, "Mucus/debris moved up by?", "b) Ciliated columnar epithelium of trachea", "Mucociliary escalator; cilia beat upward to pharynx"),
        (29, "Bronchiole smooth muscle contraction?", "a) Decreases airway diameter", "Bronchoconstriction → increased resistance; occurs in asthma"),
        (30, "Surfactant secreted into alveoli?", "c) Increases compliance", "Reduces surface tension → easier to inflate → increased compliance"),
        (31, "Inspiration ends when?", "d) Alveolar pressure = atmospheric pressure", "No pressure gradient → no airflow → end of inspiration"),
        (32, "Pleural fluid volume?", "a) ~2.5 ml (up to ~15 ml)", "Small amount for lubrication; excess = pleural effusion"),
        (33, "Epithelium lining trachea?", "a) Pseudostratified ciliated columnar epithelium", "Respiratory epithelium; all cells on basement membrane; cilia + goblet cells"),
        (34, "Type I alveolar cells?", "c) Contribute to lung compliance by elasticity", "Thin, flat; 95% of alveolar surface; gas exchange surface"),
        (35, "Blood flowing towards lungs?", "d) Low O2, high CO2", "Pulmonary artery carries deoxygenated blood to lungs for oxygenation"),
        (36, "Protein digestion begins in?", "c) Stomach", "Pepsin (activated by HCl) begins protein hydrolysis"),
        (37, "Receptors found only in the eye?", "Photoreceptors (rods and cones)", "Respond to light via phototransduction; not found in other organs"),
        (38, "Cranial nerves for taste (gustation)?", "a) CN VII, IX, and X", "VII: anterior 2/3 tongue; IX: posterior 1/3; X: epiglottis/pharynx"),
        (39, "Olfaction originates from?", "c) The nasal cavity", "Olfactory epithelium in superior nasal cavity; CN I → olfactory bulb"),
        (40, "Retinal layer generating action potentials?", "d) Layer of rods and cones", "Photoreceptors transduce light → electrical signal via phototransduction"),
    ]
    story.append(mcq_answer_table(phys2_mcqs))
    story.append(PageBreak())

# ══════════════════════════════════════════════════════════════════════════════
# CHAPTER 10 — SHORT & LONG ANSWER SUMMARIES
# ══════════════════════════════════════════════════════════════════════════════

def ch_saq(story):
    story.append(chapter_header("Chapter 10: Short & Long Answer Key Points", colors.HexColor("#1A3A5C")))
    story.append(spacer(0.3))

    saqs = [
        ("Q21 - Stress and Digestion (Mutua)",
         ["Sympathetic dominance during stress REDUCES digestion",
          "↓ Peristalsis, ↓ enzyme secretion, ↓ blood flow to gut, ↑ sphincter tone",
          "Parasympathetic (vagus) suppressed → nausea, indigestion",
          "Stress hormones (adrenaline, cortisol) prepare body for fight-or-flight, not digestion"]),
        ("Q22 - Accommodation after head injury (Harrison)",
         ["Accommodation = ciliary muscle contraction → zonule relaxation → lens more convex",
          "CN III (oculomotor nerve) controls ciliary muscle",
          "Head injury can damage CN III → accommodative paresis",
          "Result: cannot focus on near objects (difficulty reading)"]),
        ("Q23 - Adrenal response to blood loss (Cathrine)",
         ["IMMEDIATE: adrenal medulla → adrenaline/noradrenaline → ↑ HR, vasoconstriction, glycogenolysis",
          "DELAYED: RAAS → aldosterone → Na+/water retention",
          "Cortisol: gluconeogenesis → maintains blood glucose",
          "ADH: water reabsorption → maintains circulating volume"]),
        ("Q24 - Kidney regulation of K+ and Na+ (Korir - burn patient)",
         ["Aldosterone: Na+ IN, K+ OUT in collecting duct",
          "Burn patients: cell destruction releases K+ → hyperkalemia OR diuresis/IV fluids → hypokalemia",
          "Hypokalemia → muscle weakness (hyperpolarization of cell membranes)",
          "ANP opposes aldosterone; promotes natriuresis"]),
        ("Q25 - Stomach and Pancreas in digestion (Melody - after IV fluids)",
         ["Stomach: HCl (activates pepsin), pepsinogen (protein digestion), intrinsic factor (Vit B12)",
          "Stomach: gastrin, ghrelin, mechanical churning",
          "Pancreas: bicarbonate (neutralises acid) + amylase, lipase, trypsin, chymotrypsin",
          "After prolonged fasting: gut atony + reduced enzyme secretion → bloating when feeds restart"]),
        ("Q26 - Fluid balance after massive blood loss (Matata)",
         ["Step 1: baroreceptors detect ↓BP → sympathetic activation",
          "Step 2: RAAS → renin → Ang II → vasoconstriction + aldosterone",
          "Step 3: ADH → collecting duct aquaporins → water reabsorption",
          "Step 4: Aldosterone → Na+/water retention → expanded blood volume",
          "Net: oliguria, raised BP; severe loss → prerenal AKI"]),
        ("Q27 - Vestibular system and balance",
         ["Semicircular canals (3): detect ROTATIONAL acceleration; endolymph deflects cupula",
          "Utricle + Saccule: detect LINEAR acceleration and gravity (otolith membranes)",
          "Signals via CN VIII (vestibular) → vestibular nuclei → cerebellum + spinal cord",
          "Trauma → labyrinthine concussion → vertigo, nystagmus, imbalance"]),
        ("Q28 - Corticosteroids: protein metabolism and wound healing",
         ["Protein catabolism in muscle → amino acids → gluconeogenesis → muscle wasting",
          "Inhibit fibroblast activity → reduced collagen synthesis",
          "Suppress macrophages/neutrophils → impaired inflammatory phase",
          "Reduce angiogenesis → poor granulation tissue formation",
          "Net: slow wound healing, susceptibility to infection, thin fragile skin"]),
    ]

    for title, points in saqs:
        story.append(sub(title))
        for p in points:
            story.append(bullet(p))
        story.append(spacer(0.2))

    story.append(PageBreak())
    story.append(section("Long Answer Key Points: Respiration (Q29)"))
    story.append(body("See Chapter 2 for full respiratory mechanics. Key summary points:"))
    resp_points = [
        "Conducting zone: nose → trachea → terminal bronchioles (warms, filters, humidifies)",
        "Respiratory zone: respiratory bronchioles → alveoli (gas exchange)",
        "Inspiration: diaphragm contracts and descends + external intercostals contract → volume ↑, pressure ↓",
        "Expiration: passive recoil at rest; active with abdominal/internal intercostals during exercise",
        "External respiration: O2 moves alveoli → blood (PAO2 100 → PO2 40 mmHg); CO2 opposite",
        "O2 transport: 97% as oxyhaemoglobin; CO2: 70% as bicarbonate (carbonic anhydrase reaction)",
        "Control: medulla (DRG/VRG), pons (pneumotaxic), chemoreceptors (peripheral: O2/CO2/pH; central: CO2/pH)",
    ]
    for p in resp_points:
        story.append(bullet(p))

    story.append(spacer(0.3))
    story.append(section("Long Answer Key Points: Special Sense Organs (Q30)"))
    sense_points = [
        "EYE: cornea (refraction) → pupil (light regulation) → lens (accommodation) → retina (rods + cones) → optic nerve (CN II) → occipital cortex",
        "EAR HEARING: pinna → tympanic membrane → ossicles (malleus-incus-stapes) → oval window → cochlea (Organ of Corti) → CN VIII → temporal cortex",
        "EAR BALANCE: semicircular canals (rotation) + utricle/saccule (linear/gravity) → CN VIII → cerebellum + spinal cord",
        "NOSE: olfactory epithelium (superior nasal cavity) → CN I → olfactory bulb → limbic system (amygdala, hippocampus)",
        "Accommodation: ciliary muscles CONTRACT → zonule fibres RELAX → lens becomes MORE CONVEX (near vision)",
        "Pupil reflex: bright light → CN II afferent → CN III efferent → circular iris muscle contracts → miosis",
    ]
    for p in sense_points:
        story.append(bullet(p))

    story.append(spacer(0.4))
    story.append(key_box("FINAL EXAM TIPS", [
        "Always link symptoms to a specific hormone or organ (e.g. cold intolerance = hypothyroidism = low thyroxine)",
        "For blood loss questions: think RAAS + ADH + adrenal medulla in sequence",
        "Peristalsis = MUSCULARIS layer; NOT mucosa or serosa",
        "Trachea divides into PRIMARY BRONCHI (not bronchioles, not alveoli)",
        "Surfactant = Type II cells → reduces surface tension → INCREASES compliance",
        "Vomiting → metabolic ALKALOSIS; Diarrhoea → metabolic ACIDOSIS",
        "LH → testosterone (Leydig cells); FSH → spermatogenesis (Sertoli cells)",
        "Fertilisation = OVIDUCT; Implantation = ENDOMETRIUM (uterus)",
        "Semicircular canals = ROTATION; Utricle/Saccule = LINEAR / GRAVITY",
        "Photoreceptors: Rods = dim light; Cones = colour (fovea)",
    ], LIGHT_BLUE, DARK_BLUE))


# ══════════════════════════════════════════════════════════════════════════════
# PAGE TEMPLATE (header / footer)
# ══════════════════════════════════════════════════════════════════════════════

def on_page(canvas, doc):
    canvas.saveState()
    W, H = A4
    # Header bar
    canvas.setFillColor(DARK_BLUE)
    canvas.rect(0, H - 22*mm, W, 22*mm, fill=1, stroke=0)
    canvas.setFont("Helvetica-Bold", 9)
    canvas.setFillColor(WHITE)
    canvas.drawString(1.5*cm, H - 13*mm, "PHYSIOLOGY STUDY GUIDE")
    canvas.setFont("Helvetica", 8)
    canvas.drawRightString(W - 1.5*cm, H - 13*mm, "KMTC · Physiology I & II")
    # Footer
    canvas.setFillColor(LIGHT_GREY)
    canvas.rect(0, 0, W, 12*mm, fill=1, stroke=0)
    canvas.setFillColor(MID_GREY)
    canvas.setFont("Helvetica", 8)
    canvas.drawString(1.5*cm, 4*mm, "For educational use only")
    canvas.drawCentredString(W/2, 4*mm, f"Page {doc.page}")
    canvas.drawRightString(W - 1.5*cm, 4*mm, "Physiology Study Guide")
    canvas.restoreState()

# ══════════════════════════════════════════════════════════════════════════════
# BUILD THE PDF
# ══════════════════════════════════════════════════════════════════════════════

def build():
    doc = SimpleDocTemplate(
        OUTPUT,
        pagesize=A4,
        topMargin=28*mm,
        bottomMargin=18*mm,
        leftMargin=1.8*cm,
        rightMargin=1.8*cm,
        title="Physiology Study Guide",
        author="KMTC Study Aid",
        subject="Physiology I & II",
    )
    story = []
    cover_page(story)
    toc_page(story)
    ch_endocrine(story)
    ch_respiratory(story)
    ch_digestive(story)
    ch_renal(story)
    ch_reproductive(story)
    ch_senses(story)
    ch_ans(story)
    ch_steroids(story)
    ch_mcq(story)
    ch_saq(story)

    doc.build(story, onFirstPage=on_page, onLaterPages=on_page)
    print(f"PDF created: {OUTPUT}")

build()
Running Command

cd /home/daytona/workspace/physiology-study-guide && python3 build_guide.py 2>&1

Running Command

ls -lh /home/daytona/workspace/physiology-study-guide/Physiology_Study_Guide.pdf

Your study guide PDF has been created successfully. Download it here:

Physiology Study Guide

PDF Document · PDF


Here is what the guide contains across 10 chapters:
ChapterContent
1 - Endocrine SystemAll glands and hormones table, hormonal interaction types (permissive/synergistic/antagonistic), full disorders table (Diabetes, Cushing's, Addison's, Hashimoto's, Gigantism, etc.)
2 - Respiratory SystemStructural overview, ventilation mechanics, gas exchange pressures, surfactant, mucociliary clearance, respiratory control centres
3 - Digestive SystemGI tract layers, all enzymes with locations and substrates, GI hormones (gastrin, secretin, CCK), accessory organs
4 - Renal & Fluid BalanceRAAS step-by-step, ADH, electrolyte regulation (Na+/K+/Ca2+), haemorrhage response, acid-base disorders
5 - Reproductive SystemFertilisation, menstrual cycle phases, male and female hormones, prostate function
6 - Special Sense OrgansEye structures and accommodation, ear (hearing + vestibular), olfaction pathway, taste cranial nerves
7 - Autonomic Nervous SystemSympathetic vs parasympathetic comparison table, medullary control centres
8 - Corticosteroids & Wound HealingCortisol effects on protein/fat/glucose, all four phases of wound healing and how steroids impair each
9 - MCQ Answer KeysAll 50+ MCQs from both papers with correct answers + brief explanations in colour-coded tables
10 - Short & Long Answer SummariesAll 10 clinical scenario questions (Mutua, Harrison, Cathrine, Korir, Melody, Matata, vestibular, steroids) with key bullet points, plus respiration and special senses long-answer summaries
Each chapter ends with a highlighted "EXAM MEMORABLES" box listing the most frequently tested facts.

Generate practice quizzes on specific topics (endocrine, respiratory, etc.)

Asking for Preferences
All topics, exam-level, clinical scenarios. Here are your practice quizzes - attempt each section before reading the answers at the bottom.

PHYSIOLOGY PRACTICE QUIZZES

Exam-Level Clinical Scenarios | All Topics


🧬 QUIZ 1: ENDOCRINE SYSTEM

15 Questions

Q1. Amara, a 28-year-old woman, presents with weight gain, dry skin, hair loss, bradycardia, and intolerance to cold. Her TSH is elevated and T4 is low. What is the most likely diagnosis, and which cell type of the thyroid is primarily affected?
  • A. Graves' disease - follicular cells
  • B. Hashimoto's thyroiditis - parafollicular cells
  • C. Hashimoto's thyroiditis - follicular cells
  • D. Pituitary adenoma - C cells

Q2. A 45-year-old man on long-term prednisolone for rheumatoid arthritis develops moon face, central obesity, hypertension, and a fasting blood glucose of 11.2 mmol/L. Which hormonal mechanism explains the hyperglycaemia?
  • A. Prednisolone stimulates insulin secretion from beta cells
  • B. Prednisolone inhibits gluconeogenesis in the liver
  • C. Prednisolone stimulates gluconeogenesis and reduces peripheral glucose uptake
  • D. Prednisolone directly destroys pancreatic islets

Q3. A 16-year-old boy is 2.1 metres tall with enlarged hands and feet. His bone age equals his chronological age and growth plates are still open. Serum GH is markedly elevated. What is the diagnosis?
  • A. Acromegaly
  • B. Gigantism
  • C. Marfan syndrome
  • D. Pituitary apoplexy

Q4. Wanjiku, a 35-year-old woman, presents after a car accident with polyuria (output 8 litres/day) and extreme thirst. Her urine osmolarity is very low (60 mOsm/kg) while serum osmolarity is high. She responds to desmopressin (synthetic ADH). Which structure is most likely damaged?
  • A. Adrenal medulla
  • B. Posterior pituitary / hypothalamic-neurohypophyseal tract
  • C. Anterior pituitary
  • D. Juxtaglomerular apparatus of the kidney

Q5. A patient presents with "bones, stones, abdominal groans, and psychic moans." Serum calcium is 3.2 mmol/L (elevated). Serum PTH is also elevated. Which gland is overactive?
  • A. Thyroid (follicular cells)
  • B. Adrenal cortex
  • C. Parathyroid
  • D. Thyroid (C cells)

Q6. Otieno, a 40-year-old man, develops hypotension, hyponatraemia, hyperkalaemia, and hypoglycaemia after stopping his steroid medications abruptly. Which adrenal hormones are deficient?
  • A. Adrenaline and noradrenaline
  • B. Cortisol only
  • C. Cortisol and aldosterone
  • D. Aldosterone and testosterone

Q7. A 12-year-old girl has not yet started menstruating. Her FSH and LH levels are undetectable. Her hypothalamus is normal. Which gland is most likely the primary problem?
  • A. Thyroid
  • B. Adrenal cortex
  • C. Anterior pituitary
  • D. Ovary

Q8. A patient with a kidney tumour develops polycythaemia (haematocrit 62%). Which hormone is the tumour most likely secreting inappropriately?
  • A. Aldosterone
  • B. Calcitriol
  • C. Erythropoietin (EPO)
  • D. Renin

Q9. A 50-year-old woman has a serum calcium of 1.8 mmol/L (low). She develops muscle cramps, tingling, and a positive Chvostek's sign. Which hormone is most likely deficient, and what is its normal action on bone?
  • A. Calcitonin - inhibits osteoclasts
  • B. Parathyroid hormone - activates osteoclasts to release calcium from bone
  • C. Cortisol - promotes calcium absorption
  • D. Aldosterone - regulates calcium in the collecting duct

Q10. A 30-year-old man undergoing evaluation for infertility is found to have azoospermia (no sperm). His testosterone is normal. LH is normal. FSH is markedly elevated. Which cells are most likely dysfunctional?
  • A. Leydig cells
  • B. Sertoli cells
  • C. Granulosa cells
  • D. Interstitial cells

Q11. A 22-year-old woman presents with episodes of headache, sweating, and palpitations. Her 24-hour urinary catecholamines are elevated. CT scan shows a mass in the adrenal medulla. What is the diagnosis?
  • A. Cushing's syndrome
  • B. Conn's syndrome
  • C. Phaeochromocytoma
  • D. Addison's disease

Q12. A neonatal infant born at 28 weeks gestation develops laboured breathing immediately after birth, with intercostal recession and grunting. Chest X-ray shows diffuse ground-glass opacity. Which substance is deficient?
  • A. Mucus from goblet cells
  • B. Surfactant from Type II pneumocytes
  • C. Clara cell secretions
  • D. Lysozyme from macrophages

Q13. A patient with a pituitary adenoma has very high prolactin and low FSH and LH. She presents with galactorrhoea and secondary amenorrhoea. Which hypothalamic hormone normally inhibits prolactin?
  • A. TRH
  • B. GnRH
  • C. Dopamine (prolactin-inhibiting factor)
  • D. Somatostatin

Q14. An athlete takes synthetic testosterone. His own testicular testosterone production stops. Which feedback mechanism explains this?
  • A. Positive feedback on hypothalamus to increase GnRH
  • B. Negative feedback on hypothalamus/anterior pituitary → decreased LH → decreased Leydig cell stimulation
  • C. Direct cytotoxic effect on Leydig cells
  • D. Increased SHBG production in the liver

Q15. A 65-year-old woman with a 2 cm atrial mass is found to have low renin, low aldosterone, and low blood pressure. ANP is markedly elevated. How does ANP lower blood pressure?
  • A. Increases ADH secretion → water retention
  • B. Stimulates renin release → RAAS activation
  • C. Promotes renal Na+ excretion → reduces blood volume
  • D. Increases aldosterone production from adrenal cortex

✅ QUIZ 1 ANSWERS - ENDOCRINE

QAnswerExplanation
1CHashimoto's is autoimmune destruction of follicular cells (T3/T4 producers). C cells produce calcitonin. TSH rises because T4 is low (negative feedback released).
2CGlucocorticoids stimulate hepatic gluconeogenesis AND cause peripheral insulin resistance → hyperglycaemia (steroid-induced diabetes).
3BGH excess before growth plate closure = Gigantism (abnormal height). After closure = Acromegaly (hands, feet, jaw enlarge but no extra height).
4BADH is made in the hypothalamus and stored/released from the posterior pituitary. Trauma damages this tract → cranial diabetes insipidus. Responds to desmopressin confirms central (not nephrogenic) DI.
5CClassic "bones, stones, groans, moans" = hyperparathyroidism. Elevated PTH + hypercalcaemia confirm overactive parathyroid glands.
6CAbrupt steroid withdrawal → Addisonian crisis. Cortisol (glucocorticoid, zona fasciculata) and aldosterone (mineralocorticoid, zona glomerulosa) are both deficient. Hypotension = ↓ aldosterone; hypoglycaemia = ↓ cortisol.
7CFSH/LH are produced by the anterior pituitary. Undetectable levels with normal hypothalamus points to anterior pituitary failure (hypogonadotrophic hypogonadism).
8CRenal cell carcinoma is the classic cause of paraneoplastic EPO secretion → polycythaemia. EPO is normally produced by renal interstitial fibroblasts in response to hypoxia.
9BLow Ca2+ = PTH deficiency (hypoparathyroidism). PTH normally activates osteoclasts to resorb bone, releasing Ca2+ into blood. Deficiency → hypocalcaemia → tetany, Chvostek's sign.
10BFSH elevated = pituitary signalling more to compensate. Sertoli cells (FSH target) support spermatogenesis. Leydig cells (LH target) make testosterone - normal here.
11CPhaeochromocytoma = catecholamine-secreting adrenal medulla tumour → episodic hypertension, headache, sweating, palpitations. Classic "5 Hs": Hypertension, Headache, Hyperhidrosis, Hyperglycaemia, Heart palpitations.
12BPremature infants lack surfactant (from Type II pneumocytes). Without surfactant, alveolar surface tension is high → alveoli collapse (atelectasis) → Respiratory Distress Syndrome (RDS).
13CDopamine (from the hypothalamus) is the physiological prolactin-inhibiting factor. When a pituitary adenoma secrets excess prolactin, it escapes this inhibition → galactorrhoea + amenorrhoea (suppressed FSH/LH).
14BExogenous testosterone → negative feedback on hypothalamus (↓GnRH) and anterior pituitary (↓LH) → Leydig cells not stimulated → testicular testosterone production stops → testicular atrophy.
15CANP promotes renal sodium (natriuresis) and water excretion → reduced blood volume → lower blood pressure. It directly opposes RAAS and ADH.


🫁 QUIZ 2: RESPIRATORY SYSTEM

12 Questions

Q1. A 70-year-old COPD patient on high-flow oxygen becomes increasingly drowsy and stops breathing. His blood gas before oxygen showed PCO2 = 78 mmHg (high). Which physiological mechanism explains the respiratory arrest?
  • A. Oxygen toxicity directly damaged the alveoli
  • B. In CO2 retainers, hypoxia is the main drive to breathe ("hypoxic drive"); removing hypoxia with high O2 eliminated the stimulus to breathe
  • C. High oxygen caused bronchoconstriction
  • D. Oxygen increased haemoglobin saturation beyond 100%, causing toxicity

Q2. A premature baby is given artificial surfactant. Which specific improvement in lung mechanics would you expect?
  • A. Increased airway resistance
  • B. Decreased lung compliance
  • C. Decreased surface tension → increased compliance → easier inflation
  • D. Increased mucus production from goblet cells

Q3. A patient post-thoracic surgery develops a sudden worsening of dyspnoea. Trachea deviates to the opposite side. Breath sounds are absent on one side. What physiological consequence would you expect?
  • A. Bronchospasm from surgical irritation
  • B. Tension pneumothorax - air in pleural space destroys negative intrapleural pressure → lung collapse
  • C. Pulmonary oedema from fluid overload
  • D. Diaphragmatic paralysis

Q4. An asthmatic patient uses a salbutamol (β2 agonist) inhaler. Which cellular and physiological change does this cause in the bronchioles?
  • A. Contraction of smooth muscle → bronchoconstriction → increased airway diameter
  • B. Relaxation of smooth muscle → bronchodilation → decreased airway resistance → improved airflow
  • C. Increased mucus secretion → improved mucociliary clearance
  • D. Constriction of pulmonary arterioles

Q5. A mountaineer at high altitude develops rapid breathing (hyperventilation). His blood gas shows low PCO2 and elevated pH. Which acid-base disturbance has occurred, and what compensatory mechanism will the kidneys employ?
  • A. Metabolic acidosis; kidneys will retain HCO3-
  • B. Respiratory alkalosis; kidneys will excrete HCO3- to lower pH back toward normal
  • C. Respiratory acidosis; kidneys will retain HCO3-
  • D. Metabolic alkalosis; kidneys will increase ventilation

Q6. A heavy smoker develops a persistent productive cough and is diagnosed with chronic bronchitis. Which structural change in the airway directly causes impaired mucociliary clearance?
  • A. Alveolar destruction (emphysema)
  • B. Metaplasia of pseudostratified ciliated epithelium → loss of cilia; goblet cell hyperplasia → excess mucus
  • C. Surfactant deficiency
  • D. Pleural fibrosis

Q7. A patient's arterial blood gas shows: pH 7.28, PCO2 65 mmHg, HCO3- 28 mEq/L. Which disorder is present, and is there compensation?
  • A. Metabolic acidosis, uncompensated
  • B. Respiratory acidosis, partially compensated (elevated HCO3- = renal compensation)
  • C. Respiratory alkalosis, compensated
  • D. Metabolic alkalosis, uncompensated

Q8. During a forceful exhalation, a patient can expel 4.2 litres of air after a maximal inspiration. What lung volume does this represent?
  • A. Tidal volume
  • B. Vital capacity
  • C. Total lung capacity
  • D. Functional residual capacity

Q9. A newborn has a respiratory rate of 70/min and is using accessory muscles. He was born via emergency C-section. His lungs had not been "squeezed" through the birth canal. What fluid-related mechanism explains his breathing difficulty?
  • A. Surfactant deficiency due to prematurity
  • B. Retained fetal lung fluid (transient tachypnoea of the newborn); normally squeezed out during vaginal delivery
  • C. Aspiration of meconium
  • D. Pneumothorax from barotrauma

Q10. A patient with pulmonary fibrosis has reduced lung compliance. Which physical property of the lung has changed, and how does it affect the work of breathing?
  • A. Airway resistance has decreased; work of breathing is reduced
  • B. The lungs are stiffer (reduced compliance = more pressure needed to achieve same volume change); work of breathing INCREASES
  • C. Surface tension has increased in alveoli
  • D. Pleural fluid has decreased

Q11. A patient develops orthopnea (difficulty breathing when lying flat). Which physiological change explains this positional dyspnoea?
  • A. Lying flat increases tidal volume by compressing the diaphragm upward
  • B. Lying flat allows abdominal organs to push the diaphragm upward, reducing FRC, and redistributes fluid from legs to pulmonary vasculature → worsening pulmonary congestion
  • C. Lying flat increases airway resistance by compressing the trachea
  • D. Lying flat reduces ADH secretion causing fluid shifts

Q12. A patient breathes at a rate of 20 breaths/min with a tidal volume of 500 ml. Anatomical dead space is 150 ml. What is the alveolar ventilation per minute?
  • A. 10,000 ml/min
  • B. 7,000 ml/min
  • C. 3,000 ml/min
  • D. 5,000 ml/min

✅ QUIZ 2 ANSWERS - RESPIRATORY

QAnswerExplanation
1BChronic CO2 retainers lose sensitivity to high PCO2. Their only breathing drive is hypoxic drive (peripheral chemoreceptors sensing low PO2). High-flow O2 corrects hypoxia → removes the only drive → apnoea. Use controlled low-flow O2 in COPD.
2CSurfactant reduces surface tension → alveoli stay open → reduced work of breathing → increased compliance (lungs inflate more easily for a given pressure).
3BTracheal deviation AWAY = tension pneumothorax. Air enters pleural space → destroys negative intrapleural pressure → ipsilateral lung collapses. Mediastinum shifts, compresses contralateral lung and heart. Life-threatening.
4BSalbutamol activates β2 receptors on bronchiole smooth muscle → relaxation (bronchodilation) → reduced airway resistance → improved airflow. Reverses bronchoconstriction of asthma.
5BHyperventilation blows off CO2 → low PCO2 → pH rises → respiratory alkalosis. Renal compensation: kidneys excrete HCO3- over 2-3 days to bring pH back toward 7.4.
6BSmoking causes: (1) loss of cilia by metaplasia, (2) goblet cell hyperplasia → excess mucus. Without functional cilia, mucus and debris accumulate → chronic cough, infection.
7BHigh PCO2 (65 mmHg) + low pH = respiratory acidosis (CO2 retention). Elevated HCO3- (28 mEq/L; normal ~24) = renal compensation (kidneys retain bicarbonate to buffer the acid).
8BAir expelled from maximal inspiration to maximal expiration = Vital Capacity (VC). Normal ~4-5 litres. Tidal volume = 500 ml at rest; Total lung capacity includes residual volume.
9BVaginal delivery squeezes fetal lung fluid out. C-section babies miss this → transient tachypnoea of the newborn (TTN) from retained lung fluid. Different from RDS (surfactant deficiency in premature infants).
10BCompliance = ΔVolume/ΔPressure. In fibrosis, lungs are stiffer (low compliance) → more muscular effort (pressure) needed for each breath → increased work of breathing → dyspnoea.
11BOrthopnoea = classic heart failure sign. Lying flat: (1) diaphragm pushed up by abdominal viscera → ↓FRC, (2) venous return increases → pulmonary congestion worsens → dyspnoea. Sitting upright relieves it.
12BAlveolar ventilation = (Tidal volume - Dead space) × Respiratory rate = (500 - 150) × 20 = 350 × 20 = 7,000 ml/min. Dead space is "wasted" ventilation - it never reaches the alveoli for gas exchange.


🍽️ QUIZ 3: DIGESTIVE SYSTEM

10 Questions

Q1. A patient with a Zollinger-Ellison tumour (gastrinoma) has very high gastrin levels and severe peptic ulcers. Why do high gastrin levels cause ulcers?
  • A. Gastrin directly erodes the mucosal lining
  • B. High gastrin → excessive HCl secretion by parietal cells → overwhelms mucosal defences → ulceration
  • C. Gastrin inhibits mucus secretion
  • D. Gastrin increases bile secretion, which is caustic to the stomach

Q2. A patient who had their ileum surgically removed develops vitamin B12 deficiency and fat malabsorption. Which functions of the ileum explain these deficiencies?
  • A. Ileum secretes intrinsic factor and lipase
  • B. Ileum absorbs vitamin B12-intrinsic factor complex and reabsorbs bile salts (enterohepatic circulation)
  • C. Ileum secretes bile and produces B12
  • D. Ileum contains the only brush-border enzymes for fat digestion

Q3. A 60-year-old man after total gastrectomy develops anaemia with large, abnormal red cells (megaloblastic anaemia). Which specific gastric secretion was lost?
  • A. Pepsinogen
  • B. Hydrochloric acid
  • C. Intrinsic factor (from parietal cells)
  • D. Gastrin

Q4. A patient presents with jaundice, pale stools, and dark urine after a gallstone blocks the common bile duct. Which aspect of digestion is most directly impaired?
  • A. Protein digestion in the stomach
  • B. Carbohydrate absorption in the jejunum
  • C. Fat digestion and absorption (bile cannot emulsify fats → fat malabsorption → steatorrhoea)
  • D. Water absorption in the colon

Q5. A patient on NSAIDs develops a duodenal ulcer. The duodenum is usually protected from acid. Which physiological mechanism, impaired by NSAIDs, normally protects the duodenal mucosa?
  • A. Bile neutralises gastric acid in the duodenum
  • B. Prostaglandin E2 (PGE2) stimulates mucus and bicarbonate secretion; NSAIDs inhibit COX → reduced PGE2 → impaired mucosal defence
  • C. Secretin directly coats the duodenal mucosa
  • D. Trypsin digests any acid entering the duodenum

Q6. A 25-year-old woman with coeliac disease has chronic diarrhoea and malnutrition. Intestinal biopsy shows villous atrophy. Which physiological consequence directly causes her malnutrition?
  • A. Reduced gastric acid production
  • B. Massive reduction in absorptive surface area of the small intestine
  • C. Increased gastric emptying rate
  • D. Deficiency of pancreatic enzymes

Q7. A patient eats a fatty meal. Which hormone is released from the duodenum that causes gallbladder contraction and pancreatic enzyme secretion?
  • A. Gastrin
  • B. Secretin
  • C. Cholecystokinin (CCK)
  • D. Motilin

Q8. An unconscious patient is tube-fed directly into the jejunum (bypassing the stomach). Which digestive processes are bypassed that would normally begin digestion?
  • A. Bile secretion and hepatic metabolism
  • B. Mechanical grinding, HCl acidification, pepsin protein digestion, and intrinsic factor secretion
  • C. Pancreatic enzyme activation
  • D. Absorption of fat-soluble vitamins

Q9. A patient develops acute pancreatitis. Normally, pancreatic enzymes are inactive until they reach the duodenum. Which enzyme activates all other pancreatic proteases once in the duodenum?
  • A. Lipase
  • B. Amylase
  • C. Trypsin (activated from trypsinogen by enterokinase/enteropeptidase from duodenal mucosa)
  • D. Chymotrypsin

Q10. A 50-year-old man with cirrhosis has oesophageal varices (dilated veins at the lower oesophagus). Why does portal hypertension in liver disease cause oesophageal varices?
  • A. The liver produces a vasoconstrictor that acts on oesophageal vessels
  • B. Portal vein backs up → blood diverts through portosystemic anastomoses (including oesophageal venous plexus) → varices form under high pressure
  • C. Cirrhosis reduces bile production, causing acid reflux that damages oesophageal veins
  • D. Reduced clotting factors cause spontaneous venous dilation

✅ QUIZ 3 ANSWERS - DIGESTIVE

QAnswerExplanation
1BGastrin drives HCl secretion from parietal cells. Tumour-level gastrin → massive acid → overwhelms bicarbonate and mucus defences → multiple ulcers, often in unusual locations (jejunum).
2BThe terminal ileum specifically absorbs the B12-intrinsic factor complex and reabsorbs bile salts (enterohepatic circulation). Loss = B12 deficiency + fat malabsorption (bile salts not recycled).
3CIntrinsic factor is secreted by gastric parietal cells. It is essential for B12 absorption in the terminal ileum. Loss of stomach → no intrinsic factor → B12 deficiency → megaloblastic anaemia.
4CBile emulsifies dietary fats, increasing lipase access. Blocked duct → no bile in duodenum → fat cannot be digested or absorbed → steatorrhoea (pale, fatty stools). Bilirubin backs up → jaundice + dark urine.
5BNSAIDs inhibit cyclooxygenase (COX-1) → reduce prostaglandin E2 → less mucus and bicarbonate secretion → reduced mucosal defence → ulcers. This is why PPIs or misoprostol are co-prescribed.
6BVilli (and microvilli) massively increase intestinal surface area (~200 m²). Villous atrophy in coeliac (from gluten-triggered immune attack on villi) = drastically reduced absorption of ALL macronutrients and vitamins.
7CCCK (I cells, duodenum/jejunum) is released by fat and protein → gallbladder contracts → bile released → pancreatic acinar cells secrete enzymes. Secretin releases bicarbonate; gastrin releases HCl.
8BBypassing the stomach loses: mechanical grinding, HCl (kills bacteria, activates pepsin), pepsin (protein digestion), and intrinsic factor (B12 absorption). Jejunal feeding also bypasses duodenal enzyme activation signals.
9CEnterokinase (enteropeptidase) on duodenal brush border activates trypsinogen → trypsin. Trypsin then activates all other pancreatic proteases (chymotrypsinogen, proelastase, etc.) - cascade activation. In pancreatitis, premature intrapancreatic activation causes autodigestion.
10BCirrhosis → fibrosis → portal hypertension → blood backs up into portosystemic collaterals: oesophageal plexus, umbilical veins (caput medusae), rectal veins (haemorrhoids). Oesophageal varices risk lethal haemorrhage.


🫘 QUIZ 4: RENAL & FLUID BALANCE

10 Questions

Q1. A 20-year-old marathon runner collapses and is found to have serum Na+ of 118 mEq/L (severely low). She had been drinking large amounts of plain water throughout the race. What is the diagnosis, and which hormone's effect was overwhelmed?
  • A. Hypernatraemia; ADH excess caused water retention
  • B. Hyponatraemia (dilutional); ADH was suppressed but water intake overwhelmed the kidneys' diluting ability
  • C. Addison's disease; aldosterone was absent
  • D. SIADH; ADH was inappropriately elevated

Q2. Kamau, a 45-year-old man with hypertension, is treated with an ACE inhibitor. His blood pressure falls. What specific step in the RAAS does the ACE inhibitor block?
  • A. Renin releasing angiotensinogen from the liver
  • B. Conversion of angiotensin I → angiotensin II in the lungs
  • C. Aldosterone binding to collecting duct receptors
  • D. ADH release from the posterior pituitary

Q3. A patient with syndrome of inappropriate ADH (SIADH) has serum Na+ of 122 mEq/L and urine osmolarity of 800 mOsm/kg. Why is serum sodium low despite normal sodium intake?
  • A. The kidneys are losing excess sodium in the urine
  • B. Inappropriately high ADH → excess water reabsorption → dilutional hyponatraemia (water dilutes sodium)
  • C. ADH causes sodium excretion directly
  • D. SIADH suppresses aldosterone, reducing sodium reabsorption

Q4. A patient in the ICU develops metabolic acidosis (pH 7.22, HCO3- 14 mEq/L, PCO2 30 mmHg). Is there respiratory compensation, and is it adequate?
  • A. No compensation; PCO2 should be 40 mmHg
  • B. Yes - respiratory compensation (hyperventilation lowers PCO2 to ~30 mmHg); expected PCO2 = 1.5 × HCO3- + 8 = 29 mmHg (Winter's formula) - this is adequate compensation
  • C. The low PCO2 indicates concurrent respiratory alkalosis, not compensation
  • D. Renal compensation will lower HCO3- further

Q5. A patient with chronic kidney disease has a GFR of 12 ml/min (normal 90-120). Which of the following is NOT a direct consequence of severely reduced GFR?
  • A. Anaemia (reduced EPO production)
  • B. Hyperkalaemia (potassium cannot be excreted)
  • C. Metabolic acidosis (H+ cannot be excreted, HCO3- cannot be regenerated)
  • D. Hypocalcaemia from reduced calcitriol production
  • E. Hypertension from reduced renin secretion

Q6. A patient is given furosemide (a loop diuretic that blocks the Na+/K+/2Cl- transporter in the thick ascending limb of Henle). What electrolyte abnormalities would you expect?
  • A. Hypernatraemia and hyperkalaemia
  • B. Hyponatraemia, hypokalaemia, hypochloraemia, and metabolic alkalosis
  • C. Hypernatraemia and hypomagnesaemia only
  • D. Hyperkalaemia and metabolic acidosis

Q7. A 55-year-old woman with heart failure is found to have bilateral pitting oedema. Her serum albumin is normal. Which mechanism primarily causes the oedema?
  • A. Reduced plasma oncotic pressure from low albumin
  • B. Increased capillary hydrostatic pressure from venous congestion → fluid forced into interstitium
  • C. Lymphatic obstruction preventing fluid return
  • D. Increased capillary permeability from inflammation

Q8. A patient with a crush injury to both legs develops dark urine (myoglobinuria) and acute kidney injury. Which mechanism explains the renal injury?
  • A. Myoglobin causes glomerulonephritis
  • B. Myoglobin precipitates in renal tubules → direct tubular toxicity + obstruction → acute tubular necrosis (ATN)
  • C. Crush injury releases renin from damaged muscle
  • D. Hyperkalaemia from cell death causes renal vasoconstriction

Q9. A patient is given aldosterone antagonist (spironolactone). In which nephron segment does this drug act, and what is the ion exchange effect?
  • A. Proximal tubule; blocks Na+/H+ antiporter
  • B. Thick ascending limb; blocks Na+/K+/2Cl- cotransporter
  • C. Collecting duct (principal cells); blocks aldosterone receptor → reduced Na+ reabsorption and reduced K+ secretion → K+ sparing
  • D. Distal convoluted tubule; blocks Na+/Cl- cotransporter

Q10. A burn patient in the ICU develops polyuria (6 litres/day) on day 3. His serum sodium is 155 mEq/L. What is the most likely cause of his high urine output?
  • A. SIADH causing water excretion
  • B. Osmotic diuresis from hyperglycaemia
  • C. Central diabetes insipidus from stress-related posterior pituitary suppression OR relative ADH insufficiency due to the massive fluid requirements of burns
  • D. Renal failure causing inappropriate diuresis

✅ QUIZ 4 ANSWERS - RENAL & FLUID BALANCE

QAnswerExplanation
1BExcessive plain water intake → dilutes serum Na+ → exercise-associated hyponatraemia. Can be severe and fatal. ADH is normally suppressed by low osmolarity, but massive intake overwhelms capacity. Not SIADH (no inappropriate ADH here).
2BACE (in lungs) converts Angiotensin I → Angiotensin II. ACE inhibitors block this step → no Ang II → no vasoconstriction, no aldosterone stimulation → lower BP + reduced Na+ retention. Also reduces bradykinin breakdown (causes the characteristic dry cough).
3BSIADH = ADH secreted despite low osmolarity. ADH causes collecting duct to reabsorb excess water → blood volume expands → Na+ is diluted → dilutional hyponatraemia. Urine is inappropriately concentrated despite low serum osmolarity.
4BPCO2 of 30 mmHg = respiratory compensation (hyperventilation). Winter's formula: Expected PCO2 = 1.5 × [HCO3-] + 8 ± 2 = 1.5 × 14 + 8 = 29 mmHg. Actual PCO2 = 30 mmHg. Compensation is appropriate - no secondary respiratory disorder.
5EIn CKD, reduced GFR activates RAAS → renin INCREASES → hypertension. All others (A-D) are direct CKD consequences: ↓EPO → anaemia; ↓K+ excretion → hyperkalaemia; ↓H+ excretion → acidosis; ↓calcitriol → hypocalcaemia.
6BFurosemide blocks Na+/K+/2Cl- in thick ascending limb → massive urinary losses of Na+, K+, Cl-. Loss of H+ (alkalosis from aldosterone-driven H+ secretion to compensate K+ loss). Result: hyponatraemia, hypokalaemia, hypochloraemia, metabolic alkalosis.
7BIn heart failure, right-sided congestion raises venous pressure → increased capillary hydrostatic pressure → forces fluid into interstitium → dependent oedema. Reduced albumin causes oncotic oedema but albumin is normal here.
8BMyoglobin (from crushed muscle) is freely filtered. In the tubule it precipitates (especially in acidic urine) → tubular obstruction + direct toxicity → acute tubular necrosis. Treatment: aggressive IV fluids + urinary alkalinisation.
9CSpironolactone is an aldosterone antagonist acting on principal cells of the collecting duct. Blocks aldosterone receptors → ENaC channels not inserted → ↓Na+ reabsorption + ↓K+ secretion → potassium-sparing diuretic. Used in heart failure and hyperaldosteronism.
10COn day 3 (diuretic phase of burn recovery), combined with high serum Na+ suggesting dehydration, this points to relative ADH deficiency or diabetes insipidus from stress/posterior pituitary dysfunction. Burn patients have enormously complex fluid dynamics.


👁️ QUIZ 5: SPECIAL SENSES & NERVOUS SYSTEM

10 Questions

Q1. A patient develops sudden painless loss of vision in one eye after a central retinal artery occlusion. Which retinal layer is most directly affected by ischaemia?
  • A. The pigmented epithelium (outer layer)
  • B. The rod and cone layer plus all inner layers - the inner retina depends on central retinal artery
  • C. The choroid layer only
  • D. The macula only

Q2. A 45-year-old man reports he cannot hear high-pitched sounds (high-frequency hearing loss). His audiogram shows loss above 4 kHz. Which part of the cochlea is damaged?
  • A. The apex of the cochlea (responds to low frequencies)
  • B. The base of the cochlea (responds to HIGH frequencies, damaged first by noise/age)
  • C. The utricle
  • D. The semicircular canals

Q3. A patient receiving gentamicin (aminoglycoside antibiotic) develops tinnitus, dizziness, and hearing loss. Which specific structure is the primary target of aminoglycoside ototoxicity?
  • A. Tympanic membrane
  • B. Cochlear hair cells (particularly in the base of the cochlea)
  • C. Eustachian tube
  • D. Auditory ossicles

Q4. After a stroke affecting the right visual cortex (occipital lobe), a patient loses vision in the left half of both visual fields (left homonymous hemianopia). Where in the visual pathway was the damage?
  • A. Left optic nerve
  • B. Right optic nerve
  • C. Optic chiasm
  • D. Right optic radiation / right visual cortex (processes left visual field from both eyes)

Q5. A 30-year-old diver surfaces too quickly and develops vertigo, nausea, and nystagmus. Which mechanism explains the vertigo?
  • A. High pressure nitrogen directly damages cochlear hair cells
  • B. Gas bubbles form in the endolymph/perilymph, abnormally stimulating hair cells in the vestibular apparatus
  • C. Rapid ascent causes tympanic membrane rupture
  • D. Cold water entering the ear canal stimulates the cochlea

Q6. A 60-year-old patient with Parkinson's disease has a mask-like face, tremor at rest, and stooped posture. Which brain region is primarily affected, and which neurotransmitter is depleted?
  • A. Cerebellum; serotonin
  • B. Basal ganglia (substantia nigra); dopamine
  • C. Medulla; acetylcholine
  • D. Hypothalamus; noradrenaline

Q7. A patient eating a meal notices that food tastes bland after she developed a nasal congestion. Why does nasal congestion affect taste?
  • A. Nasal congestion blocks salivary flow, preventing food from dissolving
  • B. Approximately 80% of flavour perception depends on olfaction (retronasal smell); blocked nose = impaired olfaction = reduced flavour perception
  • C. The trigeminal nerve (CN V) which carries taste signals passes through the nasal cavity
  • D. Nasal congestion causes mouth breathing, drying out taste buds

Q8. An elderly patient reports progressive difficulty seeing faces but can still read fine print with glasses. Which type of photoreceptor and which retinal region is primarily failing?
  • A. Rods in the peripheral retina - peripheral vision loss
  • B. Cones in the fovea - age-related macular degeneration (central vision loss)
  • C. Rods in the fovea - night blindness
  • D. Cones in the peripheral retina - colour blindness

Q9. A patient has loss of pain and temperature sensation on the right side of the body below the neck, and loss of vibration and proprioception on the left side below the neck, after a spinal cord hemisection (Brown-Séquard syndrome). Why do different modalities cross at different levels?
  • A. All sensory tracts cross at the same level (thalamus)
  • B. Spinothalamic tract (pain/temp) crosses immediately at spinal entry level; Dorsal column (vibration/proprioception) ascends ipsilaterally and crosses in the medulla
  • C. Pain crosses in the cerebellum; proprioception crosses in the pons
  • D. Both tracts decussate in the spinal cord at cervical levels only

Q10. A 25-year-old soldier returns from combat with hypervigilance, nightmares, and exaggerated startle response. His amygdala is chronically hyperactive. Which olfactory connection explains why certain smells trigger his flashbacks?
  • A. CN I projects to the primary somatosensory cortex, which links to memory
  • B. Olfactory signals project directly to the amygdala and hippocampus (limbic system) without a thalamic relay - the only sense with direct limbic access, explaining strong smell-memory associations
  • C. Olfactory signals travel via CN VII to the amygdala
  • D. The olfactory bulb connects to the cerebellum, which stores emotional memories

✅ QUIZ 5 ANSWERS - SPECIAL SENSES & NERVOUS SYSTEM

QAnswerExplanation
1BThe inner retinal layers (ganglion cells, bipolar cells, photoreceptors on the inner side) are supplied by the central retinal artery. Sudden occlusion → inner retina infarcts → sudden visual loss. The outer retina (photoreceptors) also depends on the central retinal artery in most of the retina.
2BThe cochlea is tonotopically organised: high frequencies are detected at the base (stimulated first by sound waves), low frequencies at the apex. Noise-induced and age-related hearing loss (presbycusis) damages the base first → high-frequency loss first.
3BAminoglycosides accumulate in cochlear hair cells and cause oxidative damage → irreversible hearing loss and vestibular toxicity. Most toxic to basal cochlear hair cells → high-frequency hearing loss first. Monitor drug levels and avoid co-administration with other ototoxic drugs.
4DEach visual cortex processes the contralateral visual field from both eyes. The right optic radiation and right visual cortex process the left visual field of both eyes. Damage here → left homonymous hemianopia (loss of left visual field in both eyes).
5BDecompression sickness: dissolved nitrogen forms gas bubbles in tissues during rapid ascent. Bubbles in vestibular endolymph/perilymph → abnormal hair cell stimulation → vertigo, nystagmus. Treatment: recompression in a hyperbaric chamber.
6BParkinson's disease: degeneration of dopaminergic neurons in the substantia nigra (basal ganglia circuit). Dopamine loss → reduced inhibition of acetylcholine → imbalance. Features: TRAP (Tremor at rest, Rigidity, Akinesia, Postural instability).
7BTaste is only ~20% from true gustatory receptors; ~80% of what we perceive as "flavour" is retronasal olfaction (smell of volatile food compounds reaching the nasal epithelium via the throat). Blocked nose → impaired olfaction → food seems bland.
8BThe fovea centralis is packed with cones (colour, high acuity, face recognition). Age-related macular degeneration (AMD) destroys the macula → central scotoma → difficulty with faces, reading, fine detail. Peripheral rod vision preserved (can still navigate).
9BKey neuroanatomy: Spinothalamic tract (pain/temperature) - first-order neuron crosses within 1-2 spinal segments of entry → right cord lesion = loss of left pain/temp below lesion. Dorsal column-medial lemniscal system (vibration/proprioception) - ascends ipsilaterally to the medulla, then crosses → right cord lesion = loss of right vibration/proprioception.
10BOlfaction is unique: it is the only sense that projects directly to the limbic system (amygdala, hippocampus) without first going through the thalamus. This explains why smells trigger vivid emotional memories and why PTSD patients can be triggered by combat-associated smells.


🔁 QUIZ 6: MIXED RAPID-FIRE (20 Qs)

Test your full-topic integration
QQuestionABCD
1Which hormone is released when blood pressure falls?InsulinReninEPOANP
2A patient with Addison's disease has low cortisol AND low aldosterone. Which of the following will NOT occur?HypoglycaemiaHyperkalaemiaHyponatraemiaHypernatraemia
3Fertilisation normally occurs in the?UterusCervixOviductOvary
4During inspiration, intrapulmonary pressure?Rises above atmosphericEquals atmosphericFalls below atmosphericStays the same
5Which cells of the stomach secrete intrinsic factor?Chief cellsG cellsParietal cellsMucous neck cells
6A patient's urine is dark brown and blood gas shows pH 7.28, HCO3- 13, PCO2 28. What is the primary disorder?Respiratory acidosisMetabolic alkalosisMetabolic acidosisRespiratory alkalosis
7The organ that BOTH produces gametes AND secretes sex hormones in males?ProstateEpididymisScrotumTestis
8Which hormone promotes renal water reabsorption by inserting aquaporins?AldosteroneANPADH (Vasopressin)Cortisol
9A patient gets a knife injury to the left eye and loses the entire left visual field in both eyes. Where is the lesion?Left optic nerve (before chiasm)Optic chiasmRight optic radiationLeft optic tract
10Which type of alveolar cell secretes surfactant?Type I pneumocyteAlveolar macrophageType II pneumocyteGoblet cell
11Loss of balance after a boxing punch to the ear involves which structure?CochleaEustachian tubeSemicircular canalsTympanic membrane
12A patient taking opioids develops constipation. Which nervous system is suppressed in the gut?SympatheticSomaticEnteric/ParasympatheticCentral
13PTH is released when serum calcium is?HighNormalLowUndetectable
14The trachea is lined by?Simple squamous epitheliumStratified keratinised epitheliumPseudostratified ciliated columnar epitheliumTransitional epithelium
15ANP promotes?Na+ retentionK+ retentionNa+ excretion (natriuresis)H+ excretion
16Gigantism vs Acromegaly: Gigantism occurs?After growth plates closeBefore growth plates closeIn elderly adultsDue to TSH excess
17Which vessel carries deoxygenated blood TO the lungs?Pulmonary veinAortaPulmonary arteryCoronary artery
18The primary site of water reabsorption in the kidney (bulk)?Loop of HenleDistal tubuleCollecting ductProximal convoluted tubule
19Taste is carried by which cranial nerves?I, II, IIIIII, V, VIIVII, IX, XII, VII, IX
20A patient with Cushing's syndrome will have?Low glucose, thin skin, muscle gainHigh glucose, central obesity, muscle wasting, striaeLow cortisol, bronze skin, weight lossLow BP, hyperkalaemia, hyponatraemia

✅ QUIZ 6 RAPID-FIRE ANSWERS

QAnswerWhy
1B - ReninLow BP → juxtaglomerular cells → renin → RAAS activation
2D - HypernatraemiaLow aldosterone → Na+ LOSS → hypoNATRAEMIA (not hyper). All others occur.
3C - OviductAmpulla of the fallopian tube
4C - Falls below atmosphericLower pressure draws air in
5C - Parietal cellsAlso secrete HCl. Chief cells secrete pepsinogen.
6C - Metabolic acidosisLow HCO3-, low pH = metabolic acidosis. Low PCO2 = respiratory compensation (hyperventilation).
7D - TestisSeminiferous tubules (sperm) + Leydig cells (testosterone)
8C - ADH (Vasopressin)Inserts aquaporin-2 channels in collecting duct
9A - Left optic nerve (before chiasm)Pre-chiasmal lesion = total loss of ipsilateral eye's field only
10C - Type II pneumocyteType I = gas exchange; Type II = surfactant
11C - Semicircular canalsDetect rotational head movement; trauma disrupts fluid/hair cells
12C - Enteric/ParasympatheticOpioids bind enteric mu-receptors → ↓ACh → ↓peristalsis
13C - LowLow Ca2+ → parathyroid secretes PTH → raises Ca2+
14C - Pseudostratified ciliated columnar epitheliumRespiratory epithelium with goblet cells
15C - Na+ excretion (natriuresis)ANP opposes aldosterone; reduces blood volume and BP
16B - Before growth plates closeChildren; after closure = acromegaly
17C - Pulmonary arteryRight ventricle → pulmonary artery → lungs (deoxygenated)
18D - Proximal convoluted tubule~65-70% of filtered Na+ and water reabsorbed here (isotonically)
19C - VII, IX, XVII = anterior 2/3 tongue; IX = posterior 1/3; X = epiglottis
20BCortisol excess → hyperglycaemia, central obesity, protein catabolism, muscle wasting, purple striae

SCORING GUIDE

ScoreRating
90-100%Excellent - ready for exams
75-89%Good - review weak areas
60-74%Adequate - revise highlighted chapters
Below 60%Needs work - re-read study guide chapters
Tip: For any question you got wrong, go back to the matching chapter in your study guide PDF and re-read the "EXAM MEMORABLES" box for that topic.
This is a shared conversation. Sign in to Orris to start your own chat.