Prompt for Creating Complete Medicine Notes on Abdominal Examination Act as an experienced Professor of Internal Medicine and MBBS examiner. Create comprehensive, integrated, exam-oriented notes on Abdominal Examination in Clinical Medicine suitable for MBBS Professional Exams, NEET PG, INI-CET, FMGE, MRCP, and MD Medicine. Requirements - Organize notes with clear headings and subheadings. - Use concise bullet points and high-yield tables. - Explain the purpose, technique, normal findings, abnormal findings, clinical significance, and common diseases associated with each examination step. - Include important viva questions, examiner tips, common mistakes, and memory tricks. - Highlight "Must Know for Exams" and "Clinical Pearls." - Cover common clinical cases and how findings help differentiate diseases. - Include flowcharts, mnemonics, summary boxes, and differential diagnosis tables. - Mention common positive findings in liver disease, splenic disorders, ascites, intestinal obstruction, peritonitis, abdominal masses, pancreatitis, and renal diseases. Cover the Following Topics in Detail 1. Introduction - Objectives of abdominal examination - Surface anatomy - Nine abdominal regions - Four abdominal quadrants - Abdominal planes - Surface marking of important organs 2. Preparation - Patient preparation - Positioning - Exposure - Lighting - Privacy - Warm hands - Examination sequence - General physical examination 3. Inspection - Shape and contour - Symmetry - Distension - Scars - Striae - Dilated veins - Caput medusae - Umbilicus - Skin changes - Hernias - Sinuses - Fistulae - Visible masses - Visible pulsations - Respiratory movement - Visible peristalsis 4. Palpation - Superficial palpation - Deep palpation - Guarding - Rigidity - Tenderness - Rebound tenderness - Organomegaly - Liver palpation - Spleen palpation - Kidney palpation - Gallbladder palpation - Aortic palpation - Bladder palpation - Abdominal masses - Characteristics of abdominal masses 5. Percussion - General percussion - Liver span - Splenic percussion - Traube's space - Shifting dullness - Fluid thrill - Puddle sign - Tympany - Dullness - Succussion splash 6. Auscultation - Normal bowel sounds - Hyperactive bowel sounds - Hypoactive bowel sounds - Absent bowel sounds - Bruits - Venous hum - Friction rubs 7. Examination of Ascites - Causes - Signs - Fluid thrill - Shifting dullness - Puddle sign - Differential diagnosis 8. Examination of the Liver - Technique - Normal findings - Hepatomegaly - Tender liver - Nodular liver - Pulsatile liver - Causes 9. Examination of the Spleen - Technique - Splenomegaly - Grading - Causes - Differential diagnosis 10. Examination of the Kidneys - Ballotability - Renal angle tenderness - Bimanual palpation - Causes of enlarged kidneys 11. Examination of the Gallbladder - Murphy's sign - Courvoisier's law - Gallbladder enlargement 12. Examination of Hernias - Inguinal hernia - Femoral hernia - Umbilical hernia - Incisional hernia 13. Special Clinical Signs Explain mechanism, technique, interpretation, diseases, and examiner points for: - Murphy's sign - McBurney's point tenderness - Rovsing's sign - Psoas sign - Obturator sign - Blumberg sign - Carnett sign - Grey Turner's sign - Cullen's sign - Kehr's sign - Courvoisier's sign - Castell's sign - Traube's space - Markle sign - Dance sign 14. Common Clinical Cases - Chronic liver disease - Cirrhosis - Portal hypertension - Hepatocellular carcinoma - Acute appendicitis - Acute cholecystitis - Pancreatitis - Intestinal obstruction - Perforation peritonitis - Ascites - Splenomegaly - Abdominal tuberculosis - Renal enlargement - Abdominal aortic aneurysm 15. Differential Diagnosis Tables - Hepatomegaly - Splenomegaly - Ascites - Abdominal masses - Right hypochondrial pain - Epigastric pain - Left hypochondrial pain - Right iliac fossa pain - Left iliac fossa pain 16. OSCE/Clinical Examination Section - Stepwise examination sequence - Presentation format to examiner - Common viva questions with answers - Frequently asked university questions - High-yield one-liners - Last-minute revision summary End with a 10-page rapid revision section, the 50 highest-yield facts, 20 mnemonics, and 30 viva questions with model answers in a concise exam-revision format.

Reading File
Finding Sources
Finding Sources
Finding Sources
Finding Sources
Reading File
Reading File
Finding Sources
Finding Sources
Reading File
Finding Sources
Finding Sources
Reading File
Reading File

COMPREHENSIVE MEDICINE NOTES: ABDOMINAL EXAMINATION

For MBBS Professional | NEET PG | INI-CET | FMGE | MRCP | MD Medicine

Sources: S Das Manual of Clinical Surgery 13e | Sleisenger & Fordtran GI & Liver Disease | Bailey & Love's Surgery 28e | Goldman-Cecil Medicine | Campbell-Walsh Urology | Yamada's Gastroenterology

PART 1: INTRODUCTION

1.1 Objectives of Abdominal Examination

  • Detect organomegaly, masses, tenderness, ascites
  • Identify signs of peritonitis, obstruction, perforation
  • Determine site, size, shape, consistency, mobility of any swelling
  • Assess for vascular abnormalities (bruits, AAA)
  • Guide differential diagnosis and investigation plan

1.2 Surface Anatomy

Nine Abdominal Regions (2 vertical + 2 horizontal planes)

RightCentralLeft
Right hypochondriumEpigastriumLeft hypochondrium
Right lumbar (flank)UmbilicalLeft lumbar (flank)
Right iliac fossaHypogastrium (pubic)Left iliac fossa
Vertical planes: Mid-clavicular lines (or lateral edges of rectus) Horizontal planes: Subcostal (L2) and intertubercular (L5)

Four Quadrants (simpler - used in clinical practice)

  • RUQ: Liver, gallbladder, right kidney, hepatic flexure, part of duodenum
  • LUQ: Stomach, spleen, left kidney, tail of pancreas, splenic flexure
  • RLQ: Appendix, cecum, right ovary/tube, right ureter
  • LLQ: Sigmoid colon, left ovary/tube, left ureter

1.3 Surface Markings of Important Organs

OrganSurface Marking
Liver (upper border)5th rib in MCL (right); 5th intercostal space (left)
Liver (lower border)Right costal margin
Spleen9th-11th ribs, left side; long axis = 10th rib
GallbladderTip of 9th costal cartilage, MCL
McBurney's pointJunction of lateral 1/3 and medial 2/3 of line joining ASIS to umbilicus
Kidney (right)T12-L3 (right slightly lower)
Aorta bifurcationL4 (level of umbilicus)

Abdominal Planes

PlaneLevelStructures
Transpyloric (L1)Halfway xiphoid-umbilicusPylorus, fundus of gallbladder, 2nd part duodenum, hilum of kidneys
Transtubercular (L5)ASIS to ASISAortic bifurcation
Subcostal (L2)Below 10th costal cartilage3rd part duodenum
Intertubercular (L5)Tubercles of iliac crests

PART 2: PREPARATION

2.1 Patient Preparation

  • Explain procedure; obtain consent
  • Ask patient to empty bladder before examination
  • Remove clothing from nipple line to inguinal ligament
  • Warm the examination room and your hands ("cold hands = guarding")

2.2 Positioning

  • Supine, with arms by sides (NOT behind head - tenses abdomen)
  • One pillow under head
  • Knees may be slightly flexed (relaxes abdominal muscles)
  • Examine at patient's right side

2.3 Sequence - ILPPA

Mnemonic: Inspect - Listen (auscultate first before palpation in acute abdomen) - Percuss - Palpate - Assess special signs
Standard sequence: Inspection → Palpation → Percussion → Auscultation Acute abdomen: Inspection → Auscultation → Palpation → Percussion
Examiner Tip: In OSCE, always start by washing hands, explaining procedure, and asking about pain before touching.

PART 3: INSPECTION

3.1 Look at - Mnemonic: "SCDS VERHF"

Shape/Symmetry - Contour - Distension - Scars - Veins - Eversion of umbilicus - Respiration - Hernias - Fistulae/sinuses

3.2 Shape and Contour

FindingCauses
Scaphoid (sunken)Cachexia, malnutrition, dehydration
Generalized distension5 Fs: Fat, Fluid (ascites), Flatus, Feces, Fetus
Upper abdominal fullnessHepatomegaly, splenomegaly, gastric dilatation, pancreatic pseudocyst
Lower abdominal fullnessBladder distension, fibroid uterus, ovarian cyst, fetal head
Localized bulgeHernia, abdominal mass
Clinical Pearl: In obesity, umbilicus is deeply inverted. In ascites, umbilicus is everted. This differentiates the two.

3.3 Distension - "5 Fs + 1 F" mnemonic

  • Fat (obesity)
  • Fluid (ascites)
  • Flatus (gaseous distension - intestinal obstruction)
  • Feces (constipation, Hirschsprung)
  • Fetus (pregnancy)
  • Fibroid / other masses

3.4 Scars

