Can you provide high yielding points notes for gross Anatomy prelims topic .. ( snells clinical anatomy)
1. Dissection of anterior abdominal wall — Inguinal canal; Inguinal rings; Spermatic cord; Scrotum 2. Abdominal cavity — Embryology; General arrangement; Peritoneum 3. Opening up of the abdominal cavity — Examination of general arrangement of the GIT; Celiac artery; Liver; Pancreas; Spleen; Gallbladder; Mesenteric artery; Jejunum; Ileum; Large intestine 4. Abdominal cavity — Esophagus; Stomach; Small intestine (SI); Large intestine (LI) 5. Abdominal cavity — Accessory organs of GIT: Liver; Gallbladder; Pancreas; Spleen 6. Dissection of inferior mesenteric artery (IMA) — Large intestine; Kidneys; Ureters; Suprarenal glands; Lumbar plexus; Posterior abdominal wall; Aorta; Inferior vena cava 7. Abdominal cavity — Retroperitoneal space; Kidneys and ureters; Suprarenal glands; Vessels of posterior abdominal wall; Nerves of posterior abdominal wall 8. Imaging of abdomen 9. Ultrasonography of abdomen and pelvis — Study of pelvic bones; Dissection of pelvic wall; Dissection of pelvic cavity and perineum; Gluteal region; Splitting up of the pelvic bone 10. Pelvic wall 11. Male pelvis 12. Dissection of pelvic wall — Study of pelvic bones; Dissection of pelvic cavity and perineum; Gluteal region; Splitting up of the pelvic bone 13. Female pelvic wall & cavity
wc -l /tmp/workspace/attachments/fd7289bd-2aef-4a13-988f-174ffb38b3a2/Semester_2_Gross_and_Neuro_Anatomy_Text.pdf 2>/dev/null; ls -lh /tmp/workspace/attachments/fd7289bd-2aef-4a13-988f-174ffb38b3a2/
find /tmp/workspace -name "*.pdf" 2>/dev/null | head -20
Mnemonic for muscles: "SEITE" - Skin, External oblique, Internal oblique, Transversus, Extra-peritoneal
| Wall | Structure |
|---|---|
| Anterior | Aponeurosis of external oblique (whole length) + internal oblique laterally |
| Posterior | Transversalis fascia (whole length) + conjoint tendon medially |
| Roof | Arching fibers of internal oblique + transversus abdominis |
| Floor | Inguinal ligament (medial half) + lacunar ligament medially |
Clinically important: Indirect hernia exits through deep ring (lateral to inferior epigastric); Direct hernia bulges through Hesselbach's triangle (medial to inferior epigastric) - "MD - Medial = Direct"
Note: Testicular lymphatics drain to para-aortic nodes (L2 level) because testes develop retroperitoneally
| Feature | Jejunum | Ileum |
|---|---|---|
| Location | Upper left abdomen | Lower right abdomen |
| Wall thickness | Thicker | Thinner |
| Plicae circulares (valvulae conniventes) | Prominent | Few/absent |
| Vasa recta | Long | Short |
| Arcades | 1-2 tiers | 4-5 tiers (complex) |
| Peyer's patches | Few | Many (terminal ileum) |
| Color | Deeper red | Paler pink |
| Fat in mesentery | Less | More |
| Branch | Level |
|---|---|
| Inferior phrenic | T12 |
| Celiac trunk | T12/L1 |
| SMA | L1 |
| Middle suprarenal | L1 |
| Renal arteries | L1-L2 |
| Gonadal (testicular/ovarian) | L2 |
| IMA | L3 |
| Common iliac | L4 |
| Median sacral | L4 |
| Feature | False Pelvis | True Pelvis |
|---|---|---|
| Location | Above pelvic inlet | Below pelvic inlet |
| Bounded by | Iliac fossa | Pubis, ischium, sacrum |
| Content | Lower abdominal organs | Pelvic organs |
| Muscle | Origin | Insertion | Nerve | Action |
|---|---|---|---|---|
| Piriformis | Sacrum | GT of femur | S1, S2 | Lateral rotation |
| Obturator internus | Obturator membrane | GT (medial surface) | Nerve to OI (L5, S1) | Lateral rotation |
| Levator ani | Pubis, tendinous arch, ischial spine | Perineal body, coccyx, anococcygeal body | S4 (mainly) + pudendal | Pelvic floor support |
| Coccygeus | Ischial spine | Sacrum/coccyx | S4, S5 | Supports pelvic floor |
| Condition | Anatomical Basis | Key Point |
|---|---|---|
| Indirect inguinal hernia | Patent processus vaginalis | Lateral to inferior epigastric; congenital |
| Direct inguinal hernia | Weak posterior wall | Medial to inferior epigastric; acquired |
| Femoral hernia | Below inguinal ligament in femoral canal | More common in women (wider pelvis) |
| Appendicitis | McBurney's point | Base of appendix = confluence of taenia |
| Splenomegaly | Left hypochondrium mass | Notch + can't get above + diagonal movement |
| Portal hypertension | Porto-systemic anastomoses | Varices at 4 sites |
| Ureteric colic | 3 narrowings | PUJ, pelvic brim, VUJ |
| Prostate cancer spread | Batson's venous plexus | Osteosclerotic spinal metastases |
| Ureteric injury in hysterectomy | "Water under bridge" | Ureter crossed by uterine artery |
| Splenic flexure ischemia | Watershed zone SMA/IMA | Griffith's point |
Sources: Gray's Anatomy for Students (confirmed from library); Snell's Clinical Anatomy principles; Bailey & Love's Surgery (inguinal canal anatomy)
Excellent can you please provide this in pdf format with diagrams Cadaver sections
inguinal canal spermatic cord anatomy diagram
peritoneum abdominal cavity arrangement diagram
celiac artery branches liver stomach spleen

This clinical photograph displays a gross macrospecimen dissection of the upper abdominal viscera from a 63-year-old female, highlighting the celiac trunk (1) and its vascular branches. The central celiac trunk is shown giving rise to the left gastric artery (4) ascending toward the lesser curvature of the stomach (12), the common hepatic artery (2) coursing toward the caudate lobe of the liver (11), and the splenic artery (3) traveling toward the spleen (9). Notable anatomical variations include an accessory left gastric artery (5) and posterior gastric arteries (6) originating from the splenic artery. The splenic vein (8) is visible running inferior to the splenic artery. The pancreas (10) is situated inferior to the splenic vessels, demonstrating its lobulated texture. This image serves as a detailed anatomical reference for the trifurcation of the celiac trunk, the vascular supply to the foregut organs (stomach, spleen, liver, pancreas), and common arterial variations relevant to surgical oncology and gastroenterology training.

**Imaging Modality:** Axial computed tomography (CT) scan of the upper abdomen with intravenous contrast.

This diagnostic image is a selective digital subtraction angiography (DSA) of the abdominal celiac trunk, demonstrating normal vascular anatomy. The angiography utilizes radio-opaque contrast to highlight the trifurcation of the celiac artery. The three primary branches are clearly identified and labeled: the left gastric artery, which ascends toward the lesser curvature of the stomach; the splenic artery, which follows a characteristic tortuous course toward the spleen on the right side of the image; and the common hepatic artery. Further distal branching is visible, where the common hepatic artery divides into the proper hepatic artery and the gastroduodenal artery. The gastroduodenal artery is seen descending and giving rise to the right gastroepiploic artery. A diagnostic catheter is visible in the center of the frame, having been navigated into the trunk. This image serves as a high-quality anatomical reference for interventional radiology and vascular surgery education, illustrating the key arterial supply to the foregut organs including the liver, stomach, and spleen.
kidney ureter posterior abdominal wall cadaver dissection

This clinical photograph displays a gross anatomical dissection of the posterior abdominal wall in a human cadaver, highlighting a rare anatomical variant of the left testicular vein (LTV). The LTV is seen ascending retroperitoneally toward the left renal vein (LRV). Unusually, it bifurcates (BF) into two distinct branches before terminating into the LRV. An oblique communication (OC) is visible between these two branches. Additionally, a slender communicating vein (CV) is observed passing anterior to the LRV to drain directly into the left suprarenal vein (LSRV). Key landmarks shown include the abdominal aorta (AA), inferior vena cava (IVC), left kidney (LK), and pancreas (PAN). The left testicular artery (LTA) and left ureter (LU) are also identified in their typical relative spatial positions. This specimen illustrates complex venous variations that are clinically significant for vascular, urological, and retroperitoneal surgical procedures, particularly regarding the drainage pathways of the pampiniform plexus and suprarenal systems.

