Everything about sevoflurane for md Anaesthesia exam with it’s effect on each system pharmacology contraindicated indication what care to be taken
sevoflurane anaesthesia pharmacology
| Property | Value |
|---|---|
| Chemical class | Fluorinated methyl isopropyl ether (completely fluorinated) |
| Physical state | Clear, colorless volatile liquid at room temp |
| Blood:gas partition coefficient | 0.65-0.69 |
| Brain:blood partition coefficient | 1.7 |
| MAC (adults, 100% O2) | 2.0% (1.71-2.05%) |
| MAC awake | ~0.6% |
| MAC in neonates | ~3.3% |
| MAC in elderly (>65 yrs) | ~1.5% |
| Vapor pressure (20°C) | ~157 mmHg |
| Vaporizer type | Conventional variable-bypass vaporizer |
| Metabolism | 2-5% by hepatic CYP2E1 |
| Flammability | Non-flammable, non-explosive |
| Odor | Sweet, non-pungent |
| Boiling point | 58.5°C |
| Preservative | None required (stored in sealed amber bottle) |
| Contraindication | Reason |
|---|---|
| Susceptibility to Malignant Hyperthermia (MH) | Potent trigger - causes uncontrolled skeletal muscle Ca2+ release via RyR1 receptor |
| Severe hypovolemia/haemodynamic instability | Further reduces SVR and BP - can cause cardiovascular collapse |
| Intracranial hypertension (raised ICP) | Dilates cerebral vessels, increases CBF and ICP at normocarbia |
| Previous unexplained severe adverse reaction to volatile agent (suspected) | Caution; though halothane hepatitis risk is absent, individual reactions possible |
| Drug | Interaction |
|---|---|
| Non-depolarizing NMBAs (vecuronium, rocuronium, atracurium) | Potentiated - reduce NMBA dose by ~30-40% |
| Nitrous oxide (N2O) | Additive MAC reduction - reduces sevoflurane requirement |
| Opioids | Reduce MAC (additive effect); increase PONV risk |
| Epinephrine | Sevoflurane does NOT sensitize heart to arrhythmias - safe to use epinephrine (unlike halothane) |
| Beta-blockers / antihypertensives | Additive hypotension |
| QT-prolonging drugs | Additive QT prolongation |
| Inducers of CYP2E1 (ethanol, isoniazid, phenobarbital) | Increased metabolism → higher fluoride production |
| MAO inhibitors | Caution - potential for haemodynamic instability |
| Feature | Detail |
|---|---|
| Induction concentration | 2-4% (maintenance); 4-8% (rapid induction) |
| Maintenance concentration | 1-3% (with O2 or O2/N2O) |
| MAC awake | ~0.6% |
| Time to induction | < 1-2 min (inhalational) |
| Emergence | Rapid - earlier than isoflurane |
| PONV | Higher than propofol TIVA; lower if opioids avoided |
| Advantages | Non-pungent, best bronchodilator, rapid, no arrhythmia sensitization, no hepatotoxicity |
| Disadvantages | Emergence delirium (children), compound A, mild QT prolongation, uterine relaxation |
| Property | Sevoflurane | Isoflurane | Desflurane | Halothane |
|---|---|---|---|---|
| Blood:gas coeff | 0.65 | 1.4 | 0.42 | 2.3 |
| MAC (%) | 2.0 | 1.15 | 6-7 | 0.75 |
| Vaporizer | Standard | Standard | Heated/pressurized | Standard |
| Inhalational induction | Excellent | Poor (pungent) | Poor (pungent) | Good |
| Metabolism | 5% | <2% | <0.05% | >40% |
| Hepatotoxicity | No | Rare | No | Yes (halothane hepatitis) |
| Arrhythmia sensitization | No | Minimal | No | Yes |
| Bronchodilation | Best | Good | Good | Good |
| Compound A | Yes | No | No | No |
| MH trigger | Yes | Yes | Yes | Yes |
Recent evidence note: A 2026 meta-analysis (PMID: 41217504) found EEG-guided sevoflurane dosing reduces emergence delirium in children compared to standard care. A 2025 meta-analysis (PMID: 41062401) suggests remimazolam has hemodynamic advantages over sevoflurane in select populations. These do not overturn current clinical practice recommendations.
Create a study guide PDF summarizing sevoflurane pharmacology for exam prep
ls -la /home/daytona/workspace/ 2>/dev/null && python3 -c "import reportlab; print('reportlab ok')" && python3 -c "from reportlab.lib.pagesizes import A4; print('A4 ok')"
mkdir -p /home/daytona/workspace/sevoflurane-study-guide
~/sevoflurane-study-guide/build_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm, mm
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Table,
TableStyle, HRFlowable, KeepTogether, PageBreak)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY
from reportlab.platypus import Image
from reportlab.graphics.shapes import Drawing, Rect, String, Line, Circle
from reportlab.graphics import renderPDF
import os
OUTPUT = "/home/daytona/workspace/sevoflurane-study-guide/Sevoflurane_Study_Guide.pdf"
# ── Colour Palette ────────────────────────────────────────────────────────────
NAVY = colors.HexColor("#1A3A5C")
TEAL = colors.HexColor("#0D7680")
AMBER = colors.HexColor("#E07B00")
RED = colors.HexColor("#C0392B")
GREEN = colors.HexColor("#1A7A4A")
PURPLE = colors.HexColor("#6A3D9A")
LIGHT = colors.HexColor("#EAF4FB")
LIGHT2 = colors.HexColor("#FFF8EC")
LIGHT3 = colors.HexColor("#F0FFF4")
LIGHT4 = colors.HexColor("#FDF0F0")
LIGHT5 = colors.HexColor("#F5F0FF")
WHITE = colors.white
DGREY = colors.HexColor("#444444")
MGREY = colors.HexColor("#888888")
LGREY = colors.HexColor("#F5F5F5")
BORDER = colors.HexColor("#CCDDEE")
doc = SimpleDocTemplate(
OUTPUT,
pagesize=A4,
leftMargin=1.8*cm, rightMargin=1.8*cm,
topMargin=2*cm, bottomMargin=2*cm,
title="Sevoflurane – Anaesthesia Exam Study Guide",
author="Orris Medical AI",
)
W, H = A4
CW = W - 3.6*cm # content width
styles = getSampleStyleSheet()
def S(name, **kw):
base = styles[name] if name in styles else styles["Normal"]
return ParagraphStyle(name + str(id(kw)), parent=base, **kw)
# ── Custom Styles ─────────────────────────────────────────────────────────────
cover_title = S("Title", fontSize=30, textColor=WHITE, leading=36, alignment=TA_CENTER, fontName="Helvetica-Bold")
cover_sub = S("Normal", fontSize=14, textColor=LIGHT, leading=20, alignment=TA_CENTER, fontName="Helvetica")
cover_tag = S("Normal", fontSize=10, textColor=colors.HexColor("#AACCDD"), alignment=TA_CENTER)
sec_head = S("Heading1", fontSize=13, textColor=WHITE, leading=17, fontName="Helvetica-Bold", spaceAfter=2, spaceBefore=4)
sub_head = S("Heading2", fontSize=10.5, textColor=NAVY, leading=14, fontName="Helvetica-Bold", spaceBefore=6, spaceAfter=2)
body = S("Normal", fontSize=8.5, textColor=DGREY, leading=13, alignment=TA_JUSTIFY)
body_small = S("Normal", fontSize=7.8, textColor=DGREY, leading=11.5)
bullet_style = S("Normal", fontSize=8.5, textColor=DGREY, leading=13, leftIndent=14, firstLineIndent=-10)
bold_bullet = S("Normal", fontSize=8.5, textColor=NAVY, leading=13, leftIndent=14, firstLineIndent=-10, fontName="Helvetica-Bold")
warn_text = S("Normal", fontSize=8.5, textColor=RED, leading=13, fontName="Helvetica-Bold")
tip_text = S("Normal", fontSize=8.5, textColor=GREEN, leading=13, fontName="Helvetica-BoldOblique")
table_hdr = S("Normal", fontSize=8, textColor=WHITE, leading=11, fontName="Helvetica-Bold", alignment=TA_CENTER)
table_cell = S("Normal", fontSize=8, textColor=DGREY, leading=11)
table_cell_c = S("Normal", fontSize=8, textColor=DGREY, leading=11, alignment=TA_CENTER)
table_lbl = S("Normal", fontSize=8, textColor=NAVY, leading=11, fontName="Helvetica-Bold")
footnote = S("Normal", fontSize=7, textColor=MGREY, leading=10, fontName="Helvetica-Oblique")
highlight = S("Normal", fontSize=8.5, textColor=NAVY, leading=13, fontName="Helvetica-Bold")
page_hdr = S("Normal", fontSize=7.5, textColor=MGREY, leading=10, alignment=TA_CENTER)
story = []
# ══════════════════════════════════════════════════════════════════════════════
# HELPER: section banner
# ══════════════════════════════════════════════════════════════════════════════
def section_banner(number, title, color=NAVY):
data = [[Paragraph(f"<b>{number} {title}</b>", sec_head)]]
t = Table(data, colWidths=[CW])
t.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,-1), color),
("ROUNDEDCORNERS", [4]),
("TOPPADDING", (0,0),(-1,-1), 5),
("BOTTOMPADDING",(0,0),(-1,-1), 5),
("LEFTPADDING", (0,0),(-1,-1), 10),
("RIGHTPADDING", (0,0),(-1,-1), 8),
]))
story.append(Spacer(1, 6))
story.append(t)
story.append(Spacer(1, 4))
def info_box(text, bg=LIGHT, border_color=TEAL, icon="ℹ"):
data = [[Paragraph(f"<b>{icon}</b>"), Paragraph(text, body)]]
t = Table(data, colWidths=[0.5*cm, CW-0.6*cm])
t.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,-1), bg),
("BOX", (0,0),(-1,-1), 0.8, border_color),
("TOPPADDING", (0,0),(-1,-1), 5),
("BOTTOMPADDING",(0,0),(-1,-1), 5),
("LEFTPADDING", (0,0),(-1,-1), 6),
("VALIGN", (0,0),(-1,-1), "TOP"),
]))
story.append(t)
story.append(Spacer(1, 4))
def bullet(text, bold=False):
st = bold_bullet if bold else bullet_style
story.append(Paragraph(f"• {text}", st))
def spacer(h=6):
story.append(Spacer(1, h))
def hr():
story.append(HRFlowable(width=CW, thickness=0.5, color=BORDER, spaceAfter=4, spaceBefore=4))
def two_col_table(rows, col1_w=None, col2_w=None, hdr=None, hdr_color=NAVY, stripe=True):
if col1_w is None: col1_w = CW * 0.38
if col2_w is None: col2_w = CW - col1_w
data = []
if hdr:
data.append([Paragraph(hdr[0], table_hdr), Paragraph(hdr[1], table_hdr)])
for i, (k, v) in enumerate(rows):
data.append([Paragraph(k, table_lbl), Paragraph(v, table_cell)])
t = Table(data, colWidths=[col1_w, col2_w])
style_cmds = [
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
("RIGHTPADDING", (0,0),(-1,-1), 6),
("VALIGN", (0,0),(-1,-1), "TOP"),
("GRID", (0,0),(-1,-1), 0.4, BORDER),
("ROWBACKGROUNDS", (0, 1 if hdr else 0), (-1,-1), [WHITE, LGREY] if stripe else [WHITE]),
]
if hdr:
style_cmds += [
("BACKGROUND", (0,0),(-1,0), hdr_color),
("TEXTCOLOR", (0,0),(-1,0), WHITE),
]
t.setStyle(TableStyle(style_cmds))
story.append(t)
story.append(Spacer(1,4))
def multi_col_table(headers, rows, col_widths=None, hdr_color=NAVY):
n = len(headers)
if col_widths is None:
col_widths = [CW / n] * n
data = [[Paragraph(h, table_hdr) for h in headers]]
for row in rows:
data.append([Paragraph(str(c), table_cell_c) for c in row])
t = Table(data, colWidths=col_widths)
t.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), hdr_color),
("ROWBACKGROUNDS",(0,1),(-1,-1), [WHITE, LGREY]),
("GRID", (0,0),(-1,-1), 0.4, BORDER),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING", (0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 4),
("RIGHTPADDING", (0,0),(-1,-1), 4),
("VALIGN", (0,0),(-1,-1), "MIDDLE"),
]))
story.append(t)
story.append(Spacer(1,4))
# ══════════════════════════════════════════════════════════════════════════════
# COVER PAGE
# ══════════════════════════════════════════════════════════════════════════════
def cover_page():
# Full-width blue background banner
banner_data = [[
Paragraph("SEVOFLURANE", cover_title),
]]
banner = Table(banner_data, colWidths=[CW])
banner.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,-1), NAVY),
("TOPPADDING", (0,0),(-1,-1), 28),
("BOTTOMPADDING",(0,0),(-1,-1), 6),
("LEFTPADDING", (0,0),(-1,-1), 10),
("ROUNDEDCORNERS",[6]),
]))
story.append(banner)
subtitle_data = [[Paragraph("Complete Pharmacology Study Guide", cover_sub)]]
subtitle_tbl = Table(subtitle_data, colWidths=[CW])
subtitle_tbl.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,-1), TEAL),
("TOPPADDING", (0,0),(-1,-1), 8),
("BOTTOMPADDING",(0,0),(-1,-1), 14),
("ROUNDEDCORNERS",[0,0,6,6]),
]))
story.append(subtitle_tbl)
spacer(12)
tag_data = [[Paragraph("For MD / DNB / FRCA Anaesthesia Examinations • Based on Miller's, Morgan & Mikhail's, Goodman & Gilman's, Barash & Katzung", cover_tag)]]
tag_tbl = Table(tag_data, colWidths=[CW])
tag_tbl.setStyle(TableStyle([
("TOPPADDING",(0,0),(-1,-1),4), ("BOTTOMPADDING",(0,0),(-1,-1),4)
]))
story.append(tag_tbl)
spacer(10)
# Quick-reference card on cover
qr_rows = [
("MAC (adult, O₂)", "2.0%"),
("MAC awake", "~0.6%"),
("MAC (neonate/infant)", "~3.2–3.3%"),
("MAC (elderly >65 y)", "~1.5%"),
("Blood:gas coeff", "0.65"),
("Metabolism (CYP2E1)", "~5%"),
("Vaporizer type", "Standard variable-bypass"),
("Odour", "Sweet, non-pungent"),
("Flammable?", "No"),
]
story.append(Paragraph("<b>Quick Reference Card</b>", sub_head))
two_col_table(qr_rows, hdr=("PROPERTY", "VALUE"), hdr_color=TEAL)
spacer(8)
story.append(Paragraph(
"<b>Indications at a glance:</b> Inhalational induction (esp. paediatrics) • Maintenance of GA • Ambulatory surgery • "
"Asthma / bronchospasm • Day-case surgery • Patients at risk for myocardial ischaemia",
body))
spacer(4)
info_box(
"<b>Contraindications:</b> Malignant hyperthermia susceptibility • Severe hypovolaemia • Raised intracranial pressure",
bg=LIGHT4, border_color=RED, icon="⚠")
cover_page()
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 1 – PHYSICAL & PHARMACOKINETIC PROPERTIES
# ══════════════════════════════════════════════════════════════════════════════
section_banner("01", "Physical & Pharmacokinetic Properties", NAVY)
story.append(Paragraph("<b>Chemical identity:</b> Fluorinated methyl isopropyl ether — completely fluorinated, sweet-smelling, colourless volatile liquid at room temperature.", body))
spacer(4)
phys_rows = [
("Chemical class", "Fluorinated methyl isopropyl ether"),
("Molecular weight", "200.05 g/mol"),
("Boiling point", "58.5°C"),
("Vapour pressure (20°C)", "157 mmHg"),
("Vaporizer", "Standard variable-bypass (no heated vaporizer needed)"),
("Flammable / explosive", "No (in air or O₂)"),
("Storage", "Sealed amber bottle, no preservative required"),
("Stability", "Unstable in desiccated soda lime → Compound A + CO"),
]
story.append(Paragraph("<b>Physical Properties</b>", sub_head))
two_col_table(phys_rows)
pk_rows = [
("Blood:gas partition coeff", "0.65 (rapid induction/emergence)"),
("Brain:blood partition coeff", "1.7"),
("Oil:gas partition coeff", "~47–53"),
("MAC (adult, 100% O₂)", "2.0% (range 1.71–2.05%)"),
("MAC awake", "~0.6%"),
("MAC – neonates", "~3.3%"),
("MAC – infants (peak ~6 mo)", "~3.2%"),
("MAC – elderly (>65 yr)", "~1.5%"),
("Induction concentration", "2–4% (maintenance); 4–8% (rapid mask induction)"),
("Time to loss of consciousness","1–2 min (inhalational)"),
("Metabolism", "~5% via hepatic CYP2E1"),
("Key metabolites", "Hexafluoroisopropanol (HFIP) + inorganic fluoride (F⁻)"),
("Peak serum F⁻", "22–31 µmol/L (>50 µmol/L in ~7% — no clinical nephrotoxicity)"),
("Excretion", "Predominantly exhaled unchanged via lungs"),
]
story.append(Paragraph("<b>Pharmacokinetic Parameters</b>", sub_head))
two_col_table(pk_rows)
info_box(
"<b>Low blood:gas solubility (0.65)</b> = quick equilibration between alveoli and blood → fast induction, rapid changes in depth, "
"and brisk emergence. Faster than isoflurane; slightly slower than desflurane.",
bg=LIGHT, border_color=TEAL)
# MAC Modifiers
story.append(Paragraph("<b>MAC Modifiers</b>", sub_head))
mac_data = [
["Decrease MAC", "Increase MAC"],
["Increasing age", "Infancy (peak ~6 months)"],
["Hypothermia", "Hyperthermia"],
["Hypotension (MAP <50 mmHg)", "Chronic alcohol use"],
["Pregnancy", "Chronic opioid use"],
["Opioids (additive)", "Hyperthyroidism"],
["N₂O (additive)", "CNS stimulants"],
["Alpha-2 agonists (dexmedetomidine)", "—"],
["Benzodiazepines", "—"],
["Metabolic acidosis / hypoxia", "—"],
]
mac_t = Table(mac_data, colWidths=[CW/2, CW/2])
mac_t.setStyle(TableStyle([
("BACKGROUND", (0,0),(0,0), RED),
("BACKGROUND", (1,0),(1,0), GREEN),
("TEXTCOLOR", (0,0),(-1,0), WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 8),
("ROWBACKGROUNDS",(0,1),(-1,-1), [WHITE, LGREY]),
("GRID", (0,0),(-1,-1), 0.4, BORDER),
("TOPPADDING", (0,0),(-1,-1), 3),
("BOTTOMPADDING",(0,0),(-1,-1), 3),
("LEFTPADDING", (0,0),(-1,-1), 6),
("VALIGN", (0,0),(-1,-1), "MIDDLE"),
("ALIGN", (0,0),(-1,0), "CENTER"),
]))
story.append(mac_t)
spacer(6)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 2 – MECHANISM OF ACTION
# ══════════════════════════════════════════════════════════════════════════════
section_banner("02", "Mechanism of Action", TEAL)
moa_rows = [
("GABA-A receptor potentiation", "Main mechanism — enhances inhibitory Cl⁻ conductance → CNS depression"),
("NMDA receptor inhibition", "Reduces excitatory glutamate signalling → amnesia, immobility"),
("2-pore domain K⁺ channels", "TREK/TASK channel activation → neuronal hyperpolarisation"),
("Voltage-gated Na⁺/Ca²⁺ block", "Reduces action potential generation and propagation"),
("Shaker-family Kv1.2 channels", "Photoaffinity labelling confirms direct interaction"),
]
two_col_table(moa_rows, hdr=("TARGET", "EFFECT"), hdr_color=TEAL, col1_w=CW*0.34)
info_box("Sevoflurane does NOT have a single receptor target — it acts on multiple ion channels and receptors, a property shared by all volatile anaesthetics ('unitary theory').",
bg=LIGHT, border_color=TEAL)
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 3 – EFFECTS ON ORGAN SYSTEMS
# ══════════════════════════════════════════════════════════════════════════════
section_banner("03", "Effects on Organ Systems", NAVY)
# --- CVS ---
story.append(Paragraph("A. Cardiovascular System", sub_head))
cvs = [
("BP", "Concentration-dependent ↓ (SVR reduction + mild myocardial depression)"),
("Heart rate", "No significant tachycardia (contrast: isoflurane/desflurane which increase HR)"),
("Cardiac output", "Mild ↓ — less well maintained than with isoflurane (no reflex tachycardia)"),
("SVR", "↓ — less pronounced than isoflurane or desflurane"),
("QT interval", "Prolongation; may persist 60 min post-emergence in infants"),
("Arrhythmias", "Does NOT sensitise myocardium to catecholamines (safe to use adrenaline)"),
("Coronary vasodilation", "Half as potent as isoflurane — less 'coronary steal' risk"),
("Ischaemic preconditioning","Cardioprotective — reduces ischaemia–reperfusion injury"),
]
two_col_table(cvs, col1_w=CW*0.30)
# --- Respiratory ---
story.append(Paragraph("B. Respiratory System", sub_head))
resp = [
("Tidal volume", "↓ (concentration-dependent)"),
("Respiratory rate", "↑ (but does not compensate for ↓ Vt)"),
("Minute ventilation", "↓ net → ↑ PaCO₂"),
("Airway irritation", "None — ideal for mask induction (no cough, no laryngospasm)"),
("Bronchodilation", "MOST POTENT bronchodilator of all inhaled anaesthetics"),
("Secretions", "No significant increase"),
("HPV", "↓ Hypoxic pulmonary vasoconstriction → can worsen V/Q mismatch"),
]
two_col_table(resp, col1_w=CW*0.30)
info_box("KEY EXAM POINT: Sevoflurane is the <b>most effective clinical bronchodilator</b> among all inhalational anaesthetics — drug of choice for patients with reactive airways / status asthmaticus.",
bg=LIGHT3, border_color=GREEN, icon="★")
# --- CNS ---
story.append(Paragraph("C. Central Nervous System", sub_head))
cns = [
("CMRO₂", "↓ (dose-dependent cerebral metabolic depression)"),
("CBF / ICP", "↑ CVD → mild ↑ CBF and ICP at normocarbia (>1.5 MAC more marked)"),
("Autoregulation", "Impaired at >1.5 MAC"),
("CO₂ reactivity", "Preserved — hyperventilation counteracts ICP rise"),
("Seizures", "NOT epileptogenic (unlike enflurane); spike-wave at >2 MAC rare"),
("Emergence delirium","Common in children — short-lived, no long-term sequelae"),
("EEG", "Burst suppression at high concentrations"),
]
two_col_table(cns, col1_w=CW*0.30)
spacer(4)
info_box("CAUTION in raised ICP: Use hyperventilation to maintain normocarbia and counteract cerebrovascular dilation. Limit concentration, especially >1.5 MAC.",
bg=LIGHT4, border_color=RED, icon="⚠")
# --- NMJ ---
story.append(Paragraph("D. Neuromuscular System", sub_head))
bullet("Potentiates non-depolarising NMBAs (vecuronium, rocuronium, atracurium) — reduce NMBA dose by ~30–40%")
bullet("Adequate muscle relaxation for intubation at high concentrations after inhalational induction")
bullet("<b>Trigger for Malignant Hyperthermia (MH)</b> — ABSOLUTE CONTRAINDICATION in susceptible patients", bold=True)
spacer(4)
# --- Renal ---
story.append(Paragraph("E. Renal System", sub_head))
renal = [
("Direct effect", "Slight ↓ renal blood flow"),
("Compound A", "Nephrotoxic in rats (proximal tubular necrosis >150 ppm-hr); NOT clinically nephrotoxic in humans"),
("Mechanism (rats)", "CYP2E1 / β-lyase pathway → reactive thionoacyl fluoride → tubular injury"),
("Why safe in humans", "Human kidneys have far lower β-lyase activity than rat kidneys"),
("Serum fluoride (F⁻)", "Peak 22–31 µmol/L; >50 µmol/L in ~7% — no clinical renal dysfunction"),
("Compound A production", "↑ with desiccated Baralyme, low FGF, high concentration, long duration"),
("FDA recommendation", "FGF ≥1–2 L/min; limit to ≤2 MAC-hours at low flow"),
]
two_col_table(renal, col1_w=CW*0.30)
# --- Hepatic ---
story.append(Paragraph("F. Hepatic System", sub_head))
hep = [
("Portal vein flow", "↓ (dose-dependent)"),
("Hepatic artery flow", "↑ (compensatory) — total hepatic O₂ delivery maintained"),
("Hepatotoxicity", "Not reported — NOT metabolised to trifluoroacetate"),
("Mechanism of safety", "Metabolised to HFIP + glucuronide, NOT acyl halide that stimulates antibodies"),
]
two_col_table(hep, col1_w=CW*0.30)
info_box("No halothane-type hepatitis with sevoflurane — CYP2E1 pathway produces hexafluoroisopropanol (HFIP), not trifluoroacetate. No immune-mediated hepatotoxicity.",
bg=LIGHT3, border_color=GREEN)
# --- Uterus ---
story.append(Paragraph("G. Uterus / Obstetrics", sub_head))
bullet("Dose-dependent uterine relaxation (tocolytic effect)")
bullet("At >1 MAC: may increase uterine bleeding during Caesarean section")
bullet("Crosses placenta — safe in low doses for maternal anaesthesia")
bullet("Use ≤1 MAC for obstetric procedures to minimise uterine atony")
spacer(4)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 4 – INDICATIONS
# ══════════════════════════════════════════════════════════════════════════════
section_banner("04", "Indications", GREEN)
indications = [
("1", "Inhalational induction of anaesthesia", "Esp. children & needle-phobic adults — non-pungent, non-irritating"),
("2", "Maintenance of general anaesthesia", "After IV or inhalational induction; 1–3% in O₂ or O₂/N₂O"),
("3", "Ambulatory / day-case surgery", "Rapid emergence → early discharge"),
("4", "Paediatric anaesthesia", "Drug of choice — replaces halothane globally"),
("5", "Reactive airways / asthma", "Most potent bronchodilator; reduces bronchospasm"),
("6", "IHD / tachyarrhythmia risk", "No reflex tachycardia, no arrhythmia sensitisation"),
("7", "VIMA (volatile induction + maintenance)", "Single-agent technique; earlier orientation vs isoflurane"),
("8", "Rapid sequence inhalational induction", "4–8% with 50% N₂O → unconsciousness in <1 min"),
]
ind_data = [[Paragraph("#", table_hdr), Paragraph("Indication", table_hdr), Paragraph("Notes", table_hdr)]] + [
[Paragraph(r[0], table_cell_c), Paragraph(r[1], table_lbl), Paragraph(r[2], table_cell)]
for r in indications
]
ind_t = Table(ind_data, colWidths=[0.5*cm, CW*0.38, CW*0.57])
ind_t.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), GREEN),
("TEXTCOLOR", (0,0),(-1,0), WHITE),
("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LGREY]),
("GRID", (0,0),(-1,-1), 0.4, BORDER),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 5),
("VALIGN", (0,0),(-1,-1), "TOP"),
]))
story.append(ind_t)
spacer(6)
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 5 – CONTRAINDICATIONS
# ══════════════════════════════════════════════════════════════════════════════
section_banner("05", "Contraindications", RED)
ci = [
("Malignant Hyperthermia susceptibility",
"ABSOLUTE — Sevoflurane is a potent MH trigger; causes uncontrolled Ca²⁺ release via mutant RyR1 receptor. "
"Prepare vapour-free machine (flush 10–20 min with high O₂ flow). Have dantrolene ready."),
("Severe hypovolaemia / haemodynamic instability",
"Further ↓ SVR and BP → risk of cardiovascular collapse."),
("Raised intracranial pressure",
"Cerebral vasodilation ↑ ICP — use only if adequate hyperventilation maintained; avoid in decompensated head injury."),
("Desiccated CO₂ absorbent in circuit",
"Risk of fire, explosion, and CO production — check absorbent moisture before use."),
]
ci_data = [[Paragraph("Contraindication", table_hdr), Paragraph("Reason / Action", table_hdr)]] + [
[Paragraph(r[0], table_lbl), Paragraph(r[1], table_cell)] for r in ci
]
ci_t = Table(ci_data, colWidths=[CW*0.32, CW*0.68])
ci_t.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), RED),
("TEXTCOLOR", (0,0),(-1,0), WHITE),
("ROWBACKGROUNDS",(0,1),(-1,-1),[LIGHT4, WHITE]),
("GRID", (0,0),(-1,-1), 0.4, BORDER),
("TOPPADDING", (0,0),(-1,-1), 5),
("BOTTOMPADDING",(0,0),(-1,-1), 5),
("LEFTPADDING", (0,0),(-1,-1), 6),
("VALIGN", (0,0),(-1,-1), "TOP"),
]))
story.append(ci_t)
spacer(6)
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 6 – PRECAUTIONS & CARE
# ══════════════════════════════════════════════════════════════════════════════
section_banner("06", "Precautions & Care to be Taken", AMBER)
prec_areas = [
("Malignant Hyperthermia", LIGHT4, RED, [
"Wash out anaesthesia machine: flush with O₂ at 10 L/min for 10–20 min before use",
"Replace breathing circuit, reservoir bag, and CO₂ canister",
"Have dantrolene available (2.5 mg/kg IV bolus; repeat up to 10 mg/kg)",
"Use TIVA (propofol + remifentanil) for MH-susceptible patients",
"Monitor temperature, EtCO₂, and muscle rigidity vigilantly",
]),
("CO₂ Absorbent / Compound A / Fire Risk", LIGHT2, AMBER, [
"Never use with desiccated soda lime or Baralyme — risk of fire and Compound A",
"Prefer calcium hydroxide-based absorbents (Amsorb®, Dragersorb Free®) — minimal Compound A",
"Maintain FGF ≥2 L/min for prolonged (>2–3 hr) anaesthesia",
"Do not run dry O₂/N₂O flow through circuit overnight",
"Isolated circuit fires reported with desiccated absorbent — inspect moisture before use",
]),
("Paediatric – Emergence Delirium", LIGHT5, PURPLE, [
"Warn parents — not associated with long-term harm",
"Prevention: adequate analgesia is the most important measure",
"Pharmacological prevention: fentanyl 1 µg/kg IV, OR dexmedetomidine 0.3–0.5 µg/kg, OR propofol 1 mg/kg at end of case",
"Midazolam premedication alone is NOT effective for emergence delirium",
"EEG-guided dosing may reduce incidence (2026 meta-analysis, PMID 41217504)",
]),
("Obstetric Surgery", LIGHT, TEAL, [
"Keep ≤1 MAC to minimise uterine atony and excessive blood loss",
"Have oxytocin ready and increase dose if uterine tone is poor",
"For GA Caesarean: use 0.5 MAC sevoflurane + 50% N₂O until delivery, then titrate",
]),
("QT Prolongation", LIGHT4, RED, [
"Caution in patients on drugs that prolong QT: Class Ia/III antiarrhythmics, TCAs, haloperidol",
"Monitor ECG in high-risk patients; prolongation may persist up to 60 min post-emergence in infants",
"Correct electrolyte abnormalities (K⁺, Mg²⁺) pre-operatively",
]),
("Renal Impairment", LIGHT2, AMBER, [
"Clinically, sevoflurane nephrotoxicity is NOT established in humans",
"Caution in severe CKD: use FGF ≥2 L/min, avoid prolonged low-flow anaesthesia",
"Monitor creatinine / urea post-operatively after prolonged exposure",
]),
]
for title, bg, border, bullets in prec_areas:
header_data = [[Paragraph(f"<b>{title}</b>",
S("Normal", fontSize=9, textColor=border, fontName="Helvetica-Bold", leading=13))]]
ht = Table(header_data, colWidths=[CW])
ht.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,-1), bg),
("LEFTPADDING", (0,0),(-1,-1), 8),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING",(0,0),(-1,-1), 2),
("LINEBELOW", (0,0),(-1,-1), 1, border),
]))
story.append(ht)
for b in bullets:
bullet_data = [[Paragraph("•", body), Paragraph(b, body)]]
bt = Table(bullet_data, colWidths=[0.4*cm, CW-0.4*cm])
bt.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,-1), bg),
("TOPPADDING", (0,0),(-1,-1), 2),
("BOTTOMPADDING",(0,0),(-1,-1), 2),
("LEFTPADDING", (0,0),(-1,-1), 8),
("VALIGN", (0,0),(-1,-1), "TOP"),
]))
story.append(bt)
story.append(Spacer(1, 5))
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 7 – DRUG INTERACTIONS
# ══════════════════════════════════════════════════════════════════════════════
section_banner("07", "Drug Interactions", PURPLE)
di_rows = [
("Non-depolarising NMBAs\n(vec, roc, atrac, cis-atrac)",
"POTENTIATED — ↑ block duration and depth; reduce NMBA dose by ~30–40%", "Significant"),
("Nitrous oxide (N₂O)",
"ADDITIVE MAC reduction — can use 1–1.5% sevo with 50–60% N₂O", "Beneficial"),
("Opioids",
"Reduce MAC (supradditive); ↑ PONV risk", "Dose-adjust"),
("Epinephrine (adrenaline)",
"SAFE — does NOT sensitise myocardium to arrhythmias (unlike halothane)", "Safe"),
("Beta-blockers / antihypertensives",
"Additive hypotension; anticipate exaggerated BP drop", "Caution"),
("QT-prolonging drugs\n(Class Ia/III, TCAs, haloperidol)",
"Additive QT prolongation — risk of torsades de pointes", "Caution"),
("CYP2E1 inducers\n(ethanol, isoniazid, phenobarbital)",
"↑ Metabolism → ↑ serum fluoride production", "Caution"),
("Alpha-2 agonists\n(dexmedetomidine, clonidine)",
"↓ MAC significantly (20–40%) — useful for emergence delirium prevention", "Beneficial"),
("Propofol",
"Often combined for TIVA/inhalational technique — no adverse interaction", "Compatible"),
]
di_data = [[Paragraph(h, table_hdr) for h in ["Drug / Class", "Interaction", "Clinical Significance"]]]
sig_colors = {"Significant": colors.HexColor("#FFE0DC"), "Beneficial": LIGHT3,
"Dose-adjust": LIGHT2, "Caution": LIGHT2, "Safe": LIGHT3, "Compatible": LIGHT}
for r in di_rows:
di_data.append([
Paragraph(r[0], table_lbl),
Paragraph(r[1], table_cell),
Paragraph(r[2], table_cell_c),
])
di_t = Table(di_data, colWidths=[CW*0.26, CW*0.55, CW*0.19])
di_cmds = [
("BACKGROUND", (0,0),(-1,0), PURPLE),
("TEXTCOLOR", (0,0),(-1,0), WHITE),
("GRID", (0,0),(-1,-1), 0.4, BORDER),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING", (0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 5),
("VALIGN", (0,0),(-1,-1), "TOP"),
("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LGREY]),
]
di_t.setStyle(TableStyle(di_cmds))
story.append(di_t)
spacer(6)
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 8 – COMPARISON TABLE
# ══════════════════════════════════════════════════════════════════════════════
section_banner("08", "Volatile Anaesthetic Comparison", TEAL)
comp_headers = ["Property", "Sevoflurane", "Isoflurane", "Desflurane", "Halothane"]
comp_rows = [
["Blood:gas coeff", "0.65", "1.40", "0.42", "2.30"],
["MAC (%)", "2.0", "1.15", "6–7", "0.75"],
["Vaporizer", "Standard", "Standard", "Heated", "Standard"],
["Inhalational induction","Excellent","Poor (pungent)","Poor (pungent)","Good"],
["Metabolism", "~5%", "<2%", "<0.05%", ">40%"],
["Hepatotoxicity", "No", "Rare", "No", "Yes (hepatitis)"],
["Arrhythmia sensitisation","No", "Minimal", "No", "YES"],
["Bronchodilation", "BEST", "Good", "Good", "Good"],
["Heart rate effect", "None", "↑ HR", "↑↑ HR", "↓ HR"],
["Compound A", "Yes", "No", "No", "No"],
["MH trigger", "Yes", "Yes", "Yes", "Yes"],
["PONV risk", "Moderate", "Moderate", "Lower", "High"],
]
c_widths = [CW*0.22, CW*0.195, CW*0.195, CW*0.195, CW*0.195]
c_data = [[Paragraph(h, table_hdr) for h in comp_headers]]
for row in comp_rows:
c_data.append([Paragraph(str(c), table_cell_c) for c in row])
# highlight sevoflurane column
c_t = Table(c_data, colWidths=c_widths)
sevo_col_style = [
("BACKGROUND", (1,1),(1,-1), LIGHT),
("FONTNAME", (1,1),(1,-1), "Helvetica-Bold"),
("TEXTCOLOR", (1,1),(1,-1), NAVY),
]
c_t.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), TEAL),
("TEXTCOLOR", (0,0),(-1,0), WHITE),
("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LGREY]),
("GRID", (0,0),(-1,-1), 0.4, BORDER),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING", (0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 4),
("VALIGN", (0,0),(-1,-1), "MIDDLE"),
] + sevo_col_style))
story.append(c_t)
spacer(4)
story.append(PageBreak())
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 9 – COMPOUND A & BIOTRANSFORMATION DETAIL
# ══════════════════════════════════════════════════════════════════════════════
section_banner("09", "Biotransformation & Toxicity (Compound A)", AMBER)
story.append(Paragraph("<b>Hepatic Metabolism (CYP2E1)</b>", sub_head))
met_rows = [
("Enzyme", "CYP2E1 (hepatic microsomal)"),
("Rate", "~5% of absorbed sevoflurane (10–25× isoflurane; ¼ of halothane)"),
("Inducers", "Ethanol, isoniazid, phenobarbital → ↑ F⁻ production"),
("Main metabolite","Hexafluoroisopropanol (HFIP) → conjugated to glucuronide → excreted in urine"),
("By-product", "Inorganic fluoride (F⁻) — peak 22–31 µmol/L; no renal concentrating defect"),
("No trifluoroacetate","Means NO immune-mediated hepatitis (unlike halothane)"),
]
two_col_table(met_rows)
story.append(Paragraph("<b>Compound A Formation</b>", sub_head))
story.append(Paragraph(
"Sevoflurane reacts with <b>desiccated CO₂ absorbents</b> (soda lime, Baralyme) — strong bases (NaOH, KOH) extract a proton "
"from the isopropyl group → forms <b>fluoromethyl-2,2-difluoro-1-(trifluoromethyl)vinyl ether (Compound A)</b>.",
body))
spacer(4)
ca_rows = [
("What increases Compound A", "Desiccated absorbent (Baralyme > soda lime) • Low FGF • High concentration • Long duration • High temperature"),
("Rat nephrotoxicity threshold","Proximal tubular necrosis at >150 ppm-hours; lethal at >1000 ppm-hours"),
("Human data", "NO clinically significant nephrotoxicity at any studied dose — large RCTs confirm safety"),
("Why rats ≠ humans", "Human kidneys have far lower renal β-lyase activity → no reactive thionoacyl fluoride intermediate formed"),
("Peak Compound A with soda lime","~20 ppm at 1 L/min FGF"),
("With Baralyme", "~30 ppm at 1 L/min FGF"),
("Safe absorbers", "Amsorb® / Dragersorb Free® (calcium hydroxide only) — minimal Compound A"),
("FDA guidance", "FGF ≥1–2 L/min; limit ≤2 MAC-hours with low FGF"),
("Circuit fire risk", "Desiccated absorbent + sevoflurane → exothermic reaction → fire / CO production"),
]
two_col_table(ca_rows, col1_w=CW*0.34)
info_box(
"<b>Bottom line for exams:</b> Compound A is nephrotoxic in rats, but has NO proven clinical nephrotoxicity in humans. "
"The clinically relevant precaution is to use FGF ≥2 L/min with soda lime, and to use calcium hydroxide absorbers when available.",
bg=LIGHT2, border_color=AMBER, icon="📝")
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 10 – HIGH-YIELD EXAM POINTS
# ══════════════════════════════════════════════════════════════════════════════
section_banner("10", "High-Yield Exam Points ★", RED)
story.append(Paragraph("The following facts are most commonly tested in MD / DNB / FRCA examinations:", body))
spacer(4)
hye = [
("Non-pungent odour", "→ Preferred for inhalational induction (paediatrics and adults); replaced halothane globally"),
("Most potent bronchodilator", "→ Best inhalational agent for reactive airways / status asthmaticus"),
("No tachycardia", "→ Preferred in IHD, tachyarrhythmia-prone patients"),
("No catecholamine sensitisation","→ Safe to use with adrenaline infiltration (unlike halothane)"),
("QT prolongation", "→ Can occur; may persist 60 min post-emergence in infants; caution with QT-prolonging drugs"),
("No halothane hepatitis", "→ Metabolised to HFIP not trifluoroacetate → no antibody-mediated liver damage"),
("CYP2E1 metabolism", "→ 5%; induced by ethanol, isoniazid, phenobarbital"),
("Compound A", "→ Nephrotoxic in rats NOT in humans; use FGF ≥2 L/min with soda lime"),
("Desiccated absorbent = fire","→ Circuit fire risk; also produces CO — always check absorbent before use"),
("Emergence delirium", "→ Common in children; prevent with analgesia + dexmedetomidine / fentanyl / propofol"),
("Uterine relaxation at >1 MAC","→ Risk of PPH at Caesarean; use ≤1 MAC intra-operatively"),
("MH trigger", "→ Absolute contraindication in MH-susceptible patients; use TIVA instead"),
("Blood:gas coeff 0.65", "→ Low = fast induction, rapid depth changes, quick emergence"),
("MAC 2.0%", "→ Less potent than isoflurane (1.15%) but more potent than desflurane (6–7%)"),
("N₂O additive", "→ Co-administration allows ↓ sevoflurane concentration — reduces haemodynamic side effects"),
("NMBAs potentiated", "→ Reduce dose of non-depolarising agents by ~30–40%"),
("ICP concern", "→ Cerebrovascular dilation at normocarbia — counteracted by hyperventilation (CO₂ reactivity preserved)"),
]
hye_data = [[Paragraph(h, table_hdr) for h in ["Feature", "Exam-Ready Explanation"]]]
for r in hye:
hye_data.append([Paragraph(r[0], table_lbl), Paragraph(r[1], table_cell)])
hye_t = Table(hye_data, colWidths=[CW*0.30, CW*0.70])
hye_t.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), RED),
("TEXTCOLOR", (0,0),(-1,0), WHITE),
("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LIGHT4]),
("GRID", (0,0),(-1,-1), 0.4, BORDER),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING", (0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
("VALIGN", (0,0),(-1,-1), "TOP"),
]))
story.append(hye_t)
spacer(6)
# ══════════════════════════════════════════════════════════════════════════════
# SECTION 11 – CLINICAL DOSING QUICK CARD
# ══════════════════════════════════════════════════════════════════════════════
section_banner("11", "Clinical Dosing Quick Card", NAVY)
dose_rows = [
["Indication", "Concentration", "Notes"],
["Adult inhalational induction", "4–8% (with 50–60% N₂O/O₂)", "Unconsciousness in ~1 min"],
["Paediatric mask induction", "6–8%", "Reduce as sleep achieved"],
["Maintenance of anaesthesia", "1–3% (in O₂ or O₂/N₂O)", "Titrate to clinical effect"],
["Maintenance with N₂O", "0.5–1.5%", "N₂O reduces MAC requirement"],
["Ambulatory / day-case", "0.8–2%", "Reduce 15–20 min before end"],
["Obstetric GA (pre-delivery)", "0.5 MAC sevo + 50% N₂O", "Increase after cord clamping"],
["Status asthmaticus (ICU)", "0.5–1.5%", "Via anaesthetic machine / AnaConDa"],
]
dose_t = Table(dose_rows, colWidths=[CW*0.33, CW*0.33, CW*0.34])
dose_t.setStyle(TableStyle([
("BACKGROUND", (0,0),(-1,0), NAVY),
("TEXTCOLOR", (0,0),(-1,0), WHITE),
("FONTNAME", (0,0),(-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0),(-1,-1), 8),
("ROWBACKGROUNDS",(0,1),(-1,-1),[WHITE, LIGHT]),
("GRID", (0,0),(-1,-1), 0.4, BORDER),
("TOPPADDING", (0,0),(-1,-1), 4),
("BOTTOMPADDING", (0,0),(-1,-1), 4),
("LEFTPADDING", (0,0),(-1,-1), 6),
("VALIGN", (0,0),(-1,-1), "MIDDLE"),
]))
story.append(dose_t)
spacer(8)
# Sources
story.append(Paragraph("<b>References</b>", sub_head))
refs = [
"Miller's Anesthesia, 10th Edition (2024) — Blocks 6, 27, 29",
"Morgan & Mikhail's Clinical Anesthesiology, 7th Edition — pp. 311–315",
"Goodman & Gilman's Pharmacological Basis of Therapeutics — pp. 497–499",
"Barash, Cullen & Stoelting's Clinical Anesthesia, 9th Edition — pp. 1403–1404",
"Katzung's Basic & Clinical Pharmacology, 16th Edition — Table 25-1",
"Lippincott Illustrated Reviews: Pharmacology — p. 677",
"Javed J, et al. EEG-guided sevoflurane anesthesia vs. standard care in pediatric emergence delirium. J Anesth. 2026. [PMID: 41217504]",
]
for r in refs:
story.append(Paragraph(f"• {r}", footnote))
story.append(Spacer(1,2))
# ── BUILD ──────────────────────────────────────────────────────────────────────
def on_page(canvas, doc):
canvas.saveState()
# Header line
canvas.setStrokeColor(BORDER)
canvas.setLineWidth(0.5)
canvas.line(1.8*cm, H - 1.4*cm, W - 1.8*cm, H - 1.4*cm)
canvas.setFont("Helvetica", 7)
canvas.setFillColor(MGREY)
canvas.drawString(1.8*cm, H - 1.2*cm, "SEVOFLURANE — Anaesthesia Exam Study Guide")
canvas.drawRightString(W - 1.8*cm, H - 1.2*cm, f"Page {doc.page}")
# Footer
canvas.line(1.8*cm, 1.5*cm, W - 1.8*cm, 1.5*cm)
canvas.drawCentredString(W/2, 1.0*cm, "For educational purposes | Based on Miller's, Morgan & Mikhail's, Goodman & Gilman's, Barash, Katzung")
canvas.restoreState()
doc.build(story, onFirstPage=on_page, onLaterPages=on_page)
print(f"PDF created: {OUTPUT}")
cd /home/daytona/workspace/sevoflurane-study-guide && python3 build_pdf.py 2>&1
~/sevoflurane-study-guide/build_pdf.py
Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/sevoflurane-study-guide/build_pdf.py'
~/sevoflurane-study-guide/build_pdf.py
Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/sevoflurane-study-guide/build_pdf.py'
cd /home/daytona/workspace/sevoflurane-study-guide && python3 build_pdf.py 2>&1
ls -lh /home/daytona/workspace/sevoflurane-study-guide/Sevoflurane_Study_Guide.pdf
Sevoflurane Study Guide
PDF Document · PDF
| Section | Content |
|---|---|
| Cover | Quick-reference card - MAC, blood:gas coeff, key indications/contraindications at a glance |
| 01 | Physical & pharmacokinetic properties + MAC modifiers table (increase vs decrease) |
| 02 | Mechanism of action - GABA-A, NMDA, K⁺ channels explained |
| 03 | Full organ system effects - CVS, respiratory, CNS, NMJ, renal, hepatic, uterus |
| 04 | Indications with clinical notes |
| 05 | Contraindications with reasons and actions |
| 06 | Precautions - colour-coded boxes for MH, Compound A/fire risk, paediatric delirium, obstetrics, QT, renal |
| 07 | Drug interactions table |
| 08 | 4-agent volatile comparison table (sevoflurane column highlighted) |
| 09 | Biotransformation + Compound A full detail |
| 10 | 17-point high-yield exam facts table |
| 11 | Clinical dosing quick card by indication |
Fluid for burns injury with Anesthesia implications
burn injury fluid resuscitation
| Phase | Timing | Haemodynamics | Metabolism |
|---|---|---|---|
| Ebb (shock) phase | 0-48 hrs | Low CO, ↑ SVR, hypovolaemia | Low metabolic rate, hypothermia |
| Flow (hyperdynamic) phase | 48 hrs onwards | ↑↑ CO (supranormal), ↓ SVR | ↑↑ metabolic rate, hyperglycaemia, catabolism |
| Body Region | Adult TBSA | Paediatric (modified) |
|---|---|---|
| Head & neck | 9% | 18% (infant) |
| Each arm | 9% | 9% |
| Anterior trunk | 18% | 18% |
| Posterior trunk | 18% | 18% |
| Each leg | 18% | 14% (infant) |
| Perineum | 1% | 1% |
| Fluid | Recommendation |
|---|---|
| Lactated Ringer's (LR) | Drug of choice - isotonic, contains lactate buffer, no hyperchloraemic acidosis |
| Normal saline (0.9% NaCl) | AVOID in burn resuscitation - causes hyperchloraemic metabolic acidosis, increased AKI risk |
| Hypertonic saline | Avoid - associated with higher incidence of acute kidney failure |
| Albumin / colloid (first 24 hrs) | Not recommended in first 24 hrs - capillary leak means protein escapes into tissue worsening oedema |
| Albumin (after 24 hrs) | Can be used in second 24 hrs when capillary permeability partially normalises |
| Hydroxyethyl starch (HES) | AVOID - outcomes unchanged but risks real (AKI, coagulopathy) |
| Blood products | Death more likely if used during acute resuscitation; reserve for operative bleeding |
| Fresh Frozen Plasma (FFP) | Use in massive operative haemorrhage; balanced ratio with pRBCs (1:1) reduces mortality |
SUCCINYLCHOLINE IS CONTRAINDICATED IN BURNS BEYOND 48–72 HOURS AFTER INJURY
| Property | Relevance in Burns |
|---|---|
| Haemodynamic stability | ↑ sympathetic stimulation → maintains BP/HR in hypovolaemic patient |
| Preserves airway reflexes | Ideal for procedures without intubation (dressing changes, brief procedures) |
| Bronchodilation | Useful if inhalation injury / bronchospasm |
| NMDA antagonism | Prevents central sensitisation, reduces opioid tolerance, reduces wind-up |
| Anti-inflammatory | Potential benefit in burns/sepsis |
| Peripheral vasoconstriction | May reduce blood loss, reduces hypothermia |
| Monitor | Consideration in Burns |
|---|---|
| SpO₂ | Unreliable in CO poisoning; may be inaccurate on burned digits |
| ABG co-oximetry | Essential for HbCO, MetHb measurement |
| Urinary catheter | Mandatory - primary guide for fluid titration (UO 0.5–1.0 mL/kg/h) |
| Temperature | Continuous monitoring - burns patients cannot thermoregulate |
| Invasive arterial line | Essential in major burns; may need to site through burned tissue |
| Central venous access | For large-bore access; may be sited through burned skin if no alternative |
| TOF neuromuscular monitoring | Mandatory if NMBAs used |
| Bladder pressure | If fluid creep or ACS suspected (IAP >20 mmHg is threshold) |
| Intraoperative glucose | Hyperglycaemia is common - insulin infusion often required |
| Topic | Key Fact |
|---|---|
| Parkland formula | 4 mL × kg × %TBSA; ½ in 8 hrs, ½ in 16 hrs; LR only |
| Modified Brooke | 2 mL × kg × %TBSA; same timing |
| Paediatric (Galveston) | 5000 mL/m² burned + 1500 mL/m² BSA |
| Fluid choice | LR - NOT NS, NOT HES, NOT colloid in first 24 hrs |
| Endpoint of resuscitation | UO 0.5–1.0 mL/kg/h adults; 1.0 mL/kg/h children |
| Succinylcholine | CONTRAINDICATED after 48–72 hrs (hyperkalaemia → cardiac arrest) |
| NDMRs | Resistance - need higher doses (rocuronium 1.2–1.5 mg/kg for RSI) |
| SpO₂ in CO poisoning | Falsely normal - use ABG co-oximetry |
| Airway in burns | Intubate early before oedema progresses |
| Ketamine | Drug of choice - haemodynamic stability, airway preserved, NMDA antagonist |
| Blood loss in excision | 3.5–5% blood volume per 1% TBSA excised |
| Temperature | OR warmed to 37–40°C; warming blankets + fluid warmers |
| ACS threshold | IAP >20 mmHg (bladder pressure) → decompression |
| Fluid creep | Excess fluid → ACS + pulmonary complications |
| Inhalation injury | Add 30–50% to Parkland volume; early intubation |
| Phase I hepatic reactions | Impaired in burns - avoid diazepam; use lorazepam |
| Propofol in hyperdynamic phase | ↑ clearance → need higher doses |
| Myoglobinuria (electrical) | Target UO 1–2 mL/kg/h; alkalinise urine |