Give an essay answer type response for cernea classification in thyroid for Ent post graduation exam by referring standard textbooks and online articles , it’s significance

| Feature | Type 1 | Type 2A | Type 2B |
|---|---|---|---|
| Nerve level | ≥ 1 cm above superior pole | < 1 cm above superior pole | Below superior pole border |
| Surgical risk | Low | High | Highest |
| Frequency | ~50–75% | ~18–20% | ~6–7% |
| Key danger | — | En masse ligation | Buried behind capsule |
Create a pdf of this
ls -la /home/daytona/workspace/ 2>/dev/null || echo "workspace not found"
mkdir -p /home/daytona/workspace/cernea-classification && echo "done"
~/cernea-classification/create_pdf.py
import json
import subprocess
import base64
import os
from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm
from reportlab.lib import colors
from reportlab.platypus import (
SimpleDocTemplate, Paragraph, Spacer, Image, Table, TableStyle,
HRFlowable, KeepTogether
)
from reportlab.lib.enums import TA_CENTER, TA_JUSTIFY, TA_LEFT
from io import BytesIO
OUTPUT_PATH = "/home/daytona/workspace/cernea-classification/Cernea_Classification_Thyroid.pdf"
IMAGE_URL = "https://cdn.orris.care/cdss_images/bbbf46fc1d820f22c446753fbb498feef17c25cce444f230f1a52e31680bb02a.png"
# ── Download image ──────────────────────────────────────────────────────────
print("Downloading diagram image...")
result = json.loads(subprocess.check_output([
"node", "/home/daytona/skills/shared/scripts/fetch_images.js", IMAGE_URL
]))
img_path = None
if result and result[0].get("base64"):
raw = base64.b64decode(result[0]["base64"].split(",")[1])
img_path = "/home/daytona/workspace/cernea-classification/cernea_diagram.png"
with open(img_path, "wb") as f:
f.write(raw)
print(f"Image saved to {img_path}")
else:
print("Image download failed, continuing without image.")
# ── Styles ───────────────────────────────────────────────────────────────────
doc = SimpleDocTemplate(
OUTPUT_PATH,
pagesize=A4,
leftMargin=2.5*cm, rightMargin=2.5*cm,
topMargin=2.5*cm, bottomMargin=2.5*cm,
title="Cernea Classification – ENT PG Essay",
author="Orris Medical"
)
styles = getSampleStyleSheet()
W = A4[0] - 5*cm # usable width
style_title = ParagraphStyle("MyTitle",
fontName="Helvetica-Bold", fontSize=16, leading=22,
alignment=TA_CENTER, spaceAfter=6, textColor=colors.HexColor("#1a3a5c"))
style_subtitle = ParagraphStyle("MySubtitle",
fontName="Helvetica-Oblique", fontSize=10, leading=14,
alignment=TA_CENTER, spaceAfter=4, textColor=colors.HexColor("#555555"))
style_h1 = ParagraphStyle("H1",
fontName="Helvetica-Bold", fontSize=13, leading=18,
spaceBefore=14, spaceAfter=4, textColor=colors.HexColor("#1a3a5c"))
style_h2 = ParagraphStyle("H2",
fontName="Helvetica-Bold", fontSize=11, leading=16,
spaceBefore=10, spaceAfter=3, textColor=colors.HexColor("#2c6e9e"))
style_body = ParagraphStyle("Body",
fontName="Helvetica", fontSize=10, leading=15,
alignment=TA_JUSTIFY, spaceBefore=4, spaceAfter=4)
style_body_small = ParagraphStyle("BodySmall",
fontName="Helvetica", fontSize=9, leading=13,
alignment=TA_JUSTIFY, spaceBefore=2, spaceAfter=2)
style_bullet = ParagraphStyle("Bullet",
fontName="Helvetica", fontSize=10, leading=15,
leftIndent=16, firstLineIndent=-8,
spaceBefore=2, spaceAfter=2)
style_caption = ParagraphStyle("Caption",
fontName="Helvetica-Oblique", fontSize=8.5, leading=12,
alignment=TA_CENTER, spaceAfter=8, textColor=colors.HexColor("#555555"))
style_source = ParagraphStyle("Source",
fontName="Helvetica-Oblique", fontSize=8, leading=11,
textColor=colors.HexColor("#777777"))
def h1(text): return Paragraph(text, style_h1)
def h2(text): return Paragraph(text, style_h2)
def body(text): return Paragraph(text, style_body)
def bullet(text): return Paragraph(f"\u2022 {text}", style_bullet)
def space(n=8): return Spacer(1, n)
def hr(): return HRFlowable(width="100%", thickness=0.8, color=colors.HexColor("#cccccc"), spaceAfter=6)
# ── Build story ──────────────────────────────────────────────────────────────
story = []
# Title block
story.append(space(10))
story.append(Paragraph("Cernea Classification of the External Branch of the", style_title))
story.append(Paragraph("Superior Laryngeal Nerve in Thyroid Surgery", style_title))
story.append(space(4))
story.append(Paragraph("Essay Answer — ENT Post-Graduation Examination", style_subtitle))
story.append(Paragraph("Sources: Schwartz's Surgery 11e · Current Surgical Therapy 14e · Mulholland & Greenfield's Surgery 7e · Sabiston Textbook of Surgery", style_subtitle))
story.append(space(6))
story.append(HRFlowable(width="100%", thickness=2, color=colors.HexColor("#1a3a5c"), spaceAfter=10))
# 1. Introduction
story.append(h1("1. Introduction"))
story.append(body(
"The superior laryngeal nerve (SLN) arises from the vagus nerve at the base of the skull and "
"descends along the internal carotid artery before dividing at the level of the hyoid bone into two branches: "
"(1) the <b>internal branch</b>, which is sensory to the supraglottic larynx and laryngeal mucosa above the vocal cords, and "
"(2) the <b>external branch (EBSLN)</b>, which is the sole motor supply to the cricothyroid muscle and the inferior "
"pharyngeal constrictor."
))
story.append(body(
"The EBSLN is often called the 'nerve of the singing voice' because the cricothyroid muscle — its only target — "
"acts as the vocal cord tensor, controlling pitch, voice projection, and the ability to sustain high-frequency "
"phonation. Its surgical relevance in thyroid operations is profound: it travels in intimate proximity to the "
"superior thyroid pole vessels before reaching the cricothyroid muscle."
))
story.append(body(
"The anatomical variability in the course of this nerve and its relationship to the superior thyroid artery was "
"systematically described by <b>Cernea and colleagues in 1992</b>, leading to the eponymous classification that "
"is now the standard reference for thyroid surgeons worldwide."
))
# 2. Anatomy
story.append(h1("2. Relevant Surgical Anatomy of the EBSLN"))
story.append(body(
"The EBSLN descends from the common SLN trunk and runs along the lateral surface of the inferior pharyngeal "
"constrictor muscle, traveling cephalad-to-caudad lateral to the superior thyroid vascular pedicle. It then "
"crosses the superior thyroid artery in a <i>medial direction</i> to enter and innervate the cricothyroid muscle. "
"This oblique medial crossing — and specifically the level at which it occurs relative to the superior pole of "
"the thyroid — defines the surgical risk zone."
))
story.append(body(
"The superior thyroid artery, the first branch of the external carotid artery, divides into anterior and "
"posterior branches at the apex of the thyroid lobe. In large, ptotic, or multi-nodular goitres, the nerve "
"may descend even lower, increasing jeopardy during superior pole ligation."
))
# 3. Classification
story.append(h1("3. The Cernea Classification"))
story.append(body(
"Cernea et al. studied 33 cadaveric necks and 28 surgical patients, establishing a practical anatomical "
"classification based on the relationship of the EBSLN to the <b>superior thyroid pole</b> and the "
"<b>superior thyroid vessels</b>, measured using a 1 cm reference above the upper border of the thyroid pole."
))
story.append(h2("Type 1"))
story.append(body(
"The EBSLN crosses the superior thyroid vessels <b>≥ 1 cm above</b> the superior border of the thyroid lobe. "
"The nerve is well away from the superior pole dissection zone. This represents the <b>lowest surgical risk</b> "
"and is the most common variant, occurring in approximately <b>50–75%</b> of individuals."
))
story.append(h2("Type 2A"))
story.append(body(
"The EBSLN crosses the superior thyroid vessels <b>within 1 cm above</b> the superior border of the thyroid "
"superior pole — i.e., less than 1 cm above the upper edge, but still above it. The nerve lies close to the "
"vascular pedicle and within the surgical field during standard superior pole dissection, carrying a "
"<b>significantly higher risk</b> of injury. Incidence: approximately <b>18–20%</b>."
))
story.append(h2("Type 2B"))
story.append(body(
"The EBSLN crosses the superior thyroid vessels <b>at or below</b> the superior border of the thyroid lobe, "
"meaning the nerve descends behind the thyroid capsule itself. This variant carries the <b>highest risk</b> of "
"injury — the nerve may be ligated en masse with the superior thyroid vessels if these are not divided "
"individually close to the thyroid surface. Incidence: approximately <b>6–7%</b>; more common in patients with "
"large or ptotic glands."
))
# Image
story.append(space(8))
if img_path and os.path.exists(img_path):
img = Image(img_path, width=14*cm, height=5.5*cm)
img.hAlign = "CENTER"
story.append(KeepTogether([
img,
Paragraph(
"Figure: Cernea classification of the EBSLN. Type 1: nerve crosses > 1 cm above the superior pole. "
"Type 2A: nerve crosses within 1 cm above the pole. Type 2B: nerve crosses below the border of the superior "
"pole. Types 2A and 2B are most vulnerable during thyroidectomy.<br/>"
"<i>(From Gray's Surgical Anatomy, as reproduced in Current Surgical Therapy 14e)</i>",
style_caption
)
]))
story.append(space(6))
# 4. Modified classifications
story.append(h1("4. Modified Classifications"))
story.append(body(
"The <b>Kierner modification</b> and subsequent refinements have been proposed, but the original three-category "
"Cernea system remains the most widely adopted. <b>Friedman's modification</b> simplifies the system into two "
"types: Type 1 (crossing ≥ 1 cm above) and Type 2 (unifying Cernea 2A and 2B). For purposes of surgical "
"planning and examinations, the original Cernea three-type classification is standard."
))
# 5. Significance
story.append(h1("5. Clinical Significance"))
story.append(h2("5.1 Incidence of Injury"))
story.append(body(
"Injury to the EBSLN during thyroidectomy is the <b>most common nerve injury</b> in thyroid surgery and is "
"often underreported because it does not cause the dramatic vocal cord palsy associated with RLN injury. "
"Reported rates range from 0% (meticulous dissections) to 58% (when the nerve is not specifically sought). "
"With the Type 2B variant, routine en masse ligation of the superior pole virtually guarantees nerve injury."
))
story.append(h2("5.2 Consequences of Injury"))
story.append(body("Injury to the EBSLN leads to cricothyroid muscle denervation, resulting in:"))
for b in [
"Loss of ability to tense the ipsilateral vocal cord",
"Inability to produce high-pitched sounds — difficulty 'hitting high notes'",
"Voice fatigue during prolonged speech",
"Reduced voice projection and volume",
"In professional voice users (singers, teachers, lawyers, clergy), the impairment can be career-ending",
]:
story.append(bullet(b))
story.append(body(
"The classic bedside test is <b>high-pitched 'e' phonation</b> — the affected patient cannot sustain a "
"high-pitched note. Laryngoscopy may reveal subtle posterior glottic asymmetry and a low-lying arytenoid "
"on the affected side."
))
story.append(h2("5.3 Surgical Implications"))
story.append(body("The Cernea classification directly guides surgical technique:"))
for b in [
"<b>Individual vessel ligation at the thyroid capsule:</b> Each branch of the superior thyroid artery should be ligated individually, as close as possible to the thyroid capsule, regardless of nerve type.",
"<b>Space of Reeves:</b> An avascular space exists between the medial superior pole and the cricothyroid muscle. Dissecting within this space allows the surgeon to skeletonise superior pole vessels while the EBSLN remains safely lateral.",
"<b>Avoid mass ligation:</b> En masse ligation is particularly dangerous in Type 2B anatomy where the nerve lies behind the thyroid capsule.",
"<b>Intraoperative neuromonitoring (IONM):</b> EMG-based IONM from the cricothyroid muscle helps confirm EBSLN integrity in real time, especially for Type 2A and 2B variants.",
"<b>Effect of pathology:</b> A large or ptotic thyroid gland may drag the nerve inferiorly — effectively converting a Type 1 into a Type 2B-equivalent anatomy. Extra vigilance is required in goitre surgery, re-operations, and Graves' disease.",
]:
story.append(bullet(b))
story.append(h2("5.4 Importance in Professional Voice Users"))
story.append(body(
"Preoperative identification of Cernea type, informed consent discussion, and baseline voice assessment "
"(perceptual analysis, laryngoscopy, voice range profile) are recommended before thyroidectomy in all patients, "
"and are mandatory for professional voice users."
))
# 6. Summary Table
story.append(h1("6. Summary Table"))
table_data = [
["Feature", "Type 1", "Type 2A", "Type 2B"],
["Nerve level relative\nto superior pole", "≥ 1 cm above", "< 1 cm above\n(but above border)", "At or below\nthe superior border"],
["Surgical risk", "Low", "High", "Highest"],
["Approximate frequency", "50–75%", "18–20%", "6–7%"],
["Key surgical danger", "—", "En masse ligation\nnear pole", "Nerve buried\nbehind capsule"],
]
col_widths = [4.5*cm, 3.5*cm, 3.5*cm, 3.5*cm]
t = Table(table_data, colWidths=col_widths, repeatRows=1)
t.setStyle(TableStyle([
# Header row
("BACKGROUND", (0,0), (-1,0), colors.HexColor("#1a3a5c")),
("TEXTCOLOR", (0,0), (-1,0), colors.white),
("FONTNAME", (0,0), (-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0), (-1,0), 9),
("ALIGN", (0,0), (-1,0), "CENTER"),
("VALIGN", (0,0), (-1,-1), "MIDDLE"),
# Body rows
("FONTNAME", (0,1), (-1,-1), "Helvetica"),
("FONTSIZE", (0,1), (-1,-1), 9),
("ALIGN", (1,1), (-1,-1), "CENTER"),
("ALIGN", (0,1), (0,-1), "LEFT"),
("ROWBACKGROUNDS", (0,1), (-1,-1), [colors.HexColor("#f0f5fb"), colors.white]),
("GRID", (0,0), (-1,-1), 0.5, colors.HexColor("#aaaaaa")),
("TOPPADDING", (0,0), (-1,-1), 6),
("BOTTOMPADDING", (0,0), (-1,-1), 6),
("LEFTPADDING", (0,0), (-1,-1), 6),
("RIGHTPADDING", (0,0), (-1,-1), 6),
]))
story.append(t)
story.append(space(8))
# 7. Key facts
story.append(h1("7. Key Facts for ENT PG Examination"))
for b in [
"EBSLN innervates the <b>cricothyroid muscle</b> — the only intrinsic laryngeal muscle supplied by the SLN",
"All other intrinsic laryngeal muscles are supplied by the <b>RLN</b>",
"EBSLN injury causes <b>loss of high-pitched phonation</b> — not hoarseness in the traditional sense",
"<b>Type 2B</b> carries the highest surgical risk; the nerve is buried behind the thyroid capsule",
"Prevention: <b>individual vessel ligation close to the thyroid surface</b>; use of the <b>Space of Reeves</b>; intraoperative neuromonitoring",
"Large/ptotic goitre can convert a Type 1 anatomy to a functionally Type 2B-equivalent situation",
"The internal branch of the SLN, if injured, causes <b>aspiration</b> (loss of supraglottic sensation) — a distinct and rarer injury",
]:
story.append(bullet(b))
# 8. Conclusion
story.append(h1("8. Summary"))
story.append(body(
"The Cernea classification is a practical, anatomy-based system that quantifies the risk of EBSLN injury "
"during thyroid surgery. It divides the nerve's relationship to the superior thyroid pole into three types of "
"progressively increasing risk (Type 1 → 2A → 2B). Its significance lies in directing surgical technique — "
"specifically the mandate for individual superior pole vessel ligation and heightened awareness for high-risk "
"variants — to preserve cricothyroid function and protect the patient's voice quality. In an era of "
"evidence-based surgical practice and medico-legal accountability, awareness of this classification is "
"essential for every surgeon who operates on the thyroid gland."
))
story.append(space(16))
story.append(HRFlowable(width="100%", thickness=0.8, color=colors.HexColor("#cccccc"), spaceAfter=4))
story.append(Paragraph(
"<b>References:</b> Schwartz's Principles of Surgery 11e (Ch. 38) • "
"Current Surgical Therapy 14e (Anatomy) • "
"Mulholland & Greenfield's Surgery 7e (Ch. 75) • "
"Sabiston Textbook of Surgery (Ch. 73)",
style_source
))
# ── Build ─────────────────────────────────────────────────────────────────────
doc.build(story)
print(f"PDF created: {OUTPUT_PATH}")
cd /home/daytona/workspace/cernea-classification && python create_pdf.py
ls -lh /home/daytona/workspace/cernea-classification/
Cernea Classification Thyroid
PDF Document · PDF