Scar PositionSurgery
Right subcostal (Kocher's)Cholecystectomy, biliary surgery
Left subcostalSplenectomy
Midline upperGastrectomy, peptic ulcer surgery
Right iliac fossa (gridiron)Appendicectomy
PfannenstielCesarean section, pelvic surgery
LoinNephrectomy
Midline lowerLaparotomy
ParamedianColostomy
Examiner Tip: A linear scar = primary healing; broad/irregular scar = wound infection/dehiscence

3.5 Dilated Veins / Caput Medusae

FindingBlood Flow DirectionCause
Caput medusae (veins radiate from umbilicus)Away from umbilicus in all directionsPortal hypertension
Lateral abdominal veinsUpward (cephalad)IVC obstruction
Inferior epigastric veinsDownwardSVC obstruction
To determine direction of blood flow:
  1. Place two fingers on the vein, milk blood out between them
  2. Release one finger - note direction of filling
  3. Direction of rapid filling = direction of blood flow
Must Know: In portal hypertension - flow is away from umbilicus. In IVC obstruction - flow is upward (both sides).

3.6 Umbilicus Changes

ChangeCause
EvertedAscites, large abdominal mass, obesity
InvertedNormal, obesity (contradistinction: obesity inverts, ascites everts)
Displaced upwardPelvic mass, pregnancy
Displaced downwardAscites (Tanyol's sign)
Nodular/hard (Sister Mary Joseph's nodule)Intra-abdominal malignancy (gastric cancer, ovarian, colon)
Blue discoloration (Cullen's sign)Retroperitoneal hemorrhage (acute pancreatitis, ruptured ectopic)
DischargeUrachal fistula, umbilical sinus

3.7 Visible Pulsations

  • Epigastric pulsation: Normal thin individual (aortic), right ventricular hypertrophy, tricuspid regurgitation (transmitted to liver)
  • AAA: Wide expansile pulsation above umbilicus

3.8 Skin Changes

SignAppearanceDisease
Cullen's signBluish periumbilical discolorationHemoperitoneum (pancreatitis, ectopic)
Grey Turner's signBruising in flanks (loin)Retroperitoneal hemorrhage (pancreatitis)
Caput medusaeDilated periumbilical veinsPortal hypertension
StriaeSilver/pink streaksPregnancy, ascites, Cushing's, obesity
Erythema ab igneMottled pigmentation (lattice)Hot-water bottle use - chronic pain
Jaundice / icterusYellow skinLiver/biliary disease
Spider angiomataCentral arteriole with radiating vesselsLiver disease, AVM

3.9 Visible Peristalsis

LocationShapeDisease
Upper abdomen (left to right)Ladder pattern / oblique wavesGastric outlet obstruction (pyloric stenosis)
Central abdomenLadder patternSmall bowel obstruction
Lower abdomenRareLarge bowel obstruction
Clinical Pearl: Visible peristalsis = always pathological in adults. Seen only in thin or cachectic patients with obstruction.

3.10 Respiratory Movement

  • Normal: abdomen rises with inspiration (diaphragmatic breathing)
  • Absent/restricted: peritonitis ("board-like rigidity")
  • Paradoxical: diaphragmatic palsy

3.11 Hernias on Inspection

  • Umbilical hernia - at umbilicus
  • Inguinal hernia - inguinal region (ask patient to cough or strain)
  • Incisional hernia - at scar site
  • Epigastric hernia - along linea alba above umbilicus

PART 4: PALPATION

4.1 General Principles

  • Examiner kneels to be at level of the patient's abdomen
  • Warm hands; begin away from site of pain
  • Watch the patient's face during palpation
  • Proceed from superficial to deep

4.2 Superficial Palpation

  • Light pressure (2-3 cm deep)
  • Assess: tenderness, guarding, masses, rigidity
  • Note skin temperature (increased = inflammation)

4.3 Deep Palpation

  • Firm pressure (5-8 cm deep)
  • Assess: organomegaly, deep masses, deeper tenderness
  • Use bimanual technique for ballotment

4.4 Tenderness

TypeDefinitionClinical Significance
Superficial tendernessPain on light pressureParietal peritonitis, cutaneous lesion
Deep tendernessPain on deep pressureVisceral pathology
Rebound tenderness (Blumberg's sign)Pain on sudden release of pressurePeritonitis
Referred rebound (Rovsing's sign)Pressure in LIF causes pain in RIFAppendicitis

4.5 Guarding vs. Rigidity

FeatureVoluntary GuardingInvoluntary Rigidity
CauseAnxiety, anticipationPeritoneal irritation
Relaxes with distractionYesNo
With deep breathingRelaxesPersists
Clinical significanceLess specificHighly specific for peritonitis
Extreme form-Board-like rigidity (perforated peptic ulcer)
Examiner Tip: To differentiate: Ask the patient to breathe deeply - voluntary guarding relaxes; involuntary rigidity persists.

4.6 Characteristics of Abdominal Masses

When palpating a mass, describe using "SITS CMTD":
  • Site (region)
  • Involvement of surrounding structures (moves with respiration?)
  • Tenderness
  • Size
  • Consistency (hard, soft, cystic, fluctuant)
  • Mobility (lateral, vertical)
  • Transilllumination
  • Definition of edges (well-defined vs. ill-defined)
  • Can you get above/below it?
  • Pulsatile?

4.7 Liver Palpation

Technique

  1. Start in RIF with fingers pointing toward the right hypochondrium
  2. Ask patient to breathe in - feel for liver edge descending
  3. Move hand superiorly after each breath until you reach costal margin
  4. Alternatively: "dipping" technique in ascites

Normal Findings

  • Liver normally not palpable (or just palpable at costal margin in thin individuals)
  • If palpable, note: size (cm below costal margin in MCL), consistency, edge (sharp/blunt), surface (smooth/nodular), tenderness, pulsatility

Hepatomegaly - Grade

GradeBelow Costal Margin
Mild2-4 cm
Moderate4-8 cm
Massive>8 cm

Liver Characteristics and Disease

CharacteristicDisease
Tender, smooth, soft enlargementHepatitis, CCF, Budd-Chiari
Tender, smooth (pulsatile)Tricuspid regurgitation, CCF
Hard, nodular, irregularHepatocellular carcinoma, metastases
Firm, non-tender with irregular edgesCirrhosis (often not enlarged; small in advanced cirrhosis)
Craggy, rock-hardMetastatic carcinoma
Smooth, very largeAmyloidosis, fatty liver, malaria, Riedel's lobe
With bruitHCC, hepatic artery aneurysm, AVM
PulsatileTricuspid regurgitation, hepatic vascular lesions
Must Know: In cirrhosis, liver is often SMALL, firm, and has irregular surface. A massively enlarged, hard, nodular liver = HCC or secondaries.

Liver Span by Percussion

  • Normal liver span: 8-12 cm in the mid-clavicular line
  • Percuss from lung resonance (upper border) down to dullness, and from below umbilicus upward to dullness
  • Reduced span: fulminant hepatic failure, cirrhosis
  • Increased span: hepatomegaly

4.8 Spleen Palpation

Technique

  1. Start in RIF (as spleen must be massively enlarged to reach here)
  2. Progress toward left hypochondrium
  3. Ask patient to breathe deeply; spleen descends on inspiration
  4. Roll patient slightly right lateral position if not palpable
  5. Bimanual technique: left hand on left posterior chest wall (9th-11th ribs)

Characteristics of Splenomegaly

  • Cannot get above it (extends under left rib cage)
  • Notch on medial border (pathognomonic when palpable)
  • Moves with respiration
  • Dull to percussion
  • Ballottement not possible (unlike kidney)

Hackney Grading of Splenomegaly

GradeDescription
Grade 1Just palpable below left costal margin
Grade 2Up to the umbilicus
Grade 3Extends to the right of umbilicus
Grade 4Massive splenomegaly - into pelvis

Causes of Splenomegaly

Mild-Moderate SplenomegalyMassive Splenomegaly
Viral hepatitisChronic malaria (hyperreactive malarial splenomegaly - HMS)
Cirrhosis with portal hypertensionKala-azar (visceral leishmaniasis)
Infective endocarditisMyelofibrosis
Systemic lupus erythematosusCML (most common in India)
Hemolytic anemiasThalassemia major
LymphomaGaucher's disease
Typhoid
EBV (infectious mononucleosis)
Mnemonic for massive splenomegaly: "CCLMTG" - CML, Chronic malaria (HMS), Leishmaniasis, Myelofibrosis, Thalassemia, Gaucher's
Clinical Pearl: Spleen vs. left kidney differentiation:
  • Spleen has a notch; kidney does not
  • Can get above kidney (ballottable); cannot get above spleen
  • Spleen moves with respiration more than kidney
  • Band of colonic resonance anterior to kidney; not anterior to spleen

4.9 Kidney Palpation

Bimanual (Dipping/Ballottement) Technique

  1. Place left hand in renal angle (posterior - loin)
  2. Right hand anteriorly below costal margin in flank
  3. Push forward with left hand - kidney is felt as a ballottable mass anteriorly

Normal Findings

  • Right kidney may be just palpable in thin individuals
  • Left kidney normally not palpable
  • Ballottable mass that is bimanually palpable = kidney

Renal Angle Tenderness (Murphy's Punch Test / CVA Tenderness)

  • Firm percussion over costovertebral angle (angle between 12th rib and erector spinae)
  • Positive (tender) in: pyelonephritis, perinephric abscess, renal calculi

Causes of Enlarged Kidneys

UnilateralBilateral
Renal cell carcinomaPolycystic kidney disease (PKD)
HydronephrosisBilateral hydronephrosis
Perinephric abscessAmyloidosis
PyonephrosisBilateral renal cell carcinoma (rare)
Renal vein thrombosis (acute)Diabetic nephropathy (early)

4.10 Gallbladder Palpation

  • Normally NOT palpable
  • Palpable GB = pathological
  • Location: tip of 9th costal cartilage, right MCL (junction of right costal margin and lateral edge of rectus)

Murphy's Sign

  • Technique: Place fingers over GB fossa; ask patient to breathe in deeply
  • Positive: Patient catches breath (inspiratory arrest) due to pain as inflamed GB descends onto examiner's fingers
  • Disease: Acute cholecystitis
  • False positive: Hepatitis, liver abscess (right lobe), subphrenic abscess

Courvoisier's Law

"If the gallbladder is palpable and the patient is jaundiced, the cause is unlikely to be gallstones"
Jaundice + Palpable GBJaundice + Non-palpable GB
Carcinoma head of pancreasGallstones (chronic fibrosis prevents distension)
Carcinoma ampulla of VaterHepatitis
Choledochal cystCirrhosis
Periampullary carcinomaPrimary biliary cholangitis
Must Know for Exams: Courvoisier's law = palpable GB in obstructive jaundice suggests malignancy NOT stones.

4.11 Aorta and Bladder Palpation

Aorta

  • Midline pulsation above umbilicus
  • Normal aorta: pulsation present but non-expansile, <3 cm wide
  • AAA: expansile pulsation (pushes fingers apart laterally), width >3 cm

Bladder

  • Distended bladder = smooth suprapubic swelling, dull to percussion, cannot get below it
  • Causes: urinary retention, pelvic mass obstructing urethra

PART 5: PERCUSSION

5.1 General Percussion

  • Percuss all four quadrants
  • Normal: Tympanic (hollow gut, gas-containing bowel)
  • Dull: Solid organ, fluid, mass
  • Shifting dullness: Ascites

5.2 Liver Percussion

  • Upper border: 5th rib in MCL (dullness replaces resonance)
  • Lower border: costal margin
  • Normal liver span: 8-12 cm
  • Liver dullness obliterated: Free gas under diaphragm (perforated viscus) - Gas interposes between liver and diaphragm causing resonance instead of dullness

5.3 Splenic Percussion

Traube's Space

  • Boundaries: Left 6th rib (above), left anterior axillary line (lateral), left costal margin (below)
  • Normal: Resonant (stomach gas bubble)
  • Obliterated Traube's space (dull): Splenomegaly, left pleural effusion, large liver left lobe

Castell's Sign (Percussion for Splenomegaly)

  • Percuss the lowest left intercostal space in the anterior axillary line (8th-9th ICS)
  • Normally resonant on full inspiration
  • Positive (dullness): Splenomegaly
Clinical Pearl: Traube's space dullness + Castell's sign positive = strong evidence of splenomegaly

5.4 Percussion for Ascites

Shifting Dullness

  1. Percuss from umbilicus outward to flank - note where dullness begins (fluid-gas interface)
  2. Keep finger at dull spot; turn patient onto opposite side and wait 30 seconds
  3. Percuss again - dullness has shifted (now resonant = fluid moved away; previously resonant area now dull)
  4. Positive = Ascites
  • Detects ascites >1.5 liters
  • Sensitivity ~83%, Specificity ~56%

Fluid Thrill

  1. Patient lies supine
  2. Place patient's (or assistant's) hand edge-on in midline to block fat/wall transmission
  3. Flick one flank firmly with fingers
  4. Feel for transmitted impulse on opposite flank
  5. Positive = Tense ascites (>3-4 liters typically)
  • More specific but less sensitive than shifting dullness

Puddle Sign (for minimal ascites, ~120 mL)

  1. Patient on hands and knees (knee-elbow position)
  2. Percuss from abdomen - fluid pools centrally
  3. Move stethoscope toward umbilicus while flicking flanks - sound becomes louder as stethoscope reaches fluid
  • Detects very small amounts of ascites

5.5 Dullness in Flanks

  • Both flanks dull without shifting = massive ascites OR retroperitoneal mass
  • Flanks dull + shifts = ascites (differentiates from mass which does NOT shift)

5.6 Succussion Splash

  • Place stethoscope over epigastrium; shake patient vigorously
  • Positive (splashing sound): Gastric outlet obstruction (pyloric stenosis) if >3 hours post-meal
  • Also heard in gastric dilatation, intestinal obstruction

PART 6: AUSCULTATION

6.1 Normal Bowel Sounds

  • Frequency: 5-15 gurgles/clicks per minute
  • Heard: every few seconds
  • High-pitched, intermittent, gurgling
  • Listen for at least 2 minutes before declaring absent

6.2 Abnormal Bowel Sounds

FindingDescriptionCause
Hyperactive / High-pitchedLoud, frequent, tinkling, "borborygmi"Early mechanical intestinal obstruction, gastroenteritis, diarrhea
HypoactiveDecreased frequencyIleus (early), post-op
Absent (>2 min)No soundsParalytic ileus, peritonitis, late obstruction
"Tinkling" / metallicHigh-pitched, musical rushesMechanical small bowel obstruction

6.3 Vascular Sounds

SoundLocationCause
Systolic bruit (epigastric)EpigastriumCeliac artery stenosis, aortic aneurysm
Systolic bruit (renal angle)Left/right of midline, above umbilicusRenal artery stenosis (renovascular hypertension)
Venous humAround umbilicusPortal hypertension (Cruveilhier-Baumgarten syndrome)
Hepatic rubRUQHepatic infarction, HCC, liver abscess
Splenic rubLUQSplenic infarction, perisplenitis
Must Know: Cruveilhier-Baumgarten murmur = venous hum at umbilicus due to recanalised paraumbilical veins in portal hypertension (along with caput medusae).

PART 7: EXAMINATION OF ASCITES

7.1 Definition

Pathological accumulation of free fluid in the peritoneal cavity (>25 mL pathological; clinical signs from ~500 mL; shifting dullness from ~1500 mL; fluid thrill from ~3000 mL)

7.2 Causes (SAAGQ Classification)

SAAG ≥ 1.1 g/dL (Transudate - portal hypertension)SAAG < 1.1 g/dL (Exudate - not portal hypertension)
Cirrhosis (most common - 80%)Peritoneal TB
Cardiac failure (CCF)Peritoneal carcinomatosis
Budd-Chiari syndromePancreatitis
Portal vein thrombosisNephrotic syndrome
Alcoholic hepatitisMeigs' syndrome
Sinusoidal obstructionChylous ascites
Mnemonic for exudate causes: "MALT CAP" - Malignancy, Amylase (pancreatitis), Lymphoma, TB, Chylous, Autoimmune, Peritonitis

7.3 Clinical Signs of Ascites

SignDescriptionMinimum Fluid
Fullness of flanksFluid settles in flanks~500 mL
Shifting dullnessDullness shifts as patient turns~1500 mL
Fluid thrillImpulse transmitted through fluid~3000 mL
Everted umbilicusFluid pressure pushes umbilicus outModerate-large
Horseshoe dullnessDullness in flanks and suprapubic area (resonant at umbilicus)Moderate
Tanyol's signUmbilicus displaced downwardLarge
Ankle edemaAssociated with portal hypertension-
GynecomastiaAssociated in hepatic cirrhosis-
Caput medusaePortal hypertension-

7.4 Differential Diagnosis of Abdominal Distension

CauseKey Differentiating Feature
AscitesShifting dullness, fluid thrill, everted umbilicus
ObesityInverted umbilicus, no shifting dullness
Gaseous distensionTympanic throughout, visible peristalsis
Ovarian cystCentral dullness, lateral resonance (opposite to ascites)
PregnancyUterine firm mass, FH audible, history
Retroperitoneal massFixed, no shifting
Key distinction: Ovarian cyst - central DULLNESS (unlike ascites where dullness is in flanks); resonance in flanks.

PART 8: SPECIAL CLINICAL SIGNS

8.1 Murphy's Sign

  • Mechanism: Inflamed gallbladder (peritoneal irritation) descends onto palpating fingers during inspiration
  • Technique: Hook fingers under right costal margin; ask to breathe in deeply
  • Positive: Inspiratory arrest with pain
  • Disease: Acute cholecystitis
  • False positive: Hepatitis, sub-diaphragmatic pathology
  • Examiner note: Must be negative on left side (control)

8.2 McBurney's Point Tenderness

  • Location: 1/3 of the way from ASIS to umbilicus (right side)
  • Positive: Maximum tenderness at this point
  • Disease: Appendicitis
  • Clinical note: May be absent in retrocecal or pelvic appendix

8.3 Rovsing's Sign

  • Technique: Deep palpation in LIF causes pain referred to RIF
  • Mechanism: Displaced gas compresses appendiceal region retrograde
  • Disease: Appendicitis

8.4 Psoas Sign (Iliopsoas Sign)

  • Technique 1: Extend right hip with patient in left lateral position
  • Technique 2: Ask patient to raise right leg against resistance (patient supine)
  • Positive: Pain in RIF
  • Mechanism: Inflamed appendix/abscess irritates psoas muscle
  • Disease: Retrocecal appendicitis, psoas abscess, Crohn's disease

8.5 Obturator Sign (Cope's Sign)

  • Technique: Flex and internally rotate the right hip (patient supine)
  • Positive: Pain in RIF/hypogastrium
  • Mechanism: Inflamed appendix irritates obturator internus muscle
  • Disease: Pelvic appendicitis, pelvic abscess, strangulated obturator hernia

8.6 Blumberg's Sign (Rebound Tenderness)

  • Technique: Deep pressure at point of tenderness; sudden release
  • Positive: Pain worse on release than pressure
  • Mechanism: Parietal peritoneum suddenly returns to position - stimulates inflamed peritoneum
  • Disease: Peritonitis (appendicitis, perforation)
  • Caution: Unnecessary pain to patient; percussive tenderness is preferred (gentler)

8.7 Carnett's Sign

  • Technique: Palpate area of pain; ask patient to raise head (tenses rectus muscles); palpate again
  • Positive: Pain increases or persists
  • Negative: Pain decreases
  • Interpretation: Positive = abdominal wall pain (not intra-abdominal); Negative = intra-abdominal cause
  • Disease: Distinguishes abdominal wall pain from visceral pain

8.8 Grey Turner's Sign

  • Appearance: Bruising/discoloration in flanks (lumbar region)
  • Mechanism: Retroperitoneal blood tracks along tissue planes to flanks (takes 24-48 hrs to appear)
  • Disease: Acute hemorrhagic pancreatitis (most common), ruptured aortic aneurysm, trauma
  • Examiner note: Develops 24-48 hours after onset (delayed sign)

8.9 Cullen's Sign

  • Appearance: Bluish/greenish periumbilical discoloration
  • Mechanism: Retroperitoneal blood tracks to umbilicus through falciform ligament/umbilical vein
  • Disease: Acute hemorrhagic pancreatitis, ruptured ectopic pregnancy, hemoperitoneum
  • Examiner note: Indicates severe hemorrhage, poor prognosis

8.10 Kehr's Sign

  • Technique: Lies supine; raise feet (Trendelenburg)
  • Positive: Pain referred to left shoulder tip
  • Mechanism: Blood/fluid under left diaphragm irritates C3,4,5 → referred to shoulder (phrenic nerve)
  • Disease: Splenic rupture (most classic), ruptured spleen, left sub-diaphragmatic collection

8.11 Courvoisier's Sign

  • Palpable, non-tender gallbladder in a jaundiced patient
  • Implies malignant obstructive jaundice (pancreatic head carcinoma)
  • See Section 4.10 for full explanation

8.12 Castell's Sign

  • Percussion of 8th/9th left ICS in AAL
  • Normally resonant; becomes dull in splenomegaly
  • Best in full inspiration

8.13 Traube's Space

  • See Section 5.3
  • Semilunar area of gastric tympany
  • Dullness = splenomegaly, left pleural effusion

8.14 Markle Sign (Jar Sign / Heel Drop Test)

  • Technique: Patient stands on tiptoes then drops suddenly onto heels; OR examiner jars the bed
  • Positive: Pain in abdomen
  • Disease: Peritoneal irritation (appendicitis, peritonitis)
  • Use: Gentler alternative to rebound tenderness test

8.15 Dance Sign

  • Appearance: Visible/palpable emptiness in RIF (absence of cecal mass)
  • Mechanism: Cecum with ileocecal intussusception has been drawn up into right upper quadrant
  • Disease: Ileocolic intussusception (mostly in children <2 years)
  • Associated: "Current jelly" (blood-stained mucus) stools

PART 9: EXAMINATION OF HERNIAS

9.1 Inguinal Hernia

FeatureDirectIndirect
AgeOlder adultsAny age (congenital)
MechanismWeak posterior wallThrough deep inguinal ring
DirectionForward (through Hesselbach's triangle)Through inguinal canal, may reach scrotum
Controlled by deep ring pressureNoYes
Common sideBothMore common right
Examination steps:
  1. Inspect: visible bulge in groin (Increased by coughing, straining)
  2. Palpate: reducibility, cough impulse
  3. Transillumination (hydrocele glows; hernia does not)
  4. For indirect: reduce hernia, press deep ring (ASIS-pubic tubercle midpoint), ask to cough - impulse not felt

9.2 Femoral Hernia

  • Location: below and lateral to pubic tubercle (medial to femoral vein, in femoral canal)
  • More common in women
  • High risk of strangulation (narrow neck)
  • Cough impulse may be absent in strangulated hernia

9.3 Umbilical vs. Para-umbilical Hernia

  • True umbilical: at umbilicus (common in infants, often resolves spontaneously)
  • Para-umbilical: just above or below umbilicus in adults (more common, does NOT resolve)

9.4 Incisional Hernia

  • At scar site, appears on straining
  • Risk factors: wound infection, obesity, malnutrition, steroids

PART 10: COMMON CLINICAL CASES

10.1 Chronic Liver Disease (CLD) / Cirrhosis

General examination findings:
  • Jaundice, scleral icterus
  • Parotid enlargement
  • Dupuytren's contracture
  • Leukonychia (white nails), Terry's nails, Muehrcke's nails
  • Koilonychia (iron def from bleeding)
  • Palmar erythema
  • Spider angiomata (>5 = significant; distribution: SVC territory - face, arms, upper trunk)
  • Loss of axillary/pubic hair (hypogonadism)
  • Testicular atrophy
  • Gynecomastia
  • Flapping tremor (asterixis) - hepatic encephalopathy
  • Fetor hepaticus (sweet-musty breath)
Abdominal findings:
  • Hepatomegaly OR small/shrunken liver (advanced)
  • Splenomegaly (portal hypertension)
  • Ascites (shifting dullness, fluid thrill)
  • Caput medusae / dilated abdominal veins
  • Venous hum at umbilicus (Cruveilhier-Baumgarten)
  • Scrotal/penile edema
Mnemonic for Spider Nevi: "SPACED" - Spider nevi, Palmar erythema, Asterixis (flap), Caput medusae / Clubbing, Erythema (palmar), Dupuytren's contracture

10.2 Portal Hypertension

  • Normal portal pressure: 5-10 mmHg
  • PHT: >12 mmHg (clinically significant); >10 mmHg = varices form
  • Signs: Splenomegaly, ascites, caput medusae, portosystemic collaterals (varices)

10.3 Hepatocellular Carcinoma (HCC)

  • Background cirrhosis (usually)
  • Massive, hard, nodular liver
  • Hepatic bruit (hypervascularity)
  • Friction rub over liver (perihepatitis)
  • Rapid clinical deterioration in compensated cirrhotic
  • AFP markedly elevated
  • Diagnosis: Triphasic CT / MRI (arterial enhancement, venous washout - LI-RADS criteria)

10.4 Acute Appendicitis

Classic progression:
  1. Central/periumbilical colicky pain (visceral, T10)
  2. Nausea, vomiting, anorexia
  3. Pain migrates to RIF (somatic, parietal peritoneum)
  4. Low-grade fever
  5. Signs: tenderness at McBurney's, Rovsing's, guarding, rebound
Alvarado Score (MANTREL):
FeatureScore
Migration of pain to RIF1
Anorexia1
Nausea/vomiting1
Tenderness in RIF2
Rebound tenderness1
Elevated temperature (>37.3°C)1
Leukocytosis (WBC >10,000)2
Total10
  • Score ≤4: appendicitis unlikely
  • 5-6: possible, observe
  • 7-10: likely, surgical

10.5 Acute Cholecystitis

  • RUQ pain radiating to right shoulder/back
  • Positive Murphy's sign
  • Tender RUQ, involuntary guarding
  • Low-grade fever, leukocytosis
  • Jaundice if CBD involved (Mirizzi syndrome)
  • USG: thickened GB wall (>4 mm), pericholecystic fluid, stones, sonographic Murphy's

10.6 Acute Pancreatitis

  • Severe epigastric pain radiating to back ("boring")
  • "Lying still" due to retroperitoneal irritation (pancreatitis vs. appendicitis - patient lies still vs. restless)
  • Nausea, vomiting, distension
  • Grey Turner's sign (flanks) - hemorrhagic
  • Cullen's sign (periumbilical) - hemorrhagic
  • Epigastric tenderness ± guarding
  • Absent bowel sounds (ileus)
  • Serum amylase (>3x ULN) / lipase (more specific)
  • Severity: Ranson's criteria, APACHE II, Balthazar CT score

10.7 Intestinal Obstruction

FeatureMechanicalParalytic Ileus
PainColickyAbsent/dull
Bowel soundsHigh-pitched, tinkling (early); absent (late)Absent
Visible peristalsisYes (ladder pattern)No
DistensionPresentPresent
VomitingPresent (early in SBO)Present
Passage of flatus/stoolAbsentAbsent
CauseAdhesions, hernia, volvulus, intussusceptionPost-op, peritonitis, electrolyte disturbance
X-ray findings:
  • SBO: Dilated loops, central position, valvulae conniventes (complete)
  • LBO: Peripheral, haustra (incomplete), massive distension proximal to obstruction

10.8 Perforation Peritonitis

  • Sudden onset severe abdominal pain
  • Board-like rigidity (involuntary)
  • Absent bowel sounds
  • Obliteration of liver dullness (free gas under diaphragm)
  • Rebound tenderness throughout
  • Shallow rapid breathing (to minimize diaphragm movement)
  • X-ray: Air under diaphragm (pneumoperitoneum)
  • Erect CXR is investigation of choice

10.9 Abdominal Tuberculosis

  • Insidious onset: fever, weight loss, anorexia, altered bowel habits
  • Ascites (exudative, high protein, lymphocytes)
  • Doughy abdomen (characteristic - feel like rolling dough)
  • Umbilical mass, RIF mass (ileocecal TB most common)
  • "Shortening" of iliopsoas (hip flexion deformity)
  • Hepatosplenomegaly
  • Diagnosis: Ascitic fluid ADA >40 IU/L, AFB, Laparoscopy + biopsy

10.10 Renal Enlargement

  • Bimanually palpable ballottable mass in flank
  • Resonant anteriorly (gas-containing colon in front)
  • PKD: bilateral, lobulated, large, cystic
  • Renal cell carcinoma: unilateral, hard, irregular; associated with hematuria, flank pain
  • Hydronephrosis: smooth, fluctuant

10.11 Abdominal Aortic Aneurysm (AAA)

  • Elderly male, hypertension, atherosclerosis
  • Expansile pulsating epigastric/periumbilical mass
  • Width >3 cm (normal aorta width)
  • Bruit may be heard
  • Ruptured AAA: Sudden severe back/abdominal pain, collapse, pulsatile mass, hypotension
  • Diagnosis: USG (screening), CT angiography (definitive)

PART 11: DIFFERENTIAL DIAGNOSIS TABLES

11.1 Hepatomegaly

CauseKey Features
Infectious hepatitis (viral)Tender, smooth, elevated liver enzymes, jaundice
Alcoholic liver diseaseHistory, tender in acute hepatitis; nodular in cirrhosis
Cirrhosis (early)Firm, non-tender; eventually small
HCCHard, nodular, bruit, AFP raised
Liver metastasesRock-hard, irregular, craggy surface
CCFTender, pulsatile, JVP raised, edema
Tricuspid regurgitationPulsatile liver, systolic murmur
AmyloidosisMassive, smooth, firm
MalariaTender, smooth
Hydatid cystSmooth, cystic; Casoni test
Fatty liverSmooth, soft, non-tender
Riedel's lobeNormal variant (tongue-like projection from right lobe)

11.2 Splenomegaly

ConditionKey Feature
CMLMassive splenomegaly, WBC >100,000, Philadelphia chromosome
Kala-azarMassive, tropical country, splenomegaly + fever + cachexia
Malaria (HMS)Moderate-massive; tropical, IgM raised
MyelofibrosisMassive; "tear-drop" cells, leukoerythroblastic picture
ThalassemiaYoung, pallor, jaundice, deformed face
LymphomaSplenomegaly + lymphadenopathy
Portal hypertensionFirm, associated with ascites, varices
Hemolytic anemiaSplenomegaly + jaundice + pallor + reticulocytosis
Infective endocarditisMurmur, fever, Osler nodes, Janeway lesions
SLEYoung female, butterfly rash, multi-system
Typhoid2nd week fever, relative bradycardia, rose spots

11.3 Ascites Differential Diagnosis

ConditionSAAGProteinOther Features
Cirrhosis≥1.1LowCirrhosis features
CCF≥1.1LowJVP raised, edema
Nephrotic syndrome<1.1LowEdema, proteinuria
Peritoneal TB<1.1HighLymphocytes, ADA >40
Malignant ascites<1.1HighCytology +
Pancreatitis<1.1HighAmylase high in fluid
Budd-Chiari≥1.1HighHepatomegaly, no cirrhosis

11.4 Abdominal Masses by Region

RegionCommon Causes
RHCLiver, gallbladder, hepatic flexure carcinoma, right kidney
EpigastricStomach, pancreas, liver (left lobe), AAA, lymph nodes
LHCSpleen, stomach, splenic flexure, left kidney, pancreatic tail
RIFAppendix mass, ileocecal TB, Crohn's, ileal carcinoid, right ovarian mass, cecal carcinoma
UmbilicalLymph nodes, transverse colon, small bowel loops
LIFSigmoid carcinoma, diverticular mass, left ovarian mass, fecal mass
HypogastricBladder, uterus, ovarian cyst, pregnancy
LoinKidney, adrenal, retroperitoneal

11.5 Regional Pain Differential Diagnosis

RegionCauses
RHC painCholecystitis, biliary colic, hepatitis, liver abscess, right basal pneumonia, peptic ulcer
Epigastric painPeptic ulcer, pancreatitis, GERD, MI (inferior), aortic dissection, gastritis
LHC painSplenic infarct, splenic rupture, gastric pathology, pancreatitis (tail), left pneumonia
RIF painAppendicitis, ileocecal TB, Crohn's, ovarian pathology (right), ureteric colic, mesenteric adenitis
LIF painSigmoid diverticulitis, sigmoid carcinoma, ovarian pathology (left), ureteric colic, constipation

PART 12: OSCE / CLINICAL EXAMINATION SECTION

12.1 Stepwise OSCE Sequence

1. Introduce yourself, wash hands, expose patient (nipples to groins)
2. INSPECTION (sides, tangentially, from foot of bed)
   - Shape, symmetry, distension, scars, veins, umbilicus, masses, pulsations, peristalsis
3. AUSCULTATION (in acute abdomen - before palpation)
   - Bowel sounds (2 minutes), bruits (aortic, renal, hepatic, splenic)
4. PALPATION
   - Superficial: tenderness, guarding, rigidity
   - Deep: organomegaly (liver, spleen, kidney, gallbladder, aorta, bladder)
   - Masses: site, size, shape, surface, consistency, mobility, edge, pulsatility
5. PERCUSSION
   - General (tympany/dullness)
   - Liver span
   - Spleen (Traube's, Castell's)
   - Ascites (shifting dullness, fluid thrill)
6. SPECIAL SIGNS (as clinically indicated)
7. HERNIAL ORIFICES (inguinal, femoral, umbilical)
8. GENITALIA / PR / PV (if indicated)
9. THANK PATIENT, COVER, WASH HANDS
10. PRESENT FINDINGS

12.2 How to Present to Examiner

"On abdominal examination, this [age/sex] patient was found to have [general inspection findings]. Inspection revealed [findings]. On palpation, the abdomen was [soft/tender/rigid], with [organomegaly description: X cm below costal margin in MCL, with Y surface and Z edge, moving with respiration]. Percussion revealed [liver span, shifting dullness +/-]. Auscultation revealed [bowel sounds]. In summary, this is consistent with [diagnosis] as evidenced by [key findings]."

PART 13: COMMON VIVA QUESTIONS WITH ANSWERS

Q1. What are the 5 Fs of abdominal distension?
Fat, Fluid, Flatus, Feces, Fetus (+ Fibroid as 6th)
Q2. How do you differentiate spleen from left kidney on examination?
Spleen: has a notch, cannot get above it, moves more with respiration, no ballottement, band of colonic resonance anterior to kidney but not spleen. Kidney: ballottable, can get above it, band of resonance anteriorly, renal angle tender.
Q3. What is Courvoisier's law? What are its exceptions?
"If the GB is palpable and the patient is jaundiced, the cause is unlikely to be gallstones." Exceptions: Double impaction of stones; Ca gallbladder with CBD obstruction; mucocele plus CBD obstruction; Mirizzi syndrome.
Q4. What is Sister Mary Joseph's nodule?
Hard periumbilical nodule representing metastatic deposit in the round ligament from intra-abdominal malignancy (most commonly stomach, colon, pancreas, ovary).
Q5. What is the mechanism of Kehr's sign?
Blood under left diaphragm irritates the diaphragmatic peritoneum supplied by phrenic nerve (C3,4,5). These nerve roots also supply the shoulder (axillary nerve/C5 + cutaneous C3/4), causing referred pain to the left shoulder tip.
Q6. What is Carnett's sign? When is it used?
When abdominal tenderness persists or increases on tensing the abdominal muscles (raising head), it indicates abdominal wall pain (positive Carnett's). If it decreases, the pain is visceral/intra-abdominal (negative Carnett's).
Q7. What is Traube's space? What obliterates it?
Traube's space is the semilunar tympanic area over the gastric fundus (left 6th rib - left costal margin - left anterior axillary line). Obliterated (dull) by: splenomegaly (most common), left pleural effusion, large left lobe of liver.
Q8. What is the minimum ascites detected by shifting dullness?
~1500 mL. Puddle sign detects as little as 120 mL. USG can detect 10-20 mL.
Q9. What is the difference between guarding and rigidity?
Voluntary guarding: conscious contraction, relaxes with distraction/deep breathing. Involuntary rigidity: reflex contraction due to peritoneal irritation, persists with distraction and breathing - indicates peritonitis.
Q10. How do you grade splenomegaly?
Grade 1: just palpable; Grade 2: up to umbilicus; Grade 3: to right of umbilicus; Grade 4: massive (into pelvis). Alternatively, Hackett's grading is used in tropical medicine.
Q11. What is the significance of absent liver dullness?
Free gas under the diaphragm (pneumoperitoneum), as in perforated hollow viscus (peptic ulcer perforation most common). The gas interposes between liver and diaphragm.
Q12. What is Dance's sign?
A palpable emptiness in the RIF due to the cecum being pulled up into the right upper quadrant in ileocolic intussusception. The cecum (normally in RIF) is empty/absent to palpation.
Q13. What is Grey Turner's sign? How does it differ from Cullen's sign?
Grey Turner's = bruising in flanks (retroperitoneal hemorrhage tracking laterally). Cullen's = periumbilical bluish discoloration (blood tracking along falciform ligament). Both are delayed signs (24-48 hrs) of severe hemorrhagic pancreatitis.
Q14. What is SAAG and how does it help in ascites workup?
Serum-Ascites Albumin Gradient = Serum albumin - Ascitic fluid albumin. SAAG ≥1.1 = portal hypertension (transudate-like). SAAG <1.1 = non-portal hypertension (exudate-like: TB, malignancy, pancreatitis, nephrotic).
Q15. How would you differentiate hepatomegaly from RIF mass?
Hepatomegaly: continuous with liver dullness; moves with respiration; cannot get above it (under rib margin); dull to percussion. RIF mass: separate from liver; may not move with respiration; different percussion note; can usually get above it.

PART 14: RAPID REVISION SECTION (10 Key Pages)


PAGE 1: INSPECTION - HIGH YIELD SUMMARY

FindingDisease
Cullen's signHemorrhagic pancreatitis, ruptured ectopic
Grey Turner's signHemorrhagic pancreatitis
Caput medusaePortal hypertension
Sister Mary Joseph's noduleIntra-abdominal malignancy
Visible peristalsis (upper abdomen)Gastric outlet obstruction
Everted umbilicusAscites
StriaeCushing's, obesity, pregnancy, ascites
Erythema ab igneChronic pain (hot-water bottle)
Scaphoid abdomenCachexia, malnutrition

PAGE 2: PALPATION - HIGH YIELD SUMMARY

SignDisease
Murphy's sign +veAcute cholecystitis
McBurney's tendernessAppendicitis
Rovsing's signAppendicitis
Psoas signRetrocecal appendicitis, psoas abscess
Obturator signPelvic appendicitis
Carnett's signAbdominal wall pain
Blumberg's signPeritonitis
Ballottable bimanual flank massKidney
Expansile epigastric pulsationAAA
Pulsatile liverTR, CCF

PAGE 3: PERCUSSION - HIGH YIELD SUMMARY

SignDisease
Absent liver dullnessPneumoperitoneum (perforation)
Shifting dullnessAscites
Fluid thrillTense ascites
Obliterated Traube's spaceSplenomegaly, left pleural effusion
Castell's sign +veSplenomegaly
Succussion splashPyloric stenosis / gastric outlet obstruction
Puddle signMinimal ascites (120 mL)

PAGE 4: AUSCULTATION - HIGH YIELD

SoundDisease
High-pitched tinkling bowel soundsMechanical intestinal obstruction
Absent bowel soundsParalytic ileus, peritonitis
Venous hum (umbilicus)Portal hypertension
Epigastric bruitCeliac artery stenosis
Renal bruit (paraumbilical)Renal artery stenosis
Hepatic rubHCC, hepatic infarction
Splenic rubSplenic infarction

PAGE 5: LIVER - HIGH YIELD

FeatureDisease
Tender, soft, smoothViral hepatitis, CCF
Hard, nodularHCC, metastases
Firm, non-tenderCirrhosis
PulsatileTR, CCF
Massive, smoothAmyloidosis, malaria, fatty liver
Hepatic bruitHCC
Small shrunken liverAdvanced cirrhosis, acute liver failure
Normal span8-12 cm in MCL

PAGE 6: SPLEEN - HIGH YIELD

Massive SplenomegalyModerate Splenomegaly
CMLPortal hypertension
Kala-azarHemolytic anemia
MyelofibrosisLymphoma
HMS (malaria)SLE
Thalassemia majorInfective endocarditis
Gaucher'sTyphoid
Mnemonic "CCGMaTh": CML, Chronic malaria, Gaucher's, Myelofibrosis, ala-azar, Thalassemia

PAGE 7: ASCITES - HIGH YIELD

SAAG ≥ 1.1SAAG < 1.1
Cirrhosis (80%)TB peritonitis
CCFMalignancy
Budd-ChiariPancreatitis
Portal vein thrombosisNephrotic syndrome
Alcoholic hepatitisMeigs' syndrome
  • Shifting dullness: >1500 mL
  • Fluid thrill: >3000 mL
  • Puddle sign: 120 mL
  • USG: 10-20 mL

PAGE 8: SPECIAL SIGNS SUMMARY TABLE

SignTechniqueDisease
Murphy'sPalpate GB fossa on inspirationAcute cholecystitis
Rovsing'sPalpate LIF - pain in RIFAppendicitis
PsoasHip extension - pain in RIFRetrocecal appendicitis
ObturatorHip flexion + IR - RIF painPelvic appendicitis
BlumbergRelease pressure - painPeritonitis
CarnettTense abdomen - pain increasesAbdominal wall pain
KehrShoulder painSplenic rupture
CullenPeriumbilical bruisingHemorrhagic pancreatitis
Grey TurnerFlank bruisingHemorrhagic pancreatitis
DanceEmpty RIFIntussusception
MarkleHeel drop - abdominal painPeritonitis
CourvoisierPalpable GB + jaundicePancreatic head Ca

PAGE 9: CLINICAL CASES RAPID REVIEW

CaseKey Signs
CirrhosisSpider nevi, palmar erythema, leukonychia, Dupuytren's, asterixis, gynecomastia, splenomegaly, ascites, caput medusae
HCCHard nodular liver, bruit, friction rub, AFP, on background cirrhosis
AppendicitisMcBurney's, Rovsing's, Psoas sign, Alvarado score
CholecystitisMurphy's +ve, RUQ tender, guarding, Courvoisier's law
PancreatitisEpigastric pain radiating to back, Grey Turner's + Cullen's (severe), ileus
Intestinal obstructionTinkling BS, distension, visible peristalsis, vomiting
PerforationBoard-like rigidity, absent liver dullness, silent abdomen, pneumoperitoneum
TB abdomenDoughy abdomen, exudative ascites, high ADA, RIF mass

PAGE 10: DIFFERENTIAL DIAGNOSIS QUICK REFERENCE

Symptom/SignTop 3 DDx
Palpable GB + jaundiceCa pancreatic head, Ca ampulla, Choledochal cyst
Massive splenomegalyCML, Kala-azar, Myelofibrosis
Board-like rigidityPerforated PU, peritonitis, ruptured ectopic
RIF painAppendicitis, Crohn's, ileocecal TB, ovarian pathology
Exudative ascitesTB, malignancy, pancreatitis
Transudative ascitesCirrhosis, CCF, Budd-Chiari
Visible peristalsisGOO (upper), SBO (central), LBO (lower)

PART 15: 50 HIGHEST-YIELD FACTS

  1. Normal liver span by percussion = 8-12 cm in right MCL
  2. Spleen must be 2-3x enlarged before it becomes palpable
  3. Murphy's sign = acute cholecystitis (NOT gallstones per se)
  4. Courvoisier's law: palpable GB + jaundice = malignancy (not stones)
  5. Sister Mary Joseph's nodule = periumbilical metastasis from GI/ovarian cancer
  6. 5 Fs of abdominal distension: Fat, Fluid, Flatus, Feces, Fetus
  7. Shifting dullness detects ascites from >1500 mL
  8. Fluid thrill detects tense/large ascites (>3000 mL typically)
  9. Puddle sign detects 120 mL of ascites
  10. SAAG ≥1.1 = portal hypertension (cirrhosis, CCF, Budd-Chiari)
  11. SAAG <1.1 = non-portal cause (TB, malignancy, pancreatitis)
  12. Cullen's sign + Grey Turner's sign = hemorrhagic pancreatitis
  13. Grey Turner's sign = flank bruising (retroperitoneal blood tracks laterally)
  14. Cullen's sign = periumbilical bruising (blood via falciform ligament)
  15. Kehr's sign (left shoulder pain) = splenic rupture / left sub-diaphragmatic blood
  16. Dance's sign (empty RIF) = ileocolic intussusception
  17. Markle sign (heel drop pain) = peritonitis
  18. Carnett's sign positive = abdominal wall pain (not visceral)
  19. Absent liver dullness = pneumoperitoneum (perforated viscus)
  20. Massive splenomegaly causes: CML > Kala-azar > Myelofibrosis > HMS > Thalassemia > Gaucher's
  21. Rovsing's sign: LIF pressure → RIF pain = appendicitis
  22. Psoas sign = retrocecal appendicitis
  23. Obturator sign = pelvic appendicitis
  24. McBurney's point = 1/3 from ASIS to umbilicus (right side)
  25. Alvarado score ≥7 = appendicectomy likely needed
  26. "Current jelly" stools + Dance's sign = intussusception
  27. Doughy abdomen = abdominal tuberculosis
  28. Board-like rigidity = perforated peptic ulcer (or any perforation)
  29. ADA >40 IU/L in ascitic fluid = TB peritonitis
  30. Succussion splash = gastric outlet obstruction (if >3 hrs post meal)
  31. Venous hum at umbilicus = portal hypertension (Cruveilhier-Baumgarten)
  32. Caput medusae - blood flows away from umbilicus
  33. IVC obstruction - lateral abdominal veins flow upward (cephalad)
  34. Tanyol's sign = umbilicus displaced downward in ascites
  35. In ovarian cyst: central dullness, flank resonance (opposite to ascites)
  36. Renal angle tenderness = pyelonephritis / renal colic
  37. Kidney can be ballotted; spleen cannot
  38. Spleen has a palpable notch on medial border
  39. Cannot get above the spleen; can get above the kidney
  40. Traube's space obliteration = splenomegaly (most common)
  41. Castell's sign: 8th/9th ICS AAL dullness = splenomegaly
  42. Normal portal pressure: 5-10 mmHg; PHT >12 mmHg
  43. Spider angiomata in SVC territory (>5 significant) = chronic liver disease
  44. Asterixis (flapping tremor) = hepatic encephalopathy
  45. Pulsatile liver = tricuspid regurgitation, CCF
  46. Hepatic bruit = HCC (most specific)
  47. Friction rub over liver = HCC, hepatic infarction, perihepatitis
  48. Friction rub over spleen = splenic infarction
  49. Riedel's lobe = normal variant (tongue-like right lobe projection)
  50. Erect CXR = best initial test for pneumoperitoneum

PART 16: 20 MNEMONICS

  1. "5 Fs" - Fat, Fluid, Flatus, Feces, Fetus (abdominal distension)
  2. "ILPPA" - Inspect, Listen, Percuss, Palpate, Assess special signs
  3. "SCDS VERHF" - Shape, Contour, Distension, Scars, Veins, Eversion of umbilicus, Respiration, Hernias, Fistulae
  4. "SITS CMTD" - Site, Involvement, Tenderness, Size, Consistency, Mobility, Transillumination, Definition of edges (describing a mass)
  5. "CCGMaTh" - CML, Chronic malaria, Gaucher's, Myelofibrosis, ala-azar (Kala-azar), Thalassemia (massive splenomegaly)
  6. "SPACED" - Spider nevi, Palmar erythema, Asterixis, Caput medusae, Erythema ab igne, Dupuytren's (signs of CLD)
  7. "MALT CAP" - Malignancy, Amylase (pancreatitis), Lymphoma, TB, Chylous, Autoimmune, Peritonitis (SAAG <1.1 causes)
  8. "MANTREL" - Migration, Anorexia, Nausea, Tenderness (RIF), Rebound, Elevated temperature, Leukocytosis (Alvarado score)
  9. "Pus Comes Out Of Kidney Stones" - (Planes) Pyloric-L1, Costal-L2, Outlets-L1, Kidney-L1, Subcostal-L2 - use this to remember transpyloric plane contents
  10. "Four Big Kidneys" - Polycystic kidney, Bilateral hydronephrosis, Kidney lymphoma/amyloid (bilateral enlargement)
  11. "Murphy → Cholecystitis; Courvoisier → Cancer" - direct association
  12. "GT is Going Too far (flanks)" - Grey Turner = flank bruising; Cullen = central/umbilical
  13. "Kehr → Left shoulder" (K = "Kreuz," cross - left side) - Splenic rupture, left sided sign
  14. "RIF pain differential: MATICO" - Mesenteric adenitis, Appendicitis, TB ileocecal, Intussusception, Crohn's, Ovarian pathology
  15. "SOAP A" - Succussion splash = Outlet obstruction Ascending to the stomach Post meal A (3 hours)
  16. "P-FLAT" - Portal hypertension → Fluid (ascites), Liver changes, Abdominal veins dilated, Thrombocytopenia
  17. "ABCDE of CLD" - Asterixis, Bilirubin (jaundice), Caput medusae/Clubbing, Dupuytren's/Dysgammaglobulinemia, Erythema (palmar)
  18. "SAFE" - Shifting dullness, Ascites causes, Fluid thrill, Exudate vs Transudate by SAAG
  19. "3 Ps of portal hypertension" - Portosystemic collaterals, Primary hypersplenism (cytopenia), Peritoneal fluid (ascites)
  20. "RUQ = Right to Complain" - RUQ pain: cholecystitis, hepatitis, hepatic abscess, peptic ulcer, right pneumonia

PART 17: 30 VIVA QUESTIONS WITH MODEL ANSWERS

Q1. What is the sequence of abdominal examination?
Inspection → Palpation → Percussion → Auscultation. Exception: In the acute abdomen, auscultation is done before palpation.
Q2. What does obliteration of liver dullness indicate?
Free gas in peritoneum (pneumoperitoneum) due to perforated hollow viscus - most commonly perforated peptic ulcer. Gas interposes between liver and diaphragm, replacing dullness with resonance.
Q3. What is the difference between shifting dullness and fluid thrill?
Shifting dullness: dullness moves as patient turns; fluid moves under gravity (detects >1500 mL). Fluid thrill: impulse transmitted through fluid on flicking one flank (detects tense/large ascites >3000 mL, more specific). A midline hand blocks fat transmission.
Q4. Describe your technique of spleen palpation.
Start in RIF with fingers parallel to left costal margin. Ask patient to take a deep breath - feel for spleen edge descending. Advance hand step by step toward left hypochondrium. If not palpated supine, place patient in right lateral position (semi-prone). Bimanual technique: left hand pushes forward on left 9th-11th ribs posteriorly.
Q5. What are the clinical signs of portal hypertension?
Splenomegaly, ascites, caput medusae (with blood flowing away from umbilicus), esophageal/gastric varices (on endoscopy), venous hum at umbilicus, hematemesis/melena, fetor hepaticus, encephalopathy.
Q6. What is the significance of a venous hum at the umbilicus?
It indicates recanalization of the paraumbilical vein in portal hypertension (Cruveilhier-Baumgarten murmur). This vein connects the left portal vein to the epigastric veins around the umbilicus.
Q7. How do you differentiate transudative from exudative ascites?
Using SAAG (serum albumin - ascitic albumin). SAAG ≥1.1 = portal hypertension (cirrhosis, CCF, Budd-Chiari). SAAG <1.1 = non-portal cause (TB, malignancy, pancreatitis, nephrotic syndrome).
Q8. What is a pulsatile liver? What causes it?
Liver that beats with each heartbeat due to backflow of blood. Causes: tricuspid regurgitation (hepatic venous pulsation), CCF (less pronounced). Examine hepatic vein waveform on USG Doppler.
Q9. How would you examine a patient for renal enlargement?
Bimanual palpation: left hand in renal angle (posteriorly), right hand anteriorly in flank. Ballot the kidney: push forward with left hand, feel anteriorly. Findings: ballottable, resonant anteriorly (colon), renal angle tenderness on percussion, moves with respiration (less than liver/spleen).
Q10. What is Courvoisier's law and what are its exceptions?
If the GB is enlarged and palpable in a jaundiced patient, the cause is NOT gallstones (because chronic gallstone disease makes the GB fibrotic and unable to distend). Exceptions: double impaction of stones, Mirizzi syndrome, Ca gallbladder with CBD compression, mucocele + CBD stone.
Q11. What are the causes of epigastric pulsation?
Normal thin individual, aortic aneurysm, right ventricular enlargement (transmitted through liver), celiac axis aneurysm. Differentiate aortic pulsation (expansile) from transmitted pulsation (non-expansile).
Q12. What is Sister Mary Joseph's nodule?
A hard, fixed nodule at the umbilicus representing metastatic malignancy - most commonly from stomach (45%), colon, ovary, or pancreas. It represents tumor reaching umbilicus via round ligament, falciform ligament, or direct peritoneal spread.
Q13. How does appendicitis pain evolve?
Initially central/periumbilical colicky pain (visceral fibers from T10 dermatome) - same level as appendix. Then as inflammation involves parietal peritoneum, pain localizes to RIF (somatic pain). This migration of pain is characteristic of appendicitis.
Q14. What are the causes of absent bowel sounds?
Paralytic ileus (post-op, peritonitis, metabolic - hypokalemia), late mechanical obstruction, intestinal ischemia, hypothyroidism. Must listen for >2 minutes in multiple quadrants before declaring absent.
Q15. What is the significance of visible peristalsis?
Always pathological in adults. Upper abdomen (gastric waves, left to right) = gastric outlet obstruction (pyloric stenosis). Central abdomen (ladder pattern) = small bowel obstruction. Lower abdomen = large bowel obstruction. Only seen in thin patients with obstruction.
Q16. How do you differentiate intestinal obstruction from paralytic ileus?
Bowel sounds tinkling/high-pitched in mechanical obstruction; absent in ileus. Visible peristalsis in mechanical; absent in ileus. Colicky pain in mechanical; dull/absent in ileus. Cause: adhesions/hernia/volvulus (mechanical) vs. post-op/metabolic/peritonitis (ileus).
Q17. What are the signs of peritonitis?
Board-like rigidity (involuntary), rebound tenderness (Blumberg's), absent bowel sounds, shallow breathing (to minimize diaphragm movement), Markle sign positive, and the patient lies still (vs. ureteric colic where patient writhes).
Q18. What are the features of ascites on examination?
Flank fullness, shifting dullness (>1500 mL), fluid thrill (>3000 mL), everted umbilicus (Tanyol's sign - displaced downward), horseshoe dullness (flanks + suprapubic, with central resonance), bulging flanks on inspection.
Q19. What is the difference between direct and indirect inguinal hernia?
Indirect: through deep inguinal ring - follows inguinal canal, can reach scrotum, more common in young, controlled by deep ring compression. Direct: through Hesselbach's triangle (weakness in posterior wall), does not enter scrotum, older men, not controlled by ring compression.
Q20. How do you perform the test for shifting dullness?
Percuss from umbilicus to right flank - note dullness. Return to midline. Percuss to left flank - note dullness. Mark where resonance-dullness interface is. Ask patient to turn to right lateral. Wait 30 seconds. Re-percuss same point - now resonant (fluid shifted). Move to previously resonant area - now dull. This confirms ascites.
Q21. What are the differences between right and left kidney position?
Right kidney is slightly lower (pushed down by liver). Right kidney: T12-L3. Left kidney: T11-L2. Right kidney is more commonly palpable in thin individuals.
Q22. What causes erythema ab igne?
Prolonged heat exposure (hot water bottle) causes mottled brownish-red reticular pigmentation. In abdominal examination, indicates chronic abdominal pain (especially pancreatitis, retroperitoneal pathology) where patient uses hot water bottle for pain relief.
Q23. What is the Alvarado score?
MANTREL scoring system for appendicitis: Migration (1), Anorexia (1), Nausea/vomiting (1), Tenderness in RIF (2), Rebound (1), Elevated temp (1), Leukocytosis (2) = Total 10. Score ≥7 = surgical; 5-6 = observe; ≤4 = unlikely appendicitis.
Q24. What is Riedel's lobe?
A normal anatomical variant - tongue-like downward projection from the right lobe of the liver extending toward the right iliac fossa. It is smooth, moves with respiration, connected to liver, and is firm/non-tender. Important to differentiate from hepatomegaly or RIF mass.
Q25. What is the significance of splenomegaly in liver disease?
Indicates portal hypertension - the spleen acts as a large lymph node that receives backpressure from portal venous system. Associated with hypersplenism (pancytopenia), esophageal varices, and ascites.
Q26. How would you differentiate ascites from ovarian cyst?
Ovarian cyst: central dullness (cyst is central, bowel pushed to sides), resonance in flanks; no shifting dullness. Ascites: flank dullness (fluid pools in gravity-dependent flanks), central resonance; shifting dullness present. Can get above ovarian cyst (intraperitoneal); ascites fills entire peritoneal cavity.
Q27. What is the mechanism of succussion splash?
Fluid (gastric contents) sloshing within a distended hollow viscus when the patient is shaken. Heard best 3-4 hours post-meal (normal stomach should have emptied by then). Indicates gastric outlet obstruction or large amount of fluid in stomach.
Q28. Why does bowel sound character change in obstruction?
In early mechanical obstruction, peristalsis is hyperactive as intestine tries to overcome obstruction → high-pitched, tinkling, metallic sounds as gas and fluid mix under pressure. As obstruction progresses and intestine fatigues → sounds decrease. In strangulation + ischemia → sounds absent.
Q29. How do you examine for Murphy's sign correctly?
Hook the tips of index finger and middle finger under the right costal margin at the MCL (gallbladder fundus). Ask the patient to take a deep breath. As the inflamed GB descends and hits the fingers, the patient winces and stops breathing (inspiratory arrest). A true Murphy's sign requires the same test on the left to be negative (control).
Q30. What are the features of HCC on abdominal examination?
On background of cirrhosis: rapidly enlarging liver, very hard and irregular/nodular liver surface, hepatic bruit (due to hypervascularity), hepatic friction rub (perihepatitis), with portal hypertension signs (ascites, splenomegaly, caput medusae). AFP markedly elevated. Triphasic CT shows arterial enhancement with venous washout.

SUMMARY BOX: MUST KNOW FOR EXAMS

Top 5 Exam Favorites:
  1. Courvoisier's law (mechanism + exceptions)
  2. Shifting dullness technique (step by step)
  3. Spleen vs. kidney differentiation
  4. SAAG interpretation
  5. Massive splenomegaly causes
Top 5 Viva Traps:
  1. "Is Riedel's lobe pathological?" - NO, it's a normal variant
  2. "What obliterates liver dullness?" - Free gas (perforation), NOT hepatomegaly
  3. "Is Murphy's sign positive in gallstones?" - No - it's for CHOLECYSTITIS
  4. "Which direction does blood flow in caput medusae?" - AWAY from umbilicus
  5. "Minimum ascites detected by shifting dullness?" - 1500 mL (not 500 mL)

References: S Das Manual of Clinical Surgery 13e | Sleisenger & Fordtran's GI and Liver Disease | Bailey & Love's Surgery 28e | Goldman-Cecil Medicine | Campbell-Walsh Urology | Yamada's Textbook of Gastroenterology 7e

Pdf

Reading File
Running Command

ls /home/daytona/workspace/ 2>/dev/null || echo "workspace empty or missing"

Running Command

mkdir -p /home/daytona/workspace/abdominal-exam && python3 -c "from reportlab.li…

Writing File

~/abdominal-exam/generate_pdf.py


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, KeepTogether
)
from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY
from reportlab.platypus import ListFlowable, ListItem

OUTPUT = "/home/daytona/workspace/abdominal-exam/Abdominal_Examination_Notes.pdf"

doc = SimpleDocTemplate(
    OUTPUT,
    pagesize=A4,
    rightMargin=1.8*cm, leftMargin=1.8*cm,
    topMargin=2*cm, bottomMargin=2*cm,
    title="Comprehensive Notes: Abdominal Examination",
    author="Orris Medical"
)

W = A4[0] - 3.6*cm  # usable width

styles = getSampleStyleSheet()

# Custom styles
TITLE_STYLE = ParagraphStyle('Title', parent=styles['Title'],
    fontSize=20, textColor=colors.HexColor('#1a3a5c'), spaceAfter=6,
    fontName='Helvetica-Bold', alignment=TA_CENTER)

SUBTITLE_STYLE = ParagraphStyle('Subtitle', parent=styles['Normal'],
    fontSize=11, textColor=colors.HexColor('#2c5282'), spaceAfter=8,
    fontName='Helvetica', alignment=TA_CENTER)

H1 = ParagraphStyle('H1', parent=styles['Heading1'],
    fontSize=14, textColor=colors.white,
    backColor=colors.HexColor('#1a3a5c'),
    spaceBefore=14, spaceAfter=6,
    fontName='Helvetica-Bold', leftIndent=4, rightIndent=4,
    borderPadding=(4,6,4,6))

H2 = ParagraphStyle('H2', parent=styles['Heading2'],
    fontSize=12, textColor=colors.HexColor('#1a3a5c'),
    spaceBefore=10, spaceAfter=4,
    fontName='Helvetica-Bold',
    borderPadding=(2,0,2,0))

H3 = ParagraphStyle('H3', parent=styles['Heading3'],
    fontSize=10.5, textColor=colors.HexColor('#2c5282'),
    spaceBefore=8, spaceAfter=3,
    fontName='Helvetica-Bold')

BODY = ParagraphStyle('Body', parent=styles['Normal'],
    fontSize=9.5, leading=14, textColor=colors.HexColor('#222222'),
    spaceAfter=4, fontName='Helvetica', alignment=TA_JUSTIFY)

BULLET = ParagraphStyle('Bullet', parent=styles['Normal'],
    fontSize=9.5, leading=13, textColor=colors.HexColor('#222222'),
    spaceAfter=2, fontName='Helvetica',
    leftIndent=16, firstLineIndent=-10)

SUB_BULLET = ParagraphStyle('SubBullet', parent=styles['Normal'],
    fontSize=9, leading=13, textColor=colors.HexColor('#333333'),
    spaceAfter=2, fontName='Helvetica',
    leftIndent=28, firstLineIndent=-10)

HIGHLIGHT = ParagraphStyle('Highlight', parent=styles['Normal'],
    fontSize=9.5, leading=13,
    backColor=colors.HexColor('#fff3cd'),
    textColor=colors.HexColor('#7d5a00'),
    spaceBefore=4, spaceAfter=4, fontName='Helvetica-Bold',
    leftIndent=8, rightIndent=8, borderPadding=(4,6,4,6))

PEARL = ParagraphStyle('Pearl', parent=styles['Normal'],
    fontSize=9.5, leading=13,
    backColor=colors.HexColor('#d4edda'),
    textColor=colors.HexColor('#155724'),
    spaceBefore=4, spaceAfter=4, fontName='Helvetica-Bold',
    leftIndent=8, rightIndent=8, borderPadding=(4,6,4,6))

MNEMONIC = ParagraphStyle('Mnemonic', parent=styles['Normal'],
    fontSize=9.5, leading=13,
    backColor=colors.HexColor('#cce5ff'),
    textColor=colors.HexColor('#004085'),
    spaceBefore=4, spaceAfter=4, fontName='Helvetica-Bold',
    leftIndent=8, rightIndent=8, borderPadding=(4,6,4,6))

EXAM_TIP = ParagraphStyle('ExamTip', parent=styles['Normal'],
    fontSize=9.5, leading=13,
    backColor=colors.HexColor('#f8d7da'),
    textColor=colors.HexColor('#721c24'),
    spaceBefore=4, spaceAfter=4, fontName='Helvetica-Bold',
    leftIndent=8, rightIndent=8, borderPadding=(4,6,4,6))

CAPTION = ParagraphStyle('Caption', parent=styles['Normal'],
    fontSize=8.5, textColor=colors.HexColor('#555555'),
    fontName='Helvetica-Oblique', alignment=TA_CENTER, spaceAfter=4)

VIVA_Q = ParagraphStyle('VivaQ', parent=styles['Normal'],
    fontSize=9.5, leading=14, textColor=colors.HexColor('#1a3a5c'),
    spaceAfter=2, fontName='Helvetica-Bold',
    leftIndent=8, spaceBefore=6)

VIVA_A = ParagraphStyle('VivaA', parent=styles['Normal'],
    fontSize=9.5, leading=13, textColor=colors.HexColor('#222222'),
    spaceAfter=6, fontName='Helvetica',
    leftIndent=16)

# ---- Table helpers ----
def make_table(data, col_widths=None, header_bg=colors.HexColor('#1a3a5c'), alt_bg=colors.HexColor('#eaf0fb')):
    if col_widths is None:
        n = len(data[0])
        col_widths = [W/n]*n
    t = Table(data, colWidths=col_widths, repeatRows=1)
    style = [
        ('BACKGROUND', (0,0), (-1,0), header_bg),
        ('TEXTCOLOR', (0,0), (-1,0), colors.white),
        ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'),
        ('FONTSIZE', (0,0), (-1,0), 9),
        ('ALIGN', (0,0), (-1,-1), 'LEFT'),
        ('VALIGN', (0,0), (-1,-1), 'TOP'),
        ('FONTNAME', (0,1), (-1,-1), 'Helvetica'),
        ('FONTSIZE', (0,1), (-1,-1), 8.5),
        ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.white, alt_bg]),
        ('GRID', (0,0), (-1,-1), 0.4, colors.HexColor('#aaaaaa')),
        ('TOPPADDING', (0,0), (-1,-1), 3),
        ('BOTTOMPADDING', (0,0), (-1,-1), 3),
        ('LEFTPADDING', (0,0), (-1,-1), 5),
        ('RIGHTPADDING', (0,0), (-1,-1), 5),
    ]
    t.setStyle(TableStyle(style))
    return t

def b(text): return Paragraph(f"• {text}", BULLET)
def sb(text): return Paragraph(f"  – {text}", SUB_BULLET)
def h1(text): return Paragraph(text, H1)
def h2(text): return Paragraph(text, H2)
def h3(text): return Paragraph(text, H3)
def p(text): return Paragraph(text, BODY)
def sp(n=6): return Spacer(1, n)
def hr(): return HRFlowable(width="100%", thickness=0.5, color=colors.HexColor('#cccccc'), spaceAfter=4)
def must(text): return Paragraph(f"⭐ MUST KNOW: {text}", HIGHLIGHT)
def pearl(text): return Paragraph(f"🟢 Clinical Pearl: {text}", PEARL)
def mnemo(text): return Paragraph(f"🔵 Mnemonic: {text}", MNEMONIC)
def tip(text): return Paragraph(f"🔴 Examiner Tip: {text}", EXAM_TIP)

# ========== BUILD CONTENT ==========
story = []

# COVER
story += [
    sp(30),
    Paragraph("COMPREHENSIVE MEDICINE NOTES", TITLE_STYLE),
    Paragraph("ABDOMINAL EXAMINATION", ParagraphStyle('BigTitle', parent=TITLE_STYLE, fontSize=26, textColor=colors.HexColor('#c0392b'))),
    sp(10),
    HRFlowable(width="80%", thickness=2, color=colors.HexColor('#1a3a5c'), hAlign='CENTER'),
    sp(10),
    Paragraph("Clinical Medicine | MBBS Professional Exams | NEET PG | INI-CET | FMGE | MRCP | MD Medicine", SUBTITLE_STYLE),
    sp(8),
    Paragraph("Sources: S Das Manual of Clinical Surgery 13e · Sleisenger &amp; Fordtran GI &amp; Liver Disease · Bailey &amp; Love's Surgery 28e · Goldman-Cecil Medicine · Campbell-Walsh Urology · Yamada's Gastroenterology 7e", CAPTION),
    sp(6),
    Paragraph("Prepared by <b>Orris Medical AI</b> | July 2026", CAPTION),
    PageBreak(),
]

# ===================== PART 1: INTRODUCTION =====================
story += [h1("PART 1: INTRODUCTION"), sp(4)]

story += [h2("1.1 Objectives of Abdominal Examination"), sp(2)]
story += [
    b("Detect organomegaly, masses, tenderness, ascites"),
    b("Identify signs of peritonitis, obstruction, perforation"),
    b("Determine site, size, shape, consistency, mobility of any swelling"),
    b("Assess for vascular abnormalities (bruits, AAA)"),
    b("Guide differential diagnosis and investigation plan"),
    sp(6),
]

story += [h2("1.2 Nine Abdominal Regions"), sp(2)]
story.append(make_table(
    [["Right","Central","Left"],
     ["Right Hypochondrium","Epigastrium","Left Hypochondrium"],
     ["Right Lumbar (Flank)","Umbilical","Left Lumbar (Flank)"],
     ["Right Iliac Fossa","Hypogastrium (Pubic)","Left Iliac Fossa"]],
    col_widths=[W/3, W/3, W/3]
))
story += [sp(4), p("Vertical planes: Mid-clavicular lines (lateral edges of rectus). Horizontal planes: Subcostal (L2) and Intertubercular (L5)."), sp(4)]

story += [h2("1.3 Four Abdominal Quadrants"), sp(2)]
story.append(make_table(
    [["Quadrant","Contents"],
     ["RUQ","Liver, gallbladder, right kidney, hepatic flexure, duodenum"],
     ["LUQ","Stomach, spleen, left kidney, tail of pancreas, splenic flexure"],
     ["RLQ","Appendix, cecum, right ovary/tube, right ureter"],
     ["LLQ","Sigmoid colon, left ovary/tube, left ureter"]],
    col_widths=[W*0.2, W*0.8]
))
story += [sp(4)]

story += [h2("1.4 Surface Markings of Important Organs"), sp(2)]
story.append(make_table(
    [["Organ","Surface Marking"],
     ["Liver (upper border)","5th rib in MCL (right); 5th ICS (left)"],
     ["Liver (lower border)","Right costal margin"],
     ["Spleen","9th-11th ribs, left side; long axis = 10th rib"],
     ["Gallbladder","Tip of 9th costal cartilage, MCL"],
     ["McBurney's point","Junction: lateral 1/3 and medial 2/3 of ASIS-umbilicus line (right)"],
     ["Right kidney","T12-L3 (right slightly lower)"],
     ["Aortic bifurcation","L4 (level of umbilicus)"]],
    col_widths=[W*0.35, W*0.65]
))
story += [sp(4)]

story += [h2("1.5 Abdominal Planes"), sp(2)]
story.append(make_table(
    [["Plane","Level","Key Structures"],
     ["Transpyloric","L1 (halfway xiphoid-umbilicus)","Pylorus, gallbladder fundus, 2nd duodenum, renal hila"],
     ["Subcostal","L2 (below 10th costal cartilage)","3rd part of duodenum"],
     ["Transtubercular","L5 (ASIS-ASIS)","Aortic bifurcation"],
     ["Intertubercular","L5 (iliac crest tubercles)","Cecum, sigmoid origin"]],
    col_widths=[W*0.28, W*0.35, W*0.37]
))
story += [sp(8), PageBreak()]

# ===================== PART 2: PREPARATION =====================
story += [h1("PART 2: PREPARATION"), sp(4)]
story += [h2("2.1 Patient & Examiner Preparation"), sp(2)]
story += [
    b("Ask patient to empty bladder before examination"),
    b("Expose: nipple line to inguinal ligaments"),
    b("Supine position, one pillow, arms by sides (NOT behind head - tenses abdomen)"),
    b("Examiner at patient's right side; kneel to be at level of abdomen"),
    b("Warm hands (cold hands cause voluntary guarding)"),
    b("Begin away from site of pain; watch the patient's face"),
    sp(4),
    tip("In OSCE: always wash hands, introduce yourself, explain procedure, ask about pain before touching."),
    sp(4),
]

story += [h2("2.2 Examination Sequence"), sp(2)]
story += [
    mnemo("ILPPA: Inspect → Listen (Auscultate) → Percuss → Palpate → Assess special signs"),
    sp(4),
    p("<b>Standard sequence:</b> Inspection → Palpation → Percussion → Auscultation"),
    p("<b>Acute abdomen:</b> Inspection → Auscultation (first, before palpation) → Palpation → Percussion"),
    sp(8), PageBreak()
]

# ===================== PART 3: INSPECTION =====================
story += [h1("PART 3: INSPECTION"), sp(4)]
story += [
    mnemo("SCDS VERHF: Shape/Symmetry – Contour – Distension – Scars – Veins – Eversion of umbilicus – Respiration – Hernias – Fistulae"),
    sp(6),
]

story += [h2("3.1 Distension - 5 Fs (+ 1 F)"), sp(2)]
story += [b("Fat (obesity)"), b("Fluid (ascites)"), b("Flatus (intestinal obstruction)"), b("Feces (constipation)"), b("Fetus (pregnancy)"), b("Fibroid / other masses"), sp(4)]
story += [pearl("In obesity: umbilicus deeply INVERTED. In ascites: umbilicus EVERTED. Key differentiator!"), sp(4)]

story += [h2("3.2 Scars and Their Significance"), sp(2)]
story.append(make_table(
    [["Scar Position","Surgery"],
     ["Right subcostal (Kocher's)","Cholecystectomy, biliary surgery"],
     ["Left subcostal","Splenectomy"],
     ["Midline upper","Gastrectomy, peptic ulcer surgery"],
     ["Right iliac fossa (gridiron/McBurney's)","Appendicectomy"],
     ["Pfannenstiel","Cesarean section, pelvic surgery"],
     ["Loin (flank)","Nephrectomy"],
     ["Paramedian","Colostomy, laparotomy"]],
    col_widths=[W*0.45, W*0.55]
))
story += [sp(4), tip("Linear scar = primary healing. Broad/irregular scar = wound infection/dehiscence."), sp(4)]

story += [h2("3.3 Dilated Veins / Caput Medusae"), sp(2)]
story.append(make_table(
    [["Finding","Blood Flow Direction","Cause"],
     ["Caput medusae (radiates from umbilicus)","AWAY from umbilicus (all directions)","Portal hypertension"],
     ["Lateral abdominal veins","Upward (cephalad)","IVC obstruction"],
     ["Inferior epigastric veins","Downward","SVC obstruction"]],
    col_widths=[W*0.38, W*0.32, W*0.30]
))
story += [sp(4), must("In portal hypertension - flow is AWAY from umbilicus. In IVC obstruction - flow is UPWARD on both sides."), sp(4)]

story += [h2("3.4 Umbilical Changes"), sp(2)]
story.append(make_table(
    [["Change","Cause"],
     ["Everted","Ascites, large abdominal mass"],
     ["Inverted","Normal, obesity"],
     ["Displaced downward (Tanyol's sign)","Ascites"],
     ["Displaced upward","Pelvic mass, pregnancy"],
     ["Sister Mary Joseph's nodule (hard)","Intra-abdominal malignancy (gastric, ovarian, colon)"],
     ["Blue discoloration (Cullen's sign)","Retroperitoneal hemorrhage (acute pancreatitis, ruptured ectopic)"],
     ["Discharge","Urachal fistula, umbilical sinus"]],
    col_widths=[W*0.4, W*0.6]
))
story += [sp(4)]

story += [h2("3.5 Skin Signs - High Yield"), sp(2)]
story.append(make_table(
    [["Sign","Appearance","Disease"],
     ["Cullen's sign","Bluish periumbilical discoloration","Hemoperitoneum (pancreatitis, ectopic)"],
     ["Grey Turner's sign","Bruising in flanks/loins","Retroperitoneal hemorrhage (pancreatitis)"],
     ["Caput medusae","Dilated periumbilical veins","Portal hypertension"],
     ["Striae","Silver/pink streaks","Pregnancy, ascites, Cushing's, obesity"],
     ["Erythema ab igne","Mottled lattice pigmentation","Hot-water bottle use - chronic pain"],
     ["Spider angiomata","Central arteriole + radiating vessels","Liver disease (SVC territory)"]],
    col_widths=[W*0.25, W*0.37, W*0.38]
))
story += [sp(4)]

story += [h2("3.6 Visible Peristalsis"), sp(2)]
story.append(make_table(
    [["Location","Pattern","Disease"],
     ["Upper abdomen (left to right)","Oblique / gastric waves","Gastric outlet obstruction (pyloric stenosis)"],
     ["Central abdomen","Ladder pattern","Small bowel obstruction"],
     ["Lower abdomen","Rare","Large bowel obstruction"]],
    col_widths=[W*0.3, W*0.3, W*0.4]
))
story += [sp(4), pearl("Visible peristalsis is ALWAYS pathological in adults. Seen in thin/cachectic patients with obstruction only."), sp(8), PageBreak()]

# ===================== PART 4: PALPATION =====================
story += [h1("PART 4: PALPATION"), sp(4)]

story += [h2("4.1 Guarding vs. Rigidity"), sp(2)]
story.append(make_table(
    [["Feature","Voluntary Guarding","Involuntary Rigidity"],
     ["Cause","Anxiety, anticipation","Peritoneal irritation"],
     ["Relaxes with distraction","Yes","No"],
     ["With deep breathing","Relaxes","Persists"],
     ["Extreme form","–","Board-like rigidity (perforated PU)"],
     ["Clinical significance","Less specific","Highly specific for peritonitis"]],
    col_widths=[W*0.38, W*0.31, W*0.31]
))
story += [sp(4), tip("To differentiate: Ask the patient to breathe deeply - voluntary guarding relaxes; involuntary rigidity persists."), sp(6)]

story += [h2("4.2 Tenderness Types"), sp(2)]
story.append(make_table(
    [["Type","Definition","Clinical Significance"],
     ["Superficial","Pain on light pressure","Parietal peritonitis, cutaneous lesion"],
     ["Deep","Pain on deep pressure","Visceral pathology"],
     ["Rebound (Blumberg's)","Pain on sudden release","Peritonitis"],
     ["Referred rebound (Rovsing's)","LIF pressure → pain in RIF","Appendicitis"]],
    col_widths=[W*0.28, W*0.37, W*0.35]
))
story += [sp(6)]

story += [h2("4.3 Describing Abdominal Masses - SITS CMTD"), sp(2)]
story += [
    mnemo("SITS CMTD: Site – Involvement (moves with respiration?) – Tenderness – Size – Consistency – Mobility – Transillumination – Definition of edges"),
    sp(4),
    b("Also: Can you get above/below it? Pulsatile? Ballottable? Bruit?"),
    sp(6),
]

story += [h2("4.4 Liver Palpation"), sp(2)]
story += [
    h3("Technique"),
    b("Start in RIF with fingers pointing toward right hypochondrium"),
    b("Ask patient to breathe in - feel for liver edge descending on inspiration"),
    b("Move hand superiorly after each breath until you reach costal margin"),
    b("Use 'dipping' technique in ascites"),
    sp(4),
    h3("Normal Findings"),
    b("Not normally palpable, or just palpable at costal margin in thin individuals"),
    b("If palpable: note size (cm below costal margin in MCL), consistency, edge, surface, tenderness, pulsatility"),
    sp(4),
]
story.append(make_table(
    [["Hepatomegaly Grade","Below Costal Margin"],
     ["Mild","2-4 cm"],
     ["Moderate","4-8 cm"],
     ["Massive",">8 cm"]],
    col_widths=[W*0.5, W*0.5]
))
story += [sp(4)]
story.append(make_table(
    [["Liver Characteristic","Disease"],
     ["Tender, smooth, soft","Hepatitis, CCF, Budd-Chiari"],
     ["Tender, pulsatile","Tricuspid regurgitation, CCF"],
     ["Hard, nodular, irregular","HCC, metastases"],
     ["Firm, non-tender","Cirrhosis (often small in advanced)"],
     ["Craggy, rock-hard","Metastatic carcinoma"],
     ["Massive, smooth","Amyloidosis, fatty liver, malaria"],
     ["Hepatic bruit","HCC, hepatic artery aneurysm"],
     ["Normal liver span (percussion)","8-12 cm in mid-clavicular line"]],
    col_widths=[W*0.45, W*0.55]
))
story += [sp(4), must("In cirrhosis, liver is often SMALL, firm, irregular. Massively enlarged hard nodular liver = HCC or secondaries."), sp(6)]

story += [h2("4.5 Spleen Palpation"), sp(2)]
story += [
    h3("Technique"),
    b("Start in RIF; progress toward left hypochondrium in steps"),
    b("Ask patient to breathe deeply; spleen descends on inspiration"),
    b("Roll patient slightly to right lateral if not palpable supine"),
    b("Bimanual: left hand on left 9th-11th ribs posteriorly"),
    sp(4),
    h3("Features of Splenomegaly"),
    b("Cannot get above it (under left rib cage)"),
    b("Notch on medial border - pathognomonic when palpable"),
    b("Moves with respiration"),
    b("Dull to percussion anteriorly"),
    b("Ballottement NOT possible (unlike kidney)"),
    sp(4),
]
story.append(make_table(
    [["Grade","Description"],
     ["Grade 1","Just palpable below left costal margin"],
     ["Grade 2","Up to the umbilicus"],
     ["Grade 3","Extends to the right of umbilicus"],
     ["Grade 4","Massive - into pelvis"]],
    col_widths=[W*0.3, W*0.7]
))
story += [sp(4)]
story.append(make_table(
    [["Mild-Moderate Splenomegaly","Massive Splenomegaly"],
     ["Viral hepatitis","CML (most common in India)"],
     ["Cirrhosis + portal hypertension","Kala-azar (visceral leishmaniasis)"],
     ["Infective endocarditis","Myelofibrosis"],
     ["SLE","Chronic malaria (HMS)"],
     ["Hemolytic anemias","Thalassemia major"],
     ["Lymphoma","Gaucher's disease"],
     ["Typhoid, EBV","–"]],
    col_widths=[W*0.5, W*0.5]
))
story += [sp(4), mnemo("Massive splenomegaly: CCGMaTh - CML, Chronic malaria, Gaucher's, Myelofibrosis, ala-azar (Kala-azar), Thalassemia"), sp(4)]
story += [
    pearl("Spleen vs. Kidney: Spleen has notch; cannot get above spleen; spleen moves more with respiration; no ballottement; band of colonic resonance anterior to kidney only."),
    sp(8), PageBreak()
]

story += [h2("4.6 Kidney Palpation"), sp(2)]
story += [
    h3("Bimanual Ballottement Technique"),
    b("Left hand in renal angle (loin) posteriorly"),
    b("Right hand anteriorly in flank below costal margin"),
    b("Push forward with left hand - kidney felt as ballottable mass anteriorly"),
    sp(4),
    h3("Renal Angle Tenderness (Murphy's Punch Test)"),
    b("Firm percussion over costovertebral angle (12th rib + erector spinae)"),
    b("Positive = pyelonephritis, perinephric abscess, renal calculi"),
    sp(4),
]
story.append(make_table(
    [["Unilateral Enlarged Kidney","Bilateral Enlarged Kidneys"],
     ["Renal cell carcinoma","Polycystic kidney disease (PKD)"],
     ["Hydronephrosis","Bilateral hydronephrosis"],
     ["Perinephric abscess","Amyloidosis"],
     ["Pyonephrosis","Diabetic nephropathy (early)"]],
    col_widths=[W*0.5, W*0.5]
))
story += [sp(6)]

story += [h2("4.7 Gallbladder - Murphy's Sign & Courvoisier's Law"), sp(2)]
story += [
    h3("Murphy's Sign"),
    b("Technique: Place fingers over GB fossa; ask patient to breathe in deeply"),
    b("Positive: Inspiratory arrest (patient catches breath) due to pain"),
    b("Disease: Acute cholecystitis"),
    b("False positive: Hepatitis, liver abscess, sub-diaphragmatic abscess"),
    tip("Must check the LEFT side (control) - must be NEGATIVE on left."),
    sp(4),
]
story.append(make_table(
    [["Courvoisier's Law"],
     ["\"If the gallbladder is palpable and the patient is jaundiced, the cause is UNLIKELY to be gallstones.\""]],
    col_widths=[W], header_bg=colors.HexColor('#c0392b')
))
story += [sp(4)]
story.append(make_table(
    [["Jaundice + Palpable GB (Malignant)","Jaundice + Non-palpable GB (Stone)"],
     ["Ca head of pancreas","Gallstones (fibrotic GB can't distend)"],
     ["Ca ampulla of Vater","Hepatitis"],
     ["Periampullary carcinoma","Cirrhosis"],
     ["Choledochal cyst","Primary biliary cholangitis"]],
    col_widths=[W*0.5, W*0.5]
))
story += [sp(4), must("Courvoisier's law = palpable GB in obstructive jaundice suggests MALIGNANCY, not stones."), sp(8), PageBreak()]

# ===================== PART 5: PERCUSSION =====================
story += [h1("PART 5: PERCUSSION"), sp(4)]

story += [h2("5.1 Percussion for Ascites"), sp(2)]
story.append(make_table(
    [["Sign","Technique","Minimum Fluid Detected"],
     ["Shifting dullness","Dullness shifts as patient turns to side","~1500 mL"],
     ["Fluid thrill","Impulse transmitted across fluid with midline block","~3000 mL (tense ascites)"],
     ["Puddle sign","Knee-elbow position; percuss centrally","~120 mL (minimal ascites)"],
     ["Ultrasound (reference)","Imaging","10-20 mL"]],
    col_widths=[W*0.28, W*0.46, W*0.26]
))
story += [sp(4)]
story += [
    h3("Shifting Dullness - Step-by-Step"),
    b("Percuss from umbilicus to right flank - note resonance-dullness interface"),
    b("Percuss from umbilicus to left flank - note interface"),
    b("Keep finger at dull spot; turn patient to opposite side; wait 30 seconds"),
    b("Re-percuss: previously dull = now resonant (fluid moved away)"),
    b("Previously resonant area now dull = fluid shifted there"),
    b("Positive = Ascites (sensitivity ~83%, specificity ~56%)"),
    sp(4),
]

story += [h2("5.2 Splenic Percussion"), sp(2)]
story.append(make_table(
    [["Sign","Technique","Positive Finding","Disease"],
     ["Traube's space","Percuss semilunar area (L 6th rib - costal margin - AAL)","Dull (normally resonant)","Splenomegaly, left pleural effusion"],
     ["Castell's sign","Percuss 8th-9th ICS in AAL on full inspiration","Dull (normally resonant)","Splenomegaly"]],
    col_widths=[W*0.22, W*0.35, W*0.2, W*0.23]
))
story += [sp(4)]

story += [h2("5.3 Liver Percussion"), sp(2)]
story += [
    b("Normal liver span: 8-12 cm in right MCL"),
    b("Percuss from lung resonance downward (upper border) and from below umbilicus upward (lower border)"),
    b("Absent liver dullness = FREE GAS under diaphragm = pneumoperitoneum (perforated viscus)"),
    must("Absent liver dullness = perforated hollow viscus (most common: perforated peptic ulcer). Erect CXR is best initial investigation."),
    sp(4),
]

story += [h2("5.4 Succussion Splash"), sp(2)]
story += [
    b("Place stethoscope over epigastrium; shake patient from side to side"),
    b("Positive (splashing sound): Gastric outlet obstruction / large gastric residual"),
    b("Positive only if >3 hours post-meal (normal stomach should have emptied)"),
    pearl("Succussion splash = gastric outlet obstruction (pyloric stenosis, gastroparesis, carcinoma pylorus)."),
    sp(8), PageBreak()
]

# ===================== PART 6: AUSCULTATION =====================
story += [h1("PART 6: AUSCULTATION"), sp(4)]

story += [h2("6.1 Bowel Sounds"), sp(2)]
story.append(make_table(
    [["Finding","Description","Cause"],
     ["Normal","5-15 gurgles/min, every few seconds","Normal gut motility"],
     ["Hyperactive/Tinkling","Loud, frequent, high-pitched, metallic rushes","Mechanical obstruction (early), gastroenteritis"],
     ["Hypoactive","Decreased frequency","Early ileus, post-op"],
     ["Absent (>2 min, multiple quadrants)","No sounds","Paralytic ileus, peritonitis, late obstruction"]],
    col_widths=[W*0.27, W*0.38, W*0.35]
))
story += [sp(4), tip("Listen for at least 2 minutes in more than one quadrant before declaring bowel sounds absent."), sp(4)]

story += [h2("6.2 Vascular Sounds"), sp(2)]
story.append(make_table(
    [["Sound","Location","Cause"],
     ["Systolic bruit (epigastric)","Epigastrium","Celiac artery stenosis, AAA"],
     ["Systolic bruit (renal)","Paraumbilical (L/R)","Renal artery stenosis (renovascular HT)"],
     ["Venous hum","Around umbilicus","Portal hypertension (Cruveilhier-Baumgarten)"],
     ["Hepatic rub","RUQ","HCC, hepatic infarction"],
     ["Splenic rub","LUQ","Splenic infarction, perisplenitis"]],
    col_widths=[W*0.3, W*0.28, W*0.42]
))
story += [sp(4), must("Venous hum at umbilicus = portal hypertension (Cruveilhier-Baumgarten murmur = recanalized paraumbilical vein)."), sp(8), PageBreak()]

# ===================== PART 7: ASCITES =====================
story += [h1("PART 7: EXAMINATION OF ASCITES"), sp(4)]

story += [h2("7.1 SAAG Classification"), sp(2)]
story.append(make_table(
    [["SAAG ≥ 1.1 g/dL (Portal HTN)","SAAG < 1.1 g/dL (Non-Portal HTN)"],
     ["Cirrhosis (80% of all ascites)","Peritoneal tuberculosis"],
     ["Cardiac failure (CCF)","Peritoneal carcinomatosis"],
     ["Budd-Chiari syndrome","Pancreatitis"],
     ["Portal vein thrombosis","Nephrotic syndrome"],
     ["Alcoholic hepatitis","Meigs' syndrome"],
     ["Sinusoidal obstruction","Chylous ascites"]],
    col_widths=[W*0.5, W*0.5]
))
story += [sp(4), mnemo("SAAG < 1.1 causes: MALT CAP - Malignancy, Amylase (pancreatitis), Lymphoma, TB, Chylous, Autoimmune, Peritonitis"), sp(4)]

story += [h2("7.2 Clinical Signs of Ascites"), sp(2)]
story.append(make_table(
    [["Sign","Description","Volume Required"],
     ["Flank fullness","Fluid in flanks on inspection","~500 mL"],
     ["Shifting dullness","Dullness moves on turning","~1,500 mL"],
     ["Fluid thrill","Transmitted impulse across fluid","~3,000 mL"],
     ["Everted umbilicus","Fluid pressure pushes out","Moderate-large"],
     ["Horseshoe dullness","Flanks + suprapubic dull; umbilicus resonant","Moderate"],
     ["Tanyol's sign","Umbilicus displaced downward","Large"]],
    col_widths=[W*0.28, W*0.45, W*0.27]
))
story += [sp(4)]

story += [h2("7.3 Ascites vs. Ovarian Cyst (Key Distinction)"), sp(2)]
story.append(make_table(
    [["Feature","Ascites","Ovarian Cyst"],
     ["Percussion flanks","Dull (fluid pools in flanks)","Resonant (bowel displaced laterally)"],
     ["Percussion centre","Resonant","Dull (cyst is central)"],
     ["Shifting dullness","Present","Absent"],
     ["Fluid thrill","Present (if tense)","Absent"],
     ["Can get above it","No (fills peritoneum)","Yes (intraperitoneal)"]],
    col_widths=[W*0.28, W*0.36, W*0.36]
))
story += [sp(4), must("OVARIAN CYST = CENTRAL DULLNESS + LATERAL RESONANCE (opposite to ascites!)"), sp(8), PageBreak()]

# ===================== PART 8: SPECIAL CLINICAL SIGNS =====================
story += [h1("PART 8: SPECIAL CLINICAL SIGNS"), sp(4)]

story.append(make_table(
    [["Sign","Mechanism / Technique","Positive Finding","Disease"],
     ["Murphy's sign","Palpate GB fossa; ask to breathe in","Inspiratory arrest","Acute cholecystitis"],
     ["McBurney's tenderness","Press 1/3 ASIS to umbilicus (R)","Max tenderness here","Appendicitis"],
     ["Rovsing's sign","Deep palpate LIF","Pain referred to RIF","Appendicitis"],
     ["Psoas sign","Extend R hip / raise R leg against resistance","RIF pain","Retrocecal appendicitis"],
     ["Obturator sign","Flex + internally rotate R hip","RIF/hypogastric pain","Pelvic appendicitis"],
     ["Blumberg's sign","Deep pressure then sudden release","Pain worse on release","Peritonitis"],
     ["Carnett's sign","Palpate; ask to raise head (tense rectus)","Pain increases = wall pain","Abdominal wall pain"],
     ["Grey Turner's sign","Inspect flanks (delayed 24-48h)","Bruising in flanks","Hemorrhagic pancreatitis"],
     ["Cullen's sign","Inspect periumbilical region","Blue periumbilical discoloration","Hemorrhagic pancreatitis"],
     ["Kehr's sign","Trendelenburg; left shoulder pain","Left shoulder tip pain","Splenic rupture"],
     ["Courvoisier's sign","Palpate GB in jaundiced patient","Non-tender palpable GB","Ca head of pancreas"],
     ["Castell's sign","Percuss 8th-9th ICS in AAL on inspiration","Dull (normally resonant)","Splenomegaly"],
     ["Traube's space","Percuss semilunar LUQ area","Dull (normally resonant)","Splenomegaly"],
     ["Markle sign (jar sign)","Patient drops onto heels from tiptoes","Abdominal pain","Peritonitis"],
     ["Dance sign","Inspect/palpate RIF","Empty RIF (cecum absent)","Intussusception"]],
    col_widths=[W*0.2, W*0.3, W*0.25, W*0.25]
))
story += [sp(8), PageBreak()]

# ===================== PART 9: HERNIAS =====================
story += [h1("PART 9: EXAMINATION OF HERNIAS"), sp(4)]

story.append(make_table(
    [["Feature","Indirect Inguinal","Direct Inguinal","Femoral"],
     ["Age","Any (congenital)","Older adults","Middle-aged women > men"],
     ["Path","Through deep inguinal ring; may reach scrotum","Through Hesselbach's triangle","Through femoral canal"],
     ["Controlled by ring pressure","YES","No","N/A"],
     ["Risk of strangulation","Moderate","Low","HIGH"],
     ["Common side","Right > left","Bilateral","Right"],
     ["In women","Rare","Rare","More common than inguinal"]],
    col_widths=[W*0.27, W*0.25, W*0.24, W*0.24]
))
story += [sp(4)]
story.append(make_table(
    [["Hernia Type","Characteristics"],
     ["Umbilical (infant)","At umbilicus; often resolves by age 2"],
     ["Para-umbilical (adult)","Above/below umbilicus; does NOT resolve; needs repair"],
     ["Incisional","At scar site; appears on straining; risk: infection, obesity, steroids"],
     ["Epigastric","Along linea alba above umbilicus; often asymptomatic"]],
    col_widths=[W*0.32, W*0.68]
))
story += [sp(8), PageBreak()]

# ===================== PART 10: CLINICAL CASES =====================
story += [h1("PART 10: COMMON CLINICAL CASES"), sp(4)]

story += [h2("10.1 Chronic Liver Disease (CLD) / Cirrhosis"), sp(2)]
story += [
    mnemo("SPACED: Spider nevi, Palmar erythema, Asterixis, Caput medusae/Clubbing, Erythema (palmar), Dupuytren's"),
    sp(4),
]
story.append(make_table(
    [["System","Signs"],
     ["Hands/Nails","Leukonychia (white nails), palmar erythema, Dupuytren's contracture, clubbing, Terry's nails"],
     ["Face","Jaundice, parotid enlargement, scleral icterus"],
     ["Skin","Spider angiomata (>5 significant; SVC territory), jaundice"],
     ["Hormonal","Gynecomastia, testicular atrophy, loss of axillary/pubic hair"],
     ["CNS","Asterixis (flapping tremor), fetor hepaticus, encephalopathy"],
     ["Abdomen","Hepatomegaly or shrunken liver, splenomegaly, ascites, caput medusae, venous hum, scrotal edema"]],
    col_widths=[W*0.25, W*0.75]
))
story += [sp(6)]

story += [h2("10.2 Acute Appendicitis"), sp(2)]
story += [
    b("Central/periumbilical colicky pain (visceral T10) → migrates to RIF (somatic)"),
    b("Signs: McBurney's tenderness, Rovsing's, guarding, Blumberg's, Psoas sign (retrocecal), Obturator sign (pelvic)"),
    sp(4),
]
story.append(make_table(
    [["Alvarado Score (MANTREL)","Points"],
     ["Migration of pain to RIF","1"],
     ["Anorexia","1"],
     ["Nausea/Vomiting","1"],
     ["Tenderness in RIF","2"],
     ["Rebound Tenderness","1"],
     ["Elevated Temperature (>37.3°C)","1"],
     ["Leukocytosis (WBC >10,000)","2"],
     ["TOTAL","10"]],
    col_widths=[W*0.7, W*0.3]
))
story += [sp(4), must("Alvarado ≥7 = surgical. 5-6 = observe. ≤4 = appendicitis unlikely."), sp(4)]
story.append(make_table(
    [["Children","Adult","Adult Female","Elderly"],
     ["Gastroenteritis","Crohn's disease","Mittelschmerz","Diverticulitis"],
     ["Mesenteric adenitis","Ureteric colic","PID","Intestinal obstruction"],
     ["Meckel's diverticulitis","Perforated peptic ulcer","Ectopic pregnancy","Colonic carcinoma"],
     ["Intussusception","Pancreatitis","Torsion of ovarian cyst","Mesenteric infarction"]],
    col_widths=[W/4, W/4, W/4, W/4]
))
story += [sp(6)]

story += [h2("10.3 Acute Pancreatitis"), sp(2)]
story += [
    b("Severe epigastric pain radiating to back ('boring' - patient leans forward for relief)"),
    b("Patient lies STILL (unlike ureteric colic where patient writhes)"),
    b("Nausea, vomiting, abdominal distension, absent bowel sounds (ileus)"),
    b("Grey Turner's sign (flanks) + Cullen's sign (periumbilical) = hemorrhagic pancreatitis"),
    b("Epigastric tenderness with guarding; no board-like rigidity (unless complicated)"),
    b("Investigation: serum amylase >3x ULN / lipase (more specific); CT (Balthazar score)"),
    sp(4),
]

story += [h2("10.4 Intestinal Obstruction"), sp(2)]
story.append(make_table(
    [["Feature","Mechanical Obstruction","Paralytic Ileus"],
     ["Pain","Colicky","Absent/dull"],
     ["Bowel sounds","High-pitched, tinkling (early); absent (late)","Absent"],
     ["Visible peristalsis","Yes (ladder pattern)","No"],
     ["Distension","Present","Present"],
     ["Cause","Adhesions, hernia, volvulus, intussusception","Post-op, peritonitis, metabolic"]],
    col_widths=[W*0.28, W*0.36, W*0.36]
))
story += [sp(6)]

story += [h2("10.5 Perforation Peritonitis"), sp(2)]
story += [
    b("Sudden onset severe pain → rapid generalized peritonitis"),
    b("Board-like rigidity (involuntary), absent bowel sounds, rebound tenderness throughout"),
    b("Obliteration of liver dullness = FREE GAS under diaphragm"),
    b("Shallow rapid breathing (minimizes diaphragm movement)"),
    b("Investigation: Erect CXR = AIR UNDER DIAPHRAGM (pneumoperitoneum)"),
    sp(4),
]

story += [h2("10.6 Abdominal Tuberculosis"), sp(2)]
story += [
    b("Insidious onset: fever, weight loss, anorexia, altered bowel habits"),
    b("Doughy abdomen = characteristic feel (like rolling dough)"),
    b("Exudative ascites (high protein, lymphocytes), umbilical/RIF mass"),
    b("Ileocecal TB = most common site; shortening of iliopsoas (hip flexion deformity)"),
    b("Diagnosis: Ascitic fluid ADA >40 IU/L, AFB, laparoscopy + biopsy"),
    sp(4),
]

story += [h2("10.7 Abdominal Aortic Aneurysm (AAA)"), sp(2)]
story += [
    b("Elderly male, hypertension, atherosclerosis"),
    b("Expansile pulsating epigastric mass (pushes fingers APART laterally)"),
    b("Width >3 cm (normal aorta <3 cm)"),
    b("Bruit may be present; +/- abdominal pain"),
    b("Ruptured AAA: sudden severe back/abdominal pain, collapse, hypotension = surgical emergency"),
    b("Screening: USG; Definitive: CT angiography"),
    sp(8), PageBreak()
]

# ===================== PART 11: DIFFERENTIAL DIAGNOSIS TABLES =====================
story += [h1("PART 11: DIFFERENTIAL DIAGNOSIS TABLES"), sp(4)]

story += [h2("11.1 Hepatomegaly DDx"), sp(2)]
story.append(make_table(
    [["Cause","Key Features"],
     ["Viral hepatitis","Tender, smooth, elevated enzymes, jaundice"],
     ["Alcoholic liver disease","History, tender (acute); nodular (cirrhosis)"],
     ["HCC","Hard, nodular, bruit, AFP elevated"],
     ["Liver metastases","Rock-hard, craggy, irregular surface"],
     ["CCF","Tender, pulsatile, elevated JVP, edema"],
     ["Amyloidosis","Massive, smooth, firm"],
     ["Malaria","Tender, smooth, tropical history"],
     ["Riedel's lobe","Normal variant - tongue-like projection from right lobe"]],
    col_widths=[W*0.38, W*0.62]
))
story += [sp(6)]

story += [h2("11.2 Splenomegaly DDx"), sp(2)]
story.append(make_table(
    [["Condition","Key Feature"],
     ["CML","Massive; WBC >100,000; Philadelphia chromosome"],
     ["Kala-azar","Massive; tropical; fever + cachexia + splenomegaly"],
     ["Myelofibrosis","Massive; tear-drop cells; leukoerythroblastic picture"],
     ["HMS (hyperreactive malarial)","Massive; tropical; elevated IgM"],
     ["Thalassemia major","Young; pallor, jaundice, deformed face"],
     ["Lymphoma","Splenomegaly + lymphadenopathy"],
     ["Portal hypertension","Firm; ascites + varices"],
     ["Infective endocarditis","Murmur, fever, Osler nodes, Janeway lesions"],
     ["Typhoid","2nd week; relative bradycardia; rose spots"]],
    col_widths=[W*0.35, W*0.65]
))
story += [sp(6)]

story += [h2("11.3 Ascites DDx"), sp(2)]
story.append(make_table(
    [["Condition","SAAG","Protein","Other Features"],
     ["Cirrhosis","≥1.1","Low","Signs of CLD"],
     ["CCF","≥1.1","Low","Elevated JVP, edema"],
     ["Peritoneal TB","<1.1","High","Lymphocytes, ADA >40"],
     ["Malignancy","<1.1","High","Cytology positive"],
     ["Pancreatitis","<1.1","High","High amylase in fluid"],
     ["Nephrotic syndrome","<1.1","Low","Proteinuria, edema"],
     ["Budd-Chiari","≥1.1","High","Hepatomegaly, no cirrhosis"]],
    col_widths=[W*0.3, W*0.15, W*0.15, W*0.4]
))
story += [sp(6)]

story += [h2("11.4 Regional Pain Differential Diagnosis"), sp(2)]
story.append(make_table(
    [["Region","Common Causes"],
     ["RHC (right hypochondrium)","Cholecystitis, biliary colic, hepatitis, liver abscess, right basal pneumonia"],
     ["Epigastric","Peptic ulcer, pancreatitis, GERD, MI (inferior), aortic dissection"],
     ["LHC (left hypochondrium)","Splenic infarct/rupture, pancreatitis (tail), gastric pathology, left pneumonia"],
     ["RIF","Appendicitis, ileocecal TB, Crohn's, ovarian pathology (R), ureteric colic, mesenteric adenitis"],
     ["LIF","Sigmoid diverticulitis, sigmoid carcinoma, ovarian pathology (L), ureteric colic, constipation"]],
    col_widths=[W*0.25, W*0.75]
))
story += [sp(8), PageBreak()]

story += [h2("11.5 Abdominal Masses by Region"), sp(2)]
story.append(make_table(
    [["Region","Common Causes"],
     ["RHC","Liver, gallbladder, hepatic flexure Ca, right kidney"],
     ["Epigastric","Stomach, pancreas, liver (left lobe), AAA, lymph nodes"],
     ["LHC","Spleen, stomach, splenic flexure, left kidney, pancreatic tail"],
     ["RIF","Appendix mass, ileocecal TB, Crohn's, cecal carcinoma, right ovarian mass"],
     ["Umbilical","Lymph nodes, transverse colon, small bowel"],
     ["LIF","Sigmoid carcinoma, diverticular mass, left ovarian mass, fecal mass"],
     ["Hypogastric","Bladder, uterus, ovarian cyst, pregnancy"],
     ["Loin","Kidney, adrenal, retroperitoneal mass"]],
    col_widths=[W*0.22, W*0.78]
))
story += [sp(8), PageBreak()]

# ===================== PART 12: OSCE =====================
story += [h1("PART 12: OSCE / CLINICAL EXAMINATION"), sp(4)]

story += [h2("12.1 Stepwise OSCE Sequence"), sp(2)]
steps = [
    "Introduce yourself, wash hands, explain procedure, ask about pain",
    "INSPECT (from sides, tangentially, from foot of bed): shape, symmetry, distension, scars, veins, umbilicus, masses, pulsations, peristalsis",
    "AUSCULTATE (in acute abdomen - do this before palpation): bowel sounds x2 min; bruits (aortic, renal, hepatic, splenic)",
    "PALPATE - Superficial: tenderness, guarding, rigidity",
    "PALPATE - Deep: organomegaly (liver, spleen, kidney, GB, aorta, bladder); masses (SITS CMTD)",
    "PERCUSS: general tympany/dullness; liver span; Traube's/Castell's; shifting dullness; fluid thrill",
    "SPECIAL SIGNS as indicated (Murphy's, Blumberg's, Rovsing's, etc.)",
    "HERNIAL ORIFICES: inguinal, femoral, umbilical (ask to cough/strain)",
    "GENITALIA / PR / PV if clinically indicated",
    "Thank patient, cover, wash hands",
    "PRESENT FINDINGS to examiner (see format below)"
]
for i, step in enumerate(steps):
    story.append(Paragraph(f"<b>{i+1}.</b> {step}", BULLET))
story += [sp(4)]

story += [h2("12.2 Presentation Format"), sp(2)]
story += [
    p("<i>\"On abdominal examination, this [age/sex] patient had [general inspection findings]. Inspection revealed [specific findings]. On palpation, the abdomen was [soft/tender/rigid], with [organomegaly: X cm below costal margin in MCL, with Y surface and Z edge, moving with respiration]. Percussion revealed [liver span, shifting dullness +/-]. Auscultation revealed [bowel sounds]. In summary, this is consistent with [diagnosis] as evidenced by [key findings].\"</i>"),
    sp(8), PageBreak()
]

# ===================== PART 13: VIVA QUESTIONS =====================
story += [h1("PART 13: VIVA QUESTIONS WITH MODEL ANSWERS"), sp(4)]

vivas = [
    ("Q1. What are the 5 Fs of abdominal distension?", "Fat, Fluid, Flatus, Feces, Fetus (+ Fibroid as 6th F)."),
    ("Q2. How do you differentiate spleen from left kidney on examination?", "Spleen: has a notch, cannot get above it, moves more with respiration, no ballottement, band of colonic resonance anterior to kidney but not spleen. Kidney: ballottable, can get above it, band of resonance anteriorly."),
    ("Q3. What is Courvoisier's law? What are its exceptions?", "\"If the GB is palpable and the patient is jaundiced, the cause is unlikely to be gallstones.\" Exceptions: double impaction of stones, Mirizzi syndrome, Ca gallbladder + CBD obstruction, mucocele + CBD stone."),
    ("Q4. What is Sister Mary Joseph's nodule?", "Hard periumbilical nodule = metastatic deposit from intra-abdominal malignancy (stomach, colon, pancreas, ovary) reaching umbilicus via round ligament or falciform ligament."),
    ("Q5. What is the mechanism of Kehr's sign?", "Blood under left diaphragm irritates diaphragmatic peritoneum (phrenic nerve C3,4,5), causing referred pain to left shoulder tip. Classic in splenic rupture."),
    ("Q6. What is Carnett's sign?", "Tenderness that persists/increases on tensing abdominal muscles (raising head) = abdominal WALL pain (positive). If it decreases = visceral/intra-abdominal cause (negative)."),
    ("Q7. What is the minimum ascites detected by each clinical sign?", "Puddle sign: 120 mL. Shifting dullness: ~1500 mL. Fluid thrill: ~3000 mL. USG: 10-20 mL."),
    ("Q8. What is Dance's sign?", "Palpable emptiness in the RIF due to cecum being drawn up into the RUQ in ileocolic intussusception. Associated with 'current jelly' (blood-stained mucus) stools in children <2 years."),
    ("Q9. What is the difference between Grey Turner's and Cullen's sign?", "Grey Turner's = bruising in FLANKS (retroperitoneal blood tracks laterally). Cullen's = PERIUMBILICAL blue discoloration (blood via falciform ligament). Both are delayed 24-48 hours. Both indicate severe hemorrhagic pancreatitis."),
    ("Q10. What obliterates liver dullness?", "Free gas (pneumoperitoneum) due to perforated hollow viscus - most commonly perforated peptic ulcer. Gas interposes between liver and diaphragm. Erect CXR is best initial investigation."),
    ("Q11. How do you grade splenomegaly?", "Grade 1: just palpable; Grade 2: up to umbilicus; Grade 3: right of umbilicus; Grade 4: massive (into pelvis)."),
    ("Q12. What is SAAG? How does it help?", "SAAG = Serum albumin minus Ascitic fluid albumin. ≥1.1 = portal hypertension (cirrhosis, CCF, Budd-Chiari). <1.1 = non-portal cause (TB, malignancy, pancreatitis, nephrotic)."),
    ("Q13. What causes a hepatic bruit?", "Hypervascularity of HCC (most specific). Also: hepatic artery aneurysm, AVM, alcoholic hepatitis."),
    ("Q14. What is Riedel's lobe?", "A normal anatomical variant - tongue-like downward projection from the right lobe of liver. Smooth, firm, moves with respiration, connected to liver. Important NOT to mistake for hepatomegaly or RIF mass."),
    ("Q15. How does appendicitis pain evolve?", "Initial central/periumbilical colicky pain (visceral T10 fibers) → pain migrates to RIF (somatic, parietal peritoneum involvement). This migration is pathognomonic."),
]

for q, a in vivas:
    story.append(Paragraph(q, VIVA_Q))
    story.append(Paragraph(a, VIVA_A))
story += [sp(8), PageBreak()]

# ===================== RAPID REVISION =====================
story += [h1("RAPID REVISION SECTION"), sp(4)]

story += [h2("50 Highest-Yield Facts"), sp(2)]
facts = [
    "Normal liver span by percussion = 8-12 cm in right MCL",
    "Spleen must be 2-3x enlarged before it becomes palpable",
    "Murphy's sign = acute CHOLECYSTITIS (not gallstones per se)",
    "Courvoisier's law: palpable GB + jaundice = malignancy, not stones",
    "Sister Mary Joseph's nodule = periumbilical metastasis from GI/ovarian cancer",
    "5 Fs of abdominal distension: Fat, Fluid, Flatus, Feces, Fetus",
    "Shifting dullness detects ascites from >1500 mL",
    "Fluid thrill detects tense ascites (>3000 mL typically)",
    "Puddle sign detects as little as 120 mL of ascites",
    "SAAG ≥1.1 = portal hypertension (cirrhosis, CCF, Budd-Chiari)",
    "SAAG <1.1 = non-portal cause (TB, malignancy, pancreatitis)",
    "Cullen's sign + Grey Turner's sign = hemorrhagic pancreatitis",
    "Grey Turner's = FLANK bruising; Cullen's = PERIUMBILICAL bruising",
    "Kehr's sign (left shoulder pain) = splenic rupture/left sub-diaphragmatic blood",
    "Dance's sign (empty RIF) = ileocolic intussusception",
    "Markle sign (heel drop pain) = peritonitis",
    "Carnett's sign positive = abdominal wall pain, NOT visceral",
    "Absent liver dullness = pneumoperitoneum (perforated viscus)",
    "Massive splenomegaly: CML > Kala-azar > Myelofibrosis > HMS > Thalassemia > Gaucher's",
    "Rovsing's sign: LIF pressure → RIF pain = appendicitis",
    "Psoas sign = retrocecal appendicitis",
    "Obturator sign = pelvic appendicitis",
    "McBurney's point = 1/3 from ASIS to umbilicus (right side)",
    "Alvarado score ≥7 = appendicectomy likely needed",
    "Current jelly stools + Dance's sign = intussusception",
    "Doughy abdomen = abdominal tuberculosis",
    "Board-like rigidity = perforated peptic ulcer (or any perforation causing peritonitis)",
    "ADA >40 IU/L in ascitic fluid = TB peritonitis",
    "Succussion splash = gastric outlet obstruction (if >3 hrs post meal)",
    "Venous hum at umbilicus = portal hypertension (Cruveilhier-Baumgarten)",
    "Caput medusae: blood flows AWAY from umbilicus",
    "IVC obstruction: lateral abdominal veins flow UPWARD (cephalad)",
    "Tanyol's sign = umbilicus displaced DOWNWARD in ascites",
    "Ovarian cyst: CENTRAL dullness, lateral resonance (opposite to ascites)",
    "Renal angle tenderness = pyelonephritis / renal colic",
    "Kidney can be ballotted; spleen cannot",
    "Spleen has a palpable notch on medial border",
    "Cannot get ABOVE the spleen; CAN get above the kidney",
    "Traube's space obliteration = splenomegaly (most common) / left pleural effusion",
    "Castell's sign: 8th-9th ICS AAL dullness = splenomegaly",
    "Normal portal pressure: 5-10 mmHg; PHT >12 mmHg (varices at >10 mmHg)",
    "Spider angiomata in SVC territory (>5 significant) = chronic liver disease",
    "Asterixis (flapping tremor) = hepatic encephalopathy",
    "Pulsatile liver = tricuspid regurgitation, CCF",
    "Hepatic bruit = HCC (most specific)",
    "Friction rub over liver = HCC, hepatic infarction, perihepatitis",
    "Friction rub over spleen = splenic infarction",
    "Riedel's lobe = normal variant (tongue-like right lobe projection)",
    "Erect CXR = best initial test for pneumoperitoneum",
    "Voluntary guarding relaxes with distraction; involuntary rigidity persists",
]
for i, f in enumerate(facts):
    story.append(Paragraph(f"<b>{i+1}.</b> {f}", BULLET))
story += [sp(8), PageBreak()]

story += [h2("20 Mnemonics"), sp(2)]
mnemonics = [
    ("5 Fs", "Fat, Fluid, Flatus, Feces, Fetus (abdominal distension)"),
    ("ILPPA", "Inspect – Listen (Auscultate) – Percuss – Palpate – Assess (examination sequence)"),
    ("SCDS VERHF", "Shape, Contour, Distension, Scars, Veins, Eversion of umbilicus, Respiration, Hernias, Fistulae (inspection)"),
    ("SITS CMTD", "Site, Involvement, Tenderness, Size, Consistency, Mobility, Transillumination, Definition of edges (mass description)"),
    ("CCGMaTh", "CML, Chronic malaria, Gaucher's, Myelofibrosis, ala-azar (Kala-azar), Thalassemia (massive splenomegaly)"),
    ("SPACED", "Spider nevi, Palmar erythema, Asterixis, Caput medusae/Clubbing, Erythema (palmar), Dupuytren's (CLD signs)"),
    ("MALT CAP", "Malignancy, Amylase, Lymphoma, TB, Chylous, Autoimmune, Peritonitis (SAAG <1.1 causes)"),
    ("MANTREL", "Migration, Anorexia, Nausea/vomiting, Tenderness (RIF), Rebound, Elevated temp, Leukocytosis (Alvarado score)"),
    ("CCGMaTh", "For massive splenomegaly - CML tops the list in India"),
    ("MATICO (RIF DDx)", "Mesenteric adenitis, Appendicitis, TB ileocecal, Intussusception, Crohn's, Ovarian pathology"),
    ("Murphy → Cholecystitis; Courvoisier → Cancer", "Direct clinical associations"),
    ("GT is Going Too far (flanks)", "Grey Turner = flank; Cullen = central/umbilical"),
    ("Kehr → Left shoulder", "K = left side; splenic rupture"),
    ("3 Ps of portal HTN", "Portosystemic collaterals, Primary hypersplenism (cytopenia), Peritoneal fluid (ascites)"),
    ("ABCDE of CLD", "Asterixis, Bilirubin (jaundice), Caput medusae/Clubbing, Dupuytren's, Erythema (palmar)"),
    ("SAFE (Ascites)", "Shifting dullness, Ascites causes, Fluid thrill, Exudate vs Transudate by SAAG"),
    ("RUQ = Right to Complain", "Cholecystitis, hepatitis, hepatic abscess, peptic ulcer, right pneumonia"),
    ("P-FLAT (Portal HTN)", "Portal HTN → Fluid, Liver changes, Abdominal veins, Thrombocytopenia"),
    ("Dance = Empty RIF", "Ileocolic intussusception, current jelly stools, children <2 years"),
    ("Obliterated liver dullness = Free Gas = Surgery!", "Perforated viscus; erect CXR; urgent laparotomy"),
]
for i, (m, d) in enumerate(mnemonics):
    story.append(Paragraph(f"<b>{i+1}. {m}:</b> {d}", BULLET))

story += [sp(8), PageBreak()]

story += [h2("Key Summary Boxes"), sp(4)]

story.append(make_table(
    [["Top 5 EXAM FAVORITES (Always Asked)"],
     ["1. Courvoisier's law (mechanism + exceptions)"],
     ["2. Shifting dullness technique (step by step)"],
     ["3. Spleen vs. kidney differentiation (all 5 points)"],
     ["4. SAAG interpretation (≥1.1 vs <1.1)"],
     ["5. Massive splenomegaly causes (CCGMaTh)"]],
    col_widths=[W], header_bg=colors.HexColor('#c0392b')
))
story += [sp(6)]

story.append(make_table(
    [["Top 5 VIVA TRAPS (Common Mistakes)"],
     ["1. 'Is Riedel's lobe pathological?' - NO, it's a NORMAL variant"],
     ["2. 'What obliterates liver dullness?' - Free gas (perforation), NOT hepatomegaly"],
     ["3. 'Is Murphy's sign positive in gallstones?' - NO - it's for CHOLECYSTITIS"],
     ["4. 'Which direction in caput medusae?' - AWAY from umbilicus"],
     ["5. 'Minimum ascites for shifting dullness?' - 1500 mL (NOT 500 mL)"]],
    col_widths=[W], header_bg=colors.HexColor('#27ae60')
))
story += [sp(6)]

story.append(make_table(
    [["Clinical Approach: Abdomen Distended + Fluid Signs"],
     ["Step 1: Confirm ascites (shifting dullness / fluid thrill)"],
     ["Step 2: SAAG (serum albumin - ascitic albumin)"],
     ["Step 3: ≥1.1 → Look for cirrhosis, CCF, Budd-Chiari"],
     ["Step 4: <1.1 → Look for TB (ADA), malignancy (cytology), pancreatitis (amylase)"],
     ["Step 5: Clinical features to narrow diagnosis"]],
    col_widths=[W], header_bg=colors.HexColor('#2c5282')
))
story += [sp(6)]

story.append(make_table(
    [["Peritoneal Signs - Clinical Differentiation"],
     ["Perforated PU: board-like rigidity + absent liver dullness + absent bowel sounds"],
     ["Appendicitis: RIF tenderness + guarding + Rovsing's + Alvarado ≥7"],
     ["Pancreatitis: epigastric pain + ileus + Grey Turner's/Cullen's + amylase/lipase"],
     ["Cholecystitis: RUQ pain + Murphy's + guarding + fever"],
     ["Ruptured ectopic: Cullen's + Kehr's + Blumberg's + shock in young female"]],
    col_widths=[W], header_bg=colors.HexColor('#8e44ad')
))

story += [sp(12)]
story.append(HRFlowable(width="100%", thickness=1, color=colors.HexColor('#1a3a5c')))
story += [sp(6)]
story.append(Paragraph("End of Notes | Orris Medical AI | July 2026", CAPTION))
story.append(Paragraph("Sources: S Das Manual of Clinical Surgery 13e · Sleisenger &amp; Fordtran's GI &amp; Liver Disease · Bailey &amp; Love's Surgery 28e · Goldman-Cecil Medicine · Campbell-Walsh Urology · Yamada's Textbook of Gastroenterology 7e", CAPTION))

# BUILD PDF
doc.build(story)
print(f"PDF created: {OUTPUT}")
Running Command

cd /home/daytona/workspace/abdominal-exam && python3 generate_pdf.py 2>&1

Running Command

ls -lh /home/daytona/workspace/abdominal-exam/Abdominal_Examination_Notes.pdf

Your PDF is ready. Here is the download link:

Abdominal Examination Notes

PDF Document · PDF


What's inside the PDF:
SectionContent
Part 1Introduction, surface anatomy, 9 regions, 4 quadrants, abdominal planes, surface markings
Part 2Preparation, patient positioning, examination sequence (ILPPA)
Part 3Inspection - all findings with tables (scars, veins, umbilicus, skin signs, peristalsis)
Part 4Palpation - liver, spleen, kidney, gallbladder, aorta, masses; grading tables
Part 5Percussion - ascites signs, liver span, Traube's space, Castell's sign, succussion splash
Part 6Auscultation - bowel sounds, vascular sounds
Part 7Ascites - SAAG classification, clinical signs, ascites vs. ovarian cyst
Part 8All 15 special clinical signs in one master table (Murphy's, Cullen's, Grey Turner's, Dance's, etc.)
Part 9Hernias - inguinal (direct vs indirect), femoral, umbilical, incisional
Part 107 clinical cases - CLD, appendicitis (Alvarado score), pancreatitis, obstruction, peritonitis, TB, AAA
Part 115 DDx tables - hepatomegaly, splenomegaly, ascites, regional pain, masses by region
Part 12OSCE sequence + presentation format
Part 1315 viva questions with model answers
Rapid Revision50 highest-yield facts · 20 mnemonics · 4 summary boxes (exam favorites, viva traps, ascites approach, peritoneal signs)
The PDF uses color-coded sections (blue headings, yellow must-knows, green clinical pearls, blue mnemonics, red examiner tips) for quick revision.
This is a shared conversation. Sign in to Orris to start your own chat.