can you answer the sq question for university exams
do one thing give every answer except 11,12,13,17,18,26,28
| Q# | Topic | Type |
|---|---|---|
| 9 | NREM Sleep | SQ |
| 14/24 | Babinski's Sign / Positive Babinski | SQ/PB |
| 15 | Pyramidal & Extrapyramidal Tracts | LQ |
| 16 | Synaptic Transmission | SQ |
| 19 | Pain Pathway + Referred Pain | LQ |
| 20 | Saltatory Conduction | SQ |
| 21 | Synaptic Delay | SQ |
| 22 | Cerebellum - Structure, Functions, Lesions | LQ |
| 23 | Motor Speech Center (Broca's Area) | SQ |
| 25 | Renshaw Cell Inhibition | SQ |
| 27 | Synaptic Plasticity (LTP/LTD) | SQ |
| 29 | Basal Ganglia | SQ |
| 30 | Huntington's Disease | SQ |
| 31 | Physiological Significance of Emotion | SQ |
| 32 | Sympathetic Stimulation of CVS | SQ |
| 33 | Motor Aphasia (Broca's Aphasia) | SQ |
| 34 | Placebos as Pain Relievers | SQ |
| 35 | Hypothalamic Obesity | SN |
| 36 | Cerebral Edema During (Rapid) Ascent | SQ |
| 37 | Resting Tremors in Basal Ganglia Dysfunction | PB |
do one thing give their answer as refrence from sembulingum only and convert that into a pdf
mkdir -p /tmp/workspace/sembulingam-sq
~/sembulingam-sq/generate_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm
from reportlab.lib import colors
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer,
Table, TableStyle, HRFlowable, PageBreak)
from reportlab.lib.enums import TA_LEFT, TA_CENTER, TA_JUSTIFY
doc = SimpleDocTemplate(
"/tmp/workspace/sembulingam-sq/Sembulingam_SQ_Answers.pdf",
pagesize=A4,
rightMargin=2*cm, leftMargin=2*cm,
topMargin=2.5*cm, bottomMargin=2.5*cm
)
styles = getSampleStyleSheet()
# Custom styles (Sembulingam look: clean, academic, numbered)
title_style = ParagraphStyle('Title', parent=styles['Title'],
fontSize=16, textColor=colors.HexColor('#1a1a6e'),
spaceAfter=4, spaceBefore=0, alignment=TA_CENTER)
subtitle_style = ParagraphStyle('Subtitle', parent=styles['Normal'],
fontSize=10, textColor=colors.HexColor('#444444'),
spaceAfter=14, alignment=TA_CENTER)
q_style = ParagraphStyle('QHead', parent=styles['Heading1'],
fontSize=13, textColor=colors.HexColor('#1a1a6e'),
spaceBefore=16, spaceAfter=4,
borderPad=4, leading=16)
section_style = ParagraphStyle('Section', parent=styles['Heading2'],
fontSize=11, textColor=colors.HexColor('#8B0000'),
spaceBefore=8, spaceAfter=3)
body_style = ParagraphStyle('Body', parent=styles['Normal'],
fontSize=10, leading=15, spaceAfter=4,
alignment=TA_JUSTIFY)
bullet_style = ParagraphStyle('Bullet', parent=styles['Normal'],
fontSize=10, leading=14, spaceAfter=3,
leftIndent=16, bulletIndent=4)
bold_style = ParagraphStyle('Bold', parent=styles['Normal'],
fontSize=10, leading=14, spaceAfter=3)
note_style = ParagraphStyle('Note', parent=styles['Normal'],
fontSize=9, leading=13, spaceAfter=4,
textColor=colors.HexColor('#555555'),
leftIndent=10, borderPad=3)
def B(text): return f"<b>{text}</b>"
def I(text): return f"<i>{text}</i>"
def bi(text): return f"<b><i>{text}</i></b>"
def q_heading(num, title, type_label="SQ"):
color = {"SQ": "#1a1a6e", "LQ": "#006400", "SN": "#8B0000", "PB": "#5a005a"}.get(type_label, "#1a1a6e")
return Paragraph(
f'<font color="{color}"><b>Q{num}. {title}</b></font> '
f'<font size="9" color="#888888">[{type_label}]</font>', q_style)
def hr():
return HRFlowable(width="100%", thickness=0.5, color=colors.HexColor('#cccccc'), spaceAfter=4, spaceBefore=4)
def section(text):
return Paragraph(text, section_style)
def body(text):
return Paragraph(text, body_style)
def bullet(text):
return Paragraph(f"• {text}", bullet_style)
def note(text):
return Paragraph(f"{I(text)}", note_style)
def spacer(h=6):
return Spacer(1, h)
def make_table(headers, rows, col_widths=None):
data = [[Paragraph(B(h), bold_style) for h in headers]]
for row in rows:
data.append([Paragraph(str(c), body_style) for c in row])
t = Table(data, colWidths=col_widths)
t.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,0), colors.HexColor('#dce6f1')),
('TEXTCOLOR', (0,0), (-1,0), colors.HexColor('#1a1a6e')),
('GRID', (0,0), (-1,-1), 0.5, colors.HexColor('#aaaaaa')),
('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, colors.HexColor('#f5f5f5')]),
('FONTSIZE', (0,0), (-1,-1), 9),
('PADDING', (0,0), (-1,-1), 5),
('VALIGN', (0,0), (-1,-1), 'TOP'),
]))
return t
# ─────────────────────────────────────────────
story = []
# COVER
story.append(spacer(30))
story.append(Paragraph("Essentials of Medical Physiology", title_style))
story.append(Paragraph(B("Based on Sembulingam & Sembulingam"), subtitle_style))
story.append(Paragraph("University Exam – Short & Long Question Answers", subtitle_style))
story.append(Paragraph("(Questions 9, 14–16, 19–25, 27, 29–37 | Excluding Q11,12,13,17,18,26,28)", note_style))
story.append(spacer(20))
story.append(hr())
story.append(spacer(40))
# ══════════════════════════════════════════════════════
# Q9 – NREM SLEEP
# ══════════════════════════════════════════════════════
story.append(q_heading(9, "NREM Sleep", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Non-Rapid Eye Movement (NREM) sleep is the stage of sleep in which "
"there are <b>no rapid eye movements</b>, the brain activity is slow and synchronized, "
"and the body undergoes physical restoration. It constitutes about <b>75–80%</b> of total sleep time."))
story.append(section("Stages of NREM Sleep"))
story.append(make_table(
["Stage", "EEG Pattern", "Characteristics"],
[
["Stage 1 (N1)", "Theta waves (4–8 Hz)", "Light sleep; easily aroused; hypnic jerks may occur; alpha waves disappear"],
["Stage 2 (N2)", "Sleep spindles (12–14 Hz) + K-complexes", "True sleep; arousal threshold increases; eye movements absent"],
["Stage 3 (N3)", "Delta waves (<2 Hz, >75 µV) – Slow Wave Sleep", "Deepest, most restorative sleep; difficult to arouse; growth hormone peaks"],
],
col_widths=[3*cm, 5.5*cm, 8*cm]
))
story.append(section("Physiological Changes During NREM Sleep"))
for pt in [
"<b>Heart rate and blood pressure</b> decrease (parasympathetic dominance)",
"<b>Respiratory rate</b> slows and becomes regular",
"<b>Body temperature</b> falls slightly",
"<b>Growth hormone</b> secretion is maximal during Stage 3 (slow-wave sleep)",
"<b>Muscle tone</b> is reduced but maintained (unlike REM where atonia occurs)",
"Metabolic rate decreases by ~10–15%",
"Dreams, if present, are thought-like and non-vivid",
]:
story.append(bullet(pt))
story.append(section("Functions of NREM Sleep"))
for pt in [
"Physical and cellular restoration – protein synthesis, tissue repair",
"Consolidation of <b>declarative (explicit) memory</b>",
"Release of anabolic hormones – GH, prolactin",
"Immune system enhancement",
"Replenishment of neurotransmitter stores",
]:
story.append(bullet(pt))
story.append(note("Note (Sembulingam): One complete sleep cycle = NREM + REM ≈ 90 min. "
"NREM predominates in the first half of night; REM in the second half."))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q14 & Q24 – BABINSKI'S SIGN
# ══════════════════════════════════════════════════════
story.append(q_heading("14 / 24", "Babinski's Sign / Positive Babinski Sign", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Babinski's sign is a <b>pathological reflex</b> (extensor plantar response) "
"characterized by <b>dorsiflexion (extension) of the great toe</b> and "
"<b>fanning (abduction) of the remaining toes</b>, elicited by stroking the lateral "
"aspect of the sole of the foot."))
story.append(section("Method of Elicitation"))
for pt in [
"Patient lies supine with limbs relaxed",
"A blunt object (key, thumbnail) is used to stroke the <b>lateral plantar surface</b> from heel toward the ball of the foot",
"<b>Normal (negative) response:</b> Plantar flexion of all toes",
"<b>Abnormal (positive) response:</b> Extension of great toe + fanning of lateral toes",
]:
story.append(bullet(pt))
story.append(section("Physiological Basis"))
story.append(body("The plantar reflex is normally a <b>flexor response</b> suppressed by the "
"intact <b>corticospinal (pyramidal) tract</b>. When the upper motor neuron (UMN) is "
"damaged, descending inhibition is lost, releasing the primitive spinal <b>flexion "
"withdrawal reflex</b>, which manifests as toe extension."))
story.append(section("Significance"))
story.append(make_table(
["Condition", "Babinski Sign"],
[
["Normal adult", "Absent (negative) – plantar flexion"],
["Infant <18 months", "Present (physiological) – immature corticospinal tract"],
["UMN lesion (stroke, tumour, MS, SCI)", "Present (pathological) – always abnormal in adults"],
["Deep sleep / anaesthesia / post-ictal state", "May be transiently positive"],
],
col_widths=[8*cm, 8.5*cm]
))
story.append(section("Surrogate Signs (same significance)"))
for pt in [
"<b>Chaddock's sign</b> – stroke lateral dorsum of foot",
"<b>Gordon's sign</b> – squeeze calf muscles",
"<b>Oppenheim's sign</b> – firm pressure down tibial shaft",
]:
story.append(bullet(pt))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q15 – PYRAMIDAL AND EXTRAPYRAMIDAL TRACTS
# ══════════════════════════════════════════════════════
story.append(q_heading(15, "Pyramidal and Extrapyramidal Tracts", "LQ"))
story.append(hr())
story.append(section("PYRAMIDAL TRACTS (Corticospinal Tracts)"))
story.append(body("<b>Origin:</b> Primary motor cortex (Area 4), Premotor cortex (Area 6), "
"Somatosensory cortex (Areas 3, 1, 2)"))
story.append(section("Course of Corticospinal Tract"))
steps = [
"Axons pass through <b>corona radiata</b>",
"→ <b>Posterior limb of internal capsule</b>",
"→ <b>Cerebral peduncles</b> (middle 3/5)",
"→ <b>Pons</b> (fibres dispersed by pontine nuclei)",
"→ <b>Medullary pyramids</b> (hence 'pyramidal tract')",
"→ <b>Pyramidal decussation</b>: 85–90% cross to opposite side → <b>Lateral corticospinal tract</b>",
"→ 10–15% remain ipsilateral → <b>Anterior corticospinal tract</b>",
"→ Synapse on anterior horn cells (α-motor neurons) → Skeletal muscle",
]
for i, s in enumerate(steps, 1):
story.append(Paragraph(f" {i}. {s}", bullet_style))
story.append(section("Functions of Pyramidal Tract"))
for pt in [
"Executes fine, skilled, <b>voluntary movements</b> – especially distal limb and finger movements",
"Carries impulses for speed and precision",
"Controls muscles of speech and deglutition",
]:
story.append(bullet(pt))
story.append(section("UMN Lesion Signs (Pyramidal Lesion)"))
story.append(make_table(
["Sign", "Description"],
[
["Spastic paralysis", "Increased muscle tone (clasp-knife rigidity)"],
["Hyperreflexia", "Exaggerated deep tendon reflexes"],
["Positive Babinski sign", "Extensor plantar response"],
["Weakness", "Especially distal muscles and fine movements"],
["Clonus", "Rhythmic involuntary contractions (5–7 Hz)"],
["No muscle wasting", "Lower motor neurons intact"],
],
col_widths=[6*cm, 10.5*cm]
))
story.append(section("EXTRAPYRAMIDAL TRACTS"))
story.append(body("All descending motor tracts <b>other than corticospinal tracts</b>. "
"They modulate posture, tone, and automatic movements."))
story.append(make_table(
["Tract", "Origin", "Function"],
[
["Rubrospinal", "Red nucleus (midbrain)", "Controls limb movements and tone"],
["Reticulospinal", "Reticular formation (pons + medulla)", "Regulates muscle tone, posture, and autonomic functions"],
["Vestibulospinal", "Vestibular nuclei (lateral)", "Maintains balance; facilitates extensor tone"],
["Tectospinal", "Superior colliculus (midbrain)", "Reflex head & neck turning to visual/auditory stimuli"],
],
col_widths=[4*cm, 5.5*cm, 7*cm]
))
story.append(note("Note: The extrapyramidal system also includes basal ganglia circuits "
"which modulate cortical motor output indirectly through the thalamus."))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q16 – SYNAPTIC TRANSMISSION
# ══════════════════════════════════════════════════════
story.append(q_heading(16, "Synaptic Transmission", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Synaptic transmission is the process by which a <b>nerve impulse is "
"conveyed from one neuron to another</b> (or to an effector cell) across a synapse."))
story.append(section("Types of Synapses"))
story.append(make_table(
["Type", "Mechanism", "Direction", "Delay"],
[
["Electrical synapse", "Gap junctions; ionic current flows directly", "Bidirectional", "None"],
["Chemical synapse", "Neurotransmitter release", "Unidirectional (pre → post)", "~0.5 ms"],
],
col_widths=[4.5*cm, 6.5*cm, 4*cm, 2.5*cm]
))
story.append(section("Steps in Chemical Synaptic Transmission"))
steps2 = [
"<b>Action potential</b> arrives at the presynaptic axon terminal (bouton)",
"Depolarisation opens <b>voltage-gated Ca²⁺ channels</b> → Ca²⁺ enters terminal",
"Ca²⁺ triggers <b>exocytosis</b> of synaptic vesicles → neurotransmitter released into cleft",
"Neurotransmitter <b>diffuses</b> across synaptic cleft (~20–40 nm)",
"Binds to <b>specific receptors</b> on postsynaptic membrane",
"Opens <b>ion channels</b> → generates EPSP (excitatory) or IPSP (inhibitory)",
"If summated EPSPs reach <b>threshold</b> → action potential in postsynaptic neuron",
]
for i, s in enumerate(steps2, 1):
story.append(Paragraph(f" {i}. {s}", bullet_style))
story.append(section("Fate of Neurotransmitter"))
for pt in [
"<b>Reuptake</b> into presynaptic terminal (e.g., norepinephrine, dopamine, serotonin) – most common",
"<b>Enzymatic degradation</b> (e.g., ACh broken down by acetylcholinesterase)",
"<b>Diffusion</b> away from cleft",
]:
story.append(bullet(pt))
story.append(section("Properties of Synapses (Sembulingam)"))
story.append(make_table(
["Property", "Description"],
[
["Unidirectionality", "Impulse travels only from pre→post synaptic neuron"],
["Synaptic delay", "Minimum ~0.5 ms due to chemical transmission steps"],
["Fatigue", "With repetitive stimulation, neurotransmitter stores deplete"],
["Temporal summation", "Repeated stimuli from one neuron summate"],
["Spatial summation", "Stimuli from multiple neurons summate"],
["Post-tetanic potentiation", "Enhanced response after high-frequency stimulation"],
["Susceptibility to hypoxia", "Synapses fail before nerve fibres in O₂ deprivation"],
["Sensitivity to drugs", "Anaesthetics, toxins, etc. selectively affect synapses"],
],
col_widths=[5.5*cm, 11*cm]
))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q19 – PAIN PATHWAY + REFERRED PAIN
# ══════════════════════════════════════════════════════
story.append(q_heading(19, "Pain Pathway and Referred Pain", "LQ"))
story.append(hr())
story.append(section("Pain Receptors"))
story.append(body("<b>Free nerve endings (nociceptors)</b> – respond to mechanical, thermal, "
"and chemical (e.g., bradykinin, substance P, K⁺) stimuli."))
story.append(section("Afferent Fibres"))
story.append(make_table(
["Fibre", "Type", "Speed", "Pain Quality"],
[
["Aδ fibres", "Myelinated, small diameter", "5–30 m/sec", "Sharp, pricking, well-localised – 'first pain'"],
["C fibres", "Unmyelinated", "0.5–2 m/sec", "Dull, burning, poorly localised – 'second pain'"],
],
col_widths=[2.5*cm, 4.5*cm, 3*cm, 7*cm]
))
story.append(section("Pain Pathway (Spinothalamic Tract)"))
for pt in [
"<b>1st order neuron:</b> Nociceptor → Dorsal root ganglion → enters spinal cord via "
"<b>Lissauer's tract</b> → synapses in <b>dorsal horn</b> (Rexed laminae I, II, V)",
"<b>2nd order neuron:</b> Crosses midline in <b>anterior white commissure</b> → "
"ascends as <b>lateral spinothalamic tract</b> → <b>VPL nucleus of thalamus</b>",
"<b>3rd order neuron:</b> Thalamus → <b>Primary somatosensory cortex</b> (postcentral "
"gyrus, Areas 3, 1, 2) → conscious perception and localisation",
]:
story.append(bullet(pt))
story.append(body("Additional projections: Limbic system (emotional component), "
"Reticular formation (arousal), Hypothalamus (autonomic responses)"))
story.append(section("Referred Pain"))
story.append(body("<b>Definition:</b> Pain perceived at a site <i>different</i> from the "
"actual source of nociceptive stimulation. Visceral pain is referred to a somatic "
"area sharing the same spinal segment."))
story.append(section("Mechanism – Convergence-Projection Theory (Sembulingam)"))
story.append(body("Visceral and somatic afferent fibres <b>converge on the same "
"second-order neurons</b> in the spinal cord. The brain, accustomed to pain from "
"the body surface, misinterprets the source as somatic."))
story.append(make_table(
["Source Organ", "Site of Referred Pain", "Spinal Segment"],
[
["Heart (MI)", "Left arm, jaw, left shoulder", "T1–T5"],
["Diaphragm", "Tip of shoulder", "C4"],
["Appendix (early)", "Umbilical region", "T10"],
["Kidney / Ureter", "Groin, inner thigh", "T10–L1"],
["Gallbladder", "Right shoulder tip", "C4, T7–T9"],
["Stomach", "Epigastric region", "T6–T9"],
],
col_widths=[5*cm, 6*cm, 5.5*cm]
))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q20 – SALTATORY CONDUCTION
# ══════════════════════════════════════════════════════
story.append(q_heading(20, "Saltatory Conduction", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Saltatory conduction is the mode of propagation of an action potential "
"in <b>myelinated nerve fibres</b>, in which the impulse jumps from one "
"<b>node of Ranvier</b> to the next, rather than travelling continuously along "
"the entire membrane. (Latin: <i>saltare</i> = to jump/leap)"))
story.append(section("Structural Basis"))
for pt in [
"<b>Myelin sheath</b> (from Schwann cells in PNS; oligodendrocytes in CNS) acts as an "
"electrical insulator between nodes",
"<b>Nodes of Ranvier</b> are unmyelinated gaps (~1–2 µm) occurring every 1–2 mm along the axon",
"<b>Voltage-gated Na⁺ channels</b> are concentrated at nodes (~12,000/µm²) and virtually "
"absent under myelin",
]:
story.append(bullet(pt))
story.append(section("Mechanism"))
steps3 = [
"An action potential depolarises <b>Node 1</b>",
"Current flows through axoplasm to the next node (<b>Node 2</b>), bypassing the insulated internodal segment",
"Node 2 is depolarised above threshold → new action potential generated at Node 2",
"Process repeats down the axon – impulse 'leaps' from node to node",
]
for i, s in enumerate(steps3, 1):
story.append(Paragraph(f" {i}. {s}", bullet_style))
story.append(section("Advantages of Saltatory Conduction (Sembulingam)"))
story.append(make_table(
["Advantage", "Explanation"],
[
["Increased velocity", "Conduction speed is 5–50× faster (up to 100 m/sec in large myelinated fibres vs 0.25 m/sec in unmyelinated fibres)"],
["Energy conservation", "Only nodes depolarise → ~100× less Na⁺/K⁺ exchange → far less ATP needed for Na⁺/K⁺-ATPase"],
["Efficient use of axon diameter", "High conduction speed without requiring very large diameter fibres"],
],
col_widths=[4.5*cm, 12*cm]
))
story.append(note("Clinical Correlation: In demyelinating diseases (e.g., Multiple Sclerosis), "
"loss of myelin disrupts saltatory conduction → slowed/blocked nerve impulses → "
"weakness, sensory loss, visual disturbances."))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q21 – SYNAPTIC DELAY
# ══════════════════════════════════════════════════════
story.append(q_heading(21, "Synaptic Delay", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Synaptic delay is the <b>minimum time elapsed</b> between the arrival of "
"an action potential at the presynaptic terminal and the initiation of a response "
"(EPSP or action potential) in the postsynaptic neuron."))
story.append(body("<b>Minimum synaptic delay = 0.5 millisecond</b> (at a monosynaptic reflex)"))
story.append(section("Causes / Steps Contributing to Delay"))
steps4 = [
"<b>Discharge of transmitter:</b> Ca²⁺-triggered exocytosis of synaptic vesicles from presynaptic terminal",
"<b>Diffusion across cleft:</b> Neurotransmitter diffuses across the synaptic cleft (~20–40 nm)",
"<b>Receptor binding:</b> Transmitter binds to postsynaptic receptor proteins",
"<b>Ionic permeability change:</b> Ion channels open, membrane permeability alters",
"<b>EPSP generation:</b> Na⁺ influx raises EPSP to threshold level for action potential generation",
]
for i, s in enumerate(steps4, 1):
story.append(Paragraph(f" {i}. {s}", bullet_style))
story.append(section("Significance of Synaptic Delay (Sembulingam)"))
for pt in [
"Limits the maximum speed of neuronal circuits",
"By measuring total conduction time and subtracting nerve conduction time, the "
"<b>number of synapses in a reflex arc</b> can be estimated",
"Chemical synapses are inherently slower than electrical synapses (virtually no delay)",
"Minimum delay in spinal reflexes (e.g., knee jerk ≈ monosynaptic) is ~0.5 ms; "
"polysynaptic reflexes (e.g., withdrawal) are slower accordingly",
]:
story.append(bullet(pt))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q22 – CEREBELLUM
# ══════════════════════════════════════════════════════
story.append(q_heading(22, "Structure, Functions of Cerebellum and Cerebellar Lesions", "LQ"))
story.append(hr())
story.append(section("Structure of Cerebellum"))
story.append(body("<b>Location:</b> Posterior cranial fossa, behind the brainstem, "
"separated from cerebrum by tentorium cerebelli."))
story.append(section("Lobes (Phylogenetic Division)"))
story.append(make_table(
["Division", "Parts", "Connections", "Functions"],
[
["Archicerebellum\n(Vestibulocerebellum)", "Flocculonodular lobe", "Vestibular nuclei", "Balance, equilibrium, eye movements"],
["Paleocerebellum\n(Spinocerebellum)", "Vermis + intermediate hemispheres", "Spinal cord (spinocerebellar tracts)", "Muscle tone, posture, limb movement"],
["Neocerebellum\n(Cerebrocerebellum)", "Lateral hemispheres", "Cerebral cortex (via pons)", "Planning, coordination of skilled voluntary movements"],
],
col_widths=[4*cm, 4*cm, 4*cm, 5*cm]
))
story.append(section("Cortical Layers (deep to surface)"))
for pt in [
"<b>Granular layer</b> (innermost): Granule cells, Golgi cells",
"<b>Purkinje cell layer</b>: Single layer of large Purkinje cells – the <b>only output</b> of cerebellar cortex (inhibitory, GABAergic)",
"<b>Molecular layer</b> (outermost): Basket cells, stellate cells, parallel fibres (axons of granule cells)",
]:
story.append(bullet(pt))
story.append(section("Deep Cerebellar Nuclei (Output)"))
story.append(body("Dentate (largest) → Emboliform → Globose → Fastigial (medial)"))
story.append(body("Mnemonic: <b>Don't Eat Greasy Food</b>"))
story.append(section("Functions of Cerebellum"))
for pt in [
"<b>Coordination</b> of voluntary movements – smoothness, accuracy, and direction",
"<b>Maintenance of posture and equilibrium</b>",
"<b>Regulation of muscle tone</b>",
"<b>Motor learning</b> – especially repetitive fine motor skills (cerebellar LTD)",
"<b>Error correction</b> – compares intended vs actual movement using feedback from proprioceptors",
"Coordination of speech muscles and eye movements",
]:
story.append(bullet(pt))
story.append(section("Cerebellar Lesion Features – DANISH Mnemonic"))
story.append(make_table(
["Sign", "Description"],
[
["Dysdiadochokinesia (D)", "Inability to perform rapid alternating movements (e.g., pronation-supination)"],
["Ataxia (A)", "Wide-based, staggering, reeling gait (cerebellar/drunken gait)"],
["Nystagmus (N)", "Involuntary rhythmic oscillation of eyes; horizontal, towards side of lesion"],
["Intention tremor (I)", "Tremor that appears/worsens as limb approaches target; absent at rest"],
["Scanning dysarthria (S)", "Staccato, explosive, slurred speech"],
["Hypotonia (H)", "Decreased muscle tone; pendular reflexes"],
["Dysmetria", "Inability to judge range of movement; past-pointing on finger-nose test"],
["Rebound phenomenon", "Inability to check sudden movement (Holmes rebound test positive)"],
],
col_widths=[5*cm, 11.5*cm]
))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q23 – MOTOR SPEECH CENTER
# ══════════════════════════════════════════════════════
story.append(q_heading(23, "Motor Speech Center", "SQ"))
story.append(hr())
story.append(section("Definition and Location"))
story.append(body("The motor speech centre (Broca's area) is the <b>cortical area responsible "
"for the motor programming and execution of speech</b>. It is located in the "
"<b>posterior part of the inferior frontal gyrus</b> – pars triangularis and "
"pars opercularis – of the <b>dominant hemisphere</b> (left hemisphere in ~95% of "
"right-handed individuals). Corresponds to <b>Brodmann's Areas 44 and 45</b>."))
story.append(section("Functions"))
for pt in [
"Controls <b>motor programs for speech articulation</b> – coordinates muscles of lips, "
"tongue, palate, larynx, and respiratory system",
"Responsible for <b>sequential organization of speech sounds</b>",
"Plays a role in grammar and verbal working memory",
"Connected to <b>Wernicke's area</b> (posterior superior temporal gyrus) via the "
"<b>arcuate fasciculus</b> for language comprehension-production loop",
]:
story.append(bullet(pt))
story.append(section("Effect of Damage – Broca's (Motor/Expressive) Aphasia"))
story.append(make_table(
["Feature", "Finding"],
[
["Fluency", "Non-fluent, slow, laboured, telegraphic speech"],
["Comprehension", "Relatively preserved"],
["Repetition", "Impaired"],
["Naming", "Impaired (anomia)"],
["Writing", "Impaired (agraphia)"],
["Patient's awareness", "Patient is aware of deficit; frustrated"],
["Associated finding", "Right-sided hemiplegia (adjacent motor cortex involvement)"],
],
col_widths=[5*cm, 11.5*cm]
))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q25 – RENSHAW CELL INHIBITION
# ══════════════════════════════════════════════════════
story.append(q_heading(25, "Renshaw Cell Inhibition", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Renshaw cell inhibition is a <b>recurrent (negative feedback) inhibitory "
"circuit</b> in the spinal cord by which <b>alpha motor neurons inhibit themselves</b> "
"through an inhibitory interneuron called the Renshaw cell."))
story.append(section("Circuit"))
for pt in [
"An <b>alpha (α) motor neuron</b> fires → its axon travels to the muscle",
"A <b>recurrent collateral</b> of the motor axon synapses on a <b>Renshaw cell</b> "
"(small inhibitory interneuron in the ventral horn of spinal cord)",
"The Renshaw cell is activated → releases <b>glycine</b> (inhibitory neurotransmitter)",
"Glycine produces an <b>IPSP</b> on the same and neighbouring alpha motor neurons → "
"reduces their firing rate",
]:
story.append(bullet(pt))
story.append(body("<b>Neurotransmitter of Renshaw cell:</b> Glycine (inhibitory) – "
"also releases GABA at some synapses"))
story.append(section("Functions of Renshaw Cell Inhibition"))
for pt in [
"<b>Prevents excessive motor neuron firing</b> – acts as a 'governor' stabilizing firing rate",
"<b>Surround inhibition</b> – inhibits neighbouring motor neurons, sharpening and focusing motor commands",
"<b>Regulates muscle tone</b> and prevents uncontrolled spasms",
"Allows <b>smooth, graded voluntary movements</b>",
]:
story.append(bullet(pt))
story.append(section("Clinical Relevance"))
for pt in [
"<b>Strychnine:</b> Blocks glycine receptors → removes Renshaw inhibition → "
"sustained muscle spasms (opisthotonus)",
"<b>Tetanus toxin (tetanospasmin):</b> Blocks glycine and GABA release → "
"similar uncontrolled spasm (tetanic rigidity)",
]:
story.append(bullet(pt))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q27 – SYNAPTIC PLASTICITY
# ══════════════════════════════════════════════════════
story.append(q_heading(27, "Synaptic Plasticity", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Synaptic plasticity is the <b>ability of synapses to change their strength "
"(efficacy) in response to neural activity</b>. It is the fundamental cellular "
"mechanism underlying <b>learning and memory</b>."))
story.append(section("Types of Synaptic Plasticity"))
story.append(Paragraph("<b>A. Short-term Plasticity</b>", bold_style))
story.append(make_table(
["Type", "Mechanism", "Duration"],
[
["Short-term potentiation", "Residual Ca²⁺ in presynaptic terminal increases transmitter release with repeated stimuli", "Milliseconds to seconds"],
["Short-term depression", "Depletion of readily releasable vesicle pool with repeated stimulation", "Milliseconds to seconds"],
],
col_widths=[5*cm, 8.5*cm, 3*cm]
))
story.append(Paragraph("<b>B. Long-term Plasticity (most important for memory)</b>", bold_style))
story.append(spacer(4))
story.append(body("<b>1. Long-Term Potentiation (LTP):</b>"))
for pt in [
"Persistent <b>increase</b> in synaptic strength following high-frequency stimulation",
"Requires activation of <b>NMDA receptors</b> (act as 'coincidence detectors' – need "
"glutamate binding AND postsynaptic depolarisation simultaneously to open)",
"→ Ca²⁺ influx → activates CaMKII → more <b>AMPA receptors</b> inserted into postsynaptic membrane → stronger synapse",
"Most studied in <b>hippocampus</b>; basis of <b>declarative memory</b>",
]:
story.append(bullet(pt))
story.append(body("<b>2. Long-Term Depression (LTD):</b>"))
for pt in [
"Persistent <b>decrease</b> in synaptic strength",
"Prominent in <b>cerebellum</b> – basis of <b>motor learning</b> (climbing fibre + parallel fibre co-activation → Purkinje cell LTD)",
]:
story.append(bullet(pt))
story.append(section("Hebbian Plasticity"))
story.append(body('"<i>Neurons that fire together, wire together</i>" – synapses strengthen '
'when pre- and postsynaptic neurons are repeatedly active simultaneously.'))
story.append(section("Physiological Significance"))
for pt in [
"Basis of <b>learning, memory formation, and skill acquisition</b>",
"Underlies <b>critical periods</b> of brain development",
"Basis of <b>neurological rehabilitation</b> (neuroplasticity after injury)",
"Dysfunction linked to psychiatric conditions (depression, PTSD, addiction)",
]:
story.append(bullet(pt))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q29 – BASAL GANGLIA
# ══════════════════════════════════════════════════════
story.append(q_heading(29, "Basal Ganglia", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Basal ganglia are a group of <b>subcortical grey matter nuclei</b> "
"located at the base of the cerebral hemispheres, involved in motor control, "
"cognition, and behaviour."))
story.append(section("Components"))
story.append(make_table(
["Nucleus", "Group"],
[
["Caudate nucleus", "Striatum (neostriatum)"],
["Putamen", "Striatum (neostriatum)"],
["Globus pallidus (internal – GPi; external – GPe)", "Pallidum"],
["Subthalamic nucleus (STN)", "—"],
["Substantia nigra pars compacta (SNpc) + pars reticulata (SNpr)", "—"],
["Nucleus accumbens", "Ventral striatum (limbic loop)"],
],
col_widths=[9*cm, 7.5*cm]
))
story.append(note("Caudate + Putamen = Striatum. Striatum + Globus pallidus = Corpus striatum."))
story.append(section("Pathways"))
story.append(body("<b>Direct pathway</b> (facilitates movement):"))
story.append(body("Cortex → Striatum → GPi/SNpr <i>(inhibited)</i> → Thalamus <i>(disinhibited)</i> → Cortex → ↑ Movement"))
story.append(spacer(4))
story.append(body("<b>Indirect pathway</b> (suppresses movement):"))
story.append(body("Cortex → Striatum → GPe <i>(inhibited)</i> → STN <i>(disinhibited)</i> → GPi/SNpr <i>(activated)</i> → Thalamus <i>(inhibited)</i> → Cortex → ↓ Movement"))
story.append(spacer(4))
story.append(body("<b>Dopamine</b> from SNpc: Facilitates direct pathway (D1 receptors) and "
"inhibits indirect pathway (D2 receptors) → net effect: <b>promotes movement</b>"))
story.append(section("Functions"))
for pt in [
"Initiation and scaling of voluntary movements",
"Suppression of unwanted/competing movements",
"Motor learning and habit formation",
"Regulation of muscle tone",
"Cognitive and limbic functions (reward, motivation)",
]:
story.append(bullet(pt))
story.append(section("Disorders of Basal Ganglia"))
story.append(make_table(
["Disorder", "Lesion", "Movement Disorder"],
[
["Parkinson's disease", "SNpc dopamine depletion", "Resting tremor, rigidity, bradykinesia, postural instability"],
["Huntington's disease", "Striatum (caudate/putamen)", "Chorea, cognitive decline"],
["Hemiballismus", "Contralateral subthalamic nucleus", "Wild flinging movements of proximal limb"],
["Wilson's disease", "Basal ganglia (copper deposition)", "Tremor, rigidity, dysarthria"],
],
col_widths=[4.5*cm, 5.5*cm, 6.5*cm]
))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q30 – HUNTINGTON'S DISEASE
# ══════════════════════════════════════════════════════
story.append(q_heading(30, "Huntington's Disease", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Huntington's disease is an <b>autosomal dominant</b> progressive "
"neurodegenerative disorder characterised by a triad of "
"<b>chorea, cognitive decline, and psychiatric disturbance</b>."))
story.append(section("Genetics"))
for pt in [
"Caused by a mutation in the <b>HTT gene</b> on chromosome <b>4p16.3</b>",
"Abnormal expansion of <b>CAG trinucleotide repeats</b> (Normal: <26; Pathological: >36)",
"Encodes an abnormal protein called <b>mutant huntingtin</b> which is toxic to neurons",
"Shows <b>anticipation</b> – repeat length increases in successive generations → earlier onset",
"<b>Autosomal dominant</b> – 50% risk to offspring",
]:
story.append(bullet(pt))
story.append(section("Pathology"))
for pt in [
"Progressive degeneration of <b>striatum</b> – especially <b>caudate nucleus</b> and putamen",
"Loss of GABAergic and enkephalinergic neurons of the <b>indirect pathway</b>",
"→ Indirect pathway fails → thalamus disinhibited → <b>excessive cortical activation → chorea</b>",
"MRI: Caudate atrophy → loss of normal indentation of lateral ventricle → 'box-car ventricles'",
]:
story.append(bullet(pt))
story.append(section("Clinical Features"))
story.append(make_table(
["Feature", "Description"],
[
["Chorea", "Involuntary, rapid, irregular, non-patterned, 'dance-like' movements; proximal > distal"],
["Cognitive decline", "Progressive dementia; executive dysfunction; personality changes"],
["Psychiatric", "Depression (most common), anxiety, irritability, obsessive-compulsive behaviour, psychosis"],
["Dysarthria & dysphagia", "In later stages"],
["Motor impersistence", "Cannot sustain tongue protrusion or grip ('milk-maid grip')"],
["Age of onset", "Typically 30–50 years (juvenile form: <20 years, rigid 'Westphal variant')"],
],
col_widths=[4.5*cm, 12*cm]
))
story.append(section("Treatment"))
story.append(body("No disease-modifying therapy. Symptomatic:"))
for pt in [
"<b>Tetrabenazine / Deutetrabenazine:</b> Reduces chorea (VMAT2 inhibitor)",
"<b>Antidepressants</b> (SSRIs) for mood; antipsychotics for psychosis",
"Genetic counselling",
]:
story.append(bullet(pt))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q31 – PHYSIOLOGICAL SIGNIFICANCE OF EMOTION
# ══════════════════════════════════════════════════════
story.append(q_heading(31, "Physiological Significance of Emotion", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Emotion is a complex psychophysiological state involving <b>subjective "
"experience, physiological arousal, behavioural expression, and cognitive appraisal</b>. "
"The physiological responses to emotion prepare the organism for appropriate action."))
story.append(section("Neural Basis (Sembulingam)"))
for pt in [
"<b>Limbic system</b> (Papez circuit): Amygdala, hippocampus, cingulate gyrus, "
"hypothalamus, thalamus, fornix",
"<b>Amygdala:</b> Central to fear conditioning, threat detection, and emotional memory",
"<b>Hypothalamus:</b> Mediates autonomic and endocrine responses to emotion",
"<b>Prefrontal cortex:</b> Modulates and regulates emotional responses; decision-making",
]:
story.append(bullet(pt))
story.append(section("Physiological Significance"))
story.append(Paragraph("<b>1. Autonomic Responses (Sympathetic – Fight or Flight):</b>", bold_style))
for pt in [
"↑ Heart rate and blood pressure",
"Pupillary dilation",
"Bronchodilation",
"↑ Blood glucose (hepatic glycogenolysis)",
"↓ GI motility (blood diverted to muscles)",
"Sweating, piloerection",
]:
story.append(bullet(pt))
story.append(Paragraph("<b>2. Endocrine Responses:</b>", bold_style))
for pt in [
"HPA axis activation → cortisol release → energy mobilisation",
"Adrenal medulla → epinephrine/norepinephrine → amplifies sympathetic effects",
]:
story.append(bullet(pt))
story.append(Paragraph("<b>3. Motivational Role:</b>", bold_style))
story.append(bullet("Emotions drive survival behaviours (fear→flight, hunger→feeding, love→bonding)"))
story.append(bullet("Reward circuits (nucleus accumbens, dopamine) reinforced by positive emotions"))
story.append(Paragraph("<b>4. Memory Consolidation:</b>", bold_style))
story.append(bullet("Amygdala enhances memory consolidation for emotionally charged events "
"(basis of PTSD)"))
story.append(Paragraph("<b>5. Pain Modulation:</b>", bold_style))
story.append(bullet("Emotional state influences pain perception through limbic modulation "
"of descending pain pathways"))
story.append(Paragraph("<b>6. Social Communication:</b>", bold_style))
story.append(bullet("Facial expressions and body language convey emotion; "
"basis of empathy and social bonding"))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q32 – SYMPATHETIC STIMULATION OF CVS
# ══════════════════════════════════════════════════════
story.append(q_heading(32, "Effect of Sympathetic Stimulation on CVS", "SQ"))
story.append(hr())
story.append(section("Overview"))
story.append(body("The cardiovascular system is richly innervated by the <b>sympathetic "
"nervous system</b>. The neurotransmitter is <b>norepinephrine</b>, acting on "
"adrenergic receptors (α₁, β₁, β₂). Epinephrine from adrenal medulla amplifies "
"these effects via blood."))
story.append(section("Effects on the Heart"))
story.append(make_table(
["Effect", "Receptor", "Result"],
[
["Positive chronotropy", "β₁ (SA node)", "↑ Heart rate"],
["Positive inotropy", "β₁ (myocardium)", "↑ Force of contraction → ↑ Stroke volume"],
["Positive dromotropy", "β₁ (AV node)", "↑ Conduction velocity through AV node"],
["Positive lusitropy", "β₁", "↑ Rate of myocardial relaxation (↑ diastolic filling)"],
["↑ Cardiac output", "Overall", "CO = HR × SV – both increase"],
],
col_widths=[5*cm, 3.5*cm, 8*cm]
))
story.append(section("Effects on Blood Vessels"))
story.append(make_table(
["Vessel Bed", "Receptor", "Effect"],
[
["Most arterioles (skin, gut, kidney)", "α₁", "Vasoconstriction → ↑ peripheral resistance → ↑ BP"],
["Skeletal muscle arterioles", "β₂", "Vasodilation → ↑ blood flow during exercise"],
["Coronary arteries", "β₂ (predominant)", "Vasodilation → ↑ coronary blood flow"],
["Veins", "α₁", "Venoconstriction → ↑ venous return → ↑ preload → ↑ SV"],
],
col_widths=[5.5*cm, 3*cm, 8*cm]
))
story.append(section("Net Cardiovascular Effect of Sympathetic Stimulation"))
for pt in [
"↑ Heart rate and force of contraction → <b>↑ Cardiac output</b>",
"Generalised vasoconstriction → <b>↑ Total peripheral resistance</b>",
"<b>↑ Systolic and diastolic blood pressure</b>",
"Blood redistributed from skin and gut to <b>heart, brain, and skeletal muscles</b>",
"Prepares body for <b>'fight or flight'</b> response",
]:
story.append(bullet(pt))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q33 – MOTOR APHASIA
# ══════════════════════════════════════════════════════
story.append(q_heading(33, "Motor Aphasia", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Motor aphasia (Broca's aphasia / Expressive aphasia) is a language "
"disorder characterised by <b>non-fluent, effortful speech</b> with "
"<b>relatively preserved comprehension</b>, caused by a lesion in <b>Broca's area</b> "
"of the dominant hemisphere."))
story.append(section("Site of Lesion"))
story.append(body("Posterior inferior frontal gyrus (pars triangularis + pars opercularis), "
"<b>Brodmann's Areas 44 and 45</b>, dominant (usually left) hemisphere. "
"Often extends to adjacent premotor cortex."))
story.append(section("Clinical Features"))
story.append(make_table(
["Feature", "Finding in Motor Aphasia"],
[
["Fluency", "Non-fluent; slow, laboured, halting, telegraphic speech"],
["Comprehension", "Relatively preserved"],
["Repetition", "Impaired"],
["Naming", "Impaired (anomia)"],
["Writing", "Impaired (agraphia)"],
["Grammar", "Agrammatism – missing grammatical words/morphemes"],
["Patient's insight", "Aware of deficit; shows frustration"],
["Hemiplegia", "Right-sided weakness (adjacent motor strip involvement)"],
],
col_widths=[4.5*cm, 12*cm]
))
story.append(section("Comparison: Motor vs Sensory Aphasia"))
story.append(make_table(
["Feature", "Motor (Broca's)", "Sensory (Wernicke's)"],
[
["Fluency", "Non-fluent", "Fluent"],
["Comprehension", "Relatively intact", "Severely impaired"],
["Speech quality", "Effortful, telegraphic", "Fluent but meaningless (paraphasias)"],
["Lesion", "Inferior frontal gyrus (Area 44/45)", "Posterior superior temporal gyrus (Area 22)"],
["Awareness of deficit", "Yes (frustrated)", "No (unaware)"],
],
col_widths=[4*cm, 5.5*cm, 7*cm]
))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q34 – PLACEBOS AS PAIN RELIEVERS
# ══════════════════════════════════════════════════════
story.append(q_heading(34, "Placebos as Pain Relievers", "SQ"))
story.append(hr())
story.append(section("Definition"))
story.append(body("A placebo is an <b>inert substance or sham procedure</b> with no known "
"pharmacological activity, which nevertheless produces a <b>real, measurable "
"physiological and psychological response</b>, including pain relief."))
story.append(section("Mechanisms of Placebo Analgesia"))
story.append(Paragraph("<b>1. Endogenous Opioid System Activation (most established):</b>", bold_style))
for pt in [
"Placebo administration activates release of <b>endorphins, enkephalins, and dynorphins</b>",
"Placebo analgesia is <b>reversed by naloxone</b> (opioid antagonist) – proving opioid involvement",
"Opioids act in PAG, raphe nuclei, and spinal cord dorsal horn to inhibit pain",
]:
story.append(bullet(pt))
story.append(Paragraph("<b>2. Descending Pain Inhibitory Pathway:</b>", bold_style))
for pt in [
"<b>PAG (periaqueductal gray)</b> → <b>Raphe nuclei</b> (serotonin) → Dorsal horn",
"Inhibits transmission of pain signals at spinal level (gate control)",
]:
story.append(bullet(pt))
story.append(Paragraph("<b>3. Expectation and Conditioning:</b>", bold_style))
for pt in [
"<b>Expectation</b> of pain relief reduces anxiety → modulates limbic activity → less pain",
"<b>Classical conditioning</b> – previous experience with effective analgesics "
"conditions a physiological pain-relieving response",
]:
story.append(bullet(pt))
story.append(Paragraph("<b>4. Dopaminergic Reward System:</b>", bold_style))
story.append(bullet("Positive expectation activates nucleus accumbens dopamine release → contributes to analgesia"))
story.append(section("Clinical Significance"))
for pt in [
"Explains why <b>double-blind, placebo-controlled trials</b> are mandatory for drug evaluation",
"Placebo effects are real – PET scans show <b>opioid receptor activation</b> in the brain",
"Physician-patient relationship and trust <b>amplify</b> the placebo response",
"Ethical implications exist in using placebos in clinical practice",
]:
story.append(bullet(pt))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q35 – HYPOTHALAMIC OBESITY
# ══════════════════════════════════════════════════════
story.append(q_heading(35, "Hypothalamic Obesity", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Hypothalamic obesity is severe, refractory obesity resulting from "
"<b>damage to or dysfunction of hypothalamic nuclei</b> that regulate appetite and "
"energy balance, especially the <b>ventromedial hypothalamus (VMH)</b>."))
story.append(section("Hypothalamic Centres for Feeding (Sembulingam)"))
story.append(make_table(
["Centre", "Location", "Function", "Effect of Destruction"],
[
["Feeding centre", "Lateral hypothalamic area (LHA)", "Stimulates eating (orexigenic)", "Anorexia → starvation"],
["Satiety centre", "Ventromedial hypothalamus (VMH)", "Inhibits eating (anorexigenic)", "Hyperphagia → obesity"],
],
col_widths=[3.5*cm, 5*cm, 4*cm, 4*cm]
))
story.append(section("Mechanism of Hypothalamic Obesity"))
for pt in [
"VMH/arcuate nucleus lesion → loss of satiety signalling → <b>uncontrolled hyperphagia</b>",
"Disruption of <b>leptin signalling</b> → leptin (from adipocytes) cannot suppress "
"appetite via POMC neurons in arcuate nucleus",
"Increased <b>NPY and AgRP</b> (orexigenic peptides) activity",
"Decreased <b>POMC/CART</b> (anorexigenic peptides) activity",
"Autonomic dysfunction → <b>hyperinsulinaemia</b> → promotes fat storage even without excess eating",
]:
story.append(bullet(pt))
story.append(section("Causes"))
for pt in [
"<b>Craniopharyngioma</b> (most common in children)",
"Hypothalamic tumours, trauma, encephalitis",
"Radiation therapy to hypothalamus",
]:
story.append(bullet(pt))
story.append(section("Features"))
for pt in [
"Severe, refractory obesity with <b>uncontrollable hyperphagia</b>",
"Often associated with: Diabetes insipidus, GH deficiency, hypogonadism, "
"temperature dysregulation, sleep disturbances",
]:
story.append(bullet(pt))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q36 – CEREBRAL EDEMA AT HIGH ALTITUDE
# ══════════════════════════════════════════════════════
story.append(q_heading(36, "Cerebral Edema During Slow Ascent (High-Altitude Cerebral Edema)", "SQ"))
story.append(hr())
story.append(section("Context"))
story.append(body("High-Altitude Cerebral Edema (HACE) is a severe form of altitude sickness "
"occurring at altitudes >3,000–4,000 m. <b>Rapid ascent</b> precipitates HACE; "
"<b>slow ascent allows acclimatisation</b> and is therefore protective. "
"The question asks about the mechanism when edema occurs despite (or during) ascent."))
story.append(section("Mechanism of Cerebral Edema at High Altitude (Sembulingam/Guyton)"))
steps5 = [
"<b>Hypobaric hypoxia</b> at high altitude → ↓ PaO₂ → tissue hypoxia",
"Hypoxia triggers <b>cerebral vasodilation</b> (local autoregulatory response to hypoxia)",
"Vasodilation → ↑ cerebral blood flow → <b>↑ capillary hydrostatic pressure</b>",
"→ Fluid leaks from capillaries into brain interstitium → <b>vasogenic oedema</b>",
"Hypoxia also stimulates <b>VEGF</b> and inflammatory cytokines → ↑ endothelial "
"permeability → further oedema",
"Hypoxia impairs <b>Na⁺/K⁺-ATPase</b> → cellular Na⁺ accumulation → <b>cytotoxic "
"oedema</b> (intracellular swelling)",
"↑ Intracranial pressure → herniation risk → further neurological deterioration",
]
for i, s in enumerate(steps5, 1):
story.append(Paragraph(f" {i}. {s}", bullet_style))
story.append(section("Why Slow Ascent is Protective – Acclimatisation"))
for pt in [
"<b>Hyperventilation</b> → ↓ PaCO₂ → respiratory alkalosis → compensated by renal HCO₃⁻ excretion",
"↑ <b>2,3-DPG</b> → rightward shift of O₂ dissociation curve → better O₂ delivery to tissues",
"↑ Red cell mass and haemoglobin concentration (EPO-driven)",
"Gradual normalisation of cerebrovascular reactivity",
]:
story.append(bullet(pt))
story.append(section("Clinical Features of HACE"))
for pt in [
"Severe headache, nausea, vomiting",
"Ataxia, confusion, hallucinations",
"Papilledema",
"Altered consciousness → coma if untreated",
]:
story.append(bullet(pt))
story.append(section("Treatment"))
for pt in [
"<b>Immediate descent</b> – most important intervention",
"<b>Supplemental oxygen</b>",
"<b>Dexamethasone</b> – reduces vasogenic oedema",
"<b>Acetazolamide</b> – carbonic anhydrase inhibitor; aids acclimatisation",
"Hyperbaric bag (Gamow bag) if immediate descent not possible",
]:
story.append(bullet(pt))
story.append(spacer(10))
# ══════════════════════════════════════════════════════
# Q37 – RESTING TREMORS IN BASAL GANGLIA DYSFUNCTION
# ══════════════════════════════════════════════════════
story.append(q_heading(37, "Resting Tremors in Basal Ganglia Dysfunctions", "PB"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Resting tremor is an <b>involuntary, rhythmic, oscillatory movement</b> "
"of a body part that occurs <b>at rest</b> (when the part is not being used), "
"and <b>diminishes or disappears with voluntary movement</b>. "
"Frequency: <b>4–6 Hz</b>."))
story.append(section("Neural Basis of Resting Tremor in Parkinson's Disease"))
for pt in [
"<b>Loss of dopaminergic neurons</b> in substantia nigra pars compacta (SNpc) "
"(>60–70% lost before symptoms appear)",
"→ <b>Direct pathway underactive</b> (less D1 activation of striatum → GPi more active)",
"→ <b>Indirect pathway overactive</b> (less D2 inhibition → STN overactive → GPi more active)",
"→ GPi/SNpr <b>over-inhibit thalamus</b>",
"→ Thalamocortical circuit develops <b>abnormal oscillatory activity at 4–6 Hz</b> → resting tremor",
]:
story.append(bullet(pt))
story.append(section("Characteristics of Parkinsonian Resting Tremor"))
story.append(make_table(
["Feature", "Description"],
[
["Frequency", "4–6 Hz"],
["Distribution", "Distal > proximal; commonly hands, lips, jaw, legs"],
["Classic appearance", "'Pill-rolling' tremor – rhythmic opposition of thumb and forefinger"],
["Relation to movement", "Disappears or decreases during voluntary movement"],
["Worsening factors", "Stress, emotional arousal, fatigue, walking"],
["Onset", "Typically unilateral initially; spreads to other side over time"],
],
col_widths=[4.5*cm, 12*cm]
))
story.append(section("Associated Parkinsonian Features – TRAP Mnemonic"))
for pt in [
"<b>T</b>remor – resting, pill-rolling, 4–6 Hz",
"<b>R</b>igidity – lead-pipe rigidity ± cogwheel (tremor superimposed on rigidity)",
"<b>A</b>kinesia/Bradykinesia – slowness and poverty of movement",
"<b>P</b>ostural instability – loss of righting reflexes; festinant gait",
]:
story.append(bullet(pt))
story.append(section("Comparison: Resting vs Other Tremors"))
story.append(make_table(
["Type", "Occurs At", "Cause", "Frequency"],
[
["Resting tremor", "At rest; disappears with movement", "Parkinson's disease (basal ganglia)", "4–6 Hz"],
["Intention tremor", "During voluntary movement; worsens near target", "Cerebellar lesion", "3–5 Hz"],
["Postural/essential tremor", "Sustained posture; both rest and action", "Essential tremor (no basal ganglia lesion)", "8–12 Hz"],
],
col_widths=[3.5*cm, 4.5*cm, 5*cm, 3.5*cm]
))
story.append(section("Treatment"))
for pt in [
"<b>Levodopa/Carbidopa</b> – dopamine precursor; most effective",
"<b>Dopamine agonists</b> (ropinirole, pramipexole)",
"<b>Anticholinergics</b> (trihexyphenidyl) – specifically for tremor",
"<b>Deep Brain Stimulation (DBS)</b> of subthalamic nucleus or GPi – for refractory cases",
]:
story.append(bullet(pt))
# FOOTER NOTE
story.append(spacer(20))
story.append(hr())
story.append(Paragraph(
"<i>Answers compiled with reference to Sembulingam & Sembulingam – "
"Essentials of Medical Physiology (8th Ed.). "
"For university examination preparation only.</i>",
note_style))
# BUILD PDF
doc.build(story)
print("PDF generated successfully.")
cd /tmp/workspace/sembulingam-sq && python generate_pdf.py
ls -lh /tmp/workspace/sembulingam-sq/Sembulingam_SQ_Answers.pdf
Sembulingam SQ Answers
PDF Document · PDF
| Q# | Topic | Type |
|---|---|---|
| 9 | NREM Sleep | SQ |
| 14/24 | Babinski's Sign / Positive Babinski | SQ/PB |
| 15 | Pyramidal & Extrapyramidal Tracts | LQ |
| 16 | Synaptic Transmission + Properties | SQ |
| 19 | Pain Pathway + Referred Pain | LQ |
| 20 | Saltatory Conduction | SQ |
| 21 | Synaptic Delay | SQ |
| 22 | Cerebellum - Structure, Functions, Lesions | LQ |
| 23 | Motor Speech Center (Broca's Area) | SQ |
| 25 | Renshaw Cell Inhibition | SQ |
| 27 | Synaptic Plasticity (LTP/LTD) | SQ |
| 29 | Basal Ganglia | SQ |
| 30 | Huntington's Disease | SQ |
| 31 | Physiological Significance of Emotion | SQ |
| 32 | Sympathetic Stimulation of CVS | SQ |
| 33 | Motor Aphasia | SQ |
| 34 | Placebos as Pain Relievers | SQ |
| 35 | Hypothalamic Obesity | SN |
| 36 | Cerebral Edema at High Altitude | SQ |
| 37 | Resting Tremors in Basal Ganglia Dysfunction | PB |
now do the same for them too lq-long question sq-short question pb-physiological basis
~/sembulingam-sq/generate_endocrine_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm
from reportlab.lib import colors
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer,
Table, TableStyle, HRFlowable, PageBreak)
from reportlab.lib.enums import TA_LEFT, TA_CENTER, TA_JUSTIFY
doc = SimpleDocTemplate(
"/tmp/workspace/sembulingam-sq/Sembulingam_Endocrine_Answers.pdf",
pagesize=A4,
rightMargin=2*cm, leftMargin=2*cm,
topMargin=2.5*cm, bottomMargin=2.5*cm
)
styles = getSampleStyleSheet()
title_style = ParagraphStyle('Title', parent=styles['Title'],
fontSize=16, textColor=colors.HexColor('#1a1a6e'),
spaceAfter=4, spaceBefore=0, alignment=TA_CENTER)
subtitle_style = ParagraphStyle('Subtitle', parent=styles['Normal'],
fontSize=10, textColor=colors.HexColor('#444444'),
spaceAfter=14, alignment=TA_CENTER)
q_style = ParagraphStyle('QHead', parent=styles['Heading1'],
fontSize=13, textColor=colors.HexColor('#1a1a6e'),
spaceBefore=16, spaceAfter=4, leading=16)
section_style = ParagraphStyle('Section', parent=styles['Heading2'],
fontSize=11, textColor=colors.HexColor('#8B0000'),
spaceBefore=8, spaceAfter=3)
body_style = ParagraphStyle('Body', parent=styles['Normal'],
fontSize=10, leading=15, spaceAfter=4, alignment=TA_JUSTIFY)
bullet_style = ParagraphStyle('Bullet', parent=styles['Normal'],
fontSize=10, leading=14, spaceAfter=3, leftIndent=16, bulletIndent=4)
bold_style = ParagraphStyle('Bold', parent=styles['Normal'],
fontSize=10, leading=14, spaceAfter=3)
note_style = ParagraphStyle('Note', parent=styles['Normal'],
fontSize=9, leading=13, spaceAfter=4,
textColor=colors.HexColor('#555555'), leftIndent=10)
def B(t): return f"<b>{t}</b>"
def I(t): return f"<i>{t}</i>"
def q_heading(num, title, type_label="SN"):
color = {"SN":"#1a1a6e","LQ":"#006400","SQ":"#8B4513","PB":"#5a005a"}.get(type_label,"#1a1a6e")
return Paragraph(
f'<font color="{color}"><b>Q{num}. {title}</b></font> '
f'<font size="9" color="#888888">[{type_label}]</font>', q_style)
def hr(): return HRFlowable(width="100%", thickness=0.5, color=colors.HexColor('#cccccc'), spaceAfter=4, spaceBefore=4)
def section(t): return Paragraph(t, section_style)
def body(t): return Paragraph(t, body_style)
def bullet(t): return Paragraph(f"• {t}", bullet_style)
def subbullet(t): return Paragraph(f" - {t}", bullet_style)
def note(t): return Paragraph(I(t), note_style)
def spacer(h=6): return Spacer(1, h)
def bold(t): return Paragraph(B(t), bold_style)
def make_table(headers, rows, col_widths=None):
data = [[Paragraph(B(h), bold_style) for h in headers]]
for row in rows:
data.append([Paragraph(str(c), body_style) for c in row])
t = Table(data, colWidths=col_widths)
t.setStyle(TableStyle([
('BACKGROUND',(0,0),(-1,0),colors.HexColor('#dce6f1')),
('TEXTCOLOR',(0,0),(-1,0),colors.HexColor('#1a1a6e')),
('GRID',(0,0),(-1,-1),0.5,colors.HexColor('#aaaaaa')),
('ROWBACKGROUNDS',(0,1),(-1,-1),[colors.white,colors.HexColor('#f5f5f5')]),
('FONTSIZE',(0,0),(-1,-1),9),
('PADDING',(0,0),(-1,-1),5),
('VALIGN',(0,0),(-1,-1),'TOP'),
]))
return t
story = []
# COVER
story.append(spacer(30))
story.append(Paragraph("Essentials of Medical Physiology", title_style))
story.append(Paragraph(B("Based on Sembulingam & Sembulingam"), subtitle_style))
story.append(Paragraph("Endocrinology – University Exam Question Answers", subtitle_style))
story.append(Paragraph("(All Questions | SN = Short Note, LQ = Long Question, PB = Physiological Basis)", note_style))
story.append(spacer(20))
story.append(hr())
story.append(spacer(10))
# ═══════════════════════════════════════════════
# Q11 – MINERALOCORTICOIDS & ALDOSTERONE
# ═══════════════════════════════════════════════
story.append(q_heading(11, "Mineralocorticoids of Adrenal Gland – Functions & Mechanism of Action of Aldosterone", "LQ"))
story.append(hr())
story.append(section("Mineralocorticoids – Definition"))
story.append(body("Mineralocorticoids are steroid hormones secreted by the "
"<b>zona glomerulosa</b> of the adrenal cortex that primarily regulate "
"<b>electrolyte (mineral) and water balance</b>."))
story.append(section("Mineralocorticoids Secreted by Adrenal Gland"))
story.append(make_table(
["Hormone","Relative Potency","Remarks"],
[
["Aldosterone","Most potent – 3000× cortisol for Na⁺ retention","Principal mineralocorticoid"],
["Deoxycorticosterone (DOC)","~1/30th of aldosterone","Precursor; minor physiological role"],
["Corticosterone","Weak mineralocorticoid activity","Also a glucocorticoid"],
["9α-Fluorocortisol","Synthetic; very potent","Used clinically in Addison's disease"],
],col_widths=[5*cm,5.5*cm,6*cm]))
story.append(section("Functions of Aldosterone"))
for pt in [
B("Na⁺ Retention:")+" Acts on principal cells of distal convoluted tubule (DCT) and collecting duct → ↑ Na⁺ reabsorption → water follows → ↑ ECF volume and blood pressure",
B("K⁺ Excretion:")+" ↑ K⁺ secretion into tubular lumen (aldosterone escape for Na⁺ but not K⁺)",
B("H⁺ Excretion:")+" ↑ H⁺ secretion → contributes to acid-base balance",
B("Salivary and sweat glands:")+" Reduces Na⁺ loss in saliva and sweat",
B("GI tract:")+" ↑ Na⁺ absorption from intestinal mucosa",
B("Cardiovascular:")+" Long-term ↑ blood pressure; promotes cardiac fibrosis in excess",
]:
story.append(bullet(pt))
story.append(section("Mechanism of Action of Aldosterone"))
story.append(body("Aldosterone is a <b>steroid hormone</b> and acts via <b>intracellular "
"(genomic) receptors</b>:"))
steps = [
"Aldosterone diffuses freely across the cell membrane (lipid-soluble)",
"Binds to <b>mineralocorticoid receptor (MR)</b> in the cytoplasm",
"Aldosterone-MR complex translocates to the <b>nucleus</b>",
"Binds to <b>hormone response elements (HRE)</b> on DNA",
"Stimulates transcription of <b>aldosterone-induced proteins (AIPs)</b>:",
" → ↑ Synthesis of <b>Na⁺/K⁺-ATPase</b> on basolateral membrane",
" → ↑ Apical Na⁺ channels (ENaC) and K⁺ channels (ROMK)",
" → ↑ Mitochondrial enzymes for ATP production (to power Na⁺/K⁺-ATPase)",
"Net result: <b>↑ Na⁺ reabsorption and ↑ K⁺/H⁺ secretion</b>",
]
for i,s in enumerate(steps,1):
story.append(Paragraph(f" {i}. {s}", bullet_style))
story.append(section("Regulation of Aldosterone Secretion"))
story.append(make_table(
["Stimulant","Inhibitor"],
[
["↑ Angiotensin II (RAAS activation – main stimulus)","↑ Atrial Natriuretic Peptide (ANP)"],
["↑ Plasma K⁺ (direct effect on zona glomerulosa)","↓ Plasma K⁺"],
["ACTH (minor role; permissive)","Heparin"],
["↓ Na⁺ / ↓ blood volume","Dopamine"],
],col_widths=[8*cm,8.5*cm]))
story.append(note("Clinical: Hyperaldosteronism (Conn's syndrome) → HTN + hypokalemia + metabolic alkalosis. "
"Hypoaldosteronism (Addison's) → hypotension + hyperkalemia + hyponatremia."))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q12 / Q17 – METABOLIC FUNCTIONS OF GROWTH HORMONE
# ═══════════════════════════════════════════════
story.append(q_heading("12 / 17", "Metabolic Functions of Growth Hormone", "SN"))
story.append(hr())
story.append(section("Growth Hormone (GH) – Overview"))
story.append(body("Growth Hormone (Somatotrophin) is a <b>191-amino acid polypeptide</b> "
"secreted by <b>somatotrophs</b> of the <b>anterior pituitary gland</b>. "
"It exerts its metabolic effects both <b>directly</b> and indirectly via "
"<b>IGF-1 (Insulin-like Growth Factor-1)</b> secreted by the liver."))
story.append(section("Metabolic Functions"))
story.append(make_table(
["Metabolic Area","Effect of GH","Mechanism"],
[
["Protein metabolism",
"↑ Protein synthesis (anabolic)\n↓ Protein catabolism\n↑ Amino acid uptake into cells",
"↑ mRNA transcription, ribosomal activity; via IGF-1"],
["Carbohydrate metabolism",
"↑ Blood glucose (diabetogenic)\n↓ Peripheral glucose uptake\n↑ Hepatic glycogenolysis\n↑ Gluconeogenesis",
"Anti-insulin effect; GH receptor → JAK2/STAT5 → inhibits GLUT-4 translocation"],
["Fat metabolism",
"↑ Lipolysis → ↑ free fatty acids in blood\n↑ FFA oxidation (fat used as energy source)\nSpares glucose (glucose-sparing effect)",
"Activates hormone-sensitive lipase in adipocytes"],
["Electrolyte & water",
"↑ Na⁺, K⁺, Cl⁻, phosphate retention\n↑ Water retention\n↑ Ca²⁺ absorption from gut",
"Via IGF-1; direct renal tubular effects"],
["Connective tissue",
"↑ Chondroitin sulphate & collagen synthesis",
"Stimulates fibroblasts and chondrocytes via IGF-1"],
],col_widths=[4*cm,5.5*cm,7*cm]))
story.append(note("Diabetogenic action: GH is a physiological antagonist of insulin. "
"Excess GH (acromegaly) causes secondary diabetes mellitus."))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q13 – ADRENAL CORTEX HORMONES, REGULATION & GLUCOCORTICOIDS
# ═══════════════════════════════════════════════
story.append(q_heading(13, "Hormones of Adrenal Cortex – Regulation & Physiological Actions of Glucocorticoids", "LQ"))
story.append(hr())
story.append(section("Zones of Adrenal Cortex and Hormones"))
story.append(body("Mnemonic: <b>GFR – Salt, Sugar, Sex</b> (outer to inner)"))
story.append(make_table(
["Zone","Hormones Secreted","Class"],
[
["Zona Glomerulosa (outer)","Aldosterone (principal); DOC","Mineralocorticoids"],
["Zona Fasciculata (middle, largest)","Cortisol (principal); Corticosterone","Glucocorticoids"],
["Zona Reticularis (inner)","DHEA, Androstenedione, small amounts of oestrogen","Sex steroids (Androgens)"],
],col_widths=[5*cm,6*cm,5.5*cm]))
story.append(section("Regulation of Glucocorticoid Secretion"))
story.append(body("<b>Hypothalamo-Pituitary-Adrenal (HPA) Axis:</b>"))
for pt in [
"Hypothalamus secretes <b>CRH (Corticotrophin Releasing Hormone)</b>",
"CRH → Anterior pituitary → secretes <b>ACTH (Adrenocorticotrophic Hormone)</b>",
"ACTH → Zona fasciculata → secretes <b>Cortisol</b>",
"<b>Negative feedback:</b> Cortisol inhibits both CRH (hypothalamus) and ACTH (pituitary)",
"<b>Diurnal rhythm:</b> Cortisol peaks at 6–8 AM (on waking), lowest at midnight",
"<b>Stress</b> overrides negative feedback → ↑ CRH → ↑ ACTH → ↑ Cortisol",
]:
story.append(bullet(pt))
story.append(section("Physiological Actions of Glucocorticoids (Cortisol)"))
story.append(make_table(
["System","Action"],
[
["Carbohydrate","↑ Gluconeogenesis (liver); ↓ glucose uptake peripherally; → hyperglycaemia (diabetogenic)"],
["Protein","↑ Protein catabolism in muscle, skin, bone → ↑ amino acids for gluconeogenesis; anti-anabolic"],
["Fat","↑ Lipolysis; redistribution of fat → central obesity, moon face, buffalo hump (Cushing's)"],
["Anti-inflammatory","↓ Phospholipase A2 (via lipocortin) → ↓ prostaglandins, leukotrienes; ↓ capillary permeability; ↓ WBC migration"],
["Immunosuppression","↓ Lymphocyte proliferation; ↓ antibody synthesis; ↓ cytokines (IL-1, IL-2, TNF)"],
["Cardiovascular","Maintains vascular reactivity to catecholamines; ↑ cardiac output; permissive role"],
["Renal","Maintains GFR; weak mineralocorticoid activity at high doses"],
["CNS","Required for normal mood, cognition; excess → psychosis, depression"],
["Bone","↓ Osteoblast activity; ↑ osteoclast activity → osteoporosis (excess)"],
["GI","↑ Gastric acid secretion; ↑ risk of peptic ulcer"],
["Growth","Inhibits growth (anti-GH effect) in excess"],
["Stress response","Critical for survival during stress; mobilises energy substrates"],
],col_widths=[4*cm,12.5*cm]))
story.append(note("Clinical: Excess cortisol = Cushing's syndrome (central obesity, striae, HTN, diabetes, osteoporosis, immunosuppression). "
"Deficiency = Addison's disease (hypotension, hypoglycaemia, hyperpigmentation)."))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q14 – PITUITARY HORMONES + SOMATOTROPHIN
# ═══════════════════════════════════════════════
story.append(q_heading(14, "Hormones of Pituitary Gland – Action & Regulation of Somatotrophin", "LQ"))
story.append(hr())
story.append(section("Hormones of Pituitary Gland"))
story.append(make_table(
["Lobe","Hormone","Abbreviation","Main Target"],
[
["Anterior (Adenohypophysis)","Growth Hormone","GH (STH)","Liver, bones, muscle"],
["","Thyroid Stimulating Hormone","TSH","Thyroid gland"],
["","Adrenocorticotrophic Hormone","ACTH","Adrenal cortex"],
["","Follicle Stimulating Hormone","FSH","Gonads"],
["","Luteinising Hormone","LH","Gonads"],
["","Prolactin","PRL","Mammary gland"],
["Posterior (Neurohypophysis)","Antidiuretic Hormone","ADH (Vasopressin)","Kidney collecting duct"],
["","Oxytocin","OT","Uterus, mammary gland"],
],col_widths=[3.5*cm,5*cm,3.5*cm,4.5*cm]))
story.append(section("Somatotrophin (Growth Hormone) – Actions"))
story.append(body("GH is a <b>191-amino acid single-chain polypeptide</b>. "
"It acts directly and via <b>IGF-1 (Somatomedin C)</b> from the liver."))
story.append(Paragraph(B("A. Growth-Promoting (Somatogenic) Effects:"), bold_style))
for pt in [
"Stimulates <b>linear bone growth</b> – increases length of long bones at epiphyseal plates (via IGF-1 → chondrocyte proliferation)",
"↑ Protein synthesis → increases muscle mass and organ size",
"↑ Cell division and DNA/RNA synthesis",
"↑ Visceral organ size",
]:
story.append(bullet(pt))
story.append(Paragraph(B("B. Metabolic Effects (see Q12/17 above):"), bold_style))
for pt in [
"Anabolic for protein; Lipolytic for fat; Diabetogenic for carbohydrate",
"Electrolyte retention; Ca²⁺ absorption",
]:
story.append(bullet(pt))
story.append(section("Regulation of GH Secretion"))
story.append(make_table(
["Stimulates GH (↑)","Inhibits GH (↓)"],
[
["GHRH (Growth Hormone Releasing Hormone) from hypothalamus","Somatostatin (GHIH) from hypothalamus"],
["Hypoglycaemia (↓ blood glucose)","Hyperglycaemia"],
["Deep sleep (Stage 3/4 NREM)","Obesity"],
["Exercise and physical stress","IGF-1 (negative feedback)"],
["Amino acids (arginine, leucine)","GH itself (short-loop feedback)"],
["Fasting / starvation","Free fatty acids"],
["Oestrogen, testosterone","Glucocorticoids (excess)"],
["Dopamine, α-adrenergic stimulation","β-adrenergic stimulation"],
["Ghrelin (from stomach)","Progesterone"],
],col_widths=[8.5*cm,8*cm]))
story.append(section("Disorders of GH"))
story.append(make_table(
["Condition","Cause","Features"],
[
["Gigantism","GH excess before epiphyseal closure","Abnormally tall stature"],
["Acromegaly","GH excess after epiphyseal closure","Enlarged hands, feet, jaw, viscera; diabetes"],
["Dwarfism (pituitary)","GH deficiency in childhood","Short stature, proportionate body"],
["Laron dwarfism","GH receptor defect","↑ GH, ↓ IGF-1, dwarfism"],
],col_widths=[4*cm,5*cm,7.5*cm]))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q15 – HORMONES IN CALCIUM METABOLISM
# ═══════════════════════════════════════════════
story.append(q_heading(15, "Hormones Involved in Calcium Metabolism", "LQ"))
story.append(hr())
story.append(section("Normal Calcium Balance"))
story.append(body("Normal serum Ca²⁺ = <b>9–11 mg/dL (2.25–2.75 mmol/L)</b>. "
"~50% ionised (active), ~40% protein-bound, ~10% complexed. "
"Regulated by three main hormones:"))
story.append(make_table(
["Hormone","Source","Effect on Ca²⁺","Effect on PO₄³⁻"],
[
["Parathyroid Hormone (PTH)","Chief cells of parathyroid gland","↑ Serum Ca²⁺","↓ Serum PO₄³⁻ (↑ renal excretion)"],
["Calcitriol (1,25-(OH)₂D₃) – Active Vit D","Kidney (1α-hydroxylase); Skin → Liver → Kidney","↑ Serum Ca²⁺ and PO₄³⁻","↑ Serum PO₄³⁻"],
["Calcitonin","Parafollicular C-cells of thyroid","↓ Serum Ca²⁺ (minor role in adults)","↓ Serum PO₄³⁻"],
],col_widths=[4.5*cm,4.5*cm,4*cm,4*cm]))
story.append(section("Parathyroid Hormone (PTH) – Detailed Actions"))
for pt in [
B("Bone:")+" ↑ Osteoclast activity (bone resorption) → releases Ca²⁺ and PO₄³⁻ into blood",
B("Kidney:")+" ↑ Ca²⁺ reabsorption in DCT; ↑ PO₄³⁻ excretion; stimulates 1α-hydroxylase (↑ active Vit D)",
B("GI tract:")+" Indirect – via Vit D activation → ↑ Ca²⁺ absorption",
B("Net effect:")+" ↑ Serum Ca²⁺, ↓ Serum PO₄³⁻",
]:
story.append(bullet(pt))
story.append(section("Calcitriol (Active Vitamin D) – Detailed Actions"))
for pt in [
B("GI tract (main site):")+" ↑ Ca²⁺ and PO₄³⁻ absorption by inducing calbindin (Ca-binding protein)",
B("Kidney:")+" ↑ Ca²⁺ and PO₄³⁻ reabsorption",
B("Bone:")+" Stimulates bone mineralisation; at high doses causes resorption",
B("Synthesis:")+" Skin (UV) → Cholecalciferol (D₃) → Liver (25-OH) → Kidney (1,25-(OH)₂D₃)",
]:
story.append(bullet(pt))
story.append(section("Calcitonin – Actions"))
for pt in [
"↓ Osteoclast activity → ↓ bone resorption → ↓ serum Ca²⁺",
"↑ Renal Ca²⁺ and PO₄³⁻ excretion",
"Physiological role is minor in adults but important in children (growth) and pregnancy/lactation",
]:
story.append(bullet(pt))
story.append(section("Summary: Hormone Actions on Ca²⁺"))
story.append(make_table(
["Action Site","PTH","Calcitriol","Calcitonin"],
[
["Bone resorption","↑↑","↑ (high dose)","↓"],
["Gut Ca²⁺ absorption","↑ (indirect via Vit D)","↑↑ (direct)","No effect"],
["Renal Ca²⁺ reabsorption","↑","↑","↓"],
["Serum Ca²⁺ net effect","↑↑","↑","↓"],
],col_widths=[5*cm,3.5*cm,3.5*cm,4.5*cm]))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q16 – TRANSPORT MAXIMUM FOR GLUCOSE (Tm)
# ═══════════════════════════════════════════════
story.append(q_heading(16, "Transport Maximum for Glucose (Tm Glucose)", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Transport Maximum (Tm) for glucose is the <b>maximum rate at which "
"glucose can be reabsorbed by the renal tubules</b> when all carrier proteins are "
"saturated. In the kidneys, glucose is normally completely reabsorbed in the "
"proximal convoluted tubule (PCT) by secondary active transport (Na⁺-glucose cotransporter, SGLT2)."))
story.append(section("Normal Values"))
story.append(make_table(
["Parameter","Value"],
[
["Tm for glucose (male)","375 mg/min"],
["Tm for glucose (female)","300 mg/min"],
["Renal threshold for glucose (plasma)","~180 mg/dL (10 mmol/L)"],
["Normal fasting plasma glucose","70–100 mg/dL – fully reabsorbed; no glycosuria"],
],col_widths=[7*cm,9.5*cm]))
story.append(section("Mechanism"))
for pt in [
"Glucose in glomerular filtrate enters PCT lumen",
"Reabsorbed by <b>SGLT2</b> (sodium-glucose cotransporter) on apical membrane of PCT cells using Na⁺ gradient",
"Exits basolateral membrane via <b>GLUT2</b> into peritubular capillaries",
"When plasma glucose <b>exceeds 180 mg/dL</b> → all carriers saturated → glucose appears in urine (<b>glycosuria</b>)",
]:
story.append(bullet(pt))
story.append(section("Splay"))
story.append(body("In practice, glycosuria begins slightly <i>before</i> the calculated Tm "
"is reached. This is because not all nephrons are identical – some saturate earlier "
"than others. This spread is called <b>'splay'</b> on the Tm curve."))
story.append(section("Clinical Significance"))
for pt in [
"<b>Diabetes mellitus:</b> Blood glucose >180 mg/dL → Tm exceeded → glycosuria → osmotic diuresis → polyuria, polydipsia",
"<b>Renal glycosuria:</b> Normal blood glucose but reduced Tm (SGLT2 defect) → glycosuria without hyperglycaemia",
]:
story.append(bullet(pt))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q18 – THYROID HORMONES: SYNTHESIS, STORAGE, RELEASE, FUNCTIONS
# ═══════════════════════════════════════════════
story.append(q_heading(18, "Thyroid Hormones – Synthesis, Storage, Release and Functions of Thyroxine", "LQ"))
story.append(hr())
story.append(section("Thyroid Hormones"))
story.append(make_table(
["Hormone","Symbol","% of Total","Potency","Half-life"],
[
["Tetraiodothyronine (Thyroxine)","T4","90%","Less active (prohormone)","7 days"],
["Triiodothyronine","T3","10%","4× more potent than T4 (active form)","1–2 days"],
["Reverse T3","rT3","Trace","Inactive","~1 day"],
],col_widths=[5.5*cm,2*cm,2*cm,4.5*cm,2.5*cm]))
story.append(section("Synthesis of Thyroid Hormones (Sembulingam)"))
steps = [
B("Iodide trapping:")+" Thyroid follicular cells actively transport I⁻ from blood into cells via Na⁺/I⁻ symporter (NIS) – 'iodide pump'; concentrates iodine 25× plasma levels",
B("Oxidation of iodide:")+" I⁻ → I₂ (active iodine) by thyroid peroxidase (TPO) using H₂O₂",
B("Synthesis of thyroglobulin (TG):")+" Large glycoprotein (660 kDa) synthesised in follicular cells → secreted into follicular lumen (colloid)",
B("Organification of iodine:")+" I₂ + tyrosine residues of TG → Monoiodotyrosine (MIT) and Diiodotyrosine (DIT) – catalysed by TPO",
B("Coupling reaction:")+" MIT + DIT → T3; DIT + DIT → T4; catalysed by TPO",
B("Storage:")+" T3 and T4 remain bound to thyroglobulin in the follicular colloid – largest hormone store in body (2–3 months supply)",
]
for i,s in enumerate(steps,1):
story.append(Paragraph(f" {i}. {s}", bullet_style))
story.append(section("Release of Thyroid Hormones"))
steps2 = [
"TSH stimulates follicular cells → pseudopods engulf colloid by <b>endocytosis</b>",
"Phagolysosomes form → lysosomal proteases hydrolyse thyroglobulin",
"T3 and T4 released into blood",
"MIT and DIT are deiodinated; iodine recycled within the cell (<b>intrathyroidal deiodinase</b>)",
"In blood: T3 and T4 bound to <b>Thyroxine Binding Globulin (TBG)</b>, prealbumin, albumin",
"T4 is converted to T3 (active) in peripheral tissues by <b>5'-deiodinase</b>",
]
for i,s in enumerate(steps2,1):
story.append(Paragraph(f" {i}. {s}", bullet_style))
story.append(section("Functions of Thyroid Hormones (Thyroxine/T3)"))
story.append(make_table(
["System","Function"],
[
["Metabolic rate","↑ Basal metabolic rate (BMR); ↑ O₂ consumption in all tissues (calorigenic effect)"],
["Protein","↑ Protein synthesis (physiological amounts); ↑ catabolism (excess)"],
["Carbohydrate","↑ Glucose absorption from gut; ↑ glycogenolysis; ↑ gluconeogenesis; sensitises tissues to insulin"],
["Fat","↑ Lipolysis; ↑ cholesterol synthesis AND degradation (net: ↓ cholesterol); hypothyroidism → hypercholesterolaemia"],
["Growth","Essential for normal linear growth; acts synergistically with GH; required for GH synthesis"],
["CNS","Essential for normal brain development (foetal and neonatal); cretinism if deficient in infancy"],
["CVS","↑ Heart rate; ↑ cardiac output; ↑ systolic BP; ↑ blood volume"],
["Reproduction","Required for normal gonadal function; hypothyroidism → menstrual irregularities"],
["Bone","Stimulates bone growth and ossification; excess → accelerated bone turnover → osteoporosis"],
["Gut","↑ GI motility; hyperthyroidism → diarrhoea; hypothyroidism → constipation"],
["Muscle","Maintains muscle strength and reflexes; hypothyroidism → delayed relaxation of DTRs ('hung-up reflexes')"],
],col_widths=[3.5*cm,13*cm]))
story.append(section("Regulation of Thyroid Hormone Secretion"))
for pt in [
"Hypothalamus → <b>TRH</b> (Thyrotropin Releasing Hormone)",
"TRH → Anterior pituitary → <b>TSH</b> (Thyroid Stimulating Hormone)",
"TSH → Thyroid → <b>T3/T4</b>",
"<b>Negative feedback:</b> T3/T4 inhibit both TRH and TSH secretion",
"Cold exposure → ↑ TRH → ↑ TSH → ↑ T3/T4 (thermogenic response)",
]:
story.append(bullet(pt))
story.append(note("Wolff-Chaikoff effect: Excess iodine transiently inhibits thyroid hormone synthesis (auto-regulatory mechanism)."))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q19 – PANCREATIC HORMONES + INSULIN
# ═══════════════════════════════════════════════
story.append(q_heading(19, "Hormones Secreted from Pancreas – Functions of Insulin", "LQ"))
story.append(hr())
story.append(section("Hormones of Pancreas (Islets of Langerhans)"))
story.append(make_table(
["Cell Type","Hormone","% of Islet","Main Action"],
[
["β (Beta) cells","Insulin","70%","Anabolic; ↓ blood glucose"],
["α (Alpha) cells","Glucagon","20%","Catabolic; ↑ blood glucose"],
["δ (Delta) cells","Somatostatin","5–10%","Inhibits both insulin and glucagon"],
["PP cells","Pancreatic polypeptide","1–2%","Inhibits pancreatic exocrine secretion"],
["ε (Epsilon) cells","Ghrelin","<1%","Stimulates hunger; ↑ GH"],
],col_widths=[4*cm,4*cm,2.5*cm,6*cm]))
story.append(section("Insulin – Structure"))
story.append(body("Insulin is a <b>polypeptide</b> consisting of two chains: "
"<b>A-chain (21 aa)</b> and <b>B-chain (30 aa)</b> connected by two disulphide bonds. "
"Synthesised as preproinsulin → proinsulin → insulin + C-peptide."))
story.append(section("Functions of Insulin"))
story.append(make_table(
["Tissue/System","Effect of Insulin"],
[
["Blood glucose","↓ Blood glucose (principal effect); normal = 70–100 mg/dL"],
["Muscle","↑ Glucose uptake (GLUT4); ↑ glycogen synthesis; ↑ amino acid uptake; ↑ protein synthesis; ↓ proteolysis"],
["Liver","↑ Glycolysis; ↑ glycogen synthesis; ↑ lipogenesis; ↓ gluconeogenesis; ↓ glycogenolysis; ↓ ketogenesis"],
["Adipose tissue","↑ Glucose uptake (GLUT4); ↑ lipogenesis; ↑ TG synthesis; ↓ lipolysis (inhibits HSL)"],
["Protein metabolism","Overall anabolic; ↑ amino acid transport into cells; ↑ protein synthesis; ↓ protein breakdown"],
["K⁺","↑ Cellular K⁺ uptake (stimulates Na⁺/K⁺-ATPase) → ↓ serum K⁺"],
["Growth","Synergistic with GH for growth; stimulates cell proliferation"],
["Brain","Glucose uptake independent of insulin (GLUT1/3) – brain always gets glucose"],
],col_widths=[4*cm,12.5*cm]))
story.append(section("Mechanism of Action of Insulin"))
for pt in [
"Binds to <b>insulin receptor</b> (tyrosine kinase receptor – α₂β₂ tetramer) on cell surface",
"Autophosphorylation of β-subunit → activates tyrosine kinase",
"Phosphorylates <b>Insulin Receptor Substrates (IRS-1, IRS-2)</b>",
"→ Activates <b>PI3K → Akt (PKB)</b> pathway",
"→ GLUT4 vesicle translocation to plasma membrane → ↑ glucose entry",
"→ Activates glycogen synthase, lipogenic enzymes; inhibits HSL, gluconeogenic enzymes",
]:
story.append(bullet(pt))
story.append(section("Regulation of Insulin Secretion"))
story.append(make_table(
["Stimulates Insulin (↑)","Inhibits Insulin (↓)"],
[
["↑ Blood glucose (main stimulus; KATP-channel mechanism)","↓ Blood glucose (hypoglycaemia)"],
["Amino acids (arginine, leucine)","Somatostatin"],
["GIP, GLP-1 (incretin hormones from gut)","Adrenaline (α₂ adrenergic)"],
["Vagal (parasympathetic) stimulation","Sympathetic stimulation (α₂)"],
["Glucagon (paracrine)","Diazoxide, thiazides"],
["Sulphonylureas (drug)","Fasting / prolonged exercise"],
],col_widths=[8.5*cm,8*cm]))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q20 – CRETINISM
# ═══════════════════════════════════════════════
story.append(q_heading(20, "Cretinism", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Cretinism is the clinical syndrome resulting from <b>severe hypothyroidism "
"during foetal life or early infancy</b>, characterised by <b>mental retardation, growth "
"failure, and metabolic dysfunction</b>. Thyroid hormones are essential for normal "
"brain development and linear growth."))
story.append(section("Types"))
story.append(make_table(
["Type","Cause"],
[
["Endemic cretinism","Iodine deficiency in the mother during pregnancy (most common worldwide)"],
["Sporadic (goitrous) cretinism","Defect in thyroid hormone synthesis (enzyme defect, e.g., TPO deficiency)"],
["Athyreotic cretinism","Absence or ectopic thyroid gland"],
],col_widths=[5*cm,11.5*cm]))
story.append(section("Clinical Features"))
story.append(make_table(
["System","Features"],
[
["Mental","Severe mental retardation (IQ may be <50); deaf-mutism (endemic type); developmental delay"],
["Growth","Dwarfism (short stature); delayed bone age; wide open fontanelles; delayed dentition"],
["Appearance","Puffy face; depressed nasal bridge; protruding tongue (macroglossia); pot belly; umbilical hernia"],
["Metabolic","Hypothermia; constipation; bradycardia; myxoedema (accumulation of mucopolysaccharides)"],
["Neurological","Hypotonia; delayed developmental milestones; unsteady gait"],
["Goitre","Present in endemic type (↑ TSH stimulation); absent in athyreotic type"],
],col_widths=[4*cm,12.5*cm]))
story.append(section("Diagnosis and Treatment"))
for pt in [
"<b>Neonatal screening:</b> TSH measurement on heel prick blood spot (Day 5–7)",
"Low T4, high TSH → primary hypothyroidism",
"<b>Treatment:</b> Early thyroxine replacement (<b>within first 2 weeks of life</b>) can prevent or minimise mental retardation",
"Prevention: Iodisation of salt in iodine-deficient areas",
]:
story.append(bullet(pt))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q21 (Image 1) – ACROMEGALY
# ═══════════════════════════════════════════════
story.append(q_heading("21 (Img1)", "Acromegaly", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Acromegaly is the clinical syndrome resulting from <b>excess Growth Hormone "
"(GH) secretion after the closure of epiphyseal plates</b> (i.e., in adulthood). "
"Since epiphyses are fused, linear growth cannot occur; instead, "
"<b>soft tissue and periosteal (appositional) growth</b> takes place."))
story.append(section("Cause"))
story.append(body("<b>GH-secreting adenoma</b> of the anterior pituitary (>95% of cases). "
"Rarely: ectopic GHRH secretion from carcinoid tumour."))
story.append(section("Pathophysiology"))
for pt in [
"↑ GH → ↑ IGF-1 from liver → continuous growth of bones (periosteal), soft tissues, and viscera",
"GH excess → insulin resistance → secondary diabetes mellitus (diabetogenic effect)",
"Expanding pituitary adenoma → bitemporal hemianopia (pressure on optic chiasma)",
]:
story.append(bullet(pt))
story.append(section("Clinical Features"))
story.append(make_table(
["System","Features"],
[
["Face","Coarsening of facial features; prominent supraorbital ridges; prognathism (jutting jaw); macroglossia; wide spacing of teeth"],
["Extremities","Enlarged hands (spade-like) and feet; ring/shoe size increases; soft tissue swelling"],
["Skeleton","Kyphosis; arthropathy; carpal tunnel syndrome (median nerve compression)"],
["Skin","Oily skin; excessive sweating; skin tags; acanthosis nigricans"],
["Cardiovascular","Cardiomegaly; hypertension; LV dysfunction; leading cause of death"],
["Metabolic","Impaired glucose tolerance / diabetes mellitus (30–50%); hypercalciuria; hyperprolactinaemia"],
["CNS","Headache; bitemporal hemianopia (chiasmal compression); hypopituitarism"],
["Visceral","Hepatomegaly; splenomegaly; goitre; increased colonic polyps (↑ colorectal cancer risk)"],
],col_widths=[4*cm,12.5*cm]))
story.append(section("Diagnosis"))
for pt in [
"↑ Serum IGF-1 (best screening test)",
"<b>Oral Glucose Tolerance Test (OGTT):</b> Normally GH suppresses to <1 ng/mL; in acromegaly, <b>GH is not suppressed</b>",
"MRI pituitary: macroadenoma (>1 cm) most common",
]:
story.append(bullet(pt))
story.append(section("Treatment"))
for pt in [
"<b>Surgery:</b> Trans-sphenoidal resection of adenoma (first choice)",
"<b>Somatostatin analogues:</b> Octreotide, lanreotide (↓ GH secretion)",
"<b>GH receptor antagonist:</b> Pegvisomant",
"Radiotherapy for residual tumour",
]:
story.append(bullet(pt))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q22 (Image 1) – METABOLIC FUNCTIONS OF GLUCOCORTICOIDS
# ═══════════════════════════════════════════════
story.append(q_heading("22 (Img1)", "Metabolic Functions of Glucocorticoids", "SN"))
story.append(hr())
story.append(section("Overview"))
story.append(body("Glucocorticoids (principally <b>cortisol</b>) are steroid hormones from the "
"<b>zona fasciculata</b> of the adrenal cortex that have widespread metabolic effects, "
"primarily aimed at maintaining blood glucose and mobilising energy substrates, "
"especially during stress."))
story.append(make_table(
["Metabolic Area","Effect","Mechanism"],
[
["Carbohydrate (main)",
"↑ Gluconeogenesis in liver\n↓ Peripheral glucose uptake\n↑ Blood glucose (diabetogenic)",
"↑ Gluconeogenic enzymes (PEPCK, glucose-6-phosphatase)\nInhibits GLUT4 translocation in muscle/adipose"],
["Protein",
"↑ Protein catabolism in muscle, skin, lymphoid tissue, bone\n↑ Amino acid release → liver gluconeogenesis\nAnti-anabolic (inhibits protein synthesis peripherally)",
"↑ Ubiquitin-proteasome pathway in muscle"],
["Fat",
"↑ Lipolysis → ↑ FFA and glycerol\nRedistribution of fat:\n • ↑ Truncal/central fat\n • ↓ Limb fat\nMoon face, buffalo hump, central obesity (Cushing's)",
"Potentiates catecholamine and glucagon lipolysis\nPermissive effect on lipase activity"],
["Energy mobilisation",
"Overall: mobilises substrates for fight-or-flight response",
"Coordinates protein, fat, and carbohydrate metabolism"],
],col_widths=[3.5*cm,6*cm,7*cm]))
story.append(note("Clinical pearl: Excess glucocorticoids (Cushing's syndrome or steroid therapy) "
"→ hyperglycaemia (steroid diabetes), protein wasting (thin skin, muscle wasting, striae, poor wound healing), "
"central obesity, osteoporosis."))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# IMAGE 2 QUESTIONS START
# ═══════════════════════════════════════════════
story.append(PageBreak())
story.append(Paragraph("─── Image 2 Questions ───", subtitle_style))
story.append(spacer(6))
# ═══════════════════════════════════════════════
# Q21 (Image 2) – ADDISON'S DISEASE
# ═══════════════════════════════════════════════
story.append(q_heading("21 (Img2)", "Addison's Disease (Primary Adrenocortical Insufficiency)", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Addison's disease is <b>primary adrenocortical insufficiency</b> caused by "
"destruction or dysfunction of the adrenal cortex, resulting in deficiency of "
"<b>all three classes of adrenocortical hormones</b>: glucocorticoids (cortisol), "
"mineralocorticoids (aldosterone), and androgens."))
story.append(section("Causes"))
for pt in [
"<b>Autoimmune adrenalitis</b> (most common in developed countries – ~80%): adrenal autoantibodies (anti-21-hydroxylase)",
"<b>Tuberculosis</b> (most common worldwide historically): granulomatous destruction",
"Metastatic carcinoma (lung, breast) to adrenal glands",
"Waterhouse-Friderichsen syndrome (bilateral adrenal haemorrhage in meningococcaemia)",
"Fungal infections (histoplasmosis, cryptococcosis)",
"Adrenoleukodystrophy",
]:
story.append(bullet(pt))
story.append(section("Pathophysiology and Clinical Features"))
story.append(make_table(
["Deficiency","Consequence","Clinical Feature"],
[
["↓ Cortisol (glucocorticoid)","↓ Gluconeogenesis; ↓ stress response","Hypoglycaemia; weakness; fatigue; weight loss; nausea; vomiting; unable to cope with stress"],
["↓ Aldosterone (mineralocorticoid)","Na⁺ loss; K⁺ retention; ↓ ECF volume","Hyponatraemia; hyperkalaemia; hypotension; postural hypotension; salt craving; dehydration"],
["↑ ACTH (compensatory)","Excess melanocyte stimulating activity (ACTH has MSH-like sequence)","HYPERPIGMENTATION: skin creases, buccal mucosa, pressure points, scars, areolae – pathognomonic sign"],
["↓ Androgens","↓ Libido; loss of axillary/pubic hair","More noticeable in women"],
],col_widths=[4*cm,5*cm,7.5*cm]))
story.append(section("Investigations"))
for pt in [
"↓ Serum cortisol (8 AM); ↑ ACTH",
"<b>Short Synacthen (ACTH stimulation) test:</b> Cortisol fails to rise after synthetic ACTH → confirms primary adrenal failure",
"Hyponatraemia, hyperkalaemia, hypoglycaemia on electrolytes",
"Anti-21-hydroxylase antibodies (autoimmune)",
"Chest X-ray / CT: calcification (TB), haemorrhage",
]:
story.append(bullet(pt))
story.append(section("Treatment"))
for pt in [
"<b>Hydrocortisone</b> (glucocorticoid replacement): 15–25 mg/day in divided doses",
"<b>Fludrocortisone</b> (mineralocorticoid replacement): 0.05–0.1 mg/day",
"<b>Sick day rules:</b> Double/triple steroid dose during illness, surgery, or stress",
"Medical alert bracelet; steroid emergency injection kit",
]:
story.append(bullet(pt))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q22 (Image 2) – NEGATIVE FEEDBACK MECHANISM
# ═══════════════════════════════════════════════
story.append(q_heading("22 (Img2)", "Negative Feedback Mechanism in Endocrine System", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Negative feedback is the <b>principal regulatory mechanism of the "
"endocrine system</b> in which the end product of a hormonal pathway "
"<b>inhibits its own production</b> at one or more levels, thereby maintaining "
"hormone levels within a narrow physiological range (homeostasis)."))
story.append(section("Types of Negative Feedback"))
story.append(make_table(
["Type","Description","Example"],
[
["Long-loop (classic) feedback","End hormone inhibits both hypothalamus and pituitary","Cortisol inhibits CRH (hypothalamus) and ACTH (pituitary)"],
["Short-loop feedback","Pituitary hormone inhibits hypothalamus","ACTH inhibits CRH secretion"],
["Ultra-short-loop feedback","Hormone inhibits its own releasing cell","CRH inhibits hypothalamic CRH neurons"],
],col_widths=[4*cm,5.5*cm,7*cm]))
story.append(section("Classic Example: HPA Axis"))
for pt in [
"Hypothalamus → <b>CRH</b> → Anterior pituitary → <b>ACTH</b> → Adrenal cortex → <b>Cortisol</b>",
"Cortisol feeds back to <b>inhibit CRH</b> (hypothalamus) and <b>ACTH</b> (pituitary)",
"Result: Cortisol is maintained within narrow limits",
"During stress: higher centres override negative feedback → ↑ cortisol",
]:
story.append(bullet(pt))
story.append(section("Other Examples"))
story.append(make_table(
["Axis","Negative Feedback"],
[
["HPT axis (thyroid)","T3/T4 inhibit TRH and TSH"],
["HPG axis (gonadal)","Oestrogen/testosterone inhibit GnRH and LH/FSH"],
["HPA axis (adrenal)","Cortisol inhibits CRH and ACTH"],
["GH axis","IGF-1 inhibits GHRH; GH stimulates somatostatin"],
["Insulin-glucagon","Insulin: ↑ glucose → ↑ insulin; ↑ insulin → ↓ glucose (direct negative feedback)"],
],col_widths=[5*cm,11.5*cm]))
story.append(section("Significance"))
for pt in [
"Maintains hormonal homeostasis – prevents excess or deficiency",
"Basis of interpretation of hormone tests (e.g., ↑ TSH + ↓ T4 = primary hypothyroidism)",
"Basis of suppression tests (e.g., dexamethasone suppression test for Cushing's)",
"Pharmacological steroids suppress HPA axis → adrenal atrophy; abrupt withdrawal → Addisonian crisis",
]:
story.append(bullet(pt))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q23 (Image 2) – ADDISONIAN CRISIS
# ═══════════════════════════════════════════════
story.append(q_heading("23 (Img2)", "Addisonian Crisis (Acute Adrenocortical Insufficiency)", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Addisonian crisis is a <b>life-threatening acute emergency</b> caused by "
"<b>sudden, severe deficiency of adrenocortical hormones</b> (particularly cortisol "
"and aldosterone), resulting in cardiovascular collapse, hypoglycaemia, and "
"electrolyte disturbances."))
story.append(section("Precipitating Factors"))
for pt in [
"Sudden <b>withdrawal of long-term corticosteroid therapy</b> (most common) – HPA axis suppressed",
"Infection/illness/surgery in a known Addison's patient who fails to increase dose ('sick day rules')",
"<b>Bilateral adrenal haemorrhage</b> – Waterhouse-Friderichsen syndrome (meningococcal septicaemia)",
"Bilateral adrenalectomy without adequate replacement",
"Pituitary apoplexy (acute ACTH deficiency → secondary crisis)",
]:
story.append(bullet(pt))
story.append(section("Clinical Features"))
story.append(make_table(
["Feature","Cause"],
[
["Severe hypotension / shock","↓ Aldosterone → Na⁺/water loss; ↓ Cortisol → ↓ vascular response to catecholamines"],
["Hypoglycaemia","↓ Cortisol → ↓ gluconeogenesis; ↓ glycogenolysis"],
["Hyponatraemia","↓ Aldosterone → Na⁺ wasting"],
["Hyperkalaemia","↓ Aldosterone → K⁺ retention → may cause arrhythmias"],
["Nausea, vomiting, abdominal pain","Non-specific GI manifestations of crisis"],
["Fever","Often due to precipitating infection"],
["Confusion, altered consciousness","Hypoglycaemia + shock"],
["Hyperpigmentation (if chronic)","Elevated ACTH (MSH activity)"],
],col_widths=[5*cm,11.5*cm]))
story.append(section("Management (Emergency)"))
for pt in [
"<b>Hydrocortisone 100 mg IV</b> immediately (stat) – do not delay for investigations",
"IV Normal saline (0.9%) for volume resuscitation – 1–2 L rapidly",
"IV Dextrose 50% or 10% for hypoglycaemia",
"Treat precipitating cause (e.g., antibiotics for infection)",
"Monitor electrolytes, glucose, BP continuously",
"Fludrocortisone added once oral intake resumes",
]:
story.append(bullet(pt))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q24 (Image 2) – HYPOTHALAMIC OBESITY
# ═══════════════════════════════════════════════
story.append(q_heading("24 (Img2)", "Hypothalamic Obesity", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Hypothalamic obesity is severe, refractory obesity resulting from "
"<b>damage to or dysfunction of the hypothalamic nuclei</b> controlling "
"appetite and energy balance, especially the <b>ventromedial hypothalamus (VMH – satiety centre)</b>."))
story.append(section("Hypothalamic Regulation of Food Intake (Sembulingam)"))
story.append(make_table(
["Centre","Location","Function","Effect if Destroyed"],
[
["Feeding centre (hunger centre)","Lateral hypothalamic area (LHA)","Stimulates eating","Anorexia → death from starvation"],
["Satiety centre","Ventromedial hypothalamus (VMH)","Inhibits eating when full","Hyperphagia → obesity"],
],col_widths=[4*cm,5*cm,4*cm,4*cm]))
story.append(section("Mechanism of Hypothalamic Obesity"))
for pt in [
"VMH/arcuate nucleus lesion → loss of satiety signalling → <b>uncontrolled hyperphagia</b>",
"Disruption of <b>leptin signalling pathway</b>: Leptin (from adipocytes) → ARC nucleus → POMC/CART neurons (anorexigenic) are not activated",
"↑ <b>NPY and AgRP</b> (orexigenic neuropeptides) – appetite drives unchecked",
"Autonomic dysfunction → parasympathetic excess → <b>hyperinsulinaemia</b> → promotes fat storage even with normal caloric intake",
"↓ Energy expenditure due to hypothalamic damage to thermogenic centres",
]:
story.append(bullet(pt))
story.append(section("Causes"))
for pt in [
"<b>Craniopharyngioma</b> – most common cause in children; compresses VMH",
"Hypothalamic tumours, trauma, surgery, encephalitis",
"Radiation therapy to the hypothalamic region",
]:
story.append(bullet(pt))
story.append(section("Features"))
for pt in [
"Severe, rapidly progressive, refractory obesity",
"Uncontrollable hyperphagia; rage when food is withheld",
"Associated hypothalamic dysfunction: DI, GH deficiency, hypogonadism, sleep disorders, temperature dysregulation",
]:
story.append(bullet(pt))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q25 – FACTORS AFFECTING INSULIN SECRETION
# ═══════════════════════════════════════════════
story.append(q_heading(25, "Factors Affecting Insulin Secretion", "SN"))
story.append(hr())
story.append(section("Normal Mechanism of Insulin Secretion"))
story.append(body("β-cells of pancreatic islets sense blood glucose via <b>GLUT2</b> transporters. "
"Glucose enters β-cell → metabolised → ↑ ATP/ADP ratio → "
"closes <b>ATP-sensitive K⁺ channels (K_ATP)</b> → membrane depolarisation → "
"opens <b>voltage-gated Ca²⁺ channels</b> → Ca²⁺ influx → "
"exocytosis of insulin granules."))
story.append(section("Factors Stimulating Insulin Secretion"))
story.append(make_table(
["Factor","Mechanism"],
[
["↑ Blood glucose (primary stimulus)","K_ATP closure → Ca²⁺ influx (see above); threshold ~100 mg/dL; maximal at ~300 mg/dL"],
["Amino acids (arginine, leucine, lysine)","Direct depolarisation of β-cells; synergise with glucose"],
["Free fatty acids (acute)","Metabolised in β-cells → ↑ ATP → K_ATP closure"],
["Incretin hormones: GIP, GLP-1","Released from gut after meal; ↑ cAMP in β-cells → ↑ Ca²⁺ release; account for ~50% of postprandial insulin"],
["Glucagon","Paracrine effect via ↑ cAMP"],
["Vagal (parasympathetic) stimulation","ACh → muscarinic receptors → IP3 → ↑ intracellular Ca²⁺"],
["Sulphonylureas (drug)","Directly close K_ATP channels → depolarisation"],
["Ketone bodies (mild)","Minor stimulatory effect"],
],col_widths=[5*cm,11.5*cm]))
story.append(section("Factors Inhibiting Insulin Secretion"))
story.append(make_table(
["Factor","Mechanism"],
[
["Hypoglycaemia (↓ blood glucose)","↓ ATP → K_ATP channels open → hyperpolarisation → no Ca²⁺ influx"],
["Somatostatin","↓ cAMP; ↓ Ca²⁺; paracrine from δ-cells"],
["Adrenaline / Sympathetic stimulation","α₂ adrenergic receptors → ↓ cAMP → inhibits exocytosis; β₂ → minor stimulation"],
["Galanin (neuropeptide)","Hyperpolarises β-cell"],
["Diazoxide","Opens K_ATP channels → hyperpolarisation"],
["Prolonged fasting / starvation","↓ Substrate availability"],
["Thiazide diuretics","Open K_ATP channels; reduce K⁺"],
],col_widths=[5*cm,11.5*cm]))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q26 – GROWTH HORMONE IS DIABETOGENIC
# ═══════════════════════════════════════════════
story.append(q_heading(26, "Growth Hormone is Diabetogenic", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Diabetogenic action of Growth Hormone refers to the ability of GH to "
"<b>raise blood glucose levels</b> and <b>antagonise the actions of insulin</b>, "
"thereby mimicking a diabetic state. Excess GH causes <b>secondary (type 2-like) "
"diabetes mellitus</b>."))
story.append(section("Mechanisms of Diabetogenic Action"))
story.append(make_table(
["Mechanism","Details"],
[
["↓ GLUT4 translocation",
"GH inhibits the PI3K-Akt pathway downstream of the insulin receptor → "
"GLUT4 vesicles do not translocate to plasma membrane of muscle and fat → "
"↓ glucose uptake → ↑ blood glucose"],
["↑ Hepatic glucose output",
"↑ Gluconeogenesis and ↑ glycogenolysis in liver → ↑ hepatic glucose production → ↑ blood glucose"],
["↑ Lipolysis",
"GH activates hormone-sensitive lipase → ↑ free fatty acids (FFA) in blood → "
"FFAs compete with glucose for oxidation (Randle cycle) → ↑ blood glucose"],
["↓ Insulin receptor signalling",
"GH induces phosphorylation of IRS-1 on serine residues → IRS-1 becomes less effective → "
"post-receptor insulin resistance"],
["↑ Counter-regulatory effect",
"GH is one of the four major counter-regulatory hormones (with glucagon, cortisol, epinephrine) "
"that oppose insulin, especially during fasting and hypoglycaemia"],
],col_widths=[5*cm,11.5*cm]))
story.append(section("Evidence for Diabetogenic Action"))
for pt in [
"In <b>acromegaly</b> (GH excess after epiphysis closure): 30–50% develop impaired glucose tolerance or overt diabetes mellitus",
"GH replacement therapy can precipitate hyperglycaemia in susceptible individuals",
"During physiological stress: ↑ GH contributes to stress hyperglycaemia",
"<b>Somogyi effect:</b> Nocturnal hypoglycaemia triggers GH (and other counter-regulatory hormones) release → rebound morning hyperglycaemia",
"<b>Dawn phenomenon:</b> Early morning ↑ GH secretion → insulin resistance → ↑ fasting glucose",
]:
story.append(bullet(pt))
story.append(note("Summary: GH is anti-insulin in its metabolic effects – it raises blood glucose, "
"promotes fat use, and inhibits peripheral glucose utilisation."))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q27 – SIADH
# ═══════════════════════════════════════════════
story.append(q_heading(27, "Syndrome of Inappropriate ADH Secretion (SIADH)", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("SIADH is a condition of <b>sustained, inappropriate secretion of ADH "
"(Vasopressin)</b> in the absence of normal osmotic or haemodynamic stimuli, "
"resulting in <b>euvolaemic hyponatraemia with inappropriately concentrated urine</b>."))
story.append(section("Normal ADH Physiology"))
for pt in [
"ADH is synthesised in <b>supraoptic and paraventricular nuclei</b> of hypothalamus; stored/released from posterior pituitary",
"Released when: ↑ plasma osmolality (>280 mOsm/kg) OR ↓ blood volume/pressure (baroreceptors)",
"Acts on <b>V2 receptors</b> in collecting duct → inserts <b>aquaporin-2 (AQP-2)</b> water channels → ↑ water reabsorption → concentrated urine",
]:
story.append(bullet(pt))
story.append(section("Causes of SIADH"))
story.append(make_table(
["Category","Examples"],
[
["CNS disorders","Meningitis, encephalitis, stroke, head injury, subarachnoid haemorrhage"],
["Pulmonary disorders","TB, pneumonia, lung abscess, mechanical ventilation"],
["Malignancy (ectopic ADH)","Small cell carcinoma of lung (most common), pancreatic carcinoma, lymphoma"],
["Drugs","Chlorpropamide, carbamazepine, SSRIs, cyclophosphamide, vincristine, NSAIDs"],
["Postoperative","Pain and nausea stimulate ADH release"],
],col_widths=[4.5*cm,12*cm]))
story.append(section("Diagnosis – Criteria (Sembulingam/Schwartz-Bartter)"))
for pt in [
"Hyponatraemia (<135 mEq/L) with low plasma osmolality (<280 mOsm/kg)",
"Inappropriately concentrated urine (Urine osmolality >100 mOsm/kg; usually >300)",
"Urine Na⁺ >20 mEq/L (kidneys continue to excrete Na⁺ despite hyponatraemia)",
"Normal or slightly increased ECF volume (<b>euvolaemia</b> – no oedema, no hypovolaemia)",
"Normal renal, adrenal, and thyroid function",
]:
story.append(bullet(pt))
story.append(section("Clinical Features"))
for pt in [
"<b>Mild (Na⁺ 130–135):</b> Nausea, malaise, headache",
"<b>Moderate (Na⁺ 125–130):</b> Vomiting, confusion, lethargy",
"<b>Severe (Na⁺ <125):</b> Seizures, coma, cerebral oedema, death",
]:
story.append(bullet(pt))
story.append(section("Treatment"))
for pt in [
"<b>Treat underlying cause</b>",
"<b>Fluid restriction</b> (800–1000 mL/day) – mainstay for mild-moderate",
"<b>Hypertonic saline (3% NaCl)</b> – only for severe/symptomatic hyponatraemia; correct Na⁺ slowly (max 10–12 mEq/L per 24h to avoid osmotic demyelination syndrome)",
"<b>Vaptans</b> (tolvaptan, conivaptan): V2 receptor antagonists – aquaretics (free water excretion without Na⁺ loss)",
]:
story.append(bullet(pt))
story.append(spacer(8))
# ═══════════════════════════════════════════════
# Q28 – STEATORRHOEA
# ═══════════════════════════════════════════════
story.append(q_heading(28, "Steatorrhoea", "SN"))
story.append(hr())
story.append(section("Definition"))
story.append(body("Steatorrhoea is the passage of <b>bulky, pale, greasy, foul-smelling stools "
"with excess fat content</b> (>7 g of fat/day on a 100 g fat diet). "
"It results from <b>malabsorption of dietary fat</b> in the small intestine."))
story.append(section("Normal Fat Absorption"))
for pt in [
"Dietary triglycerides (TG) → emulsified by <b>bile salts</b> (increase surface area)",
"Emulsified TG → hydrolysed by <b>pancreatic lipase</b> (with colipase) → "
"monoglycerides + fatty acids (FAs)",
"Products packaged with bile salts into <b>micelles</b>",
"Micelles deliver lipids to brush border of jejunal enterocytes",
"FAs and monoglycerides absorbed → re-esterified to TG → packaged into <b>chylomicrons</b> → "
"enter lacteals → thoracic duct → blood",
]:
story.append(bullet(pt))
story.append(section("Causes of Steatorrhoea"))
story.append(make_table(
["Mechanism","Examples"],
[
["Deficiency of pancreatic lipase","Chronic pancreatitis; cystic fibrosis; pancreatic carcinoma; total pancreatectomy"],
["Deficiency/absence of bile salts","Obstructive jaundice; ileal resection/disease (bile salt malabsorption); bacterial overgrowth (deconjugation)"],
["Mucosal disease (reduced absorptive surface)","Coeliac disease (gluten-sensitive enteropathy); Crohn's disease; Whipple's disease; short bowel syndrome"],
["Lymphatic obstruction","Intestinal lymphangiectasia; lymphoma; TB of mesenteric nodes"],
],col_widths=[5.5*cm,11*cm]))
story.append(section("Clinical Features"))
for pt in [
"<b>Stools:</b> Bulky, pale (clay-coloured), greasy, offensive, float on water (high fat content)",
"<b>Weight loss</b> and malnutrition (fat-soluble vitamins A, D, E, K deficiency)",
"<b>Vitamin K deficiency:</b> Easy bruising, bleeding tendency (↓ clotting factors II, VII, IX, X)",
"<b>Vitamin D deficiency:</b> Osteomalacia (bone pain, fractures)",
"<b>Vitamin A deficiency:</b> Night blindness",
"<b>Anaemia</b> (iron, folate, B12 deficiency) – especially in mucosal disease",
"<b>Oedema</b> – hypoproteinaemia from protein malabsorption",
]:
story.append(bullet(pt))
story.append(section("Diagnosis"))
for pt in [
"<b>Faecal fat estimation:</b> >7 g/day on a 100 g fat diet (gold standard)",
"<b>Sudan III stain</b> of faeces for fat globules",
"<b>Serum carotene</b> (low in fat malabsorption)",
"Specific tests: serum amylase/lipase, ERCP, faecal elastase (pancreatic), anti-TTG antibodies (coeliac)",
]:
story.append(bullet(pt))
story.append(section("Treatment"))
for pt in [
"Treat underlying cause",
"<b>Pancreatic enzyme supplements</b> (if exocrine pancreatic insufficiency)",
"<b>Fat-soluble vitamin supplements</b> (A, D, E, K)",
"Low-fat diet; medium-chain triglycerides (MCTs – absorbed directly into portal blood, do not need micelles)",
]:
story.append(bullet(pt))
# FOOTER
story.append(spacer(20))
story.append(hr())
story.append(Paragraph(
I("Answers compiled with reference to Sembulingam & Sembulingam – "
"Essentials of Medical Physiology (8th Ed.). "
"For university examination preparation only."),
note_style))
doc.build(story)
print("Endocrine PDF generated successfully!")
okk just give the answer