This clinical photograph displays a surgical dissection of the posterior abdominal wall and pelvic vasculature in a male cadaver, illustrating a variant of May-Thurner Syndrome (MTS). The visual focuses on the relationship between the aortic bifurcation and the inferior vena cava (IVC). A prominent right common iliac artery is shown crossing anteriorly over the distal segment of the IVC and the left common iliac vein. A teal outline highlights a pre-stenotic dilation of the inferior vena cava, indicating venous stasis caused by arterial compression. The right common iliac artery exhibits surface dimpling, characteristic of atherosclerotic plaque. Anatomical landmarks include the right kidney, right ureter, external iliac artery, and internal iliac artery. This image serves as an educational demonstration of vascular compression syndromes and anatomical variations in pelvic venous outflow. It is suitable for advanced medical students and surgical residents studying retroperitoneal anatomy and vascular pathology.
liver gallbladder bile duct anatomy

This intraoperative clinical photograph captures the hepatobiliary anatomy during a laparoscopic procedure. The image highlights a rare case of gallbladder agenesis, demonstrated by the conspicuous absence of the gallbladder in its expected location within the gallbladder fossa. The liver is visible in the superior aspect of the frame, exhibiting a smooth, dark reddish-brown surface with a characteristic glistening reflection. An arrow identifies the common bile duct (CBD), which appears as a vertical tubular structure in the hepatoduodenal ligament. Situated inferiorly is the duodenum, presenting as a larger, pinkish-red tubular organ with visible surface vasculature. The image serves as an educational reference for hepatobiliary surgical anatomy and the visual diagnosis of congenital gallbladder absence. Key structures labeled include the liver, common bile duct (CBD), and duodenum, emphasizing their spatial relationships when the gallbladder is naturally absent.

This diagnostic image is a Magnetic Resonance Cholangiopancreatography (MRCP) projection showing the anatomy of the biliary tree and gallbladder. The image highlights a significant anatomical variation involving an accessory liver lobe. Multiple white arrows point to an accessory bile duct that originates from the ectopic hepatic tissue and drains directly into the common hepatic duct. Additionally, a white arrowhead indicates a separate, tortuous cystic duct that follows an atypical path before opening into the primary bile duct. The gallbladder is visualized as a hyperintense, elongated structure of normal morphology. This clinical image is significant for demonstrating complex biliary branching patterns often associated with accessory liver lobes, which is critical for surgical planning to avoid iatrogenic injury. The educational focus is on hepatobiliary anatomy, congenital variants, and radiological interpretation of MRCP in the context of suspected accessory hepatic tissue.
stomach duodenum jejunum ileum small intestine anatomy

Educational medical composite illustrating gastrointestinal anatomy and capsule transit through the gut. Panel A is an anatomical diagram of the human torso showing the stomach partitioned into the fundus, body, and antrum, and the small intestine divided into the duodenum, jejunum, and ileum. Panels B and C are stacked bar charts showing the statistical distribution of capsule location across 10 participants over 60 minutes, shifting from the stomach (proximal) to the ileum (distal). Panel D displays clinical diagnostic images consisting of serial abdominal X-rays from three participants. These radiographic images track a radiopaque capsule's transit over 60 minutes in the supine position. The top row illustrates a slow transit from the fundus to the duodenum; the middle row shows movement from the antrum to the jejunum; and the bottom row demonstrates rapid transit reaching the ileum by 60 minutes. The content illustrates gastroduodenal motility and the use of ingestible capsules for studying gastrointestinal physiology and interoception.

