attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment
attachment

These r picture of textbook of ENT Do explain me this in detail I don't know basics So make sure you explain me in easiest way

Here is your complete, beginner-friendly explanation of everything in these 10 pages. I've covered both Chapter 32 (Nasal Polypi) and Chapter 33 (Epistaxis) from scratch, step by step.

📖 Chapter 32 - NASAL POLYPI (Nasal Polyps)


🔵 What is a Nasal Polyp? (The Absolute Basics)

Imagine the inside lining of your nose (called the mucosa) getting swollen and puffy, like a blister. Over time, this puffy tissue hangs down like a grape or a teardrop inside your nose. That hanging, swollen, non-cancerous lump is called a nasal polyp.
  • Non-neoplastic = NOT cancerous. It is just swollen, watery (oedematous) tissue.
  • Oedematous = Swollen due to fluid collection inside the tissue.
There are two main types:
  1. Antrochoanal Polyp
  2. Bilateral Ethmoidal Polypi

🟣 TYPE 1 - ANTROCHOANAL POLYP (also called Killian's Polyp)

Where does it come from?

  • It starts in the maxillary antrum - this is a hollow space (sinus) inside your cheekbone.
  • It has a tiny opening called the accessory ostium (a side door). The polyp squeezes out through this door.
  • It then grows into the nasal cavity (inside your nose) and finally back into the choana (the opening at the back of the nose that connects to the throat).

It has 3 parts (think of it like a balloon on a string):

PartWhat it looks like
AntralThe stalk (thin string-like part, inside the sinus)
ChoanalRound and globular (balloon-like, at the back)
NasalFlat from side to side (the part in the nose)

Who gets it?

  • Mostly children and young adults
  • Usually single and on one side only (unilateral)
  • Caused by nasal allergy + sinus infection

Symptoms (What the patient complains about):

  • Unilateral nasal obstruction = blockage in ONE nostril (main complaint)
  • When the polyp grows very big, it goes into the back of the throat and can block BOTH sides
  • Voice becomes dull and nasal (hyponasality)
  • Mucus (nasal discharge) from one or both sides

Signs (What the doctor sees):

  • Anterior rhinoscopy (looking into the front of the nose) may miss it if it's small
  • When large: a smooth greyish mass covered with mucus, soft, moveable
  • A big polyp may stick out of the nostril and appear pink on its outer part (you can actually see it hanging out - like in Fig 32.1 in the textbook)
  • Posterior rhinoscopy (looking from the back, through the mouth): a globular mass hanging down behind the soft palate, dangling into the throat (Fig 32.2A and B in textbook)

How is it diagnosed?

  • Endoscope (a thin camera tube) can find a polyp hidden at the back of the nose
  • X-ray of sinuses: shows opacity (whitish clouding) of the involved sinus
  • CT scan (best method) - shows the polyp, its origin, and extent in detail

Differential Diagnosis (Things that can look similar but are NOT a polyp):

  1. A blob of mucus (snot) - but it disappears when you blow your nose; a polyp won't
  2. Hypertrophied middle turbinate - it's pink and feels hard/bony when probed; a polyp is soft
  3. Angiofibroma - bleeds heavily and easily; history of massive nosebleeds in young boys
  4. Neoplasms (tumours) - fleshy, bleed easily, and look different

Treatment:

  • Endoscopic sinus surgery (ESS) is the gold standard today
  • The polyp is removed by avulsion (pulling it out) through nasal or oral route
  • Old operations like Caldwell-Luc (opening the cheek) are now mostly avoided, replaced by endoscopic surgery

🟠 TYPE 2 - BILATERAL ETHMOIDAL POLYPI

Where do they come from?

  • These come from the ethmoid sinuses (small air pockets between your eyes, in the bone)
  • Specifically from the lateral wall of the nose - areas like the uncinate process, bulla ethmoidalis, middle meatus

Aetiology (Causes) - these are complex:

The exact cause is not fully understood. They arise in association with:
  1. Chronic rhinosinusitis - long-standing sinus infection/inflammation (allergic or non-allergic)
  2. Asthma - 7% of asthma patients have nasal polyps
  3. Aspirin intolerance - 36% of these patients get polyps. The famous Samter's Triad = nasal polyps + asthma + aspirin intolerance
  4. Cystic fibrosis - 20% get polyps; due to abnormal mucus
  5. Allergic fungal sinusitis - almost ALL cases form polyps
  6. Kartagener syndrome - bronchiectasis + situs inversus (heart on wrong side) + ciliary dyskinesia
  7. Young syndrome - sinopulmonary disease + azoospermia (no sperm)
  8. Churg-Strauss syndrome - asthma + fever + eosinophilia + vasculitis + granuloma
  9. Nasal mastocytosis - mast cell infiltration in nose; IgE normal

How do polyps form? (Pathogenesis - simplified):

  • The nasal lining near the middle meatus (a channel in the nose) gets swollen due to fluid collection
  • This creates a polypoidal (grape-like) change
  • Initially the polyp is sessile (sitting flat, attached broadly)
  • As it grows and gravity pulls it down + sneezing pushes it, it becomes pedunculated (hanging on a stalk, like a grape on a vine)

Pathology (What it looks like under microscope):

  • Early: covered by normal ciliated columnar epithelium (normal nose lining cells)
  • Later: changes to squamous/transitional type due to air irritation
  • Under the surface (submucosa): large spaces filled with serous (watery) fluid + eosinophils and round cells

Symptoms:

  1. Nasal stuffiness - can lead to complete blockage
  2. Loss of smell (partial or total) - anosmia
  3. Headache from associated sinusitis
  4. Sneezing and watery discharge from allergy
  5. Mass protruding from nostril in severe cases (Fig 32.5 - you can see this in the textbook photo)

Signs (What doctor sees):

  • Smooth, glistening (shiny), grape-like masses - pale in colour
  • They are insensitive to probing (you can poke them and the patient doesn't feel much pain)
  • They do NOT bleed on touch (important for differentiating from tumours)
  • They are sessile or pedunculated, often multiple and bilateral (both sides)
  • Long-standing cases: broadening of the nose and increased distance between eyes
  • Purulent (pus-like) nasal discharge from associated sinusitis

Diagnosis:

  • Clinical exam - easily seen with rhinoscopy
  • CT scan - most important: shows extent of polyps, bony erosion, and helps plan surgery
  • CT also helps rule out malignancy (cancer) - especially important in people over 40 years

Treatment:

Conservative (Non-surgical):

  1. Antihistamines + allergy control - early polypoidal changes may reverse
  2. Steroids (short course) - reduces swelling; contraindicated in hypertension, peptic ulcer, diabetes, pregnancy, tuberculosis

Surgical:

  1. FESS (Functional Endoscopic Sinus Surgery) - THE standard treatment today. Uses cameras (0°, 30°, 70° angulation). Removes polyps + clears ethmoid cells + restores drainage to sinuses.
Before FESS, older operations were done: 2. Polypectomy - remove one or two pedunculated polyps with a snare (like a wire loop) 3. Intranasal ethmoidectomy - clear ethmoid cells through the nose 4. Extranasal ethmoidectomy - when polyps recur, approach from outside through a cut near the inner corner of the eye 5. Transantral ethmoidectomy - when infection in maxillary sinus also involved; open the sinus from under the upper lip

📊 KEY TABLE: Antrochoanal vs Ethmoidal Polypi

FeatureAntrochoanalEthmoidal
AgeChildren/young adultsAdults
CauseInfectionAllergy/multifactorial
NumberSolitary (single)Multiple
LateralityUnilateral (one side)Bilateral (both sides)
OriginMaxillary sinus (near ostium)Ethmoid sinuses, uncinate process, middle meatus
GrowthGrows backward toward choana, hangs behind soft palateGrows forward, may present at nares
Size/ShapeTrilobed (antral + nasal + choanal parts)Small, grape-like masses
RecurrenceUncommon if fully removedCommon
TreatmentEndoscopic sinus surgeryEndoscopic sinus surgery


📖 Chapter 33 - EPISTAXIS (Nosebleed)


🔵 What is Epistaxis?

Epistaxis = Bleeding from inside the nose. Simple as that.
  • It is very common - seen in children, adults, and old people
  • It often comes as an emergency
  • It is a sign (like a symptom of something else), NOT a disease by itself
  • You must always look for the underlying cause

🩸 Blood Supply of the Nose (Why the Nose Bleeds)

The nose has a very rich blood supply - two separate systems feed it:

1. Internal Carotid System (via Ophthalmic artery)

  • Anterior ethmoidal artery
  • Posterior ethmoidal artery These supply the upper and inner parts of the nose.

2. External Carotid System

  • Sphenopalatine artery (SPA) - the main artery of the nose; gives nasopalatine and posterior medial nasal branches
  • Greater palatine artery (from maxillary artery)
  • Superior labial artery (branch of facial artery) - gives a septal branch These supply the lower and outer parts.

Important Vascular Areas:

🔴 LITTLE'S AREA (Kiesselbach's Plexus)

  • Location: Anterior inferior part of the nasal septum (the front-bottom of the wall dividing your nostrils), just above the vestibule (nostril entrance)
  • 4 arteries meet here and form a network: anterior ethmoidal + septal branch of greater palatine + septal branch of superior labial + sphenopalatine
  • This area is exposed to:
    • Drying effect of inspired air
    • Fingernail trauma (picking your nose!)
  • THIS IS WHERE 90% OF NOSEBLEEDS HAPPEN - especially in children and young adults

🔴 WOODRUFF'S PLEXUS

  • Location: Back of the nose - inferior to the posterior end of the inferior turbinate
  • It is a venous plexus (veins, not arteries)
  • Site of posterior epistaxis in adults

Retrocolumellar Vein

  • Runs behind the columella (the strip between the two nostrils)
  • Common site of venous bleeding in young people

🔴 Causes of Epistaxis

A. LOCAL CAUSES (Problem in the nose/nasopharynx itself):

Nose:
  1. Trauma - finger nail picking, nose injury, surgery, fractures, hard blowing, violent sneeze
  2. Infections
    • Acute: Viral rhinitis, nasal diphtheria, acute sinusitis
    • Chronic: Atrophic rhinitis, rhinitis sicca (dry nose), tuberculosis, syphilis, granulomas (like rhinosporidiosis)
  3. Foreign bodies - non-living (rhinolith = calcium deposits) or living (maggots, leeches - yes, these are real!)
  4. Tumours/Neoplasms
    • Benign: Haemangioma (blood vessel tumour), papilloma
    • Malignant: Carcinoma (cancer), sarcoma
  5. Atmospheric changes - high altitude, sudden decompression (Caisson disease)
  6. Deviated nasal septum (DNS)
Nasopharynx:
  1. Adenoiditis (infected adenoids)
  2. Juvenile angiofibroma (a vascular tumour in teenage boys - causes massive, recurrent bleeds)
  3. Malignant tumours

B. GENERAL CAUSES (Systemic - whole body problems):

  1. Cardiovascular system - Hypertension (high BP), arteriosclerosis, mitral stenosis, pregnancy
  2. Blood disorders - Aplastic anaemia, leukaemia, thrombocytopenia, haemophilia, Christmas disease, scurvy, Vitamin K deficiency, Hereditary Haemorrhagic Telangiectasia (HHT)
  3. Liver disease - Cirrhosis (deficiency of clotting factors II, VII, IX, X)
  4. Kidney disease - Chronic nephritis
  5. Drugs - Aspirin, other analgesics, anticoagulants (blood thinners)
  6. Mediastinal compression - tumours raising venous pressure
  7. Acute infections - influenza, measles, chickenpox, typhoid, malaria, dengue
  8. Vicarious menstruation - epistaxis occurring at the time of menstruation (hormonal)

C. IDIOPATHIC

= No cause found. "Idiopathic" literally means "we don't know why."

📍 Sites of Epistaxis (Where exactly does it bleed?):

  1. Little's area - 90% of all epistaxis. Front of the septum.
  2. Above the middle turbinate - from anterior and posterior ethmoidal vessels (internal carotid system)
  3. Below the middle turbinate - from branches of SPA (external carotid system); may be hidden, lying lateral to turbinate; may need to fracture turbinates to localize bleeding
  4. Diffuse - from both septum and lateral nasal wall; in systemic disorders and blood diseases
  5. Nasopharynx

🏷️ Classification of Epistaxis

Anterior Epistaxis:

  • Blood flows OUT from the front of the nose with the patient sitting up
  • More common
  • Mostly from Little's area
  • Mainly in children/young adults
  • Mostly caused by trauma
  • Usually mild, controlled easily by local pressure

Posterior Epistaxis:

  • Blood flows backward into the throat - patient swallows it
  • Patient may vomit "coffee-coloured" vomit later (swallowed blood)- can be misdiagnosed as haematemesis (vomiting blood from stomach)
  • Less common but more serious
  • From posterosuperior part of nasal cavity; bleeding point is hard to find
  • Occurs after 40 years of age
  • Caused by hypertension or arteriosclerosis
  • Bleeding is severe, often requires hospitalization and postnasal packing

🚨 Management of Epistaxis

When a patient comes in with a nosebleed, the doctor needs to know:
  1. How did it start? (Spontaneous or from finger trauma?)
  2. How long has it been bleeding? How often?
  3. How much blood was lost?
  4. Which side is bleeding?
  5. Is it anterior or posterior type?
  6. Any family or personal history of bleeding tendency?
  7. Any known illness (hypertension, liver disease, kidney disease)?
  8. Any drugs (aspirin, anticoagulants)?

Step 1 - FIRST AID (What to do immediately):

  • Pinch the nose between thumb and index finger for 5 minutes - this compresses Little's area
  • Patient should sit up, lean forward over a basin (so blood doesn't go into the throat)
  • Breathe through the mouth
  • Apply cold compresses to the nose (causes reflex vasoconstriction = vessels narrow and bleed less)

Step 2 - CAUTERIZATION (Burning the bleeding point):

  • Used when the bleeding point can be seen (in anterior epistaxis)
  • First, the area is anaesthetized (numbed with local anaesthesia)
  • Then the bleeding point is cauterized with:
    • Silver nitrate bead (chemical cautery), OR
    • Electrocautery

Step 3 - ANTERIOR NASAL PACKING:

Used when bleeding is heavy and the site is difficult to find.
  • Nose is first cleared of blood clots by suction
  • A ribbon gauze soaked in liquid paraffin is used
    • Adults: 1 metre of gauze, 2.5 cm wide
    • Children: 12 mm wide
  • The gauze is folded and inserted, then layered from floor to roof and front to back - tightly packing the whole nasal cavity
  • Two methods: Vertical layering or Horizontal layering (Fig 33.4 shows both)
  • Pack stays for 24 hours (up to 2-3 days if needed; then antibiotics must be given to prevent sinusitis and toxic shock syndrome)

Step 4 - POSTERIOR NASAL PACKING:

Used when blood is flowing into the throat (posterior epistaxis).
Traditional method (Postnasal pack):
  • A cone-shaped gauze pack is made by rolling gauze and tying 3 silk threads to it
  • A rubber catheter is passed through the nose, comes out of the mouth
  • The silk threads are tied to the catheter
  • The catheter is pulled back through the nose, dragging the pack up into the nasopharynx (it blocks the back of the nose)
  • The threads are tied over a dental roll outside the nose
  • Anterior nasal packing is done simultaneously
  • The patient must be hospitalized
Modern method (Foley's catheter or Epistaxis balloon):
  • A Foley catheter (like a urinary catheter with a balloon) is inserted through the nose
  • The balloon is inflated with 5-10 mL saline - this blocks the choana
  • Anterior packing is then done
  • Epistaxis balloons are now available with TWO balloons (Fig 33.6):
    • Posterior balloon (A): inflated with 10 mL - sits in nasopharynx
    • Anterior balloon (B): inflated with 30 mL - fills the nasal cavity

Step 5 - ENDOSCOPIC CAUTERIZATION:

  • Under topical or general anaesthesia, the bleeding point is found with a rigid endoscope
  • Then cauterized directly

Step 6 - ELEVATION OF MUCOPERIOCHONDRIAL FLAP / SMR OPERATION:

For persistent or recurrent septal bleeds:
  • The mucoperiochondrial flap (lining of the septum) is elevated and repositioned
  • This causes fibrosis (scarring) that constricts blood vessels
  • SMR (Submucous Resection) removes any septal spur (bony projection) that may be causing epistaxis

Step 7 - LIGATION OF VESSELS (Tying off arteries):

When all else fails:
  1. External carotid artery ligation - ties the external carotid artery above the origin of superior thyroid artery (mostly replaced by embolization now)
  2. Maxillary artery ligation - for uncontrollable posterior epistaxis; approached via Caldwell-Luc operation (under upper lip). Now superseded by Transnasal Endoscopic SPA Ligation (TESPAL)
  3. Ethmoidal artery ligation - for anterosuperior bleeding above middle turbinate; vessels exposed through Lynch incision (cut at inner corner of eye)

TESPAL (Transnasal Endoscopic Sphenopalatine Artery Ligation):

  • Done with a rigid endoscope under topical/general anaesthesia
  • A mucosal flap is lifted in the posterior nasal cavity
  • The SPA is found and ligated (clipped)
  • High success rate for refractory posterior bleeding

Step 8 - EMBOLIZATION:

  • Done by an interventional radiologist
  • A catheter is passed through the femoral artery (groin) up to the internal maxillary artery
  • The artery is blocked using gelfoam, polyvinyl alcohol, or coils
  • Both sides may need to be done (cross-circulation)
  • Risk: cerebral thromboembolism, haematoma at local site
  • Ethmoidal arteries CANNOT be embolized (because they come from the internal carotid/ophthalmic artery - too risky)

General Measures (Always do these alongside specific treatment):

  1. Sit patient up, note blood loss
  2. Reassure + mild sedation
  3. Check pulse, BP, respiration
  4. Maintain haemodynamics - blood transfusion if needed
  5. Antibiotics if packing kept beyond 24 hours
  6. Intermittent oxygen if bilateral packing is done (because packing increases nasal resistance and can reduce oxygen)
  7. Investigate and treat the underlying cause

Special Case - Hereditary Haemorrhagic Telangiectasia (HHT / Osler-Weber-Rendu disease):

  • Abnormal blood vessels on the nasal septum, tongue, palate, fingertips (Fig 33.3 shows these lesions)
  • Causes recurrent nosebleeds
  • Treated with:
    • Argon, KTP, or Nd:YAG laser
    • May need repeated treatments
    • Some cases need septodermoplasty (remove the front septal mucosa and replace with a split-skin graft)

🧠 Quick Memory Summary

Nasal PolypEpistaxis
What is it?Swollen grape-like lump in the noseBleeding from inside the nose
Antrochoanal =Single, children, from maxillary sinus90% = Little's area (front of septum)
Ethmoidal =Multiple, adults, from ethmoid sinusesPosterior = Woodruff's plexus (back)
Main symptomBlocked noseNosebleed
Best investigationCT scanClinical + history
Best treatmentFESS (endoscopic surgery)Step-wise: Pinch → Pack → Cauterize → Ligate/Embolize

That covers everything across all 10 pages of your textbook - from the very basics of what these conditions are, to anatomy, causes, symptoms, signs, diagnosis, and every level of treatment. Let me know if you want me to go deeper into any specific section!

Make this into pdf and give Include all points which u gave

Reading File
Running Command

ls -la /tmp/workspace/ 2>/dev/null || mkdir -p /tmp/workspace && echo "workspace ready"

Running Command

mkdir -p /tmp/workspace/ent-notes && python3 << 'PYEOF' 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, Table, TableStyle, HRFlowable, PageBreak) from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY doc = SimpleDocTemplate( "/tmp/workspace/ent-notes/ENT_Nasal_Polypi_and_Epistaxis.pdf", pagesize=A4, rightMargin=2*cm, leftMargin=2*cm, topMargin=2*cm, bottomMargin=2*cm ) styles = getSampleStyleSheet() # Custom styles title_style = ParagraphStyle( 'CustomTitle', parent=styles['Title'], fontSize=22, textColor=colors.HexColor('#2C3E7A'), spaceAfter=8, alignment=TA_CENTER, fontName='Helvetica-Bold' ) chapter_style = ParagraphStyle( 'Chapter', parent=styles['Heading1'], fontSize=17, textColor=colors.white, spaceBefore=16, spaceAfter=8, fontName='Helvetica-Bold', backColor=colors.HexColor('#2C3E7A'), borderPad=6, leading=22 ) h2_style = ParagraphStyle( 'H2', parent=styles['Heading2'], fontSize=13, textColor=colors.HexColor('#B03060'), spaceBefore=12, spaceAfter=4, fontName='Helvetica-Bold' ) h3_style = ParagraphStyle( 'H3', parent=styles['Heading3'], fontSize=11, textColor=colors.HexColor('#2C7A4A'), spaceBefore=8, spaceAfter=3, fontName='Helvetica-Bold' ) body_style = ParagraphStyle( 'Body', parent=styles['Normal'], fontSize=9.5, leading=14, spaceAfter=4, alignment=TA_JUSTIFY, fontName='Helvetica' ) bullet_style = ParagraphStyle( 'Bullet', parent=styles['Normal'], fontSize=9.5, leading=14, spaceAfter=3, leftIndent=14, bulletIndent=0, fontName='Helvetica' ) sub_bullet_style = ParagraphStyle( 'SubBullet', parent=styles['Normal'], fontSize=9.5, leading=14, spaceAfter=2, leftIndent=28, fontName='Helvetica' ) table_header_style = ParagraphStyle( 'TableHeader', parent=styles['Normal'], fontSize=9, fontName='Helvetica-Bold', textColor=colors.white, alignment=TA_CENTER ) table_cell_style = ParagraphStyle( 'TableCell', parent=styles['Normal'], fontSize=8.5, fontName='Helvetica', leading=12 ) note_style = ParagraphStyle( 'Note', parent=styles['Normal'], fontSize=9, leading=13, fontName='Helvetica-Oblique', textColor=colors.HexColor('#555555'), leftIndent=10, backColor=colors.HexColor('#FFF8DC'), borderPad=5 ) subtitle_style = ParagraphStyle( 'Subtitle', parent=styles['Normal'], fontSize=11, textColor=colors.HexColor('#444444'), spaceAfter=4, alignment=TA_CENTER, fontName='Helvetica-Oblique' ) def B(text): return f'<b>{text}</b>' def I(text): return f'<i>{text}</i>' def BI(text): return f'<b><i>{text}</i></b>' def bullet(text, style=bullet_style): return Paragraph(f'• {text}', style) def subbullet(text): return Paragraph(f'– {text}', sub_bullet_style) def h2(text): return Paragraph(text, h2_style) def h3(text): return Paragraph(text, h3_style) def body(text): return Paragraph(text, body_style) def sp(n=6): return Spacer(1, n) def hr(): return HRFlowable(width="100%", thickness=0.5, color=colors.HexColor('#CCCCCC'), spaceAfter=4, spaceBefore=4) def chapter_heading(num, title, color_hex='#2C3E7A'): style = ParagraphStyle( 'ChapterH', parent=styles['Heading1'], fontSize=18, textColor=colors.white, spaceBefore=0, spaceAfter=0, fontName='Helvetica-Bold', backColor=colors.HexColor(color_hex), borderPad=8, leading=24 ) return Paragraph(f'Chapter {num}: {title}', style) def section_box(text, color_hex='#B03060'): style = ParagraphStyle( 'SectionBox', parent=styles['Heading2'], fontSize=12, textColor=colors.white, spaceBefore=10, spaceAfter=6, fontName='Helvetica-Bold', backColor=colors.HexColor(color_hex), borderPad=5, leading=18 ) return Paragraph(text, style) def make_table(data, col_widths, header_color='#2C3E7A'): table = Table(data, colWidths=col_widths, repeatRows=1) n_rows = len(data) n_cols = len(data[0]) style_cmds = [ ('BACKGROUND', (0,0), (-1,0), colors.HexColor(header_color)), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('FONTSIZE', (0,0), (-1,-1), 9), ('ALIGN', (0,0), (-1,-1), 'LEFT'), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, colors.HexColor('#F2F6FF')]), ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#AAAAAA')), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 5), ('RIGHTPADDING', (0,0), (-1,-1), 5), ] table.setStyle(TableStyle(style_cmds)) return table # ───────────────────────────────────────────── # BUILD CONTENT # ───────────────────────────────────────────── story = [] # COVER story.append(sp(30)) story.append(Paragraph('ENT Textbook Notes', title_style)) story.append(sp(8)) story.append(Paragraph('Beginner-Friendly Detailed Explanation', subtitle_style)) story.append(sp(6)) story.append(hr()) story.append(sp(6)) story.append(Paragraph('Chapter 32: Nasal Polypi | Chapter 33: Epistaxis', subtitle_style)) story.append(sp(4)) story.append(Paragraph('Complete notes with causes, symptoms, signs, diagnosis & treatment', subtitle_style)) story.append(sp(30)) story.append(PageBreak()) # ═══════════════════════════════════════════════════ # CHAPTER 32 - NASAL POLYPI # ═══════════════════════════════════════════════════ story.append(chapter_heading(32, 'NASAL POLYPI', '#2C3E7A')) story.append(sp(8)) story.append(h2('🔵 What is a Nasal Polyp? (The Absolute Basics)')) story.append(body('Imagine the inside lining of your nose (called the <b>mucosa</b>) getting swollen and puffy, like a blister. Over time, this puffy tissue hangs down like a grape or a teardrop inside your nose. That hanging, swollen, non-cancerous lump is called a <b>nasal polyp</b>.')) story.append(sp(4)) story.append(bullet(f'{B("Non-neoplastic")} = NOT cancerous. It is just swollen, watery (oedematous) tissue.')) story.append(bullet(f'{B("Oedematous")} = Swollen due to fluid collection inside the tissue.')) story.append(sp(6)) story.append(body(f'There are {B("two main types")}:')) story.append(bullet('Antrochoanal Polyp (Type 1)')) story.append(bullet('Bilateral Ethmoidal Polypi (Type 2)')) story.append(sp(10)) story.append(section_box('TYPE 1 - ANTROCHOANAL POLYP (Killian\'s Polyp)', '#7B2D8B')) story.append(h3('Where does it come from?')) story.append(bullet(f'Starts in the {B("maxillary antrum")} — a hollow space (sinus) inside your cheekbone.')) story.append(bullet(f'Has a tiny opening called the {B("accessory ostium")} (a side door). The polyp squeezes out through this.')) story.append(bullet(f'Grows into the {B("nasal cavity")} and then back into the {B("choana")} (opening at back of nose connecting to throat).')) story.append(h3('It has 3 Parts (like a balloon on a string):')) parts_data = [ [Paragraph(B('Part'), table_header_style), Paragraph(B('Description'), table_header_style)], [Paragraph('Antral', table_cell_style), Paragraph('Thin stalk (inside the sinus)', table_cell_style)], [Paragraph('Choanal', table_cell_style), Paragraph('Round and globular (balloon-like, at the back)', table_cell_style)], [Paragraph('Nasal', table_cell_style), Paragraph('Flat from side to side (the part inside the nose)', table_cell_style)], ] story.append(make_table(parts_data, [4*cm, 12*cm])) story.append(sp(6)) story.append(h3('Who gets it?')) story.append(bullet('Mostly children and young adults')) story.append(bullet('Usually single and on ONE side only (unilateral)')) story.append(bullet('Caused by nasal allergy + sinus infection')) story.append(h3('Symptoms (What the patient complains about):')) story.append(bullet(f'{B("Unilateral nasal obstruction")} = blockage in ONE nostril (main complaint)')) story.append(bullet('When polyp grows very big, it can block BOTH sides')) story.append(bullet('Voice becomes dull and nasal (hyponasality)')) story.append(bullet('Mucus (nasal discharge) from one or both sides')) story.append(h3('Signs (What the doctor sees):')) story.append(bullet('Anterior rhinoscopy may miss it if small')) story.append(bullet(f'When large: a {B("smooth greyish mass")} covered with mucus, soft, moveable')) story.append(bullet('A big polyp may stick out of the nostril and appear pink on its outer part')) story.append(bullet('Posterior rhinoscopy shows a globular mass hanging down behind the soft palate, dangling into the throat')) story.append(h3('How is it diagnosed?')) story.append(bullet('Endoscope (thin camera tube) can find a polyp hidden at the back of the nose')) story.append(bullet(f'{B("X-ray of sinuses")}: shows opacity (whitish clouding) of the involved sinus')) story.append(bullet(f'{B("CT scan")} — BEST method: shows polyp, origin, and extent in detail')) story.append(h3('Differential Diagnosis (Things that look similar but are NOT a polyp):')) story.append(bullet('Blob of mucus (snot) — disappears when you blow your nose; a polyp does NOT')) story.append(bullet('Hypertrophied middle turbinate — pink and feels hard/bony when probed; polyp is soft')) story.append(bullet('Angiofibroma — bleeds heavily and easily; history of massive nosebleeds in young boys')) story.append(bullet('Neoplasms (tumours) — fleshy, bleed easily, look different')) story.append(h3('Treatment:')) story.append(bullet(f'{B("Endoscopic sinus surgery (ESS)")} is the gold standard today')) story.append(bullet('Polyp removed by avulsion (pulling it out) through nasal or oral route')) story.append(bullet('Old operations like Caldwell-Luc (opening the cheek) are now mostly avoided')) story.append(sp(10)) story.append(section_box('TYPE 2 - BILATERAL ETHMOIDAL POLYPI', '#1A6B3C')) story.append(h3('Where do they come from?')) story.append(bullet('Come from the ethmoid sinuses (small air pockets between your eyes)')) story.append(bullet('Specifically from lateral wall of nose — uncinate process, bulla ethmoidalis, middle meatus')) story.append(h3('Causes (Aetiology):')) aet_data = [ [Paragraph(B('Condition'), table_header_style), Paragraph(B('Notes'), table_header_style)], [Paragraph('Chronic rhinosinusitis', table_cell_style), Paragraph('Long-standing sinus inflammation (allergic or non-allergic)', table_cell_style)], [Paragraph('Asthma', table_cell_style), Paragraph('7% of asthma patients have nasal polyps', table_cell_style)], [Paragraph('Aspirin intolerance', table_cell_style), Paragraph('36% of patients get polyps. Samter\'s Triad = nasal polyps + asthma + aspirin intolerance', table_cell_style)], [Paragraph('Cystic fibrosis', table_cell_style), Paragraph('20% get polyps; due to abnormal mucus production', table_cell_style)], [Paragraph('Allergic fungal sinusitis', table_cell_style), Paragraph('Almost ALL cases form nasal polyps', table_cell_style)], [Paragraph('Kartagener syndrome', table_cell_style), Paragraph('Bronchiectasis + situs inversus + ciliary dyskinesia', table_cell_style)], [Paragraph('Young syndrome', table_cell_style), Paragraph('Sinopulmonary disease + azoospermia (no sperm)', table_cell_style)], [Paragraph('Churg-Strauss syndrome', table_cell_style), Paragraph('Asthma + fever + eosinophilia + vasculitis + granuloma', table_cell_style)], [Paragraph('Nasal mastocytosis', table_cell_style), Paragraph('Mast cell infiltration in nose; IgE normal; few eosinophils', table_cell_style)], ] story.append(make_table(aet_data, [4.5*cm, 12*cm], '#1A6B3C')) story.append(sp(6)) story.append(h3('How do polyps form? (Pathogenesis — Simplified):')) story.append(bullet('Nasal lining near the middle meatus gets swollen due to fluid collection')) story.append(bullet('This creates polypoidal (grape-like) change')) story.append(bullet('Initially sessile (sitting flat, attached broadly)')) story.append(bullet('Becomes pedunculated (hanging on a stalk) due to gravity and sneezing')) story.append(h3('Pathology (Under microscope):')) story.append(bullet('Early: covered by normal ciliated columnar epithelium (normal nose lining cells)')) story.append(bullet('Later: changes to squamous/transitional type due to air irritation')) story.append(bullet('Submucosa: large spaces filled with serous (watery) fluid + eosinophils + round cells')) story.append(h3('Symptoms:')) story.append(bullet('Nasal stuffiness — can lead to complete blockage')) story.append(bullet('Partial or total loss of smell (anosmia)')) story.append(bullet('Headache from associated sinusitis')) story.append(bullet('Sneezing and watery discharge from allergy')) story.append(bullet('Mass protruding from the nostril in severe cases')) story.append(h3('Signs (What doctor sees):')) story.append(bullet('Smooth, glistening (shiny), grape-like masses — pale in colour')) story.append(bullet('Insensitive to probing — patient feels little pain when poked')) story.append(bullet('Do NOT bleed on touch — important for differentiating from tumours')) story.append(bullet('Sessile or pedunculated; often multiple and bilateral (both sides)')) story.append(bullet('Long-standing cases: broadening of nose, increased intercanthal distance')) story.append(bullet('Purulent (pus-like) nasal discharge from associated sinusitis')) story.append(h3('Diagnosis:')) story.append(bullet('Clinical exam — easily seen with rhinoscopy')) story.append(bullet('CT scan — most important; shows extent, bony erosion; helps plan surgery')) story.append(bullet('CT rules out malignancy — especially in people over 40 years')) story.append(h3('Treatment:')) story.append(body(f'{B("Conservative (Non-surgical):")}')) story.append(bullet('Antihistamines + allergy control — early polypoidal changes may reverse')) story.append(bullet('Steroids (short course) — reduces swelling')) story.append(subbullet('Contraindicated in: hypertension, peptic ulcer, diabetes, pregnancy, tuberculosis')) story.append(sp(4)) story.append(body(f'{B("Surgical:")}')) story.append(bullet(f'{B("FESS — Functional Endoscopic Sinus Surgery")}: Gold standard today')) story.append(subbullet('Uses cameras (0°, 30°, 70° angulation)')) story.append(subbullet('Removes polyps + clears ethmoid cells + restores drainage')) story.append(body('Older operations (before FESS — now rarely done):')) story.append(bullet('Polypectomy — remove 1–2 pedunculated polyps with snare')) story.append(bullet('Intranasal ethmoidectomy — clear ethmoid cells through the nose')) story.append(bullet('Extranasal ethmoidectomy — when polyps recur; cut near inner corner of eye')) story.append(bullet('Transantral ethmoidectomy — when maxillary sinus also infected')) story.append(sp(10)) story.append(section_box('KEY TABLE: Antrochoanal vs Ethmoidal Polypi', '#2C3E7A')) story.append(sp(4)) comp_data = [ [Paragraph(B('Feature'), table_header_style), Paragraph(B('Antrochoanal'), table_header_style), Paragraph(B('Ethmoidal'), table_header_style)], [Paragraph('Age', table_cell_style), Paragraph('Children/young adults', table_cell_style), Paragraph('Adults', table_cell_style)], [Paragraph('Cause', table_cell_style), Paragraph('Infection', table_cell_style), Paragraph('Allergy/multifactorial', table_cell_style)], [Paragraph('Number', table_cell_style), Paragraph('Solitary (single)', table_cell_style), Paragraph('Multiple', table_cell_style)], [Paragraph('Laterality', table_cell_style), Paragraph('Unilateral (one side)', table_cell_style), Paragraph('Bilateral (both sides)', table_cell_style)], [Paragraph('Origin', table_cell_style), Paragraph('Maxillary sinus near ostium', table_cell_style), Paragraph('Ethmoid sinuses, uncinate process, middle meatus', table_cell_style)], [Paragraph('Growth', table_cell_style), Paragraph('Grows backward to choana; may hang behind soft palate', table_cell_style), Paragraph('Grows forward; may present at nares', table_cell_style)], [Paragraph('Size/Shape', table_cell_style), Paragraph('Trilobed (antral + nasal + choanal parts)', table_cell_style), Paragraph('Small, grape-like masses', table_cell_style)], [Paragraph('Recurrence', table_cell_style), Paragraph('Uncommon if removed completely', table_cell_style), Paragraph('Common', table_cell_style)], [Paragraph('Treatment', table_cell_style), Paragraph('Endoscopic sinus surgery', table_cell_style), Paragraph('Endoscopic sinus surgery', table_cell_style)], ] story.append(make_table(comp_data, [3.5*cm, 7.5*cm, 7*cm])) # ═══════════════════════════════════════════════════ # CHAPTER 33 - EPISTAXIS # ═══════════════════════════════════════════════════ story.append(PageBreak()) story.append(chapter_heading(33, 'EPISTAXIS (NOSEBLEED)', '#8B1A1A')) story.append(sp(8)) story.append(h2('🔵 What is Epistaxis?')) story.append(body(f'{B("Epistaxis = Bleeding from inside the nose.")} Simple as that.')) story.append(bullet('Very common — seen in children, adults, and old people')) story.append(bullet('Often comes as an emergency')) story.append(bullet(f'It is a {B("sign")} (symptom of something else), NOT a disease by itself')) story.append(bullet('You must always look for the underlying cause')) story.append(sp(10)) story.append(section_box('BLOOD SUPPLY OF THE NOSE', '#8B1A1A')) story.append(body('The nose has a very rich blood supply from two separate systems:')) story.append(sp(4)) story.append(h3('1. Internal Carotid System (via Ophthalmic artery):')) story.append(bullet('Anterior ethmoidal artery')) story.append(bullet('Posterior ethmoidal artery')) story.append(body('These supply the upper and inner parts of the nose.')) story.append(h3('2. External Carotid System:')) story.append(bullet(f'{B("Sphenopalatine artery (SPA)")} — main artery of the nose; gives nasopalatine and posterior medial nasal branches')) story.append(bullet('Greater palatine artery (from maxillary artery)')) story.append(bullet('Superior labial artery (branch of facial artery) — gives a septal branch')) story.append(body('These supply the lower and outer parts.')) story.append(h3('IMPORTANT VASCULAR AREAS:')) story.append(body(f'{B("🔴 LITTLE\'S AREA (Kiesselbach\'s Plexus)")}')) story.append(bullet('Location: Anterior inferior part of the nasal septum, just above the vestibule (nostril entrance)')) story.append(bullet(f'{B("4 arteries meet here")}: anterior ethmoidal + septal branch of greater palatine + septal branch of superior labial + sphenopalatine')) story.append(bullet('Exposed to: drying effect of inspired air + fingernail trauma (nose picking!)')) story.append(Paragraph(f'⭐ {B("THIS IS WHERE 90% OF NOSEBLEEDS HAPPEN")} — especially in children and young adults', ParagraphStyle('Star', parent=styles['Normal'], fontSize=10, fontName='Helvetica-Bold', textColor=colors.HexColor('#8B1A1A'), leftIndent=14, spaceAfter=4))) story.append(sp(4)) story.append(body(f'{B("🔴 WOODRUFF\'S PLEXUS")}')) story.append(bullet('Location: Back of the nose — inferior to posterior end of inferior turbinate')) story.append(bullet('A venous plexus (veins, not arteries)')) story.append(bullet('Site of posterior epistaxis in adults')) story.append(sp(4)) story.append(body(f'{B("Retrocolumellar Vein")}')) story.append(bullet('Runs behind the columella (strip between the two nostrils)')) story.append(bullet('Common site of venous bleeding in young people')) story.append(sp(10)) story.append(section_box('CAUSES OF EPISTAXIS', '#8B1A1A')) story.append(h3('A. LOCAL CAUSES (Problem in the nose/nasopharynx itself):')) story.append(body(f'{B("Nose:")}')) story.append(bullet(f'{B("Trauma")} — fingernail picking, nose injury, surgery, fractures, hard blowing, violent sneeze')) story.append(bullet(f'{B("Infections:")}')) story.append(subbullet('Acute: Viral rhinitis, nasal diphtheria, acute sinusitis')) story.append(subbullet('Chronic: Atrophic rhinitis, rhinitis sicca, TB, syphilis, granulomas (rhinosporidiosis)')) story.append(bullet(f'{B("Foreign bodies:")}')) story.append(subbullet('Non-living: Rhinolith (calcium deposits)')) story.append(subbullet('Living: Maggots, leeches')) story.append(bullet(f'{B("Tumours/Neoplasms:")}')) story.append(subbullet('Benign: Haemangioma (blood vessel tumour), papilloma')) story.append(subbullet('Malignant: Carcinoma (cancer), sarcoma')) story.append(bullet(f'{B("Atmospheric changes")} — high altitude, sudden decompression (Caisson disease)')) story.append(bullet(f'{B("Deviated nasal septum (DNS)")}')) story.append(sp(4)) story.append(body(f'{B("Nasopharynx:")}')) story.append(bullet('Adenoiditis (infected adenoids)')) story.append(bullet('Juvenile angiofibroma (vascular tumour in teenage boys — causes massive, recurrent bleeds)')) story.append(bullet('Malignant tumours')) story.append(h3('B. GENERAL CAUSES (Systemic — whole body problems):')) story.append(bullet(f'{B("Cardiovascular system")} — Hypertension, arteriosclerosis, mitral stenosis, pregnancy')) story.append(bullet(f'{B("Blood disorders")} — Aplastic anaemia, leukaemia, thrombocytopenia, haemophilia, Christmas disease, scurvy, Vitamin K deficiency, Hereditary Haemorrhagic Telangiectasia (HHT)')) story.append(bullet(f'{B("Liver disease")} — Cirrhosis (deficiency of clotting factors II, VII, IX, X)')) story.append(bullet(f'{B("Kidney disease")} — Chronic nephritis')) story.append(bullet(f'{B("Drugs")} — Aspirin, other analgesics, anticoagulants (blood thinners)')) story.append(bullet(f'{B("Mediastinal compression")} — tumours raising venous pressure')) story.append(bullet(f'{B("Acute infections")} — influenza, measles, chickenpox, typhoid, malaria, dengue')) story.append(bullet(f'{B("Vicarious menstruation")} — epistaxis occurring at the time of menstruation (hormonal)')) story.append(h3('C. IDIOPATHIC:')) story.append(body('"Idiopathic" literally means we do not know the cause. Many times the cause of epistaxis is simply not clear.')) story.append(sp(10)) story.append(section_box('SITES OF EPISTAXIS (Where exactly does it bleed?)', '#2C3E7A')) story.append(bullet(f'{B("Little\'s area")} — 90% of all epistaxis. Front of the septum.')) story.append(bullet(f'{B("Above the middle turbinate")} — from anterior and posterior ethmoidal vessels (internal carotid system)')) story.append(bullet(f'{B("Below the middle turbinate")} — from branches of SPA (external carotid system); may be hidden')) story.append(bullet(f'{B("Diffuse")} — from both septum and lateral nasal wall; in systemic disorders and blood diseases')) story.append(bullet(f'{B("Nasopharynx")}')) story.append(sp(10)) story.append(section_box('CLASSIFICATION OF EPISTAXIS', '#2C3E7A')) ep_compare = [ [Paragraph(B('Feature'), table_header_style), Paragraph(B('Anterior Epistaxis'), table_header_style), Paragraph(B('Posterior Epistaxis'), table_header_style)], [Paragraph('Incidence', table_cell_style), Paragraph('More common', table_cell_style), Paragraph('Less common', table_cell_style)], [Paragraph('Site', table_cell_style), Paragraph("Mostly from Little's area or anterior part of lateral wall", table_cell_style), Paragraph('Mostly from posterosuperior part of nasal cavity; hard to locate', table_cell_style)], [Paragraph('Age', table_cell_style), Paragraph('Mostly children or young adults', table_cell_style), Paragraph('After 40 years of age', table_cell_style)], [Paragraph('Cause', table_cell_style), Paragraph('Mostly trauma', table_cell_style), Paragraph('Spontaneous; often due to hypertension or arteriosclerosis', table_cell_style)], [Paragraph('Bleeding', table_cell_style), Paragraph('Usually mild; can be controlled by local pressure or anterior pack', table_cell_style), Paragraph('Bleeding is severe; requires hospitalisation; postnasal pack often required', table_cell_style)], ] story.append(make_table(ep_compare, [3*cm, 7*cm, 7*cm])) story.append(sp(4)) story.append(Paragraph(f'⚠ {B("Posterior epistaxis warning")}: Blood flows backward into the throat. Patient may swallow it and later vomit "coffee-coloured" vomit. This can be {B("misdiagnosed as haematemesis")} (vomiting blood from stomach).', ParagraphStyle('Warn', parent=styles['Normal'], fontSize=9.5, fontName='Helvetica', textColor=colors.HexColor('#8B1A1A'), leftIndent=10, spaceAfter=4, backColor=colors.HexColor('#FFF0F0'), borderPad=5))) story.append(sp(10)) story.append(section_box('MANAGEMENT OF EPISTAXIS (Step-by-Step)', '#1A6B3C')) story.append(body(f'{B("When a patient comes in with a nosebleed, the doctor needs to know:")}')) story.append(bullet('Mode of onset — spontaneous or from finger trauma?')) story.append(bullet('Duration and frequency of bleeding')) story.append(bullet('Amount of blood lost')) story.append(bullet('Which side is bleeding?')) story.append(bullet('Anterior or posterior type?')) story.append(bullet('Any family or personal history of bleeding tendency?')) story.append(bullet('Any known illness (hypertension, liver disease, kidney disease)?')) story.append(bullet('Any drugs (aspirin, anticoagulants)?')) story.append(h3('STEP 1 — FIRST AID (What to do immediately):')) story.append(bullet('Pinch the nose between thumb and index finger for 5 minutes — compresses Little\'s area')) story.append(bullet('Patient should sit up, lean forward over a basin (blood drains out, not into throat)')) story.append(bullet('Breathe through the mouth')) story.append(bullet('Apply cold compresses to the nose — causes reflex vasoconstriction (vessels narrow, bleed less)')) story.append(h3('STEP 2 — CAUTERIZATION:')) story.append(bullet('Used when the bleeding point CAN be seen (anterior epistaxis)')) story.append(bullet('Area is numbed with local anaesthesia first')) story.append(bullet(f'Bleeding point cauterized with: {B("Silver nitrate bead")} (chemical cautery) OR {B("Electrocautery")}')) story.append(h3('STEP 3 — ANTERIOR NASAL PACKING:')) story.append(bullet('Used when bleeding is heavy and the site is difficult to find')) story.append(bullet('Nose first cleared of blood clots by suction')) story.append(bullet(f'{B("Ribbon gauze soaked in liquid paraffin")} is used:')) story.append(subbullet('Adults: 1 metre of gauze, 2.5 cm wide')) story.append(subbullet('Children: 12 mm wide')) story.append(bullet('Gauze layered from floor to roof and front to back — tightly packing the whole nasal cavity')) story.append(bullet('Two methods: Vertical layering OR Horizontal layering')) story.append(bullet('Pack stays for 24 hours (up to 2–3 days if needed)')) story.append(bullet('If kept >24 hours: give antibiotics to prevent sinusitis and toxic shock syndrome')) story.append(h3('STEP 4 — POSTERIOR NASAL PACKING:')) story.append(body('Used when blood flows into the throat (posterior epistaxis).')) story.append(sp(4)) story.append(body(f'{B("Traditional method (Postnasal pack):")}')) story.append(bullet('Cone-shaped gauze pack made by rolling gauze and tying 3 silk threads to it')) story.append(bullet('Rubber catheter passed through nose, comes out of mouth')) story.append(bullet('Silk threads tied to catheter, catheter pulled back — drags pack into nasopharynx')) story.append(bullet('Threads tied over a dental roll outside the nose')) story.append(bullet('Anterior nasal packing done simultaneously')) story.append(bullet(f'{B("Patient MUST be hospitalised")}')) story.append(sp(4)) story.append(body(f'{B("Modern method (Foley\'s catheter or Epistaxis balloon):")}')) story.append(bullet('Foley catheter inserted through nose; balloon inflated with 5–10 mL saline — blocks choana')) story.append(bullet('Anterior packing then done')) story.append(bullet(f'{B("Epistaxis balloon")} (modern device) has TWO balloons:')) story.append(subbullet('Posterior balloon (A): inflated with 10 mL — sits in nasopharynx')) story.append(subbullet('Anterior balloon (B): inflated with 30 mL — fills the nasal cavity')) story.append(h3('STEP 5 — ENDOSCOPIC CAUTERIZATION:')) story.append(bullet('Under topical or general anaesthesia')) story.append(bullet('Bleeding point found with a rigid endoscope, then cauterized directly')) story.append(h3('STEP 6 — ELEVATION OF MUCOPERIOCHONDRIAL FLAP / SMR OPERATION:')) story.append(bullet('For persistent or recurrent septal bleeds')) story.append(bullet('Mucoperiochondrial flap (lining of septum) is elevated and repositioned')) story.append(bullet('Causes fibrosis (scarring) that constricts blood vessels')) story.append(bullet('SMR operation can also remove septal spur (bony projection) causing epistaxis')) story.append(h3('STEP 7 — LIGATION OF VESSELS (Tying off arteries):')) story.append(bullet(f'{B("External carotid artery ligation")} — tied above origin of superior thyroid artery; mostly replaced by embolization now')) story.append(bullet(f'{B("Maxillary artery ligation")} — for uncontrollable posterior epistaxis; via Caldwell-Luc operation. Now superseded by TESPAL')) story.append(bullet(f'{B("Ethmoidal artery ligation")} — for anterosuperior bleeding; vessels exposed through Lynch incision (cut at inner corner of eye)')) story.append(sp(4)) story.append(body(f'{B("TESPAL — Transnasal Endoscopic Sphenopalatine Artery Ligation:")}')) story.append(bullet('Done with rigid endoscope under topical/general anaesthesia')) story.append(bullet('A mucosal flap is lifted in posterior nasal cavity')) story.append(bullet('SPA is found and ligated (clipped)')) story.append(bullet('High success rate for refractory posterior bleeding')) story.append(h3('STEP 8 — EMBOLIZATION:')) story.append(bullet('Done by an interventional radiologist')) story.append(bullet('Catheter passed through femoral artery (groin) up to internal maxillary artery')) story.append(bullet('Artery blocked using gelfoam, polyvinyl alcohol, or coils')) story.append(bullet('Both sides may need to be done (cross-circulation)')) story.append(bullet(f'Risk: {B("cerebral thromboembolism")}, haematoma at local site')) story.append(bullet(f'{B("Ethmoidal arteries CANNOT be embolized")} — too risky (internal carotid/ophthalmic artery)')) story.append(h3('GENERAL MEASURES (Always do alongside specific treatment):')) story.append(bullet('Sit patient up, note blood loss')) story.append(bullet('Reassure the patient + mild sedation')) story.append(bullet('Check pulse, BP, respiration')) story.append(bullet('Maintain haemodynamics — blood transfusion if needed')) story.append(bullet('Antibiotics if packing kept beyond 24 hours')) story.append(bullet('Intermittent oxygen if bilateral packing done (packing increases nasal resistance)')) story.append(bullet('Investigate and treat the underlying cause')) story.append(sp(6)) story.append(body(f'{B("Special Case — Hereditary Haemorrhagic Telangiectasia (HHT / Osler-Weber-Rendu disease):")}')) story.append(bullet('Abnormal blood vessels on nasal septum, tongue, palate, fingertips')) story.append(bullet('Causes recurrent nosebleeds')) story.append(bullet('Treated with: Argon, KTP, or Nd:YAG laser')) story.append(bullet('May need repeated treatments as telangiectasia recurs')) story.append(bullet('Some cases need septodermoplasty — remove front septal mucosa, replace with split-skin graft')) # FINAL SUMMARY TABLE story.append(PageBreak()) story.append(section_box('QUICK SUMMARY TABLE', '#2C3E7A')) story.append(sp(4)) summary_data = [ [Paragraph(B(''), table_header_style), Paragraph(B('Nasal Polyp'), table_header_style), Paragraph(B('Epistaxis'), table_header_style)], [Paragraph('What is it?', table_cell_style), Paragraph('Swollen grape-like lump in the nose', table_cell_style), Paragraph('Bleeding from inside the nose', table_cell_style)], [Paragraph('Type 1', table_cell_style), Paragraph('Antrochoanal: single, children, maxillary sinus', table_cell_style), Paragraph('Anterior: 90% from Little\'s area (front of septum)', table_cell_style)], [Paragraph('Type 2', table_cell_style), Paragraph('Ethmoidal: multiple, adults, ethmoid sinuses', table_cell_style), Paragraph('Posterior: Woodruff\'s plexus (back of nose)', table_cell_style)], [Paragraph('Main symptom', table_cell_style), Paragraph('Blocked nose', table_cell_style), Paragraph('Nosebleed', table_cell_style)], [Paragraph('Best investigation', table_cell_style), Paragraph('CT scan', table_cell_style), Paragraph('Clinical history + examination', table_cell_style)], [Paragraph('Best treatment', table_cell_style), Paragraph('FESS (Functional Endoscopic Sinus Surgery)', table_cell_style), Paragraph('Step-wise: Pinch → Pack → Cauterize → Ligate/Embolize', table_cell_style)], ] story.append(make_table(summary_data, [3.5*cm, 8*cm, 7*cm])) story.append(sp(20)) story.append(hr()) story.append(Paragraph('End of ENT Notes — Chapter 32 & 33', ParagraphStyle('Footer', parent=styles['Normal'], fontSize=9, textColor=colors.grey, alignment=TA_CENTER))) # BUILD PDF doc.build(story) print("PDF created successfully!") PYEOF

Your PDF is ready! Here's the download link:

ENT Nasal Polypi and Epistaxis

PDF Document · PDF


What's inside the PDF:
  • Cover page with title
  • Chapter 32 - Nasal Polypi - full explanation of both types (Antrochoanal + Ethmoidal), all causes, symptoms, signs, diagnosis, and treatment including all surgical options
  • Chapter 33 - Epistaxis - blood supply of nose, Little's area, Woodruff's plexus, all causes, anterior vs posterior classification, and all 8 steps of management (First Aid → Cautery → Packing → Endoscopy → SMR → Ligation → TESPAL → Embolization)
  • All comparison tables formatted clearly
  • Quick summary table at the end
  • Color-coded section headings for easy reading
Everything you saw in the chat explanation is included. Let me know if you want any section expanded further!
This is a shared conversation. Sign in to Orris to start your own chat.