Lipoma Fatty liver Acute appendicitis Carcinoma stomach Infarct spleen Multinodular colloid goitre Fibroadenoma breast Carcinoma breast Leiomyoma uterus Carcinoma Endometrium Serous cystadenoma Mucinous cystadenoma Teratoma - ovary Bronchiectasis TB Lung Testicular tumour Carcinoma Penis Chronic pyelonephritis Renal cell carcinoma Gall bladder stones SCC CA Stomach CA colon FAP colon Osteosarcoma Osteoclastoma Cirrhosis of liver Hashimotos thyroiditis Papillary carcinoma of thyroid Colonic polyp Teratomas of ovary Brief gross description about above topics and associated systemic pathology viva questions for 2nd year mbbs University exam
You are a pathology expert helping 2nd year MBBS students prepare for University practical exams. Search the medical textbook library database for gross pathology descriptions of the following conditions. For each condition, provide: (1) a brief gross description (what the specimen looks like - size, shape, color, surface, cut section, consistency), and (2) 3-5 systemic pathology viva questions with answers that a university examiner would ask. CONDITIONS TO COVER (Group 1): 1. Lipoma 2. Fatty liver 3. Acute appendicitis 4. Carcinoma stomach 5. Infarct spleen 6. Multinodular colloid goitre 7. Fibroadenoma breast 8. Carcinoma breast 9. Leiomyoma uterus 10. Carcinoma endometrium 11. Serous cystadenoma (ovary) 12. Mucinous cystadenoma (ovary) 13. Teratoma - ovary 14. Bronchiectasis 15. TB Lung 16. Testicular tumour Use the medical library database with these SQL queries to find information: Query 1 - Search for lipoma, fatty liver gross: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'lipoma gross' ORDER BY rank LIMIT 5 Query 2: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'fatty liver gross appearance' ORDER BY rank LIMIT 5 Query 3: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'acute appendicitis gross' ORDER BY rank LIMIT 5 Query 4: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'carcinoma stomach gross' ORDER BY rank LIMIT 5 Query 5: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'splenic infarct gross' ORDER BY rank LIMIT 5 Query 6: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'multinodular goitre colloid gross' ORDER BY rank LIMIT 5 Query 7: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'fibroadenoma breast gross' ORDER BY rank LIMIT 5 Query 8: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'carcinoma breast gross' ORDER BY rank LIMIT 5 Query 9: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'leiomyoma uterus gross fibroid' ORDER BY rank LIMIT 5 Query 10: SELECT book_title, section_heading, '/textbooks/' || block_file_path AS file_path, line_start, line_end, snippet(paragraphs_fts, 0, '>>>', '<<<', '...', 40) as snippet FROM paragraphs_fts WHERE paragraphs_fts MATCH 'endometrial carcinoma gross' ORDER BY rank LIMIT 5 Run all queries using query_library_db. Then for any topic where you need more detail, read the relevant file section using read_file with the file_path returned, at the line_start offset for about 60 lines. For topics not well covered by library, use your own expert pathology knowledge. Return a structured response with GROSS DESCRIPTION and VIVA Q&A for each of the 16 conditions listed above. Be thorough and exam-focused.
According to Robbins pathology book
| Specimen | Key Gross Feature | Key Viva Point |
|---|---|---|
| Lipoma | Encapsulated, yellow, soft, lobulated | HMGA2, chromosome 12q |
| Fatty liver | Enlarged, yellow, greasy, "floats on water" | Macrovesicular > alcoholic; Oil Red O stain |
| Acute appendicitis | Congested, dull serosa, faecolith | Neutrophils in muscularis = diagnostic |
| Ca stomach | Ulcerative (malignant ulcer) / Linitis plastica | Lauren types; Virchow's node; Krukenberg |
| Splenic infarct | Wedge-shaped, pale, subcapsular | End arteries; autosplenectomy in SCD |
| MN colloid goitre | Multinodular, brown colloid, calcifications | Iodine deficiency; TSH driven |
| Fibroadenoma | Encapsulated, whorled, gray-white | Intracanalicular vs pericanalicular |
| Ca breast | Hard, gritty, stellate, scirrhous | ER/PR/HER2; peau d'orange; Paget's |
| Leiomyoma | Whorled, white, well-circumscribed | Estrogen-dependent; carneous degeneration |
| Ca endometrium | Polypoid/fungating, fundus, necrotic | Type I (estrogen) vs Type II (p53) |
| Serous cystadenoma | Unilocular, clear fluid, thin wall | Psammoma bodies; BRCA (malignant) |
| Mucinous cystadenoma | Multilocular, thick mucin, huge | Pseudomyxoma peritonei |
| Teratoma (mature) | Hair, teeth, sebaceous, Rokitansky | Struma ovarii; 1-2% malignant transformation |
| Bronchiectasis | Dilated bronchi to pleura, purulent | Kartagener; tram-track; lower lobes |
| TB lung | Caseation, cavitation, upper lobe | Ghon complex; Langhans cells; ZN stain |
| Testicular tumor | Creamy-white (seminoma); variegated (NSGCT) | AFP (YST); PLAP (seminoma); cryptorchidism |
| Ca penis | Ulcerating SCC glans/prepuce | HPV 16/18; Erythroplasia of Queyrat |
| Chr. pyelonephritis | Coarse scars over blunted calyces | VUR; E. coli; calyceal involvement |
| RCC | Variegated, yellow-orange, pseudocapsule | VHL; clear cell; paraneoplastic; vein invasion |
| Gallstones | Yellow (cholesterol) or black/brown (pigment) | Courvoisier's law; Charcot's triad |
| SCC skin | Indurated, everted edges, keratin | Marjolin's ulcer; actinic keratosis |
| Ca colon (R) | Fungating/polypoid | Portal mets; adenoma-carcinoma sequence |
| Ca colon (L) | Annular/napkin-ring | Apple-core on barium enema |
| FAP | Hundreds of polyps, carpet of polyps | APC gene 5q21; Gardner's; 100% cancer |
| Osteosarcoma | Metaphysis, gritty, Codman's triangle | RB1; sunburst pattern; peak 10-20 yr |
| Osteoclastoma | Epiphysis, brown, soap-bubble | RANKL; 20-40 yr; denosumab |
| Cirrhosis | Nodular, firm, shrunken, hobnail | Micronodular (alcohol) vs macronodular (viral) |
| Hashimoto's | Diffuse firm goitre, pale-gray | Anti-TPO; Hurthle cells; thyroid lymphoma |
| Papillary Ca thyroid | White, gritty, unencapsulated | Orphan Annie nuclei; BRAF V600E; psammoma |
| Colonic polyp | Pedunculated or sessile | Villous = highest risk; >2 cm, dysplasia |
| Teratoma ovary (immature) | Solid, necrotic, brain-like | Immature neuroepithelium; AFP elevated |
Create a pdf with all these points
ls /home/daytona/workspace/ 2>/dev/null || echo "workspace empty or missing"
mkdir -p /home/daytona/workspace/pathology-viva && python3 -c "from reportlab.lib.pagesizes import A4; print('reportlab ok')"
~/pathology-viva/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
OUTPUT = "/home/daytona/workspace/pathology-viva/Gross_Pathology_Viva_Robbins.pdf"
doc = SimpleDocTemplate(
OUTPUT,
pagesize=A4,
leftMargin=2*cm, rightMargin=2*cm,
topMargin=2.2*cm, bottomMargin=2.2*cm,
title="Gross Pathology Specimens & Viva Questions",
author="Robbins Pathology"
)
styles = getSampleStyleSheet()
# Custom styles
TITLE_STYLE = ParagraphStyle("title_main", parent=styles["Title"],
fontSize=20, textColor=colors.HexColor("#1a237e"),
spaceAfter=6, spaceBefore=0, alignment=TA_CENTER, leading=26)
SUBTITLE_STYLE = ParagraphStyle("subtitle", parent=styles["Normal"],
fontSize=11, textColor=colors.HexColor("#37474f"),
spaceAfter=4, alignment=TA_CENTER, leading=15)
SPECIMEN_HEADER = ParagraphStyle("specimen_header", parent=styles["Normal"],
fontSize=13, textColor=colors.white,
spaceBefore=10, spaceAfter=4, leftIndent=8, leading=18,
fontName="Helvetica-Bold")
SECTION_HEAD = ParagraphStyle("section_head", parent=styles["Normal"],
fontSize=10, textColor=colors.HexColor("#1565c0"),
spaceBefore=6, spaceAfter=2, leading=14,
fontName="Helvetica-Bold")
BODY = ParagraphStyle("body", parent=styles["Normal"],
fontSize=9.5, textColor=colors.HexColor("#212121"),
spaceAfter=3, spaceBefore=1, leading=14,
fontName="Helvetica", alignment=TA_JUSTIFY)
VIVA_Q = ParagraphStyle("viva_q", parent=styles["Normal"],
fontSize=9.5, textColor=colors.HexColor("#1b5e20"),
spaceBefore=4, spaceAfter=1, leading=14,
fontName="Helvetica-Bold", leftIndent=10)
VIVA_A = ParagraphStyle("viva_a", parent=styles["Normal"],
fontSize=9.5, textColor=colors.HexColor("#212121"),
spaceAfter=3, spaceBefore=0, leading=14,
fontName="Helvetica", leftIndent=20, alignment=TA_JUSTIFY)
TABLE_HEADER = ParagraphStyle("table_h", parent=styles["Normal"],
fontSize=8.5, textColor=colors.white,
fontName="Helvetica-Bold", alignment=TA_CENTER, leading=12)
TABLE_CELL = ParagraphStyle("table_c", parent=styles["Normal"],
fontSize=8, textColor=colors.HexColor("#212121"),
fontName="Helvetica", leading=11, alignment=TA_LEFT)
NOTE_STYLE = ParagraphStyle("note", parent=styles["Normal"],
fontSize=8, textColor=colors.HexColor("#546e7a"),
spaceAfter=4, spaceBefore=2, leading=11,
fontName="Helvetica-Oblique", alignment=TA_CENTER)
def specimen_block(number, title, gross_lines, viva_pairs):
"""Build a colored specimen block."""
elements = []
# Header bar
header_data = [[Paragraph(f"{number}. {title}", SPECIMEN_HEADER)]]
header_table = Table(header_data, colWidths=[17*cm])
header_table.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,-1), colors.HexColor("#1565c0")),
("TOPPADDING", (0,0), (-1,-1), 6),
("BOTTOMPADDING", (0,0), (-1,-1), 6),
("LEFTPADDING", (0,0), (-1,-1), 10),
("RIGHTPADDING", (0,0), (-1,-1), 6),
("ROUNDEDCORNERS", [4,4,4,4]),
]))
elements.append(header_table)
# Gross description box
elements.append(Paragraph("GROSS DESCRIPTION", SECTION_HEAD))
for line in gross_lines:
elements.append(Paragraph(line, BODY))
# Viva Q&A
elements.append(Paragraph("VIVA QUESTIONS & ANSWERS", SECTION_HEAD))
for i, (q, a) in enumerate(viva_pairs, 1):
elements.append(Paragraph(f"Q{i}. {q}", VIVA_Q))
elements.append(Paragraph(f"<b>Ans:</b> {a}", VIVA_A))
elements.append(HRFlowable(width="100%", thickness=0.5,
color=colors.HexColor("#bbdefb"), spaceAfter=6))
return elements
story = []
# ---- COVER ----
story.append(Spacer(1, 1.5*cm))
story.append(Paragraph("GROSS PATHOLOGY SPECIMENS", TITLE_STYLE))
story.append(Paragraph("Gross Descriptions & Systemic Pathology Viva Questions", SUBTITLE_STYLE))
story.append(Paragraph("Based on Robbins & Cotran Pathologic Basis of Disease", SUBTITLE_STYLE))
story.append(Paragraph("For 2nd Year MBBS University Practical Examination", SUBTITLE_STYLE))
story.append(Spacer(1, 0.4*cm))
story.append(HRFlowable(width="100%", thickness=1.5, color=colors.HexColor("#1565c0"), spaceAfter=8))
# ======== SPECIMENS ========
# 1. LIPOMA
story += specimen_block(1, "LIPOMA", [
"<b>Size/Shape:</b> Well-circumscribed, encapsulated, soft, lobulated mass. Usually 1-5 cm.",
"<b>Color:</b> Bright yellow (mature fat).",
"<b>Consistency:</b> Soft, doughy, greasy/oily.",
"<b>Cut Section:</b> Yellow fat lobules separated by thin fibrous septa. Thin fibrous capsule.",
"<b>Location:</b> Subcutis of proximal extremities and trunk. Slides out of surrounding tissue easily.",
], [
("What is a lipoma?",
"Benign tumor of mature adipocytes; most common soft tissue tumor in adults; arises in subcutis of proximal extremities and trunk during middle adulthood."),
("What chromosome is involved?",
"Rearrangements involving chromosome 12q, dysregulating the HMGA2 gene (regulator of chromatin structure)."),
("What is lipomatosis?",
"Multifocal lipomas, sometimes involving a large region such as the shoulder."),
("What is the malignant counterpart?",
"Liposarcoma - characterized by lipoblasts (cells with scalloped nuclei indented by cytoplasmic fat vacuoles)."),
("What are the variants of lipoma?",
"Conventional lipoma, angiolipoma (painful, vascular), spindle cell lipoma, pleomorphic lipoma, hibernoma (brown fat)."),
])
# 2. FATTY LIVER
story += specimen_block(2, "FATTY LIVER (Hepatic Steatosis)", [
"<b>Size:</b> Enlarged liver, may weigh up to 4-6 kg (normal ~1.5 kg).",
"<b>Color:</b> Pale yellow to yellow-tan.",
"<b>Surface:</b> Smooth.",
"<b>Consistency:</b> Soft, greasy, friable - cuts easily like butter.",
"<b>Cut Section:</b> Greasy, yellowish parenchyma; edges are rounded.",
"<b>Special feature:</b> 'Floats on water' due to increased fat content.",
], [
("What are the types of steatosis?",
"Macrovesicular (large fat droplets displacing nucleus - alcoholic liver disease, obesity, T2DM) and Microvesicular (small droplets - acute fatty liver of pregnancy, Reye syndrome, tetracycline toxicity)."),
("What is the predominant form in alcoholic liver disease?",
"Macrovesicular steatosis; begins in centrilobular (zone 3) hepatocytes and spreads outward."),
("What stain confirms fat in liver sections?",
"Oil Red O or Sudan Black (on frozen sections - fat dissolves in routine paraffin processing)."),
("What is MASLD?",
"Metabolic Dysfunction-Associated Steatotic Liver Disease - fatty liver associated with metabolic syndrome (obesity, T2DM, dyslipidemia, hypertension); replaces older term NAFLD."),
("Name the progression of alcoholic liver disease.",
"Fatty liver (steatosis) → Alcoholic hepatitis → Alcoholic cirrhosis."),
])
# 3. ACUTE APPENDICITIS
story += specimen_block(3, "ACUTE APPENDICITIS", [
"<b>Size:</b> Appendix is swollen, tense, and enlarged.",
"<b>Serosa:</b> Dull, granular, erythematous (loss of normal glistening appearance); subserosal vessels congested.",
"<b>Lumen:</b> May contain a faecolith (calcified concretion).",
"<b>Advanced cases:</b> Mucosal ulceration, intramural abscess, green-black gangrenous areas (gangrenous appendicitis).",
"<b>Perforation:</b> May be visible as a hole with surrounding faecal contamination.",
], [
("What is the diagnostic histological criterion?",
"Neutrophilic infiltration of the muscularis propria (not just the mucosa alone)."),
("What is the most common cause?",
"Luminal obstruction by faecolith (most common in adults) or lymphoid hyperplasia (most common in children)."),
("What is the most common complication?",
"Perforation leading to peritonitis or peri-appendicular abscess."),
("What is the most common age group?",
"Adolescents and young adults (10-30 years); lifetime risk ~7%; males slightly more affected."),
("What organisms are commonly implicated?",
"Escherichia coli, Bacteroides fragilis (mixed aerobic/anaerobic flora)."),
])
# 4. CARCINOMA STOMACH
story += specimen_block(4, "CARCINOMA STOMACH", [
"<b>Ulcerative type (most common):</b> Irregular ulcer with heaped-up, everted, irregular margins; floor is necrotic and shaggy; usually in lesser curvature/antrum.",
"<b>Fungating type:</b> Large, irregular, cauliflower-like mass projecting into lumen.",
"<b>Linitis plastica (leather-bottle stomach):</b> Diffuse thickening of entire stomach wall; rigid, rubbery; lumen narrowed; due to diffuse signet-ring cell infiltration.",
"<b>Superficial spreading:</b> Flat lesion confined to mucosa/submucosa (early gastric cancer).",
], [
("What is the most common type of gastric carcinoma?",
"Adenocarcinoma (>90%)."),
("What are the Lauren classification types?",
"Intestinal type (well-differentiated, glandular, H. pylori-associated, better prognosis) and Diffuse type (poorly differentiated, signet-ring cells, CDH1 mutation, worse prognosis)."),
("What is Virchow's node?",
"Enlarged left supraclavicular lymph node - metastasis from gastric carcinoma via the thoracic duct."),
("What is Krukenberg tumor?",
"Bilateral metastatic deposits in the ovaries from gastric carcinoma (signet-ring cells in desmoplastic stroma); transcoelomic spread."),
("What is Sister Mary Joseph nodule?",
"Periumbilical metastasis from gastric (or other GI/pelvic) carcinoma."),
("Name precancerous conditions of stomach.",
"Chronic atrophic gastritis with intestinal metaplasia, gastric adenoma, H. pylori gastritis, pernicious anemia, Menetrier's disease."),
])
# 5. INFARCT SPLEEN
story += specimen_block(5, "INFARCT SPLEEN", [
"<b>Shape:</b> Wedge-shaped (pyramidal) area with apex at hilum and base at capsule.",
"<b>Color:</b> Fresh = red-brown to gray; Old (organized) = pale, yellow-white.",
"<b>Consistency:</b> Old infarct is firm, shrunken, depressed below capsule surface.",
"<b>Location:</b> Follows splenic artery territories (end arteries).",
"<b>Surrounding tissue:</b> Congested splenic parenchyma.",
], [
("What type of infarct does the spleen show?",
"Anemic (white/pale) infarct - firm parenchyma with end arteries and little collateral supply."),
("What are common causes of splenic infarct?",
"Embolism (cardiac thrombi in AF, endocarditis), sickle cell disease, myeloproliferative disorders (polycythemia vera, CML)."),
("What is autosplenectomy?",
"Repeated splenic infarcts in sickle cell disease leading to a shrunken, fibrotic, non-functional spleen."),
("Why is the infarct wedge-shaped?",
"Because the splenic arteries are end arteries with segmental distribution."),
("What is 'sugar-icing spleen'?",
"Fibrous thickening (hyalinosis) of the splenic capsule (perisplenitis), seen over infarcted areas."),
])
# 6. MULTINODULAR COLLOID GOITRE
story += specimen_block(6, "MULTINODULAR COLLOID GOITRE", [
"<b>Size:</b> Enlarged thyroid, asymmetrically multinodular, may weigh 100-500 g.",
"<b>Color:</b> Brown, gelatinous, translucent colloid in follicles.",
"<b>Cut section:</b> Large colloid-filled follicles; areas of hemorrhage, fibrosis, calcification, cystic degeneration.",
"<b>Nodules:</b> Variable sizes; no individual capsule; separated by fibrous stroma.",
], [
("What is the cause of multinodular goitre?",
"Iodine deficiency (most common worldwide - endemic goitre); sporadic form in iodine-adequate areas."),
("What is the histological hallmark?",
"Variable-sized follicles (macro and microfollicles) filled with colloid; flat to cuboidal follicular epithelium; areas of fibrosis, hemorrhage, and calcification."),
("What is Pemberton's sign?",
"Flushing and jugular venous distension when arms are raised above head - due to thoracic inlet obstruction from retrosternal goitre."),
("What is the role of TSH in goitre?",
"Iodine deficiency → low T3/T4 → increased TSH → follicular cell hyperplasia → repeated cycles → nodule formation."),
("Can multinodular goitre undergo malignant transformation?",
"Yes, but rarely; carcinoma (usually follicular) can develop within a nodule."),
])
# 7. FIBROADENOMA BREAST
story += specimen_block(7, "FIBROADENOMA BREAST", [
"<b>Shape:</b> Well-circumscribed, encapsulated, spherical/oval, mobile mass.",
"<b>Size:</b> Usually 1-3 cm.",
"<b>Color:</b> Gray-white to tan on cut section.",
"<b>Cut section:</b> Slightly lobulated, whorled appearance; cleft-like spaces (compressed ducts).",
"<b>Edges:</b> Smooth and well-defined - slides out of surrounding tissue (shelling out).",
"<b>No necrosis or hemorrhage.</b>",
], [
("What is the most common benign tumor of the breast?",
"Fibroadenoma (most common in women aged 20-35 years)."),
("What are the two histological patterns?",
"Intracanalicular (stroma compresses ducts into slit-like spaces) and Pericanalicular (stroma surrounds rounded open ducts). Both may coexist."),
("What hormonal influence drives fibroadenoma?",
"Estrogen - grows during pregnancy/lactation; regresses post-menopause."),
("What is a giant/juvenile fibroadenoma?",
"Size >5 cm; seen in adolescent girls; rapidly growing."),
("What is phyllodes tumor?",
"Fibroepithelial tumor with hypercellular stroma and 'leaf-like' architecture; can be benign, borderline, or malignant; higher recurrence than fibroadenoma."),
])
# 8. CARCINOMA BREAST
story += specimen_block(8, "CARCINOMA BREAST", [
"<b>Consistency:</b> Irregular, hard, gritty, scirrhous (stony hard).",
"<b>Margins:</b> Ill-defined, stellate (star-shaped) configuration.",
"<b>Cut section:</b> Grayish-white to yellowish-white with chalky white streaks (elastosis); no encapsulation.",
"<b>Skin changes:</b> Peau d'orange (edema), dimpling, nipple retraction (Cooper's ligament involvement).",
"<b>Areas of necrosis</b> may be present; invades surrounding fat.",
], [
("What is the most common type of breast carcinoma?",
"Invasive ductal carcinoma (IDC) / No Special Type (NST) - ~70-80%."),
("What is peau d'orange?",
"'Orange peel' appearance of skin due to dermal lymphatic invasion causing skin edema with tethering of hair follicles."),
("What are the receptor types and their significance?",
"ER (estrogen receptor), PR (progesterone receptor), HER2/neu - used for treatment. Triple negative (ER-, PR-, HER2-) has worst prognosis."),
("What is Paget's disease of nipple?",
"Involvement of nipple/areola skin by tumor cells (Paget cells); always associated with underlying DCIS."),
("What is inflammatory breast carcinoma?",
"Aggressive form with dermal lymphatic invasion; red, warm, swollen breast; worst prognosis."),
("What is DCIS?",
"Ductal carcinoma in situ - malignant ductal cells confined within ducts; no breach of basement membrane."),
])
# 9. LEIOMYOMA UTERUS
story += specimen_block(9, "LEIOMYOMA UTERUS (Fibroid)", [
"<b>Shape:</b> Well-circumscribed, firm, rubbery, spherical nodule(s).",
"<b>Color:</b> White to grayish-white.",
"<b>Cut section:</b> Characteristic whorled (trabecular) pattern; sharp demarcation from myometrium.",
"<b>Size:</b> Variable - few mm to >20 cm.",
"<b>Degenerative changes:</b> Calcification ('womb stones'), cystic degeneration, red/carneous degeneration (pregnancy), hyaline degeneration.",
], [
("What is the most common tumor of the female genital tract?",
"Leiomyoma (fibroid) - most common in women aged 30-50."),
("What are the locations of fibroids?",
"Intramural (most common), submucosal (causes menorrhagia), subserosal (causes pressure symptoms), cervical, pedunculated."),
("What is red (carneous) degeneration?",
"Hemorrhagic infarction of fibroid due to venous thrombosis, classically during pregnancy; presents with acute pain."),
("What hormonal influence?",
"Estrogen-dependent - grows during reproductive years, regresses after menopause."),
("What is the malignant counterpart?",
"Leiomyosarcoma - arises de novo (NOT from leiomyoma). Defined by >10 mitoses/10 HPF, coagulative tumor necrosis, and cytologic atypia."),
])
# 10. CARCINOMA ENDOMETRIUM
story += specimen_block(10, "CARCINOMA ENDOMETRIUM", [
"<b>Location:</b> Most commonly in fundus/body of uterus.",
"<b>Gross type:</b> Fungating, polypoid, or papillary mass arising from endometrium.",
"<b>Color:</b> Gray-white, soft, friable with areas of necrosis and hemorrhage.",
"<b>Wall:</b> May infiltrate myometrium (thickened, firm).",
"<b>Early:</b> Localized polyp-like lesion at fundus.",
], [
("What are the two types of endometrial carcinoma (Bokhman)?",
"Type I: endometrioid, estrogen-related, obesity/nulliparity/late menopause, associated with EIN/hyperplasia, better prognosis. Type II: serous/clear cell, non-estrogen related, older atrophic women, p53 mutation, worse prognosis."),
("What is the precursor lesion?",
"Endometrial intraepithelial neoplasia (EIN) / atypical endometrial hyperplasia for Type I carcinoma."),
("What are risk factors?",
"Unopposed estrogen (obesity, exogenous estrogen, PCOS, estrogen-secreting tumors), nulliparity, late menopause, diabetes, hypertension, Lynch syndrome (HNPCC)."),
("What is the most common presenting symptom?",
"Postmenopausal bleeding."),
("What genes are mutated in Type I vs Type II?",
"Type I: PTEN, microsatellite instability, KRAS, beta-catenin. Type II: p53, HER2."),
])
# 11. SEROUS CYSTADENOMA
story += specimen_block(11, "SEROUS CYSTADENOMA (Ovary)", [
"<b>Shape:</b> Unilocular (usually) smooth-walled cyst.",
"<b>Fluid:</b> Clear, watery (serous), straw-colored.",
"<b>Wall:</b> Thin and translucent; may have small papillary projections on inner surface.",
"<b>External surface:</b> Smooth.",
"<b>Size:</b> Few cm to very large.",
], [
("What is the most common ovarian tumor?",
"Serous cystadenoma - most common benign ovarian tumor; serous tumors are most common ovarian epithelial tumors."),
("What cell type lines serous cystadenoma?",
"Tall columnar ciliated epithelium resembling fallopian tube epithelium."),
("What are psammoma bodies?",
"Laminated calcified concentric rings found in serous tumors (benign and malignant); also in papillary thyroid carcinoma and meningioma."),
("What is the malignant counterpart?",
"Serous cystadenocarcinoma - most common malignant ovarian tumor; bilateral in 50-60%; associated with BRCA1/BRCA2 mutations."),
("What is a borderline (LMP) tumor?",
"Low malignant potential tumor - epithelial proliferation without stromal invasion; intermediate prognosis."),
])
# 12. MUCINOUS CYSTADENOMA
story += specimen_block(12, "MUCINOUS CYSTADENOMA (Ovary)", [
"<b>Shape:</b> Multilocular cyst (multiple locules separated by thin septa).",
"<b>Size:</b> Largest of ovarian tumors (can be enormous).",
"<b>Fluid:</b> Thick, viscous, mucinous (gelatinous) material.",
"<b>Wall:</b> Thin; inner lining smooth.",
"<b>Cut section:</b> 'Honeycomb' appearance from multiple locules; pale gray to white.",
], [
("What epithelium lines mucinous cystadenoma?",
"Tall columnar mucin-secreting epithelium resembling endocervical or intestinal epithelium (goblet cells in intestinal type)."),
("What is pseudomyxoma peritonei?",
"Accumulation of mucinous material throughout the peritoneal cavity from rupture of a mucin-secreting tumor (most commonly appendiceal origin). 'Jelly belly.'"),
("How does mucinous differ from serous cystadenoma?",
"Mucinous: multilocular, larger, mucinous fluid, non-ciliated cells. Serous: unilocular, watery fluid, ciliated cells, psammoma bodies."),
("What is the malignant counterpart?",
"Mucinous cystadenocarcinoma (less common than serous cystadenocarcinoma)."),
])
# 13. TERATOMA OVARY (MATURE)
story += specimen_block(13, "MATURE CYSTIC TERATOMA (Dermoid Cyst) - Ovary", [
"<b>External:</b> Smooth-walled unilocular cyst.",
"<b>Contents:</b> Hair (most characteristic), sebaceous/cheesy yellowish material, teeth, bone, cartilage.",
"<b>Rokitansky protuberance:</b> Solid elevated nodule on inner cyst wall from which hair tufts and teeth arise.",
"<b>Wall:</b> Lined by stratified squamous epithelium (skin).",
"<b>Size:</b> Usually 5-10 cm; 10-15% bilateral.",
], [
("What is the most common ovarian germ cell tumor?",
"Mature cystic teratoma (dermoid cyst) - accounts for ~95% of ovarian teratomas."),
("What germ cell layers are represented?",
"All three: ectoderm (skin, hair, neural), mesoderm (bone, cartilage, muscle), endoderm (thyroid, GI epithelium)."),
("What is struma ovarii?",
"Teratoma where thyroid tissue is the predominant component (>50%); can cause hyperthyroidism."),
("What is the malignant transformation rate?",
"About 1-2%; usually squamous cell carcinoma from skin component; mainly in elderly women."),
("What is the most common complication?",
"Torsion (due to long pedicle); also rupture (chemical peritonitis from sebaceous contents)."),
])
# 14. BRONCHIECTASIS
story += specimen_block(14, "BRONCHIECTASIS", [
"<b>Definition:</b> Irreversible, permanent dilatation of bronchi and bronchioles.",
"<b>Cut section:</b> Markedly dilated bronchi reaching pleural surface (normally bronchi don't reach pleura); purulent secretions in lumen.",
"<b>Types:</b> Cylindrical (uniform), Varicose (irregular/beaded), Saccular/Cystic (flask-shaped, most severe).",
"<b>Walls:</b> Thickened and fibrotic.",
"<b>Surrounding lung:</b> Fibrosis, consolidation, or collapse.",
], [
("What are the common causes?",
"Post-infective (TB, whooping cough, measles - most common), cystic fibrosis (bilateral upper lobe), Kartagener syndrome, allergic bronchopulmonary aspergillosis, immunodeficiency."),
("What is Kartagener syndrome?",
"Triad of bronchiectasis + sinusitis + situs inversus; due to primary ciliary dyskinesia (dynein arm defect); impaired mucociliary clearance."),
("What lobes are commonly affected?",
"Lower lobes bilaterally (gravity-dependent pooling of secretions); TB causes upper lobe bronchiectasis."),
("What is the 'tram-track sign' on CXR?",
"Parallel lines indicating thickened, dilated bronchial walls - characteristic radiological sign."),
("What are the complications?",
"Recurrent pneumonia, hemoptysis, lung abscess, secondary (AA) amyloidosis, cor pulmonale, empyema."),
])
# 15. TB LUNG
story += specimen_block(15, "TB LUNG (Pulmonary Tuberculosis)", [
"<b>Primary TB - Ghon focus:</b> Subpleural pale gray caseating nodule (1-1.5 cm), usually in mid-zone. + Caseous hilar lymph nodes = Ghon complex.",
"<b>Secondary (Reactivation) TB:</b> Upper lobe lesions (apical/posterior segments); caseation necrosis (soft, cheese-like material); cavitation (thick-walled cavities with irregular inner surface).",
"<b>Miliary TB:</b> Millet seed-sized (1-2 mm) gray-white nodules scattered throughout both lungs.",
"<b>Old lesions:</b> Fibrosis and calcification.",
], [
("What is a Ghon focus?",
"Primary subpleural focus of caseating granuloma (usually in mid-zone/lower lobe) in primary TB."),
("What is Ghon complex?",
"Ghon focus + ipsilateral hilar/mediastinal lymph node involvement = primary complex (Ranke complex)."),
("What is caseation necrosis?",
"Coagulative necrosis in which the necrotic material has a soft, cheese-like appearance; due to lipid-rich cell walls of mycobacteria; specific for TB (also histoplasmosis)."),
("What is a Langhans giant cell?",
"Multinucleated giant cell with nuclei arranged in a horseshoe/peripheral pattern; seen in TB and other granulomatous diseases."),
("Why does TB preferentially affect upper lobes in reactivation?",
"Higher oxygen tension and reduced lymphatic drainage in upper lobes favor mycobacterial growth."),
("What is the stain for TB?",
"Ziehl-Neelsen stain (acid-fast bacilli appear red on blue background); Auramine-rhodamine for fluorescence."),
("What is Rasmussen's aneurysm?",
"Pulmonary artery aneurysm in the wall of a TB cavity; rupture causes massive hemoptysis."),
])
# 16. TESTICULAR TUMOUR
story += specimen_block(16, "TESTICULAR TUMOUR", [
"<b>Seminoma:</b> Large, lobulated, homogeneous, creamy-white to grayish-white; soft to firm; replaces testis; no necrosis in pure seminoma; tunica albuginea intact.",
"<b>Teratoma:</b> Heterogeneous; cysts, cartilage, hair, mucoid areas; multilocular.",
"<b>Yolk Sac Tumor:</b> Mucinous, gelatinous cut surface; most common in infants.",
"<b>Choriocarcinoma:</b> Hemorrhagic, necrotic mass; small primary with massive metastases.",
], [
("What is the classification of testicular tumors?",
"Germ cell tumors (90-95%): seminoma and non-seminomatous (NSGCT: embryonal carcinoma, teratoma, yolk sac tumor, choriocarcinoma). Sex cord-stromal: Leydig cell, Sertoli cell."),
("What tumor marker is elevated in seminoma?",
"PLAP (placental alkaline phosphatase); beta-hCG mildly elevated in 15%. AFP is NOT elevated in pure seminoma."),
("What marker is elevated in yolk sac tumor?",
"AFP (alpha-fetoprotein) - most useful marker."),
("What marker is elevated in choriocarcinoma?",
"Beta-hCG (very high levels); associated with gynecomastia."),
("What is the most common testicular tumor in adults?",
"Seminoma (peak age 30-40 years); in infants - yolk sac tumor."),
("What is cryptorchidism?",
"Undescended testis; increases risk of testicular germ cell tumor (4-6x higher risk) in both the undescended AND the contralateral testis."),
])
# 17. CARCINOMA PENIS
story += specimen_block(17, "CARCINOMA PENIS", [
"<b>Type:</b> Squamous cell carcinoma (SCC).",
"<b>Location:</b> Glans penis or prepuce (most common).",
"<b>Gross:</b> Gray-white, irregular, ulcerating or verrucous (warty) mass.",
"<b>In situ lesion:</b> Red, velvety plaque (Erythroplasia of Queyrat on glans; Bowen's disease on shaft).",
"<b>Invasion:</b> Infiltration of corpora cavernosa in advanced disease.",
], [
("What is the most common type of penile carcinoma?",
"Squamous cell carcinoma (SCC)."),
("What is the association with HPV?",
"HPV 16 and 18 - strongly associated with penile SCC, especially in uncircumcised men. Circumcision is protective."),
("What are premalignant conditions of penis?",
"Bowen disease (SCC in situ of shaft skin), Erythroplasia of Queyrat (SCC in situ of glans), Bowenoid papulosis (multifocal, HPV-related), leukoplakia."),
("What is Buschke-Lowenstein tumor?",
"Giant condyloma acuminatum - locally aggressive but not truly malignant; caused by HPV-6 and HPV-11; verrucous carcinoma."),
("What is the lymphatic drainage of the penis?",
"Superficial and deep inguinal lymph nodes (first echelon nodes)."),
])
# 18. CHRONIC PYELONEPHRITIS
story += specimen_block(18, "CHRONIC PYELONEPHRITIS", [
"<b>Size:</b> Kidney is shrunken, reduced in weight.",
"<b>Surface:</b> Coarse, broad, irregular scars with depressed areas.",
"<b>Key feature:</b> Cortical scars overlie dilated, blunted calyces (calyceal blunting) - distinguishes from hypertensive nephrosclerosis.",
"<b>Pelvis/calyces:</b> Dilated and distorted with fibrotic, thickened walls.",
"<b>Parenchyma:</b> Cortex thinned; relatively preserved between scars.",
], [
("What is the hallmark gross feature?",
"Coarse, asymmetric cortical scars overlying dilated, blunted calyces (calyceal involvement + overlying scar)."),
("What is the most common causative organism?",
"E. coli (80%); also Proteus, Klebsiella, Enterococcus."),
("What is vesicoureteral reflux (VUR)?",
"Retrograde flow of urine from bladder into ureter/kidney; major predisposing factor; leads to reflux nephropathy."),
("What is xanthogranulomatous pyelonephritis?",
"Rare form with foamy macrophages (lipid-laden), associated with Proteus infection and staghorn calculi; gross: yellow nodules replacing parenchyma."),
("What are complications?",
"Hypertension, end-stage renal disease (ESRD), increased risk of urothelial carcinoma (analgesic nephropathy variant)."),
])
# 19. RENAL CELL CARCINOMA
story += specimen_block(19, "RENAL CELL CARCINOMA", [
"<b>Location:</b> Usually solitary, spherical, cortical mass; most common in upper pole.",
"<b>Color:</b> Bright yellow-orange to gray (variegated/multicolored due to hemorrhage, necrosis, cystic change).",
"<b>Capsule:</b> Pseudocapsule (compressed renal parenchyma).",
"<b>Special feature:</b> Extension into renal vein - 'tumor thrombus' (characteristic of RCC).",
"<b>Surface:</b> Nodular.",
], [
("What is the most common type of RCC?",
"Clear cell RCC (70-80%) - cells have clear cytoplasm due to lipid and glycogen content washing out in processing."),
("What gene is mutated in clear cell RCC?",
"VHL (von Hippel-Lindau) tumor suppressor gene on chromosome 3p25; both sporadic and familial (VHL disease)."),
("What is the classic triad of RCC?",
"Flank pain + hematuria + palpable flank mass ('too late triad' - present in only 10%, indicates advanced disease)."),
("What are paraneoplastic syndromes of RCC?",
"Polycythemia (ectopic EPO), hypercalcemia (PTHrP), hypertension (renin), Stauffer syndrome (non-metastatic hepatic dysfunction)."),
("What is VHL disease?",
"Autosomal dominant; bilateral multifocal clear cell RCC + hemangioblastomas (cerebellum, retina) + pheochromocytoma + pancreatic/renal cysts."),
])
# 20. GALL BLADDER STONES
story += specimen_block(20, "GALL BLADDER STONES (Cholelithiasis)", [
"<b>Cholesterol stones:</b> Single/multiple; pale yellow-white; round/faceted; crystalline pattern on cut; radiolucent on X-ray.",
"<b>Black pigment stones:</b> Small, coal-black, hard, friable, multiple; hemolytic anemia/cirrhosis.",
"<b>Brown pigment stones:</b> Soft, greasy, earthy-brown; biliary infection; found in ducts.",
"<b>Gallbladder wall:</b> May be thickened (chronic cholecystitis); 'strawberry gallbladder' (cholesterolosis) - yellow flecks on mucosa.",
], [
("What are the '5 F's' for cholesterol gallstone risk?",
"Female, Fat (obese), Fertile (multiparity), Forty (>40 years), Fair (European/Native American descent)."),
("What conditions predispose to pigment stones?",
"Black stones: chronic hemolysis (sickle cell, hereditary spherocytosis), cirrhosis, ileal resection. Brown stones: biliary tract infection/stasis."),
("What is Charcot's triad?",
"Fever + RUQ pain + jaundice = acute cholangitis (ascending infection in bile duct)."),
("What is Courvoisier's law?",
"Palpable, non-tender gallbladder in jaundice unlikely due to gallstones (scarred GB cannot dilate); suggests carcinoma of pancreatic head."),
("What is Mirizzi syndrome?",
"External compression of the common hepatic duct by a large stone in Hartmann's pouch, causing obstructive jaundice."),
])
# 21. SCC SKIN
story += specimen_block(21, "SQUAMOUS CELL CARCINOMA (SCC) - Skin", [
"<b>Gross:</b> Irregular, indurated, ulcerated lesion with raised, everted, rolled edges.",
"<b>Base:</b> Indurated and necrotic.",
"<b>Surface:</b> Keratinized; may show keratin horn/pearl.",
"<b>May appear as:</b> Nodule, plaque, or cauliflower-like mass.",
"<b>Surrounding skin:</b> May show actinic keratosis.",
], [
("What is the most common carcinogen for cutaneous SCC?",
"UV-B radiation (sunlight); damages DNA via pyrimidine dimer formation; mutations in TP53."),
("What are precancerous lesions for SCC?",
"Actinic (solar) keratosis (most common), Bowen's disease (SCC in situ), leukoplakia, erythroplakia, Marjolin's ulcer (scar/burn), chronic sinus tracts."),
("What is Marjolin's ulcer?",
"SCC arising in a chronic scar, burn scar, or sinus tract; typically well-differentiated but locally aggressive; arises in areas of chronic inflammation."),
("What are keratin pearls?",
"Whorled concentrically laminated structures of squamous cells with central keratin; seen in well-differentiated SCC."),
("What is the histological hallmark of SCC?",
"Pleomorphic squamous cells with individual cell keratinization, intercellular bridges, keratin pearls, and breach of basement membrane."),
])
# 22. CA COLON
story += specimen_block(22, "CARCINOMA COLON", [
"<b>Right colon (cecum/ascending):</b> Large, fungating/polypoid, cauliflower-like mass projecting into lumen; soft, necrotic; rarely obstructs.",
"<b>Left colon (sigmoid/descending):</b> Annular (napkin-ring) constricting lesion encircling bowel wall; causes obstruction; 'apple-core' on barium enema.",
"<b>Cut section:</b> Thickened wall with gray-white infiltrating tumor.",
], [
("What are the precancerous conditions of colon?",
"Adenomatous polyps (tubular, tubulovillous, villous), FAP, HNPCC/Lynch syndrome, ulcerative colitis (>8-10 years), Crohn's colitis."),
("What is the adenoma-carcinoma sequence?",
"APC mutation (initiating) → adenoma → K-RAS, SMAD4, TP53 mutations → carcinoma (Vogelstein model)."),
("What is Dukes staging?",
"A: limited to wall; B: through wall into serosa/fat; C: lymph node involvement; D: distant metastasis."),
("What is the most common site for colon carcinoma metastasis?",
"Liver (via portal vein), then lungs."),
("Why does right-sided differ from left-sided colon cancer?",
"Right: wide lumen, liquid stool → fungating, presents with occult blood/anemia. Left: narrow lumen, solid stool → annular, presents with obstruction."),
])
# 23. FAP COLON
story += specimen_block(23, "FAP COLON (Familial Adenomatous Polyposis)", [
"<b>Specimen:</b> Total colectomy; colon carpeted with hundreds to thousands (>100, often >1000) of polyps.",
"<b>Distribution:</b> Throughout entire length of colon and rectum.",
"<b>Polyps:</b> Sessile and pedunculated; small (few mm) to larger; intervening mucosa normal.",
"<b>Malignant transformation:</b> One or more appear irregular, ulcerated, indurated.",
], [
("What is the genetic defect in FAP?",
"Germline mutation of APC (adenomatous polyposis coli) gene on chromosome 5q21 - autosomal dominant."),
("At what age does FAP manifest?",
"Polyps appear in adolescence/early adulthood; carcinoma develops in virtually 100% by age 40-50 if untreated."),
("What is Gardner's syndrome?",
"FAP + osteomas (mandible, skull) + desmoid tumors + epidermoid cysts + supernumerary teeth + fundic gland polyps."),
("What is Turcot syndrome?",
"FAP + CNS tumors (medulloblastoma with APC mutation; glioblastoma with MMR mutation)."),
("What is the treatment?",
"Prophylactic total colectomy (late adolescence/early adulthood); surveillance for duodenal/periampullary carcinoma."),
])
# 24. OSTEOSARCOMA
story += specimen_block(24, "OSTEOSARCOMA", [
"<b>Location:</b> Metaphysis of long bones (distal femur > proximal tibia > proximal humerus - around the knee most common).",
"<b>Cut section:</b> Grayish-white, gritty (bony), fleshy, or hemorrhagic areas (variegated).",
"<b>Cortex:</b> Destroyed; periosteal reaction: Codman's triangle at margins.",
"<b>Soft tissue extension:</b> Common.",
"<b>X-ray feature:</b> 'Sunburst' pattern from radial spicules of reactive/tumor bone.",
], [
("What is the most common primary malignant bone tumor in young adults?",
"Osteosarcoma (peak age 10-20 years; second peak in elderly with Paget's disease)."),
("What is Codman's triangle?",
"Triangular area of periosteal bone elevation at tumor margins on X-ray; formed where elevated periosteum meets the cortex."),
("What is the 'sunburst' pattern?",
"Radial spicules of reactive/tumor bone extending from cortex into soft tissue; classic for osteosarcoma on X-ray."),
("What genes are implicated?",
"RB1 (retinoblastoma gene) loss predisposes to osteosarcoma; TP53 mutation (Li-Fraumeni syndrome)."),
("What is the histological hallmark?",
"Malignant spindle cells producing osteoid (unmineralized bone matrix) directly - the defining feature."),
])
# 25. OSTEOCLASTOMA
story += specimen_block(25, "OSTEOCLASTOMA (Giant Cell Tumor of Bone)", [
"<b>Location:</b> Epiphysis of long bones (unique); distal femur, proximal tibia, distal radius most common; extends to subarticular surface.",
"<b>X-ray:</b> 'Soap-bubble' appearance (multiple loculations); eccentric position.",
"<b>Cut section:</b> Reddish-brown, soft, fleshy; areas of cystic change, hemorrhage (hemosiderin), necrosis.",
"<b>Cortex:</b> Expanded and thinned ('eggshell cortex').",
], [
("What are the two cell types?",
"Mononuclear stromal cells (true neoplastic cells - RANKL-expressing) and multinucleated osteoclast-like giant cells (reactive, RANK+, CD68+)."),
("What is the typical age group?",
"20-40 years (skeletally mature adults); rare before epiphyseal closure."),
("What is the biologic behavior?",
"Locally aggressive; 40-60% recurrence after curettage; 1-2% malignant transformation; rare pulmonary metastases (may be benign)."),
("What is the significance of RANKL in giant cell tumor?",
"Stromal cells express RANKL → recruits RANK+ osteoclast precursors; denosumab (anti-RANKL) is used for unresectable/recurrent GCT."),
])
# 26. CIRRHOSIS
story += specimen_block(26, "CIRRHOSIS OF LIVER", [
"<b>Size:</b> Shrunken (may be enlarged in early/active stage).",
"<b>Surface:</b> Diffusely nodular, firm, 'hobnail' or cobblestone appearance.",
"<b>Cut section:</b> Regenerative nodules (brownish-yellow) separated by gray-white fibrous septa.",
"<b>Micronodular:</b> Uniform nodules <3 mm (alcoholic cirrhosis - Laennec's).",
"<b>Macronodular:</b> Variable large nodules >3 mm (post-hepatitic/viral cirrhosis).",
], [
("What is the definition of cirrhosis?",
"Diffuse transformation of entire liver into parenchymal nodules surrounded by fibrous septa with loss of normal lobular architecture and regenerative nodule formation."),
("What are the common causes?",
"Alcohol (most common in Western world), chronic viral hepatitis B and C, MASLD/NASH, autoimmune hepatitis, Wilson's disease, hemochromatosis, primary biliary cholangitis."),
("What are the complications of portal hypertension?",
"Esophageal varices (massive hematemesis), splenomegaly, ascites, caput medusae, hemorrhoids, hepatic encephalopathy."),
("What is hepatic stellate cell (Ito cell) activation?",
"Key mechanism of fibrosis: quiescent stellate cells (store vitamin A) activated by TGF-beta → myofibroblasts → collagen production → fibrosis."),
("What is the most serious complication of cirrhosis?",
"Hepatocellular carcinoma (HCC) - especially with HBV, HCV, hemochromatosis. Also SBP, hepatorenal syndrome."),
])
# 27. HASHIMOTO'S THYROIDITIS
story += specimen_block(27, "HASHIMOTO'S THYROIDITIS", [
"<b>Size:</b> Diffusely, symmetrically enlarged (goitre); weight 60-200 g.",
"<b>Consistency:</b> Firm, rubbery.",
"<b>Cut section:</b> Pale, grayish-tan, lobulated, firm parenchyma; loss of normal brown glistening appearance.",
"<b>No necrosis or cysts</b> in uncomplicated cases; fibrous septa prominent.",
], [
("What is the pathogenesis?",
"Autoimmune: T-cell-mediated destruction (CD8+ cytotoxic + CD4+ helper T cells) + antibody-mediated (anti-TPO, anti-thyroglobulin); HLA-DR3, HLA-DR5 association."),
("What are the characteristic antibodies?",
"Anti-thyroid peroxidase (anti-TPO/microsomal antibody) - most sensitive; Anti-thyroglobulin antibody."),
("What is the histological hallmark?",
"Dense lymphocytic infiltration with germinal center formation + Hurthle (Askanazy) cells (enlarged follicular cells with abundant eosinophilic granular cytoplasm) + follicular atrophy."),
("What is Riedel's thyroiditis?",
"Rare; dense fibrous replacement of thyroid and surrounding tissues; 'iron-hard' thyroid; IgG4-related disease; can cause tracheal compression."),
("What malignancy is Hashimoto's associated with?",
"Primary thyroid lymphoma (MALT type - marginal zone B-cell lymphoma) and papillary thyroid carcinoma."),
])
# 28. PAPILLARY CARCINOMA THYROID
story += specimen_block(28, "PAPILLARY CARCINOMA OF THYROID", [
"<b>Capsule:</b> Unencapsulated (or incomplete capsule); infiltrative.",
"<b>Consistency:</b> Firm; gritty/sandy feel due to psammoma bodies.",
"<b>Color:</b> White to grayish-white.",
"<b>Size:</b> Variable; microcarcinoma <1 cm; may be cystic.",
"<b>May be:</b> Multifocal; chalky-white with calcifications (psammoma bodies).",
], [
("What is the most common thyroid malignancy?",
"Papillary carcinoma (~75-85% of all thyroid cancers)."),
("What are the nuclear features?",
"Ground glass ('Orphan Annie eye') nuclei, nuclear grooves, intranuclear cytoplasmic pseudo-inclusions, overlapping nuclei."),
("What are psammoma bodies?",
"Laminated calcified concentric spherules (dead papillae that calcify); present in ~40-50%; pathognomonic when found in lymph nodes."),
("What mutations are associated?",
"BRAF V600E mutation (most common, ~60%); RET/PTC rearrangements; RAS mutations; TERT promoter mutations (worse prognosis)."),
("What is the behavior and prognosis?",
"Excellent prognosis (>95% 10-year survival); early lymph node spread (does NOT worsen prognosis significantly); may be multifocal/bilateral."),
("What is the association with radiation?",
"Childhood radiation exposure (Chernobyl) strongly associated via RET/PTC rearrangements."),
])
# 29. COLONIC POLYP
story += specimen_block(29, "COLONIC POLYP", [
"<b>Pedunculated:</b> Mushroom/cauliflower-shaped mass on a stalk (peduncle); soft, pink-red; smooth or lobulated surface.",
"<b>Sessile:</b> Broad-based, flat; directly attached to mucosa without stalk.",
"<b>Villous adenoma:</b> Often sessile, large (3-10 cm), velvety/frond-like surface.",
"<b>Hyperplastic polyp:</b> Small (<5 mm), sessile, smooth, pale; most common colorectal polyp.",
], [
("What is the classification of colorectal polyps?",
"Neoplastic (adenomatous: tubular, tubulovillous, villous) and Non-neoplastic (hyperplastic, inflammatory/pseudopolyps in UC, hamartomatous in Peutz-Jeghers, juvenile polyps)."),
("Which polyp has the highest malignant potential?",
"Villous adenoma (40% risk if >4 cm); tubulovillous intermediate; tubular adenoma lowest (~5% risk)."),
("What features increase malignant potential?",
"Size >2 cm, villous histology, severe dysplasia, sessile morphology, multiple polyps."),
("What is Peutz-Jeghers syndrome?",
"Autosomal dominant (STK11/LKB1 mutation); hamartomatous polyps throughout GI tract + mucocutaneous pigmentation (lips, buccal mucosa, digits); increased cancer risk."),
("What is a pseudopolyp?",
"Islands of regenerating mucosa surrounded by ulceration in ulcerative colitis; non-neoplastic (inflammatory polyps)."),
])
# 30. IMMATURE TERATOMA OVARY
story += specimen_block(30, "IMMATURE TERATOMA - OVARY", [
"<b>Gross:</b> Predominantly solid, large mass with some cystic areas.",
"<b>Cut section:</b> Heterogeneous; areas of necrosis and hemorrhage; brain-like gray areas (immature neuroepithelium).",
"<b>No hair or teeth</b> (unlike mature teratoma).",
"<b>Size:</b> Usually large (10-20 cm); unilateral.",
], [
("How do you distinguish mature from immature teratoma?",
"Mature teratoma: all three germ layers fully differentiated (adult-type tissues); Immature teratoma: contains fetal/embryonic tissue - especially immature neuroepithelium (primitive neural tubes/rosettes) - graded I-III by amount."),
("What is the age group for immature teratoma?",
"Predominantly in the first two decades of life; contrast mature cystic teratoma (reproductive age women)."),
("What tumor markers are elevated?",
"AFP may be elevated in immature teratoma; beta-hCG elevated if choriocarcinoma element present."),
("What is the significance of Rokitansky protuberance in mature teratoma?",
"Solid nodule on inner cyst wall - contains most differentiated tissues (teeth, bone, hair); area most likely to undergo malignant transformation."),
("What is monodermal teratoma?",
"Teratoma consisting predominantly of one tissue type: Struma ovarii (thyroid tissue) or Carcinoid tumor (neuroendocrine)."),
])
# ---- SUMMARY TABLE ----
story.append(PageBreak())
story.append(Paragraph("QUICK REFERENCE SUMMARY TABLE", TITLE_STYLE))
story.append(Spacer(1, 0.3*cm))
table_data = [
[Paragraph("Specimen", TABLE_HEADER),
Paragraph("Key Gross Feature", TABLE_HEADER),
Paragraph("Key Viva Point", TABLE_HEADER)],
]
rows = [
("Lipoma", "Encapsulated, yellow, soft, lobulated", "HMGA2, chromosome 12q"),
("Fatty liver", "Enlarged, yellow, greasy, floats on water", "Macrovesicular - alcoholic; Oil Red O stain"),
("Acute appendicitis", "Congested, dull serosa, faecolith", "Neutrophils in muscularis = diagnostic"),
("Ca stomach", "Ulcerative (malignant ulcer) / Linitis plastica", "Lauren types; Virchow's node; Krukenberg"),
("Splenic infarct", "Wedge-shaped, pale, subcapsular", "End arteries; autosplenectomy in SCD"),
("MN colloid goitre", "Multinodular, brown colloid, calcifications", "Iodine deficiency; TSH-driven"),
("Fibroadenoma breast", "Encapsulated, whorled, gray-white", "Intracanalicular vs Pericanalicular"),
("Ca breast", "Hard, gritty, stellate, scirrhous", "ER/PR/HER2; peau d'orange; Paget's"),
("Leiomyoma uterus", "Whorled, white, well-circumscribed", "Estrogen-dependent; carneous degeneration"),
("Ca endometrium", "Polypoid/fungating, fundus, necrotic", "Type I (PTEN/estrogen) vs Type II (p53)"),
("Serous cystadenoma", "Unilocular, clear fluid, thin wall", "Psammoma bodies; BRCA (malignant)"),
("Mucinous cystadenoma", "Multilocular, thick mucin, huge", "Pseudomyxoma peritonei"),
("Mature cystic teratoma", "Hair, teeth, sebaceous, Rokitansky", "Struma ovarii; 1-2% malignant transformation"),
("Bronchiectasis", "Dilated bronchi to pleura, purulent", "Kartagener; tram-track; lower lobes"),
("TB lung", "Caseation, cavitation, upper lobe", "Ghon complex; Langhans cells; ZN stain"),
("Testicular tumour", "Creamy-white (seminoma) / variegated (NSGCT)", "AFP (YST); PLAP (seminoma); cryptorchidism"),
("Ca penis", "Ulcerating SCC glans/prepuce", "HPV 16/18; Erythroplasia of Queyrat"),
("Chr. pyelonephritis", "Coarse scars over blunted calyces", "VUR; E. coli; calyceal involvement"),
("RCC", "Variegated, yellow-orange, pseudocapsule", "VHL; clear cell; paraneoplastic; vein invasion"),
("Gallstones", "Yellow (cholesterol) or black/brown (pigment)", "Courvoisier's law; Charcot's triad; 5 F's"),
("SCC skin", "Indurated, everted edges, keratin", "Marjolin's ulcer; actinic keratosis; UV-B"),
("Ca colon (R)", "Fungating/polypoid", "Portal mets; adenoma-carcinoma sequence"),
("Ca colon (L)", "Annular/napkin-ring", "Apple-core on barium enema"),
("FAP colon", "Hundreds of polyps, carpet of polyps", "APC gene 5q21; Gardner's; 100% cancer"),
("Osteosarcoma", "Metaphysis, gritty, Codman's triangle", "RB1; sunburst pattern; peak 10-20 yr"),
("Osteoclastoma", "Epiphysis, reddish-brown, soap-bubble", "RANKL; 20-40 yr; denosumab"),
("Cirrhosis", "Nodular, firm, shrunken, hobnail", "Micronodular (alcohol) vs macronodular (viral)"),
("Hashimoto's", "Diffuse firm goitre, pale-gray", "Anti-TPO; Hurthle cells; thyroid lymphoma"),
("Papillary Ca thyroid", "White, gritty, unencapsulated", "Orphan Annie nuclei; BRAF V600E; psammoma"),
("Colonic polyp", "Pedunculated or sessile", "Villous = highest risk; >2 cm, dysplasia"),
("Immature teratoma", "Solid, necrotic, brain-like gray tissue", "Immature neuroepithelium; AFP elevated"),
]
alt = False
for r in rows:
bg = colors.HexColor("#e3f2fd") if alt else colors.white
table_data.append([
Paragraph(r[0], TABLE_CELL),
Paragraph(r[1], TABLE_CELL),
Paragraph(r[2], TABLE_CELL),
])
alt = not alt
col_widths = [4.2*cm, 6.5*cm, 6.3*cm]
summary_table = Table(table_data, colWidths=col_widths, repeatRows=1)
summary_table.setStyle(TableStyle([
("BACKGROUND", (0,0), (-1,0), colors.HexColor("#1565c0")),
("ROWBACKGROUNDS", (0,1), (-1,-1), [colors.white, colors.HexColor("#e3f2fd")]),
("TEXTCOLOR", (0,0), (-1,0), colors.white),
("FONTNAME", (0,0), (-1,0), "Helvetica-Bold"),
("FONTSIZE", (0,0), (-1,-1), 8),
("ALIGN", (0,0), (-1,0), "CENTER"),
("VALIGN", (0,0), (-1,-1), "TOP"),
("GRID", (0,0), (-1,-1), 0.5, colors.HexColor("#90caf9")),
("TOPPADDING", (0,0), (-1,-1), 4),
("BOTTOMPADDING", (0,0), (-1,-1), 4),
("LEFTPADDING", (0,0), (-1,-1), 5),
("RIGHTPADDING", (0,0), (-1,-1), 5),
]))
story.append(summary_table)
story.append(Spacer(1, 0.5*cm))
story.append(Paragraph(
"Reference: Robbins & Cotran Pathologic Basis of Disease (10th ed., ISBN 9780443264528) and "
"Robbins & Kumar Basic Pathology (11th ed., ISBN 9780323790185).",
NOTE_STYLE))
doc.build(story)
print(f"PDF created: {OUTPUT}")
cd /home/daytona/workspace/pathology-viva && python3 generate_pdf.py 2>&1
ls -lh /home/daytona/workspace/pathology-viva/Gross_Pathology_Viva_Robbins.pdf
Gross Pathology Viva Robbins
PDF Document · PDF
Thanks