please make pptx on "Anti-snake venom- indications, basic pharmacology, dose, adverse effects, hypersensitivity reactions" . please use standard pharmacology and medicine text books as reference
mkdir -p /home/daytona/workspace/asv-presentation && ls /home/daytona/workspace/asv-presentation/
~/asv-presentation/build_asv.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_WIDE";
pres.author = "Orris Medical Education";
pres.title = "Anti-Snake Venom (ASV)";
// ── Palette ──────────────────────────────────────────────────
const DARK_BG = "0D1B2A"; // deep navy
const MID_BG = "1B2A3B"; // mid navy
const ACCENT = "E8A020"; // amber / gold
const ACCENT2 = "E05C2D"; // burnt orange
const WHITE = "FFFFFF";
const LIGHT_TEXT = "D0DCE8";
const SUBTL = "7DA0BB";
const TABLE_HEAD = "1B3A57";
const TABLE_ROW1 = "1A2E40";
const TABLE_ROW2 = "142435";
const GREEN = "2ECC71";
const RED = "E74C3C";
// ── Helper: accent bar ───────────────────────────────────────
function accentBar(slide, x = 0, y = 0, w = 13.33, h = 0.06) {
slide.addShape(pres.ShapeType.rect, { x, y, w, h, fill: { color: ACCENT } });
}
// ── Helper: section label ────────────────────────────────────
function sectionLabel(slide, txt, x, y, accent = ACCENT) {
slide.addShape(pres.ShapeType.rect, { x, y, w: 0.05, h: 0.3, fill: { color: accent } });
slide.addText(txt, {
x: x + 0.12, y: y - 0.02, w: 4, h: 0.34,
fontSize: 9, bold: true, color: accent, fontFace: "Calibri",
charSpacing: 2.5
});
}
// ── Helper: slide background ─────────────────────────────────
function darkBg(slide) {
slide.background = { color: DARK_BG };
}
function midBg(slide) {
slide.background = { color: MID_BG };
}
// ── Helper: standard slide header ────────────────────────────
function addHeader(slide, title, subtitle = "") {
accentBar(slide, 0, 0, 13.33, 0.06);
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0.06, w: 13.33, h: 1.1, fill: { color: TABLE_HEAD } });
slide.addText(title, {
x: 0.4, y: 0.12, w: 12.5, h: 0.7,
fontSize: 24, bold: true, color: WHITE, fontFace: "Calibri"
});
if (subtitle) {
slide.addText(subtitle, {
x: 0.4, y: 0.78, w: 12.5, h: 0.35,
fontSize: 13, color: SUBTL, fontFace: "Calibri", italic: true
});
}
accentBar(slide, 0, 1.16, 13.33, 0.03);
}
// ── Helper: footer ────────────────────────────────────────────
function addFooter(slide, ref) {
slide.addText(ref, {
x: 0.3, y: 7.3, w: 12.7, h: 0.2,
fontSize: 7.5, color: SUBTL, fontFace: "Calibri", italic: true
});
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 1 — TITLE
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
darkBg(s);
// decorative gradient band
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 13.33, h: 0.1, fill: { color: ACCENT } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.1, w: 13.33, h: 0.08, fill: { color: ACCENT2 } });
// large title
s.addText("ANTI-SNAKE VENOM", {
x: 0.6, y: 1.2, w: 12, h: 1.5,
fontSize: 52, bold: true, color: ACCENT, fontFace: "Calibri",
charSpacing: 4
});
// subtitle
s.addText("Indications • Pharmacology • Dosage\nAdverse Effects • Hypersensitivity Reactions", {
x: 0.6, y: 2.8, w: 11, h: 1.2,
fontSize: 20, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.5
});
// divider
s.addShape(pres.ShapeType.rect, { x: 0.6, y: 4.1, w: 3.5, h: 0.06, fill: { color: ACCENT } });
// references block
s.addText("References: Pye's Surgical Handicraft (22nd ed.) | Goldman-Cecil Medicine | Rosen's Emergency Medicine\nForensic Medicine & Toxicology (36th ed.) | Park's Preventive & Social Medicine", {
x: 0.6, y: 4.3, w: 12, h: 0.7,
fontSize: 10, color: SUBTL, fontFace: "Calibri", italic: true
});
// bottom bar
s.addShape(pres.ShapeType.rect, { x: 0, y: 7.3, w: 13.33, h: 0.2, fill: { color: TABLE_HEAD } });
s.addText("Medical Pharmacology & Emergency Medicine | Evidence-Based Clinical Reference", {
x: 0.4, y: 7.32, w: 12.5, h: 0.17,
fontSize: 7.5, color: SUBTL, fontFace: "Calibri"
});
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 2 — OVERVIEW / CONTENTS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
darkBg(s);
addHeader(s, "Overview", "What this presentation covers");
const topics = [
["01", "Snake Venom: Types & Mechanisms", "Neurotoxic, haemotoxic, cytotoxic venoms"],
["02", "What is ASV?", "Production, types (monovalent/polyvalent), formulation"],
["03", "Indications", "Systemic & local criteria for ASV administration"],
["04", "Basic Pharmacology", "Mechanism of action, IgG / F(ab')2 / Fab fractions"],
["05", "Dose & Administration", "Route, dose by severity, repeat dosing"],
["06", "Adverse Effects", "Common and rare adverse effects"],
["07", "Hypersensitivity Reactions", "Early (anaphylactic), pyrogenic, late (serum sickness)"],
["08", "Management of Reactions", "Adrenaline protocol, antihistamines, steroids"],
];
topics.forEach(([num, title, sub], i) => {
const row = Math.floor(i / 2);
const col = i % 2;
const x = 0.4 + col * 6.5;
const y = 1.35 + row * 1.35;
s.addShape(pres.ShapeType.rect, { x, y, w: 6.1, h: 1.1, fill: { color: TABLE_HEAD }, line: { color: ACCENT, pt: 1 } });
s.addText(num, { x: x + 0.12, y: y + 0.08, w: 0.6, h: 0.5, fontSize: 22, bold: true, color: ACCENT, fontFace: "Calibri" });
s.addText(title, { x: x + 0.72, y: y + 0.08, w: 5.2, h: 0.45, fontSize: 13, bold: true, color: WHITE, fontFace: "Calibri" });
s.addText(sub, { x: x + 0.72, y: y + 0.56, w: 5.2, h: 0.4, fontSize: 10, color: SUBTL, fontFace: "Calibri" });
});
addFooter(s, "Pye's Surgical Handicraft (22e) | Goldman-Cecil Medicine | Rosen's Emergency Medicine");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 3 — SNAKE VENOMS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Snake Venoms: Classification & Mechanisms", "Understanding what ASV must neutralise");
// 3 columns
const cols = [
{
title: "NEUROTOXIC\n(Elapidae)",
snakes: "Cobra (Naja spp.)\nKrait (Bungarus spp.)\nMamba (Dendroaspis spp.)\nSea snake",
mechanism: "α-neurotoxins block\npost-synaptic ACh receptors\n\nβ-neurotoxins destroy\npre-synaptic nerve terminals",
effects: "Ptosis, diplopia\nDysphagia, dysarthria\nRespiratory paralysis\n(potentially fatal)",
color: ACCENT2,
},
{
title: "HAEMOTOXIC\n(Viperidae)",
snakes: "Russell's viper\nSaw-scaled viper (Echis)\nPuff adder (Bitis)\nMalayan pit viper",
mechanism: "Phospholipases,\nproteases, serine-esterases\n\nActivate coagulation cascade\nor destroy clotting factors",
effects: "Local necrosis & swelling\nSpontaneous bleeding\nDIC, non-clotting blood\nAKI (viper nephropathy)",
color: ACCENT,
},
{
title: "CYTOTOXIC\n(Spitting cobras etc.)",
snakes: "Black-necked\nspitting cobra\nRhinoceros viper\nSome Bitis spp.",
mechanism: "Cytolysins, hyaluronidase,\ncardiotoxins\n\nDestroy cell membranes\nDirectly",
effects: "Extensive tissue necrosis\nSecondary infection\nPotential limb loss",
color: "3498DB",
},
];
cols.forEach((col, i) => {
const x = 0.3 + i * 4.35;
const y = 1.28;
s.addShape(pres.ShapeType.rect, { x, y, w: 4.15, h: 5.9, fill: { color: TABLE_HEAD }, line: { color: col.color, pt: 1.5 } });
s.addShape(pres.ShapeType.rect, { x, y, w: 4.15, h: 0.6, fill: { color: col.color } });
s.addText(col.title, { x: x + 0.1, y: y + 0.06, w: 3.9, h: 0.52, fontSize: 13, bold: true, color: WHITE, fontFace: "Calibri", align: "center" });
sectionLabel(s, "SNAKES", x + 0.15, y + 0.75, col.color);
s.addText(col.snakes, { x: x + 0.15, y: y + 1.06, w: 3.85, h: 1.0, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 });
sectionLabel(s, "MECHANISM", x + 0.15, y + 2.15, col.color);
s.addText(col.mechanism, { x: x + 0.15, y: y + 2.46, w: 3.85, h: 1.2, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 });
sectionLabel(s, "CLINICAL EFFECTS", x + 0.15, y + 3.72, col.color);
s.addText(col.effects, { x: x + 0.15, y: y + 4.04, w: 3.85, h: 1.6, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 });
});
addFooter(s, "Goldman-Cecil Medicine | Pye's Surgical Handicraft (22e) | Forensic Medicine & Toxicology (36e)");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 4 — WHAT IS ASV?
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Anti-Snake Venom (ASV)", "Definition, production and types");
// Left: production
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.28, w: 6.0, h: 5.8, fill: { color: TABLE_HEAD }, line: { color: ACCENT, pt: 1 } });
sectionLabel(s, "PRODUCTION", 0.45, 1.38);
s.addText([
{ text: "Hyperimmunization of animals", options: { bold: true, breakLine: true } },
{ text: "(most commonly horses; also sheep, goats, rabbits)\n\n", options: { breakLine: true } },
{ text: "• Incremental doses of venom injected over weeks\n", options: { breakLine: true } },
{ text: "• Antibody-rich serum harvested\n", options: { breakLine: true } },
{ text: "• Purified into final product\n\n", options: { breakLine: true } },
{ text: "Formulation", options: { bold: true, breakLine: true } },
{ text: "Lyophilized (freeze-dried) powder in vial\n", options: { breakLine: true } },
{ text: "• Retains potency ~5 years\n", options: { breakLine: true } },
{ text: "• Reconstituted in 10 mL water/saline\n", options: { breakLine: true } },
{ text: "• Infused in 500 mL NS over 1 hour\n\n", options: { breakLine: true } },
{ text: "Indian manufacturers:", options: { bold: true, breakLine: true } },
{ text: "Haffkine Institute (Mumbai), King Institute (Chennai),\nSerum Institute (Pune), Kasauli", options: {} },
], { x: 0.45, y: 1.7, w: 5.7, h: 5.1, fontSize: 11.5, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.25 });
// Right: types
s.addShape(pres.ShapeType.rect, { x: 6.7, y: 1.28, w: 6.25, h: 5.8, fill: { color: TABLE_HEAD }, line: { color: ACCENT2, pt: 1 } });
sectionLabel(s, "TYPES", 6.85, 1.38, ACCENT2);
const types = [
["Monovalent (Monospecific)", "Targeted against a single species.\nUsed when snake identified.\nMore specific, higher titre against that venom."],
["Polyvalent (Polyspecific)", "Covers multiple species in a geographic region.\nIndispensable when snake species unknown.\nPolyvalent ASV (India): covers Naja naja, Bungarus caeruleus, Vipera russelli, Echis carinatus."],
["Paraspecific", "Antivenom produced for different genus/species.\nMay provide partial protection in absence of specific ASV.\nE.g. Tiger snake ASV may help in sea snake bites."],
["IgG / F(ab')₂ / Fab Fractions", "Whole IgG (older)\nF(ab')₂ — predominant form, longer half-life (~90 h)\nFab fragments — faster distribution, shorter T½, less serum sickness"],
];
types.forEach(([title, body], i) => {
const y = 1.65 + i * 1.3;
s.addShape(pres.ShapeType.rect, { x: 6.85, y, w: 5.95, h: 1.15, fill: { color: "0D1B2A" }, line: { color: ACCENT2, pt: 0.5 } });
s.addText(title, { x: 7.0, y: y + 0.05, w: 5.6, h: 0.28, fontSize: 11, bold: true, color: ACCENT2, fontFace: "Calibri" });
s.addText(body, { x: 7.0, y: y + 0.32, w: 5.6, h: 0.78, fontSize: 10, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.2 });
});
addFooter(s, "Goldman-Cecil Medicine | Pye's Surgical Handicraft (22e) | Forensic Medicine & Toxicology (36e)");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 5 — INDICATIONS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Indications for ASV", "ASV should only be given when clinically indicated (Table 28.2, Pye's)");
// Quote
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.3, w: 12.7, h: 0.55, fill: { color: "0D1B2A" }, line: { color: ACCENT, pt: 1 } });
s.addText('"Antivenoms are effective only against the specific venoms stated on the ampoule or package insert. They must be used only when indicated and administered by trained staff who can detect and treat serious reactions."', {
x: 0.5, y: 1.35, w: 12.3, h: 0.5, fontSize: 10, italic: true, color: SUBTL, fontFace: "Calibri"
});
s.addText("— Pye's Surgical Handicraft, 22nd ed.", { x: 10.5, y: 1.82, w: 2.5, h: 0.2, fontSize: 8, color: SUBTL, fontFace: "Calibri", italic: true });
// Systemic indications
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 2.05, w: 6.1, h: 5.05, fill: { color: TABLE_HEAD }, line: { color: RED, pt: 1.5 } });
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 2.05, w: 6.1, h: 0.5, fill: { color: RED } });
s.addText("SYSTEMIC ENVENOMATION", { x: 0.4, y: 2.1, w: 5.9, h: 0.4, fontSize: 13, bold: true, color: WHITE, fontFace: "Calibri", align: "center" });
const sysItems = [
"Hypotension / shock / cardiovascular toxicity",
"Neurotoxicity (ptosis, paralysis, respiratory failure)",
"Rhabdomyolysis",
"Impaired consciousness / coma",
"Spontaneous systemic bleeding",
"Non-clotting blood (20-min whole blood clotting test +ve)",
"Marked leukocytosis (WBC > 20,000/µL)",
"Elevated serum enzymes (CK, AST, LDH)",
"Metabolic acidosis",
"Haematuria / myoglobinuria",
"AKI (especially Russell's viper bites)",
];
s.addText(
sysItems.map((t, i) => ({ text: t, options: { bullet: { type: "bullet", characterCode: "25CF" }, indent: 10, breakLine: i < sysItems.length - 1 } })),
{ x: 0.45, y: 2.62, w: 5.8, h: 4.3, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 }
);
// Local indications
s.addShape(pres.ShapeType.rect, { x: 6.9, y: 2.05, w: 6.1, h: 3.0, fill: { color: TABLE_HEAD }, line: { color: ACCENT, pt: 1.5 } });
s.addShape(pres.ShapeType.rect, { x: 6.9, y: 2.05, w: 6.1, h: 0.5, fill: { color: ACCENT } });
s.addText("LOCAL ENVENOMATION", { x: 7.0, y: 2.1, w: 5.9, h: 0.4, fontSize: 13, bold: true, color: DARK_BG, fontFace: "Calibri", align: "center" });
const locItems = [
"Known necrotic venom species",
"Swelling involving > ½ of the bitten limb",
"Rapid progression of swelling beyond bite site",
"Swelling crossing a joint within 1-2 h of onset",
"Bites on digits or into tight fascial compartments",
];
s.addText(
locItems.map((t, i) => ({ text: t, options: { bullet: true, breakLine: i < locItems.length - 1 } })),
{ x: 7.05, y: 2.62, w: 5.8, h: 2.2, fontSize: 11.5, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.4 }
);
// CONTRAINDICATIONS box
s.addShape(pres.ShapeType.rect, { x: 6.9, y: 5.2, w: 6.1, h: 1.9, fill: { color: "1A1A2E" }, line: { color: RED, pt: 1 } });
sectionLabel(s, "IMPORTANT NOTES", 7.05, 5.28, RED);
s.addText([
{ text: "• No absolute contraindications if life-threatening envenomation\n", options: { breakLine: true } },
{ text: "• Pregnancy is NOT a contraindication (Rosen's EM)\n", options: { breakLine: true } },
{ text: "• Skin/conjunctival sensitivity tests are NOT predictive — do not perform\n", options: { breakLine: true } },
{ text: "• Dry bites (~20% of envenomations): no ASV needed", options: {} },
], { x: 7.05, y: 5.55, w: 5.8, h: 1.45, fontSize: 10.5, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.25 });
addFooter(s, "Pye's Surgical Handicraft 22e (Table 28.2) | Rosen's Emergency Medicine | Forensic Medicine & Toxicology 36e");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 6 — PHARMACOLOGY
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Basic Pharmacology of ASV", "Mechanism of action, antibody fractions, pharmacokinetics");
// Mechanism box
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.3, w: 12.7, h: 1.5, fill: { color: TABLE_HEAD }, line: { color: ACCENT, pt: 1 } });
sectionLabel(s, "MECHANISM OF ACTION", 0.45, 1.38);
s.addText([
{ text: "ASV antibodies (IgG or F(ab')₂ / Fab fragments) bind to circulating venom components, forming non-toxic antigen-antibody complexes.\n", options: { breakLine: true } },
{ text: "These complexes are cleared by the reticuloendothelial system (liver/spleen). This prevents venom components from reaching target tissues (ion channels, coagulation cascade, neuromuscular junction, cell membranes).", options: {} },
], { x: 0.45, y: 1.68, w: 12.3, h: 1.0, fontSize: 12, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.35 });
// 3 fraction cards
const fracs = [
{
title: "Whole IgG", sub: "Traditional product",
points: ["MW ~150 kDa", "Slow tissue distribution", "Longer half-life", "Higher incidence of\nserum sickness", "Still used in some\ncountry-specific products"],
color: SUBTL,
},
{
title: "F(ab')₂ Fragment", sub: "Most widely used (including India's PAV)",
points: ["MW ~100 kDa", "Better tissue penetration", "T½ ~90 hours", "Reduced but still present\nserum sickness risk", "Standard in India, Africa,\nMost Asian products"],
color: ACCENT,
},
{
title: "Fab Fragment", sub: "CroFab (USA), newer products",
points: ["MW ~50 kDa", "Fastest distribution\nto target tissues", "Shorter T½ (~12-20 h)", "Less serum sickness\nbut recurrent envenomation\nmore common", "Approved FDA (CroFab)"],
color: GREEN,
},
];
fracs.forEach((f, i) => {
const x = 0.3 + i * 4.35;
s.addShape(pres.ShapeType.rect, { x, y: 2.95, w: 4.15, h: 4.1, fill: { color: TABLE_HEAD }, line: { color: f.color, pt: 1.5 } });
s.addShape(pres.ShapeType.rect, { x, y: 2.95, w: 4.15, h: 0.65, fill: { color: f.color + (f.color === SUBTL ? "" : "") } });
s.addText(f.title, { x: x + 0.1, y: 2.99, w: 3.9, h: 0.32, fontSize: 13, bold: true, color: f.color === "2ECC71" ? DARK_BG : (f.color === ACCENT ? DARK_BG : WHITE), fontFace: "Calibri", align: "center" });
s.addText(f.sub, { x: x + 0.1, y: 3.29, w: 3.9, h: 0.28, fontSize: 9.5, color: f.color === SUBTL ? WHITE : DARK_BG, fontFace: "Calibri", align: "center", italic: true });
s.addText(
f.points.map((p, j) => ({ text: p, options: { bullet: true, breakLine: j < f.points.length - 1 } })),
{ x: x + 0.15, y: 3.65, w: 3.85, h: 3.2, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 }
);
});
addFooter(s, "Goldman-Cecil Medicine | Rosen's Emergency Medicine | Pye's Surgical Handicraft (22e)");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 7 — DOSE
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Dosage & Administration of ASV", "Dose, route, monitoring, and endpoints — Forensic Medicine & Toxicology 36e / Pye's 22e");
// Route box
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.3, w: 12.7, h: 0.8, fill: { color: TABLE_HEAD }, line: { color: ACCENT, pt: 1 } });
sectionLabel(s, "ROUTE & PREPARATION", 0.45, 1.35);
s.addText("Intravenous (IV) only — slow IV infusion is the standard and optimal route. | Reconstitute lyophilized powder in 10 mL water → add to 500 mL NS → infuse over 60 min. | Adrenaline must be drawn up BEFORE starting infusion.", {
x: 0.45, y: 1.62, w: 12.3, h: 0.4, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri"
});
// Dose table
const tableRows = [
[{ text: "Severity", options: { bold: true, color: ACCENT } },
{ text: "Clinical Criteria", options: { bold: true, color: ACCENT } },
{ text: "ASV Dose (vials)", options: { bold: true, color: ACCENT } },
{ text: "Notes", options: { bold: true, color: ACCENT } }],
["Minimal", "Local swelling only, no systemic reaction", "5 vials", "Monitor 6-hourly WBCT"],
["Moderate", "Swelling > bite site, mild systemic signs (nausea, mild BP drop)", "10 vials", "Repeat dose if signs progress"],
["Severe", "Marked local reaction, severe systemic signs (shock, paralysis, DIC)", "10–15 vials", "Consider ICU admission"],
["Neurotoxic (elapid)", "Neurotoxic envenomation with progression", "10 vials initial\n+ 10 vials after 1 h", "Repeat if paralysis worsens"],
["Haemotoxic (viper)", "Non-clotting blood / DIC", "Initial dose, then\nrepeat every 6 h", "Endpoint: WBCT normalises"],
];
s.addTable(tableRows, {
x: 0.3, y: 2.18, w: 12.7, h: 3.0,
border: { type: "solid", color: TABLE_HEAD, pt: 0.5 },
fill: { color: TABLE_ROW1 },
colW: [1.8, 3.5, 2.4, 5.0],
fontSize: 11,
color: LIGHT_TEXT,
fontFace: "Calibri",
rowH: 0.5,
align: "left",
});
// Key points
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 5.3, w: 12.7, h: 1.8, fill: { color: "0D1B2A" }, line: { color: ACCENT2, pt: 1 } });
sectionLabel(s, "KEY PRINCIPLES", 0.45, 5.38, ACCENT2);
s.addText([
{ text: "• Children require THE SAME dose as adults (dose neutralises venom, not body weight)\n", options: { breakLine: true } },
{ text: "• Each vial of Indian PAV neutralises ~6–8 mg of venom (T½ ~90 h)\n", options: { breakLine: true } },
{ text: "• 20-min Whole Blood Clotting Test (WBCT): repeat every 6 h to assess need for repeat dosing in viper bites\n", options: { breakLine: true } },
{ text: "• Normalization of clotting time = endpoint of therapy; test again at 12-h intervals for ≥48 h after last dose\n", options: { breakLine: true } },
{ text: "• Maximum benefit within 4 h of bite; less value after 8 h; doubtful after 24 h", options: {} },
], { x: 0.45, y: 5.65, w: 12.3, h: 1.35, fontSize: 10.5, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.2 });
addFooter(s, "Forensic Medicine & Toxicology 36e | Pye's Surgical Handicraft (22e) | Goldman-Cecil Medicine");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 8 — ADVERSE EFFECTS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Adverse Effects of ASV", "Predictable, dose-related, and immune-mediated reactions");
// 3-column layout: early / pyrogenic / late
const cols2 = [
{
title: "EARLY (ANAPHYLACTIC)",
timing: "Within 10 min – 2 h of starting infusion",
color: RED,
items: [
"Pruritus / generalised itching",
"Urticarial rash",
"Tachycardia",
"Fever / rigors",
"Coughing, sneezing",
"Nausea, vomiting",
"Wheezing / bronchospasm",
"Laryngeal oedema",
"Hypotension / shock",
"Angioedema",
]
},
{
title: "PYROGENIC",
timing: "Several hours after infusion",
color: ACCENT,
items: [
"Fever (high-grade)",
"Rigors / chills",
"Myalgia",
"Headache",
"Nausea / vomiting",
"",
"Due to endotoxin",
"contamination in",
"some preparations",
"",
]
},
{
title: "LATE (SERUM SICKNESS)",
timing: "5–24 days after treatment",
color: "3498DB",
items: [
"Recurrent urticaria / itching",
"Fever",
"Lymphadenopathy",
"Arthralgias / arthritis",
"Periarticular swelling",
"Mononeuritis multiplex",
"Glomerulonephritis",
"Encephalopathy (rare)",
"Proteinuria",
"Elevated ESR / eosinophilia",
]
},
];
cols2.forEach((col, i) => {
const x = 0.3 + i * 4.35;
s.addShape(pres.ShapeType.rect, { x, y: 1.28, w: 4.15, h: 5.9, fill: { color: TABLE_HEAD }, line: { color: col.color, pt: 1.5 } });
s.addShape(pres.ShapeType.rect, { x, y: 1.28, w: 4.15, h: 0.58, fill: { color: col.color } });
s.addText(col.title, { x: x + 0.1, y: 1.3, w: 3.9, h: 0.35, fontSize: 12, bold: true, color: col.color === ACCENT ? DARK_BG : WHITE, fontFace: "Calibri", align: "center" });
s.addText(col.timing, { x: x + 0.1, y: 1.68, w: 3.9, h: 0.35, fontSize: 9.5, italic: true, color: SUBTL, fontFace: "Calibri", align: "center" });
const nonEmpty = col.items.filter(x => x.trim() !== "");
s.addText(
nonEmpty.map((t, j) => ({ text: t, options: { bullet: true, breakLine: j < nonEmpty.length - 1 } })),
{ x: x + 0.15, y: 2.1, w: 3.85, h: 4.8, fontSize: 11.5, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.4 }
);
});
// incidence note
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 7.1, w: 12.7, h: 0.3, fill: { color: "0D1B2A" } });
s.addText("Incidence of early reactions: up to 80% with older whole-IgG products; significantly lower with F(ab')₂ | Serum sickness in ~5–75% depending on dose and product type", {
x: 0.4, y: 7.12, w: 12.5, h: 0.25, fontSize: 8.5, color: SUBTL, fontFace: "Calibri", italic: true
});
addFooter(s, "Pye's Surgical Handicraft (22e) | Goldman-Cecil Medicine | Rosen's Emergency Medicine");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 9 — HYPERSENSITIVITY IN DETAIL
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Hypersensitivity Reactions to ASV", "Classification, pathophysiology, and clinical features");
// Type I — left half
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.3, w: 6.1, h: 5.8, fill: { color: TABLE_HEAD }, line: { color: RED, pt: 1.5 } });
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.3, w: 6.1, h: 0.58, fill: { color: RED } });
s.addText("TYPE I — ANAPHYLAXIS / ANAPHYLACTOID", { x: 0.35, y: 1.35, w: 5.9, h: 0.46, fontSize: 12, bold: true, color: WHITE, fontFace: "Calibri", align: "center" });
s.addText([
{ text: "Mechanism", options: { bold: true, color: ACCENT, breakLine: true } },
{ text: "True anaphylaxis: IgE-mediated (prior sensitisation to horse proteins)\n", options: { breakLine: true } },
{ text: "Anaphylactoid: complement activation by aggregated IgG — does NOT require prior sensitisation\n\n", options: { breakLine: true } },
{ text: "Onset", options: { bold: true, color: ACCENT, breakLine: true } },
{ text: "Within 10 min to 2 h of infusion start\n\n", options: { breakLine: true } },
{ text: "Clinical Features", options: { bold: true, color: ACCENT, breakLine: true } },
{ text: "Pruritus → urticaria → wheezing → laryngeal oedema\nHypotension → shock → cardiovascular collapse\n\n", options: { breakLine: true } },
{ text: "Risk Factors", options: { bold: true, color: ACCENT, breakLine: true } },
{ text: "• Atopic individuals / history of horse exposure\n", options: { breakLine: true } },
{ text: "• Prior ASV administration\n", options: { breakLine: true } },
{ text: "• Rapid infusion rate\n", options: { breakLine: true } },
{ text: "• Whole IgG products (vs Fab/F(ab')₂)\n\n", options: { breakLine: true } },
{ text: "Note: Skin test is NOT a reliable predictor. Do not perform.", options: { color: RED } },
], { x: 0.45, y: 1.95, w: 5.8, h: 4.95, fontSize: 10.5, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.25 });
// Serum sickness — right half
s.addShape(pres.ShapeType.rect, { x: 6.9, y: 1.3, w: 6.1, h: 5.8, fill: { color: TABLE_HEAD }, line: { color: "3498DB", pt: 1.5 } });
s.addShape(pres.ShapeType.rect, { x: 6.9, y: 1.3, w: 6.1, h: 0.58, fill: { color: "3498DB" } });
s.addText("TYPE III — SERUM SICKNESS", { x: 6.95, y: 1.35, w: 5.9, h: 0.46, fontSize: 12, bold: true, color: WHITE, fontFace: "Calibri", align: "center" });
s.addText([
{ text: "Mechanism", options: { bold: true, color: ACCENT, breakLine: true } },
{ text: "Type III hypersensitivity: Immune complex deposition\n", options: { breakLine: true } },
{ text: "Antigen (horse protein) – antibody complexes accumulate in tissues → complement activation → inflammation\n\n", options: { breakLine: true } },
{ text: "Onset", options: { bold: true, color: ACCENT, breakLine: true } },
{ text: "5–24 days after ASV administration\n\n", options: { breakLine: true } },
{ text: "Clinical Features", options: { bold: true, color: ACCENT, breakLine: true } },
{ text: "Fever, urticaria, lymphadenopathy\n", options: { breakLine: true } },
{ text: "Arthralgias, periarticular swelling\n", options: { breakLine: true } },
{ text: "Mononeuritis multiplex\n", options: { breakLine: true } },
{ text: "Proteinuria, glomerulonephritis (rare)\n", options: { breakLine: true } },
{ text: "Encephalopathy (rare)\n\n", options: { breakLine: true } },
{ text: "Risk Factors", options: { bold: true, color: ACCENT, breakLine: true } },
{ text: "• Larger doses of ASV\n", options: { breakLine: true } },
{ text: "• Whole IgG products\n", options: { breakLine: true } },
{ text: "• Individual immune response variation", options: {} },
], { x: 7.05, y: 1.95, w: 5.8, h: 4.95, fontSize: 10.5, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.25 });
addFooter(s, "Pye's Surgical Handicraft (22e) | Goldman-Cecil Medicine | Janeway's Immunobiology 10e");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 10 — MANAGEMENT OF REACTIONS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Management of ASV Adverse Reactions", "Pre-treatment preparation and treatment protocols");
// Pre-treatment
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.3, w: 12.7, h: 1.0, fill: { color: "0D1B2A" }, line: { color: ACCENT, pt: 1 } });
sectionLabel(s, "PRE-TREATMENT PREPARATION (MANDATORY)", 0.45, 1.35, ACCENT);
s.addText("Draw up adrenaline 0.5 mL (1:1000) before starting infusion • Ensure IV access, oxygen, and resuscitation equipment at bedside • Patient must be observed during entire infusion • Slow initial infusion rate; increase after first 15 min if tolerated", {
x: 0.45, y: 1.65, w: 12.3, h: 0.55, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri"
});
// 3 management boxes
const mgmt = [
{
title: "EARLY (ANAPHYLACTIC) REACTION",
color: RED,
steps: [
"1. STOP or SLOW the infusion immediately",
"2. ADRENALINE (1:1000, 1 mg/mL):",
" Adults: 0.5–1.0 mL IM (or slow IV if life-threatening)",
" Children: 0.01 mL/kg IM",
"3. Antihistamine: Chlorpheniramine maleate",
" Adults: 10 mg IV | Children: 0.2 mg/kg IV",
"4. IV hydrocortisone: 200 mg (adults) / 4 mg/kg (child)",
"5. IV fluids for hypotension",
"6. Salbutamol nebulisation if bronchospasm persists",
"7. Restart infusion SLOWLY once stable (if ASV still needed)",
]
},
{
title: "PYROGENIC REACTION",
color: ACCENT,
steps: [
"1. Slow or pause the infusion",
"2. Physical cooling measures",
" (tepid sponging, fan, cool IV fluids)",
"3. Antipyretics:",
" Paracetamol 500–1000 mg PO/IV",
"4. Antihistamine (chlorpheniramine 10 mg IV)",
"5. Restart infusion slowly once afebrile",
"",
"Caused by endotoxin contamination",
"in some ASV batches",
]
},
{
title: "LATE SERUM SICKNESS",
color: "3498DB",
steps: [
"1. Oral antihistamines:",
" Cetirizine / loratadine for urticaria/pruritus",
"2. NSAIDs for arthralgias",
" Ibuprofen / naproxen",
"3. Oral prednisolone 1 mg/kg/day × 5–10 days",
" if symptoms are severe or persistent",
"4. Tapering course thereafter",
"",
"Most cases resolve spontaneously",
"Serum sickness is SELF-LIMITING",
]
},
];
mgmt.forEach((m, i) => {
const x = 0.3 + i * 4.35;
s.addShape(pres.ShapeType.rect, { x, y: 2.4, w: 4.15, h: 4.75, fill: { color: TABLE_HEAD }, line: { color: m.color, pt: 1.5 } });
s.addShape(pres.ShapeType.rect, { x, y: 2.4, w: 4.15, h: 0.55, fill: { color: m.color } });
s.addText(m.title, { x: x + 0.1, y: 2.43, w: 3.9, h: 0.45, fontSize: 11, bold: true, color: m.color === ACCENT ? DARK_BG : WHITE, fontFace: "Calibri", align: "center" });
const nonEmpty = m.steps.filter(x => x.trim() !== "");
s.addText(
nonEmpty.map((t, j) => ({ text: t, options: { breakLine: j < nonEmpty.length - 1 } })),
{ x: x + 0.15, y: 3.0, w: 3.85, h: 3.9, fontSize: 10.5, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 }
);
});
addFooter(s, "Pye's Surgical Handicraft (22e) | Goldman-Cecil Medicine | Rosen's Emergency Medicine");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 11 — MONITORING & ENDPOINTS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Monitoring & Treatment Endpoints", "Assessing response and deciding repeat dosing");
// WBCT box
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.3, w: 6.1, h: 3.5, fill: { color: TABLE_HEAD }, line: { color: ACCENT, pt: 1.5 } });
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 1.3, w: 6.1, h: 0.55, fill: { color: ACCENT } });
s.addText("20-MIN WHOLE BLOOD CLOTTING TEST (WBCT)", { x: 0.35, y: 1.33, w: 5.9, h: 0.44, fontSize: 11.5, bold: true, color: DARK_BG, fontFace: "Calibri", align: "center" });
s.addText([
{ text: "Procedure:\n", options: { bold: true, breakLine: true } },
{ text: "• Draw few mL fresh venous blood into clean dry glass tube\n", options: { breakLine: true } },
{ text: "• Leave undisturbed at room temp for 20 minutes\n", options: { breakLine: true } },
{ text: "• Gently tilt: if blood remains liquid → VIPER BITE confirmed\n\n", options: { breakLine: true } },
{ text: "Repeat every 6 hours during treatment\n", options: { breakLine: true } },
{ text: "Endpoint: blood clots normally within 20 min\n", options: { breakLine: true } },
{ text: "After normalisation: repeat at 12 h intervals for ≥48 h", options: {} },
], { x: 0.45, y: 1.93, w: 5.8, h: 2.7, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 });
// Envenomation severity
s.addShape(pres.ShapeType.rect, { x: 0.3, y: 4.95, w: 6.1, h: 2.2, fill: { color: TABLE_HEAD }, line: { color: ACCENT2, pt: 1 } });
sectionLabel(s, "SIGNS OF GOOD RESPONSE", 0.45, 5.0, GREEN);
s.addText([
{ text: "• Neurotoxic: regression of ptosis, improved respiratory effort\n", options: { breakLine: true } },
{ text: "• Haemotoxic: blood clotting restored (WBCT), cessation of bleeding\n", options: { breakLine: true } },
{ text: "• Cytotoxic: slowing of local swelling progression\n", options: { breakLine: true } },
{ text: "• General: BP normalises, consciousness improves", options: {} },
], { x: 0.45, y: 5.3, w: 5.8, h: 1.7, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 });
// Repeat dosing
s.addShape(pres.ShapeType.rect, { x: 6.9, y: 1.3, w: 6.1, h: 5.85, fill: { color: TABLE_HEAD }, line: { color: "3498DB", pt: 1 } });
sectionLabel(s, "REPEAT DOSING CRITERIA", 7.05, 1.38, "3498DB");
s.addText([
{ text: "If life-threatening signs persist:\n", options: { bold: true, color: ACCENT2, breakLine: true } },
{ text: "• Repeat full initial dose after 1 hour\n\n", options: { breakLine: true } },
{ text: "Neurotoxic envenomation:\n", options: { bold: true, color: ACCENT2, breakLine: true } },
{ text: "• Second dose of 10 vials after 1 hour if paralysis progresses\n\n", options: { breakLine: true } },
{ text: "Haemotoxic (procoagulant venom):\n", options: { bold: true, color: ACCENT2, breakLine: true } },
{ text: "• Repeat initial dose every 6 hours until WBCT normalises\n", options: { breakLine: true } },
{ text: "• Rationale: liver requires ~6 h to restore clotting factors after initial ASV; further ASV not needed within this window\n\n", options: { breakLine: true } },
{ text: "Late recurrence of envenomation:\n", options: { bold: true, color: ACCENT2, breakLine: true } },
{ text: "• Continuing venom absorption from injection 'depot'\n", options: { breakLine: true } },
{ text: "• Severely envenomed patients must be observed ≥ several days\n\n", options: { breakLine: true } },
{ text: "Timing of ASV:\n", options: { bold: true, color: ACCENT2, breakLine: true } },
{ text: "• Maximum benefit: within 4 h\n", options: { breakLine: true } },
{ text: "• Reduced benefit: 4–8 h\n", options: { breakLine: true } },
{ text: "• Doubtful: > 24 h", options: {} },
], { x: 7.05, y: 1.7, w: 5.8, h: 5.0, fontSize: 11, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 });
addFooter(s, "Forensic Medicine & Toxicology 36e | Pye's Surgical Handicraft (22e) | Goldman-Cecil Medicine");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 12 — SUMMARY TABLE
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
midBg(s);
addHeader(s, "Summary: ASV at a Glance", "Quick-reference table for clinical use");
const rows = [
[{ text: "Parameter", options: { bold: true, color: ACCENT } },
{ text: "Key Information", options: { bold: true, color: ACCENT } }],
["What is ASV?", "Hyperimmune equine (or ovine) antiserum; contains IgG / F(ab')₂ / Fab against venom"],
["Indian PAV composition", "Polyvalent: covers Naja naja, Bungarus caeruleus, Vipera russelli, Echis carinatus"],
["Half-life", "~90 hours for F(ab')₂ (Indian PAV); ~12–20 h for Fab (CroFab)"],
["Preparation", "Lyophilized powder; reconstitute in 500 mL NS; infuse IV over 60 min"],
["Minimal dose (adults)", "5 vials (local only) | 10 vials (moderate/systemic) | 10–15 vials (severe)"],
["Children's dose", "Same as adults — dosing is based on venom load, NOT body weight"],
["Test dose", "Do NOT administer (poor predictor, may presensitise)"],
["Early reaction (Rx)", "Adrenaline 0.5–1 mL IM + chlorpheniramine 10 mg IV + hydrocortisone"],
["Pyrogenic reaction (Rx)", "Antipyretics + cooling; antihistamine; slow infusion"],
["Serum sickness (Rx)", "Antihistamines + NSAIDs + oral prednisolone 1 mg/kg × 5–10 days"],
["Endpoint (haemotoxic)", "Normal 20-min WBCT; repeat at 12 h intervals ≥ 48 h post last dose"],
];
s.addTable(rows, {
x: 0.3, y: 1.3, w: 12.7, h: 5.85,
border: { type: "solid", color: TABLE_HEAD, pt: 0.4 },
fill: { color: TABLE_ROW1 },
colW: [3.5, 9.2],
fontSize: 11,
color: LIGHT_TEXT,
fontFace: "Calibri",
rowH: 0.43,
align: "left",
});
addFooter(s, "Pye's Surgical Handicraft (22e) | Goldman-Cecil Medicine | Rosen's EM | Forensic Medicine & Toxicology (36e) | Park's PSM");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 13 — REFERENCES
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
darkBg(s);
accentBar(s, 0, 0, 13.33, 0.08);
accentBar(s, 0, 7.42, 13.33, 0.08);
s.addText("REFERENCES", {
x: 0.5, y: 0.2, w: 12, h: 0.7,
fontSize: 28, bold: true, color: ACCENT, fontFace: "Calibri", charSpacing: 4
});
s.addShape(pres.ShapeType.rect, { x: 0.5, y: 0.85, w: 3, h: 0.06, fill: { color: ACCENT } });
const refs = [
["1.", "Mann DL, et al.", "Pye's Surgical Handicraft, 22nd Edition.", "Chapter 28: Snake Bite & Antivenom (Table 28.2). Butterworth-Heinemann."],
["2.", "Lyons AS, et al.", "Goldman-Cecil Medicine, International Edition (2-Vol Set).", "Chapter 98: Envenomation. Elsevier, 9780323930345."],
["3.", "Walls RM, et al.", "Rosen's Emergency Medicine: Concepts and Clinical Practice.", "Chapter 53: Pit Viper Snakebites; CroFab & Anavip. Elsevier, 9780323757898."],
["4.", "Pillay VV.", "The Essentials of Forensic Medicine & Toxicology, 36th Edition (2026).", "Chapter 32: Snake Venom & Anti-snake Venom. 9789366165257."],
["5.", "Park K.", "Park's Textbook of Preventive & Social Medicine.", "Antivenom section. Bhanot Publishers, 9789382219163."],
["6.", "Rich RR, et al.", "Clinical Immunology: Principles & Practice.", "Type I and Type III hypersensitivity reactions."],
["7.", "Abbas AK, et al.", "Janeway's Immunobiology, 10th Edition.", "Appendix: Transfer of protective immunity; antiserum. Norton, 9780393884876."],
];
refs.forEach(([num, authors, book, detail], i) => {
const y = 1.05 + i * 0.82;
s.addShape(pres.ShapeType.rect, { x: 0.4, y, w: 12.5, h: 0.7, fill: { color: i % 2 === 0 ? TABLE_HEAD : "0D1B2A" } });
s.addText(num, { x: 0.5, y: y + 0.08, w: 0.4, h: 0.55, fontSize: 11.5, bold: true, color: ACCENT, fontFace: "Calibri" });
s.addText([
{ text: authors + " ", options: { bold: true } },
{ text: book + " ", options: { italic: true } },
{ text: detail, options: {} },
], { x: 0.9, y: y + 0.06, w: 11.8, h: 0.58, fontSize: 10, color: LIGHT_TEXT, fontFace: "Calibri", lineSpacingMultiple: 1.2 });
});
}
// ── Write file ───────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/asv-presentation/Anti_Snake_Venom.pptx" })
.then(() => console.log("SUCCESS: /home/daytona/workspace/asv-presentation/Anti_Snake_Venom.pptx"))
.catch(e => { console.error("ERROR:", e); process.exit(1); });
cd /home/daytona/workspace/asv-presentation && node build_asv.js 2>&1
ls -lh /home/daytona/workspace/asv-presentation/Anti_Snake_Venom.pptx
Anti Snake Venom
Presentation · PPTX
| Slide | Content |
|---|---|
| 1 | Title slide with all references listed |
| 2 | Overview / table of contents (8 topic cards) |
| 3 | Snake venom classification — Neurotoxic / Haemotoxic / Cytotoxic mechanisms |
| 4 | What is ASV? — Production, formulation, monovalent vs polyvalent, IgG / F(ab')₂ / Fab fractions |
| 5 | Indications — Systemic (11 criteria) + Local (5 criteria) + important notes (no skin test, no contraindication in pregnancy) |
| 6 | Basic Pharmacology — Mechanism of action, IgG vs F(ab')₂ vs Fab comparison cards |
| 7 | Dose & Administration — Severity-based dosing table (minimal/moderate/severe/neurotoxic/haemotoxic), key principles, WBCT-based repeat dosing |
| 8 | Adverse Effects — Three-column: Early (anaphylactic) / Pyrogenic / Late (serum sickness) |
| 9 | Hypersensitivity Reactions — Type I (IgE + anaphylactoid mechanism) and Type III (serum sickness, immune complex) in detail |
| 10 | Management of Reactions — Adrenaline protocol + chlorpheniramine doses, pyrogenic treatment, prednisolone regimen |
| 11 | Monitoring & Endpoints — WBCT procedure, repeat dosing criteria, signs of good response |
| 12 | Summary quick-reference table |
| 13 | Full references (7 textbooks) |
good slides but lacks descriptions
~/asv-presentation/build_asv_v2.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_WIDE";
pres.author = "Orris Medical Education";
pres.title = "Anti-Snake Venom (ASV)";
// ── Colour palette ───────────────────────────────────────────
const DARK_BG = "0D1B2A";
const MID_BG = "111F30";
const CARD_BG = "162333";
const HEADER_BG = "1A2E42";
const ACCENT = "E8A020"; // amber
const ACCENT2 = "E05C2D"; // burnt orange
const ACCENT3 = "3498DB"; // steel blue
const GREEN = "27AE60";
const RED = "C0392B";
const WHITE = "FFFFFF";
const LTXT = "D0DCE8"; // body text
const SUBTL = "7DA0BB"; // subdued
const DARK_TXT = "0D1B2A";
// ── Helpers ──────────────────────────────────────────────────
function bg(slide, color) { slide.background = { color }; }
function topBar(slide, color = ACCENT) {
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 13.33, h: 0.07, fill: { color } });
}
function sideAccent(slide, x, y, h, color = ACCENT) {
slide.addShape(pres.ShapeType.rect, { x, y, w: 0.07, h, fill: { color } });
}
// Standard content slide header with gradient band
function header(slide, title, subtitle, accent = ACCENT) {
topBar(slide, accent);
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0.07, w: 13.33, h: 1.08, fill: { color: HEADER_BG } });
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0.07, w: 0.12, h: 1.08, fill: { color: accent } });
slide.addText(title, {
x: 0.28, y: 0.1, w: 12.8, h: 0.65,
fontSize: 26, bold: true, color: WHITE, fontFace: "Calibri"
});
if (subtitle) {
slide.addText(subtitle, {
x: 0.28, y: 0.73, w: 12.8, h: 0.35,
fontSize: 12, italic: true, color: SUBTL, fontFace: "Calibri"
});
}
slide.addShape(pres.ShapeType.rect, { x: 0, y: 1.15, w: 13.33, h: 0.03, fill: { color: accent } });
}
// Description paragraph block
function descBox(slide, x, y, w, h, label, labelColor, body, bodySize = 11) {
sideAccent(slide, x, y, h, labelColor);
slide.addText(label, {
x: x + 0.14, y: y, w: w - 0.14, h: 0.28,
fontSize: 9, bold: true, color: labelColor, fontFace: "Calibri", charSpacing: 2
});
slide.addText(body, {
x: x + 0.14, y: y + 0.28, w: w - 0.14, h: h - 0.28,
fontSize: bodySize, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.35,
valign: "top"
});
}
function card(slide, x, y, w, h, color = CARD_BG, borderColor = null) {
const opts = { x, y, w, h, fill: { color } };
if (borderColor) opts.line = { color: borderColor, pt: 1 };
slide.addShape(pres.ShapeType.rect, opts);
}
function cardHeader(slide, x, y, w, label, color) {
slide.addShape(pres.ShapeType.rect, { x, y, w, h: 0.42, fill: { color } });
slide.addText(label, {
x: x + 0.1, y: y + 0.04, w: w - 0.2, h: 0.34,
fontSize: 12, bold: true, color: color === ACCENT ? DARK_TXT : WHITE,
fontFace: "Calibri", align: "center"
});
}
function footer(slide, ref) {
slide.addShape(pres.ShapeType.rect, { x: 0, y: 7.28, w: 13.33, h: 0.22, fill: { color: HEADER_BG } });
slide.addText(ref, {
x: 0.3, y: 7.3, w: 12.7, h: 0.18,
fontSize: 7.5, italic: true, color: SUBTL, fontFace: "Calibri"
});
}
// Rich-text bullet array helper
function bullets(items, color = LTXT, size = 11) {
return items.map((t, i) => ({
text: t,
options: { bullet: { type: "bullet" }, color, fontSize: size, fontFace: "Calibri", breakLine: i < items.length - 1 }
}));
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 1 — TITLE
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, DARK_BG);
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 13.33, h: 0.12, fill: { color: ACCENT } });
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.12, w: 13.33, h: 0.05, fill: { color: ACCENT2 } });
// Main title
s.addText("ANTI-SNAKE VENOM", {
x: 0.7, y: 0.9, w: 12, h: 1.3,
fontSize: 54, bold: true, color: ACCENT, fontFace: "Calibri", charSpacing: 3
});
// Subtitle
s.addText("Indications | Basic Pharmacology | Dosage & Administration\nAdverse Effects | Hypersensitivity Reactions & Management", {
x: 0.7, y: 2.3, w: 11.5, h: 1.1,
fontSize: 18, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.6
});
s.addShape(pres.ShapeType.rect, { x: 0.7, y: 3.55, w: 4, h: 0.06, fill: { color: ACCENT } });
// Intro paragraph
s.addText(
"Anti-snake venom (ASV), also called antivenom or antivenin, is the only specific, life-saving treatment for snake envenomation. It is a preparation of immunoglobulins derived from animals hyperimmunized against snake venom. Despite decades of use, it remains one of the most potent biological antidotes in emergency medicine, capable of reversing neurotoxicity, coagulopathy, and tissue destruction when administered promptly and in adequate doses.",
{
x: 0.7, y: 3.75, w: 11.5, h: 1.6,
fontSize: 12, color: SUBTL, fontFace: "Calibri", lineSpacingMultiple: 1.5, italic: true
}
);
// Reference strip
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.55, w: 13.33, h: 0.65, fill: { color: HEADER_BG } });
s.addText("References ► Pye's Surgical Handicraft 22e | Goldman-Cecil Medicine | Rosen's Emergency Medicine | Forensic Medicine & Toxicology 36e | Park's Preventive & Social Medicine", {
x: 0.5, y: 5.65, w: 12.5, h: 0.45,
fontSize: 10, color: SUBTL, fontFace: "Calibri", italic: true
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 7.4, w: 13.33, h: 0.1, fill: { color: ACCENT2 } });
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 2 — SNAKE ENVENOMATION: OVERVIEW
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "Snake Envenomation: Context & Burden", "Why ASV matters — epidemiology and venom types", ACCENT2);
// Overview paragraph
card(s, 0.3, 1.25, 12.7, 1.18, CARD_BG, ACCENT2);
s.addText(
"Snake bite is a neglected tropical disease with global significance. It is most prevalent in rural, tropical regions where it poses an occupational hazard for agricultural workers and hunters. The true incidence is consistently underestimated in official statistics. In countries such as Brazil and Thailand, mortality has declined sharply since locally produced antivenom became widely available — demonstrating that access to ASV is the single most important determinant of outcome. In India alone, the 'Big Four' venomous species (Naja naja, Bungarus caeruleus, Vipera russelli, Echis carinatus) account for the overwhelming majority of snakebite deaths.",
{ x: 0.5, y: 1.3, w: 12.3, h: 1.05, fontSize: 11.5, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.4 }
);
// Three venom type columns
const venoms = [
{
title: "NEUROTOXIC VENOM", accent: ACCENT2,
snakes: "Cobra (Naja spp.), Krait (Bungarus spp.), Mamba, Coral snake, Sea snake",
mechanism: "Alpha-neurotoxins competitively block post-synaptic nicotinic acetylcholine receptors at the neuromuscular junction, causing flaccid paralysis. Beta-neurotoxins act pre-synaptically, destroying nerve terminals and preventing acetylcholine release — this damage may be irreversible.",
effects: "Ptosis, diplopia, dysphagia, dysarthria, limb weakness → ascending flaccid paralysis → respiratory failure and death if untreated."
},
{
title: "HAEMOTOXIC VENOM", accent: ACCENT,
snakes: "Russell's viper, Saw-scaled viper (Echis), Puff adder (Bitis), Malayan pit viper, Rattlesnakes",
mechanism: "Venom contains phospholipases, serine proteases, and metalloproteinases. These activate or consume coagulation factors, activate platelets, and directly damage vascular endothelium — producing a consumption coagulopathy (DIC) and vascular leak syndrome.",
effects: "Local necrosis, massive limb swelling, spontaneous bleeding from gums/wounds, non-clotting blood, haematuria, acute kidney injury (viper nephropathy), circulatory shock."
},
{
title: "CYTOTOXIC VENOM", accent: ACCENT3,
snakes: "Spitting cobras (Naja nigricollis), Rinkhals, some Bitis spp.",
mechanism: "Cytolysins and cardiotoxins directly disrupt cell membranes through phospholipase A2 activity. Hyaluronidase ('spreading factor') enhances tissue penetration. These act locally at the bite site and can cause progressive tissue destruction.",
effects: "Intense local pain and swelling, progressive tissue necrosis, secondary infection, abscess formation, and potential limb loss requiring surgical debridement or amputation."
},
];
venoms.forEach((v, i) => {
const x = 0.3 + i * 4.35;
card(s, x, 2.56, 4.15, 4.58, CARD_BG, v.accent);
cardHeader(s, x, 2.56, 4.15, v.title, v.accent);
sideAccent(s, x + 0.15, 3.05, 0.5, v.accent);
s.addText("SNAKES", { x: x + 0.29, y: 3.06, w: 3.7, h: 0.2, fontSize: 8, bold: true, color: v.accent, fontFace: "Calibri", charSpacing: 1.5 });
s.addText(v.snakes, { x: x + 0.15, y: 3.25, w: 3.88, h: 0.6, fontSize: 10, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.25 });
sideAccent(s, x + 0.15, 3.9, 0.7, v.accent);
s.addText("MECHANISM", { x: x + 0.29, y: 3.91, w: 3.7, h: 0.2, fontSize: 8, bold: true, color: v.accent, fontFace: "Calibri", charSpacing: 1.5 });
s.addText(v.mechanism, { x: x + 0.15, y: 4.1, w: 3.88, h: 1.5, fontSize: 10, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.25 });
sideAccent(s, x + 0.15, 5.65, 0.5, v.accent);
s.addText("CLINICAL EFFECTS", { x: x + 0.29, y: 5.66, w: 3.7, h: 0.2, fontSize: 8, bold: true, color: v.accent, fontFace: "Calibri", charSpacing: 1.5 });
s.addText(v.effects, { x: x + 0.15, y: 5.86, w: 3.88, h: 1.1, fontSize: 10, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.25 });
});
footer(s, "Goldman-Cecil Medicine | Pye's Surgical Handicraft 22e | Forensic Medicine & Toxicology 36e");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 3 — WHAT IS ASV? PRODUCTION & TYPES
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "What is Anti-Snake Venom?", "Definition, production process, types and formulations", ACCENT);
// Definition paragraph
card(s, 0.3, 1.25, 12.7, 1.0, CARD_BG, ACCENT);
s.addText(
"Anti-snake venom (ASV) is a preparation of immunoglobulins, or their functionally active fragments, derived from the plasma of animals — most commonly horses — that have been hyperimmunized with snake venom. It is the ONLY specific treatment for snake envenomation and works by binding and neutralizing circulating venom components. The final product may consist of whole IgG antibodies, F(ab')₂ fragments (pepsin-digested), or Fab fragments (papain-digested), each with distinct pharmacokinetic profiles. Further purification steps (ammonium sulphate precipitation, caprylic acid treatment) reduce the load of irrelevant horse proteins, thereby reducing adverse reactions.",
{ x: 0.5, y: 1.3, w: 12.3, h: 0.9, fontSize: 11, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38 }
);
// Left column: Production process
card(s, 0.3, 2.35, 6.15, 4.85, CARD_BG, ACCENT);
cardHeader(s, 0.3, 2.35, 6.15, "PRODUCTION PROCESS", ACCENT);
s.addText(
"Horses are the preferred production animal due to their large plasma volume and robust immune response. The hyperimmunization protocol involves injecting progressively increasing doses of venom (initially diluted, later with adjuvant) over a period of several weeks to months. This stimulates a high-titre polyclonal antibody response targeting multiple venom epitopes.\n\nThe antibody-rich plasma is then harvested, and the immunoglobulin fraction is concentrated and purified. In India, the plasma is lyophilized (freeze-dried under high vacuum from the frozen state), yielding a stable powder that retains potency for approximately 5 years without refrigeration — a critical advantage in tropical field conditions.\n\nIn India, Polyvalent Anti-snake Venom (PAV) is manufactured at:\n • Haffkine Biopharmaceutical Corporation, Mumbai\n • King Institute of Preventive Medicine, Chennai\n • Serum Institute of India, Pune\n • Central Research Institute, Kasauli",
{ x: 0.45, y: 2.82, w: 5.85, h: 4.25, fontSize: 10.8, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38, valign: "top" }
);
// Right column: Types
card(s, 6.75, 2.35, 6.3, 4.85, CARD_BG, ACCENT2);
cardHeader(s, 6.75, 2.35, 6.3, "TYPES OF ASV", ACCENT2);
const types = [
{
name: "Monovalent (Monospecific)", col: ACCENT,
body: "Targeted against a single snake species or genus. Used when the identity of the offending snake is known with certainty. Offers the highest antibody titre against that specific venom and is the optimal treatment in that situation."
},
{
name: "Polyvalent (Polyspecific)", col: ACCENT2,
body: "Designed to neutralize venoms from multiple species within a geographic region. Indian PAV covers Naja naja, Bungarus caeruleus, Vipera russelli, and Echis carinatus. Invaluable when the snake species cannot be identified — the most commonly used form in clinical practice."
},
{
name: "Paraspecific", col: ACCENT3,
body: "An antivenom produced against a different but related species that may cross-react with the venom of the offending snake. Used as a last resort. Example: tiger snake antivenom may provide partial protection against sea snake envenomation in the absence of specific sea snake ASV."
},
];
types.forEach((t, i) => {
const y = 2.88 + i * 1.5;
sideAccent(s, 6.9, y, 1.2, t.col);
s.addText(t.name, { x: 7.06, y: y, w: 5.8, h: 0.28, fontSize: 11, bold: true, color: t.col, fontFace: "Calibri" });
s.addText(t.body, { x: 7.06, y: y + 0.3, w: 5.8, h: 1.1, fontSize: 10.5, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 });
});
footer(s, "Goldman-Cecil Medicine | Forensic Medicine & Toxicology 36e | Pye's Surgical Handicraft 22e");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 4 — INDICATIONS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "Indications for ASV Administration", "ASV must only be used when clearly indicated — overuse risks adverse reactions without benefit", RED);
// Opening statement
card(s, 0.3, 1.25, 12.7, 0.95, CARD_BG, RED);
s.addText(
"ASV is the only specific treatment for envenomation but is expensive, often in short supply, and can itself cause life-threatening reactions. It must therefore be reserved for patients with clear evidence of systemic or significant local envenomation. The decision to administer ASV is based on clinical findings, not merely on the history of being bitten — approximately 20% of bites by venomous snakes result in 'dry bites' with no venom injection whatsoever.",
{ x: 0.5, y: 1.3, w: 12.3, h: 0.83, fontSize: 11, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38 }
);
// Systemic indications (left)
card(s, 0.3, 2.27, 6.1, 5.12, CARD_BG, RED);
cardHeader(s, 0.3, 2.27, 6.1, "SYSTEMIC ENVENOMATION", RED);
s.addText(
"Systemic envenomation is the primary indication for ASV. The following findings mandate immediate ASV administration:\n\n" +
" • Hypotension, shock, or any sign of cardiovascular compromise\n" +
" • Neurotoxicity: ptosis, diplopia, dysphagia, limb weakness, respiratory depression\n" +
" • Rhabdomyolysis (myoglobinuria, markedly elevated CK)\n" +
" • Impaired or loss of consciousness\n" +
" • Spontaneous systemic bleeding (gums, IV sites, internal)\n" +
" • Non-clotting blood: 20-min WBCT positive (blood remains liquid)\n" +
" • Marked leukocytosis (WBC > 20,000/μL)\n" +
" • Elevated serum enzymes (LDH, AST, CK)\n" +
" • Metabolic acidosis\n" +
" • Haematuria or myoglobinuria\n" +
" • Acute kidney injury (especially Russell's viper bites)\n\n" +
"Any single criterion from this list is sufficient to initiate ASV without waiting for further deterioration.",
{ x: 0.45, y: 2.74, w: 5.8, h: 4.55, fontSize: 10.8, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38, valign: "top" }
);
// Local + important notes (right)
card(s, 6.75, 2.27, 6.3, 2.6, CARD_BG, ACCENT);
cardHeader(s, 6.75, 2.27, 6.3, "SIGNIFICANT LOCAL ENVENOMATION", ACCENT);
s.addText(
"Local signs alone may justify ASV if the envenomation is extensive or rapidly progressing:\n\n" +
" • Known necrotic venom species (spitting cobras, some vipers)\n" +
" • Swelling involving more than half of the bitten limb\n" +
" • Rapid progression of swelling beyond the bite site\n" +
" • Swelling crossing a joint within the first 1–2 hours of onset\n" +
" • Bites on digits or in tight fascial compartments (risk of compartment syndrome)\n\n" +
"Note: Swelling that has been static for several hours is NOT reliable evidence of active envenomation and should not trigger ASV.",
{ x: 6.9, y: 2.74, w: 6.0, h: 2.0, fontSize: 10.5, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38, valign: "top" }
);
card(s, 6.75, 4.97, 6.3, 2.42, "0D1B2A", ACCENT3);
s.addShape(pres.ShapeType.rect, { x: 6.75, y: 4.97, w: 6.3, h: 0.42, fill: { color: ACCENT3 } });
s.addText("IMPORTANT CLINICAL NOTES", { x: 6.82, y: 5.0, w: 6.08, h: 0.34, fontSize: 11, bold: true, color: WHITE, fontFace: "Calibri", align: "center" });
s.addText(
"• Skin and conjunctival sensitivity tests have NO predictive value and must NOT be performed — they delay treatment and may pre-sensitize the patient.\n" +
"• Pregnancy is NOT a contraindication to ASV — the risk of untreated envenomation to both mother and fetus far exceeds any risk from ASV.\n" +
"• Even with known allergy to horse proteins, patients with severe, life-threatening envenomation should still receive ASV, with diluted infusion and simultaneous epinephrine cover.",
{ x: 6.9, y: 5.44, w: 6.0, h: 1.85, fontSize: 10.5, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.35, valign: "top" }
);
footer(s, "Pye's Surgical Handicraft 22e (Table 28.2) | Rosen's Emergency Medicine | Forensic Medicine & Toxicology 36e");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 5 — BASIC PHARMACOLOGY
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "Basic Pharmacology of ASV", "Mechanism of action, antibody fragment types, and pharmacokinetics", ACCENT);
// Mechanism
card(s, 0.3, 1.25, 12.7, 1.55, CARD_BG, ACCENT);
sideAccent(s, 0.3, 1.25, 1.55, ACCENT);
s.addText("MECHANISM OF ACTION", { x: 0.48, y: 1.27, w: 12.3, h: 0.26, fontSize: 9, bold: true, color: ACCENT, fontFace: "Calibri", charSpacing: 2 });
s.addText(
"ASV antibodies (IgG, F(ab')₂, or Fab) bind specifically and with high affinity to venom toxin molecules (proteins, peptides, enzymes) that are circulating freely in the patient's plasma, forming stable, non-toxic antigen-antibody immune complexes. These complexes are too large to bind target tissues and are cleared by the reticuloendothelial system (primarily hepatic Kupffer cells and splenic macrophages). By reducing free venom concentration in the plasma, ASV prevents toxins from reaching their target sites — the neuromuscular junction (neurotoxins), coagulation cascade proteins (haemotoxins), or cell membranes (cytotoxins). ASV does NOT reverse tissue damage that has already occurred; it prevents further damage. This explains why early administration (within 4 hours of the bite) is critical for maximum benefit.",
{ x: 0.48, y: 1.52, w: 12.3, h: 1.2, fontSize: 11, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38 }
);
// Three fragment comparison cards
const frags = [
{
title: "Whole IgG", col: SUBTL,
pk: "MW: ~150 kDa | T½: longest",
body: "The traditional, unmodified immunoglobulin product. Although potent, whole IgG contains the Fc region, which is immunologically active, triggering complement activation and mast cell degranulation. This significantly increases the risk of immediate anaphylactic/anaphylactoid reactions and late serum sickness. Distribution into tissues is slower due to the large molecular size. Still produced by some manufacturers for historical or economic reasons.",
risk: "Highest adverse effect risk",
},
{
title: "F(ab')₂ Fragment", col: ACCENT,
pk: "MW: ~100 kDa | T½: ~90 hours",
body: "Produced by pepsin digestion of IgG, removing the Fc region while retaining both antigen-binding arms (bivalent). This is the standard fragment used in most Indian, African, and Asian polyvalent antivenoms. Removal of the Fc region greatly reduces (though does not eliminate) complement activation and pyrogenic reactions. The longer half-life (~90 h for Indian PAV) provides sustained venom neutralization. Each vial of Indian PAV neutralizes approximately 6–8 mg of venom.",
risk: "Moderate adverse effect risk",
},
{
title: "Fab Fragment", col: GREEN,
pk: "MW: ~50 kDa | T½: ~12–20 hours",
body: "Produced by papain digestion of IgG; monovalent (single antigen-binding arm). The smaller size enables rapid tissue distribution and penetration to sites of venom deposition, offering fast action. However, the short half-life means the antivenom is cleared faster than the venom depot at the injection site, leading to recurrent envenomation in up to 50% of cases (late coagulopathy). CroFab (USA) and similar products use this format. F(ab')₂ products such as Anavip have largely superseded pure Fab for this reason.",
risk: "Lowest immediate reactions; higher recurrence risk",
},
];
frags.forEach((f, i) => {
const x = 0.3 + i * 4.35;
card(s, x, 2.9, 4.15, 4.25, CARD_BG, f.col);
cardHeader(s, x, 2.9, 4.15, f.title, f.col);
s.addText(f.pk, { x: x + 0.15, y: 3.37, w: 3.88, h: 0.3, fontSize: 10, bold: true, color: f.col, fontFace: "Calibri" });
s.addText(f.body, { x: x + 0.15, y: 3.67, w: 3.88, h: 2.9, fontSize: 10.2, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.35, valign: "top" });
s.addShape(pres.ShapeType.rect, { x: x + 0.15, y: 6.65, w: 3.88, h: 0.38, fill: { color: HEADER_BG } });
s.addText("⚠ " + f.risk, { x: x + 0.2, y: 6.68, w: 3.78, h: 0.3, fontSize: 9.5, italic: true, color: f.col, fontFace: "Calibri" });
});
footer(s, "Goldman-Cecil Medicine | Rosen's Emergency Medicine | Pye's Surgical Handicraft 22e");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 6 — DOSE & ADMINISTRATION
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "Dose & Administration of ASV", "Route, preparation, severity-based dosing, and repeat criteria", ACCENT);
// Route/prep
card(s, 0.3, 1.25, 12.7, 1.12, CARD_BG, ACCENT);
sideAccent(s, 0.3, 1.25, 1.12, ACCENT);
s.addText("ROUTE & PREPARATION", { x: 0.48, y: 1.27, w: 12.3, h: 0.26, fontSize: 9, bold: true, color: ACCENT, fontFace: "Calibri", charSpacing: 2 });
s.addText(
"The intravenous route is standard and optimal, enabling accurate control of infusion speed and the ability to stop immediately if a reaction occurs. The lyophilized powder is first reconstituted by adding 10 mL of sterile water or normal saline per vial, then the reconstituted dose is added to 500 mL of 0.9% normal saline and infused over 60 minutes. Adrenaline must be drawn up and ready before the infusion begins. The patient must be observed continuously throughout the infusion. Local injection of ASV around the bite site is NOT recommended and may worsen local tissue pressure.",
{ x: 0.48, y: 1.52, w: 12.3, h: 0.78, fontSize: 10.8, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38 }
);
// Dose table
const tableData = [
[
{ text: "Severity", options: { bold: true, color: ACCENT, fontSize: 11 } },
{ text: "Clinical Criteria", options: { bold: true, color: ACCENT, fontSize: 11 } },
{ text: "Dose (Vials)", options: { bold: true, color: ACCENT, fontSize: 11 } },
{ text: "Monitoring / Endpoint", options: { bold: true, color: ACCENT, fontSize: 11 } },
],
["Minimal", "Local swelling only, confined to bite site, no systemic signs, WBCT normal", "5 vials", "WBCT every 6 h; discharge if stable after 24 h"],
["Moderate", "Swelling progressing beyond bite site, mild systemic reaction (nausea, mild hypotension, early coagulopathy)", "10 vials", "Repeat dose if signs progress at 1–2 h"],
["Severe", "Marked local reaction + severe systemic toxicity (shock, DIC, respiratory compromise, necrosis)", "10–15 vials", "Admit ICU; repeat per clinical response"],
["Neurotoxic", "Neurotoxic features (ptosis, paralysis, respiratory failure) due to elapid bite", "10 vials\n+ 10 vials after 1 h if paralysis persists", "Monitor respiration; ventilate if needed"],
["Haemotoxic", "Non-clotting blood (WBCT+ve), DIC, spontaneous bleeding", "Initial dose, then repeat every 6 h", "WBCT normalisation = endpoint; confirm at 12-h intervals × 48 h"],
];
s.addTable(tableData, {
x: 0.3, y: 2.45, w: 12.7, h: 2.65,
border: { type: "solid", color: HEADER_BG, pt: 0.5 },
fill: { color: CARD_BG },
colW: [1.8, 4.1, 2.3, 4.5],
fontSize: 10.5,
color: LTXT,
fontFace: "Calibri",
rowH: 0.44,
align: "left",
valign: "middle",
});
// Key principles
card(s, 0.3, 5.2, 12.7, 2.0, "0D1B2A", ACCENT2);
sideAccent(s, 0.3, 5.2, 2.0, ACCENT2);
s.addText("KEY DOSING PRINCIPLES", { x: 0.48, y: 5.22, w: 12.3, h: 0.26, fontSize: 9, bold: true, color: ACCENT2, fontFace: "Calibri", charSpacing: 2 });
s.addText(
"Children receive the SAME dose as adults — venom neutralisation depends on the amount of venom injected, not the patient's body weight; children may even need proportionately more, as they receive a relatively larger venom load per kilogram.\n\n" +
"Timing is critical: ASV is most effective within 4 hours of the bite. Efficacy is significantly reduced if delayed beyond 8 hours and is of doubtful benefit after 24 hours, though late administration may still prevent further deterioration and should not be withheld in actively progressing envenomation.\n\n" +
"Liver recovery after haemotoxic envenomation: The initial dose neutralizes free-flowing venom. The liver requires approximately 6 hours to regenerate consumed clotting factors. Therefore, no further ASV is needed for at least 6 hours after the first dose — subsequent decisions are guided by WBCT results.",
{ x: 0.48, y: 5.48, w: 12.3, h: 1.65, fontSize: 10.8, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38, valign: "top" }
);
footer(s, "Forensic Medicine & Toxicology 36e | Pye's Surgical Handicraft 22e | Goldman-Cecil Medicine | Rosen's Emergency Medicine");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 7 — ADVERSE EFFECTS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "Adverse Effects of ASV", "Three distinct reaction syndromes: early anaphylactic, pyrogenic, and late serum sickness", ACCENT2);
// Intro
card(s, 0.3, 1.25, 12.7, 0.9, CARD_BG, ACCENT2);
s.addText(
"All forms of ASV carry a risk of adverse reactions because they are preparations of foreign (non-human) protein. Reactions fall into three well-defined temporal patterns that reflect different immunological mechanisms. Recognising the type, timing, and severity of a reaction guides appropriate management. The overall frequency of adverse reactions varies widely between products — older whole-IgG preparations carry up to 80% rates of early reactions, while modern F(ab')₂ products have significantly lower rates.",
{ x: 0.5, y: 1.3, w: 12.3, h: 0.78, fontSize: 11, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38 }
);
// Three columns
const rxns = [
{
title: "EARLY (ANAPHYLACTIC) REACTION", col: RED,
timing: "Onset: 10 minutes – 2 hours after infusion start",
desc: "This is the most feared acute complication of ASV. It may be a true IgE-mediated Type I anaphylaxis (in previously sensitised individuals) or, more commonly, a non-IgE anaphylactoid reaction caused by direct complement activation by aggregated immunoglobulin molecules. The clinical picture can escalate rapidly from mild urticaria to life-threatening cardiovascular collapse.",
features: [
"Pruritus — usually the first symptom; generalised or palmar",
"Urticarial rash — wheal-and-flare reaction",
"Tachycardia and flushing",
"Fever with rigors",
"Coughing and sneezing",
"Nausea and vomiting",
"Wheezing and bronchospasm",
"Laryngeal oedema (stridor, hoarseness)",
"Hypotension progressing to anaphylactic shock",
"Angioedema of face and lips",
]
},
{
title: "PYROGENIC REACTION", col: ACCENT,
timing: "Onset: Several hours after infusion (typically 1–4 h)",
desc: "Pyrogenic reactions are caused by endotoxin contamination introduced during the manufacturing process, not by an immune mechanism. They are therefore not strictly hypersensitivity reactions but are clinically important. Better quality-controlled modern products have a much lower incidence. The reaction does not require cessation of the ASV course but does require symptomatic management.",
features: [
"High-grade fever (temperature often >39°C)",
"Severe rigors and shaking chills",
"Myalgia and generalised aching",
"Headache",
"Nausea and vomiting",
"Hypotension may occur in severe cases",
"No urticaria or bronchospasm (distinguishes from anaphylaxis)",
"Responds well to cooling and antipyretics",
"Does not indicate allergy to the product",
"Incidence: variable; lower with WHO-certified products",
]
},
{
title: "LATE REACTION (SERUM SICKNESS)", col: ACCENT3,
timing: "Onset: 5–24 days after ASV administration",
desc: "Serum sickness is a classic Type III (immune complex–mediated) hypersensitivity reaction. Circulating antigen-antibody complexes (foreign horse protein bound to human anti-horse antibodies) deposit in vessel walls and tissues, activating complement and triggering widespread inflammation. The risk correlates with the total dose of foreign protein administered and is higher with whole-IgG products. The condition is self-limiting but may require treatment.",
features: [
"Recurrent urticaria and generalised pruritus",
"Fever (often the presenting sign)",
"Lymphadenopathy (tender regional nodes)",
"Arthralgias and periarticular swelling",
"Mononeuritis multiplex (asymmetric nerve palsies)",
"Proteinuria and glomerulonephritis (rare)",
"Oedema",
"Elevated ESR and eosinophilia on blood film",
"Encephalopathy (very rare)",
"Duration: days to weeks; usually resolves without sequelae",
]
},
];
rxns.forEach((r, i) => {
const x = 0.3 + i * 4.35;
card(s, x, 2.22, 4.15, 5.16, CARD_BG, r.col);
cardHeader(s, x, 2.22, 4.15, r.title, r.col);
s.addText(r.timing, { x: x + 0.15, y: 2.7, w: 3.88, h: 0.3, fontSize: 9.5, italic: true, color: r.col, fontFace: "Calibri" });
s.addText(r.desc, { x: x + 0.15, y: 3.0, w: 3.88, h: 1.45, fontSize: 10, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.32 });
sideAccent(s, x + 0.15, 4.5, 2.0, r.col);
s.addText("FEATURES", { x: x + 0.29, y: 4.51, w: 3.7, h: 0.22, fontSize: 8.5, bold: true, color: r.col, fontFace: "Calibri", charSpacing: 1.5 });
s.addText(
r.features.map((f, j) => ({ text: f, options: { bullet: true, fontSize: 10, breakLine: j < r.features.length - 1 } })),
{ x: x + 0.15, y: 4.72, w: 3.88, h: 2.55, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.3 }
);
});
footer(s, "Pye's Surgical Handicraft 22e | Goldman-Cecil Medicine | Rosen's Emergency Medicine");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 8 — HYPERSENSITIVITY REACTIONS (DETAILED)
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "Hypersensitivity Reactions to ASV", "Immunological classification, pathophysiology, and clinical details", ACCENT3);
// Intro
card(s, 0.3, 1.25, 12.7, 0.82, CARD_BG, ACCENT3);
s.addText(
"ASV-associated hypersensitivity reactions span the Gell and Coombs classification. The most clinically significant are Type I (immediate hypersensitivity / anaphylaxis) and Type III (immune complex disease / serum sickness). Understanding the underlying immunological mechanism guides both prevention and management, as the two types require fundamentally different approaches.",
{ x: 0.5, y: 1.3, w: 12.3, h: 0.7, fontSize: 11, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.38 }
);
// Type I — left
card(s, 0.3, 2.14, 6.15, 5.05, CARD_BG, RED);
cardHeader(s, 0.3, 2.14, 6.15, "TYPE I — ANAPHYLAXIS / ANAPHYLACTOID", RED);
s.addText([
{ text: "Immunological Mechanism\n", options: { bold: true, color: ACCENT, fontSize: 11, breakLine: true } },
{ text: "Two distinct pathways produce clinically identical presentations:\n\n", options: { fontSize: 10.5, breakLine: true } },
{ text: "True Anaphylaxis (IgE-mediated): ", options: { bold: true, fontSize: 10.5 } },
{ text: "Requires prior sensitisation — IgE antibodies bound to mast cells and basophils are cross-linked by horse proteins, triggering massive mediator release (histamine, tryptase, leukotrienes, prostaglandins). Seen in individuals previously exposed to equine proteins.\n\n", options: { fontSize: 10.5, breakLine: true } },
{ text: "Anaphylactoid (Complement-mediated): ", options: { bold: true, fontSize: 10.5 } },
{ text: "Does NOT require prior sensitisation. Aggregated IgG molecules in the ASV preparation directly activate the complement cascade (C3a, C5a anaphylatoxins), triggering mast cell and basophil degranulation without IgE. This is the predominant mechanism in first-time ASV recipients and explains why reactions occur even in patients with no prior exposure.\n\n", options: { fontSize: 10.5, breakLine: true } },
{ text: "Risk Factors\n", options: { bold: true, color: ACCENT, fontSize: 11, breakLine: true } },
{ text: "• Atopic individuals (asthma, eczema, allergic rhinitis)\n• Prior exposure to horse serum or equine products\n• Previous ASV administration (sensitises via IgE)\n• Rapid infusion rate (increases antigen bolus delivery)\n• Whole-IgG products (Fc-mediated complement activation)\n\n", options: { fontSize: 10.5, breakLine: true } },
{ text: "Critical Note: ", options: { bold: true, color: RED, fontSize: 10.5 } },
{ text: "Skin testing is useless and dangerous — it does not predict anaphylactoid reactions and may itself trigger sensitisation. It must not be performed.", options: { fontSize: 10.5 } },
], { x: 0.45, y: 2.6, w: 5.85, h: 4.52, fontFace: "Calibri", color: LTXT, lineSpacingMultiple: 1.3, valign: "top" });
// Type III — right
card(s, 6.75, 2.14, 6.3, 5.05, CARD_BG, ACCENT3);
cardHeader(s, 6.75, 2.14, 6.3, "TYPE III — SERUM SICKNESS (IMMUNE COMPLEX)", ACCENT3);
s.addText([
{ text: "Immunological Mechanism\n", options: { bold: true, color: ACCENT, fontSize: 11, breakLine: true } },
{ text: "Serum sickness is a classic Type III (immune complex–mediated) hypersensitivity reaction, first described by von Pirquet and Schick in 1905 following horse serum administration.\n\nAfter ASV infusion, the patient's immune system generates antibodies against the foreign horse proteins (antigens). These form circulating antigen-antibody immune complexes. When antigen is in slight excess, these complexes are intermediate-sized and fail to be efficiently phagocytosed. They deposit in vessel walls, synovium, and renal glomeruli, activating complement (classical pathway) and triggering neutrophil recruitment and local inflammation.\n\n", options: { fontSize: 10.5, breakLine: true } },
{ text: "Dose-Response Relationship\n", options: { bold: true, color: ACCENT, fontSize: 11, breakLine: true } },
{ text: "The risk and severity of serum sickness correlates directly with the total dose of foreign protein administered — a key reason why using the minimum effective dose of ASV matters, and why F(ab')₂ and Fab products (with less foreign protein load per dose) have lower serum sickness rates than whole-IgG preparations.\n\n", options: { fontSize: 10.5, breakLine: true } },
{ text: "Timeline and Prognosis\n", options: { bold: true, color: ACCENT, fontSize: 11, breakLine: true } },
{ text: "Onset: 5–24 days post-administration. Duration: typically 1–3 weeks. The condition is self-limiting and resolves completely in most patients. Renal involvement (proteinuria, glomerulonephritis) is rare but may require prolonged monitoring. Mononeuritis multiplex can cause persistent motor deficits but usually resolves over weeks to months.", options: { fontSize: 10.5 } },
], { x: 6.9, y: 2.6, w: 6.0, h: 4.52, fontFace: "Calibri", color: LTXT, lineSpacingMultiple: 1.3, valign: "top" });
footer(s, "Pye's Surgical Handicraft 22e | Goldman-Cecil Medicine | Janeway's Immunobiology 10e | Rosen's EM");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 9 — MANAGEMENT OF REACTIONS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "Management of ASV Adverse Reactions", "Pre-treatment preparation and stepwise treatment protocols", RED);
// Pre-treatment
card(s, 0.3, 1.25, 12.7, 1.0, "0D1B2A", ACCENT);
sideAccent(s, 0.3, 1.25, 1.0, ACCENT);
s.addText("MANDATORY PRE-TREATMENT PREPARATION", { x: 0.48, y: 1.27, w: 12, h: 0.26, fontSize: 9, bold: true, color: ACCENT, fontFace: "Calibri", charSpacing: 2 });
s.addText(
"Before starting any ASV infusion: draw up adrenaline (0.5 mL of 1:1000) into a syringe and keep at bedside • Establish two IV lines (one for ASV, one for resuscitation if needed) • Ensure oxygen supply, airway support equipment, and resuscitation drugs are immediately available • Infuse at a slow rate for the first 5–10 minutes, then increase to the standard rate if tolerated • Observe the patient continuously throughout the entire infusion.",
{ x: 0.48, y: 1.52, w: 12.3, h: 0.65, fontSize: 10.8, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.35 }
);
// 3 management columns
const mgmt = [
{
title: "EARLY ANAPHYLACTIC REACTION", col: RED,
steps: [
["Step 1 — STOP infusion immediately", "Clamp the ASV line; keep the second IV line patent for resuscitation drugs and fluids."],
["Step 2 — Adrenaline (FIRST-LINE)", "Adults: 0.5–1.0 mL of 1:1000 (1 mg/mL) solution IM (anterolateral thigh preferred) or slow IV in life-threatening collapse.\nChildren: 0.01 mL/kg IM. Repeat every 5–15 min as needed.\nAdrenaline reverses bronchospasm, angioedema, and hypotension and is the cornerstone of management."],
["Step 3 — Antihistamine", "Chlorpheniramine maleate:\nAdults: 10 mg by slow IV injection\nChildren: 0.2 mg/kg IV\nTargets H1-mediated urticaria and pruritus."],
["Step 4 — Corticosteroid", "IV hydrocortisone 200 mg (adults) / 4 mg/kg (children) to blunt the late-phase reaction."],
["Step 5 — Supportive care", "IV fluid bolus for hypotension. Nebulised salbutamol for bronchospasm. Supplemental oxygen."],
["Step 6 — Restart ASV", "Once stable, restart ASV infusion at a slower rate if ASV is still clinically required."],
]
},
{
title: "PYROGENIC REACTION", col: ACCENT,
steps: [
["Step 1 — Slow or pause infusion", "Reduce infusion rate; observe closely. Not always necessary to stop completely."],
["Step 2 — Physical cooling", "Tepid sponging, fan, cool IV fluids. Remove excess clothing."],
["Step 3 — Antipyretics", "Paracetamol 500–1000 mg PO/IV (adults).\nAvoid aspirin in cases of haemotoxic envenomation (antiplatelet effect)."],
["Step 4 — Antihistamine", "Chlorpheniramine 10 mg IV may help if rash is present."],
["Step 5 — Resume infusion", "Once fever resolves, resume infusion slowly. Pyrogenic reactions do not indicate allergy and do not preclude further ASV if clinically needed."],
["Note", "Report batch number to manufacturer; pyrogenic reactions often indicate a product quality issue rather than patient hypersensitivity."],
]
},
{
title: "LATE SERUM SICKNESS", col: ACCENT3,
steps: [
["Anticipate & Counsel", "Warn all patients who received ASV to watch for fever, rash, and joint pains in the 1–3 weeks after treatment and to return to hospital if these develop."],
["Step 1 — Antihistamines", "Oral antihistamines: cetirizine 10 mg OD or loratadine 10 mg OD for pruritus and urticaria. Continue until symptoms resolve."],
["Step 2 — NSAIDs", "Ibuprofen or naproxen for arthralgias and fever. Use with caution in patients with renal involvement."],
["Step 3 — Corticosteroids", "For moderate-severe or persistent symptoms:\nOral prednisolone 1 mg/kg/day for 5–10 days, followed by a tapering dose over the next 1–2 weeks. Corticosteroids suppress immune complex–mediated inflammation and accelerate resolution."],
["Prognosis", "Serum sickness is self-limiting. Almost all patients recover fully. Renal function should be monitored if proteinuria is detected. Mononeuritis may take weeks to months to resolve."],
]
},
];
mgmt.forEach((m, i) => {
const x = 0.3 + i * 4.35;
card(s, x, 2.32, 4.15, 4.98, CARD_BG, m.col);
cardHeader(s, x, 2.32, 4.15, m.title, m.col);
let yOffset = 2.8;
m.steps.forEach(([title, body]) => {
const lineH = body.split("\n").length * 0.22 + 0.28;
s.addText(title, { x: x + 0.15, y: yOffset, w: 3.88, h: 0.26, fontSize: 10, bold: true, color: m.col, fontFace: "Calibri" });
s.addText(body, { x: x + 0.15, y: yOffset + 0.25, w: 3.88, h: lineH, fontSize: 9.8, color: LTXT, fontFace: "Calibri", lineSpacingMultiple: 1.25 });
yOffset += lineH + 0.3;
});
});
footer(s, "Pye's Surgical Handicraft 22e | Goldman-Cecil Medicine | Rosen's Emergency Medicine");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 10 — MONITORING & 20-MIN WBCT
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "Monitoring Response to ASV", "The 20-min WBCT, clinical endpoints, and observational requirements", ACCENT);
// WBCT description
card(s, 0.3, 1.25, 6.15, 5.95, CARD_BG, ACCENT);
cardHeader(s, 0.3, 1.25, 6.15, "20-MINUTE WHOLE BLOOD CLOTTING TEST (WBCT)", ACCENT);
s.addText([
{ text: "The WBCT is the cornerstone bedside test for diagnosing and monitoring viper envenomation, and for determining endpoints of ASV therapy in haemotoxic bites. It requires no laboratory equipment and can be performed anywhere.\n\n", options: { fontSize: 11, breakLine: true } },
{ text: "Procedure:\n", options: { bold: true, fontSize: 11, color: ACCENT, breakLine: true } },
{ text: "1. Collect a few mL of fresh venous blood into a clean, dry glass tube (not plastic — glass activates clotting).\n", options: { fontSize: 11, breakLine: true } },
{ text: "2. Leave the tube completely undisturbed at room temperature for exactly 20 minutes.\n", options: { fontSize: 11, breakLine: true } },
{ text: "3. Gently tilt the tube once at 20 minutes.\n\n", options: { fontSize: 11, breakLine: true } },
{ text: "Interpretation:\n", options: { bold: true, fontSize: 11, color: ACCENT, breakLine: true } },
{ text: "• Blood CLOTS = normal coagulation = no haemotoxic envenomation (or successful neutralisation)\n", options: { fontSize: 11, breakLine: true } },
{ text: "• Blood remains LIQUID = viper bite with venom-induced consumption coagulopathy = WBCT POSITIVE\n\n", options: { fontSize: 11, breakLine: true } },
{ text: "Monitoring Schedule:\n", options: { bold: true, fontSize: 11, color: ACCENT, breakLine: true } },
{ text: "• Repeat every 6 hours during active treatment\n", options: { fontSize: 11, breakLine: true } },
{ text: "• Endpoint: WBCT normalises (clot forms within 20 min)\n", options: { fontSize: 11, breakLine: true } },
{ text: "• After normalisation: repeat at 12-hour intervals for at least 48 hours (to detect late recurrence from venom depot)\n\n", options: { fontSize: 11, breakLine: true } },
{ text: "Rationale for 6-h window: ", options: { bold: true, fontSize: 11 } },
{ text: "After ASV neutralises free venom, the liver requires ~6 hours to replenish consumed clotting factors. A WBCT that remains positive within this window does not necessarily indicate inadequate ASV — wait 6 h before repeating the dose.", options: { fontSize: 11 } },
], { x: 0.45, y: 1.72, w: 5.85, h: 5.38, fontFace: "Calibri", color: LTXT, lineSpacingMultiple: 1.32, valign: "top" });
// Clinical endpoints + observation
card(s, 6.75, 1.25, 6.3, 2.8, CARD_BG, GREEN);
cardHeader(s, 6.75, 1.25, 6.3, "SIGNS OF ADEQUATE RESPONSE", GREEN);
s.addText([
{ text: "Neurotoxic bites: ", options: { bold: true, color: GREEN } },
{ text: "Improvement in ptosis, reduced dysphagia, stronger respiratory effort. Resolution of paralysis may take hours to days even after venom is fully neutralised.\n\n", options: {} },
{ text: "Haemotoxic bites: ", options: { bold: true, color: GREEN } },
{ text: "WBCT normalises, cessation of spontaneous bleeding, improvement in platelet count and fibrinogen.\n\n", options: {} },
{ text: "Cytotoxic bites: ", options: { bold: true, color: GREEN } },
{ text: "Slowing of swelling progression, reduction of local erythema.\n\n", options: {} },
{ text: "General: ", options: { bold: true, color: GREEN } },
{ text: "Blood pressure normalises, consciousness improves, urine output maintained.", options: {} },
], { x: 6.9, y: 1.72, w: 6.0, h: 2.22, fontSize: 11, fontFace: "Calibri", color: LTXT, lineSpacingMultiple: 1.35 });
card(s, 6.75, 4.15, 6.3, 3.05, CARD_BG, ACCENT2);
cardHeader(s, 6.75, 4.15, 6.3, "OBSERVATION REQUIREMENTS", ACCENT2);
s.addText([
{ text: "Duration of hospital observation:\n", options: { bold: true, color: ACCENT2, breakLine: true } },
{ text: "• All envenomed patients should be observed for a minimum of 24 hours\n", options: { breakLine: true } },
{ text: "• Severely envenomed patients (neuro or haemotoxic) require several days of in-hospital monitoring — late recurrence of envenomation can occur due to continuing venom absorption from the subcutaneous injection depot\n", options: { breakLine: true } },
{ text: "• Watch for signs of serum sickness for 3–4 weeks after discharge\n\n", options: { breakLine: true } },
{ text: "Repeat dosing triggers:\n", options: { bold: true, color: ACCENT2, breakLine: true } },
{ text: "• Life-threatening signs persist at 1 hour → repeat full initial dose\n", options: { breakLine: true } },
{ text: "• Neurotoxic: repeat 10 vials at 1 h if paralysis worsens\n", options: { breakLine: true } },
{ text: "• Haemotoxic: repeat every 6 h until WBCT normalises", options: {} },
], { x: 6.9, y: 4.6, w: 6.0, h: 2.45, fontSize: 11, fontFace: "Calibri", color: LTXT, lineSpacingMultiple: 1.33 });
footer(s, "Forensic Medicine & Toxicology 36e | Pye's Surgical Handicraft 22e | Goldman-Cecil Medicine");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 11 — SUMMARY TABLE
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, MID_BG);
header(s, "Summary: ASV Quick Reference", "Consolidated clinical reference for bedside use", ACCENT);
const rows = [
[
{ text: "Parameter", options: { bold: true, color: ACCENT, fontSize: 11 } },
{ text: "Key Information", options: { bold: true, color: ACCENT, fontSize: 11 } },
],
["Definition", "Hyperimmune equine (or ovine) immunoglobulin or fragments (IgG / F(ab')₂ / Fab) raised against snake venom"],
["Indian PAV coverage", "Polyvalent: Naja naja (cobra), Bungarus caeruleus (krait), Vipera russelli (Russell's viper), Echis carinatus (saw-scaled viper)"],
["Mechanism", "Antigen-antibody complex formation → removal by reticuloendothelial system → prevents toxin-target interaction"],
["Half-life (F(ab')₂)", "~90 hours (Indian PAV); each vial neutralises ~6–8 mg venom"],
["Preparation", "Reconstitute in 10 mL sterile water → dilute in 500 mL NS → infuse IV over 60 minutes"],
["Dose: Minimal", "5 vials — local swelling only, no systemic signs"],
["Dose: Moderate", "10 vials — swelling spreading, mild systemic toxicity"],
["Dose: Severe", "10–15 vials — marked local + severe systemic toxicity"],
["Children's dose", "SAME as adults — dose based on venom load, not body weight"],
["Timing", "Maximum benefit ≤4 h; reduced benefit 4–8 h; doubtful >24 h"],
["Skin test", "Do NOT perform — not predictive, delays treatment, may pre-sensitise"],
["Early reaction Rx", "Stop infusion → adrenaline 0.5–1 mL IM (1:1000) → chlorpheniramine 10 mg IV → hydrocortisone 200 mg IV"],
["Pyrogenic Rx", "Slow infusion → antipyretics (paracetamol) → physical cooling → antihistamine"],
["Serum sickness Rx", "Antihistamines + NSAIDs + prednisolone 1 mg/kg/day × 5–10 days if severe"],
["Haemotoxic endpoint", "WBCT normalises; confirm at 12-h intervals for ≥48 h after last dose"],
];
s.addTable(rows, {
x: 0.3, y: 1.25, w: 12.7, h: 5.98,
border: { type: "solid", color: HEADER_BG, pt: 0.4 },
fill: { color: CARD_BG },
colW: [2.8, 9.9],
fontSize: 10.5,
color: LTXT,
fontFace: "Calibri",
rowH: 0.35,
align: "left",
valign: "middle",
});
footer(s, "Pye's Surgical Handicraft 22e | Goldman-Cecil Medicine | Rosen's EM | Forensic Medicine & Toxicology 36e | Park's PSM");
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 12 — REFERENCES
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
bg(s, DARK_BG);
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 13.33, h: 0.1, fill: { color: ACCENT } });
s.addText("REFERENCES", {
x: 0.5, y: 0.2, w: 12, h: 0.68,
fontSize: 30, bold: true, color: ACCENT, fontFace: "Calibri", charSpacing: 4
});
s.addShape(pres.ShapeType.rect, { x: 0.5, y: 0.85, w: 3.5, h: 0.06, fill: { color: ACCENT } });
const refs = [
["1", "Pye's Surgical Handicraft, 22nd Edition", "Mann DL et al.", "Chapter 28: Snake Bite. Table 28.2 — Indications for antivenom. Butterworth-Heinemann. Detailed clinical protocols for ASV dosing, indications, and reaction management."],
["2", "Goldman-Cecil Medicine, International Edition (2-Vol)", "Goldman L, Schafer AI et al.", "Chapter 98: Envenomation. Antivenom production, IgG/F(ab')₂/Fab fractions, adverse effects, dosing principles. Elsevier. ISBN 9780323930345."],
["3", "Rosen's Emergency Medicine: Concepts and Clinical Practice", "Walls RM et al.", "Chapter 53: Pit Viper Snakebites. CroFab, Anavip, envenomation grading, hypersensitivity management guidelines. Elsevier. ISBN 9780323757898."],
["4", "The Essentials of Forensic Medicine & Toxicology, 36th Ed. (2026)", "Pillay VV.", "Chapter 32: Snake Venom & ASV. Indian PAV dose schedule, WBCT protocol, manufacturer details. ISBN 9789366165257."],
["5", "Park's Textbook of Preventive & Social Medicine", "Park K.", "Antivenom section: epidemiology of snakebite; historical context of ASV development. Bhanot Publishers. ISBN 9789382219163."],
["6", "Janeway's Immunobiology, 10th Edition", "Abbas AK, Lichtman AH, Pillai S.", "Appendix A-30: Transfer of protective immunity by antiserum. Type I and Type III hypersensitivity. Norton. ISBN 9780393884876."],
];
refs.forEach(([num, book, authors, desc], i) => {
const y = 1.05 + i * 1.02;
s.addShape(pres.ShapeType.rect, { x: 0.4, y, w: 12.5, h: 0.9, fill: { color: i % 2 === 0 ? HEADER_BG : CARD_BG } });
s.addShape(pres.ShapeType.rect, { x: 0.4, y, w: 0.5, h: 0.9, fill: { color: ACCENT } });
s.addText(num, { x: 0.42, y: y + 0.2, w: 0.45, h: 0.45, fontSize: 14, bold: true, color: DARK_TXT, fontFace: "Calibri", align: "center" });
s.addText(book, { x: 0.98, y: y + 0.04, w: 11.75, h: 0.32, fontSize: 11.5, bold: true, color: WHITE, fontFace: "Calibri" });
s.addText(authors + " | " + desc, { x: 0.98, y: y + 0.35, w: 11.75, h: 0.5, fontSize: 9.5, color: SUBTL, fontFace: "Calibri", italic: true, lineSpacingMultiple: 1.2 });
});
}
// ── Write ────────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/asv-presentation/Anti_Snake_Venom_v2.pptx" })
.then(() => console.log("SUCCESS: /home/daytona/workspace/asv-presentation/Anti_Snake_Venom_v2.pptx"))
.catch(e => { console.error("ERROR:", e); process.exit(1); });
cd /home/daytona/workspace/asv-presentation && node build_asv_v2.js 2>&1
ls -lh /home/daytona/workspace/asv-presentation/Anti_Snake_Venom_v2.pptx
Anti Snake Venom v2
Presentation · PPTX
| Slide | Descriptions added |
|---|---|
| 1 - Title | Introductory paragraph defining ASV and its clinical significance |
| 2 - Envenomation overview | Epidemiology paragraph + mechanism and effects written out in full sentences for each venom type |
| 3 - What is ASV? | Full production process narrative (hyperimmunization protocol, lyophilization, Indian manufacturers); each ASV type (monovalent/polyvalent/paraspecific) has a proper descriptive paragraph |
| 4 - Indications | Rationale paragraph explaining why ASV must be used selectively; each indication category explained; "Important Notes" expanded with reasoning |
| 5 - Pharmacology | Full mechanism paragraph explaining antigen-antibody complex formation and RES clearance; each fragment type (IgG / F(ab')₂ / Fab) has a pharmacokinetic narrative with risk commentary |
| 6 - Dose | Route preparation paragraph; key dosing principles written as explanatory paragraphs including liver recovery rationale and timing logic |
| 7 - Adverse effects | Introductory paragraph; each reaction type (early/pyrogenic/serum sickness) has a description of the reaction's nature before the feature list |
| 8 - Hypersensitivity | Detailed immunological mechanism paragraphs for both Type I (IgE vs anaphylactoid) and Type III (immune complex deposition); dose-response relationship for serum sickness explained |
| 9 - Management | Pre-treatment rationale; each step in the management protocols has an explanatory sentence, not just the drug name |
| 10 - Monitoring/WBCT | Full WBCT procedure, interpretation, and rationale paragraphs; clinical endpoints described in words |
| 11 - Summary | Quick-reference table unchanged (appropriate here) |
| 12 - References | Full descriptions of what each textbook contributes |