Write a notes on airway fire protocol on laser surgery for MD Anaesthesiology exam
airway fire protocol laser surgery anesthesia management prevention 2024
| Element | Examples in Airway Surgery |
|---|---|
| Fuel | PVC/rubber ETT, dry gauze/sponges, drapes, charred tissue, airway mucosa |
| Oxidiser | Oxygen (>21%), Nitrous oxide (oxidiser, not fuel) |
| Ignition Source | Laser (CO2, Nd:YAG, KTP), electrosurgery unit (ESU/diathermy) |
Key fact: A PVC ETT will ignite in as little as 25% O2. Once ignited, it produces a "blowtorch" effect - an intensely burning jet of flame directed down the airway, producing toxic combustion debris.
| Laser | Wavelength | Properties | Eye Protection |
|---|---|---|---|
| CO2 | 10,600 nm | Interacts with water/any surface; primarily for airway procedures | Clear safety glasses sufficient |
| KTP (potassium titanyl phosphate) | 532 nm | Interacts with tissue pigment; delivered via flexible fibre | Tinted/wavelength-specific goggles |
| Nd:YAG | 1,064 nm | Deep tissue penetration; delivered via flexible fibre through bronchoscope | Tinted/wavelength-specific goggles |
CO2 laser: risk increases with continuous lasing >5 seconds (risk ×72) and lasing charred tissue (risk ×98). Every 10% increase in FiO2 above 60% raises fire risk ×2.3 with KTP laser.
| ETT Type | Advantages | Disadvantages |
|---|---|---|
| PVC | Inexpensive, nonreflective | Low melting point, highly combustible |
| Red rubber | Puncture-resistant, nonreflective | Highly combustible |
| Silicone rubber | Nonreflective | Combustible; burns to toxic ash |
| Metal (e.g., Laser-Flex, Norton) | Combustion-resistant, kink-resistant | Thick-walled flammable cuff, reflects laser, transfers heat |
| Commercially available laser-safe ETTs (e.g., Lasertubus, Sheridan) | Specifically designed - double-cuffed, indicator dye | Larger external diameter; not suitable for small infants |
Wrapping conventional ETTs with metallic foil tape is obsolete and not FDA-approved - the tape can break/unravel, the adhesive backing can ignite, and it may reflect laser onto non-targeted tissue.
| Technique | Details |
|---|---|
| Intermittent apnoea + mask ventilation | Patient apnoeic during lasing; re-oxygenated via mask between bursts. High FiO2 tolerated as no ETT in field |
| Intermittent apnoea + reintubation | ETT removed during lasing, replaced if SpO2 falls. Limited operative time per interval |
| Jet ventilation (Sanders injector) | Via rigid bronchoscope above or below vocal cords. Excellent surgical view. Risks: pneumothorax, mucosal drying, gas dissemination of papilloma fragments |
| High-frequency jet ventilation (HFJV) | Allows continuous gas exchange. Risk of barotrauma |
| Spontaneous ventilation | Deep anaesthesia (propofol + volatile/sevoflurane via side port). Risk: laryngospasm, hypoventilation |
| Prevention | Management |
|---|---|
| Fire risk discussion at time-out | Stop ventilation immediately |
| FiO2 <0.30; avoid N2O; use TIVA | Remove ETT from airway |
| Laser-safe ETT with saline-filled, methylene-blue cuff | Disconnect circuit, stop all gases |
| Surgeon confirms FiO2 before firing laser | Remove all flammable material |
| Laser in STANDBY when not in use | Pour saline into airway |
| Saline-soaked pledgets around ETT | Reventilate, reintubate |
| Pulsed mode, minimum power, avoid charred tissue | Bronchoscopy, CXR, ABG |
| Consider ETT-free technique (jet ventilation) | ICU monitoring, steroids |
Generate a PowerPoint presentation on laser airway surgery anesthesia for exam revision
mkdir -p /home/daytona/workspace/laser-airway-pptx && ls /home/daytona/workspace/laser-airway-pptx
~/laser-airway-pptx/generate.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Laser Airway Surgery - Anaesthesia";
pres.author = "MD Anaesthesiology Revision";
// ── Colour Palette ──────────────────────────────────────────────
const C = {
navy: "0D1B3E", // dominant dark navy
teal: "0E7C7B", // teal accent (medical)
amber: "F4A227", // warning / highlight amber
red: "C0392B", // danger / fire red
white: "FFFFFF",
offWhite:"F5F7FA",
light: "E8F0FE",
mid: "5E7EA8",
text: "1A2840",
muted: "6B7C93",
green: "1D8348",
orange: "E67E22",
};
// ── Helper: add a slide header bar ──────────────────────────────
function addHeader(slide, title, accentColor = C.teal) {
// dark top bar
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 0.72,
fill: { color: C.navy }, line: { color: C.navy }
});
// accent left stripe
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 0.22, h: 0.72,
fill: { color: accentColor }, line: { color: accentColor }
});
// title text
slide.addText(title, {
x: 0.35, y: 0, w: 9.4, h: 0.72,
fontSize: 18, bold: true, color: C.white,
valign: "middle", margin: 0
});
}
// ── Helper: section pill label ───────────────────────────────────
function addPill(slide, label, x, y, w = 2.2, color = C.teal) {
slide.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x, y, w, h: 0.32,
fill: { color }, line: { color }, rectRadius: 0.08
});
slide.addText(label, {
x, y, w, h: 0.32,
fontSize: 9, bold: true, color: C.white,
align: "center", valign: "middle", margin: 0
});
}
// ── Helper: a coloured card box ──────────────────────────────────
function addCard(slide, x, y, w, h, fillColor, lineColor) {
slide.addShape(pres.shapes.RECTANGLE, {
x, y, w, h,
fill: { color: fillColor },
line: { color: lineColor, pt: 1.2 },
shadow: { type: "outer", color: "000000", blur: 5, offset: 2, angle: 135, opacity: 0.12 }
});
}
// ── Helper: footer ────────────────────────────────────────────────
function addFooter(slide, text = "MD Anaesthesiology Revision | Laser Airway Surgery") {
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 5.3, w: 10, h: 0.325,
fill: { color: C.navy }, line: { color: C.navy }
});
slide.addText(text, {
x: 0.3, y: 5.3, w: 9.4, h: 0.325,
fontSize: 8, color: C.muted, valign: "middle", margin: 0
});
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 1 — TITLE
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
// full-bleed dark bg
s.background = { color: C.navy };
// teal accent block left
s.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 0.45, h: 5.625,
fill: { color: C.teal }, line: { color: C.teal }
});
// amber horizontal rule
s.addShape(pres.shapes.RECTANGLE, {
x: 0.7, y: 3.08, w: 8.5, h: 0.06,
fill: { color: C.amber }, line: { color: C.amber }
});
// main title
s.addText("LASER AIRWAY SURGERY", {
x: 0.7, y: 0.9, w: 8.5, h: 1.1,
fontSize: 38, bold: true, color: C.white,
align: "left", valign: "middle", charSpacing: 2
});
// subtitle
s.addText("Anaesthesia Management & Airway Fire Protocol", {
x: 0.7, y: 2.0, w: 8.5, h: 0.85,
fontSize: 22, bold: false, color: C.amber,
align: "left", valign: "middle"
});
// tagline
s.addText("MD Anaesthesiology | Exam Revision Notes", {
x: 0.7, y: 3.3, w: 8.5, h: 0.5,
fontSize: 13, color: C.mid, align: "left", valign: "middle"
});
// bullet topics at bottom
const topics = [
"Fire Triad & Pathophysiology",
"Laser Types & Properties",
"ETT Selection",
"Prevention Protocol",
"Airway Fire Management",
"Post-Fire Care"
];
s.addText(topics.map((t, i) => ({
text: (i < topics.length - 1 ? t + " | " : t),
options: { color: C.light, fontSize: 10 }
})), {
x: 0.7, y: 4.7, w: 8.8, h: 0.5,
align: "left", valign: "middle"
});
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 2 — OVERVIEW / CONTENTS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
addHeader(s, "Slide Overview", C.teal);
const items = [
{ n: "1", title: "Fire Triad", sub: "Fuel · Oxidiser · Ignition" },
{ n: "2", title: "Laser Types", sub: "CO₂, KTP, Nd:YAG" },
{ n: "3", title: "ETT Selection", sub: "PVC vs laser-safe tubes" },
{ n: "4", title: "Prevention", sub: "FiO₂, N₂O, cuff management" },
{ n: "5", title: "Ventilation Strategies", sub: "Jet, apnoea, HFJV" },
{ n: "6", title: "Airway Fire Protocol", sub: "Step-by-step algorithm" },
{ n: "7", title: "Post-Fire Management", sub: "ICU, bronchoscopy, steroids" },
{ n: "8", title: "Key Exam Points", sub: "High-yield facts" },
];
items.forEach((item, i) => {
const col = i % 2;
const row = Math.floor(i / 2);
const x = 0.3 + col * 4.9;
const y = 0.95 + row * 1.08;
addCard(s, x, y, 4.5, 0.88, C.white, C.teal);
// number badge
s.addShape(pres.shapes.RECTANGLE, {
x, y, w: 0.52, h: 0.88,
fill: { color: C.teal }, line: { color: C.teal }
});
s.addText(item.n, {
x, y, w: 0.52, h: 0.88,
fontSize: 20, bold: true, color: C.white,
align: "center", valign: "middle", margin: 0
});
s.addText(item.title, {
x: x + 0.62, y: y + 0.04, w: 3.75, h: 0.42,
fontSize: 13, bold: true, color: C.navy, valign: "middle", margin: 0
});
s.addText(item.sub, {
x: x + 0.62, y: y + 0.44, w: 3.75, h: 0.38,
fontSize: 10, color: C.muted, valign: "middle", margin: 0
});
});
addFooter(s);
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 3 — FIRE TRIAD
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
addHeader(s, "The Fire Triad (Fire Tetrahedron)", C.red);
// Central concept box
addCard(s, 3.5, 1.05, 3.0, 0.85, "FFF4E5", C.amber);
s.addText("ALL THREE must be present", {
x: 3.5, y: 1.05, w: 3.0, h: 0.85,
fontSize: 12, bold: true, color: C.amber,
align: "center", valign: "middle", margin: 0
});
// Three boxes
const triad = [
{
label: "FUEL", color: C.orange, x: 0.25,
items: ["PVC / rubber ETT", "Dry gauze / pledgets", "Surgical drapes", "Charred tissue", "Airway mucosa"]
},
{
label: "OXIDISER", color: C.red, x: 3.5,
items: ["Oxygen > 21%", "Nitrous oxide (oxidiser)", "PVC ETT ignites at 25% O₂", "O₂ + N₂O = greatest risk"]
},
{
label: "IGNITION", color: C.navy, x: 6.75,
items: ["CO₂ laser", "Nd:YAG laser", "KTP laser", "Electrocautery (ESU)", "Electrosurgery unit"]
}
];
triad.forEach(t => {
addCard(s, t.x, 2.1, 3.0, 3.1, C.white, t.color);
s.addShape(pres.shapes.RECTANGLE, {
x: t.x, y: 2.1, w: 3.0, h: 0.48,
fill: { color: t.color }, line: { color: t.color }
});
s.addText(t.label, {
x: t.x, y: 2.1, w: 3.0, h: 0.48,
fontSize: 14, bold: true, color: C.white,
align: "center", valign: "middle", margin: 0
});
s.addText(t.items.map((item, i) => ({
text: item + (i < t.items.length - 1 ? "\n" : ""),
options: { bullet: { code: "2022" }, fontSize: 10.5, color: C.text, breakLine: i < t.items.length - 1 }
})), {
x: t.x + 0.15, y: 2.68, w: 2.72, h: 2.4,
valign: "top", margin: [2, 2, 2, 2]
});
});
// Key fact banner
addCard(s, 0.25, 5.05, 9.5, 0.36, "FDECEA", C.red);
s.addText("KEY FACT: A PVC ETT ignites at as low as 25% O₂. Remove ANY element of the triad to prevent fire.", {
x: 0.35, y: 5.05, w: 9.3, h: 0.36,
fontSize: 10, bold: true, color: C.red,
valign: "middle", margin: 0
});
addFooter(s);
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 4 — LASER TYPES
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
addHeader(s, "Types of Lasers Used in Airway Surgery", C.teal);
const lasers = [
{
name: "CO₂ Laser",
wl: "10,600 nm",
color: C.teal,
props: ["Interacts with water & any surface", "Used for airway resection / papilloma", "Clear glass safety goggles sufficient", "Cannot be fibre-optic guided", "Most common cause of airway fire"],
use: "Microlaryngoscopy, papillomatosis"
},
{
name: "KTP Laser",
wl: "532 nm",
color: C.green,
props: ["Potassium titanyl phosphate", "Interacts with tissue pigment", "Tinted/wavelength-specific goggles", "Delivered via flexible glass fibre", "Through bronchoscope — distal to ETT"],
use: "Vascular lesions, haemangioma"
},
{
name: "Nd:YAG Laser",
wl: "1,064 nm",
color: C.mid,
props: ["Neodymium:yttrium aluminium garnet", "Deep tissue penetration", "Tinted/wavelength-specific goggles", "Fibre-optic delivery via bronchoscope", "Compatible tubes not in half-sizes"],
use: "Tracheal/bronchial tumours"
}
];
lasers.forEach((laser, i) => {
const x = 0.25 + i * 3.25;
addCard(s, x, 0.9, 3.0, 4.5, C.white, laser.color);
s.addShape(pres.shapes.RECTANGLE, {
x, y: 0.9, w: 3.0, h: 0.62,
fill: { color: laser.color }, line: { color: laser.color }
});
s.addText(laser.name, {
x, y: 0.9, w: 3.0, h: 0.38,
fontSize: 14, bold: true, color: C.white,
align: "center", valign: "middle", margin: 0
});
s.addText("λ = " + laser.wl, {
x, y: 1.22, w: 3.0, h: 0.3,
fontSize: 10, color: C.white,
align: "center", valign: "middle", margin: 0
});
s.addText(laser.props.map((p, j) => ({
text: p + (j < laser.props.length - 1 ? "\n" : ""),
options: { bullet: { code: "2022" }, fontSize: 10, color: C.text, breakLine: j < laser.props.length - 1 }
})), {
x: x + 0.12, y: 1.62, w: 2.78, h: 2.6,
valign: "top"
});
addCard(s, x, 5.0, 3.0, 0.38, laser.color + "22", laser.color);
s.addText("Use: " + laser.use, {
x: x + 0.1, y: 5.0, w: 2.85, h: 0.38,
fontSize: 9, bold: true, color: laser.color,
valign: "middle", margin: 0
});
});
addFooter(s);
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 5 — ETT SELECTION
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
addHeader(s, "ETT Selection for Laser Airway Surgery", C.teal);
// Table header
const tableData = [
[
{ text: "ETT Type", options: { bold: true, color: C.white, fill: { color: C.navy }, align: "center" } },
{ text: "Advantages", options: { bold: true, color: C.white, fill: { color: C.navy }, align: "center" } },
{ text: "Disadvantages", options: { bold: true, color: C.white, fill: { color: C.navy }, align: "center" } },
],
[
{ text: "PVC", options: { bold: true, color: C.red } },
"Inexpensive; nonreflective",
{ text: "Ignites at 25% O₂; highly combustible", options: { color: C.red } }
],
[
{ text: "Red Rubber", options: { bold: true, color: C.orange } },
"Puncture-resistant; nonreflective",
{ text: "Highly combustible", options: { color: C.orange } }
],
[
{ text: "Silicone Rubber", options: { bold: true, color: C.orange } },
"Nonreflective",
{ text: "Combustible; burns to toxic ash", options: { color: C.orange } }
],
[
{ text: "Metal (Norton/Laser-Flex)", options: { bold: true, color: C.green } },
{ text: "Combustion-resistant; kink-resistant", options: { color: C.green } },
"Flammable cuff; reflects laser; bulky; transfers heat"
],
[
{ text: "Laser-Safe (Lasertubus/Sheridan)", options: { bold: true, color: C.teal } },
{ text: "Double-cuffed; indicator dye; purpose-made", options: { color: C.teal } },
"Large OD; not for small infants; expensive"
],
];
s.addTable(tableData, {
x: 0.3, y: 0.85, w: 9.4, h: 3.5,
border: { pt: 1, color: "CCCCCC" },
fill: { color: C.white },
colW: [2.2, 3.6, 3.6],
rowH: 0.52,
fontSize: 10.5,
color: C.text,
valign: "middle"
});
// Warning banner
addCard(s, 0.3, 4.45, 9.4, 0.42, "FFF3CD", C.amber);
s.addText("⚠ NO currently available ETT is completely laser-proof. Precautions reduce but never eliminate risk.", {
x: 0.5, y: 4.45, w: 9.2, h: 0.42,
fontSize: 10.5, bold: true, color: C.orange,
valign: "middle", margin: 0
});
// Foil wrapping warning
addCard(s, 0.3, 4.95, 9.4, 0.42, "FDECEA", C.red);
s.addText("✗ Metallic foil wrapping of PVC tubes is OBSOLETE & NOT FDA-approved — adhesive ignites; laser can penetrate; edges damage mucosa.", {
x: 0.5, y: 4.95, w: 9.2, h: 0.42,
fontSize: 10, bold: false, color: C.red,
valign: "middle", margin: 0
});
addFooter(s);
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 6 — PREVENTION (2 columns)
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
addHeader(s, "Prevention of Airway Fire — Anaesthesiologist's Checklist", C.green);
const left = [
{ head: "Surgical Time-Out", items: ["Discuss fire risk with entire team", "Assign roles: who stops laser, removes ETT, pours saline", "Post laser warning signs on OR doors", "Ensure correct wavelength eye protection for all"] },
{ head: "Gas Management", items: ["Target FiO₂ < 0.30 (30%) — use air as carrier", "Avoid N₂O entirely (oxidiser)", "Many patients tolerate FiO₂ = 21%", "Confirm FiO₂ on end-tidal analyser before laser fires", "Use TIVA (propofol) — avoids volatile agents"] },
];
const right = [
{ head: "ETT Cuff Management", items: ["Fill cuffs with saline (not air)", "Add methylene blue dye — visible indicator of cuff puncture", "Use double-cuffed laser-safe ETT", "Position cuff well below vocal cords"] },
{ head: "Surgical Technique", items: ["Laser in STANDBY when not in use", "Surgeon gives notice before firing", "Pulsed mode, minimum power", "Saline-soaked pledgets around ETT", "Avoid lasing charred / adipose tissue", "Limit continuous lasing to < 5 seconds", "60 mL saline syringe at field immediately available"] },
];
const renderSection = (sections, xBase) => {
let yOff = 0.88;
sections.forEach(sec => {
s.addText(sec.head, {
x: xBase, y: yOff, w: 4.45, h: 0.3,
fontSize: 11, bold: true, color: C.teal,
valign: "middle", margin: [0, 0, 0, 2]
});
yOff += 0.3;
sec.items.forEach(item => {
s.addText([{ text: item, options: { bullet: { code: "2022" }, fontSize: 10, color: C.text } }], {
x: xBase + 0.1, y: yOff, w: 4.3, h: 0.26,
valign: "middle", margin: 0
});
yOff += 0.26;
});
yOff += 0.1;
});
};
renderSection(left, 0.25);
renderSection(right, 5.0);
// vertical divider
s.addShape(pres.shapes.LINE, {
x: 4.9, y: 0.88, w: 0, h: 4.25,
line: { color: "CCCCCC", pt: 1 }
});
addFooter(s);
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 7 — VENTILATION STRATEGIES
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
addHeader(s, "Ventilation Strategies for Laser Airway Surgery", C.teal);
const strategies = [
{
name: "Intubation\n(Laser-Safe ETT)",
color: C.mid,
pros: "Standard; familiar; controlled ventilation",
cons: "ETT = fuel source in field; limits posterior view",
note: "TIVA + laser-safe ETT + FiO₂ <0.3"
},
{
name: "Intermittent\nApnoea & Mask",
color: C.teal,
pros: "ETT-free during lasing; high FiO₂ tolerated",
cons: "Limited operative time; repeated handling",
note: "SpO₂-guided; re-oxygenate between bursts"
},
{
name: "Jet Ventilation\n(Sanders)",
color: C.green,
pros: "ETT-free; excellent laryngeal view",
cons: "Pneumothorax risk; gastric distension; drying; HPV spread",
note: "Via rigid bronchoscope above/below cords"
},
{
name: "HFJV",
color: C.navy,
pros: "Continuous gas exchange; ETT-free",
cons: "Barotrauma risk; specialised equipment",
note: "High frequency jet ventilation; 60-150 breaths/min"
},
{
name: "Spontaneous\nVentilation",
color: C.orange,
pros: "Unobstructed view; no ETT",
cons: "Deep anaesthesia needed; laryngospasm; hypoventilation",
note: "Propofol + sevoflurane via side port"
},
];
strategies.forEach((st, i) => {
const x = 0.2 + i * 1.93;
addCard(s, x, 0.88, 1.82, 4.45, C.white, st.color);
s.addShape(pres.shapes.RECTANGLE, {
x, y: 0.88, w: 1.82, h: 0.72,
fill: { color: st.color }, line: { color: st.color }
});
s.addText(st.name, {
x, y: 0.88, w: 1.82, h: 0.72,
fontSize: 10, bold: true, color: C.white,
align: "center", valign: "middle", margin: 2
});
s.addText([
{ text: "PROS\n", options: { bold: true, color: C.green, fontSize: 8.5, breakLine: false } },
{ text: st.pros + "\n\n", options: { fontSize: 9, color: C.text, breakLine: false } },
{ text: "CONS\n", options: { bold: true, color: C.red, fontSize: 8.5, breakLine: false } },
{ text: st.cons + "\n\n", options: { fontSize: 9, color: C.text, breakLine: false } },
{ text: "NOTE: ", options: { bold: true, color: st.color, fontSize: 8, breakLine: false } },
{ text: st.note, options: { fontSize: 8.5, color: C.muted } }
], {
x: x + 0.1, y: 1.68, w: 1.65, h: 3.5,
valign: "top", margin: 2
});
});
addFooter(s);
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 8 — AIRWAY FIRE PROTOCOL (step-by-step)
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.background = { color: "1A0A00" }; // very dark warm bg for urgency
// Header — full red
s.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 0.75,
fill: { color: C.red }, line: { color: C.red }
});
s.addText("🔥 AIRWAY FIRE PROTOCOL — IMMEDIATE MANAGEMENT", {
x: 0.2, y: 0, w: 9.6, h: 0.75,
fontSize: 17, bold: true, color: C.white,
valign: "middle", margin: 0
});
// Mnemonic badge
addCard(s, 7.45, 0.88, 2.4, 0.52, C.amber, C.orange);
s.addText("STOP · DROP · POUR · SCOPE", {
x: 7.45, y: 0.88, w: 2.4, h: 0.52,
fontSize: 9, bold: true, color: C.navy,
align: "center", valign: "middle", margin: 0
});
const steps = [
{ n: "1", action: "STOP VENTILATION", detail: "Cease all ventilation immediately\nStop the laser / ESU", color: C.red },
{ n: "2", action: "REMOVE THE ETT", detail: "Remove burning ETT from the airway\nSubmerge ETT in water/saline", color: C.red },
{ n: "3", action: "DISCONNECT ALL GASES", detail: "Turn off O₂ at the machine\nDisconnect breathing circuit\nStop N₂O and all volatiles", color: C.orange },
{ n: "4", action: "POUR SALINE INTO AIRWAY", detail: "Pour 60 mL saline directly into trachea\nRemove all flammable pledgets/gauze", color: C.orange },
{ n: "5", action: "REVENTILATE", detail: "Mask ventilate once fire extinguished\nAvoid supplemental O₂ initially\nReintubate before oedema develops", color: C.amber },
{ n: "6", action: "BRONCHOSCOPY + ASSESS", detail: "Mandatory: confirm fire out, remove debris\nAssess thermal injury extent\nSerial CXR + ABG monitoring\nConsider ICU transfer, steroids", color: C.teal },
];
steps.forEach((step, i) => {
const col = i % 2;
const row = Math.floor(i / 2);
const x = 0.2 + col * 4.9;
const y = 1.52 + row * 1.26;
// card
s.addShape(pres.shapes.RECTANGLE, {
x, y, w: 4.65, h: 1.12,
fill: { color: "2A1500" },
line: { color: step.color, pt: 1.5 }
});
// step number
s.addShape(pres.shapes.RECTANGLE, {
x, y, w: 0.48, h: 1.12,
fill: { color: step.color }, line: { color: step.color }
});
s.addText("STEP\n" + step.n, {
x, y, w: 0.48, h: 1.12,
fontSize: 11, bold: true, color: C.white,
align: "center", valign: "middle", margin: 0
});
s.addText(step.action, {
x: x + 0.58, y: y + 0.06, w: 3.95, h: 0.36,
fontSize: 12, bold: true, color: step.color,
valign: "middle", margin: 0
});
s.addText(step.detail, {
x: x + 0.58, y: y + 0.42, w: 3.95, h: 0.65,
fontSize: 9.5, color: "D0C0A0",
valign: "top", margin: 0
});
});
// Bottom mnemonic
s.addText("Memory Aid: STOP – DISCONNECT – POUR – REASSESS – SCOPE", {
x: 0.2, y: 5.28, w: 9.6, h: 0.3,
fontSize: 9.5, bold: true, color: C.amber,
align: "center", valign: "middle", margin: 0
});
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 9 — POST-FIRE MANAGEMENT
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.background = { color: C.offWhite };
addHeader(s, "Post-Fire Management & Complications", C.red);
// Immediate actions (left column)
addCard(s, 0.25, 0.88, 4.55, 4.45, C.white, C.teal);
s.addShape(pres.shapes.RECTANGLE, {
x: 0.25, y: 0.88, w: 4.55, h: 0.38,
fill: { color: C.teal }, line: { color: C.teal }
});
s.addText("IMMEDIATE ACTIONS", {
x: 0.25, y: 0.88, w: 4.55, h: 0.38,
fontSize: 11, bold: true, color: C.white,
align: "center", valign: "middle", margin: 0
});
const immediateItems = [
"Transfer to ICU for monitoring",
"Prolonged intubation or tracheostomy if severe oedema",
"IV corticosteroids (dexamethasone) — reduce airway oedema",
"Humidified O₂ + bronchodilators (nebulised salbutamol)",
"Nebulised N-acetylcysteine — mucosal protection",
"Broad-spectrum antibiotics if aspiration/infection risk",
"Repeated bronchoscopy to remove debris / assess progress",
"Medicolegal notification and incident documentation",
];
s.addText(immediateItems.map((item, i) => ({
text: item + (i < immediateItems.length - 1 ? "\n" : ""),
options: { bullet: { code: "25B8" }, fontSize: 10, color: C.text, breakLine: i < immediateItems.length - 1 }
})), {
x: 0.4, y: 1.34, w: 4.25, h: 3.85,
valign: "top", margin: 2
});
// Complications (right column)
addCard(s, 5.1, 0.88, 4.65, 4.45, C.white, C.red);
s.addShape(pres.shapes.RECTANGLE, {
x: 5.1, y: 0.88, w: 4.65, h: 0.38,
fill: { color: C.red }, line: { color: C.red }
});
s.addText("COMPLICATIONS TO MONITOR", {
x: 5.1, y: 0.88, w: 4.65, h: 0.38,
fontSize: 11, bold: true, color: C.white,
align: "center", valign: "middle", margin: 0
});
const compGroups = [
{ timing: "Immediate", items: ["Acute airway oedema & obstruction", "Thermal/chemical tracheobronchitis", "Retained foreign body (ETT debris)"] },
{ timing: "Early (24–72 hr)", items: ["ARDS from inhalation injury", "Aspiration pneumonia", "Respiratory failure"] },
{ timing: "Late (weeks–months)", items: ["Tracheal/subglottic stenosis", "Tracheomalacia", "Bronchiectasis"] },
];
let yComp = 1.34;
compGroups.forEach(grp => {
s.addText(grp.timing, {
x: 5.25, y: yComp, w: 4.3, h: 0.28,
fontSize: 10, bold: true, color: C.red,
valign: "middle", margin: 0
});
yComp += 0.28;
grp.items.forEach(item => {
s.addText([{ text: item, options: { bullet: { code: "2022" }, fontSize: 10, color: C.text } }], {
x: 5.35, y: yComp, w: 4.25, h: 0.28,
valign: "middle", margin: 0
});
yComp += 0.28;
});
yComp += 0.08;
});
addFooter(s);
}
// ═══════════════════════════════════════════════════════════════
// SLIDE 10 — HIGH-YIELD EXAM POINTS
// ═══════════════════════════════════════════════════════════════
{
const s = pres.addSlide();
s.background = { color: C.navy };
// Header
s.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 0.72,
fill: { color: C.amber }, line: { color: C.amber }
});
s.addText("HIGH-YIELD EXAM POINTS — Laser Airway Surgery", {
x: 0.2, y: 0, w: 9.6, h: 0.72,
fontSize: 17, bold: true, color: C.navy,
valign: "middle", margin: 0
});
const points = [
{ n: "1", text: "Fire triad: Fuel + Oxidiser + Ignition. All three must be present for fire." },
{ n: "2", text: "PVC ETT ignites at as low as 25% O₂ — it is NEVER safe in laser surgery." },
{ n: "3", text: "No ETT is completely laser-proof — precautions reduce but do not eliminate risk." },
{ n: "4", text: "Methylene blue in cuff saline = visual indicator of cuff rupture by laser." },
{ n: "5", text: "N₂O is an oxidiser — absolutely contraindicated in all laser airway procedures." },
{ n: "6", text: "First step in airway fire: STOP ventilation AND remove ETT simultaneously." },
{ n: "7", text: "Pour saline into the airway — do NOT use CO₂ extinguisher inside the trachea." },
{ n: "8", text: "Bronchoscopy is MANDATORY after every airway fire — remove debris, assess injury." },
{ n: "9", text: "Continuous lasing > 5 seconds raises fire risk ×72 (Barash). Avoid charred tissue (×98)." },
{ n: "10", text: "TIVA + FiO₂ < 0.3 + laser-safe double-cuffed ETT = standard prevention triad." },
];
// Two columns
points.forEach((p, i) => {
const col = i % 2;
const row = Math.floor(i / 2);
const x = 0.2 + col * 5.0;
const y = 0.88 + row * 0.92;
const highlightColor = i < 3 ? C.red : i < 7 ? C.amber : C.teal;
s.addShape(pres.shapes.RECTANGLE, {
x, y, w: 4.72, h: 0.78,
fill: { color: "1A2840" }, line: { color: highlightColor, pt: 1 }
});
s.addShape(pres.shapes.RECTANGLE, {
x, y, w: 0.44, h: 0.78,
fill: { color: highlightColor }, line: { color: highlightColor }
});
s.addText(p.n, {
x, y, w: 0.44, h: 0.78,
fontSize: 15, bold: true, color: C.white,
align: "center", valign: "middle", margin: 0
});
s.addText(p.text, {
x: x + 0.54, y, w: 4.08, h: 0.78,
fontSize: 9.5, color: C.light,
valign: "middle", margin: [0, 4, 0, 0]
});
});
// Bottom source line
s.addText("Sources: Miller's Anesthesia 10e | Barash Clinical Anesthesia 9e | Morgan & Mikhail 7e | ASA Practice Advisory on OR Fires", {
x: 0.2, y: 5.3, w: 9.6, h: 0.28,
fontSize: 8, color: C.muted, align: "center", valign: "middle", margin: 0
});
}
// ═══════════════════════════════════════════════════════════════
// WRITE FILE
// ═══════════════════════════════════════════════════════════════
pres.writeFile({ fileName: "/home/daytona/workspace/laser-airway-pptx/Laser_Airway_Surgery_Anaesthesia.pptx" })
.then(() => console.log("DONE: Laser_Airway_Surgery_Anaesthesia.pptx written"))
.catch(err => { console.error(err); process.exit(1); });
cd /home/daytona/workspace/laser-airway-pptx && node generate.js 2>&1
ls -lh /home/daytona/workspace/laser-airway-pptx/Laser_Airway_Surgery_Anaesthesia.pptx
~/laser-airway-pptx/generate.js
Successfully replaced 1 instance(s) of the string in '/home/daytona/workspace/laser-airway-pptx/generate.js'
cd /home/daytona/workspace/laser-airway-pptx && node generate.js 2>&1
Laser Airway Surgery Anaesthesia
Presentation · PPTX
| Slide | Content | Design |
|---|---|---|
| 1 - Title | Topic, subtitle, content overview | Dark navy full-bleed, teal accent stripe, amber rule |
| 2 - Overview | 8-topic contents map with numbered cards | Light background, teal-numbered cards |
| 3 - Fire Triad | Fuel / Oxidiser / Ignition in 3 colour-coded columns | Red accent; "PVC ignites at 25% O₂" danger banner |
| 4 - Laser Types | CO₂ / KTP / Nd:YAG — wavelength, properties, eye protection | Three side-by-side colour cards |
| 5 - ETT Selection | Full comparison table: PVC vs laser-safe tubes | Table with red/orange/green colour coding + FDA warning |
| 6 - Prevention | Two-column checklist: Time-out, gas management, cuff management, laser technique | Teal section headers, vertical divider |
| 7 - Ventilation Strategies | 5 techniques (intubation / apnoea / jet / HFJV / spontaneous) with pros/cons | Five side-by-side cards |
| 8 - Fire Protocol | Step-by-step 6-step algorithm (STOP → DROP → POUR → SCOPE) | Dark urgent background, red/amber/teal step cards |
| 9 - Post-Fire Management | Immediate actions + complications (immediate / early / late) | Two-column cards |
| 10 - High-Yield Exam Points | 10 numbered exam facts colour-coded by importance | Dark navy, amber/red/teal highlights |