Gcs scale explanation in easy way in hinglish
Jitna zyada score = patient zyada conscious hai Jitna kam score = situation serious hai
| Score | Matlab |
|---|---|
| 4 | Khud se aankhein khol le (bilkul normal) |
| 3 | Bolne pe aankhein khole - "Aankhein kholo!" sunke |
| 2 | Dard dene pe aankhein khole (chutki kaatne pe) |
| 1 | Kuch bhi karo - aankhein nahi khulti |
| Score | Matlab |
|---|---|
| 5 | Sahi jawab de - naam, jagah, date sab pata hai (Oriented) |
| 4 | Bol raha hai lekin confused hai - baat toh karta hai par sahi nahi |
| 3 | Galat words bol raha hai - matlab nahi nikalta |
| 2 | Sirf awaazein nikal raha hai - groaning, moaning |
| 1 | Bilkul kuch nahi bol raha - chup |
| Score | Matlab |
|---|---|
| 6 | Bolne pe haath hilata hai - "Haath utha" bola aur usne utha liya |
| 5 | Dard ki jagah pe haath le jaata hai (Localizing) - chutki kaato toh usi jagah haath le jaata hai |
| 4 | Dard se door hata leta hai haath (Withdrawal) |
| 3 | Dard se haath andar mod leta hai - "Flexion" (abnormal) |
| 2 | Dard se haath seedha aur tight kar leta hai - "Extension" (bahut serious) |
| 1 | Koi movement nahi - bilkul still |
GCS = E + V + M
| Score | Injury ka Level | Situation |
|---|---|---|
| 13 - 15 | Mild (Halka) | Thoda problem, patient kaafi conscious |
| 9 - 12 | Moderate (Beech ka) | Serious attention chahiye |
| 3 - 8 | Severe (Bahut Serious) | ICU, emergency - brain badly affected |
| 3 | Sabse worst | Bilkul response nahi |
Score 8 ya usse kam = Patient ko intubation (breathing tube) ki zaroorat ho sakti hai!
GCS score 8 se kam hai toh emergency mein kya karte ho?
β οΈ Ketamine use karne se bachte hain TBI mein - agitation badh sakti hai
| Drug | Kyun |
|---|---|
| D - Dextrose | Blood sugar check karo, hypoglycemia hai toh glucose do - coma reverse ho sakta hai! |
| O - Oxygen | Already de rahe ho |
| N - Naloxone | 0.4 mg IV - agar opioid overdose ho toh turant response aayega |
| T - Thiamine | 500 mg IV - alcoholics, malnourished patients mein zaroor do |
π‘ Naloxone ka magic: Agar coma opioid se hai, naloxone se patient jagega - intubation avoid ho sakta hai!
β
Cervical spine stabilize karo (trauma mein)
β
Intubate karo (GCS β€8)
β
O2 sat >94%, PaCO2 35-45
β
BP systolic >90 mmHg
β
IV access + cardiac monitor
β
Blood sugar check + dextrose agar low
β
Naloxone + Thiamine
β
CT brain (urgent)
β
Pupils check + serial GCS
β
Neurosurgery/ICU team inform karo
Intubation procedure ka exact technique kya hai?
β
Laryngoscope (light check karo - kaam kar raha hai?)
β
Endotracheal Tube (ETT) - cuff inflate/deflate karke check karo
β
Stylet (tube ke andar ka wire)
β
Syringe (cuff inflate karne ke liye - 10 mL)
β
Bag-Valve-Mask (BVM)
β
Suction machine - ON aur ready
β
End-tidal CO2 colorimeter / Capnography
β
IV line - do large bore lines
β
Cardiac monitor + pulse oximeter
β
Rescue airway backup (LMA, surgical airway kit)
π‘ Obese/pregnant patient mein shoulder roll ya ramp lagao - neck thodi upper ho
| Drug | Dose | Kab dete hain |
|---|---|---|
| Lidocaine | 1.5 mg/kg IV | Raised ICP ya bronchospasm mein |
| Atropine | 0.02 mg/kg IV (min 0.1 mg) | Bacchon mein (<10 yrs) - bradycardia rokne ke liye |
| Fentanyl | 1-3 mcg/kg | Hemodynamically stable patients mein ICP control |
| Drug | Dose | Kab best hai |
|---|---|---|
| Etomidate | 0.3 mg/kg IV | Most common choice - BP pe asar nahi padta |
| Ketamine | 1-2 mg/kg IV | Bronchospasm, hypotension (BP gira ho) |
| Midazolam | 0.2 mg/kg IV | Alternate option |
| Propofol | 1-2 mg/kg IV | Hemodynamically stable patients |
β οΈ TBI mein Ketamine avoid karo - agitation bada sakta hai
| Drug | Dose | Notes |
|---|---|---|
| Succinylcholine | 1.5-2 mg/kg IV | First choice - 60 sec mein kaam karta hai, 10-15 min rehta hai |
| Rocuronium | 0.8-1.2 mg/kg IV | Agar Succinylcholine contraindicated ho |
| Method | Kya dekhte hain |
|---|---|
| 1. End-tidal CO2 (Colorimeter/Capnography) | Color change (purpleβyellow) = trachea mein hai β |
| 2. Auscultation | Dono lungs mein breath sounds sun-no, pet pe nahi |
| 3. Chest X-ray | Final confirm + depth check |
β οΈ Agar pet pe awaz aaye aur chest pe nahi - ESOPHAGEAL INTUBATION ho gayi! Turant nikalo!
Attempt 1 fail β Reposition karo, Suction karo
Attempt 2 fail β Help bulao (senior/anesthesia)
Still fail β LMA (Laryngeal Mask Airway) lagao
LMA bhi fail β Surgical Airway - Cricothyrotomy!
Maximum 3 attempts karo - zyada karne se trachea traumatize ho jaati hai
Make a detailed intubation procedure flowchart PDF
ls -la /home/daytona/workspace/ 2>/dev/null || echo "workspace not found"
mkdir -p /home/daytona/workspace/intubation-flowchart && python3 -c "import repoβ¦
~/intubation-flowchart/generate_flowchart.py
from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.units import mm
from reportlab.pdfgen import canvas
from reportlab.lib.styles import getSampleStyleSheet
from reportlab.platypus import Paragraph
from reportlab.lib.enums import TA_CENTER, TA_LEFT
import textwrap
OUTPUT = "/home/daytona/workspace/intubation-flowchart/Intubation_Flowchart.pdf"
W, H = A4 # 595.27 x 841.89 points
# ββ Colour Palette ββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
C_HEADER_BG = colors.HexColor("#1a2e4a") # dark navy
C_HEADER_TXT = colors.white
C_BOX_BLUE = colors.HexColor("#1565C0") # step header bg
C_BOX_LIGHT = colors.HexColor("#E3F0FF") # step body bg
C_BOX_BORDER = colors.HexColor("#1565C0")
C_WARN_BG = colors.HexColor("#FFF3CD")
C_WARN_BORDER = colors.HexColor("#E65100")
C_WARN_TXT = colors.HexColor("#7B3800")
C_FAIL_BG = colors.HexColor("#FFE0E0")
C_FAIL_BORDER = colors.HexColor("#C62828")
C_FAIL_TXT = colors.HexColor("#7B0000")
C_GREEN_BG = colors.HexColor("#E8F5E9")
C_GREEN_BORDER= colors.HexColor("#2E7D32")
C_ARROW = colors.HexColor("#37474F")
C_PAGE_BG = colors.HexColor("#F4F7FB")
C_FOOTER = colors.HexColor("#607080")
C_DRUG_BG = colors.HexColor("#EDE7F6")
C_DRUG_BORDER = colors.HexColor("#4527A0")
def draw_rounded_rect(c, x, y, w, h, r, fill_color, stroke_color, stroke_w=1.2):
c.setFillColor(fill_color)
c.setStrokeColor(stroke_color)
c.setLineWidth(stroke_w)
c.roundRect(x, y, w, h, r, fill=1, stroke=1)
def draw_arrow(c, x1, y1, x2, y2, color=C_ARROW):
"""Draw a vertical arrow from (x1,y1) down to (x2,y2)."""
c.setStrokeColor(color)
c.setFillColor(color)
c.setLineWidth(2)
c.line(x1, y1, x2, y2 + 6)
# arrowhead
p = c.beginPath()
p.moveTo(x2, y2)
p.lineTo(x2 - 5, y2 + 10)
p.lineTo(x2 + 5, y2 + 10)
p.close()
c.drawPath(p, fill=1, stroke=0)
def wrap_text(c, text, x, y, max_width, font, size, color=colors.black, line_h=None):
if line_h is None:
line_h = size * 1.4
c.setFont(font, size)
c.setFillColor(color)
words = text.split()
lines = []
current = ""
for w in words:
test = (current + " " + w).strip()
if c.stringWidth(test, font, size) <= max_width:
current = test
else:
if current:
lines.append(current)
current = w
if current:
lines.append(current)
for line in lines:
c.drawString(x, y, line)
y -= line_h
return y # return new y after text
def draw_step_box(c, x, y, w, step_num, step_title, lines,
header_bg=C_BOX_BLUE, body_bg=C_BOX_LIGHT, border=C_BOX_BORDER):
"""Draw a step box with colored header + body. Returns bottom y."""
header_h = 18
padding = 7
line_h = 12
body_h = padding + len(lines) * line_h + padding
total_h = header_h + body_h
# Body
draw_rounded_rect(c, x, y - total_h, w, total_h, 5, body_bg, border, 1.5)
# Header overlay
draw_rounded_rect(c, x, y - header_h, w, header_h, 5, header_bg, header_bg, 0)
# fix bottom corners of header
c.setFillColor(header_bg)
c.rect(x, y - header_h, w, header_h/2, fill=1, stroke=0)
# Header text
c.setFont("Helvetica-Bold", 8.5)
c.setFillColor(colors.white)
label = f" {step_num} {step_title}"
c.drawString(x + 8, y - 13, label)
# Body lines
ty = y - header_h - padding - 2
for line in lines:
bold = line.startswith("*")
text = line.lstrip("* ")
bullet = u"\u2022 " if not line.startswith("*") else ""
if bold:
c.setFont("Helvetica-Bold", 8)
c.setFillColor(C_BOX_BLUE)
else:
c.setFont("Helvetica", 7.8)
c.setFillColor(colors.HexColor("#1a2e4a"))
c.drawString(x + 12, ty, bullet + text)
ty -= line_h
return y - total_h
def draw_warn_box(c, x, y, w, title, lines, bg=C_WARN_BG, border=C_WARN_BORDER, txt=C_WARN_TXT):
padding = 6
line_h = 11
total_h = padding + 14 + len(lines)*line_h + padding
draw_rounded_rect(c, x, y - total_h, w, total_h, 5, bg, border, 1.5)
c.setFont("Helvetica-Bold", 8.5)
c.setFillColor(border)
c.drawString(x + 8, y - padding - 10, u"\u26A0 " + title)
ty = y - padding - 22
for line in lines:
c.setFont("Helvetica", 7.8)
c.setFillColor(txt)
c.drawString(x + 12, ty, u"\u2022 " + line)
ty -= line_h
return y - total_h
def draw_drug_table(c, x, y, w, rows):
"""rows = list of (drug, dose, note). Returns bottom y."""
col_w = [w*0.30, w*0.25, w*0.45]
row_h = 13
header_h = 14
total_h = header_h + len(rows)*row_h + 4
draw_rounded_rect(c, x, y - total_h, w, total_h, 4, C_DRUG_BG, C_DRUG_BORDER, 1.2)
# header
headers = ["Drug", "Dose", "When to use"]
cx = x + 4
c.setFont("Helvetica-Bold", 7.5)
c.setFillColor(C_DRUG_BORDER)
for i, h in enumerate(headers):
c.drawString(cx, y - 11, h)
cx += col_w[i]
# separator line
c.setStrokeColor(C_DRUG_BORDER)
c.setLineWidth(0.8)
c.line(x+2, y-header_h, x+w-2, y-header_h)
# rows
ty = y - header_h - row_h + 3
for drug, dose, note in rows:
cx = x + 4
for i, val in enumerate([drug, dose, note]):
bold = (i == 0)
c.setFont("Helvetica-Bold" if bold else "Helvetica", 7.2)
c.setFillColor(colors.HexColor("#1a2e4a"))
# clip text to column width
max_w = col_w[i] - 6
while c.stringWidth(val, "Helvetica-Bold" if bold else "Helvetica", 7.2) > max_w and len(val) > 4:
val = val[:-1]
c.drawString(cx, ty, val)
cx += col_w[i]
ty -= row_h
return y - total_h
# βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# BUILD PDF β two pages
# βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
c = canvas.Canvas(OUTPUT, pagesize=A4)
margin = 22 * mm
content_w = W - 2 * margin
# βββ PAGE 1 βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
# Background
c.setFillColor(C_PAGE_BG)
c.rect(0, 0, W, H, fill=1, stroke=0)
# Top header bar
c.setFillColor(C_HEADER_BG)
c.rect(0, H - 52, W, 52, fill=1, stroke=0)
c.setFont("Helvetica-Bold", 16)
c.setFillColor(colors.white)
c.drawCentredString(W/2, H - 25, "RSI INTUBATION FLOWCHART")
c.setFont("Helvetica", 9)
c.setFillColor(colors.HexColor("#90CAF9"))
c.drawCentredString(W/2, H - 40, "Rapid Sequence Intubation - Emergency Airway Management")
# Subtitle / indication
c.setFillColor(colors.HexColor("#FFD54F"))
c.setFont("Helvetica-Bold", 9)
c.drawCentredString(W/2, H - 58, "INDICATION: GCS <= 8 | Airway compromise | Respiratory failure")
y = H - 68
# ββ STEP P1: PREPARATION ββββββββββββββββββββββββββββββββββββββββββββββββββββ
y -= 4
lines_p1 = [
"IV access x2 (large bore), cardiac monitor, pulse oximeter",
"Laryngoscope - light check karao",
"ETT cuff inflate/deflate check karao",
"Suction ON aur ready",
"Backup airway: LMA + Surgical airway kit ready",
"*ETT size: Male 8.0mm (22cm depth) | Female 7.5mm (21cm depth)",
"Capnography / end-tidal CO2 colorimeter ready",
"Trauma patient: Cervical spine inline stabilization",
]
y = draw_step_box(c, margin, y, content_w, "P1", "PREPARATION (T-5 min)", lines_p1)
draw_arrow(c, W/2, y, W/2, y - 8)
y -= 10
# ββ STEP P2: PREOXYGENATION βββββββββββββββββββββββββββββββββββββββββββββββββ
lines_p2 = [
"100% O2 via tight-fit mask ya BVM - 3 to 5 minutes",
"Target SpO2 > 95% before proceeding",
"Nasal cannula bhi lagao @ 10-15 L/min (apneic oxygenation)",
"*Obese/Pregnant: Shoulder roll / ramp lagao (head 20-30 deg up)",
"Suction karo oral secretions agar zaroorat ho",
]
y = draw_step_box(c, margin, y, content_w, "P2", "PREOXYGENATION (T-3 to 0 min)", lines_p2,
header_bg=colors.HexColor("#00695C"))
draw_arrow(c, W/2, y, W/2, y - 8)
y -= 10
# ββ STEP P3: PREMEDICATION ββββββββββββββββββββββββββββββββββββββββββββββββββ
lines_p3 = [
"Lidocaine 1.5 mg/kg IV - raised ICP ya bronchospasm mein",
"Atropine 0.02 mg/kg IV - bachon (<10 yr) mein bradycardia rokne ke liye",
"Fentanyl 1-3 mcg/kg IV - hemodynamically stable + ICP concern",
"Note: Ye optional adjuncts hain - hamesha required nahi",
]
y = draw_step_box(c, margin, y, content_w, "P3", "PREMEDICATION (T-3 min before induction)", lines_p3,
header_bg=colors.HexColor("#6A1B9A"))
draw_arrow(c, W/2, y, W/2, y - 8)
y -= 10
# ββ STEP P4: PARALYSIS + INDUCTION βββββββββββββββββββββββββββββββββββββββββ
lines_p4_header = [
"*STEP 1: Induction Agent pehle do, FIR TURANT Paralytic do",
]
y = draw_step_box(c, margin, y, content_w, "P4", "PARALYSIS WITH INDUCTION (T=0)",
lines_p4_header, header_bg=colors.HexColor("#B71C1C"))
y += 2 # small overlap for sub-table
# Drug table - sedation
induction_drugs = [
("Etomidate", "0.3 mg/kg IV", "FIRST CHOICE - BP stable rakhta hai"),
("Ketamine", "1-2 mg/kg IV", "Bronchospasm, hypotension mein"),
("Midazolam", "0.2 mg/kg IV", "Alternate - BP gira sakta hai"),
("Propofol", "1-2 mg/kg IV", "Hemodynamically stable only"),
]
y2 = draw_drug_table(c, margin+4, y - 2, content_w - 8, induction_drugs)
y2 -= 4
c.setFont("Helvetica-Bold", 7.5)
c.setFillColor(C_BOX_BLUE)
c.drawString(margin + 8, y2, "PARALYTIC AGENT (immediately after induction):")
y2 -= 12
paralytic_drugs = [
("Succinylcholine", "1.5-2 mg/kg IV", "FIRST CHOICE - 60sec onset, 10-15 min"),
("Rocuronium", "0.8-1.2 mg/kg IV","Agar Succinylcholine CI ho - 60min lasts"),
]
y2 = draw_drug_table(c, margin+4, y2, content_w - 8, paralytic_drugs)
y = y2 - 6
# Succinylcholine warning
warn_lines = [
"Burns (>24hr), Crush injury (>24hr), Hyperkalemia",
"Neuromuscular disease (Myasthenia Gravis, Muscular Dystrophy)",
"Open globe injury, Pseudocholinesterase deficiency",
]
y = draw_warn_box(c, margin, y, content_w,
"Succinylcholine KABHI MAT DO agar:", warn_lines,
bg=C_FAIL_BG, border=C_FAIL_BORDER, txt=C_FAIL_TXT)
# Footer page 1
c.setFont("Helvetica", 7)
c.setFillColor(C_FOOTER)
c.drawCentredString(W/2, 18, "Page 1 of 2 | RSI Intubation Flowchart | Sources: Washington Manual; Rosen's Emergency Medicine; Tintinalli's EM")
c.line(margin, 26, W - margin, 26)
c.showPage()
# βββ PAGE 2 βββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
c.setFillColor(C_PAGE_BG)
c.rect(0, 0, W, H, fill=1, stroke=0)
# mini header
c.setFillColor(C_HEADER_BG)
c.rect(0, H - 32, W, 32, fill=1, stroke=0)
c.setFont("Helvetica-Bold", 12)
c.setFillColor(colors.white)
c.drawCentredString(W/2, H - 22, "RSI INTUBATION FLOWCHART - Page 2: Tube Placement & Post-Care")
y = H - 42
# ββ STEP P5: PLACEMENT (sniffing position) ββββββββββββββββββββββββββββββββββ
y -= 6
lines_sniff = [
'*"Sniffing Position": Neck flex + Head extend (jaise subah ki khushboo soongh rahe ho)',
"Obese patient: Shoulder ramp lagao - ear aur sternum ek line mein ho",
"Laryngoscope LEFT HAND mein lo",
"Muh kholo RIGHT HAND se",
]
y = draw_step_box(c, margin, y, content_w, "P5a", "POSITIONING + LARYNGOSCOPY",
lines_sniff, header_bg=colors.HexColor("#1565C0"))
draw_arrow(c, W/2, y, W/2, y - 8)
y -= 10
lines_blade = [
"Blade RIGHT side se daalo - tongue ko LEFT mein sweep karo",
"MacINTOSH blade (curved): Tip ko VALLECULA mein rakho (tongue-epiglottis ke beech)",
"MILLER blade (straight): Epiglottis ko directly utha lo",
"Handle ki DIRECTION mein lift karo - TILT MAT KARO",
"VOCAL CORDS dikhni chahiye - do white/peeli bands",
]
y = draw_step_box(c, margin, y, content_w, "P5b", "LARYNGOSCOPE INSERTION + VISUALIZATION",
lines_blade, header_bg=colors.HexColor("#1565C0"))
draw_arrow(c, W/2, y, W/2, y - 8)
y -= 10
lines_tube = [
"Vocal cords DIKH RAHE HAIN? - TAB HI tube daalo",
"ETT RIGHT HAND se pakdo, tube ko cords ke beech se andar do",
"Cuff cords se thoda NEECHE chali jaaye tab stylet nikal lo",
"*Depth: Male = 22cm | Female = 21cm at gum/teeth",
"Cuff inflate karo: 5-10 mL air syringe se",
"TAPE se SECURE karo",
]
y = draw_step_box(c, margin, y, content_w, "P5c", "TUBE INSERTION + SECURING",
lines_tube, header_bg=colors.HexColor("#1565C0"))
draw_arrow(c, W/2, y, W/2, y - 8)
y -= 10
# ββ STEP P6: CONFIRM ββββββββββββββββββββββββββββββββββββββββββββββββββββββββ
lines_confirm = [
"*Method 1 - End-tidal CO2: Color change purple -> yellow = TRACHEA mein hai",
"*Method 2 - Auscultation: DONO lungs mein breath sounds, pet pe NAHI",
"*Method 3 - Chest X-ray: Final confirm + depth check",
"Agar pet pe sound aaye = ESOPHAGEAL INTUBATION! Turant nikalo!",
"SpO2 + capnography continuously monitor karo",
]
y = draw_step_box(c, margin, y, content_w, "P6", "POST-INTUBATION CONFIRMATION (MANDATORY - TEEN TARIKE SE)",
lines_confirm, header_bg=colors.HexColor("#2E7D32"),
body_bg=C_GREEN_BG, border=C_GREEN_BORDER)
draw_arrow(c, W/2, y, W/2, y - 8)
y -= 10
# ββ STEP P7: POST-INTUBATION MANAGEMENT βββββββββββββββββββββββββββββββββββββ
lines_post = [
"Sedation CONTINUE karo (Midazolam + Fentanyl / Propofol infusion)",
"Ventilator settings: Tidal Volume 6-8 mL/kg IBW | FiO2 100% -> wean down",
"Ventilation target: PaCO2 35-45 mmHg, SpO2 94-97%",
"TBI mein: NO hyperventilation (cerebral vasoconstriction hoti hai)",
"Serial GCS monitor karo, Neurosurgery/ICU team ko inform karo",
"BP target: Systolic > 90 mmHg | MAP > 80 mmHg",
]
y = draw_step_box(c, margin, y, content_w, "P7", "POST-INTUBATION MANAGEMENT",
lines_post, header_bg=colors.HexColor("#37474F"))
draw_arrow(c, W/2, y, W/2, y - 8)
y -= 10
# ββ FAILED INTUBATION ALGORITHM βββββββββββββββββββββββββββββββββββββββββββββ
fail_lines = [
"Attempt 1 fail -> Reposition karo, Better suction karo, BURP maneuver try karo",
"Attempt 2 fail -> Senior / Anesthesia help bulao, Video laryngoscope use karo",
"Attempt 3 fail -> LMA (Laryngeal Mask Airway) lagao - temporary oxygenation",
"LMA bhi fail -> SURGICAL AIRWAY: Cricothyrotomy! (Scalpel-Finger-Bougie technique)",
"*Max 3 attempts karo - zyada se trachea traumatize ho jaati hai",
]
y = draw_warn_box(c, margin, y, content_w,
"FAILED INTUBATION ALGORITHM - Can't Intubate, Can't Oxygenate (CICO)",
fail_lines, bg=C_FAIL_BG, border=C_FAIL_BORDER, txt=C_FAIL_TXT)
y -= 8
# ββ QUICK REFERENCE BOX βββββββββββββββββββββββββββββββββββββββββββββββββββββ
qr_h = 52
draw_rounded_rect(c, margin, y - qr_h, content_w, qr_h, 5,
colors.HexColor("#E8EAF6"), colors.HexColor("#3949AB"), 1.5)
c.setFont("Helvetica-Bold", 8.5)
c.setFillColor(colors.HexColor("#1A237E"))
c.drawCentredString(W/2, y - 13, "QUICK REFERENCE - 7 Ps Mnemonic")
quick = [
("P1 Preparation", "Equipment check, IV, monitor"),
("P2 Preoxygenation", "100% O2, SpO2>95%, 3-5 min"),
("P3 Premedication", "Lidocaine, Atropine, Fentanyl (optional)"),
("P4 Paralysis+Induction", "Etomidate + Succinylcholine"),
("P5 Placement", "Sniff position, Laryngoscopy, ETT insert"),
("P6 Post-confirmation", "ETCO2 + Auscultation + CXR"),
("P7 Post-management", "Ventilator, Sedation, Monitor"),
]
col_x = [margin + 6, margin + content_w/2 + 6]
ty = y - 24
c.setFont("Helvetica-Bold", 7)
c.setFillColor(colors.HexColor("#1A237E"))
for i, (mnem, desc) in enumerate(quick):
cx = col_x[i % 2]
row_y = ty - (i // 2) * 11
c.setFont("Helvetica-Bold", 7)
c.setFillColor(colors.HexColor("#3949AB"))
c.drawString(cx, row_y, mnem + ": ")
c.setFont("Helvetica", 7)
c.setFillColor(colors.HexColor("#1a2e4a"))
lbl_w = c.stringWidth(mnem + ": ", "Helvetica-Bold", 7)
c.drawString(cx + lbl_w, row_y, desc)
# Footer page 2
c.setFont("Helvetica", 7)
c.setFillColor(C_FOOTER)
c.drawCentredString(W/2, 18, "Page 2 of 2 | Sources: Washington Manual of Medical Therapeutics; Rosen's EM; Tintinalli's EM; Pfenninger & Fowler's Procedures")
c.line(margin, 26, W - margin, 26)
c.save()
print(f"PDF saved to {OUTPUT}")
cd /home/daytona/workspace/intubation-flowchart && python3 generate_flowchart.py
ls -lh /home/daytona/workspace/intubation-flowchart/
Intubation Flowchart
PDF Document Β· PDF