We have to make a seminar a group of 15 people of microbiology on topic: vector borne infections and ectoparasite infestations. What should be the subtopics for the presentation and all details please suggest the whole flowchart what to do, Can u make a pdf of the presentation?
mkdir -p /home/daytona/workspace/seminar-vbi && echo "dir ready"
~/seminar-vbi/generate_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import inch, cm
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Table,
TableStyle, HRFlowable, PageBreak, KeepTogether)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY
from reportlab.platypus import ListFlowable, ListItem
OUTPUT = "/home/daytona/workspace/seminar-vbi/VBI_Seminar_Presentation.pdf"
doc = SimpleDocTemplate(
OUTPUT,
pagesize=A4,
rightMargin=2*cm, leftMargin=2*cm,
topMargin=2*cm, bottomMargin=2*cm,
title="Vector-Borne Infections & Ectoparasite Infestations – Seminar",
author="Microbiology Seminar Group",
subject="Medical Microbiology Seminar"
)
# ── Color palette ──────────────────────────────────────────────────────────────
DARK_BLUE = colors.HexColor("#1A3C5E")
MID_BLUE = colors.HexColor("#2E6DA4")
LIGHT_BLUE = colors.HexColor("#D6E8FA")
TEAL = colors.HexColor("#1B7A6E")
TEAL_LIGHT = colors.HexColor("#D0F0EC")
ORANGE = colors.HexColor("#C75B00")
ORANGE_LIGHT= colors.HexColor("#FDEBD0")
GREEN = colors.HexColor("#2D6A2D")
GREEN_LIGHT = colors.HexColor("#DFF0DF")
PURPLE = colors.HexColor("#5B2D8E")
PURPLE_LIGHT= colors.HexColor("#EDE0F8")
RED = colors.HexColor("#8B1A1A")
RED_LIGHT = colors.HexColor("#FAE0E0")
GREY_LIGHT = colors.HexColor("#F4F6F8")
GREY_MED = colors.HexColor("#BDC3C7")
WHITE = colors.white
# ── Styles ─────────────────────────────────────────────────────────────────────
styles = getSampleStyleSheet()
def S(name, **kwargs):
return ParagraphStyle(name, **kwargs)
COVER_TITLE = S("CoverTitle",
fontSize=26, leading=32, textColor=WHITE,
fontName="Helvetica-Bold", alignment=TA_CENTER, spaceAfter=8)
COVER_SUBTITLE = S("CoverSub",
fontSize=14, leading=18, textColor=colors.HexColor("#A8D8F0"),
fontName="Helvetica", alignment=TA_CENTER, spaceAfter=6)
COVER_META = S("CoverMeta",
fontSize=11, leading=14, textColor=colors.HexColor("#CCE5F5"),
fontName="Helvetica", alignment=TA_CENTER)
SECTION_HEAD = S("SectionHead",
fontSize=18, leading=22, textColor=WHITE,
fontName="Helvetica-Bold", alignment=TA_CENTER, spaceAfter=4)
H1 = S("H1",
fontSize=15, leading=20, textColor=DARK_BLUE,
fontName="Helvetica-Bold", spaceBefore=6, spaceAfter=4)
H2 = S("H2",
fontSize=12, leading=16, textColor=MID_BLUE,
fontName="Helvetica-Bold", spaceBefore=4, spaceAfter=3)
BODY = S("Body",
fontSize=10, leading=14, textColor=colors.black,
fontName="Helvetica", spaceAfter=3, alignment=TA_JUSTIFY)
BULLET = S("Bullet",
fontSize=10, leading=14, textColor=colors.HexColor("#1A1A1A"),
fontName="Helvetica", leftIndent=14, spaceBefore=1, spaceAfter=1,
bulletFontName="Helvetica", bulletFontSize=10)
CAPTION = S("Caption",
fontSize=8, leading=11, textColor=colors.HexColor("#555555"),
fontName="Helvetica-Oblique", alignment=TA_CENTER, spaceAfter=2)
TABLE_HEADER = S("TH",
fontSize=9, leading=12, textColor=WHITE,
fontName="Helvetica-Bold", alignment=TA_CENTER)
TABLE_CELL = S("TC",
fontSize=9, leading=12, textColor=colors.HexColor("#1A1A1A"),
fontName="Helvetica")
FLOWCHART_TITLE = S("FCTitle",
fontSize=11, leading=14, textColor=WHITE,
fontName="Helvetica-Bold", alignment=TA_CENTER)
FLOWCHART_BODY = S("FCBody",
fontSize=9, leading=12, textColor=WHITE,
fontName="Helvetica", alignment=TA_CENTER)
TEAL_HEAD = S("TealHead",
fontSize=13, leading=17, textColor=WHITE,
fontName="Helvetica-Bold", alignment=TA_CENTER)
NOTE = S("Note",
fontSize=9, leading=12, textColor=colors.HexColor("#555555"),
fontName="Helvetica-Oblique", spaceAfter=2)
# ── Helper builders ────────────────────────────────────────────────────────────
def colored_box_para(text, bg, text_style, pad=6, radius=4):
"""Single paragraph inside a colored rounded box via a 1-cell Table."""
t = Table([[Paragraph(text, text_style)]], colWidths=["100%"])
t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), bg),
("ROUNDEDCORNERS", [radius]),
("TOPPADDING", (0,0), (-1,-1), pad),
("BOTTOMPADDING", (0,0), (-1,-1), pad),
("LEFTPADDING", (0,0), (-1,-1), pad+2),
("RIGHTPADDING", (0,0), (-1,-1), pad+2),
]))
return t
def section_banner(text, bg=DARK_BLUE):
t = Table([[Paragraph(text, SECTION_HEAD)]], colWidths=["100%"])
t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), bg),
("TOPPADDING", (0,0), (-1,-1), 10),
("BOTTOMPADDING", (0,0), (-1,-1), 10),
("LEFTPADDING", (0,0), (-1,-1), 12),
("RIGHTPADDING", (0,0), (-1,-1), 12),
]))
return t
def bullets(items, style=BULLET, bullet="•"):
return [Paragraph(f"{bullet} {item}", style) for item in items]
def two_col_table(data, col_bg=LIGHT_BLUE, header_bg=MID_BLUE, col_widths=None):
"""Generic two-column data table with header row."""
if col_widths is None:
col_widths = [8*cm, 10*cm]
header = [Paragraph(c, TABLE_HEADER) for c in data[0]]
rows = [[Paragraph(str(c), TABLE_CELL) for c in row] for row in data[1:]]
t = Table([header]+rows, colWidths=col_widths, repeatRows=1)
style = TableStyle([
("BACKGROUND", (0,0), (-1,0), header_bg),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, col_bg]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 5),
("BOTTOMPADDING", (0,0), (-1,-1), 5),
("LEFTPADDING", (0,0), (-1,-1), 6),
("RIGHTPADDING", (0,0), (-1,-1), 6),
("VALIGN", (0,0), (-1,-1), "TOP"),
])
t.setStyle(style)
return t
def flow_arrow():
"""A simple downward-arrow row."""
t = Table([[Paragraph("▼", S("Arr", fontSize=16, textColor=GREY_MED,
alignment=TA_CENTER, fontName="Helvetica-Bold"))]])
t.setStyle(TableStyle([("TOPPADDING",(0,0),(-1,-1),0),
("BOTTOMPADDING",(0,0),(-1,-1),0),
("LEFTPADDING",(0,0),(-1,-1),0),
("RIGHTPADDING",(0,0),(-1,-1),0)]))
return t
def flowbox(title, body_lines, bg=MID_BLUE):
inner = [Paragraph(title, FLOWCHART_TITLE)]
for line in body_lines:
inner.append(Paragraph(line, FLOWCHART_BODY))
t = Table([inner], colWidths=["100%"])
t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), bg),
("TOPPADDING", (0,0), (-1,-1), 8),
("BOTTOMPADDING", (0,0), (-1,-1), 8),
("LEFTPADDING", (0,0), (-1,-1), 10),
("RIGHTPADDING", (0,0), (-1,-1), 10),
]))
return t
# ── Story builder ──────────────────────────────────────────────────────────────
story = []
W = 17*cm # usable page width
# ══════════════════════════════════════════════════════════════════════════════
# COVER PAGE
# ══════════════════════════════════════════════════════════════════════════════
cover_bg = Table(
[[Paragraph("MICROBIOLOGY SEMINAR", S("cs1", fontSize=11, leading=14,
textColor=colors.HexColor("#A8D8F0"), fontName="Helvetica",
alignment=TA_CENTER, spaceAfter=6))],
[Paragraph("Vector-Borne Infections &<br/>Ectoparasite Infestations",
COVER_TITLE)],
[Spacer(1, 0.3*cm)],
[HRFlowable(width="80%", thickness=1.5, color=colors.HexColor("#5EB8E8"),
hAlign="CENTER")],
[Spacer(1, 0.3*cm)],
[Paragraph("A Comprehensive Seminar for Microbiology Students", COVER_SUBTITLE)],
[Spacer(1, 0.5*cm)],
[Paragraph("Group of 15 Participants | Microbiology Department", COVER_META)],
[Paragraph("Date: July 2026", COVER_META)],
],
colWidths=[W]
)
cover_bg.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), DARK_BLUE),
("TOPPADDING", (0,0), (-1,-1), 22),
("BOTTOMPADDING", (0,0), (-1,-1), 22),
("LEFTPADDING", (0,0), (-1,-1), 20),
("RIGHTPADDING", (0,0), (-1,-1), 20),
]))
story.append(cover_bg)
story.append(Spacer(1, 0.6*cm))
# Quick info boxes
info_data = [
[Paragraph("👥 Group Size", S("ib", fontSize=10, fontName="Helvetica-Bold",
textColor=DARK_BLUE, alignment=TA_CENTER)),
Paragraph("⏱ Duration", S("ib2", fontSize=10, fontName="Helvetica-Bold",
textColor=DARK_BLUE, alignment=TA_CENTER)),
Paragraph("📚 Discipline", S("ib3", fontSize=10, fontName="Helvetica-Bold",
textColor=DARK_BLUE, alignment=TA_CENTER))],
[Paragraph("15 Participants", S("ibv", fontSize=12, fontName="Helvetica-Bold",
textColor=MID_BLUE, alignment=TA_CENTER)),
Paragraph("~90 Minutes", S("ibv2", fontSize=12, fontName="Helvetica-Bold",
textColor=MID_BLUE, alignment=TA_CENTER)),
Paragraph("Medical Microbiology", S("ibv3", fontSize=12, fontName="Helvetica-Bold",
textColor=MID_BLUE, alignment=TA_CENTER))],
]
info_t = Table(info_data, colWidths=[W/3]*3)
info_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), LIGHT_BLUE),
("GRID", (0,0), (-1,-1), 0.5, MID_BLUE),
("TOPPADDING", (0,0), (-1,-1), 7),
("BOTTOMPADDING", (0,0), (-1,-1), 7),
]))
story.append(info_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# TABLE OF CONTENTS
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("TABLE OF CONTENTS", MID_BLUE))
story.append(Spacer(1, 0.4*cm))
toc_items = [
("1", "Introduction & Definitions", "Concepts, terminology, public health relevance"),
("2", "Seminar Flowchart & Work Distribution", "Group roles, timeline, preparation guide"),
("3", "Vectors: Classification & Biology", "Mosquitoes, ticks, fleas, flies, mites, lice"),
("4", "Vector-Borne Viral Infections", "Dengue, Chikungunya, Zika, Yellow Fever, Japanese Encephalitis"),
("5", "Vector-Borne Bacterial Infections", "Rickettsia, Plague, Lyme disease, Typhus, Bartonella"),
("6", "Vector-Borne Protozoal Infections", "Malaria, Leishmaniasis, Trypanosomiasis, Babesiosis"),
("7", "Ectoparasite Infestations", "Scabies, Pediculosis, Myiasis, Tungiasis, Tick infestations"),
("8", "Diagnosis: Laboratory Approaches", "Microscopy, serology, PCR, culture, rapid tests"),
("9", "Treatment & Management", "Antiparasitic, antiviral, antibiotic strategies"),
("10","Prevention & Vector Control", "Integrated vector management, vaccines, chemoprophylaxis"),
("11","One Health & Emerging Threats", "Zoonotic links, climate change, AMR, global outbreaks"),
("12","Case Studies & MCQs", "Interactive clinical cases and self-assessment questions"),
("13","Summary & References", "Key takeaways, WHO/CDC guidelines, textbook citations"),
]
toc_data = [[Paragraph("<b>#</b>", TABLE_HEADER),
Paragraph("<b>Section</b>", TABLE_HEADER),
Paragraph("<b>Contents</b>", TABLE_HEADER)]]
for num, title, desc in toc_items:
toc_data.append([
Paragraph(num, S("toc_n", fontSize=10, fontName="Helvetica-Bold",
textColor=MID_BLUE, alignment=TA_CENTER)),
Paragraph(title, S("toc_t", fontSize=10, fontName="Helvetica-Bold",
textColor=DARK_BLUE)),
Paragraph(desc, S("toc_d", fontSize=9, fontName="Helvetica",
textColor=colors.HexColor("#444444"))),
])
toc_t = Table(toc_data, colWidths=[1.2*cm, 6.5*cm, 9.3*cm], repeatRows=1)
toc_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), DARK_BLUE),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, LIGHT_BLUE]),
("GRID", (0,0), (-1,-1), 0.3, GREY_MED),
("VALIGN", (0,0), (-1,-1), "TOP"),
("TOPPADDING", (0,0), (-1,-1), 5),
("BOTTOMPADDING", (0,0), (-1,-1), 5),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
]))
story.append(toc_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 1 – INTRODUCTION & DEFINITIONS
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 1: INTRODUCTION & DEFINITIONS"))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("What Are Vector-Borne Infections?", H1))
story.append(Paragraph(
"Vector-borne diseases (VBDs) are illnesses caused by pathogens (viruses, bacteria, "
"parasites) transmitted to humans via living organisms called vectors. Vectors are "
"primarily arthropods (insects, arachnids) that carry and transmit the pathogen while "
"feeding on blood. According to the WHO, VBDs account for <b>more than 17% of all "
"infectious diseases</b> and cause approximately 700,000 deaths annually worldwide.",
BODY))
story.append(Spacer(1, 0.2*cm))
def_data = [
[Paragraph("<b>Term</b>", TABLE_HEADER), Paragraph("<b>Definition</b>", TABLE_HEADER)],
[Paragraph("Vector", TABLE_CELL),
Paragraph("An organism (usually an arthropod) that transmits a pathogen from one host to another without itself becoming ill", TABLE_CELL)],
[Paragraph("Biological vector", TABLE_CELL),
Paragraph("Pathogen replicates or develops within the vector (e.g., Plasmodium in Anopheles mosquito)", TABLE_CELL)],
[Paragraph("Mechanical vector", TABLE_CELL),
Paragraph("Pathogen is carried externally without replication (e.g., housefly carrying Salmonella on its legs)", TABLE_CELL)],
[Paragraph("Ectoparasite", TABLE_CELL),
Paragraph("Parasites that live on the outer surface of the host (skin, hair) – lice, mites, fleas, ticks", TABLE_CELL)],
[Paragraph("Zoonosis", TABLE_CELL),
Paragraph("Disease transmitted from animals to humans; most VBDs are zoonoses with animal reservoirs", TABLE_CELL)],
[Paragraph("Reservoir host", TABLE_CELL),
Paragraph("An organism (often asymptomatic) that maintains the pathogen in nature", TABLE_CELL)],
[Paragraph("Infestation", TABLE_CELL),
Paragraph("Presence and multiplication of ectoparasites on the body surface (skin, hair, clothing)", TABLE_CELL)],
]
def_t = Table(def_data, colWidths=[4*cm, 13*cm], repeatRows=1)
def_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), TEAL),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, TEAL_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("VALIGN", (0,0), (-1,-1), "TOP"),
("TOPPADDING", (0,0), (-1,-1), 5),
("BOTTOMPADDING", (0,0), (-1,-1), 5),
("LEFTPADDING", (0,0), (-1,-1), 6),
("RIGHTPADDING", (0,0), (-1,-1), 6),
]))
story.append(def_t)
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Public Health Significance", H1))
story += bullets([
"<b>700,000+ deaths/year</b> globally from VBDs (WHO 2023)",
"Malaria: ~249 million cases, 608,000 deaths in 2022 (WHO Malaria Report 2023)",
"Dengue: 100–400 million infections/year in 100+ countries",
"Leishmaniasis: 1 billion people at risk; 30,000+ deaths/year",
"Scabies: 200 million people affected globally at any time",
"Climate change, urbanisation, and international travel are <b>expanding the geographic range</b> of vectors",
"Aedes albopictus (tiger mosquito) now established in 60+ countries outside its native range",
])
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 2 – SEMINAR FLOWCHART & WORK DISTRIBUTION
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 2: SEMINAR FLOWCHART & WORK DISTRIBUTION", TEAL))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Seminar Preparation Flowchart", H1))
story.append(Spacer(1, 0.2*cm))
fc_steps = [
(DARK_BLUE, "PHASE 1 – TOPIC ALLOCATION (Week 1, Day 1)",
["Divide 15 participants into 7 sub-groups (2 members each + 1 moderator)",
"Each sub-group assigned one major topic section",
"Moderator coordinates, ensures no overlap"]),
(MID_BLUE, "PHASE 2 – LITERATURE REVIEW (Week 1, Days 2–5)",
["Review WHO, CDC guidelines and standard microbiology textbooks",
"Collect epidemiological data, pathogen life cycles, clinical images",
"Each group prepares 5–7 slides + speaker notes"]),
(TEAL, "PHASE 3 – CONTENT CONSOLIDATION (Week 2, Days 1–2)",
["All sub-groups share drafts with moderator",
"Moderator reviews for consistency, accuracy, and flow",
"Peer feedback session; revisions completed"]),
(GREEN, "PHASE 4 – REHEARSAL (Week 2, Day 3)",
["Full dry-run presentation (60–70 minutes)",
"Each presenter timed (5–7 min per section)",
"Q&A simulation; MCQ bank finalized"]),
(ORANGE, "PHASE 5 – SEMINAR DAY (~90 minutes)",
["Opening (5 min): Moderator introduces topic",
"Core presentations (60 min): sections 3–11",
"Case studies & MCQs (15 min): interactive session",
"Q&A + Summary (10 min)"]),
]
for bg, title, lines in fc_steps:
story.append(flowbox(title, lines, bg))
story.append(flow_arrow())
story.append(Spacer(1, 0.2*cm))
story.append(Paragraph("Group Work Distribution (15 Members)", H1))
story.append(Spacer(1, 0.2*cm))
gwd_data = [
[Paragraph("<b>Sub-group</b>", TABLE_HEADER),
Paragraph("<b>Members</b>", TABLE_HEADER),
Paragraph("<b>Assigned Section</b>", TABLE_HEADER),
Paragraph("<b>Slides</b>", TABLE_HEADER)],
["G1 (2 members)", "Member 1, 2", "Intro + Definitions + Public Health", "5–6"],
["G2 (2 members)", "Member 3, 4", "Vectors: Biology & Classification", "5–6"],
["G3 (2 members)", "Member 5, 6", "Vector-Borne Viral Infections", "6–7"],
["G4 (2 members)", "Member 7, 8", "Vector-Borne Bacterial Infections", "6–7"],
["G5 (2 members)", "Member 9, 10", "Vector-Borne Protozoal Infections", "6–7"],
["G6 (2 members)", "Member 11, 12","Ectoparasite Infestations", "5–6"],
["G7 (2 members)", "Member 13, 14","Diagnosis, Treatment & Prevention", "5–6"],
["Moderator (1)", "Member 15", "Overall coordination, case studies, MCQs, Q&A", "4–5"],
]
col_widths = [3.5*cm, 3.5*cm, 7.5*cm, 2.5*cm]
gwd_t = Table(gwd_data, colWidths=col_widths, repeatRows=1)
gwd_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), DARK_BLUE),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, LIGHT_BLUE]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 5),
("BOTTOMPADDING", (0,0), (-1,-1), 5),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 9),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(gwd_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 3 – VECTORS: CLASSIFICATION & BIOLOGY
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 3: VECTORS – CLASSIFICATION & BIOLOGY", MID_BLUE))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Major Arthropod Vectors", H1))
story.append(Spacer(1, 0.2*cm))
vec_data = [
[Paragraph("<b>Vector</b>", TABLE_HEADER),
Paragraph("<b>Class/Order</b>", TABLE_HEADER),
Paragraph("<b>Diseases Transmitted</b>", TABLE_HEADER),
Paragraph("<b>Key Species</b>", TABLE_HEADER)],
["Mosquito", "Diptera",
"Malaria, Dengue, Zika, Chikungunya, Yellow Fever, JE, WNV, Filariasis",
"Anopheles, Aedes, Culex"],
["Tick", "Acari (Ixodida)",
"Lyme disease, RMSF, Ehrlichiosis, TBE, Babesiosis, Q fever",
"Ixodes, Dermacentor, Rhipicephalus"],
["Flea", "Siphonaptera",
"Plague (Y. pestis), Murine typhus, Dipylidium caninum",
"Xenopsylla cheopis, Pulex irritans"],
["Sandfly", "Diptera (Psychodidae)",
"Leishmaniasis, Sandfly fever, Bartonellosis",
"Phlebotomus, Lutzomyia"],
["Tsetse fly", "Diptera (Glossinidae)",
"African trypanosomiasis (sleeping sickness)",
"Glossina spp."],
["Reduviid bug","Hemiptera (Triatominae)",
"Chagas disease (American trypanosomiasis)",
"Triatoma, Rhodnius"],
["Louse", "Phthiraptera",
"Epidemic typhus, Trench fever, Relapsing fever (Borrelia recurrentis)",
"Pediculus humanus"],
["Mite", "Acari (various)",
"Scrub typhus, Rickettsial pox, Scabies",
"Leptotrombidium, Sarcoptes scabiei"],
["Blackfly", "Diptera (Simuliidae)",
"Onchocerciasis (river blindness)",
"Simulium spp."],
]
vec_t = Table(vec_data, colWidths=[3*cm, 3*cm, 7.5*cm, 3.5*cm], repeatRows=1)
vec_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), TEAL),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, TEAL_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8.5),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(vec_t)
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Transmission Mechanisms", H1))
story += bullets([
"<b>Inoculative transmission:</b> Pathogen injected with saliva during feeding (e.g., malaria, dengue)",
"<b>Regurgitative transmission:</b> Pathogen in midgut regurgitated during feeding (e.g., plague via flea)",
"<b>Contaminative transmission:</b> Feces deposited near bite; host scratches and introduces pathogen (e.g., Chagas disease, typhus)",
"<b>Direct penetration:</b> Larval forms penetrate skin (e.g., Schistosoma cercariae - not strictly vector-borne)",
"<b>Transovarial (vertical) transmission:</b> Pathogen passed from infected female to offspring (e.g., TBEV in ticks)",
"<b>Trans-stadial transmission:</b> Pathogen persists through tick developmental stages (larva → nymph → adult)",
])
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 4 – VECTOR-BORNE VIRAL INFECTIONS
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 4: VECTOR-BORNE VIRAL INFECTIONS", colors.HexColor("#8B1A1A")))
story.append(Spacer(1, 0.3*cm))
viral_data = [
[Paragraph("<b>Disease</b>", TABLE_HEADER),
Paragraph("<b>Virus / Family</b>", TABLE_HEADER),
Paragraph("<b>Vector</b>", TABLE_HEADER),
Paragraph("<b>Clinical Features</b>", TABLE_HEADER),
Paragraph("<b>Diagnosis</b>", TABLE_HEADER)],
["Dengue Fever",
"DENV 1–4 / Flaviviridae",
"Aedes aegypti, Ae. albopictus",
"High fever, severe headache, retro-orbital pain, rash, myalgia; DHF/DSS in severe cases",
"NS1 antigen, IgM/IgG ELISA, RT-PCR"],
["Chikungunya",
"CHIKV / Togaviridae",
"Aedes aegypti, Ae. albopictus",
"Acute fever, incapacitating polyarthralgia, rash; chronic arthritis may persist months",
"RT-PCR (acute), IgM ELISA (convalescent)"],
["Zika",
"ZIKV / Flaviviridae",
"Aedes spp.",
"Mild febrile illness; teratogenic – microcephaly in foetus; associated with Guillain-Barré",
"RT-PCR (serum/urine), IgM ELISA"],
["Yellow Fever",
"YFV / Flaviviridae",
"Aedes aegypti (urban), Haemagogus (jungle)",
"Fever, jaundice, haemorrhage, renal failure; case fatality 20–50% in severe form",
"RT-PCR, IgM, liver biopsy (Councilman bodies)"],
["Japanese Encephalitis",
"JEV / Flaviviridae",
"Culex tritaeniorhynchus",
"Asymptomatic mostly; encephalitis with fever, seizures, altered sensorium; 30% fatality",
"CSF IgM ELISA, MRI (thalamic lesions)"],
["West Nile Fever",
"WNV / Flaviviridae",
"Culex spp.",
"Fever, rash; neuroinvasive: encephalitis, meningitis, flaccid paralysis in elderly",
"IgM CSF/serum, RT-PCR, plaque reduction neutralisation"],
["Tick-Borne Encephalitis",
"TBEV / Flaviviridae",
"Ixodes ricinus, I. persulcatus",
"Biphasic illness: flu-like then neurological (encephalitis, meningitis)",
"IgM/IgG serology, RT-PCR (viremic phase)"],
["Kyasanur Forest Disease",
"KFDV / Flaviviridae",
"Haemaphysalis spinigera",
"Haemorrhagic fever; endemic to Karnataka, India; haemorrhage + neurological phase",
"RT-PCR, virus isolation, IgM ELISA"],
]
viral_t = Table(viral_data,
colWidths=[3*cm, 3.5*cm, 3*cm, 5*cm, 3.5*cm], repeatRows=1)
viral_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), RED),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, RED_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(viral_t)
story.append(Spacer(1, 0.3*cm))
story.append(colored_box_para(
"<b>Key Point:</b> All major arboviruses (dengue, Zika, chikungunya, YFV, JEV) belong to "
"Flaviviridae or Togaviridae. No specific antiviral therapy exists for most; "
"management is supportive. Vaccines are available for YFV, JEV, TBE, and dengue (CYD-TDV/TAK-003).",
LIGHT_BLUE, S("kp", fontSize=10, fontName="Helvetica", textColor=DARK_BLUE)))
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 5 – VECTOR-BORNE BACTERIAL INFECTIONS
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 5: VECTOR-BORNE BACTERIAL INFECTIONS", colors.HexColor("#5B2D0A")))
story.append(Spacer(1, 0.3*cm))
bact_data = [
[Paragraph("<b>Disease</b>", TABLE_HEADER),
Paragraph("<b>Organism</b>", TABLE_HEADER),
Paragraph("<b>Vector/Reservoir</b>", TABLE_HEADER),
Paragraph("<b>Clinical Features</b>", TABLE_HEADER),
Paragraph("<b>Treatment</b>", TABLE_HEADER)],
["Epidemic Typhus",
"Rickettsia prowazekii",
"Body louse (Pediculus humanus)",
"Sustained fever, severe headache, rash (centrifugal), delirium; Brill-Zinsser disease (recurrence)",
"Doxycycline 100 mg BD × 7–10 days"],
["Scrub Typhus",
"Orientia tsutsugamushi",
"Trombiculid mite (Leptotrombidium)",
"Eschar at bite site, fever, LAP, rash; encephalitis in severe cases",
"Doxycycline; azithromycin in pregnancy"],
["Rocky Mountain Spotted Fever",
"Rickettsia rickettsii",
"Dermacentor tick",
"Fever, rash (begins peripherally – palms/soles), thrombocytopenia; fatal if untreated",
"Doxycycline (DOC even in children)"],
["Murine Typhus",
"Rickettsia typhi",
"Rat flea (Xenopsylla cheopis)",
"Mild typhus-like illness; fever, headache, rash in 50%",
"Doxycycline or chloramphenicol"],
["Plague",
"Yersinia pestis",
"Rat flea; reservoir: rodents",
"Bubonic (bubo), pneumonic (most deadly), septicaemic forms; Black Death pathogen",
"Streptomycin (DOC); gentamicin, doxycycline, ciprofloxacin"],
["Lyme Disease",
"Borrelia burgdorferi",
"Ixodes tick; reservoir: deer, mice",
"Stage 1: erythema migrans; Stage 2: cardiac, neurological; Stage 3: chronic arthritis",
"Doxycycline (early); ceftriaxone (disseminated)"],
["Relapsing Fever",
"Borrelia recurrentis (louse-borne), B. hermsii (tick-borne)",
"Louse / soft tick",
"Recurrent febrile episodes, Jarisch-Herxheimer reaction on treatment",
"Doxycycline; erythromycin (pregnancy)"],
["Bartonellosis",
"Bartonella bacilliformis",
"Sandfly (Lutzomyia verrucarum)",
"Oroya fever (haemolytic anaemia) → verruga peruana (skin lesions)",
"Chloramphenicol (Oroya); rifampicin (verruga)"],
["Q Fever",
"Coxiella burnetii",
"Tick (Ixodes); inhalation from animals",
"Self-limiting fever, atypical pneumonia, hepatitis; chronic: endocarditis",
"Doxycycline; hydroxychloroquine + doxycycline (chronic)"],
]
bact_t = Table(bact_data,
colWidths=[3*cm, 3.5*cm, 3.5*cm, 4.5*cm, 3.5*cm], repeatRows=1)
bact_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), colors.HexColor("#5B2D0A")),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, ORANGE_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(bact_t)
story.append(Spacer(1, 0.3*cm))
story.append(colored_box_para(
"<b>Key Point:</b> Rickettsial diseases are obligate intracellular gram-negative bacteria. "
"Doxycycline is the drug of choice for virtually ALL rickettsial infections, including in children "
"(AAP/CDC recommendation). The Weil-Felix test (OX-19, OX-2, OX-K agglutination) is a classic "
"screening test but has poor sensitivity/specificity; IFA is the gold standard.",
ORANGE_LIGHT, S("kp2", fontSize=10, fontName="Helvetica", textColor=colors.HexColor("#4A1500"))))
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 6 – VECTOR-BORNE PROTOZOAL INFECTIONS
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 6: VECTOR-BORNE PROTOZOAL INFECTIONS", GREEN))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Malaria – The Big Picture", H1))
story.append(Spacer(1, 0.1*cm))
mal_data = [
[Paragraph("<b>Species</b>", TABLE_HEADER),
Paragraph("<b>Severity</b>", TABLE_HEADER),
Paragraph("<b>RBC Preference</b>", TABLE_HEADER),
Paragraph("<b>Relapse?</b>", TABLE_HEADER),
Paragraph("<b>Treatment</b>", TABLE_HEADER)],
["P. falciparum", "Most severe; cerebral malaria, ARDS, AKI", "All RBCs", "No (no hypnozoites)",
"Artemisinin-based combination therapy (ACT); IV artesunate for severe malaria"],
["P. vivax", "Moderate; benign tertian fever", "Reticulocytes", "Yes (hypnozoites → radical cure with primaquine)",
"Chloroquine + primaquine (G6PD screen first)"],
["P. ovale", "Mild; similar to vivax", "Reticulocytes", "Yes",
"Chloroquine + primaquine"],
["P. malariae", "Mild; quartan fever; nephrotic syndrome", "Old RBCs", "No (recrudescence)",
"Chloroquine"],
["P. knowlesi", "Zoonotic (macaques); severe in humans", "All RBCs", "No",
"Chloroquine (uncomplicated); ACT if complicated"],
]
mal_t = Table(mal_data, colWidths=[2.5*cm, 4*cm, 3*cm, 3*cm, 5*cm], repeatRows=1)
mal_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), GREEN),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, GREEN_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(mal_t)
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Other Protozoal Infections", H1))
story.append(Spacer(1, 0.1*cm))
proto_data = [
[Paragraph("<b>Disease</b>", TABLE_HEADER),
Paragraph("<b>Organism</b>", TABLE_HEADER),
Paragraph("<b>Vector</b>", TABLE_HEADER),
Paragraph("<b>Clinical Features</b>", TABLE_HEADER),
Paragraph("<b>Treatment</b>", TABLE_HEADER)],
["Visceral Leishmaniasis (Kala-azar)",
"Leishmania donovani",
"Phlebotomus (sandfly)",
"Prolonged fever, massive splenomegaly, pancytopenia, hypergammaglobulinaemia, skin darkening",
"Liposomal amphotericin B (DOC); miltefosine (oral)"],
["Cutaneous Leishmaniasis",
"L. tropica, L. major",
"Sandfly",
"Painless ulcer with raised indurated borders (volcano crater); self-healing in months to years",
"Sodium stibogluconate (SSG); intralesional antimonials"],
["Mucocutaneous Leishmaniasis",
"L. braziliensis",
"Lutzomyia (New World)",
"Destructive lesions of mouth, nose, pharynx; mutilating if untreated",
"SSG; miltefosine; amphotericin B"],
["African Sleeping Sickness",
"Trypanosoma brucei rhodesiense/gambiense",
"Tsetse fly (Glossina)",
"Stage 1: fever, LAP, chancre; Stage 2: CNS – sleep disorder, dementia, coma",
"Hemolymphatic: pentamidine (gambiense); CNS: melarsoprol; nifurtimox-eflornithine combo (NECT)"],
["Chagas Disease",
"Trypanosoma cruzi",
"Reduviid bug (kissing bug) – contaminative",
"Acute: Romaña sign, chagoma; Chronic: dilated cardiomyopathy, megacolon/megaoesophagus",
"Benznidazole; nifurtimox (acute phase – limited efficacy in chronic)"],
["Babesiosis",
"Babesia microti, B. divergens",
"Ixodes tick (same as Lyme)",
"Malaria-like febrile illness; intraerythrocytic ring forms; 'Maltese cross' tetrad",
"Atovaquone + azithromycin; clindamycin + quinine (severe)"],
]
proto_t = Table(proto_data, colWidths=[3*cm, 3.5*cm, 2.5*cm, 4.5*cm, 4*cm], repeatRows=1)
proto_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), colors.HexColor("#2D5A1B")),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, GREEN_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(proto_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 7 – ECTOPARASITE INFESTATIONS
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 7: ECTOPARASITE INFESTATIONS", PURPLE))
story.append(Spacer(1, 0.3*cm))
ecto_data = [
[Paragraph("<b>Infestation</b>", TABLE_HEADER),
Paragraph("<b>Causative Organism</b>", TABLE_HEADER),
Paragraph("<b>Mechanism</b>", TABLE_HEADER),
Paragraph("<b>Clinical Features</b>", TABLE_HEADER),
Paragraph("<b>Treatment</b>", TABLE_HEADER)],
["Scabies",
"Sarcoptes scabiei var. hominis",
"Female mite burrows into stratum corneum to lay eggs; sensitisation occurs",
"Intense nocturnal pruritus, burrows (interdigital, wrist, genitalia); Norwegian/crusted scabies in immunocompromised",
"Permethrin 5% cream (DOC); oral ivermectin 200 mcg/kg (crusted scabies or resistance)"],
["Head Lice (Pediculosis capitis)",
"Pediculus humanus capitis",
"Blood-sucking ectoparasite; eggs (nits) cemented to hair shaft",
"Scalp pruritus, excoriations; secondary bacterial infection; nits visible near scalp",
"Permethrin 1% or malathion 0.5% lotion; oral ivermectin for resistant cases; wet combing"],
["Body Lice (Pediculosis corporis)",
"Pediculus humanus corporis",
"Lice live in clothing seams; feeds on skin",
"Generalised pruritus, excoriations; vector for Rickettsia prowazekii, Borrelia recurrentis",
"Improved hygiene; permethrin on clothing; treat clothing/bedding (hot wash)"],
["Pubic Lice (Phthiriasis)",
"Phthirus pubis (crab louse)",
"STI; clings to coarse body hair in pubic region, axillae, eyelashes",
"Pruritus in pubic area, visible crab lice and nits; blue macules (maculae ceruleae)",
"Permethrin 1% or malathion 0.5%; petrolatum for eyelash infestation"],
["Myiasis",
"Larvae (maggots) of various flies: Dermatobia hominis (bot fly), Cochliomyia hominivorax (screwworm)",
"Fly deposits eggs on skin/wounds/orifices; larvae invade tissues",
"Furuncular myiasis (skin boil-like), wound myiasis, ophthalmomyiasis; occlusion technique to remove larvae",
"Surgical removal; occlusion with petroleum jelly to suffocate larvae; wound debridement"],
["Tungiasis (Sand Flea)",
"Tunga penetrans",
"Gravid female burrows into skin (usually feet)",
"White papule with dark central dot at pressure points; intense itching; secondary bacterial infection",
"Surgical removal with sterile needle; permethrin or ivermectin"],
["Tick Infestation",
"Ixodes, Dermacentor, Amblyomma spp.",
"Attach via capitulum; secrete cement and anticoagulant saliva",
"Local reaction; tick paralysis (salivary neurotoxin); vector for multiple systemic diseases",
"Mechanical removal with fine-tipped forceps; perpendicular pull; do not crush"],
["Demodicosis",
"Demodex folliculorum, D. brevis",
"Normal commensal; overgrowth causes disease in immunosuppressed/rosacea",
"Follicular papulopustules, rosacea-like inflammation, blepharitis",
"Topical metronidazole; ivermectin 1% cream; tea tree oil (lid margin)"],
]
ecto_t = Table(ecto_data,
colWidths=[2.8*cm, 3.5*cm, 3*cm, 4.2*cm, 4*cm], repeatRows=1)
ecto_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), PURPLE),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, PURPLE_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(ecto_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 8 – DIAGNOSIS
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 8: DIAGNOSIS – LABORATORY APPROACHES", TEAL))
story.append(Spacer(1, 0.3*cm))
diag_data = [
[Paragraph("<b>Method</b>", TABLE_HEADER),
Paragraph("<b>Use Cases</b>", TABLE_HEADER),
Paragraph("<b>Key Points</b>", TABLE_HEADER)],
["Peripheral blood smear (thick & thin)",
"Malaria, babesiosis, trypanosomiasis",
"Thick smear: high sensitivity; Thin smear: species ID. Giemsa stain. Gold standard for malaria."],
["Rapid Diagnostic Tests (RDTs)",
"Malaria (HRP-2 for P. falciparum; pLDH for vivax)",
"Point-of-care; results in 15–20 min; limited for non-falciparum species; pfhrp2/3 deletions affect HRP-2 RDT"],
["PCR / RT-PCR",
"Dengue, Zika, Chikungunya, malaria, Leishmania, Borrelia",
"Highest sensitivity/specificity; detects during window period; RT-PCR during viremic phase (days 1–5 for dengue)"],
["NS1 Antigen ELISA",
"Dengue (all 4 serotypes)",
"Detectable from day 1–9; sensitivity decreases after day 5; complement serology in later illness"],
["Weil-Felix Test",
"Rickettsial diseases (screening)",
"OX-19, OX-2: R. typhi/rickettsii; OX-K: scrub typhus. Poor sensitivity; use IFA to confirm."],
["Indirect Fluorescent Antibody (IFA)",
"Rickettsial diseases (gold standard)",
"Four-fold rise in titres between acute/convalescent sera confirms diagnosis; IgM appears by day 7–10"],
["Leishmanin skin test (Montenegro)",
"Cutaneous & mucocutaneous leishmaniasis",
"Positive in healed/chronic infection; negative in active VL (immunosuppression effect); not standardised globally"],
["rK39 RDT / ELISA",
"Visceral leishmaniasis",
"Sensitivity 93–100% in Indian subcontinent; lower in East Africa/Europe; remains positive post-cure"],
["Giemsa / Wright stain",
"Malaria, babesiosis, blood parasites",
"Babesia: no pigment, no merozoites in clusters, ring forms with dots, 'Maltese cross' tetrad pathognomonic"],
["Dark-field microscopy / Louse comb",
"Lice, nits confirmation",
"Direct visualization; nits fluoresce under Wood's lamp"],
["Skin scraping (mineral oil mount)",
"Scabies",
"Mite, eggs, or faecal pellets (scybala) confirm diagnosis; 10% KOH mount alternative"],
["CLIA/ELISA serology",
"Lyme disease (two-tier: ELISA + Western blot)",
"First-tier ELISA; positive/equivocal confirmed by Western blot (IgM: 2/3 bands; IgG: 5/10 bands – CDC criteria)"],
]
diag_t = Table(diag_data, colWidths=[4*cm, 5*cm, 8*cm], repeatRows=1)
diag_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), TEAL),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, TEAL_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(diag_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 9 – TREATMENT & MANAGEMENT
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 9: TREATMENT & MANAGEMENT", colors.HexColor("#5B2D8E")))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Drug Classes for Vector-Borne & Ectoparasite Conditions", H1))
story.append(Spacer(1, 0.2*cm))
tx_data = [
[Paragraph("<b>Drug / Class</b>", TABLE_HEADER),
Paragraph("<b>Mechanism</b>", TABLE_HEADER),
Paragraph("<b>Uses</b>", TABLE_HEADER),
Paragraph("<b>Key Adverse Effects</b>", TABLE_HEADER)],
["Artemisinin / ACT",
"Endoperoxide bridge generates free radicals in parasite",
"Falciparum malaria (1st line); IV artesunate for severe malaria",
"Neurotoxicity (high dose animal data); teratogenic in 1st trimester"],
["Chloroquine",
"Accumulates in parasite food vacuole; inhibits haem polymerisation",
"Vivax, ovale, malariae, knowlesi (where sensitive)",
"Retinopathy (long-term); prolonged QT; cardiomyopathy"],
["Primaquine",
"Generates oxidative stress; eliminates hypnozoites (liver stage)",
"Radical cure of vivax/ovale; causal prophylaxis",
"Haemolytic anaemia in G6PD deficiency (MUST screen first)"],
["Doxycycline",
"30S ribosome inhibitor (tetracycline class)",
"All rickettsial diseases; Lyme (early); malaria prophylaxis; Q fever",
"Photosensitivity; oesophagitis; avoid in pregnancy/children <8 yr (teeth staining) EXCEPT rickettsial emergencies"],
["Ivermectin",
"Glutamate-gated Cl- channel agonist → paralysis/death of parasite",
"Scabies (oral); onchocerciasis; strongyloidiasis; head lice (oral)",
"Mazzotti-like reaction (microfilaria); avoid in pregnancy (cat B); CNS toxicity"],
["Permethrin",
"Synthetic pyrethroid; Na+ channel disruption → neuronal hyperexcitation",
"Scabies (topical 5%); lice (topical 1%); clothing impregnation",
"Skin irritation; rare allergic reaction; generally safe in pregnancy"],
["Liposomal Amphotericin B",
"Binds ergosterol in Leishmania membrane → pore formation",
"Visceral leishmaniasis (DOC in India); cryptococcal meningitis",
"Infusion reactions; nephrotoxicity (less than conventional AmB); hypokalaemia"],
["Benznidazole",
"Nitro-reduction products damage DNA and proteins of T. cruzi",
"Chagas disease (acute phase; early indeterminate)",
"Rash, peripheral neuropathy, nausea; teratogenic"],
["Streptomycin / Gentamicin",
"30S ribosome inhibitor; aminoglycoside",
"Plague (Yersinia pestis); DOC is streptomycin",
"Ototoxicity; nephrotoxicity; vestibular damage"],
]
tx_t = Table(tx_data, colWidths=[3.5*cm, 4*cm, 5*cm, 5*cm], repeatRows=1)
tx_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), PURPLE),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, PURPLE_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(tx_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 10 – PREVENTION & VECTOR CONTROL
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 10: PREVENTION & VECTOR CONTROL", colors.HexColor("#1B5E20")))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Integrated Vector Management (IVM)", H1))
story += bullets([
"<b>Chemical control:</b> Indoor residual spraying (IRS) with DDT/pyrethroids; space spraying (fogging); larviciding (temephos, Bti)",
"<b>Biological control:</b> Larvivorous fish (Gambusia, Guppy); Bacillus thuringiensis israelensis (Bti) for mosquito larvae",
"<b>Genetic control:</b> Sterile insect technique (SIT); Wolbachia-infected mosquitoes reduce dengue transmission; OX513A sterile male Aedes release",
"<b>Environmental management:</b> Draining stagnant water; removing breeding sites; proper waste disposal; rain barrel covers",
"<b>Personal protection:</b> Insect repellents (DEET, picaridin, IR3535); permethrin-impregnated clothing; bed nets (LLINs)",
"<b>Long-lasting insecticidal nets (LLINs):</b> Cornerstone of malaria control; proven to reduce mortality in children under 5",
])
story.append(Spacer(1, 0.2*cm))
story.append(Paragraph("Available Vaccines (2026)", H1))
story.append(Spacer(1, 0.1*cm))
vax_data = [
[Paragraph("<b>Disease</b>", TABLE_HEADER),
Paragraph("<b>Vaccine</b>", TABLE_HEADER),
Paragraph("<b>Type</b>", TABLE_HEADER),
Paragraph("<b>Notes</b>", TABLE_HEADER)],
["Yellow Fever", "YF-Vax, Stamaril", "Live attenuated", "Single dose; lifelong protection; mandatory for travel to endemic areas"],
["Japanese Encephalitis", "IXIARO (SA14-14-2), JESPECT, IC51", "Inactivated / Live attenuated (SA14-14-2)", "2 doses; booster at 1 year; recommended for travellers to Asia"],
["Tick-Borne Encephalitis", "FSME-IMMUN, Encepur", "Inactivated", "3 doses primary; booster every 3–5 years"],
["Dengue", "Dengvaxia (CYD-TDV), QDENGA (TAK-003)", "Live recombinant chimeric", "Dengvaxia: only seropositive; QDENGA: approved in EU/UK/Indonesia (ages 4+)"],
["Malaria", "RTS,S/AS01E (Mosquirix), R21/Matrix-M", "Recombinant protein subunit", "WHO recommended (2021, 2023); 4 doses (3+1); 50–75% efficacy in children"],
["Lyme Disease", "VLA15 (Vanguard, PD-1M OA)", "Recombinant OspA", "Phase 3 trials (Pfizer/Valneva); FDA fast-tracked; expected 2026 approval"],
["Typhus / Plague", "None routinely available", "—", "Vaccines exist for military/lab use (plague: killed whole cell); not in routine schedule"],
["Leishmaniasis", "LEISH-F3 + GLA-SE (ClinTrials)", "Recombinant protein", "No licensed human vaccine yet; LeishTec approved for dogs in Brazil"],
]
vax_t = Table(vax_data, colWidths=[3*cm, 4*cm, 3.5*cm, 7*cm], repeatRows=1)
vax_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), colors.HexColor("#1B5E20")),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, GREEN_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(vax_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 11 – ONE HEALTH & EMERGING THREATS
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 11: ONE HEALTH & EMERGING THREATS", colors.HexColor("#4A148C")))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("One Health Framework", H1))
story.append(Paragraph(
"One Health recognises that the health of humans, animals, and the environment are deeply "
"interconnected. 75% of emerging infectious diseases are zoonotic. VBDs sit at this intersection: "
"the same pathogen cycles in animals and is delivered to humans by arthropod vectors. "
"Disrupting any link (animal reservoir, vector, human host) can interrupt transmission.",
BODY))
story.append(Spacer(1, 0.2*cm))
story.append(Paragraph("Key Emerging Threats (2024–2026)", H1))
story.append(Spacer(1, 0.1*cm))
emerge_data = [
[Paragraph("<b>Threat</b>", TABLE_HEADER),
Paragraph("<b>Key Concern</b>", TABLE_HEADER)],
["Dengue geographic expansion",
"European Aedes albopictus outbreaks (France, Italy 2023–24); >5 million cases in Americas in 2024 – highest ever"],
["Oropouche virus (OROV)",
"Emerging arbovirus (Bunyaviridae); midge/mosquito vector; sexual transmission reported 2024; vertical transmission → foetal death"],
["CCHF (Crimean-Congo HF)",
"Hyalomma tick; expanding into Southern Europe; CFR 10–40%; BSL-4 pathogen; limited therapeutic options (ribavirin)"],
["Insecticide resistance",
"Widespread pyrethroid resistance in Anopheles gambiae; kdr mutations; compromises LLIN and IRS efficacy"],
["Climate change",
"Higher temperatures and altered rainfall patterns expand Aedes, Anopheles, and tick habitats poleward and to higher altitudes"],
["Permethrin-resistant lice",
"Pediculosis capitis with 'super lice' (T917I, L925I kdr mutations) reported across North America and Europe; shifting to oral ivermectin"],
["AMR in vector-borne bacteria",
"Multidrug-resistant plague (Yersinia pestis) case – Madagascar 2019; doxycycline resistance in Orientia tsutsugamushi strains"],
["Malaria vaccine roll-out",
"R21 and RTS,S WHO recommendation; implementation in 25 sub-Saharan African countries by 2026"],
]
em_t = Table(emerge_data, colWidths=[5*cm, 12*cm], repeatRows=1)
em_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), colors.HexColor("#4A148C")),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, PURPLE_LIGHT]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 5),
("BOTTOMPADDING", (0,0), (-1,-1), 5),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 9),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(em_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 12 – CASE STUDIES & MCQs
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 12: CASE STUDIES & MCQs", MID_BLUE))
story.append(Spacer(1, 0.3*cm))
def case_box(num, scenario, question, options, answer):
content = [
Paragraph(f"CASE {num}", S(f"ct{num}", fontSize=11, fontName="Helvetica-Bold",
textColor=DARK_BLUE)),
Spacer(1, 3),
Paragraph(f"<b>Scenario:</b> {scenario}", BODY),
Spacer(1, 3),
Paragraph(f"<b>Question:</b> {question}", BODY),
Spacer(1, 3),
]
for opt in options:
content.append(Paragraph(opt, BULLET))
content.append(Spacer(1, 4))
content.append(colored_box_para(f"<b>Answer:</b> {answer}",
GREEN_LIGHT, S(f"ans{num}", fontSize=9, fontName="Helvetica", textColor=colors.HexColor("#1A3A1A"))))
t = Table([content], colWidths=[W])
t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), LIGHT_BLUE),
("BOX", (0,0), (-1,-1), 0.8, MID_BLUE),
("TOPPADDING", (0,0), (-1,-1), 8),
("BOTTOMPADDING", (0,0), (-1,-1), 8),
("LEFTPADDING", (0,0), (-1,-1), 10),
("RIGHTPADDING", (0,0), (-1,-1), 10),
]))
return t
story.append(case_box(
1,
"A 25-year-old student returns from Kerala after a 2-week trip. She presents with fever (day 3), "
"severe retro-orbital pain, rash appearing on day 4, and platelet count of 38,000/µL.",
"What is the most likely diagnosis and the most appropriate initial diagnostic test?",
["A. Malaria – peripheral blood smear",
"B. Dengue fever – NS1 antigen test",
"C. Chikungunya – RT-PCR",
"D. Typhoid fever – Widal test"],
"B. Dengue fever – NS1 antigen (detectable from day 1; platelet count <100,000 = warning sign of dengue). "
"NS1 is most sensitive in days 1–5 of illness. Pair with IgM ELISA from day 5 onward."
))
story.append(Spacer(1, 0.3*cm))
story.append(case_box(
2,
"A 45-year-old farmer from Rajasthan presents with 15 days of fever, weight loss, massive splenomegaly, "
"and haemoglobin of 7 g/dL. Peripheral smear shows intracellular amastigote forms in monocytes.",
"Identify the organism and name the treatment of choice in India.",
["A. Plasmodium falciparum – IV artesunate",
"B. Leishmania donovani – Liposomal Amphotericin B",
"C. Trypanosoma brucei – Suramin",
"D. Babesia microti – Atovaquone + azithromycin"],
"B. Leishmania donovani (Kala-azar). Liposomal Amphotericin B (single dose 10 mg/kg) is WHO's recommended "
"treatment in the Indian subcontinent. Miltefosine (oral) is also first-line in India for outpatient management."
))
story.append(Spacer(1, 0.3*cm))
story.append(case_box(
3,
"A 6-year-old child has severe nocturnal itching for 2 weeks. Examination shows burrows in the "
"interdigital web spaces and wrist, and erythematous papules on the genitalia. Family members "
"are also affected.",
"What is the diagnosis and treatment of choice?",
["A. Tinea corporis – clotrimazole cream",
"B. Scabies – Permethrin 5% cream (whole body, wash off after 8 hours)",
"C. Pediculosis corporis – permethrin shampoo",
"D. Atopic dermatitis – topical corticosteroids"],
"B. Scabies – Permethrin 5% cream applied from neck to toes, left for 8–10 hours, then washed off. "
"Repeat after 1 week. Treat all household contacts simultaneously. Wash bedding and clothing in hot water."
))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Quick MCQ Bank", H1))
mcq_data = [
[Paragraph("<b>#</b>", TABLE_HEADER),
Paragraph("<b>Question</b>", TABLE_HEADER),
Paragraph("<b>Answer</b>", TABLE_HEADER)],
["Q1", "Which Plasmodium species causes a quartan fever (72-hour cycle) and can cause nephrotic syndrome?",
"P. malariae"],
["Q2", "The Maltese cross (tetrad form) on blood smear is pathognomonic of which organism?",
"Babesia (B. microti/divergens)"],
["Q3", "Name the vector and pathogen causing scrub typhus. What is the diagnostic clue on examination?",
"Trombiculid mite; Orientia tsutsugamushi; Eschar at bite site"],
["Q4", "Romaña sign (unilateral painless periorbital oedema) is seen in acute phase of which disease?",
"Chagas disease (T. cruzi, Reduviid bug)"],
["Q5", "Which malaria drug is absolutely contraindicated without G6PD screening?",
"Primaquine (causes haemolytic anaemia in G6PD deficiency)"],
["Q6", "Name the organism, vector, and diagnostic feature distinguishing Norwegian/crusted scabies.",
"Sarcoptes scabiei; no vector (direct contact); hyperkeratotic crusts with thousands of mites – highly contagious in immunosuppressed"],
["Q7", "The Weil-Felix test using Proteus OX-K antigen is positive in which rickettsial disease?",
"Scrub typhus (Orientia tsutsugamushi)"],
["Q8", "Dengvaxia (CYD-TDV) is contraindicated in whom and why?",
"Seronegative individuals (dengue-naive); vaccination increases risk of severe dengue upon 1st natural infection"],
]
mcq_t = Table(mcq_data, colWidths=[1.2*cm, 9.5*cm, 7*cm], repeatRows=1)
mcq_t.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), DARK_BLUE),
("ROWBACKGROUNDS", (0,1), (-1,-1), [WHITE, LIGHT_BLUE]),
("GRID", (0,0), (-1,-1), 0.4, GREY_MED),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 8.5),
("VALIGN", (0,0), (-1,-1), "TOP"),
]))
story.append(mcq_t)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 13 – SUMMARY & REFERENCES
# ══════════════════════════════════════════════════════════════════════════════
story.append(section_banner("SECTION 13: SUMMARY & REFERENCES", DARK_BLUE))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("Key Takeaways", H1))
story += bullets([
"Vector-borne diseases cause 17% of all infectious diseases globally; arthropods are the principal vectors",
"Mosquitoes (Anopheles, Aedes, Culex) transmit the widest range of pathogens: viruses, parasites, and filariae",
"Malaria remains the most lethal VBD; ACT is 1st line for P. falciparum; radical cure of P. vivax requires primaquine (screen G6PD first)",
"Doxycycline is the drug of choice for ALL rickettsial infections including in children during emergencies",
"Scabies and pediculosis are the most common ectoparasite infestations worldwide; permethrin and ivermectin are cornerstones of therapy",
"Diagnosis often requires combination of rapid tests (NS1, RDTs), serology (IFA, ELISA), and molecular methods (PCR)",
"Integrated Vector Management (IVM) + vaccines (YFV, JEV, TBE, dengue, malaria RTS,S/R21) are the pillars of prevention",
"Climate change is expanding vector habitats; One Health approach is essential for sustainable control",
"Emerging threats: Oropouche virus, CCHF expansion, permethrin-resistant lice, and insecticide-resistant Anopheles require urgent monitoring",
])
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph("References & Further Reading", H1))
refs = [
"WHO (2023). <i>World Malaria Report 2023</i>. World Health Organization, Geneva.",
"Ryan KJ & Sherris CG (2022). <i>Sherris & Ryan's Medical Microbiology, 8th Edition</i>. McGraw Hill.",
"Murray PR et al. (2021). <i>Medical Microbiology, 9th Edition</i>. Elsevier.",
"Jawetz, Melnick & Adelberg (2019). <i>Medical Microbiology, 28th Edition</i>. McGraw Hill.",
"WHO (2023). <i>WHO Guideline for the Treatment of Malaria, 3rd Edition</i>. WHO Press, Geneva.",
"CDC (2024). <i>Travellers' Health – Yellow Book</i>. Centers for Disease Control & Prevention.",
"Fitzpatrick's Dermatology (2019). <i>Editors: Kang S et al., 9th Edition</i>. McGraw-Hill Medical.",
"Harrison's Principles of Internal Medicine 22E (2025). McGraw Hill Medical.",
"Goodman & Gilman's Pharmacological Basis of Therapeutics, 14th Ed. McGraw Hill.",
"PAHO (2024). <i>Epidemiological Alert – Dengue in the Americas</i>. Pan American Health Organization.",
"Mans BJ et al. (2023). Tick-borne diseases: emerging and re-emerging challenges. <i>Parasit Vectors</i> 16(1).",
"Beovic B et al. (2024). Oropouche fever – the emerging arboviral threat. <i>Lancet Infect Dis</i>.",
]
for r in refs:
story.append(Paragraph(f"• {r}", S("ref", fontSize=9, leading=13, fontName="Helvetica",
textColor=colors.HexColor("#1A1A1A"),
leftIndent=10, spaceAfter=3)))
story.append(Spacer(1, 0.5*cm))
story.append(HRFlowable(width="100%", thickness=1, color=DARK_BLUE))
story.append(Spacer(1, 0.2*cm))
story.append(Paragraph(
"Prepared by: Microbiology Seminar Group (15 members) | July 2026 | "
"Sources: WHO, CDC, Sherris & Ryan's Medical Microbiology 8E, Murray's Medical Microbiology 9E, "
"Jawetz 28E, Harrison's 22E",
S("footer", fontSize=8, fontName="Helvetica-Oblique", textColor=colors.HexColor("#555555"),
alignment=TA_CENTER)))
# ── Build ──────────────────────────────────────────────────────────────────────
doc.build(story)
print(f"PDF generated: {OUTPUT}")
cd /home/daytona/workspace/seminar-vbi && python generate_pdf.py 2>&1
ls -lh /home/daytona/workspace/seminar-vbi/VBI_Seminar_Presentation.pdf
VBI Seminar Presentation
PDF Document · PDF
PHASE 1 – TOPIC ALLOCATION (Week 1, Day 1)
Divide 15 members into 7 sub-groups (2 members) + 1 moderator
Each sub-group assigned one major section
▼
PHASE 2 – LITERATURE REVIEW (Week 1, Days 2–5)
Review WHO/CDC guidelines, textbooks (Sherris, Murray, Jawetz)
Prepare 5–7 slides + speaker notes per group
▼
PHASE 3 – CONSOLIDATION & PEER REVIEW (Week 2, Days 1–2)
Share drafts with moderator; consistency check
Peer feedback & revisions
▼
PHASE 4 – REHEARSAL (Week 2, Day 3)
Full dry-run (~70 min); each presenter timed (5–7 min)
Finalize MCQ bank and case studies
▼
PHASE 5 – SEMINAR DAY (~90 minutes)
Opening (5 min) → Core sections (60 min) → Cases & MCQs (15 min) → Q&A + Summary (10 min)
| # | Section | Content Covered |
|---|---|---|
| 1 | Introduction & Definitions | Vector, biological vs mechanical, ectoparasite, zoonosis; 700,000 deaths/yr |
| 2 | Seminar Flowchart & Work Distribution | Group roles, timeline, 15-member assignment table |
| 3 | Vectors: Classification & Biology | Mosquitoes, ticks, fleas, sandflies, reduviid bugs, lice, mites, blackflies; transmission mechanisms |
| 4 | Vector-Borne Viral Infections | Dengue, Chikungunya, Zika, Yellow Fever, JEV, WNV, TBE, KFD |
| 5 | Vector-Borne Bacterial Infections | Rickettsia, Plague, Lyme, Scrub typhus, RMSF, Q fever, Bartonellosis |
| 6 | Vector-Borne Protozoal Infections | Malaria (5 species table), Leishmaniasis, Trypanosomiasis, Chagas, Babesiosis |
| 7 | Ectoparasite Infestations | Scabies, head/body/pubic lice, myiasis, tungiasis, tick infestation, demodicosis |
| 8 | Diagnosis – Lab Approaches | Blood smear, RDTs, NS1, PCR/RT-PCR, IFA, Weil-Felix, skin scraping, Western blot |
| 9 | Treatment & Management | ACT, chloroquine, primaquine, doxycycline, ivermectin, permethrin, liposomal AmB |
| 10 | Prevention & Vector Control | IVM, LLINs, Wolbachia mosquitoes, vaccines (YFV, JEV, TBE, dengue, RTS,S/R21) |
| 11 | One Health & Emerging Threats | Oropouche virus, CCHF expansion, insecticide resistance, climate change |
| 12 | Case Studies & MCQs | 3 clinical cases (dengue, kala-azar, scabies) + 8 MCQs with answers |
| 13 | Summary & References | Key takeaways + 12 references (WHO, CDC, Sherris 8E, Murray 9E, Harrison's 22E) |
| Sub-group | Members | Assigned Section | Slides |
|---|---|---|---|
| G1 (2) | Members 1–2 | Intro + Definitions + Public Health | 5–6 |
| G2 (2) | Members 3–4 | Vectors: Biology & Classification | 5–6 |
| G3 (2) | Members 5–6 | Viral Infections | 6–7 |
| G4 (2) | Members 7–8 | Bacterial Infections | 6–7 |
| G5 (2) | Members 9–10 | Protozoal Infections | 6–7 |
| G6 (2) | Members 11–12 | Ectoparasite Infestations | 5–6 |
| G7 (2) | Members 13–14 | Diagnosis, Treatment & Prevention | 5–6 |
| Moderator (1) | Member 15 | Coordination, MCQs, Cases, Q&A | 4–5 |