This diagnostic image is a contrast-enhanced fluoroscopic radiograph (barium or gastrografin swallow) of the upper alimentary tract. The study demonstrates a massive diaphragmatic hernia, characterized by the abnormal displacement of the stomach into the thoracic cavity. The esophagus is visible as a narrow, contrast-filled tube descending towards the herniated stomach, which appears as a large, globular, opacified structure located above the expected level of the diaphragm in the left hemithorax. An air-fluid level is visible within the stomach, indicating the presence of both gas and liquid contrast. Distal to the stomach, the pylorus and duodenum can be traced back through the diaphragmatic hiatus toward the abdominal cavity, where contrast-filled loops of small intestine (jejunum and ileum) are visible with their characteristic mucosal patterns. This image illustrates a severe disruption of normal thoracoabdominal anatomy, typical of a large hiatal or traumatic diaphragmatic hernia requiring surgical intervention.
inguinal hernia direct indirect anatomy cadaver
mkdir -p /tmp/workspace/anatomy-prelims && ls /tmp/workspace/anatomy-prelims/
cat << 'PYEOF' > /tmp/workspace/anatomy-prelims/build_pdf.py import urllib.request import os, io, textwrap 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, Image as RLImage, PageBreak, HRFlowable, KeepTogether) from reportlab.platypus.tableofcontents import TableOfContents from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY from PIL import Image as PILImage # ── helpers ────────────────────────────────────────────────────────────────── OUT_DIR = "/tmp/workspace/anatomy-prelims" IMG_DIR = os.path.join(OUT_DIR, "img_cache") os.makedirs(IMG_DIR, exist_ok=True) def fetch_image(url, name): path = os.path.join(IMG_DIR, name) if not os.path.exists(path): try: req = urllib.request.Request(url, headers={"User-Agent": "Mozilla/5.0"}) with urllib.request.urlopen(req, timeout=15) as r: data = r.read() with open(path, "wb") as f: f.write(data) except Exception as e: print(f" WARNING: could not fetch {url}: {e}") return None return path if os.path.exists(path) else None def make_image_flowable(url, name, width_cm=14, caption=""): path = fetch_image(url, name) if not path: return [] try: img = PILImage.open(path) iw, ih = img.size target_w = width_cm * cm target_h = target_w * ih / iw if target_h > 10 * cm: # cap height target_h = 10 * cm target_w = target_h * iw / ih items = [RLImage(path, width=target_w, height=target_h)] if caption: items.append(Paragraph(f"<i>{caption}</i>", caption_style)) items.append(Spacer(1, 0.3*cm)) return items except Exception as e: print(f" WARNING: image render failed for {path}: {e}") return [] # ── styles ──────────────────────────────────────────────────────────────────── styles = getSampleStyleSheet() title_style = ParagraphStyle("TitleMain", parent=styles["Title"], fontSize=20, textColor=colors.HexColor("#1a3a5c"), spaceAfter=6, alignment=TA_CENTER) subtitle_style = ParagraphStyle("Subtitle", parent=styles["Normal"], fontSize=11, textColor=colors.HexColor("#5a7fa0"), spaceAfter=16, alignment=TA_CENTER, fontName="Helvetica-Oblique") h1_style = ParagraphStyle("H1", parent=styles["Heading1"], fontSize=14, textColor=colors.white, backColor=colors.HexColor("#1a3a5c"), spaceAfter=6, spaceBefore=12, leftIndent=-6, rightIndent=-6, borderPad=4, leading=18) h2_style = ParagraphStyle("H2", parent=styles["Heading2"], fontSize=12, textColor=colors.HexColor("#1a3a5c"), spaceAfter=4, spaceBefore=8, borderPad=2, borderColor=colors.HexColor("#1a3a5c"), borderWidth=0) h3_style = ParagraphStyle("H3", parent=styles["Heading3"], fontSize=10, textColor=colors.HexColor("#2e6da4"), spaceAfter=2, spaceBefore=6, fontName="Helvetica-Bold") body_style = ParagraphStyle("Body", parent=styles["Normal"], fontSize=9, leading=13, spaceAfter=3, alignment=TA_JUSTIFY) bullet_style = ParagraphStyle("Bullet", parent=styles["Normal"], fontSize=9, leading=13, spaceAfter=2, leftIndent=14, bulletIndent=4) note_style = ParagraphStyle("Note", parent=styles["Normal"], fontSize=8.5, leading=12, backColor=colors.HexColor("#fffbe6"), borderColor=colors.HexColor("#f0c040"), borderWidth=0.5, borderPad=5, textColor=colors.HexColor("#5a4000"), spaceAfter=6, spaceBefore=4) caption_style = ParagraphStyle("Caption", parent=styles["Normal"], fontSize=8, textColor=colors.HexColor("#555555"), alignment=TA_CENTER, spaceAfter=4, fontName="Helvetica-Oblique") clinical_style = ParagraphStyle("Clinical", parent=styles["Normal"], fontSize=9, leading=13, backColor=colors.HexColor("#e8f4fd"), borderColor=colors.HexColor("#2e6da4"), borderWidth=0.5, borderPad=5, spaceAfter=6, spaceBefore=4) def B(text): return f"<b>{text}</b>" def I(text): return f"<i>{text}</i>" def bi(t): return f"<b><i>{t}</i></b>" def bullet(text): return Paragraph(f"• {text}", bullet_style) def subbullet(text): s = ParagraphStyle("Sub", parent=bullet_style, leftIndent=26) return Paragraph(f"- {text}", s) def clinical_box(text): return Paragraph(f"🩺 {text}", clinical_style) def note_box(text): return Paragraph(f"📝 {text}", note_style) def make_table(headers, rows, col_widths=None): data = [headers] + rows style = TableStyle([ ("BACKGROUND", (0,0), (-1,0), colors.HexColor("#1a3a5c")), ("TEXTCOLOR", (0,0), (-1,0), colors.white), ("FONTNAME", (0,0), (-1,0), "Helvetica-Bold"), ("FONTSIZE", (0,0), (-1,0), 9), ("FONTSIZE", (0,1), (-1,-1), 8.5), ("ROWBACKGROUNDS", (0,1), (-1,-1), [colors.white, colors.HexColor("#eaf3fc")]), ("GRID", (0,0), (-1,-1), 0.4, colors.HexColor("#b0c8e0")), ("VALIGN", (0,0), (-1,-1), "MIDDLE"), ("LEFTPADDING",(0,0), (-1,-1), 5), ("RIGHTPADDING",(0,0),(-1,-1), 5), ("TOPPADDING", (0,0), (-1,-1), 4), ("BOTTOMPADDING",(0,0),(-1,-1), 4), ("WORDWRAP", (0,0), (-1,-1), True), ]) t = Table(data, colWidths=col_widths, repeatRows=1) t.setStyle(style) return t # ── image URLs ──────────────────────────────────────────────────────────────── IMG = { "celiac_cadaver": "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_37028f104f921b85b92e8c0ca3f3f19f584e761ada416be00b96009ed0c6f2cb.jpg", "celiac_angio": "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_0eacc93819dd9bc3dec4bc9f2dcdf3360b2bd8d3c233e8d060e3480774bbce7c.jpg", "retro_cadaver": "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_41f1b7af601c6790534bbad41bf78cb27c8b6496e064f19352e9365cdc7dc5f6.jpg", "iliac_cadaver": "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_3c02e920d92f0d2d449bbd2d9c87163f30f8578e6af7ee2390da9dda5ec346e7.jpg", "bile_duct": "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_576b36b16501d41b2255942c82cdadcb4d5bc765a72d38b2805a5e87f94c3786.jpg", "mrcp": "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_373efe6dfa404aed83ac0e9444928bff565847ed7d4210ab1c1ea75e74c84cb2.jpg", "pelvis_ct": "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_6db16901ba204e2fe4ed5b0c4b2663e953e344a76948d9d6d32ef41d92013cf6.jpg", "bladder_mri": "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_0fe7390b875aa43fb9aec52a1970e42750d044d6d3265d22970b2ada8295c9f8.jpg", "gi_transit": "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_591dd21f5292cec45f8e5962ed5f80097698cb0de5c9ba10188ba7af5ef66f0e.jpg", # textbook diagrams from Gray's "inguinal_diag": "https://cdn.orris.care/cdss_images/98ec6b7670bd9a2245a55c4128de139ea1e463497ff5c2e133ec9fb0659c7f5a.png", "deep_ring": "https://cdn.orris.care/cdss_images/a8be295d6de2a6f38485d1031bc156ac702af258bdad6e70e294888d295c83d1.png", "peritoneum_wall":"https://cdn.orris.care/cdss_images/0a48dd7bccab1d2b9f77eeb7c99fb63c4a877c9d9488754fc0ecdc117fbc7532.png", "extra_fascia": "https://cdn.orris.care/cdss_images/b7f95eb258a0760d0aa47a9ebcd7df42875cff6a4406bb1f19de83fbfca20ab0.png", "abdo_innervation":"https://cdn.orris.care/cdss_images/bef0423d931da7ba1598b1763e7920c78e2b598fdceca994627b1038c2d95656.png", "superficial_ring":"https://cdn.orris.care/cdss_images/04d2f79a4673a1735a21fcc12d047f985c84b8a7ddb2c811adc16c30360693ba.png", } # ── pre-fetch all images ────────────────────────────────────────────────────── print("Pre-fetching images...") for k, url in IMG.items(): r = fetch_image(url, f"{k}.img") print(f" {k}: {'OK' if r else 'FAILED'}") print("Building PDF...") # ── document ────────────────────────────────────────────────────────────────── doc = SimpleDocTemplate( os.path.join(OUT_DIR, "Gross_Anatomy_Prelims_Notes.pdf"), pagesize=A4, leftMargin=2*cm, rightMargin=2*cm, topMargin=2*cm, bottomMargin=2*cm, title="Gross Anatomy Prelims High-Yield Notes", author="Orris Medical AI" ) story = [] # ── COVER PAGE ──────────────────────────────────────────────────────────────── story.append(Spacer(1, 2*cm)) story.append(Paragraph("GROSS ANATOMY", title_style)) story.append(Paragraph("Prelims High-Yield Notes", title_style)) story.append(Spacer(1, 0.4*cm)) story.append(Paragraph("Abdomen · Pelvis · Perineum", subtitle_style)) story.append(Paragraph("Based on Snell's Clinical Anatomy | Gray's Anatomy for Students", subtitle_style)) story.append(HRFlowable(width="100%", thickness=2, color=colors.HexColor("#1a3a5c"))) story.append(Spacer(1, 0.5*cm)) # cover cadaver image cover_items = make_image_flowable(IMG["celiac_cadaver"], "celiac_cadaver.img", 13, "Cadaver dissection - Celiac trunk and its branches (1=celiac trunk, 2=common hepatic, 3=splenic, 4=left gastric, 9=spleen, 10=pancreas, 11=liver)") for i in cover_items: story.append(i) story.append(Spacer(1, 0.5*cm)) story.append(Paragraph("Topics Covered:", h2_style)) for t in ["1. Anterior Abdominal Wall — Inguinal Canal, Rings, Spermatic Cord, Scrotum", "2. Abdominal Cavity — Embryology, General Arrangement, Peritoneum", "3. GIT Arrangement — Celiac A., Liver, Pancreas, Spleen, Gallbladder, SMA", "4. Esophagus, Stomach, Small Intestine, Large Intestine", "5. Accessory GIT Organs — Liver, Gallbladder, Pancreas, Spleen", "6-7. Retroperitoneal Space — Kidneys, Ureters, Suprarenal, Posterior Wall, Aorta, IVC", "8. Imaging of the Abdomen", "9-12. Pelvis — Pelvic Bones, Pelvic Wall, Gluteal Region", "10-11. Male Pelvis", "13. Female Pelvic Wall & Cavity"]: story.append(bullet(t)) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPIC 1 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPIC 1 — Anterior Abdominal Wall · Inguinal Canal · Spermatic Cord · Scrotum", h1_style)) story.append(Spacer(1, 0.2*cm)) story.append(Paragraph("Layers of the Anterior Abdominal Wall (superficial → deep)", h2_style)) layers = [["Layer", "Key Notes"], ["1. Skin", ""], ["2. Superficial Fascia", "Camper's (fatty) + Scarpa's (membranous)"], ["3. External Oblique", "Aponeurosis forms superficial ring & inguinal ligament"], ["4. Internal Oblique", "Forms conjoint tendon with transversus; contributes cremaster"], ["5. Transversus Abdominis", "Deepest muscle; contributes conjoint tendon"], ["6. Transversalis Fascia", "Forms internal spermatic fascia at deep ring"], ["7. Extraperitoneal Fat", "Preperitoneal & retroperitoneal subdivisions"], ["8. Parietal Peritoneum", "Somatic innervation → well-localized pain"]] story.append(make_table(layers[0], layers[1:], [4*cm, 12*cm])) story.append(Spacer(1, 0.3*cm)) # Textbook diagrams story += make_image_flowable(IMG["peritoneum_wall"], "peritoneum_wall.img", 12, "Fig. — Transverse section showing layers of the abdominal wall (Gray's Anatomy for Students)") story += make_image_flowable(IMG["abdo_innervation"], "abdo_innervation.img", 12, "Fig. — Innervation of the anterolateral abdominal wall (T7-T12, L1)") story += make_image_flowable(IMG["extra_fascia"], "extra_fascia.img", 10, "Fig. — Subdivisions of the Extraperitoneal Fascia") story.append(Paragraph("Inguinal Canal", h2_style)) story.append(Paragraph( "Oblique passage <b>~4 cm long</b>, running from the deep ring supero-laterally to the superficial ring infero-medially, " "parallel to and just above the inguinal ligament.", body_style)) story.append(Spacer(1,0.15*cm)) walls = [["Wall", "Structure"], ["Anterior", "Aponeurosis of external oblique (whole length) + internal oblique (laterally)"], ["Posterior", "Transversalis fascia (whole length) + conjoint tendon (medially)"], ["Roof", "Arching fibers of internal oblique + transversus abdominis"], ["Floor", "Inguinal ligament (medial half) + lacunar ligament (medially)"]] story.append(make_table(walls[0], walls[1:], [3*cm, 13*cm])) story.append(Spacer(1,0.3*cm)) story += make_image_flowable(IMG["inguinal_diag"], "inguinal_diag.img", 13, "Fig. 4.42 — Inguinal Canal (Gray's Anatomy for Students)") story.append(Paragraph("Inguinal Rings", h2_style)) story.append(Paragraph(B("Deep (Internal) Inguinal Ring:"), body_style)) for t in ["Opening in transversalis fascia (not a true hole — a tubular evagination)", "Located midway between ASIS and pubic symphysis, just above inguinal ligament", "Lateral to inferior epigastric vessels", "Gives rise to the internal spermatic fascia"]: story.append(bullet(t)) story += make_image_flowable(IMG["deep_ring"], "deep_ring.img", 12, "Fig. 4.43 — Deep Inguinal Ring and Transversalis Fascia (Gray's Anatomy for Students)") story.append(Paragraph(B("Superficial (External) Inguinal Ring:"), body_style)) for t in ["Triangular defect in aponeurosis of external oblique", "Located superior to pubic tubercle", "Gives rise to external spermatic fascia"]: story.append(bullet(t)) story += make_image_flowable(IMG["superficial_ring"], "superficial_ring.img", 12, "Fig. 4.44 — Superficial Inguinal Ring and Aponeurosis of External Oblique") story.append(clinical_box( "CLINICAL: Hesselbach's Triangle = lateral border of rectus + inferior epigastric vessels + inguinal ligament. " "Direct hernia = medial to inferior epigastric (through Hesselbach's). " "Indirect hernia = lateral to inferior epigastric (through deep ring). Mnemonic: MD = Medial Direct")) story.append(Paragraph("Spermatic Cord — Contents", h2_style)) cord_data = [["Category", "Structures"], ["3 Arteries", "Testicular (from aorta L2) · Cremasteric (from inf. epigastric) · Artery to vas (from inf. vesical)"], ["3 Nerves", "Genital br. of genitofemoral (cremaster) · Sympathetic fibers · Ilioinguinal (outside cord in canal)"], ["3 Others", "Vas deferens · Pampiniform plexus · Lymphatics"]] story.append(make_table(cord_data[0], cord_data[1:], [4*cm, 12*cm])) story.append(Spacer(1,0.2*cm)) story.append(Paragraph(B("3 Fascial Coverings (inside → out):"), body_style)) for t in ["Internal spermatic fascia ← transversalis fascia (at deep ring)", "Cremasteric fascia & muscle ← internal oblique", "External spermatic fascia ← external oblique aponeurosis (at superficial ring)"]: story.append(bullet(t)) story.append(Paragraph("Scrotum", h2_style)) for t in ["Dartos muscle (smooth) → wrinkling in cold; no fat in dartos layer", "Blood: anterior scrotal a. (femoral) + posterior scrotal a. (perineal a.)", "Lymphatics → INGUINAL nodes (not iliac)", "Testicular lymphatics → PARA-AORTIC nodes at L2 (embryological origin)"]: story.append(bullet(t)) story.append(note_box("Exam tip: Testicular vs scrotal lymphatics differ — a common MCQ!")) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPIC 2 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPIC 2 — Abdominal Cavity: Embryology · General Arrangement · Peritoneum", h1_style)) story.append(Spacer(1, 0.2*cm)) story.append(Paragraph("Gut Embryology — High-Yield", h2_style)) for t in ["4th week: Gut tube forms from endoderm (foregut / midgut / hindgut)", "Foregut → celiac artery supply | Midgut → SMA | Hindgut → IMA", "Week 6: Physiological herniation into umbilical cord; returns week 10", "Malrotation → volvulus; failure of return → omphalocele", "Gastroschisis: right of umbilicus, no covering membrane", "Omphalocele: covered by peritoneum/amniotic membrane", "Meckel's Diverticulum: Rule of 2's — 2%, 2 inches, 2 feet from ICV, 2 types of ectopic mucosa (gastric/pancreatic)"]: story.append(bullet(t)) story.append(Paragraph("Peritoneum", h2_style)) peritoneum_data = [["Type", "Location", "Innervation", "Pain Quality"], ["Parietal", "Lines abdominal walls", "Somatic (spinal nerves)", "Sharp, well-localized"], ["Visceral", "Covers organs", "Autonomic (vagal/sympathetic)", "Dull, poorly localized"]] story.append(make_table(peritoneum_data[0], peritoneum_data[1:], [3*cm, 5*cm, 5*cm, 4*cm])) story.append(Spacer(1,0.3*cm)) story.append(Paragraph(B("Key Peritoneal Structures:"), body_style)) for t in ["Greater omentum: from greater curvature of stomach; 'policeman of abdomen' — walls off infection", "Lesser omentum: liver to lesser curvature; free edge = hepatoduodenal ligament (portal triad)", "Epiploic foramen (of Winslow): entrance to lesser sac; anterior = hepatoduodenal lig, posterior = IVC, superior = caudate lobe, inferior = duodenum D1", "Lesser sac (omental bursa): posterior to stomach/lesser omentum"]: story.append(bullet(t)) story.append(Paragraph("Clinically Important Peritoneal Recesses", h3_style)) recesses = [["Recess", "Location", "Clinical Significance"], ["Morrison's pouch (hepatorenal)", "Between liver and right kidney", "Most dependent in supine; fluid collects here first"], ["Pouch of Douglas (rectouterine)", "Between uterus and rectum (female)", "Most dependent in erect female; ectopic pregnancy / pelvic abscess"], ["Rectovesical pouch", "Rectum–bladder (male)", "Fluid detection in male pelvis"], ["Paracolic gutters", "Lateral to ascending/descending colon", "Route of fluid spread between recesses"]] story.append(make_table(recesses[0], recesses[1:], [4.5*cm, 5*cm, 7*cm])) story.append(Spacer(1,0.3*cm)) story.append(Paragraph("Retroperitoneal Structures — Mnemonic: SAD PUCKER", h3_style)) for t in ["S — Suprarenal glands", "A — Aorta and IVC", "D — Duodenum (2nd–4th parts)", "P — Pancreas (except tail)", "U — Ureters", "C — Colon (ascending and descending)", "K — Kidneys", "E — Esophagus (lower)", "R — Rectum (lower 2/3)"]: story.append(bullet(t)) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPIC 3 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPIC 3 — GIT Arrangement: Celiac A. · SMA · IMA · Liver · Pancreas · Spleen · Gallbladder", h1_style)) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Celiac Trunk", h2_style)) story.append(Paragraph("Arises from aorta at <b>T12/L1</b> (just below aortic hiatus). Supplies foregut.", body_style)) story += make_image_flowable(IMG["celiac_cadaver"], "celiac_cadaver.img", 14, "Cadaver dissection — Celiac trunk (1) with: common hepatic artery (2), splenic artery (3), left gastric artery (4). Pancreas (10), liver (11), spleen (9) visible.") story += make_image_flowable(IMG["celiac_angio"], "celiac_angio.img", 14, "DSA angiography — Normal celiac trunk trifurcation. Left gastric, splenic, and common hepatic arteries identified. Gastroduodenal artery gives right gastroepiploic artery.") celiac_branches = [["Branch", "Origin", "Supply"], ["Left gastric", "Celiac trunk (smallest)", "Lower esophagus + lesser curvature"], ["Splenic", "Celiac trunk (largest)", "Spleen + pancreas body/tail + fundus (short gastrics)"], ["Common hepatic", "Celiac trunk", "Liver, gallbladder, stomach, duodenum, pancreas head"], ["Right gastric", "Proper hepatic a.", "Lesser curvature (right side)"], ["Right gastroepiploic", "Gastroduodenal a.", "Greater curvature (right)"], ["Left gastroepiploic", "Splenic a.", "Greater curvature (left)"]] story.append(make_table(celiac_branches[0], celiac_branches[1:], [4.5*cm, 5*cm, 7*cm])) story.append(Spacer(1,0.3*cm)) story.append(Paragraph("SMA — Superior Mesenteric Artery", h2_style)) for t in ["Arises at L1, behind neck of pancreas", "Supplies midgut: 2nd part of duodenum → left 2/3 of transverse colon", "Branches: inferior pancreaticoduodenal · intestinal (jejunal/ileal) · ileocolic · right colic · middle colic"]: story.append(bullet(t)) story.append(Paragraph("IMA — Inferior Mesenteric Artery", h2_style)) for t in ["Arises at L3", "Supplies hindgut: left 1/3 transverse colon → upper rectum", "Branches: left colic · sigmoid arteries · superior rectal artery", "Critical Point of Griffiths (splenic flexure) = watershed zone between SMA & IMA — vulnerable to ischemia"]: story.append(bullet(t)) story.append(Paragraph("Liver", h2_style)) liver_data = [["Feature", "Detail"], ["Weight", "~1.5 kg; largest abdominal organ"], ["Anatomical lobes", "Right (5x), Left, Caudate, Quadrate"], ["Functional division", "By Cantlie's line (gallbladder fossa → IVC) → right/left lobes"], ["Couinaud segments", "8 segments, each with portal triad + hepatic vein"], ["Blood supply", "Portal vein 75% (50% O2) + Hepatic artery 25% (50% O2)"], ["Bare area", "Not covered by peritoneum; bounded by coronary ligament; contacts diaphragm"], ["Lig. teres", "Obliterated left umbilical vein (in free edge of falciform ligament)"], ["Lig. venosum", "Obliterated ductus venosus (fissure on posterior surface)"], ["Porta hepatis", "Portal vein (post) · Hepatic artery (left) · Bile duct (right)"]] story.append(make_table(liver_data[0], liver_data[1:], [5*cm, 11*cm])) story.append(Spacer(1,0.3*cm)) story += make_image_flowable(IMG["bile_duct"], "bile_duct.img", 12, "Intraoperative cadaveric view — Common bile duct (CBD) in hepatoduodenal ligament. Liver (top), duodenum (bottom). Note: gallbladder absent (agenesis) in this specimen.") story += make_image_flowable(IMG["mrcp"], "mrcp.img", 11, "MRCP — Biliary tree anatomy showing common hepatic duct, common bile duct, gallbladder, and accessory bile duct variant. Critical for understanding biliary anatomy.") story.append(Paragraph("Gallbladder", h2_style)) for t in ["Parts: Fundus · Body · Neck (→ cystic duct with spiral valve of Heister)", "Hartmann's pouch — junction of neck and cystic duct; stones lodge here", "Calot's Triangle — bounded by: cystic duct + common hepatic duct + liver", "Cystic artery = branch of right hepatic artery (usually) — runs in Calot's triangle", "Referred pain = right shoulder tip (C3,C4 — diaphragmatic irritation)", "Murphy's sign = pain on inspiration when examiner presses under right costal margin"]: story.append(bullet(t)) story.append(Paragraph("Pancreas", h2_style)) panc_data = [["Part", "Relations", "Blood Supply"], ["Head", "In C-loop of duodenum; CBD runs in/behind", "Superior + Inferior pancreaticoduodenal arteries"], ["Neck", "Overlies portal vein/SMA junction", "Splenic a. branches"], ["Body", "Crosses L1-L2 vertebrae; behind stomach", "Splenic a. branches"], ["Tail", "Reaches splenic hilum; in splenorenal lig.", "Splenic a. (tail is INTRAperitoneal)"]] story.append(make_table(panc_data[0], panc_data[1:], [2.5*cm, 7.5*cm, 6*cm])) story.append(Spacer(1,0.2*cm)) story.append(clinical_box( "Cancer of HEAD = obstructive jaundice (blocks CBD). " "Cancer of BODY/TAIL = back pain (T10), late presentation. " "Annular pancreas = duodenal obstruction = double bubble sign on X-ray.")) story.append(Paragraph("Spleen", h2_style)) for t in ["Left hypochondrium; related to 9th, 10th, 11th ribs", "~150 g; notch on anterior border (distinguishes from kidney on palpation)", "Surfaces: diaphragmatic, renal, gastric, colic", "Gastrosplenic lig: short gastric + left gastroepiploic vessels", "Splenorenal lig: splenic vessels + tail of pancreas", "Accessory spleen in 10% (usually at hilum)", "Kehr's sign = left shoulder tip pain (diaphragm irritation from splenic rupture blood)"]: story.append(bullet(t)) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPIC 4 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPIC 4 — Esophagus · Stomach · Small Intestine · Large Intestine", h1_style)) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Abdominal Esophagus", h2_style)) for t in ["~2 cm long; enters through esophageal hiatus at T10 with vagal trunks", "Anterior vagal trunk (mainly left vagus) · Posterior vagal trunk (mainly right vagus)", "LES = physiological sphincter (not anatomical) — prevents reflux", "Blood: left gastric a. + left inferior phrenic a.", "Portal-systemic anastomosis here — VARICES in portal hypertension"]: story.append(bullet(t)) story.append(Paragraph("Stomach", h2_style)) story.append(Paragraph("Parts: Cardia → Fundus → Body → Pyloric antrum → Pyloric canal → Pylorus", body_style)) for t in ["Pyloric sphincter: palpable thickened ring; at L1 level (transpyloric plane)", "Transpyloric plane (L1): fundus of gallbladder · hilum of kidneys · SMA origin · termination of spinal cord (adults) · neck of pancreas", "Rugae = longitudinal folds of mucosa (allow distension)", "Pyloric stenosis (infantile hypertrophic): palpable 'olive' mass; projectile vomiting; hypochloremic hypokalemic metabolic alkalosis"]: story.append(bullet(t)) story.append(Paragraph(B("Blood Supply (all from celiac trunk):"), body_style)) for t in ["Lesser curvature: right + left gastric arteries", "Greater curvature: right + left gastroepiploic arteries", "Fundus: short gastric arteries (from splenic a.)", "Posterior wall: posterior gastric artery (from splenic a.)"]: story.append(bullet(t)) story.append(Paragraph("Duodenum", h2_style)) duo_data = [["Part", "Length", "Peritoneum", "Key Relations"], ["1st (Superior)", "5 cm", "Has peritoneum (first ~2 cm)", "Most common ulcer site; gallbladder above"], ["2nd (Descending)", "7.5 cm", "Retroperitoneal", "Major papilla (bile + pancreatic duct); minor papilla above"], ["3rd (Horizontal)", "10 cm", "Retroperitoneal", "Crossed by SMA/SMV + root of mesentery"], ["4th (Ascending)", "2.5 cm", "Retroperitoneal", "Becomes jejunum at duodenojejunal flexure (ligament of Treitz)"]] story.append(make_table(duo_data[0], duo_data[1:], [2.5*cm, 2*cm, 3.5*cm, 8*cm])) story.append(Spacer(1,0.2*cm)) story += make_image_flowable(IMG["gi_transit"], "gi_transit.img", 14, "GI transit diagram showing stomach (fundus, body, antrum) and small intestine (duodenum, jejunum, ileum) with X-ray tracking of capsule transit.") story.append(Paragraph("Jejunum vs. Ileum", h2_style)) ji_data = [["Feature", "Jejunum", "Ileum"], ["Location", "Upper left abdomen", "Lower right abdomen"], ["Wall", "Thicker", "Thinner, more transparent"], ["Plicae circulares", "Prominent, closely packed", "Few or absent distally"], ["Vasa recta", "Long", "Short"], ["Arterial arcades", "1-2 tiers (simple)", "4-5 tiers (complex)"], ["Peyer's patches", "Few", "Many (terminal ileum)"], ["Color", "Deeper red/pink", "Paler pink"], ["Fat in mesentery", "Less (windows visible)", "More (opaque)"]] story.append(make_table(ji_data[0], ji_data[1:], [5*cm, 6.5*cm, 6.5*cm])) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Large Intestine — Distinguishing Features", h2_style)) for t in ["Taenia coli = 3 longitudinal bands (converge at appendix base — surgical landmark)", "Haustra = sacculations between taenia", "Appendices epiploicae = fat-filled peritoneal tags", "Appendix base = confluence of taenia coli; McBurney's point = 1/3 from ASIS on spinoumbilical line", "Appendicular artery = end artery (from ileocolic) → gangrene in appendicitis", "Hepatic flexure: right, less acute | Splenic flexure: higher, more acute, more fixed", "Sigmoid colon = most mobile; has mesentery; common site of volvulus", "Rectum: Houston's valves (3) — 2 left, 1 right"]: story.append(bullet(t)) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPICS 5 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPIC 5 — Accessory GIT Organs: Additional High-Yield Points", h1_style)) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Biliary Tree", h2_style)) for t in ["Right + Left hepatic ducts → Common hepatic duct + Cystic duct → Common bile duct (CBD)", "CBD ~7-8 cm; runs in hepatoduodenal ligament → posterior to D1 → through/behind head of pancreas", "Joins pancreatic duct at Ampulla of Vater (major duodenal papilla, D2)", "Sphincter of Oddi controls flow into D2", "Normal CBD diameter < 8 mm on USS; > 10 mm if post-cholecystectomy"]: story.append(bullet(t)) story.append(Paragraph("Liver — Clinical Notes", h2_style)) for t in ["Liver biopsy: 8th-9th ICS, midaxillary line, right side, in full expiration", "3 hepatic veins drain into IVC just below diaphragm", "Child-Pugh score / MELD score for liver function assessment", "Portal-systemic anastomoses: lower esophagus · anal canal · paraumbilical · retroperitoneal"]: story.append(bullet(t)) story.append(Paragraph("Portal Vein", h2_style)) story.append(Paragraph( "Forms behind neck of pancreas at <b>L2</b> by union of SMV + Splenic vein. " "Drains gut, spleen, pancreas, gallbladder. Portal hypertension > 10-12 mmHg.", body_style)) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPIC 6 & 7 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPICS 6 & 7 — Retroperitoneal Space · Kidneys · Ureters · Suprarenal · Posterior Wall · Aorta · IVC · Lumbar Plexus", h1_style)) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Kidneys", h2_style)) kidney_data = [["Feature", "Right Kidney", "Left Kidney"], ["Level", "T12-L3 (slightly lower)", "T12-L3"], ["Anterior", "Liver · D2 · Ascending colon · Hepatic flexure", "Stomach · Spleen · Pancreas tail · Jejunum · Splenic flexure"], ["Posterior", "Diaphragm · Psoas · QL · 12th rib", "Diaphragm · Psoas · QL · 11th & 12th ribs"], ["Hilum order (ant→post)", "Vein · Artery · Ureter/Pelvis (VAP)", "Vein · Artery · Ureter/Pelvis (VAP)"]] story.append(make_table(kidney_data[0], kidney_data[1:], [4*cm, 7*cm, 7*cm])) story.append(Spacer(1,0.3*cm)) story += make_image_flowable(IMG["retro_cadaver"], "retro_cadaver.img", 14, "Cadaver dissection — Posterior abdominal wall showing left testicular vein (LTV), left renal vein (LRV), IVC, abdominal aorta (AA), left kidney (LK), pancreas (PAN), and left ureter (LU). Key landmarks for retroperitoneal anatomy.") story += make_image_flowable(IMG["iliac_cadaver"], "iliac_cadaver.img", 14, "Cadaver dissection — Posterior wall and pelvic vasculature. Right common iliac artery crossing anteriorly over IVC. Right kidney, right ureter, external and internal iliac arteries visible.") story.append(Paragraph("Ureters — 3 Points of Narrowing (stones lodge here)", h2_style)) ureter_data = [["Site", "Location", "Clinical"], ["1. Pelviureteric junction (PUJ)", "Renal pelvis → ureter", "Most common site of congenital obstruction"], ["2. Pelvic brim", "Crossing common iliac artery bifurcation", "At sacroiliac joint level"], ["3. Vesicoureteric junction (VUJ)", "Entry into bladder wall", "Narrowest point; most common stone lodgement"]] story.append(make_table(ureter_data[0], ureter_data[1:], [5.5*cm, 5.5*cm, 6*cm])) story.append(clinical_box( "Female urology key: Uterine artery crosses OVER ureter 2 cm lateral to cervix at level of internal os — " "'Water under the bridge'. Risk of ureteric ligation/transection in hysterectomy.")) story.append(Paragraph("Suprarenal (Adrenal) Glands", h2_style)) for t in ["Within Gerota's fascia, cap upper poles of kidneys", "Right = pyramidal; behind IVC, medial to liver", "Left = semilunar; behind stomach/pancreas, near splenic vessels", "Blood supply: 3 arteries — superior (inf. phrenic) · middle (aorta) · inferior (renal a.)", "Venous drainage: RIGHT vein → directly to IVC (short — important in surgery!) | LEFT vein → left renal vein"]: story.append(bullet(t)) story.append(Paragraph("Abdominal Aorta — Branch Levels", h2_style)) aorta_data = [["Branch", "Level"], ["Inferior phrenic arteries", "T12"], ["Celiac trunk", "T12/L1"], ["Superior mesenteric a. (SMA)", "L1"], ["Middle suprarenal arteries", "L1"], ["Renal arteries", "L1-L2"], ["Gonadal (testicular/ovarian) arteries", "L2"], ["Inferior mesenteric a. (IMA)", "L3"], ["Common iliac arteries (bifurcation)", "L4"], ["Median sacral artery", "L4"]] story.append(make_table(aorta_data[0], aorta_data[1:], [10*cm, 6*cm])) story.append(Spacer(1,0.2*cm)) story.append(note_box("Aortic aneurysm = usually infrarenal (below renal arteries); pulsatile mass at umbilicus; diameter > 3 cm")) story.append(Paragraph("IVC", h2_style)) for t in ["Begins at L5 (right of aorta) by union of common iliac veins", "Passes through caval opening in diaphragm at T8", "NO gut tributaries — all gut blood goes via portal system to liver first", "Tributaries: lumbar veins · renal veins · gonadal veins · hepatic veins · inferior phrenics"]: story.append(bullet(t)) story.append(Paragraph("Lumbar Plexus — Inside Psoas Major", h2_style)) lumboplexus_data = [["Nerve", "Root", "Key Points"], ["Iliohypogastric", "L1 (T12)", "Skin of lower abdomen + gluteal region"], ["Ilioinguinal", "L1", "Passes through inguinal canal; scrotum/labium majus + medial thigh"], ["Genitofemoral", "L1, L2", "Exits through psoas; genital br (cremaster) + femoral br (anterior thigh)"], ["Lat. cutaneous nerve of thigh", "L2, L3", "Exits lateral to psoas; under inguinal lig; meralgia paresthetica if compressed"], ["Obturator", "L2, L3, L4", "Exits medial border of psoas; through obturator foramen; adductors"], ["Femoral", "L2, L3, L4", "Exits lateral to psoas; under inguinal lig lateral to femoral a.; extensors"]] story.append(make_table(lumboplexus_data[0], lumboplexus_data[1:], [5.5*cm, 2.5*cm, 9*cm])) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPIC 8 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPIC 8 — Imaging of the Abdomen", h1_style)) story.append(Spacer(1,0.2*cm)) imaging_data = [["Modality", "Best For", "Key Points"], ["Plain X-ray (AXR)", "Obstruction · Perforation · Calcification", "SBO: central, valvulae conniventes. LBO: peripheral, haustra. Pneumoperitoneum: air under diaphragm on erect CXR"], ["Ultrasound (USG)", "Gallstones · Liver · Kidney · Ascites · Aorta", "Murphy's sign on probe. CBD < 8 mm. Aorta > 3 cm = aneurysm. 90% renal stones echogenic. Gallstones >95% sensitive"], ["CT Abdomen", "Acute abdomen · Trauma · Cancer staging", "Gold standard for acute abdomen. Balthazar score for pancreatitis. Detect retroperitoneal structures well"], ["MRI / MRCP", "Liver lesions · Biliary tree · Soft tissue", "Non-invasive alternative to ERCP for biliary diagnosis. No radiation. Best soft tissue contrast"]] story.append(make_table(imaging_data[0], imaging_data[1:], [3.5*cm, 5.5*cm, 8*cm])) story.append(Spacer(1,0.3*cm)) story.append(note_box( "High-yield imaging facts: 90% of renal stones radio-opaque (calcium oxalate). " "Only 10% gallstones radio-opaque. Portal vein > 13 mm on USS = portal hypertension.")) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPICS 9, 10, 12 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPICS 9, 10, 12 — Pelvic Bones · Pelvic Wall · Gluteal Region", h1_style)) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Bony Pelvis", h2_style)) for t in ["Hip bone = ilium + ischium + pubis (fuse at triradiate cartilage at 14-16 years)", "Joints: pubic symphysis (secondary cartilaginous) · sacroiliac (synovial anteriorly + syndesmosis posteriorly)", "Female pelvis: wider, shallower, larger inlet, more circular, pubic angle > 90°", "Pelvic inlet (brim): pubic symphysis → iliopectineal line → sacral promontory"]: story.append(bullet(t)) story.append(Paragraph("True vs. False Pelvis", h2_style)) pelvis_data = [["", "False Pelvis", "True Pelvis"], ["Location", "Above pelvic brim", "Below pelvic brim"], ["Bounded by", "Iliac fossae laterally", "Pubis, ischium, sacrum"], ["Contents", "Lower abdominal organs", "Bladder, rectum, reproductive organs"]] story.append(make_table(pelvis_data[0], pelvis_data[1:], [4*cm, 7*cm, 7*cm])) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Obstetric Diameters", h2_style)) ob_data = [["Diameter", "Measurement", "Landmarks"], ["True conjugate (anatomical)", "11 cm", "Sacral promontory → upper pubic symphysis"], ["Obstetric conjugate", "10 cm", "Sacral promontory → most prominent point of pubis"], ["Diagonal conjugate", "12.5 cm", "Sacral promontory → lower pubic symphysis"], ["Transverse diameter of inlet", "13 cm", "Widest transverse diameter"]] story.append(make_table(ob_data[0], ob_data[1:], [5.5*cm, 3*cm, 8.5*cm])) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Caldwell-Moloy Pelvic Types", h2_style)) ct_data = [["Type", "Shape", "Frequency", "Delivery"], ["Gynecoid", "Round / oval", "50%", "Most favorable"], ["Android", "Heart-shaped (male)", "20%", "Unfavorable (deep transverse arrest)"], ["Anthropoid", "Oval (AP > transverse)", "25%", "Possible; occiput posterior common"], ["Platypelloid", "Flat (transverse > AP)", "5%", "Difficult; flat inlet"]] story.append(make_table(ct_data[0], ct_data[1:], [3.5*cm, 4*cm, 3*cm, 7*cm])) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Pelvic Muscles", h2_style)) pm_data = [["Muscle", "Origin", "Insertion", "Nerve", "Action"], ["Piriformis", "Sacrum (S2-S4)", "Greater trochanter", "S1, S2", "Lateral rotation of hip"], ["Obturator internus", "Obturator membrane", "Greater trochanter (medial)", "Nerve to OI (L5, S1)", "Lateral rotation"], ["Levator ani", "Pubis · Tendinous arch · Ischial spine", "Perineal body · Coccyx · Anococcygeal body", "S4 + pudendal", "Pelvic floor support"], ["Coccygeus", "Ischial spine", "Sacrum/coccyx", "S4, S5", "Supports pelvic floor"]] story.append(make_table(pm_data[0], pm_data[1:], [3.5*cm, 4*cm, 4*cm, 2.8*cm, 3.2*cm])) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Pelvic Diaphragm & Levator Ani", h2_style)) for t in ["Pelvic diaphragm = levator ani + coccygeus", "Levator ani = pubococcygeus + iliococcygeus + puborectalis", "Puborectalis forms sling around anorectal junction → maintains anorectal angle ~90° (essential for continence)", "Urogenital hiatus: transmits urethra (+ vagina in females)", "Pelvic floor weakness → prolapse + stress incontinence"]: story.append(bullet(t)) story.append(Paragraph("Gluteal Region — Key Nerve Relationships", h2_style)) story.append(Paragraph("<b>Piriformis muscle</b> is the landmark — everything is above or below it:", body_style)) glut_data = [["Relation to Piriformis", "Structures"], ["Above (via greater sciatic foramen)", "Superior gluteal vessels + nerve (L4, L5, S1)"], ["Below (via greater sciatic foramen)", "Inferior gluteal n/v · Sciatic nerve (L4-S3) · Pudendal nerve · Nerve to obturator internus · Nerve to quadratus femoris · Posterior cutaneous nerve of thigh"]] story.append(make_table(glut_data[0], glut_data[1:], [6.5*cm, 11*cm])) story.append(Spacer(1,0.2*cm)) story.append(clinical_box( "Safe injection zone: Upper outer quadrant of gluteal region (avoids sciatic nerve). " "Sciatic nerve: midpoint between ASIS and ischial tuberosity. " "Trendelenburg sign = gluteus medius weakness = superior gluteal nerve (L4, L5) lesion.")) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPIC 11 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPIC 11 — Male Pelvis", h1_style)) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Prostate", h2_style)) story += make_image_flowable(IMG["bladder_mri"], "bladder_mri.img", 13, "MRI pelvis (male) — Sagittal (A) and axial (B) views showing bladder, prostate gland (inferior to bladder), pubic symphysis, sacrum, and rectum. Essential for understanding male pelvic organ relationships.") for t in ["Walnut-sized gland surrounding urethra below bladder neck", "Zones: Peripheral (most cancer) · Central · Transitional (BPH) · Anterior", "Blood: inferior vesical + middle rectal arteries", "Venous drainage: Prostatic plexus (Santorini's) → internal iliac; communicates with Batson's vertebral plexus", "Prostate cancer → osteosclerotic metastases to vertebrae (via Batson's plexus)", "DRE: posterior surface palpable; median sulcus; loss of sulcus + nodularity = cancer", "PSA: > 4 ng/mL suspicious | > 10 ng/mL highly suspicious"]: story.append(bullet(t)) story.append(Paragraph("Seminal Vesicles", h2_style)) for t in ["Posterior to bladder, above prostate", "Duct + vas deferens → ejaculatory duct → opens at verumontanum in prostatic urethra", "Contribute ~60% of seminal fluid (fructose + prostaglandins + coagulase)"]: story.append(bullet(t)) story.append(Paragraph("Urinary Bladder", h2_style)) for t in ["Trigone: smooth, no rugae; bounded by 2 ureteric orifices + internal urethral orifice; most common site of bladder carcinoma", "Detrusor (smooth) · Internal sphincter (smooth, involuntary) · External sphincter (skeletal, voluntary)", "Blood: superior + inferior vesical arteries (from internal iliac)"]: story.append(bullet(t)) story.append(Paragraph("Male Urethra (Total ~20 cm)", h2_style)) mu_data = [["Part", "Length", "Key Features"], ["Prostatic", "~3 cm", "Widest; verumontanum · utricle · ejaculatory duct openings"], ["Membranous", "~2 cm", "External sphincter here; most fixed; most vulnerable in pelvic fracture"], ["Spongy/Penile", "~15 cm", "Through corpus spongiosum; narrowest = external urethral meatus"]] story.append(make_table(mu_data[0], mu_data[1:], [3*cm, 2.5*cm, 11.5*cm])) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # TOPIC 13 # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("TOPIC 13 — Female Pelvic Wall & Cavity", h1_style)) story.append(Spacer(1,0.2*cm)) story += make_image_flowable(IMG["pelvis_ct"], "pelvis_ct.img", 14, "CT pelvis (female) — Axial (A) and sagittal (B) views. Sigmoid colon herniation between uterus (U) and ovary (O). Sacrum, lumbar spine, bladder identified. Demonstrates female pelvic organ relationships.") story.append(Paragraph("Uterus", h2_style)) for t in ["Size: 7.5 × 5 × 2.5 cm; pear-shaped", "Normal position: anteverted (90° to vagina) + anteflexed (120° at isthmus) — most important exam fact", "Parts: Fundus · Body · Isthmus (lower uterine segment) · Cervix", "Cervix: external os (stratified squamous) + internal os; transformation zone = most common site of cervical cancer (HPV 16, 18)"]: story.append(bullet(t)) story.append(Paragraph("Uterine Supports", h2_style)) uterus_support_data = [["Ligament", "Type", "Function", "Contents"], ["Cardinal (Mackenrodt's/transverse cervical)", "Condensed pelvic fascia", "PRIMARY ligamentous support; prevents prolapse", "Uterine artery; ureter crosses below"], ["Uterosacral", "Peritoneal fold", "Posterior support; maintains anteversion", "Sympathetic nerves"], ["Round ligament", "Smooth muscle + fibrous", "Keeps fundus anteverted (weak support)", "Passes through inguinal canal"], ["Pubocervical", "Fascia", "Anterior support; bladder support", "—"], ["Levator ani (pelvic floor)", "Skeletal muscle", "PRIMARY muscular support", "—"]] story.append(make_table(uterus_support_data[0], uterus_support_data[1:], [4*cm, 3.5*cm, 4.5*cm, 5*cm])) story.append(Spacer(1,0.2*cm)) story.append(clinical_box( "'Water under the bridge': Uterine artery crosses OVER the ureter 2 cm lateral to cervix at level of internal os. " "Ureter = 'water'; uterine artery = 'bridge'. Critical in hysterectomy — ureter at risk!")) story.append(Paragraph("Broad Ligament", h2_style)) for t in ["Double fold of peritoneum extending from uterus to pelvic sidewalls", "Mesosalpinx (contains uterine tube) · Mesovarium (contains ovary) · Mesometrium (contains round ligament, uterine vessels)", "NOT a true ligament — provides NO significant support"]: story.append(bullet(t)) story.append(Paragraph("Fallopian Tubes (~10 cm)", h2_style)) ft_data = [["Part", "Location", "Clinical"], ["Interstitial (intramural)", "Within uterine wall", "Narrowest; rarely ruptures (ectopic)"], ["Isthmus", "Near uterus", "Sterilization site"], ["Ampulla", "Main segment; widest", "Most common site of ectopic pregnancy"], ["Infundibulum", "Funnel-shaped, fimbriae", "Picks up ovulated oocyte"]] story.append(make_table(ft_data[0], ft_data[1:], [4*cm, 4*cm, 9*cm])) story.append(Spacer(1,0.2*cm)) story.append(Paragraph("Ovaries", h2_style)) for t in ["Size: 3 × 2 × 1 cm; position variable", "Suspended by: mesovarium · ovarian ligament (to uterus) · suspensory/infundibulopelvic ligament (contains ovarian vessels)", "NOT covered by peritoneum (germinal epithelium = simple cuboidal epithelium)", "Lymphatics → para-aortic nodes at L2 (same as testes — shared embryological origin)"]: story.append(bullet(t)) story.append(Paragraph("Vagina", h2_style)) for t in ["~8-9 cm; anterior wall shorter (7 cm) than posterior wall (9 cm)", "Fornices: lateral, anterior, posterior; POSTERIOR fornix deepest → related to Pouch of Douglas", "Blood: vaginal artery (from internal iliac)", "Upper 1/4 derived from Mullerian duct; lower 3/4 from urogenital sinus"]: story.append(bullet(t)) story.append(Paragraph("Pudendal Nerve — S2, S3, S4", h2_style)) for t in ["'Nerve of perineum' — ALL perineal sensation and motor", "Path: exits greater sciatic foramen below piriformis → crosses sacrospinous ligament (at ischial spine) → enters lesser sciatic foramen → enters Alcock's canal (pudendal canal)", "Branches: dorsal nerve of penis/clitoris · perineal nerve · inferior rectal nerve", "Pudendal nerve block: at ischial spine (transvaginal or transperineal approach)"]: story.append(bullet(t)) story.append(Paragraph("Rectum", h2_style)) for t in ["S3 level → anorectal junction (levator ani)", "Houston's valves (transverse rectal folds): 3 total — 2 on left, 1 on right", "Peritoneal relations: upper 1/3 (front + sides) · middle 1/3 (front only) · lower 1/3 (extraperitoneal)", "Anal canal: 4 cm; dentate/pectinate line = junction of endoderm (above) + ectoderm (below)", "Above dentate: internal hemorrhoids (painless), columnar epithelium, autonomic innervation, drain to portal", "Below dentate: external hemorrhoids (painful), squamous epithelium, somatic innervation, drain to caval"]: story.append(bullet(t)) story.append(PageBreak()) # ═══════════════════════════════════════════════════════════════════════════════ # CLINICAL SUMMARY TABLE # ═══════════════════════════════════════════════════════════════════════════════ story.append(Paragraph("QUICK-REFERENCE: Clinical Correlations", h1_style)) story.append(Spacer(1,0.2*cm)) clin_data = [["Condition", "Anatomical Basis", "Key Exam Fact"], ["Indirect inguinal hernia", "Patent processus vaginalis", "Lateral to inf. epigastric; congenital; more common"], ["Direct inguinal hernia", "Weak posterior wall / Hesselbach's", "Medial to inf. epigastric; acquired; in elderly"], ["Femoral hernia", "Femoral canal (lateral to pubic tubercle)", "More common in women; below inguinal ligament"], ["Appendicitis", "McBurney's point; appendicular end artery", "Confluence of taenia coli = appendix base"], ["Splenic rupture", "Left hypochondrium, 9-11th ribs", "Kehr's sign; perisplenic blood in left paracolic gutter"], ["Portal hypertension", "Porto-systemic anastomoses", "4 sites: esophageal, anal, paraumbilical, retroperitoneal"], ["Ureteric colic", "3 natural narrowings", "PUJ > pelvic brim > VUJ"], ["Prostate cancer spread", "Batson's plexus ↔ vertebral plexus", "Osteosclerotic (not lytic) vertebral metastases"], ["Ureteric injury in hysterectomy", "Uterine a. crosses over ureter", "'Water under bridge' at level of internal os"], ["Splenic flexure ischemia", "Watershed SMA/IMA", "Griffiths' point; lowest perfusion pressure"], ["Pyloric stenosis (infant)", "Hypertrophied pyloric muscle", "Projectile vomiting; hypochloremic metabolic alkalosis"], ["Meckel's diverticulum", "Remnant of vitello-intestinal duct", "Rule of 2's; may contain gastric mucosa → bleeds"], ["Meralgia paresthetica", "Lat. cutaneous nerve of thigh compressed", "Under inguinal lig; burning lateral thigh pain"], ["Ectopic pregnancy", "Ampulla of fallopian tube (most common)", "Tubal rupture → hemoperitoneum → Pouch of Douglas"]] story.append(make_table(clin_data[0], clin_data[1:], [4.5*cm, 5.5*cm, 7*cm])) story.append(Spacer(1,0.5*cm)) story.append(HRFlowable(width="100%", thickness=1, color=colors.HexColor("#1a3a5c"))) story.append(Spacer(1,0.2*cm)) story.append(Paragraph( "<i>Sources: Gray's Anatomy for Students · Snell's Clinical Anatomy · Bailey & Love's Surgery · " "Cadaver images from peer-reviewed medical literature (open access). " "Generated by Orris Medical AI — August 2026.</i>", ParagraphStyle("Footer", parent=styles["Normal"], fontSize=8, textColor=colors.grey, alignment=TA_CENTER) )) # ── BUILD ───────────────────────────────────────────────────────────────────── doc.build(story) print("PDF built successfully!") PYEOF echo "Script written."
cd /tmp/workspace/anatomy-prelims && python build_pdf.py 2>&1
Download the completed PDF now
Generate a Word document version for easier annotation
Create a quick revision flashcard deck in PDF format