Ans these and arrange in sequence and make pdf which is according to topic how to write in exam
mkdir -p /home/daytona/workspace/blood-body-fluids-repro
~/blood-body-fluids-repro/make_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, ListFlowable, ListItem
)
from reportlab.lib.enums import TA_LEFT, TA_CENTER, TA_JUSTIFY
OUTPUT = "/home/daytona/workspace/blood-body-fluids-repro/Blood_Body_Fluids_Reproductive_Exam_Answers.pdf"
doc = SimpleDocTemplate(
OUTPUT,
pagesize=A4,
rightMargin=2*cm, leftMargin=2*cm,
topMargin=2*cm, bottomMargin=2*cm
)
styles = getSampleStyleSheet()
# Custom styles
title_style = ParagraphStyle(
'Title', parent=styles['Title'],
fontSize=18, textColor=colors.HexColor('#1a237e'),
spaceAfter=6, spaceBefore=0, alignment=TA_CENTER,
fontName='Helvetica-Bold'
)
chapter_style = ParagraphStyle(
'Chapter', parent=styles['Heading1'],
fontSize=15, textColor=colors.white,
backColor=colors.HexColor('#1a237e'),
spaceBefore=14, spaceAfter=6,
leftIndent=-0.5*cm, rightIndent=-0.5*cm,
leading=20, fontName='Helvetica-Bold',
borderPad=6
)
q_style = ParagraphStyle(
'Question', parent=styles['Normal'],
fontSize=11, textColor=colors.HexColor('#b71c1c'),
spaceBefore=12, spaceAfter=4,
fontName='Helvetica-Bold', leftIndent=0
)
marks_style = ParagraphStyle(
'Marks', parent=styles['Normal'],
fontSize=10, textColor=colors.HexColor('#4a4a4a'),
spaceBefore=0, spaceAfter=4,
fontName='Helvetica-Oblique'
)
body_style = ParagraphStyle(
'Body', parent=styles['Normal'],
fontSize=10.5, leading=15,
spaceBefore=3, spaceAfter=3,
alignment=TA_JUSTIFY, fontName='Helvetica'
)
subhead_style = ParagraphStyle(
'SubHead', parent=styles['Normal'],
fontSize=11, textColor=colors.HexColor('#1565c0'),
spaceBefore=8, spaceAfter=2,
fontName='Helvetica-Bold'
)
bullet_style = ParagraphStyle(
'Bullet', parent=styles['Normal'],
fontSize=10.5, leading=15,
spaceBefore=2, spaceAfter=2,
leftIndent=18, firstLineIndent=-12,
fontName='Helvetica'
)
note_style = ParagraphStyle(
'Note', parent=styles['Normal'],
fontSize=10, leading=14,
spaceBefore=4, spaceAfter=4,
backColor=colors.HexColor('#e8f5e9'),
leftIndent=8, rightIndent=4,
borderPad=4, fontName='Helvetica-Oblique',
textColor=colors.HexColor('#1b5e20')
)
tip_style = ParagraphStyle(
'Tip', parent=styles['Normal'],
fontSize=10, leading=14,
spaceBefore=4, spaceAfter=4,
backColor=colors.HexColor('#fff8e1'),
leftIndent=8, rightIndent=4,
fontName='Helvetica-Oblique',
textColor=colors.HexColor('#f57f17')
)
def Q(text, marks=""):
items = [Paragraph(text, q_style)]
if marks:
items.append(Paragraph(f"[{marks} marks]", marks_style))
return items
def H(text): return Paragraph(text, subhead_style)
def B(text): return Paragraph(text, body_style)
def Bul(text): return Paragraph(f"• {text}", bullet_style)
def Note(text): return Paragraph(f"📝 Exam Tip: {text}", note_style)
def Tip(text): return Paragraph(f"⚠ Remember: {text}", tip_style)
def HR(): return HRFlowable(width="100%", thickness=0.5, color=colors.HexColor('#bbdefb'), spaceAfter=4, spaceBefore=4)
def SP(h=6): return Spacer(1, h)
def chapter_box(text):
return Table(
[[Paragraph(text, chapter_style)]],
colWidths=[17*cm],
style=TableStyle([
('BACKGROUND', (0,0), (-1,-1), colors.HexColor('#1a237e')),
('TOPPADDING', (0,0), (-1,-1), 8),
('BOTTOMPADDING', (0,0), (-1,-1), 8),
('LEFTPADDING', (0,0), (-1,-1), 12),
])
)
story = []
# ============================================================
# COVER
# ============================================================
story.append(SP(40))
story.append(Paragraph("BLOOD & BODY FLUIDS", title_style))
story.append(Paragraph("and", ParagraphStyle('and', parent=styles['Normal'], fontSize=13, alignment=TA_CENTER, spaceBefore=2, spaceAfter=2)))
story.append(Paragraph("REPRODUCTIVE SYSTEM", title_style))
story.append(SP(10))
story.append(Paragraph("Exam-Ready Answers", ParagraphStyle('sub', parent=styles['Normal'], fontSize=13, alignment=TA_CENTER, textColor=colors.HexColor('#424242'))))
story.append(SP(6))
story.append(HRFlowable(width="60%", thickness=2, color=colors.HexColor('#1a237e'), hAlign='CENTER'))
story.append(SP(8))
story.append(Paragraph("Arranged Sequentially by Topic | Marks-Based Answers", ParagraphStyle('sub2', parent=styles['Normal'], fontSize=10, alignment=TA_CENTER, textColor=colors.HexColor('#757575'))))
story.append(PageBreak())
# ============================================================
# TOPIC 1: BLOOD & BODY FLUIDS
# ============================================================
story.append(chapter_box("TOPIC 1: BLOOD & BODY FLUIDS"))
story.append(SP(8))
# ---- Q1 ----
story += Q("Q1. Define Immunity. Write in brief about Acquired Immunity.", "4")
story.append(H("Definition of Immunity:"))
story.append(B("Immunity is the ability of the body to resist foreign organisms, toxins, or substances and to protect itself from disease. It involves specific and non-specific mechanisms."))
story.append(SP(4))
story.append(H("Acquired (Adaptive) Immunity:"))
story.append(B("Acquired immunity develops after birth in response to exposure to specific antigens. It is characterised by specificity, memory, and self/non-self discrimination."))
story.append(SP(3))
story.append(H("Two types:"))
story.append(Bul("<b>1. Humoral (B-cell mediated):</b> B lymphocytes are activated by antigens. They differentiate into plasma cells which secrete specific antibodies (immunoglobulins - IgG, IgM, IgA, IgD, IgE). Antibodies neutralise antigens, activate complement, and facilitate phagocytosis (opsonisation)."))
story.append(Bul("<b>2. Cell-mediated (T-cell mediated):</b> T lymphocytes (CD4+ helper and CD8+ cytotoxic) are activated by antigen-presenting cells. They destroy intracellular pathogens, virus-infected cells, and tumour cells."))
story.append(SP(3))
story.append(H("Memory:"))
story.append(B("After first exposure, memory B and T cells are formed. On re-exposure, a faster and stronger secondary immune response occurs."))
story.append(Note("Write: Definition → Types (Humoral + Cell-mediated) → Memory cells. For 4 marks cover all three heads briefly."))
story.append(HR())
# ---- Q2 ----
story += Q("Q2. Write a short note on Haemophilia.", "3")
story.append(H("Definition:"))
story.append(B("Haemophilia is a hereditary bleeding disorder caused by deficiency of clotting factors. It is X-linked recessive — predominantly affects males, females are carriers."))
story.append(H("Types:"))
story.append(Bul("<b>Haemophilia A (Classic):</b> Deficiency of Factor VIII (anti-haemophilic factor). Most common (80%)."))
story.append(Bul("<b>Haemophilia B (Christmas disease):</b> Deficiency of Factor IX."))
story.append(Bul("<b>Haemophilia C:</b> Deficiency of Factor XI (autosomal recessive)."))
story.append(H("Features:"))
story.append(Bul("Prolonged bleeding after minor cuts, spontaneous haemarthrosis (bleeding into joints)"))
story.append(Bul("Prolonged aPTT; normal PT and platelet count"))
story.append(H("Treatment:"))
story.append(Bul("Replacement of deficient factor concentrate (Factor VIII or IX)"))
story.append(Note("3-mark answer: Definition + Types (A, B) + One clinical feature. Keep concise."))
story.append(HR())
# ---- Q3 ----
story += Q("Q3. Write a short note on Rh Factor.", "3")
story.append(H("Definition:"))
story.append(B("The Rh (Rhesus) factor is a group of antigens present on the surface of RBCs, first discovered in Rhesus monkeys. The most important is the D antigen."))
story.append(H("Rh Positive (Rh+):"))
story.append(B("About 85% of humans have the D antigen on their RBCs → Rh positive."))
story.append(H("Rh Negative (Rh-):"))
story.append(B("About 15% lack the D antigen → Rh negative. Anti-Rh antibodies are NOT naturally present; they form only after exposure to Rh+ blood."))
story.append(H("Clinical Significance:"))
story.append(Bul("<b>Transfusion reaction:</b> If Rh- person receives Rh+ blood, anti-D antibodies form. Second transfusion causes severe haemolytic reaction."))
story.append(Bul("<b>Erythroblastosis fetalis:</b> Rh- mother carrying Rh+ fetus — sensitised mother makes anti-D IgG antibodies which cross placenta in next pregnancy and destroy fetal RBCs."))
story.append(Note("3-mark answer: Definition + Rh+/Rh- + Clinical importance (transfusion + erythroblastosis)."))
story.append(HR())
# ---- Q4 ----
story += Q("Q4. Write a short note on Innate Immunity.", "3")
story.append(H("Definition:"))
story.append(B("Innate (non-specific/natural) immunity is the first line of defence. It is present from birth, non-specific, has no immunological memory, and responds immediately."))
story.append(H("Components:"))
story.append(Bul("<b>Physical barriers:</b> Skin (intact), mucous membranes, cilia in respiratory tract"))
story.append(Bul("<b>Chemical barriers:</b> Lysozyme in tears/saliva, gastric acid (HCl), defensins in skin"))
story.append(Bul("<b>Cellular components:</b> Phagocytes (neutrophils, macrophages), Natural Killer (NK) cells, dendritic cells"))
story.append(Bul("<b>Soluble factors:</b> Complement proteins, interferons, cytokines (IL-1, TNF-α)"))
story.append(H("Features:"))
story.append(Bul("Non-specific: acts against all pathogens alike"))
story.append(Bul("Rapid response: within minutes to hours"))
story.append(Bul("No memory: same response on re-exposure"))
story.append(Note("3-mark answer: Definition + Components (Physical/Chemical/Cellular) + Key feature (non-specific, no memory)."))
story.append(HR())
# ---- Q5 ----
story += Q("Q5. What is Landsteiner's Law?", "3")
story.append(H("Statement:"))
story.append(B("Landsteiner's Law states: <i>If an agglutinogen (antigen) is present on the RBC, the corresponding agglutinin (antibody) is ABSENT in the plasma; and if the agglutinogen is absent, the corresponding agglutinin is PRESENT in the plasma.</i>"))
story.append(H("Application to ABO Blood Groups:"))
data = [
['Blood Group', 'Antigen on RBC', 'Antibody in Plasma'],
['A', 'A', 'Anti-B'],
['B', 'B', 'Anti-A'],
['AB', 'A and B', 'None (Universal Recipient)'],
['O', 'None', 'Anti-A and Anti-B (Universal Donor)'],
]
t = Table(data, colWidths=[4*cm, 5*cm, 7*cm])
t.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1a237e')),
('TEXTCOLOR', (0,0), (-1,0), colors.white),
('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
('FONTSIZE', (0,0), (-1,-1), 9.5),
('GRID', (0,0), (-1,-1), 0.5, colors.grey),
('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.white]),
('ALIGN', (0,0), (-1,-1), 'CENTER'),
('VALIGN', (0,0), (-1,-1), 'MIDDLE'),
('TOPPADDING', (0,0), (-1,-1), 5),
('BOTTOMPADDING', (0,0), (-1,-1), 5),
]))
story.append(SP(4))
story.append(t)
story.append(Note("3-mark answer: Law statement + Table of ABO groups with antigens/antibodies."))
story.append(HR())
# ---- Q6 ----
story += Q("Q6. Describe the Hazards of Mismatched Blood Transfusion.", "5")
story.append(H("Causes:"))
story.append(B("Occurs when incompatible blood (wrong ABO/Rh group) is transfused into a recipient whose plasma contains antibodies against the donor's RBC antigens."))
story.append(H("Immediate Haemolytic Reaction (Acute):"))
story.append(Bul("Antigen-antibody reaction causes agglutination of RBCs → haemolysis"))
story.append(Bul("<b>Symptoms:</b> Fever, chills, back/loin pain, flushing, tachycardia, hypotension"))
story.append(Bul("<b>Haemoglobinaemia:</b> Free Hb in blood → haemoglobinuria (dark/red urine)"))
story.append(Bul("<b>Renal failure:</b> Hb precipitates in renal tubules → acute tubular necrosis (ATN) → anuria"))
story.append(Bul("<b>Circulatory shock:</b> Due to toxic products from haemolysed cells"))
story.append(H("Delayed Haemolytic Reaction:"))
story.append(Bul("Occurs days to weeks later in previously sensitised individuals"))
story.append(Bul("Mild jaundice, anaemia, low-grade fever"))
story.append(H("Allergic/Febrile Reactions:"))
story.append(Bul("Urticaria, fever due to minor antigen incompatibility or white cell antigens (NHFTR)"))
story.append(H("Transmission of Infection:"))
story.append(Bul("Hepatitis B/C, HIV, malaria, CMV — if blood not properly screened"))
story.append(H("Circulatory Overload:"))
story.append(Bul("Rapid transfusion → pulmonary oedema, heart failure (especially in elderly/anaemic)"))
story.append(Note("5-mark answer: Mechanism → Immediate haemolytic reaction (symptoms + renal failure) → Delayed reaction → Other hazards. Use subheadings."))
story.append(HR())
# ---- Q7 ----
story += Q("Q7. Write the Functions of Plasma Proteins.", "3")
story.append(B("Plasma proteins (total ~6–8 g/dL) include Albumin, Globulins, and Fibrinogen."))
story.append(H("1. Albumin (3.5–5 g/dL) — most abundant:"))
story.append(Bul("Maintains oncotic (colloid osmotic) pressure → prevents oedema"))
story.append(Bul("Transport protein: binds bilirubin, fatty acids, hormones, drugs"))
story.append(H("2. Globulins (α, β, γ):"))
story.append(Bul("α and β globulins: transport lipids, metals (transferrin, caeruloplasmin), coagulation factors"))
story.append(Bul("γ-globulins (Immunoglobulins): antibodies — IgG, IgM, IgA, IgE, IgD"))
story.append(H("3. Fibrinogen:"))
story.append(Bul("Precursor of fibrin — essential for blood coagulation and clot formation"))
story.append(H("Other functions:"))
story.append(Bul("Buffering: help maintain blood pH"))
story.append(Bul("Viscosity: contribute to blood viscosity"))
story.append(Bul("Nutritional reserve: source of amino acids"))
story.append(Note("3-mark answer: Albumin (oncotic pressure + transport) → Globulins (antibodies) → Fibrinogen (clotting)."))
story.append(HR())
# ---- Q8 ----
story += Q("Q8. Define and Discuss the Mechanism of Immunity. Add a note on Immunodeficiency Syndrome.", "10")
story.append(H("Definition:"))
story.append(B("Immunity is the state of being resistant to infection or disease due to specific immune mechanisms. Karl Landsteiner and others established that immune responses involve highly specific antigen-antibody interactions."))
story.append(H("Types of Immunity:"))
story.append(Bul("<b>Innate (Non-specific):</b> First line, non-specific (see Q4 above)"))
story.append(Bul("<b>Acquired (Specific):</b> Develops after antigen exposure — humoral and cell-mediated"))
story.append(H("Mechanism of Acquired Immunity:"))
story.append(B("<b>Step 1 — Antigen Processing:</b> APCs (macrophages, dendritic cells) engulf antigen and present peptide fragments on MHC molecules."))
story.append(B("<b>Step 2 — Humoral (B-cell) Response:</b>"))
story.append(Bul("Antigen binds to B-cell receptor"))
story.append(Bul("CD4+ T-helper cells provide co-stimulation via IL-2, IL-4"))
story.append(Bul("B cells proliferate → plasma cells → secrete antibodies (IgM first, then IgG)"))
story.append(Bul("Antibody functions: neutralisation, opsonisation, complement activation, ADCC"))
story.append(B("<b>Step 3 — Cell-mediated (T-cell) Response:</b>"))
story.append(Bul("CD8+ cytotoxic T cells: kill virus-infected/tumour cells via perforin & granzymes"))
story.append(Bul("CD4+ T-helper cells: orchestrate immune response via cytokines"))
story.append(B("<b>Step 4 — Memory:</b> Long-lived memory B and T cells remain. Secondary response is faster, stronger (IgG predominant)."))
story.append(H("Complement System:"))
story.append(Bul("Classical pathway (antibody-triggered) and Alternate pathway (direct pathogen surface)"))
story.append(Bul("Final MAC (Membrane Attack Complex) lyses pathogens"))
story.append(SP(6))
story.append(H("NOTE: Immunodeficiency Syndrome (AIDS / HIV):"))
story.append(B("Acquired Immunodeficiency Syndrome (AIDS) is caused by the Human Immunodeficiency Virus (HIV) — a retrovirus (RNA virus with reverse transcriptase)."))
story.append(H("Pathogenesis:"))
story.append(Bul("HIV targets CD4+ T-helper lymphocytes (also macrophages, dendritic cells)"))
story.append(Bul("HIV uses CD4 receptor + CCR5/CXCR4 co-receptor to enter the cell"))
story.append(Bul("Reverse transcriptase converts viral RNA → DNA → integrates into host genome as provirus"))
story.append(Bul("Progressive destruction of CD4+ T cells → CD4 count falls (<200 cells/μL defines AIDS)"))
story.append(H("Clinical Features:"))
story.append(Bul("Opportunistic infections: Pneumocystis jirovecii pneumonia (PCP), CMV, toxoplasmosis, cryptococcal meningitis"))
story.append(Bul("Malignancies: Kaposi's sarcoma, Non-Hodgkin's lymphoma"))
story.append(Bul("Wasting syndrome, dementia"))
story.append(H("Transmission:"))
story.append(Bul("Sexual contact, blood/blood products, vertical (mother to child), needle sharing"))
story.append(H("Treatment:"))
story.append(Bul("Antiretroviral therapy (ART): Nucleoside RT inhibitors (NRTIs), Protease inhibitors, Integrase inhibitors"))
story.append(Note("10-mark answer: Definition → Types of immunity → Mechanism in detail (Steps 1-4) → Complement → Note on AIDS (pathogenesis + CD4 count + OI + Tx). Use all subheadings."))
story.append(HR())
# ---- Q9 ----
story += Q("Q9. Describe the Components of Blood. Add a note on Anaemia.", "8")
story.append(H("Components of Blood:"))
story.append(B("Total blood volume: ~5–6 L in adults. Blood = Plasma (55%) + Formed elements (45%)."))
story.append(H("A. Plasma (55%):"))
story.append(Bul("Water (91%), Proteins (7%): albumin, globulins, fibrinogen"))
story.append(Bul("Electrolytes: Na⁺, K⁺, Ca²⁺, Cl⁻"))
story.append(Bul("Organic substances: glucose, urea, amino acids, lipids, hormones"))
story.append(H("B. Formed Elements (45%):"))
story.append(Bul("<b>RBCs (Erythrocytes):</b> 4.5–5.5 million/μL (♂); 3.8–4.8 million/μL (♀). Biconcave disc, no nucleus, contain haemoglobin (Hb ~14–16 g/dL ♂). Function: O₂ and CO₂ transport."))
story.append(Bul("<b>WBCs (Leukocytes):</b> 4,000–11,000/μL. Types: Granulocytes (Neutrophils 60–70%, Eosinophils 2–4%, Basophils 0.5–1%), Agranulocytes (Monocytes 2–8%, Lymphocytes 20–30%). Function: immunity and defence."))
story.append(Bul("<b>Platelets (Thrombocytes):</b> 1.5–4 lakh/μL. Derived from megakaryocytes. Function: haemostasis and clotting."))
story.append(H("Haematocrit (PCV):"))
story.append(Bul("♂ = 45%; ♀ = 40%; Neonates = 55%"))
story.append(SP(6))
story.append(H("NOTE: Anaemia"))
story.append(B("Anaemia is defined as reduction in haemoglobin concentration below normal levels (Hb <13 g/dL in males; <12 g/dL in females)."))
story.append(H("Classification:"))
story.append(Bul("<b>By RBC size (MCV):</b>"))
story.append(Bul(" - Microcytic (MCV <80 fL): Iron deficiency anaemia, thalassaemia"))
story.append(Bul(" - Normocytic (MCV 80–100 fL): Aplastic anaemia, haemolytic anaemia, acute blood loss"))
story.append(Bul(" - Macrocytic (MCV >100 fL): B12/folate deficiency (megaloblastic anaemia)"))
story.append(H("Symptoms:"))
story.append(Bul("Fatigue, pallor, dyspnoea on exertion, palpitations, headache, koilonychia (iron deficiency)"))
story.append(Note("8-mark answer: Blood components (Plasma + RBC + WBC + Platelets with normal values) + Note on anaemia (definition + classification + symptoms). Use subheadings throughout."))
story.append(HR())
# ---- Q10 ----
story += Q("Q10. Write a short note on Blood Groups.", "3")
story.append(H("ABO System (Karl Landsteiner, 1900):"))
story.append(B("Blood groups are classified based on the presence or absence of specific antigens (agglutinogens) on RBCs and antibodies (agglutinins) in plasma."))
data2 = [
['Blood Group', 'Antigen (RBC)', 'Antibody (Plasma)', 'Can Donate To', 'Can Receive From'],
['A', 'A', 'Anti-B', 'A, AB', 'A, O'],
['B', 'B', 'Anti-A', 'B, AB', 'B, O'],
['AB', 'A & B', 'None', 'AB only', 'All (Universal Recipient)'],
['O', 'None', 'Anti-A & B', 'All (Universal Donor)', 'O only'],
]
t2 = Table(data2, colWidths=[2.4*cm, 3*cm, 3.6*cm, 4*cm, 4*cm])
t2.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,0), colors.HexColor('#283593')),
('TEXTCOLOR', (0,0), (-1,0), colors.white),
('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
('FONTSIZE', (0,0), (-1,-1), 8.5),
('GRID', (0,0), (-1,-1), 0.5, colors.grey),
('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.white]),
('ALIGN', (0,0), (-1,-1), 'CENTER'),
('VALIGN', (0,0), (-1,-1), 'MIDDLE'),
('TOPPADDING', (0,0), (-1,-1), 4),
('BOTTOMPADDING', (0,0), (-1,-1), 4),
]))
story.append(SP(4))
story.append(t2)
story.append(Note("3-mark answer: Definition + Table (ABO groups with antigens, antibodies, universal donor/recipient). Concise."))
story.append(HR())
# ---- Q11 ----
story += Q("Q11. Name the Blood Group Systems. Explain the basis for classification and add a note on Erythroblastosis Fetalis.", "10")
story.append(H("Blood Group Systems:"))
story.append(Bul("<b>ABO System</b> (Landsteiner, 1900): Based on A and B antigens. 4 groups: A, B, AB, O."))
story.append(Bul("<b>Rh System</b> (Landsteiner & Wiener, 1940): Based on D antigen. Rh+ (85%) or Rh- (15%)."))
story.append(Bul("<b>MNS System:</b> Based on M, N, S, s antigens."))
story.append(Bul("<b>Kell System:</b> K and k antigens — clinically significant in haemolytic reactions."))
story.append(Bul("<b>Duffy System:</b> Fy^a and Fy^b antigens."))
story.append(Bul("<b>Kidd System:</b> Jk^a and Jk^b antigens."))
story.append(Bul("<b>Lewis, Lutheran, Diego, Bombay (hh):)</b> Other systems."))
story.append(H("Basis for Classification:"))
story.append(Bul("Blood groups are classified based on the presence/absence of specific <b>glycoprotein or glycolipid antigens</b> on the RBC membrane."))
story.append(Bul("Each system is genetically controlled. ABO antigens are inherited in a codominant manner."))
story.append(Bul("Corresponding plasma antibodies (agglutinins) obey Landsteiner's Law."))
story.append(SP(6))
story.append(H("NOTE: Erythroblastosis Fetalis (Haemolytic Disease of Newborn - HDN)"))
story.append(H("Definition:"))
story.append(B("A haemolytic disease of the newborn caused by Rh incompatibility between an Rh- mother and Rh+ fetus."))
story.append(H("Mechanism:"))
story.append(Bul("1st pregnancy: Rh+ fetal RBCs enter maternal circulation at delivery → mother gets sensitised → forms anti-D IgG antibodies (primary response, mild)."))
story.append(Bul("2nd pregnancy: If fetus is again Rh+, maternal anti-D IgG crosses placenta → attacks fetal RBCs → agglutination + haemolysis."))
story.append(H("Effects on Fetus/Newborn:"))
story.append(Bul("Haemolytic anaemia (severe) → compensatory extramedullary haemopoiesis"))
story.append(Bul("Erythroblasts (immature RBCs) released into blood → <b>Erythroblastosis fetalis</b>"))
story.append(Bul("Jaundice (raised unconjugated bilirubin) → kernicterus (bilirubin deposits in brain → brain damage)"))
story.append(Bul("<b>Hydrops fetalis:</b> Severe anaemia → heart failure → generalised oedema → stillbirth"))
story.append(H("Prevention:"))
story.append(Bul("<b>Anti-D immunoglobulin (Rh immunoglobulin):</b> Given to Rh- mother within 72 hours of delivery of Rh+ baby (or after abortion/amniocentesis) → prevents sensitisation."))
story.append(H("Treatment:"))
story.append(Bul("Exchange transfusion in neonate, phototherapy for jaundice"))
story.append(Note("10-mark answer: List all blood group systems (ABO, Rh minimum) → Basis → Note on HDN: mechanism in order (1st/2nd pregnancy) + effects (anaemia + jaundice + hydrops) + prevention with anti-D."))
story.append(HR())
# ---- Q12 ----
story += Q("Q12. Functions of Platelets.", "5")
story.append(H("Platelets (Thrombocytes):"))
story.append(B("Platelets are small, anucleate disc-shaped cell fragments (~2–3 μm) derived from megakaryocytes in bone marrow. Normal count: 1.5–4 lakh/μL. Lifespan: 8–10 days."))
story.append(H("Functions:"))
story.append(Bul("<b>1. Haemostasis (Primary Plug Formation):</b>"))
story.append(Bul(" Vascular injury → subendothelial collagen exposed → platelets adhere via vWF + GPIb receptor (adhesion)"))
story.append(Bul(" Adhered platelets become activated → release ADP, thromboxane A₂ → recruit more platelets → aggregation → <b>primary platelet plug</b>"))
story.append(Bul("<b>2. Coagulation (Secondary Haemostasis):</b>"))
story.append(Bul(" Platelets provide phospholipid surface (platelet factor 3) for coagulation cascade → thrombin generation → fibrin clot"))
story.append(Bul("<b>3. Clot Retraction:</b>"))
story.append(Bul(" Thrombosthenin (actomyosin) in platelets contracts → clot retraction → wound edges pulled together"))
story.append(Bul("<b>4. Vascular Repair:</b>"))
story.append(Bul(" PDGF (Platelet-Derived Growth Factor) and VEGF released → stimulate endothelial cell proliferation and vessel repair"))
story.append(Bul("<b>5. Serotonin Release:</b>"))
story.append(Bul(" Serotonin (5-HT) released → vasoconstriction → reduces blood flow to injury site"))
story.append(H("Platelet Disorders:"))
story.append(Bul("Thrombocytopenia (<1.5 lakh): risk of bleeding. Thrombocytosis (>4 lakh): risk of thrombosis."))
story.append(Note("5-mark answer: Normal values → 5 functions (each with mechanism): Adhesion + Primary plug → Coagulation surface → Clot retraction → PDGF (repair) → Serotonin."))
story.append(HR())
# ---- Q13 ----
story += Q("Q13. Erythropoiesis — describe the process.", "5")
story.append(H("Definition:"))
story.append(B("Erythropoiesis is the process of formation and maturation of RBCs (erythrocytes). In adults it occurs in red bone marrow of flat bones (sternum, vertebrae, ilium)."))
story.append(H("Site:"))
story.append(Bul("Fetal: yolk sac (1st trimester) → liver/spleen (2nd trimester) → bone marrow (3rd trimester)"))
story.append(Bul("Adult: red bone marrow (axial skeleton)"))
story.append(H("Stages of RBC Maturation (Erythroblastic Island):"))
story.append(Bul("1. <b>Proerythroblast (Pronormoblast):</b> Large cell, large nucleus, basophilic cytoplasm (ribosomes). Hb synthesis begins."))
story.append(Bul("2. <b>Early Erythroblast (Basophilic normoblast):</b> Smaller, basophilic cytoplasm, Hb accumulates"))
story.append(Bul("3. <b>Intermediate Erythroblast (Polychromatic normoblast):</b> Mix of blue (ribosomes) and pink (Hb) — polychromasia"))
story.append(Bul("4. <b>Late Erythroblast (Orthochromatic normoblast):</b> Nucleus small, pyknotic; cytoplasm pink with Hb"))
story.append(Bul("5. <b>Reticulocyte:</b> Nucleus extruded; still has residual RNA (reticulum on cresyl blue staining); released into blood"))
story.append(Bul("6. <b>Mature RBC (Erythrocyte):</b> Biconcave disc, no nucleus, full of Hb"))
story.append(H("Regulation:"))
story.append(Bul("<b>Erythropoietin (EPO):</b> Produced by peritubular cells of kidney in response to hypoxia → stimulates erythroblast proliferation and differentiation"))
story.append(Bul("Requirements: Iron (for Hb synthesis), Vitamin B12 and Folic acid (for DNA synthesis)"))
story.append(H("Haemoglobin:"))
story.append(Bul("Normal adult Hb = HbA (α₂β₂ chains) | HbA₂ (α₂δ₂) | HbF (α₂γ₂)"))
story.append(Note("5-mark answer: Definition + Sites + 6 stages of maturation with changes in nucleus/cytoplasm + Regulation by EPO + Requirements (Iron, B12, Folate)."))
story.append(HR())
# ---- Q14 ----
story += Q("Q14. Describe the Clotting Mechanism by Intrinsic Pathway.", "4")
story.append(H("Overview:"))
story.append(B("Blood coagulation (clotting) involves a cascade of reactions that ultimately convert soluble fibrinogen to insoluble fibrin. There are two pathways: Intrinsic (contact) and Extrinsic (tissue factor), both converge at Factor X activation (common pathway)."))
story.append(H("Intrinsic Pathway (Contact Activation Pathway):"))
story.append(B("Triggered by exposure of blood to negatively charged surfaces (collagen, glass, kaolin). All factors are present within the blood itself."))
story.append(H("Steps:"))
story.append(Bul("1. <b>Contact phase:</b> Factor XII (Hageman factor) activated → Factor XIIa"))
story.append(Bul(" → Prekallikrein → Kallikrein (amplifies XIIa); HMWK acts as cofactor"))
story.append(Bul("2. Factor XIIa activates Factor XI → <b>Factor XIa</b>"))
story.append(Bul("3. Factor XIa + Ca²⁺ activates Factor IX → <b>Factor IXa</b>"))
story.append(Bul("4. <b>Tenase complex:</b> Factor IXa + Factor VIIIa + Ca²⁺ + Phospholipid → activates Factor X → <b>Factor Xa</b>"))
story.append(Bul(" (Factor VIII is the anti-haemophilic factor — deficient in Haemophilia A)"))
story.append(H("Common Pathway:"))
story.append(Bul("5. Factor Xa + Factor Va + Ca²⁺ + PL → <b>Prothrombinase complex</b> → Prothrombin (II) → <b>Thrombin (IIa)</b>"))
story.append(Bul("6. Thrombin cleaves Fibrinogen → <b>Fibrin monomers</b> → polymerise"))
story.append(Bul("7. Factor XIII (activated by thrombin) → cross-links fibrin → <b>stable fibrin clot</b>"))
story.append(H("Lab Test:"))
story.append(Bul("aPTT (Activated Partial Thromboplastin Time) tests intrinsic pathway (prolonged in Haemophilia A and B)"))
story.append(Note("4-mark answer: State intrinsic = contact pathway → XII→XI→IX→X (tenase) → common pathway: Xa→Thrombin→Fibrin. Mention Ca²⁺ at each step. Note aPTT tests intrinsic."))
story.append(HR())
# PAGE BREAK before Reproductive System
story.append(PageBreak())
# ============================================================
# TOPIC 2: REPRODUCTIVE SYSTEM
# ============================================================
story.append(chapter_box("TOPIC 2: REPRODUCTIVE SYSTEM"))
story.append(SP(8))
# ---- Q15 ----
story += Q("Q15. What is Ovulation? Describe the process.", "4")
story.append(H("Definition:"))
story.append(B("Ovulation is the process by which a mature Graafian follicle ruptures and releases a secondary oocyte from the ovary, usually on the 14th day of a 28-day menstrual cycle."))
story.append(H("Hormonal Trigger:"))
story.append(Bul("Rising oestrogen from growing follicle triggers a positive feedback on hypothalamus-pituitary → <b>LH surge</b> (mid-cycle) → LH surge triggers ovulation within 36–48 hours"))
story.append(Bul("FSH also peaks (smaller surge) simultaneously"))
story.append(H("Process:"))
story.append(Bul("1. Dominant follicle (Graafian follicle) grows to ~20 mm"))
story.append(Bul("2. LH surge → prostaglandins + proteolytic enzymes released"))
story.append(Bul("3. Follicular wall thins and ruptures at stigma"))
story.append(Bul("4. Secondary oocyte + corona radiata + cumulus oophorus expelled"))
story.append(Bul("5. Oocyte enters fallopian tube (ampullary region — site of fertilisation)"))
story.append(Bul("6. Ruptured follicle → Corpus Luteum (secretes progesterone + oestrogen)"))
story.append(H("Fate of corpus luteum:"))
story.append(Bul("If no fertilisation: corpus luteum degenerates → corpus albicans (after 14 days) → progesterone falls → menstruation"))
story.append(Bul("If fertilisation: hCG from trophoblast maintains corpus luteum until placenta takes over"))
story.append(Note("4-mark answer: Definition + LH surge trigger + 4–5 steps of ovulation + Fate of corpus luteum. Concise."))
story.append(HR())
# ---- Q16 ----
story += Q("Q16. Describe the Menstrual Cycle — Hormonal Changes and Ovarian Cycle.", "5")
story.append(H("Definition:"))
story.append(B("The menstrual cycle is a regular, cyclic series of physiological changes in the female reproductive system that prepares the uterus for implantation. Duration: 28 days (range 21–35 days)."))
story.append(H("A. Ovarian Cycle:"))
story.append(Bul("<b>Follicular Phase (Days 1–14):</b>"))
story.append(Bul(" - FSH (from anterior pituitary) stimulates growth of primordial follicles → primary → secondary → Graafian follicle"))
story.append(Bul(" - Dominant follicle secretes oestrogen (rising)"))
story.append(Bul(" - Day 14: LH surge → Ovulation"))
story.append(Bul("<b>Luteal Phase (Days 14–28):</b>"))
story.append(Bul(" - Ruptured follicle → Corpus Luteum under LH"))
story.append(Bul(" - Corpus Luteum secretes Progesterone (dominant) + Oestrogen"))
story.append(Bul(" - If no fertilisation: corpus luteum degenerates → hormone fall → menstruation"))
story.append(H("B. Uterine (Endometrial) Cycle:"))
story.append(Bul("<b>Menstrual phase (Days 1–5):</b> Progesterone/oestrogen fall → endometrium shed → bleeding"))
story.append(Bul("<b>Proliferative phase (Days 6–14):</b> Rising oestrogen → endometrium proliferates and thickens"))
story.append(Bul("<b>Secretory phase (Days 15–28):</b> Progesterone → glands become tortuous + secretory → prepares for implantation"))
story.append(H("C. Hormonal Changes Summary:"))
data3 = [
['Hormone', 'Phase', 'Action'],
['FSH', 'Follicular', 'Stimulates follicle growth'],
['Oestrogen', 'Rises in follicular', 'Endometrial proliferation; LH surge trigger'],
['LH (surge)', 'Day 14', 'Triggers ovulation'],
['Progesterone', 'Luteal', 'Secretory endometrium; maintains pregnancy'],
]
t3 = Table(data3, colWidths=[3.5*cm, 5*cm, 8.5*cm])
t3.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1a237e')),
('TEXTCOLOR', (0,0), (-1,0), colors.white),
('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
('FONTSIZE', (0,0), (-1,-1), 9.5),
('GRID', (0,0), (-1,-1), 0.5, colors.grey),
('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.white]),
('ALIGN', (0,0), (-1,-1), 'CENTER'),
('VALIGN', (0,0), (-1,-1), 'MIDDLE'),
('TOPPADDING', (0,0), (-1,-1), 5),
('BOTTOMPADDING', (0,0), (-1,-1), 5),
]))
story.append(SP(4))
story.append(t3)
story.append(Note("5-mark answer: Ovarian cycle (follicular + luteal) → Uterine cycle (3 phases) → Hormonal changes table. Use subheadings."))
story.append(HR())
# ---- Q17 ----
story += Q("Q17. Describe Spermatogenesis and draw a labelled diagram of mature sperm.", "5")
story.append(H("Definition:"))
story.append(B("Spermatogenesis is the process by which spermatogonia (diploid) differentiate into mature spermatozoa (haploid). It occurs in the seminiferous tubules of the testes. Begins at puberty; takes ~74 days."))
story.append(H("Hormonal Control:"))
story.append(Bul("FSH: acts on Sertoli cells → supports spermatogenesis, secretes ABP (androgen-binding protein)"))
story.append(Bul("LH (ICSH): acts on Leydig cells → testosterone secretion → essential for spermatogenesis"))
story.append(H("Stages:"))
story.append(Bul("<b>1. Spermatocytogenesis (Mitotic phase):</b>"))
story.append(Bul(" Spermatogonia (2n) → mitosis → Type A (stem cells) + Type B spermatogonia → Primary spermatocytes (2n)"))
story.append(Bul("<b>2. Meiosis I:</b>"))
story.append(Bul(" Primary spermatocyte (2n, 46 chromosomes) → 2 Secondary spermatocytes (n, 23 chromosomes)"))
story.append(Bul("<b>3. Meiosis II:</b>"))
story.append(Bul(" Each secondary spermatocyte → 2 Spermatids (n) — total 4 spermatids per primary spermatocyte"))
story.append(Bul("<b>4. Spermiogenesis (Maturation):</b>"))
story.append(Bul(" Spermatid (round) → spermatozoon: Golgi → acrosome; Centriole → axoneme (flagellum); Mitochondria → midpiece; Nucleus condenses"))
story.append(H("Labelled Diagram of Mature Sperm (Spermatozoon):"))
story.append(SP(4))
# ASCII diagram for sperm using Table
sperm_diagram = [
["STRUCTURE", "DESCRIPTION"],
["HEAD (4–5 μm)", "Contains condensed nucleus (haploid DNA)\nAcrosome cap (enzyme: hyaluronidase, acrosin)\n→ for penetrating zona pellucida"],
["NECK", "Short connecting region\nContains centriole (basal body)"],
["MIDPIECE (5–7 μm)", "Mitochondrial sheath (helix around axoneme)\n→ Generates ATP for motility"],
["PRINCIPAL PIECE / TAIL (45 μm)", "Axoneme (9+2 microtubule arrangement)\n→ Flagellar movement (motility)"],
["END PIECE", "Terminal segment of tail; no fibrous sheath"],
]
ts = Table(sperm_diagram, colWidths=[5*cm, 12*cm])
ts.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,0), colors.HexColor('#37474f')),
('TEXTCOLOR', (0,0), (-1,0), colors.white),
('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
('FONTNAME', (0,1), (0,-1), 'Helvetica-Bold'),
('FONTSIZE', (0,0), (-1,-1), 9.5),
('GRID', (0,0), (-1,-1), 0.5, colors.grey),
('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#eceff1'), colors.white]),
('ALIGN', (0,0), (-1,-1), 'LEFT'),
('VALIGN', (0,0), (-1,-1), 'MIDDLE'),
('TOPPADDING', (0,0), (-1,-1), 6),
('BOTTOMPADDING', (0,0), (-1,-1), 6),
('LEFTPADDING', (0,0), (-1,-1), 8),
]))
story.append(ts)
story.append(SP(4))
story.append(B("Total length of sperm: ~60 μm. Normal count: ≥15 million/mL (WHO). Motility: ≥40%."))
story.append(Note("5-mark answer: Definition + Stages (Spermatocytogenesis → Meiosis I → II → Spermiogenesis) + Labelled parts of sperm (Head/Acrosome, Midpiece/Mitochondria, Tail/Axoneme)."))
story.append(HR())
# ---- Q18 ----
story += Q("Q18. Describe Contraceptive Methods (including temporary methods).", "5")
story.append(H("Definition:"))
story.append(B("Contraception refers to methods used to prevent pregnancy by preventing fertilisation, implantation, or by other mechanisms."))
story.append(H("A. Temporary (Reversible) Methods:"))
story.append(Bul("<b>1. Barrier Methods:</b>"))
story.append(Bul(" - <b>Male condom:</b> Prevents sperm from reaching ovum; also prevents STI/HIV transmission"))
story.append(Bul(" - <b>Female condom (Femidom):</b> Intravaginal barrier"))
story.append(Bul(" - <b>Diaphragm/Cervical cap:</b> Covers cervix; used with spermicide"))
story.append(Bul("<b>2. Hormonal Methods:</b>"))
story.append(Bul(" - <b>Combined OCP (Oestrogen + Progestogen):</b> Inhibits ovulation (LH/FSH suppression), thickens cervical mucus, alters endometrium"))
story.append(Bul(" - <b>Progestogen-only pill (Mini-pill):</b> Mainly cervical mucus thickening"))
story.append(Bul(" - <b>Injectable (Depo-Provera):</b> Medroxyprogesterone acetate IM every 3 months"))
story.append(Bul(" - <b>Implant (Implanon/Nexplanon):</b> Etonogestrel subdermal rod; effective 3 years"))
story.append(Bul(" - <b>Patch / Vaginal ring (NuvaRing):</b> Combined hormones; weekly/monthly"))
story.append(Bul("<b>3. Intrauterine Devices (IUDs):</b>"))
story.append(Bul(" - <b>Copper IUD:</b> Spermicidal; prevents fertilisation and implantation; lasts 10 years"))
story.append(Bul(" - <b>Hormonal IUD (Mirena):</b> Levonorgestrel releases locally; thickens mucus; lasts 5 years"))
story.append(Bul("<b>4. Natural/Behavioural Methods:</b>"))
story.append(Bul(" - <b>Calendar/Rhythm method:</b> Avoid intercourse around ovulation (Day 10–17)"))
story.append(Bul(" - <b>Basal Body Temperature (BBT):</b> Temperature rises post-ovulation"))
story.append(Bul(" - <b>Lactational Amenorrhoea Method (LAM):</b> Breastfeeding → prolactin → suppresses GnRH → anovulation (effective 6 months if exclusive breastfeeding)"))
story.append(Bul("<b>5. Emergency Contraception:</b>"))
story.append(Bul(" - <b>Plan B (Levonorgestrel):</b> Within 72 hours of unprotected intercourse"))
story.append(Bul(" - <b>Ulipristal acetate (EllaOne):</b> Within 120 hours"))
story.append(Bul(" - <b>Copper IUD:</b> Within 5 days — most effective emergency method"))
story.append(H("B. Permanent (Irreversible) Methods:"))
story.append(Bul("<b>Vasectomy (Male):</b> Bilateral division of vas deferens — prevents sperm in ejaculate"))
story.append(Bul("<b>Tubectomy/Tubal ligation (Female):</b> Fallopian tubes cut/tied/cauterised — prevents egg-sperm meeting"))
story.append(Note("5-mark answer: Classify as Temporary (Barrier + Hormonal + IUD + Natural) and Permanent (Vasectomy + Tubectomy). Give mechanism for each. Include emergency contraception."))
story.append(HR())
# ---- Q19 ----
story += Q("Q19. Functions of the Placenta.", "4")
story.append(H("Definition:"))
story.append(B("The placenta is a temporary vascular organ formed during pregnancy (from trophoblast + decidua basalis) that connects the fetus to the uterine wall and provides nutrition, gas exchange, waste removal, and hormonal functions."))
story.append(H("Functions:"))
story.append(Bul("<b>1. Nutrition (Transport):</b>"))
story.append(Bul(" - Glucose (facilitated diffusion), amino acids (active transport), fatty acids, water, vitamins cross placenta to fetus"))
story.append(Bul("<b>2. Gaseous Exchange:</b>"))
story.append(Bul(" - O₂ passes from maternal blood → fetal blood (fetal Hb has higher O₂ affinity)"))
story.append(Bul(" - CO₂ passes from fetal → maternal blood for excretion"))
story.append(Bul("<b>3. Excretion:</b>"))
story.append(Bul(" - Fetal metabolic wastes (urea, creatinine, bilirubin) pass into maternal blood for excretion"))
story.append(Bul("<b>4. Endocrine (Hormonal) Function:</b>"))
story.append(Bul(" - <b>hCG (human Chorionic Gonadotrophin):</b> Maintains corpus luteum → progesterone; basis of pregnancy test"))
story.append(Bul(" - <b>hPL (human Placental Lactogen):</b> Insulin antagonist; promotes fetal growth; prepares breasts for lactation"))
story.append(Bul(" - <b>Progesterone:</b> Maintains decidua, prevents uterine contractions, prepares breasts"))
story.append(Bul(" - <b>Oestrogens (Oestriol):</b> Uterine growth; prepares breasts"))
story.append(Bul("<b>5. Immunological Function:</b>"))
story.append(Bul(" - Transfer of maternal IgG antibodies to fetus → passive immunity in neonate"))
story.append(Bul(" - Acts as barrier to many pathogens (but some cross: TORCH organisms — Toxoplasma, Rubella, CMV, Herpes, Syphilis)"))
story.append(Bul("<b>6. Barrier Function:</b>"))
story.append(Bul(" - Prevents mixing of maternal and fetal blood"))
story.append(Bul(" - Limits transfer of large molecules and most bacteria"))
story.append(Bul(" - Note: Drugs (thalidomide, alcohol), some viruses, and IgG cross the placenta"))
story.append(Note("4-mark answer: 6 functions: Nutrition + Gas exchange + Excretion + Hormones (hCG, hPL, Progesterone, Oestrogen) + IgG transfer + Barrier. Give brief mechanism for each."))
story.append(HR())
# Final page
story.append(SP(20))
story.append(HRFlowable(width="100%", thickness=2, color=colors.HexColor('#1a237e')))
story.append(SP(10))
story.append(Paragraph("EXAM STRATEGY SUMMARY", ParagraphStyle('final', parent=styles['Heading2'], alignment=TA_CENTER, textColor=colors.HexColor('#1a237e'))))
story.append(SP(6))
tips_data = [
["Marks", "Expected Length", "Key Strategy"],
["3", "~0.5 page", "Definition + 2–3 key points + 1 table or list"],
["4", "~0.75 page", "Definition + 3–4 structured points + small diagram if needed"],
["5", "~1 page", "Definition + all major subheadings + mechanism + clinical note"],
["8", "~1.5–2 pages", "Full answer: Intro + All headings + Diagram + Add-on note"],
["10", "~2–3 pages", "Complete answer: Definition + Types + Full mechanism + Diagram + Note on a related condition"],
]
tf = Table(tips_data, colWidths=[2.5*cm, 5*cm, 9.5*cm])
tf.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1a237e')),
('TEXTCOLOR', (0,0), (-1,0), colors.white),
('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
('FONTSIZE', (0,0), (-1,-1), 10),
('GRID', (0,0), (-1,-1), 0.5, colors.grey),
('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#e8eaf6'), colors.white]),
('ALIGN', (0,0), (0,-1), 'CENTER'),
('VALIGN', (0,0), (-1,-1), 'MIDDLE'),
('TOPPADDING', (0,0), (-1,-1), 6),
('BOTTOMPADDING', (0,0), (-1,-1), 6),
('LEFTPADDING', (0,0), (-1,-1), 8),
]))
story.append(tf)
doc.build(story)
print("PDF created successfully at", OUTPUT)
cd /home/daytona/workspace/blood-body-fluids-repro && python make_pdf.py 2>&1
ls -lh /home/daytona/workspace/blood-body-fluids-repro/
Blood Body Fluids Reproductive Exam Answers
PDF Document · PDF
| Q | Question | Marks |
|---|---|---|
| Q1 | Define immunity + acquired immunity | 4 |
| Q2 | Haemophilia (types, features, Tx) | 3 |
| Q3 | Rh factor | 3 |
| Q4 | Innate immunity | 3 |
| Q5 | Landsteiner's Law (with ABO table) | 3 |
| Q6 | Hazards of mismatched blood transfusion | 5 |
| Q7 | Functions of plasma proteins | 3 |
| Q8 | Mechanism of immunity + Immunodeficiency Syndrome (AIDS) | 10 |
| Q9 | Components of blood + Anaemia | 8 |
| Q10 | Blood groups | 3 |
| Q11 | Blood group systems + Erythroblastosis fetalis | 10 |
| Q12 | Functions of platelets | 5 |
| Q13 | Erythropoiesis (all 6 stages) | 5 |
| Q14 | Clotting by intrinsic pathway | 4 |
| Q | Question | Marks |
|---|---|---|
| Q15 | Ovulation | 4 |
| Q16 | Menstrual cycle (hormonal + ovarian) | 5 |
| Q17 | Spermatogenesis + labelled sperm diagram | 5 |
| Q18 | Contraceptive methods (temporary + permanent) | 5 |
| Q19 | Functions of placenta | 4 |
Why so much time where is pdf?
Blood Body Fluids Reproductive Exam Answers
PDF Document · PDF
Not downloading
ls -lh /home/daytona/workspace/blood-body-fluids-repro/ && python /home/daytona/…
Blood Body Fluids Reproductive Exam Answers
PDF Document · PDF
https://orris.care/chat/92973cfe-fc92-49d7-8eb6-8d8689fef119
cd /home/daytona/workspace/blood-body-fluids-repro && python -c " from pypdf imp…
cd /home/daytona/workspace/blood-body-fluids-repro && python /home/daytona/skill…
cd /home/daytona/workspace/blood-body-fluids-repro && python /home/daytona/skill…
Not downloading make into drive pdf mode
Blood Body Fluids Reproductive Exam Answers
PDF Document · PDF
orris.carehttps://orris.care/chat/92973cfe-fc92-49d7-8eb6-8d8689fef119
| Blood Group | Antigen (RBC) | Antibody (Plasma) |
|---|---|---|
| A | A | Anti-B |
| B | B | Anti-A |
| AB | A & B | None (Universal Recipient) |
| O | None | Anti-A & Anti-B (Universal Donor) |
| Group | Antigen | Antibody | Donate To | Receive From |
|---|---|---|---|---|
| A | A | Anti-B | A, AB | A, O |
| B | B | Anti-A | B, AB | B, O |
| AB | A & B | None | AB only | All (Universal Recipient) |
| O | None | Anti-A & B | All (Universal Donor) | O only |
| Hormone | Phase | Action |
|---|---|---|
| FSH | Follicular | Follicle growth |
| Oestrogen | Rising in follicular | Proliferation; LH surge trigger |
| LH (surge) | Day 14 | Triggers ovulation |
| Progesterone | Luteal | Secretory endometrium; maintains pregnancy |
| Part | Contents | Function |
|---|---|---|
| Head | Condensed nucleus (haploid DNA) + Acrosome (hyaluronidase, acrosin) | Penetrate zona pellucida |
| Neck | Centriole (basal body) | Initiates flagellar movement |
| Midpiece | Mitochondrial sheath around axoneme | ATP generation for motility |
| Principal piece/Tail | Axoneme (9+2 microtubules) | Flagellar motility |
| End piece | Terminal tail | Final segment |
Yes do it
ls /home/daytona/workspace/blood-body-fluids-repro/
~/blood-body-fluids-repro/make_docx.py
from docx import Document
from docx.shared import Pt, RGBColor, Cm, Inches
from docx.enum.text import WD_ALIGN_PARAGRAPH
from docx.oxml.ns import qn
from docx.oxml import OxmlElement
import copy
doc = Document()
# Page margins
for section in doc.sections:
section.top_margin = Cm(2)
section.bottom_margin = Cm(2)
section.left_margin = Cm(2.5)
section.right_margin = Cm(2.5)
def set_heading(text, level=1, color=(26, 35, 126)):
p = doc.add_heading(text, level=level)
p.alignment = WD_ALIGN_PARAGRAPH.LEFT
for run in p.runs:
run.font.color.rgb = RGBColor(*color)
return p
def add_body(text, bold=False, italic=False, size=11):
p = doc.add_paragraph()
p.paragraph_format.space_after = Pt(3)
run = p.add_run(text)
run.font.size = Pt(size)
run.bold = bold
run.italic = italic
return p
def add_bullet(text, bold_prefix=None):
p = doc.add_paragraph(style='List Bullet')
p.paragraph_format.space_after = Pt(2)
if bold_prefix:
run1 = p.add_run(bold_prefix)
run1.bold = True
run1.font.size = Pt(10.5)
run2 = p.add_run(text)
run2.font.size = Pt(10.5)
else:
run = p.add_run(text)
run.font.size = Pt(10.5)
return p
def add_tip(text):
p = doc.add_paragraph()
p.paragraph_format.left_indent = Cm(0.5)
p.paragraph_format.space_before = Pt(4)
p.paragraph_format.space_after = Pt(6)
run = p.add_run("📝 Exam Tip: " + text)
run.italic = True
run.font.size = Pt(10)
run.font.color.rgb = RGBColor(27, 94, 32)
return p
def add_table(headers, rows, col_widths=None):
table = doc.add_table(rows=1+len(rows), cols=len(headers))
table.style = 'Table Grid'
# header row
hdr = table.rows[0]
for i, h in enumerate(headers):
cell = hdr.cells[i]
cell.text = h
for para in cell.paragraphs:
for run in para.runs:
run.bold = True
run.font.color.rgb = RGBColor(255,255,255)
run.font.size = Pt(10)
# blue background
tc = cell._tc
tcPr = tc.get_or_add_tcPr()
shd = OxmlElement('w:shd')
shd.set(qn('w:val'), 'clear')
shd.set(qn('w:color'), 'auto')
shd.set(qn('w:fill'), '1A237E')
tcPr.append(shd)
for ri, row_data in enumerate(rows):
row = table.rows[ri+1]
for ci, cell_text in enumerate(row_data):
cell = row.cells[ci]
cell.text = cell_text
for para in cell.paragraphs:
for run in para.runs:
run.font.size = Pt(10)
doc.add_paragraph()
def divider():
p = doc.add_paragraph()
p.paragraph_format.space_before = Pt(2)
p.paragraph_format.space_after = Pt(4)
run = p.add_run("─" * 80)
run.font.size = Pt(8)
run.font.color.rgb = RGBColor(180,180,180)
# ============================================================
# COVER
# ============================================================
doc.add_paragraph()
title_p = doc.add_paragraph()
title_p.alignment = WD_ALIGN_PARAGRAPH.CENTER
r = title_p.add_run("BLOOD & BODY FLUIDS\nand\nREPRODUCTIVE SYSTEM")
r.font.size = Pt(22)
r.font.bold = True
r.font.color.rgb = RGBColor(26, 35, 126)
sub_p = doc.add_paragraph()
sub_p.alignment = WD_ALIGN_PARAGRAPH.CENTER
r2 = sub_p.add_run("Exam-Ready Answers | Arranged by Topic | Marks-Based Format")
r2.font.size = Pt(12)
r2.font.color.rgb = RGBColor(80,80,80)
r2.italic = True
doc.add_paragraph()
doc.add_page_break()
# ============================================================
# TOPIC 1
# ============================================================
set_heading("TOPIC 1: BLOOD & BODY FLUIDS", level=1, color=(26,35,126))
# Q1
set_heading("Q1. Define Immunity. Write in brief about Acquired Immunity. [4 marks]", level=2, color=(183,28,28))
set_heading("Definition:", level=3, color=(21,101,192))
add_body("Immunity is the ability of the body to resist foreign organisms, toxins, or substances and to protect itself from disease.")
set_heading("Acquired (Adaptive) Immunity:", level=3, color=(21,101,192))
add_body("Develops after birth in response to specific antigens. Characterised by specificity, memory, and self/non-self discrimination.")
set_heading("Two Types:", level=3, color=(21,101,192))
add_bullet("Humoral (B-cell mediated): ", "")
add_bullet("B cells activated by antigen → plasma cells → antibodies (IgG, IgM, IgA, IgD, IgE) → neutralise/opsonise antigens, activate complement")
add_bullet("Cell-mediated (T-cell): ", "")
add_bullet("CD8+ cytotoxic T cells kill infected/tumour cells via perforin & granzymes; CD4+ helper T cells coordinate via cytokines")
set_heading("Memory:", level=3, color=(21,101,192))
add_body("Memory B & T cells formed after 1st exposure → faster, stronger secondary response on re-exposure.")
add_tip("Write: Definition → Types (Humoral + Cell-mediated) → Memory cells. For 4 marks cover all three heads briefly.")
divider()
# Q2
set_heading("Q2. Write a short note on Haemophilia. [3 marks]", level=2, color=(183,28,28))
set_heading("Definition:", level=3, color=(21,101,192))
add_body("X-linked recessive hereditary bleeding disorder due to clotting factor deficiency. Predominantly affects males; females are carriers.")
set_heading("Types:", level=3, color=(21,101,192))
add_bullet("Haemophilia A: Factor VIII deficiency (anti-haemophilic factor) — most common (80%)")
add_bullet("Haemophilia B (Christmas disease): Factor IX deficiency")
add_bullet("Haemophilia C: Factor XI deficiency (autosomal recessive)")
set_heading("Features:", level=3, color=(21,101,192))
add_bullet("Prolonged bleeding after minor cuts; spontaneous haemarthrosis (joint bleeds)")
add_bullet("Prolonged aPTT; normal PT and platelet count")
set_heading("Treatment:", level=3, color=(21,101,192))
add_bullet("Replacement of deficient factor concentrate (Factor VIII or IX)")
add_tip("3-mark answer: Definition + Types (A, B) + Clinical feature + Treatment. Keep concise.")
divider()
# Q3
set_heading("Q3. Write a short note on Rh Factor. [3 marks]", level=2, color=(183,28,28))
set_heading("Definition:", level=3, color=(21,101,192))
add_body("The Rh (Rhesus) factor is a group of antigens on the RBC surface, first discovered in Rhesus monkeys. The most important antigen is the D antigen.")
add_bullet("Rh+ (85% of humans): D antigen present on RBCs")
add_bullet("Rh- (15%): D antigen absent; anti-D antibodies form ONLY after exposure to Rh+ blood")
set_heading("Clinical Significance:", level=3, color=(21,101,192))
add_bullet("Transfusion reaction: Rh- person receives Rh+ blood → sensitisation → haemolytic reaction on 2nd transfusion")
add_bullet("Erythroblastosis fetalis: Rh- mother carrying Rh+ fetus → maternal anti-D IgG crosses placenta → destroys fetal RBCs in subsequent pregnancy")
add_tip("3-mark answer: Definition + Rh+/Rh- (85%/15%) + Clinical importance (transfusion + erythroblastosis).")
divider()
# Q4
set_heading("Q4. Write a short note on Innate Immunity. [3 marks]", level=2, color=(183,28,28))
set_heading("Definition:", level=3, color=(21,101,192))
add_body("Innate (non-specific/natural) immunity is the FIRST line of defence. Present from birth, non-specific, no immunological memory, responds immediately.")
set_heading("Components:", level=3, color=(21,101,192))
add_bullet("Physical barriers: Skin (intact), mucous membranes, cilia in respiratory tract")
add_bullet("Chemical barriers: Lysozyme (tears/saliva), gastric acid (HCl), defensins in skin")
add_bullet("Cellular components: Neutrophils, macrophages, NK (Natural Killer) cells, dendritic cells")
add_bullet("Soluble factors: Complement proteins, interferons, cytokines (IL-1, TNF-α)")
set_heading("Key Features:", level=3, color=(21,101,192))
add_bullet("Non-specific: acts against all pathogens alike")
add_bullet("Rapid response: within minutes to hours")
add_bullet("No memory: same response on re-exposure")
add_tip("3-mark answer: Definition + Components (Physical/Chemical/Cellular) + Features (non-specific, no memory).")
divider()
# Q5
set_heading("Q5. What is Landsteiner's Law? [3 marks]", level=2, color=(183,28,28))
set_heading("Statement:", level=3, color=(21,101,192))
add_body("If an agglutinogen (antigen) is PRESENT on the RBC, the corresponding agglutinin (antibody) is ABSENT in the plasma; and if the agglutinogen is ABSENT, the corresponding agglutinin is PRESENT.")
set_heading("Application — ABO Blood Groups:", level=3, color=(21,101,192))
add_table(
["Blood Group", "Antigen on RBC", "Antibody in Plasma"],
[
["A", "A", "Anti-B"],
["B", "B", "Anti-A"],
["AB", "A and B", "None (Universal Recipient)"],
["O", "None", "Anti-A and Anti-B (Universal Donor)"],
]
)
add_tip("3-mark answer: Write the Law statement clearly + Table of ABO groups with antigens and antibodies.")
divider()
# Q6
set_heading("Q6. Describe the Hazards of Mismatched Blood Transfusion. [5 marks]", level=2, color=(183,28,28))
set_heading("Cause:", level=3, color=(21,101,192))
add_body("Incompatible blood (wrong ABO/Rh group) transfused → antigen-antibody reaction → agglutination + haemolysis of donor RBCs.")
set_heading("1. Immediate Haemolytic Reaction (Acute):", level=3, color=(21,101,192))
add_bullet("Fever, chills, back/loin pain, flushing, tachycardia, hypotension")
add_bullet("Haemoglobinaemia → haemoglobinuria (dark/red urine)")
add_bullet("Acute Renal Failure: Hb precipitates in tubules → ATN → anuria (most serious complication)")
add_bullet("Circulatory shock from toxic products")
set_heading("2. Delayed Haemolytic Reaction:", level=3, color=(21,101,192))
add_bullet("Days to weeks later; mild jaundice, anaemia, low-grade fever")
set_heading("3. Allergic/Febrile Reactions:", level=3, color=(21,101,192))
add_bullet("Urticaria, fever due to minor antigen incompatibility or white cell antigens (NHFTR)")
set_heading("4. Transmission of Infection:", level=3, color=(21,101,192))
add_bullet("Hepatitis B/C, HIV, malaria, CMV — if blood not properly screened")
set_heading("5. Circulatory Overload:", level=3, color=(21,101,192))
add_bullet("Rapid transfusion → pulmonary oedema, heart failure (especially in elderly/anaemic patients)")
add_tip("5-mark answer: Mechanism → Immediate (symptoms + renal failure) → Delayed → Allergic → Infection → Overload. Use subheadings.")
divider()
# Q7
set_heading("Q7. Functions of Plasma Proteins. [3 marks]", level=2, color=(183,28,28))
add_body("Plasma proteins (total ~6–8 g/dL): Albumin, Globulins, Fibrinogen.")
set_heading("1. Albumin (3.5–5 g/dL) — most abundant:", level=3, color=(21,101,192))
add_bullet("Maintains oncotic (colloid osmotic) pressure → prevents oedema")
add_bullet("Transport: binds bilirubin, fatty acids, hormones, drugs")
set_heading("2. Globulins (α, β, γ):", level=3, color=(21,101,192))
add_bullet("α and β: transport lipids, metals (transferrin, caeruloplasmin), coagulation factors")
add_bullet("γ-globulins (Immunoglobulins): antibodies — IgG, IgM, IgA, IgE, IgD")
set_heading("3. Fibrinogen:", level=3, color=(21,101,192))
add_bullet("Precursor of fibrin → essential for blood coagulation and clot formation")
set_heading("Other Functions:", level=3, color=(21,101,192))
add_bullet("Buffering: help maintain blood pH")
add_bullet("Viscosity: contribute to blood viscosity")
add_bullet("Nutritional reserve: source of amino acids")
add_tip("3-mark answer: Albumin (oncotic pressure + transport) → Globulins (antibodies) → Fibrinogen (clotting).")
divider()
# Q8
set_heading("Q8. Define & Discuss Mechanism of Immunity. Add a note on Immunodeficiency Syndrome. [10 marks]", level=2, color=(183,28,28))
set_heading("Definition:", level=3, color=(21,101,192))
add_body("Immunity is the state of being resistant to infection/disease due to specific immune mechanisms involving antigen-antibody interactions.")
set_heading("Types of Immunity:", level=3, color=(21,101,192))
add_bullet("Innate (Non-specific): First line, non-specific — see Q4")
add_bullet("Acquired (Specific): Develops after antigen exposure — humoral and cell-mediated")
set_heading("Mechanism of Acquired Immunity:", level=3, color=(21,101,192))
add_body("Step 1 — Antigen Processing:", bold=True)
add_bullet("APCs (macrophages, dendritic cells) engulf antigen → present peptide fragments on MHC molecules")
add_body("Step 2 — Humoral (B-cell) Response:", bold=True)
add_bullet("Antigen binds B-cell receptor → CD4+ T-helper provides IL-2, IL-4")
add_bullet("B cells proliferate → plasma cells → antibodies (IgM first, then IgG)")
add_bullet("Antibody functions: neutralisation, opsonisation, complement activation, ADCC")
add_body("Step 3 — Cell-mediated (T-cell) Response:", bold=True)
add_bullet("CD8+ cytotoxic T cells: kill virus-infected/tumour cells via perforin & granzymes")
add_bullet("CD4+ T-helper cells: orchestrate immune response via cytokines")
add_body("Step 4 — Memory:", bold=True)
add_bullet("Long-lived memory B and T cells remain → secondary response is faster, stronger (IgG predominant)")
set_heading("Complement System:", level=3, color=(21,101,192))
add_bullet("Classical pathway (antibody-triggered) + Alternate pathway (direct pathogen surface)")
add_bullet("Final MAC (Membrane Attack Complex) lyses pathogens")
doc.add_paragraph()
set_heading("NOTE: Immunodeficiency Syndrome (AIDS / HIV)", level=3, color=(21,101,192))
add_body("Caused by HIV (Human Immunodeficiency Virus) — a retrovirus (RNA virus with reverse transcriptase).")
set_heading("Pathogenesis:", level=3, color=(21,101,192))
add_bullet("HIV targets CD4+ T-helper lymphocytes (also macrophages, dendritic cells)")
add_bullet("HIV uses CD4 receptor + CCR5/CXCR4 co-receptor to enter cell")
add_bullet("Reverse transcriptase: RNA → DNA → integrates into host genome as provirus")
add_bullet("Progressive CD4+ destruction → CD4 <200/μL = AIDS")
set_heading("Clinical Features:", level=3, color=(21,101,192))
add_bullet("Opportunistic infections: PCP, CMV, toxoplasmosis, cryptococcal meningitis")
add_bullet("Malignancies: Kaposi's sarcoma, Non-Hodgkin's lymphoma")
add_bullet("Wasting syndrome, HIV dementia")
set_heading("Transmission:", level=3, color=(21,101,192))
add_bullet("Sexual contact, blood/blood products, vertical (mother-to-child), needle sharing")
set_heading("Treatment:", level=3, color=(21,101,192))
add_bullet("ART: NRTIs + Protease inhibitors + Integrase inhibitors")
add_tip("10-mark answer: Definition → Types → Mechanism (Steps 1–4) → Complement → AIDS (pathogenesis + CD4 + OIs + Tx). Use all subheadings.")
divider()
# Q9
set_heading("Q9. Describe Components of Blood. Add a note on Anaemia. [8 marks]", level=2, color=(183,28,28))
add_body("Total blood volume: ~5–6 L. Composition: Plasma (55%) + Formed elements (45%).")
set_heading("A. Plasma (55%):", level=3, color=(21,101,192))
add_bullet("Water (91%), Proteins (7%): albumin, globulins, fibrinogen")
add_bullet("Electrolytes: Na⁺, K⁺, Ca²⁺, Cl⁻")
add_bullet("Organic: glucose, urea, amino acids, lipids, hormones")
set_heading("B. Formed Elements (45%):", level=3, color=(21,101,192))
add_bullet("RBCs: 4.5–5.5 million/μL (♂); biconcave disc, no nucleus; Hb 14–16 g/dL; O₂/CO₂ transport")
add_bullet("WBCs: 4,000–11,000/μL; Neutrophils 60–70%, Lymphocytes 20–30%, Monocytes 2–8%, Eosinophils 2–4%, Basophils 0.5–1%")
add_bullet("Platelets: 1.5–4 lakh/μL; from megakaryocytes; haemostasis and clotting")
set_heading("Haematocrit (PCV):", level=3, color=(21,101,192))
add_bullet("♂ = 45%; ♀ = 40%; Neonates = 55%")
doc.add_paragraph()
set_heading("NOTE: Anaemia", level=3, color=(21,101,192))
add_body("Definition: Hb <13 g/dL (♂) or <12 g/dL (♀)")
set_heading("Classification by MCV:", level=3, color=(21,101,192))
add_bullet("Microcytic (<80 fL): Iron deficiency anaemia, thalassaemia")
add_bullet("Normocytic (80–100 fL): Aplastic, haemolytic anaemia, acute blood loss")
add_bullet("Macrocytic (>100 fL): B12/folate deficiency — megaloblastic anaemia")
set_heading("Symptoms:", level=3, color=(21,101,192))
add_bullet("Fatigue, pallor, dyspnoea on exertion, palpitations, headache, koilonychia (iron deficiency)")
add_tip("8-mark answer: Blood components (Plasma + RBC/WBC/Platelets with normal values) + Note on anaemia (definition + classification + symptoms). Use subheadings throughout.")
divider()
# Q10
set_heading("Q10. Write a short note on Blood Groups. [3 marks]", level=2, color=(183,28,28))
add_body("Blood groups are classified based on presence/absence of specific antigens (agglutinogens) on RBCs and antibodies (agglutinins) in plasma. (Landsteiner, 1900)")
add_table(
["Blood Group", "Antigen (RBC)", "Antibody (Plasma)", "Donate To", "Receive From"],
[
["A", "A", "Anti-B", "A, AB", "A, O"],
["B", "B", "Anti-A", "B, AB", "B, O"],
["AB", "A & B", "None", "AB only", "All (Universal Recipient)"],
["O", "None", "Anti-A & B", "All (Universal Donor)", "O only"],
]
)
add_tip("3-mark answer: Definition + Table with antigens, antibodies, universal donor (O) and recipient (AB).")
divider()
# Q11
set_heading("Q11. Name Blood Group Systems. Explain basis. Add note on Erythroblastosis Fetalis. [10 marks]", level=2, color=(183,28,28))
set_heading("Blood Group Systems:", level=3, color=(21,101,192))
add_bullet("ABO System (Landsteiner, 1900): A, B, AB, O — based on A & B antigens")
add_bullet("Rh System (Landsteiner & Wiener, 1940): D antigen — Rh+ (85%), Rh- (15%)")
add_bullet("MNS System: M, N, S, s antigens")
add_bullet("Kell System: K and k antigens — clinically significant in haemolytic reactions")
add_bullet("Duffy System: Fyᵃ and Fyᵇ antigens")
add_bullet("Kidd System: Jkᵃ and Jkᵇ antigens")
add_bullet("Others: Lewis, Lutheran, Diego, Bombay (hh)")
set_heading("Basis for Classification:", level=3, color=(21,101,192))
add_bullet("Based on specific glycoprotein/glycolipid antigens on RBC membrane")
add_bullet("Genetically controlled; ABO antigens inherited in codominant manner")
add_bullet("Corresponding plasma antibodies (agglutinins) obey Landsteiner's Law")
doc.add_paragraph()
set_heading("NOTE: Erythroblastosis Fetalis (Haemolytic Disease of Newborn)", level=3, color=(21,101,192))
add_body("Definition: Haemolytic disease of newborn due to Rh incompatibility — Rh- mother + Rh+ fetus.")
set_heading("Mechanism:", level=3, color=(21,101,192))
add_bullet("1st pregnancy: Rh+ fetal RBCs enter maternal circulation at delivery → mother sensitised → forms anti-D IgG (mild primary response)")
add_bullet("2nd pregnancy: If fetus again Rh+, maternal anti-D IgG crosses placenta → attacks fetal RBCs → agglutination + haemolysis")
set_heading("Effects on Fetus/Newborn:", level=3, color=(21,101,192))
add_bullet("Severe haemolytic anaemia → compensatory extramedullary haemopoiesis")
add_bullet("Erythroblasts released into blood → Erythroblastosis fetalis")
add_bullet("Jaundice (raised unconjugated bilirubin) → kernicterus (brain damage)")
add_bullet("Hydrops fetalis: Severe anaemia → heart failure → generalised oedema → possible stillbirth")
set_heading("Prevention:", level=3, color=(21,101,192))
add_bullet("Anti-D immunoglobulin: given to Rh- mother within 72 hours of delivery of Rh+ baby (or after abortion/amniocentesis)")
set_heading("Treatment:", level=3, color=(21,101,192))
add_bullet("Exchange transfusion in neonate; phototherapy for jaundice")
add_tip("10-mark answer: All blood group systems (min ABO + Rh) → Basis → HDN: mechanism (1st/2nd pregnancy) + effects (anaemia + jaundice + hydrops) + prevention with anti-D.")
divider()
# Q12
set_heading("Q12. Functions of Platelets. [5 marks]", level=2, color=(183,28,28))
add_body("Platelets (Thrombocytes): anucleate, ~2–3 μm, derived from megakaryocytes. Normal: 1.5–4 lakh/μL. Lifespan: 8–10 days.")
set_heading("1. Primary Plug Formation (Haemostasis):", level=3, color=(21,101,192))
add_bullet("Injury → collagen exposed → platelets adhere via vWF + GPIb receptor → activation → ADP + TXA₂ release → aggregation → primary platelet plug")
set_heading("2. Coagulation (Secondary Haemostasis):", level=3, color=(21,101,192))
add_bullet("Platelet factor 3 (phospholipid surface) → supports coagulation cascade → thrombin generation → fibrin clot")
set_heading("3. Clot Retraction:", level=3, color=(21,101,192))
add_bullet("Thrombosthenin (actomyosin) in platelets contracts → clot retraction → wound edges pulled together")
set_heading("4. Vascular Repair:", level=3, color=(21,101,192))
add_bullet("PDGF (Platelet-Derived Growth Factor) + VEGF released → stimulate endothelial proliferation and vessel repair")
set_heading("5. Vasoconstriction:", level=3, color=(21,101,192))
add_bullet("Serotonin (5-HT) released → vasoconstriction → reduces blood flow at injury site")
set_heading("Platelet Disorders:", level=3, color=(21,101,192))
add_bullet("Thrombocytopenia (<1.5 lakh): bleeding risk | Thrombocytosis (>4 lakh): thrombosis risk")
add_tip("5-mark answer: Normal values → 5 functions (Adhesion → Primary plug → Coagulation surface → Clot retraction → PDGF repair → Serotonin). Mechanism for each.")
divider()
# Q13
set_heading("Q13. Erythropoiesis. [5 marks]", level=2, color=(183,28,28))
set_heading("Definition:", level=3, color=(21,101,192))
add_body("Formation and maturation of RBCs (erythrocytes). In adults: red bone marrow of flat bones (sternum, vertebrae, ilium).")
set_heading("Sites:", level=3, color=(21,101,192))
add_bullet("Fetal: yolk sac (1st trimester) → liver/spleen (2nd trimester) → bone marrow (3rd trimester)")
add_bullet("Adult: red bone marrow (axial skeleton)")
set_heading("Stages of RBC Maturation:", level=3, color=(21,101,192))
add_table(
["Stage", "Key Features"],
[
["1. Proerythroblast", "Large cell, large nucleus, basophilic cytoplasm. Hb synthesis begins."],
["2. Basophilic normoblast", "Smaller; basophilic cytoplasm; Hb accumulates"],
["3. Polychromatic normoblast", "Mixed pink (Hb) + blue (ribosomes) cytoplasm — polychromasia"],
["4. Orthochromatic normoblast", "Small pyknotic nucleus; pink cytoplasm"],
["5. Reticulocyte", "Nucleus extruded; residual RNA (cresyl blue stain); released into blood"],
["6. Mature RBC", "Biconcave disc; no nucleus; full of Hb. Circulates 120 days."],
]
)
set_heading("Regulation:", level=3, color=(21,101,192))
add_bullet("Erythropoietin (EPO): produced by peritubular cells of kidney in response to hypoxia → stimulates erythroblast proliferation")
add_bullet("Requirements: Iron (Hb synthesis), Vitamin B12 + Folic acid (DNA synthesis)")
add_tip("5-mark answer: Definition + Sites + 6 stages of maturation (nucleus and cytoplasm changes) + Regulation by EPO + Requirements.")
divider()
# Q14
set_heading("Q14. Clotting Mechanism by Intrinsic Pathway. [4 marks]", level=2, color=(183,28,28))
set_heading("Overview:", level=3, color=(21,101,192))
add_body("Coagulation cascade converts soluble fibrinogen → insoluble fibrin. Intrinsic = contact activation pathway (triggered by negatively charged surfaces — collagen, glass). All factors within blood.")
set_heading("Steps of Intrinsic Pathway:", level=3, color=(21,101,192))
add_bullet("1. Contact phase: Factor XII (Hageman) → XIIa (HMWK + prekallikrein assist)")
add_bullet("2. XIIa → Factor XIa (+ Ca²⁺)")
add_bullet("3. XIa + Ca²⁺ → Factor IXa")
add_bullet("4. TENASE COMPLEX: IXa + VIIIa + Ca²⁺ + Phospholipid → Factor Xa")
add_bullet(" (Factor VIII = anti-haemophilic factor; deficient in Haemophilia A)")
set_heading("Common Pathway:", level=3, color=(21,101,192))
add_bullet("5. Prothrombinase complex: Xa + Va + Ca²⁺ + PL → Prothrombin → THROMBIN")
add_bullet("6. Thrombin: Fibrinogen → Fibrin monomers → polymerisation")
add_bullet("7. Factor XIIIa (activated by thrombin) → cross-linked STABLE FIBRIN CLOT")
set_heading("Lab Test:", level=3, color=(21,101,192))
add_bullet("aPTT (Activated Partial Thromboplastin Time) tests intrinsic pathway; prolonged in Haemophilia A & B")
add_tip("4-mark answer: State intrinsic = contact pathway → XII→XI→IX→X (tenase) → Common: Xa→Thrombin→Fibrin. Mention Ca²⁺. Note aPTT.")
divider()
doc.add_page_break()
# ============================================================
# TOPIC 2
# ============================================================
set_heading("TOPIC 2: REPRODUCTIVE SYSTEM", level=1, color=(26,35,126))
# Q15
set_heading("Q15. What is Ovulation? Describe the process. [4 marks]", level=2, color=(183,28,28))
set_heading("Definition:", level=3, color=(21,101,192))
add_body("Ovulation is the process by which a mature Graafian follicle ruptures and releases a secondary oocyte from the ovary — usually on Day 14 of a 28-day cycle.")
set_heading("Hormonal Trigger:", level=3, color=(21,101,192))
add_bullet("Rising oestrogen → positive feedback on hypothalamus-pituitary → LH SURGE (mid-cycle) → ovulation within 36–48 hours")
add_bullet("FSH also peaks (smaller surge) simultaneously")
set_heading("Process:", level=3, color=(21,101,192))
add_bullet("1. Dominant follicle (Graafian) grows to ~20 mm")
add_bullet("2. LH surge → prostaglandins + proteolytic enzymes released")
add_bullet("3. Follicular wall thins and ruptures at stigma")
add_bullet("4. Secondary oocyte + corona radiata + cumulus oophorus expelled")
add_bullet("5. Oocyte enters fallopian tube (fertilisation in ampulla)")
add_bullet("6. Ruptured follicle → Corpus Luteum (secretes progesterone + oestrogen)")
set_heading("Fate of Corpus Luteum:", level=3, color=(21,101,192))
add_bullet("No fertilisation: degenerates → corpus albicans → progesterone falls → menstruation")
add_bullet("Fertilisation: hCG from trophoblast maintains corpus luteum")
add_tip("4-mark answer: Definition + LH surge trigger + 4–5 steps + Fate of corpus luteum.")
divider()
# Q16
set_heading("Q16. Describe the Menstrual Cycle — Hormonal Changes and Ovarian Cycle. [5 marks]", level=2, color=(183,28,28))
add_body("Definition: Regular cyclic series of changes in female reproductive system preparing uterus for implantation. Duration: 28 days (range 21–35).")
set_heading("A. Ovarian Cycle:", level=3, color=(21,101,192))
add_bullet("Follicular Phase (Days 1–14): FSH → follicle growth → oestrogen rises → Day 14 LH surge → Ovulation")
add_bullet("Luteal Phase (Days 14–28): Corpus luteum → progesterone (dominant) + oestrogen → if no fertilisation → degeneration → hormone fall")
set_heading("B. Uterine (Endometrial) Cycle:", level=3, color=(21,101,192))
add_bullet("Menstrual phase (Days 1–5): Hormone fall → endometrium shed → bleeding")
add_bullet("Proliferative phase (Days 6–14): Rising oestrogen → endometrium thickens")
add_bullet("Secretory phase (Days 15–28): Progesterone → glands tortuous/secretory → ready for implantation")
set_heading("C. Hormonal Changes:", level=3, color=(21,101,192))
add_table(
["Hormone", "Phase", "Action"],
[
["FSH", "Follicular", "Stimulates follicle growth"],
["Oestrogen", "Rises in follicular phase", "Endometrial proliferation; triggers LH surge"],
["LH (surge)", "Day 14", "Triggers ovulation"],
["Progesterone", "Luteal", "Secretory endometrium; maintains early pregnancy"],
]
)
add_tip("5-mark answer: Ovarian cycle (follicular + luteal) → Uterine cycle (3 phases) → Hormonal changes table. Use all subheadings.")
divider()
# Q17
set_heading("Q17. Describe Spermatogenesis and draw a labelled diagram of mature sperm. [5 marks]", level=2, color=(183,28,28))
set_heading("Definition:", level=3, color=(21,101,192))
add_body("Process by which spermatogonia (diploid, 2n) differentiate into mature spermatozoa (haploid, n) in seminiferous tubules of testes. Begins at puberty; takes ~74 days.")
set_heading("Hormonal Control:", level=3, color=(21,101,192))
add_bullet("FSH → Sertoli cells → supports spermatogenesis; secretes ABP (androgen-binding protein)")
add_bullet("LH (ICSH) → Leydig cells → testosterone → essential for spermatogenesis")
set_heading("Stages:", level=3, color=(21,101,192))
add_bullet("1. Spermatocytogenesis (Mitosis): Spermatogonia (2n) → mitosis → Type A (stem cells) + Type B → Primary spermatocytes (2n)")
add_bullet("2. Meiosis I: Primary spermatocyte (2n) → 2 Secondary spermatocytes (n, 23 chr)")
add_bullet("3. Meiosis II: Each secondary spermatocyte → 2 Spermatids (n) — total 4 spermatids per primary spermatocyte")
add_bullet("4. Spermiogenesis: Spermatid → spermatozoon (Golgi → acrosome; centriole → axoneme; mitochondria → midpiece; nucleus condenses)")
set_heading("Labelled Parts of Mature Sperm:", level=3, color=(21,101,192))
add_table(
["Part", "Contents", "Function"],
[
["Head (4–5 μm)", "Condensed nucleus (haploid DNA)\nAcrosome cap (hyaluronidase, acrosin)", "Penetrate zona pellucida of ovum"],
["Neck", "Centriole (basal body)", "Initiates flagellar movement"],
["Midpiece (5–7 μm)", "Mitochondrial sheath around axoneme", "ATP generation for motility"],
["Principal piece/Tail (45 μm)", "Axoneme: 9+2 microtubule arrangement", "Flagellar motility"],
["End piece", "Terminal segment of tail", "Final tail segment"],
]
)
add_body("Normal count: ≥15 million/mL (WHO) | Motility: ≥40% | Total length: ~60 μm")
add_tip("5-mark answer: Definition + 4 stages (Spermatocytogenesis → Meiosis I → II → Spermiogenesis) + Labelled parts of sperm (Head/Acrosome, Midpiece/Mitochondria, Tail/Axoneme).")
divider()
# Q18
set_heading("Q18. Describe Contraceptive Methods (including temporary). [5 marks]", level=2, color=(183,28,28))
add_body("Contraception = methods used to prevent pregnancy by preventing fertilisation, implantation, or other mechanisms.")
set_heading("A. Temporary (Reversible) Methods:", level=3, color=(21,101,192))
add_bullet("1. Barrier: Male condom (also prevents STI/HIV); Female condom; Diaphragm + spermicide")
add_bullet("2. Hormonal:")
add_bullet(" Combined OCP (Oestrogen + Progestogen): inhibits ovulation (LH/FSH suppression) + thickens cervical mucus + alters endometrium")
add_bullet(" Progestogen-only pill (Mini-pill): mainly thickens cervical mucus")
add_bullet(" Injectable (Depo-Provera): medroxyprogesterone IM every 3 months")
add_bullet(" Implant (Nexplanon): etonogestrel subdermal rod; effective 3 years")
add_bullet("3. IUDs:")
add_bullet(" Copper IUD: spermicidal; prevents fertilisation + implantation; lasts 10 years")
add_bullet(" Hormonal IUD (Mirena): levonorgestrel; thickens mucus; lasts 5 years")
add_bullet("4. Natural/Behavioural:")
add_bullet(" Calendar/Rhythm method: avoid intercourse around Day 10–17")
add_bullet(" BBT (Basal Body Temperature): rises after ovulation")
add_bullet(" LAM (Lactational Amenorrhoea): exclusive breastfeeding → prolactin → suppresses GnRH → anovulation (effective 6 months)")
add_bullet("5. Emergency Contraception:")
add_bullet(" Levonorgestrel (Plan B): within 72 hours")
add_bullet(" Copper IUD: within 5 days — most effective emergency method")
set_heading("B. Permanent (Irreversible) Methods:", level=3, color=(21,101,192))
add_bullet("Vasectomy (Male): bilateral vas deferens division → no sperm in ejaculate")
add_bullet("Tubectomy/Tubal ligation (Female): fallopian tubes cut/tied/cauterised")
add_tip("5-mark answer: Classify Temporary (Barrier + Hormonal + IUD + Natural + Emergency) and Permanent (Vasectomy + Tubectomy). Give mechanism for each.")
divider()
# Q19
set_heading("Q19. Functions of the Placenta. [4 marks]", level=2, color=(183,28,28))
add_body("The placenta is a temporary vascular organ (from trophoblast + decidua basalis) connecting fetus to uterine wall.")
add_table(
["Function", "Details"],
[
["1. Nutrition", "Glucose (facilitated diffusion), amino acids (active transport), fatty acids, vitamins → fetus"],
["2. Gas Exchange", "O₂ maternal → fetal (fetal Hb has higher O₂ affinity); CO₂ fetal → maternal"],
["3. Excretion", "Urea, creatinine, bilirubin → maternal blood for excretion"],
["4. Hormones", "hCG (maintains corpus luteum; pregnancy test basis)\nhPL (insulin antagonist; fetal growth; breast prep)\nProgesterone (maintains decidua; prevents contractions)\nOestrogens (uterine growth; breast prep)"],
["5. Immune", "Transfers maternal IgG → passive immunity to neonate\nBarrier to most pathogens (TORCH organisms can cross)"],
["6. Barrier", "Prevents maternal/fetal blood mixing; limits large molecules\nNote: drugs (alcohol, thalidomide), IgG, some viruses DO cross"],
]
)
add_tip("4-mark answer: 6 functions — Nutrition + Gas exchange + Excretion + 4 Hormones (hCG, hPL, Progesterone, Oestrogen) + IgG transfer + Barrier. Brief mechanism for each.")
divider()
# EXAM STRATEGY
doc.add_page_break()
set_heading("EXAM STRATEGY SUMMARY", level=1, color=(26,35,126))
add_table(
["Marks", "Expected Length", "Key Strategy"],
[
["3", "~0.5 page", "Definition + 2–3 key points + 1 table or list"],
["4", "~0.75 page", "Definition + 3–4 structured points + small diagram if needed"],
["5", "~1 page", "Definition + all major subheadings + mechanism + clinical note"],
["8", "~1.5–2 pages", "Full answer: Intro + All headings + Diagram + Add-on note"],
["10", "~2–3 pages", "Complete: Definition + Types + Full mechanism + Diagram + Note on related condition"],
]
)
OUTPUT = "/home/daytona/workspace/blood-body-fluids-repro/Blood_Body_Fluids_Reproductive_Exam_Answers.docx"
doc.save(OUTPUT)
print("DOCX created at", OUTPUT)
cd /home/daytona/workspace/blood-body-fluids-repro && python make_docx.py 2>&1
pip install --user python-docx -q && python /home/daytona/workspace/blood-body-f…
# Try saving to /tmp first then copy cd /home/daytona/workspace/blood-body-fluid…
# Check permissions of workspace directory ls -la /home/daytona/workspace/blood-…
cd /home/daytona/workspace/blood-body-fluids-repro && python -c " import sys sys…
# Copy from /tmp to workspace using python open/write (binary copy) python3 -c "…
Exam Answers
Word Document · DOCX
Blood Body Fluids Reproductive Exam Answers
PDF Document · PDF
.docx file from the link above.docx file