Describe I detail about breast topic for surgery postgraduate study purpose. Anatomy, malignant and non malignant breast pathologies, relevant Histopathology, clinical features, investigation (triple assessment), staging, management, recent advances

Reading File
Now let me run parallel searches across all major breast topics:
Finding Sources
Finding Sources
Finding Sources
Finding Sources
Finding Sources
Reading File
Reading File
Good - I found the Sabiston chapter structure and the Fischer anatomy section. Now let me read the detailed content from the key breast sections:
Reading File
Reading File
Finding Sources
Finding Sources
Excellent! Now let me read the critical sections - Bailey & Love triple assessment, Mulholland TNM staging, and Fischer's breast cancer content:
Reading File
Reading File
Reading File
Excellent content. Now let me read more content - the full Bailey & Love section on breast diseases, pathology from Robbins, and surgical management:
Reading File
Reading File
Finding Sources
Searching PubMed

breast cancer management surgery sentinel lymph node

Reading File
Reading File
Searching PubMed

breast cancer neoadjuvant chemotherapy CDK4/6 immunotherapy recent advances

Reading File
Reading File
Searching PubMed

breast cancer CDK4/6 inhibitor trastuzumab deruxtecan PARP inhibitor

Reading File
Reading File
Reading File
Reading File
I now have comprehensive content from multiple authoritative textbooks. Let me compile the full surgical PG-level answer:

BREAST - Comprehensive Surgical Postgraduate Notes


1. SURGICAL ANATOMY OF THE BREAST

Position and Relations

The breast lies between the skin/subdermal fat and the superficial pectoral fascia, overlying the pectoralis major muscle (and, in its lateral tail, the serratus anterior). It extends from the 2nd to 6th ribs vertically and from the lateral sternal border to the mid-axillary line horizontally. A lateral prolongation - the axillary tail of Spence - passes through an opening in the deep fascia (foramen of Langer) into the axilla.

Fascial Relations

  • Superficial fascia encloses the breast in two layers (anterior and posterior)
  • Cooper's ligaments (suspensory ligaments): fibrous bands running between the chest wall and overlying dermis, providing structural support. When infiltrated by cancer or oedematous fluid, they cause skin dimpling / peau d'orange
  • Retromammary space: between the posterior breast and pectoralis fascia; contains loose areolar tissue allowing mobility; involved in advanced cancer

Internal Architecture

The breast is composed of three principal tissue types: glandular epithelium, fibrous stroma, and adipose tissue. The glandular system forms a branching, radially organized duct network spreading from the nipple-areolar complex (NAC):
  • 15-20 lobes, each ending in a lactiferous duct opening at the nipple
  • Each lactiferous duct has a dilated lactiferous sinus beneath the NAC
  • Progressive branching ends in terminal duct lobular units (TDLUs) - the functional and pathological unit; the source of most benign and malignant breast lesions
  • TDLUs are invested in intralobular stroma (loose, cellular) distinguished from interlobular stroma (dense, fibrous)
  • In adolescents: predominantly epithelium and stroma; post-menopause: glandular involution, replaced by adipose tissue

Blood Supply

  • Medial: Internal mammary (internal thoracic) artery - perforators via 2nd, 3rd, and 4th intercostal spaces (dominant supply, ~60%)
  • Lateral: Lateral thoracic artery and acromiothoracic branches of axillary artery
  • Intercostal perforators: 3rd-5th intercostal arteries

Venous Drainage

  • Internal thoracic vein, axillary vein, and intercostal veins
  • Batson's paravertebral venous plexus: anastomotic communication allowing haematogenous spread to vertebrae and skull without passing through lungs (explains bony metastases)

Nerve Supply

  • Lateral and anterior cutaneous branches of intercostal nerves (T4-T6) - sensory to the breast and NAC
  • T4 = main supply to NAC - critical preservation during mastectomy/BCS
  • Lymphatics of chest wall drain alongside internal thoracic vessels

Lymphatic Drainage (Critically Important for Surgery)

Axillary lymph nodes receive ~75% of lymph from the breast:
  • Level I (low axilla): lateral to pectoralis minor
  • Level II (mid-axilla): beneath pectoralis minor; includes interpectoral (Rotter's) nodes
  • Level III (apical): medial to pectoralis minor / infraclavicular - Halsted's node
Internal mammary (parasternal) nodes: receive ~25% of lymph, especially from inner quadrants. Now incorporated into radiation fields.
Supraclavicular nodes: involvement = N3 disease (not M1)
Sentinel lymph node (SLN): the first echelon node(s) in the lymphatic pathway from a tumour. Identified by Tc-99m labelled colloid (hot) + Patent blue dye (blue) - or fluorescence (ICG). The key to modern axillary staging.

2. NON-MALIGNANT (BENIGN) BREAST PATHOLOGIES

2a. Fibrocystic Change (Aberration of Normal Development and Involution - ANDI)

The ANDI concept explains most benign breast disease as aberrations of the normal cyclical hormonal changes:
  • Cysts (simple/complex): most common cause of breast lump in 30-50-year-old women; oestrogen-driven; green/blue-domed on aspiration; USS is first-line for young women - simple cysts require no further workup
  • Sclerosing adenosis: increased lobular acini +/- fibrosis; can mimic carcinoma on mammography (irregular density) and histology; pseudoinfiltrative appearance
  • Epithelial hyperplasia (usual-type): mild increase in cell layers; mild increased risk (~1.5x)
  • Atypical ductal hyperplasia (ADH): architecturally resembles low-grade DCIS but smaller; 4-5x increased breast cancer risk; becomes 10x if family history present
  • Atypical lobular hyperplasia (ALH): similar risk profile; marker of bilateral risk

2b. Fibroadenoma

The most common breast lump in women under 30 years.
  • Histology: benign proliferation of both intralobular stromal fibroblasts AND ductal epithelium (biphasic); the stromal cells push and distort the ducts (intracanalicular) or grow around them (pericanalicular)
  • Clinical: rubbery, firm, well-circumscribed, highly mobile ("breast mouse"), non-tender; 1-3 cm
  • USS: well-circumscribed, homogenous, hypoechoic, wider-than-tall; BI-RADS 3
  • Natural history: ~30% spontaneously involute within 2 years; giant fibroadenoma (>5 cm) in adolescents = juvenile fibroadenoma
  • Management: <30 years old with typical USS + benign CNB = reassurance + observation; >35 years or atypical features or enlarging = excision
  • Complex fibroadenoma (containing cysts, sclerosing adenosis, epithelial calcification, or papillary apocrine metaplasia): slight increase in cancer risk (~3x)

2c. Phyllodes Tumour

Stromal tumour with leaf-like architecture (Greek: phyllon = leaf); spectrum from benign to malignant.
  • Histology: cellular stroma with leaf-like fronds covered by epithelium; classified as benign, borderline, or malignant based on stromal cellularity, pleomorphism, mitotic figures, and margins
  • Clinical: rapid growth; large (>5 cm); distinguishable from fibroadenoma by CNB
  • Management: wide local excision (1 cm margins) for all grades; mastectomy if large; haematogenous spread (not lymphatic) in malignant variant - hence axillary clearance NOT required
  • Key distinction: malignant phyllodes metastasize to lung/liver via blood, NOT to lymph nodes

2d. Breast Abscess

  • Lactational: Staphylococcus aureus (most common) during first month of breastfeeding; treated with antibiotics + continued lactation; incision and drainage only if fluctuant/refractory
  • Non-lactational (periareolar abscess): associated with duct ectasia; mixed anaerobic infection; squamous metaplasia of ductal epithelium → keratin plug → secondary infection → fistula (mammary duct fistula); treat with excision of affected duct(s); recurrence common if merely drained
  • Idiopathic Granulomatous Mastitis (IGM): rare, mimics cancer clinically and radiologically; associated with prolactin, autoimmune disease; managed with steroids/methotrexate; surgery reserved for refractory disease

2e. Duct Ectasia / Periductal Mastitis

  • Dilated subareolar ducts filled with lipid-rich material; periductal inflammation
  • Presents with: nipple retraction (slit-like, distinguishable from the star-shaped retraction of cancer), multicoloured/green-black discharge, periareolar mass
  • Treatment: Hadfield's operation (excision of all major subareolar ducts = Duct excision)

2f. Intraductal Papilloma

  • Most common cause of bloody / serous nipple discharge in premenopausal women
  • Located in the major ducts below the NAC (solitary = benign, low risk)
  • Multiple peripheral papillomas: increased cancer risk
  • Diagnosis: USS + ductography (injection of contrast into the discharging duct); MRI ductography
  • Treatment: microdochectomy (excision of single affected duct) for solitary; total duct excision for multiple/bilateral

2g. Fat Necrosis

  • Post-traumatic or post-surgical; lipid-laden macrophages, foreign-body giant cells, fibrosis
  • Mimics carcinoma: hard, irregular mass, skin tethering, mammographic calcifications/spiculation
  • Core needle biopsy distinguishes from cancer; no treatment required if benign on CNB

2h. Gynaecomastia

  • Benign enlargement of male breast glandular tissue; excess oestrogen-to-androgen ratio
  • Causes: physiological (neonatal, pubertal, senile), drugs (spironolactone, digoxin, cimetidine, oestrogens, anti-androgens, marijuana), systemic disease (liver cirrhosis, renal failure, hyperthyroidism), testicular tumours (HCG/oestrogen-secreting)
  • Distinguish from male breast cancer (eccentric, hard, fixed, in elderly)
  • Management: treat underlying cause; subcutaneous mastectomy for persistent/cosmetically distressing

3. MALIGNANT BREAST PATHOLOGIES

3a. Epidemiology and Risk Factors

Breast cancer is the most common cancer in women worldwide (~1 in 8 lifetime risk in Western populations). Risk factors:
Risk FactorRelative Risk
Female sex / Increasing age>4.0
BRCA1/BRCA2 germline mutation>4.0
Strong family history (>1 first-degree relative)>4.0
Personal history of breast cancer>4.0
High breast density>4.0
Moderate penetrance mutations (PALB2, CHEK2, ATM)2-4x
Chest wall radiation at young age2-4x
ADH/ALH on prior biopsy4-5x
LCIS8-10x
Early menarche (<12 yrs) / late menopause (>55 yrs)1.1-2.0x
Nulliparity / first birth >30 yrs1.1-2.0x
HRT use / OCP use1.1-2.0x
Obesity (post-menopausal), alcohol1.1-2.0x
Protective factors: early pregnancy (<20 years), prolonged breastfeeding, physical activity, oophorectomy before 40.
BRCA1/2: BRCA1 mutations confer 60-80% lifetime risk of breast cancer and 40-50% risk of ovarian cancer; BRCA2 confers 50-85% risk of breast cancer and 20-30% ovarian risk. BRCA1-associated cancers are predominantly TNBC; BRCA2 more commonly ER-positive.

3b. Classification of Breast Cancer

Noninvasive (In Situ) - 15-20% of screen-detected cancers:
  • Ductal Carcinoma In Situ (DCIS): malignant cells confined within ductal basement membrane; various subtypes:
    • Comedo: central necrosis, calcification, high-grade, aggressive; coexists with HER2 overexpression
    • Cribriform: round punched-out spaces; bridges of cells spanning the lumen
    • Solid: fills the duct; moderately aggressive
    • Papillary and micropapillary: low-grade, oestrogen-receptor positive; more indolent
    • Key: DCIS calcifies → pleomorphic/linear microcalcifications on mammography (segmental distribution)
    • If untreated, transforms to invasive cancer (especially high-grade DCIS)
  • Lobular Carcinoma In Situ (LCIS): neoplastic cells in acini; small cells with compact bland nuclei; basement membrane intact; bilateral marker lesion (not treated as cancer per se); increases risk ~8-10x bilaterally
    • Pleomorphic LCIS is more aggressive and treated more like DCIS
Invasive Epithelial Cancers:
  • Invasive Ductal Carcinoma, NOS (IDC): 50-70% of all invasive cancers; cohesive mass; scirrhous (hard) due to desmoplastic stroma; irregular spiculated borders on mammography; stony hard on palpation
  • Invasive Lobular Carcinoma (ILC): 5-15%; single-file ("Indian file") pattern of infiltration; loss of E-cadherin (CDH1 mutation); often multifocal/bilateral; difficult to detect on clinical exam and mammography; better detected on MRI
  • Special types (generally better prognosis than IDC NOS):
    • Tubular carcinoma (2-3%): well-differentiated, pure tubule formation; >90% ER+; excellent prognosis
    • Mucinous (colloid) carcinoma (2-3%): cells floating in pools of extracellular mucin; better prognosis; elderly women
    • Medullary carcinoma (5%): large pleomorphic cells, syncytial growth, abundant lymphocytic infiltrate, pushing borders; paradoxically good prognosis; associated with BRCA1 mutations; often triple-negative
    • Adenoid cystic carcinoma (1%): cribriform; low grade; excellent prognosis
    • Micropapillary carcinoma: highly lymphovascular invasive; poor prognosis
    • Metaplastic carcinoma (1%): squamous or sarcomatoid elements; chemoresistant; usually TNBC
Mixed Connective and Epithelial Tumors:
  • Phyllodes tumour (malignant), carcinosarcoma, angiosarcoma (can occur secondary to lymphoedema - Stewart-Treves syndrome, or post-radiotherapy)
Special Clinical Entities:
  • Inflammatory Breast Cancer (IBC): T4d; skin erythema + oedema + peau d'orange involving >1/3 of breast; due to dermal lymphatic tumour emboli, NOT infection; diagnosis is clinical; biopsy of skin confirms dermal involvement; highly aggressive; treated with neoadjuvant chemotherapy first, then modified radical mastectomy + adjuvant radiation
  • Paget's Disease of the Nipple: eczematous change of the nipple-areola; Paget cells (large cells with pale cytoplasm) in the epidermis of the nipple; 97% associated with underlying DCIS or invasive carcinoma; diagnosis by skin punch biopsy; treat underlying breast malignancy

4. HISTOPATHOLOGY

Nottingham (Elston-Ellis) Histological Grade (for invasive cancers):

Scores tubule formation (1-3), nuclear pleomorphism (1-3), and mitotic count (1-3) - total score:
  • Grade 1 (Well differentiated): 3-5 points
  • Grade 2 (Moderately differentiated): 6-7 points
  • Grade 3 (Poorly differentiated): 8-9 points

Key Immunohistochemistry (IHC) Markers:

  • ER (Oestrogen Receptor): positive in ~70% of invasive cancers; guides endocrine therapy
  • PR (Progesterone Receptor): positive in ~60%; ER+/PR+ = best response to endocrine therapy
  • HER2 (Human Epidermal Growth Factor Receptor 2): positive (~15-20%); gene amplification on FISH/CISH when IHC 2+; guides trastuzumab/pertuzumab therapy
  • Ki-67: proliferation index; >14% used to define luminal B; high in TNBC and HER2+

Molecular Subtypes (Clinical Classification):

SubtypeERPRHER2FrequencyKey Points
Luminal A++-50-65%Low Ki-67; best prognosis; endocrine therapy; low chemo benefit
Luminal B (HER2-)+low/--Included in luminalHigh Ki-67; moderate prognosis; chemo often needed
Luminal B (HER2+)+low/-+Included in luminalAnti-HER2 + endocrine therapy
HER2-enriched--+~15%Anti-HER2 + chemo; poor prognosis before targeted therapy era
Triple Negative (TNBC)---~15%Highest metastatic risk; brain/visceral; chemo backbone; early relapse
Sources: Fischer's Mastery of Surgery 8th ed., Robbins & Kumar Basic Pathology

Histological Features of IDC:

  • Irregular infiltrative borders; desmoplastic stroma (stony hard clinically)
  • Tubule formation, nuclear pleomorphism, mitoses (Nottingham Grade)
  • Lymphovascular invasion (LVI): important adverse prognostic feature
  • Perineural invasion

ILC:

  • Single-file "Indian file" pattern
  • Small uniform cells with intracytoplasmic mucin vacuoles (signet-ring cells)
  • Loss of E-cadherin expression by IHC (CDH1 mutation/deletion)
  • Concentric ("targetoid") growth around pre-existing ducts

5. CLINICAL FEATURES

History:

  • Lump: onset, duration, change with menstrual cycle, pain
  • Skin changes: dimpling, peau d'orange, colour change, ulceration
  • Nipple changes: discharge (colour, unilateral/bilateral, spontaneous), retraction, eczema
  • Axillary lump (lymphadenopathy)
  • Systemic: weight loss, bone pain, breathlessness, jaundice (metastatic disease)
  • Risk factors: family history, OCP/HRT use, previous biopsies, radiation history

Examination:

Inspection (with arms by sides, above head, hands on hips - contracted pectoralis):
  • Asymmetry, skin changes, nipple changes, venous dilatation, prominent veins
  • Peau d'orange (skin oedema from blocked lymphatics)
  • Skin dimpling (Cooper's ligament involvement)
  • Nipple retraction (slit-like = duct ectasia; star-shaped = cancer)
Palpation (supine, arm above head for inner quadrants; arm by side for lateral):
  • Use pad of 3 fingers, "clock method" or concentric circles
  • Note: site (quadrant + clock face), size, shape, consistency, surface, borders, mobility (from skin above and pectoral fascia below), tenderness, skin fixity, pectoral muscle fixity
  • Malignant lump: hard, irregular, non-tender, fixed to skin or deep fascia, ill-defined borders
Axillary examination: level I, II, III nodes + supraclavicular fossa + infraclavicular region
Special signs of advanced breast cancer:
  • Skin fixity, peau d'orange, ulceration, satellite nodules
  • En cuirasse carcinoma: diffuse chest wall involvement with fibrosis
  • Axillary node fixity (N2)
  • Arm lymphoedema (blocked axillary vessels/nodes)
  • Supraclavicular nodes (N3)

6. INVESTIGATION - TRIPLE ASSESSMENT

Triple assessment (clinical + radiological + pathological) achieves ~100% positive predictive value for diagnosis. All three components must agree (concordance):

Component 1: Clinical Examination

  • E1 = normal; E2 = benign; E3 = probably benign; E4 = probably malignant; E5 = malignant

Component 2: Radiological Imaging

Mammography:
  • First-line investigation in women >35-40 years (dense tissue in young women limits sensitivity)
  • Low-voltage, high-amperage x-rays (~1 mGy per film)
  • Craniocaudal (CC) and mediolateral oblique (MLO) views standard
  • Mammographic signs of malignancy:
    • Stellate/spiculated density (most specific for malignancy)
    • Pleomorphic/heterogeneous microcalcifications (DCIS signature)
    • Asymmetric density
    • Architectural distortion
    • Skin thickening, nipple retraction, axillary adenopathy
BI-RADS Classification (Breast Imaging Reporting and Data System):
  • BI-RADS 0: Incomplete - needs additional imaging
  • BI-RADS 1: Negative - routine screening
  • BI-RADS 2: Benign - routine follow-up
  • BI-RADS 3: Probably benign (<2% malignancy risk) - 6-month follow-up
  • BI-RADS 4: Suspicious (2-95%) - biopsy recommended; 4A low, 4B intermediate, 4C high
  • BI-RADS 5: Highly suspicious (>95%) - biopsy required
  • BI-RADS 6: Known malignancy
Ultrasonography (USS):
  • First-line in young women (<35-40 years) with dense breasts
  • Distinguishes cystic (anechoic, posterior acoustic enhancement) from solid lesions
  • Features of benign solid lesion: well-defined, homogeneous, wider-than-tall, smooth margins
  • Features of malignancy: hypoechoic, irregular/spiculated margins, taller-than-wide, posterior acoustic shadowing, microcalcifications
  • Essential for axillary node staging (core biopsy suspicious nodes)
  • Guides needle localization and biopsy
MRI Breast:
  • Highest sensitivity (~95-99%) for invasive cancer; lower specificity
  • Indications: BRCA1/2 screening; extent of disease (ILC, multifocality); response to neoadjuvant chemotherapy; dense breasts or residual tissue post-augmentation; occult primary with axillary metastases; assessment of ipsilateral/contralateral breast
  • Dynamic contrast enhancement (DCE-MRI): rapid wash-in and wash-out of contrast = malignant kinetics
  • Limitations: expensive, claustrophobia, time-consuming; not used for routine screening

Component 3: Pathological Sampling

Fine Needle Aspiration Cytology (FNAC):
  • 21-23G needle; aspirate smeared and stained (Papanicolaou, MGG, H&E)
  • Reporting: C1 (inadequate), C2 (benign), C3 (atypical/probably benign), C4 (suspicious), C5 (malignant)
  • Advantages: quick, cheap, minimal trauma; good for cysts (therapeutic aspiration)
  • Limitations: cannot distinguish invasive from in-situ cancer; operator-dependent; no hormone receptor testing possible
  • Largely superseded by core needle biopsy in most centres
Core Needle Biopsy (CNB):
  • Standard of care for tissue sampling
  • 14G spring-loaded core gun or vacuum-assisted biopsy (8-11G VAB for calcifications/small lesions)
  • Performed under US or stereotactic (mammographic) guidance
  • Provides histological diagnosis with tumour type, grade, ER/PR/HER2/Ki-67 status
  • Reporting: B1 (normal), B2 (benign), B3 (uncertain malignant potential), B4 (suspicious), B5 (malignant): B5a = in-situ; B5b = invasive
  • A titanium clip is placed at biopsy site for future localization
  • Vacuum-assisted biopsy (VAB): used for calcification-only lesions (stereotactic biopsy) and small lesions; removes 12+ cores in single insertion
Sentinel Lymph Node Biopsy (SLNB):
  • In patients without clinical/radiological axillary involvement
  • Injection of Tc-99m sulphur colloid (radiocolloid) the day before + Patent blue dye intraoperatively (dual modality = gold standard, >95% identification rate)
  • ICG (indocyanine green) fluorescence is emerging as an alternative or addition
  • SLN excised and sent for intraoperative frozen section or one-step nucleic acid amplification (OSNA) - if positive, proceed to ALND or planned targeted axillary dissection

7. STAGING - AJCC 8th EDITION TNM

The 8th Edition AJCC (released 2017, implemented 2018) was the first staging system to incorporate non-anatomic prognostic factors (ER/PR/HER2 status, grade, genomic markers) into a "Prognostic Stage" in addition to the traditional anatomic TNM stage.

T - Primary Tumour:

TDescription
TXCannot be assessed
T0No evidence of primary tumour
TisCarcinoma in situ: Tis (DCIS) or Tis (Paget)
T1≤20 mm: T1mi (≤1mm microinvasion), T1a (>1-5mm), T1b (>5-10mm), T1c (>10-20mm)
T2>20mm to ≤50mm
T3>50mm
T4Any size with direct extension to chest wall (T4a), skin oedema/ulceration (T4b), both (T4c), inflammatory carcinoma (T4d)
Note: invasion into dermis alone does NOT qualify as T4; LCIS is no longer classified as Tis

N - Regional Lymph Nodes (Pathological pN):

pNDescription
pN0No regional LN metastasis
pN1miMicrometastasis >0.2mm but ≤2mm
pN11-3 positive axillary LN; and/or internal mammary LN by SLN (not clinically detected)
pN24-9 positive axillary LN; or clinically detected internal mammary LN
pN3≥10 positive axillary LN; or infraclavicular (Level III) LN; or clinically detected IM LN + axillary LN; or supraclavicular LN
Isolated tumour cells (ITC): clusters ≤0.2mm or <200 cells = pN0(i+) - not clinically significant

M - Distant Metastasis:

  • M0 = no distant metastasis; M1 = distant metastasis (including any non-regional lymph node)

Anatomic Stage Grouping:

StageDescription5-year Survival
Stage 0Tis N0 M0~100%
Stage IT1 N0 M0 (IA); T1 N1mi M0 (IB)~99%
Stage IIAT0-1 N1 M0; T2 N0 M0~90%
Stage IIBT2 N1 M0; T3 N0 M0~80%
Stage IIIAT0-3 N2 M0; T3 N1 M0~60-70%
Stage IIIBT4 N0-2 M0~50-60%
Stage IIICAny T N3 M0~40-50%
Stage IVAny T Any N M1~28% (5-yr)

Staging Workup:

  • Early breast cancer (Stage I-II): CNB with ER/PR/HER2/Ki-67; baseline bloods; no routine bone scan or CT (low yield in asymptomatic early disease)
  • Locally advanced/Stage III: CT chest/abdomen/pelvis + bone scan, or PET-CT (superior)
  • Genomic assays for early ER+/HER2-/LN- disease: Oncotype DX (21-gene recurrence score) - guides chemotherapy decision in early stage; MammaPrint (70-gene) - also validated for intermediate-risk node-positive disease

8. MANAGEMENT

8a. Principles of Multidisciplinary Management

Every breast cancer patient should be discussed in a Multidisciplinary Team (MDT) meeting comprising surgeon, medical oncologist, radiation oncologist, radiologist, pathologist, and breast care nurse.

8b. Surgical Management

Breast-Conserving Surgery (BCS) / Wide Local Excision (WLE):
  • Excision of tumour with clear margins (no ink on tumour = adequate margin; ≥2mm preferred for DCIS)
  • Equivalent survival to mastectomy when combined with adjuvant radiotherapy (landmark NSABP B-06 trial)
  • Contraindications to BCS:
    • Multiple tumours in different quadrants (multifocal)
    • Large tumour relative to breast size (poor cosmesis)
    • Unable to receive radiotherapy
    • Inflammatory breast cancer
    • Positive margins that cannot be cleared without mastectomy
    • Patient preference for mastectomy
  • Oncoplastic BCS: reshaping/remodeling techniques (volume replacement/displacement) to improve cosmetic outcomes after large excisions; level I-II oncoplasty for small excisions; level II (local flaps, reduction mammoplasty techniques) for larger
Mastectomy:
  • Total (simple) mastectomy: removes all breast tissue + NAC; pectoralis major preserved; used for prophylactic mastectomy, DCIS, early cancer not suitable for BCS
  • Modified Radical Mastectomy (MRM / Patey's operation): total mastectomy + axillary dissection (levels I-II, sometimes III); pectoralis major preserved; pectoralis minor excised to allow full axillary clearance
  • Radical mastectomy (Halsted): historical; removes breast + both pectoral muscles + axillary nodes; no longer standard
  • Skin-sparing mastectomy: preserves breast skin envelope; immediate reconstruction; NAC removed
  • Nipple-sparing mastectomy: preserves skin + NAC; for prophylactic surgery, select cases; inframammary fold incision; requires adequate nipple perfusion assessment
Localization of Non-palpable Lesions:
  • Wire-guided localization (traditional standard - painful, scheduling constraints)
  • ROLL (Radioguided Occult Lesion Localization): Tc-99m injected into lesion under imaging
  • Magseed / Radar reflector (SAVI Scout): placed at time of biopsy; localised intraoperatively with probe; no day-of-surgery procedure required
  • FIND (Fluoroscopic Intraoperative Neo-plasm Detection): locates radiopaque clip under fluoroscopy
Axillary Surgery:
  • Sentinel Lymph Node Dissection (SLND/SLNB): standard for clinically node-negative (cN0) patients; dual technique (radiocolloid + blue dye/ICG); replaced routine ALND for early breast cancer
  • Axillary Lymph Node Dissection (ALND): removes levels I and II nodes (minimum 10 nodes); for clinically positive axilla (cN1-3); positive SLN in selected patients; complications: lymphoedema (~15-20%), arm numbness, seroma
  • ACOSOG Z0011 trial: patients with 1-2 positive SLNs undergoing BCS + whole-breast radiation + systemic therapy do NOT require completion ALND - practice-changing
  • Axillary Reverse Mapping (ARM): maps and preserves lymphatics draining the arm during ALND to reduce lymphoedema risk

8c. Adjuvant Radiotherapy

After BCS:
  • Whole-breast irradiation (WBI): 40-50 Gy (standard) or hypofractionated 40Gy/15 fractions (equivalent, fewer visits)
  • Tumour bed boost (10-16 Gy): young patients (<40), close margins, high-grade
  • Accelerated Partial Breast Irradiation (APBI): treats only tumour cavity; intraoperative radiotherapy (IORT - TARGIT trial) or brachytherapy or external beam; selected low-risk patients
After Mastectomy (Post-Mastectomy Radiation Therapy - PMRT):
  • Standard for: T3/T4, ≥4 positive nodes, 1-3 positive nodes with high-risk features
  • Chest wall + regional nodes (internal mammary + supraclavicular)

8d. Systemic Therapy

Neoadjuvant Chemotherapy (NACT):
  • Indicated for: locally advanced (Stage III+), inflammatory breast cancer, large tumours where BCS is desired (downsizing), HER2+ and TNBC (to assess response and guide adjuvant therapy)
  • Pathological Complete Response (pCR) = no residual invasive cancer in breast + nodes; correlates with improved survival (especially TNBC, HER2+)
  • Residual disease after NACT = adverse prognostic sign; guides escalation of adjuvant therapy
Chemotherapy Regimens:
  • Anthracycline + taxane backbone: AC-T (doxorubicin/cyclophosphamide → paclitaxel) or FEC-T (5-FU/epirubicin/cyclophosphamide → docetaxel)
  • Dose-dense AC-T: every 2 weeks with G-CSF support; superior to every 3 weeks
Endocrine Therapy (ER-positive disease):
  • Tamoxifen (SERM): 5-10 years for premenopausal women; reduces recurrence ~40%; side effects: DVT/PE, endometrial cancer, hot flushes
  • Aromatase Inhibitors (AIs): letrozole, anastrozole, exemestane; postmenopausal women (or premenopausal with ovarian suppression); superior to tamoxifen in postmenopausal women
  • Ovarian suppression/ablation: goserelin (LHRH agonist) for premenopausal high-risk patients; combined with AI in very high-risk premenopausal patients (TEXT/SOFT trials)
  • Extended endocrine therapy: 10 years tamoxifen or 5 years tamoxifen → 5 years AI
HER2-targeted therapy:
  • Trastuzumab (Herceptin): humanized monoclonal antibody (mAb) to HER2; 1 year standard; added to chemotherapy reduces recurrence by ~50%
  • Pertuzumab: another anti-HER2 mAb (different epitope); added to neoadjuvant trastuzumab + docetaxel = "HP + chemo" regimen; improves pCR
  • T-DM1 (ado-trastuzumab emtansine): antibody-drug conjugate (ADC); used for residual HER2+ disease post-NACT (KATHERINE trial)
Triple-Negative Breast Cancer (TNBC):
  • Chemotherapy backbone: anthracycline + taxane ± carboplatin (for BRCA-mutated)
  • Pembrolizumab (PD-1 checkpoint inhibitor): added to NACT for early high-risk TNBC (KEYNOTE-522 trial); significant improvement in pCR and EFS
  • Olaparib (PARP inhibitor): for germline BRCA1/2-mutated HER2-negative patients in adjuvant setting (OlympiA trial) - reduces distant recurrence ~42%
  • Capecitabine: adjuvant therapy for residual TNBC after NACT (CREATE-X trial)
CDK4/6 Inhibitors (ER+/HER2-):
  • Palbociclib, ribociclib, abemaciclib combined with aromatase inhibitors for metastatic HR+/HER2- disease
  • Abemaciclib (monarchE trial): adjuvant use in high-risk ER+/HER2- early breast cancer with ≥4 positive nodes or 1-3 nodes with additional high-risk features; 2 years adjuvant abemaciclib + endocrine therapy significantly reduces IDFS
Bone-modifying Agents:
  • Bisphosphonates (zoledronate, clodronate): reduce bone metastases and improve overall survival in postmenopausal women on adjuvant therapy (EARLY Breast Cancer Trialists meta-analysis); DENOSUMAB also used

9. DUCTAL CARCINOMA IN SITU (DCIS) - Management

  • Surgery: BCS preferred with ≥2mm margins; mastectomy for large/multifocal DCIS
  • Radiation: whole-breast RT after BCS reduces local recurrence (NSABP B-17 and B-24 trials); risk reduction greatest in high-grade DCIS
  • Endocrine therapy: tamoxifen or anastrozole (postmenopausal) for ER-positive DCIS; reduces ipsilateral recurrence and contralateral cancer
  • SLNB: recommended if mastectomy planned (in case invasive component found) and for high-risk DCIS (grade 3, mass forming, >2 cm)
  • SentiNot trial: SPIO injection without upfront SLNB in DCIS; 78.7% avoided SLNB by this approach

10. BREAST RECONSTRUCTION

  • Timing: immediate (at time of mastectomy - preferred if no PMRT needed) or delayed
  • Implant-based: tissue expander → implant (2-stage); or direct-to-implant (1-stage); acellular dermal matrix (ADM) used to support lower pole
  • Autologous reconstruction:
    • Pedicled TRAM flap (transverse rectus abdominis musculocutaneous): reliable but significant donor site morbidity; uses rectus abdominis muscle
    • DIEP flap (deep inferior epigastric perforator): free flap; preserves rectus muscle; less donor morbidity; gold standard for autologous reconstruction
    • LD flap (latissimus dorsi): pedicled; combined with implant; useful after failed/irradiated sites; risk: shoulder weakness
    • SGAP flap (superior gluteal artery perforator): used when abdominal tissue unavailable
  • Contraindications to immediate reconstruction: inflammatory breast cancer (needs PMRT urgently), active smoking (relative), uncontrolled diabetes, high BMI

11. SCREENING

  • Population-based mammography screening: 3-yearly for ages 50-70 (UK NHS programme); annually 40-74 (US/ACS guidelines)
  • High-risk screening (BRCA+, strong family history): annual MRI from age 25-30 + annual mammography from age 30-40
  • Chemoprevention: tamoxifen/raloxifene/anastrozole offered to high-risk women (Gail model >1.66% 5-year risk)

12. RECENT ADVANCES

Surgical Advances:

  1. Nipple-sparing mastectomy: expanded indications; improved body image and cosmesis; oncologically safe with negative retroareolar margins
  2. Oncoplastic BCS: increasingly used to allow wider excisions without cosmetic compromise; reduces re-excision rates
  3. OSNA (One-Step Nucleic Acid Amplification): intraoperative SLN assessment using CK19 mRNA; higher sensitivity than frozen section; avoids second surgery
  4. Magnetic seed localization (Magseed) and SAVI Scout radar localization: allow lesion marking weeks before surgery; avoid day-of-surgery wire placement
  5. ACOSOG Z0011, AMAROS trials: validated omission of ALND in selected SLN+ patients; reduced morbidity

Systemic Therapy Advances:

  1. Trastuzumab deruxtecan (T-DXd / DS-8201): ADC of trastuzumab + topoisomerase I inhibitor deruxtecan; effective in HER2-low disease (HER2 IHC 1+ or 2+/FISH-) - DESTINY-Breast04 trial (PMID: 35665782); paradigm shift; previously HER2-low classified as HER2-negative; now a distinct targetable entity
  2. Pembrolizumab in TNBC: KEYNOTE-522 (neoadjuvant) and KEYNOTE-355 (metastatic) established immunotherapy in TNBC; PDL1 CPS ≥10 = biomarker for metastatic setting
  3. Olaparib / Talazoparib (PARP inhibitors): germline BRCA-mutated HER2-negative breast cancer; OlympiA trial for adjuvant use; [OlympiAD/EMBRACA for metastatic]
  4. Abemaciclib adjuvant (monarchE): CDK4/6 inhibitor in high-risk ER+/HER2- early breast cancer; reduces invasive disease-free survival events significantly
  5. Ribociclib in premenopausal/metastatic setting (MONALEESA trials): first CDK4/6 inhibitor to show overall survival benefit in premenopausal metastatic HR+/HER2-
  6. Elacestrant / Camizestrant: oral selective oestrogen receptor degraders (SERDs) for ESR1-mutated endocrine-resistant ER+ metastatic disease (EMERALD trial)
  7. Sacituzumab govitecan: TROP-2 targeted ADC; effective in metastatic TNBC (ASCENT trial) and ER+ endocrine-refractory disease (TROPiCS-02)
  8. Olaparib + trastuzumab + pertuzumab emerging combinations for BRCA+/HER2+ disease

Radiation Advances:

  1. Ultra-hypofractionation: 26 Gy/5 fractions FAST-Forward trial (equivalent to 40 Gy/15 fractions); very short RT course
  2. APBI and IORT (TARGIT-A trial): single dose intraoperative radiotherapy (20 Gy) at time of BCS; non-inferior to whole-breast RT in selected low-risk patients
  3. Proton beam therapy: reduced cardiac and pulmonary toxicity; particularly relevant for left-sided breast cancers; gaining wider use

Genomics and Precision Medicine:

  1. Oncotype DX recurrence score: validated in TAILORx trial; patients with RS 11-25 do NOT benefit from adjuvant chemotherapy (in ER+/HER2-/N0 patients <50 years: some benefit)
  2. MammaPrint (MINDACT trial): genomically low-risk patients can safely avoid chemotherapy even if clinically high-risk
  3. Liquid biopsy (circulating tumour DNA - ctDNA): emerging tool for early detection of recurrence, monitoring treatment response, and detecting ESR1/PIK3CA mutations guiding therapy change
  4. PI3K inhibitors: alpelisib (PIK3CA-mutated HR+/HER2- metastatic disease; SOLAR-1 trial) with fulvestrant; capivasertib (AKT inhibitor; CAPItello-291 trial)

Key Landmark Trials Summary (for PG Exams):

TrialFinding
NSABP B-06BCS + RT equivalent to mastectomy in survival
ACOSOG Z00111-2 +ve SLN: no need for ALND if BCS + WBI + systemic therapy
AMAROSPositive SLN: axillary RT equivalent to ALND (less lymphoedema)
NSABP B-17RT after BCS for DCIS reduces local recurrence
NSABP B-24Tamoxifen further reduces recurrence in DCIS after BCS + RT
TAILORxRS 11-25: chemo not beneficial in ER+/HER2-/N0 (>50 years)
KATHERINET-DM1 vs. trastuzumab for residual HER2+ post-NACT: ↑IDFS
KEYNOTE-522Pembrolizumab + NACT → surgery → adjuvant pembrolizumab ↑pCR in TNBC
OlympiAAdjuvant olaparib in gBRCA+ HER2-: ↓distant metastases
monarchEAdjuvant abemaciclib in high-risk ER+/HER2-: ↑IDFS
DESTINY-Breast04T-DXd in HER2-low: major improvement in PFS and OS
FAST-Forward26 Gy/5 fractions = 40 Gy/15 fractions (non-inferior)

Sources: Sabiston Textbook of Surgery 21st ed. (Townsend) | Bailey & Love's Short Practice of Surgery 28th ed. | Fischer's Mastery of Surgery 8th ed. | Robbins & Kumar Basic Pathology | Mulholland & Greenfield's Surgery 7th ed. | Robbins, Cotran & Kumar Pathologic Basis of Disease | Recent PubMed meta-analyses (PMID 39878175, 38668856, 41978828)The comprehensive surgical PG notes are compiled above. Here is a structured summary of what has been covered, drawn from Sabiston, Bailey & Love, Fischer's Mastery, Robbins Pathology, Mulholland & Greenfield, and recent PubMed meta-analyses:

What This Document Covers (Index)

  1. Surgical Anatomy - Position, Cooper's ligaments, TDLU, blood supply (internal mammary 60%), Batson's plexus (haematogenous spread route), lymphatic drainage (levels I/II/III axillary nodes, internal mammary nodes), sentinel node concept
  2. Non-Malignant Pathologies - ANDI framework, fibrocystic change, ADH/ALH (cancer risk markers), fibroadenoma (breast mouse, biphasic histology), phyllodes tumour (haematogenous spread, wide excision), breast abscess (lactational vs. periareolar/duct fistula), duct ectasia (Hadfield's operation), intraductal papilloma (microdochectomy), fat necrosis (mimics cancer), gynaecomastia
  3. Malignant Pathologies - Epidemiology, BRCA1/2 biology, full classification (DCIS subtypes, ILC Indian-file pattern, IDC NOS, special types), inflammatory breast cancer (T4d, dermal lymphatic emboli), Paget's disease
  4. Histopathology - Nottingham grading, IHC (ER/PR/HER2/Ki-67), molecular subtypes (Luminal A/B, HER2-enriched, TNBC), prognostic implications, ILC E-cadherin loss
  5. Clinical Features - Full examination technique, peau d'orange, signs of advanced disease
  6. Triple Assessment - Clinical (E1-5) + Radiological (mammography, USS, MRI, BI-RADS 0-6) + Pathological (FNAC C1-5, CNB B1-5, SLNB)
  7. AJCC 8th Edition Staging - Full T/N/M classification, anatomic vs. prognostic staging, genomic assays (Oncotype DX, MammaPrint)
  8. Management - MDT, BCS vs. mastectomy, ALND vs. SLNB (Z0011 trial), oncoplastic surgery, reconstruction (DIEP/TRAM/LD/implants), adjuvant RT, endocrine therapy, chemotherapy, targeted therapy
  9. DCIS Management - Surgery, RT, endocrine therapy, SentiNot trial
  10. Recent Advances - HER2-low (T-DXd/DESTINY-Breast04), TNBC immunotherapy (KEYNOTE-522), PARP inhibitors (OlympiA), CDK4/6 inhibitors (monarchE), oral SERDs (elacestrant/ESR1 mutations), liquid biopsy, ultra-hypofractionation RT, genomic assays
  11. Landmark Trial Table - 12 key trials condensed for exam revision

I can’t see the full output here. ?

The full content was generated in the previous response - it's very long (the complete surgical PG breast chapter). The issue is likely that your interface is truncating the display. Let me provide it as a downloadable document so you have everything in one place.
Reading File
Running Command

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

Running Command

mkdir -p /tmp/workspace/breast-surgery && python3 << 'PYEOF' from docx import Document from docx.shared import Pt, RGBColor, Inches, Cm from docx.enum.text import WD_ALIGN_PARAGRAPH from docx.oxml.ns import qn from docx.oxml import OxmlElement import copy doc = Document() # --- Page setup --- section = doc.sections[0] section.page_width = Inches(8.27) section.page_height = Inches(11.69) section.left_margin = Inches(1.0) section.right_margin = Inches(1.0) section.top_margin = Inches(1.0) section.bottom_margin = Inches(1.0) # --- Styles helpers --- def heading1(text): p = doc.add_heading(text, level=1) p.runs[0].font.color.rgb = RGBColor(0x1A, 0x35, 0x6E) # dark blue p.runs[0].font.size = Pt(16) return p def heading2(text): p = doc.add_heading(text, level=2) p.runs[0].font.color.rgb = RGBColor(0xC0, 0x39, 0x2B) # dark red p.runs[0].font.size = Pt(13) return p def heading3(text): p = doc.add_heading(text, level=3) p.runs[0].font.color.rgb = RGBColor(0x1A, 0x6E, 0x4A) # green p.runs[0].font.size = Pt(11) return p def para(text, bold_label=None): p = doc.add_paragraph() if bold_label: run = p.add_run(bold_label) run.bold = True p.add_run(text) p.paragraph_format.space_after = Pt(4) return p def bullet(text, level=0): p = doc.add_paragraph(text, style='List Bullet') p.paragraph_format.left_indent = Inches(0.25 * (level + 1)) p.paragraph_format.space_after = Pt(2) return p def add_table(headers, rows, col_widths=None): table = doc.add_table(rows=1 + len(rows), cols=len(headers)) table.style = 'Table Grid' hdr_cells = table.rows[0].cells for i, h in enumerate(headers): hdr_cells[i].text = h run = hdr_cells[i].paragraphs[0].runs[0] run.bold = True run.font.size = Pt(9) tc = hdr_cells[i]._tc tcPr = tc.get_or_add_tcPr() shd = OxmlElement('w:shd') shd.set(qn('w:val'), 'clear') shd.set(qn('w:color'), 'auto') shd.set(qn('w:fill'), '1A356E') tcPr.append(shd) hdr_cells[i].paragraphs[0].runs[0].font.color.rgb = RGBColor(0xFF, 0xFF, 0xFF) for r_idx, row_data in enumerate(rows): row_cells = table.rows[r_idx + 1].cells for c_idx, cell_text in enumerate(row_data): row_cells[c_idx].text = cell_text row_cells[c_idx].paragraphs[0].runs[0].font.size = Pt(9) if col_widths: for i, w in enumerate(col_widths): for row in table.rows: row.cells[i].width = Inches(w) doc.add_paragraph() # ============================================================ # TITLE PAGE # ============================================================ title = doc.add_paragraph() title.alignment = WD_ALIGN_PARAGRAPH.CENTER run = title.add_run('BREAST') run.bold = True run.font.size = Pt(28) run.font.color.rgb = RGBColor(0x1A, 0x35, 0x6E) subtitle = doc.add_paragraph() subtitle.alignment = WD_ALIGN_PARAGRAPH.CENTER run2 = subtitle.add_run('Comprehensive Surgical Postgraduate Notes') run2.bold = True run2.font.size = Pt(16) run2.font.color.rgb = RGBColor(0xC0, 0x39, 0x2B) info = doc.add_paragraph() info.alignment = WD_ALIGN_PARAGRAPH.CENTER info.add_run('Anatomy · Benign & Malignant Pathology · Histopathology\nTriple Assessment · TNM Staging · Management · Recent Advances').font.size = Pt(11) doc.add_paragraph() src = doc.add_paragraph() src.alignment = WD_ALIGN_PARAGRAPH.CENTER src.add_run('Sources: Sabiston Surgery 21e | Bailey & Love 28e | Fischer\'s Mastery 8e\nRobbins Pathology | Mulholland & Greenfield 7e | PubMed 2024-2026').font.size = Pt(9) doc.add_page_break() # ============================================================ # 1. SURGICAL ANATOMY # ============================================================ heading1('1. SURGICAL ANATOMY OF THE BREAST') heading2('1.1 Position and Relations') bullet('Lies between skin/subdermal fat and the superficial pectoral fascia, overlying pectoralis major') bullet('Vertical extent: 2nd to 6th rib; Horizontal: lateral sternal border to mid-axillary line') bullet('Axillary tail of Spence: lateral prolongation passing through foramen of Langer into axilla') bullet('Retromammary space: loose areolar tissue between posterior breast and pectoralis fascia — allows mobility; invaded in advanced cancer') heading2('1.2 Fascial Support — Cooper\'s Ligaments') bullet('Suspensory ligaments of Cooper: fibrous bands from chest wall to overlying dermis') bullet('Provide shape and structural support to the breast') bullet('Cancer infiltration or oedema → ligament tethering → SKIN DIMPLING / PEAU D\'ORANGE') bullet('Peau d\'orange: lymphatic blockage in dermis → skin oedema with follicular pitting') heading2('1.3 Internal Architecture') bullet('3 tissue types: (1) Glandular epithelium (2) Fibrous stroma (3) Adipose tissue') bullet('15–20 lobes, each ending in a lactiferous duct opening at the nipple') bullet('Lactiferous sinus: dilation of each duct beneath the NAC') bullet('Terminal Duct Lobular Unit (TDLU): acini + small ductules — FUNCTIONAL & PATHOLOGICAL UNIT') bullet('TDLUs surrounded by intralobular stroma (loose, cellular); distinct from interlobular stroma (dense, fibrous)') bullet('Post-menopause: glandular involution → replaced by adipose tissue') heading2('1.4 Blood Supply') add_table( ['Source', 'Supply', 'Notes'], [ ['Internal mammary (thoracic) artery', 'Medial breast (~60%)', 'Via 2nd–4th intercostal perforators — dominant supply'], ['Lateral thoracic artery', 'Upper outer quadrant', 'Branch of axillary artery'], ['Acromiothoracic artery', 'Upper breast', 'Branch of axillary artery'], ['Intercostal perforators (3rd–5th)', 'Lateral breast', 'From intercostal arteries'], ], col_widths=[2.0, 1.8, 2.6] ) heading2('1.5 Venous Drainage') bullet('Internal thoracic vein, axillary vein, intercostal veins') bullet('BATSON\'S PARAVERTEBRAL VENOUS PLEXUS: valveless venous plexus; anastomoses with breast veins') bullet(' → Haematogenous spread to vertebrae, skull, pelvis WITHOUT passing through lungs') bullet(' → Explains bony metastases as common first site of distant spread') heading2('1.6 Nerve Supply') bullet('Lateral and anterior cutaneous branches of intercostal nerves T4–T6') bullet('T4 = main sensory supply to nipple-areolar complex (NAC) — preserve during surgery') bullet('Long thoracic nerve (C5-7): supplies serratus anterior — injury → winged scapula') bullet('Thoracodorsal nerve (C6-8): supplies latissimus dorsi — injury → weak adduction/IR of arm') bullet('Medial pectoral nerve: supplies pectoralis major and minor') bullet('Lateral pectoral nerve: supplies pectoralis major') bullet('Intercostobrachial nerve (T2): cutaneous supply to medial upper arm — often sacrificed in ALND → numbness') heading2('1.7 Lymphatic Drainage — CRITICAL FOR SURGERY') para('', bold_label='AXILLARY NODES (~75% of lymphatic drainage):') add_table( ['Level', 'Location', 'Clinical Significance'], [ ['Level I (Low axilla)', 'Lateral to pectoralis minor', 'First echelon; most frequently involved'], ['Level II (Mid axilla)', 'Beneath pectoralis minor; includes Rotter\'s (interpectoral) nodes', 'Skip metastases to Level III uncommon (<5%)'], ['Level III (Apical)', 'Medial to pectoralis minor; infraclavicular', 'Halsted\'s node; N3 if isolated involvement'], ], col_widths=[1.5, 2.5, 2.4] ) bullet('Internal mammary (parasternal) nodes: ~25%, especially inner quadrants — irradiated in PMRT') bullet('Supraclavicular nodes: N3 disease (NOT M1)') bullet('Sentinel Lymph Node (SLN): first echelon node(s); identified by Tc-99m colloid (hot) + Patent blue dye (blue) or ICG fluorescence') doc.add_page_break() # ============================================================ # 2. BENIGN BREAST PATHOLOGIES # ============================================================ heading1('2. NON-MALIGNANT (BENIGN) BREAST PATHOLOGIES') heading2('2.1 ANDI — Aberrations of Normal Development and Involution') bullet('Conceptual framework explaining most benign breast conditions as aberrations of normal physiological processes') bullet('Development phase (puberty): fibroadenoma, juvenile hypertrophy') bullet('Cyclical changes (reproductive): cyclic mastalgia, diffuse nodularity') bullet('Involution (35–55 yrs): cysts, sclerosing adenosis, duct ectasia') heading2('2.2 Fibrocystic Change') bullet('Most common benign breast condition in women aged 30–50') bullet('Spectrum: cysts, adenosis, fibrosis, epithelial hyperplasia') bullet('Simple cysts: oestrogen-driven; USS = anechoic; no further workup needed; aspiration if painful') bullet('Sclerosing adenosis: proliferative lobules with fibrosis; mimics carcinoma on mammography and histology (pseudoinfiltrative)') bullet('Usual-type epithelial hyperplasia: >2 layers in duct; RR ~1.5×') bullet('Atypical Ductal Hyperplasia (ADH): architectural resemblance to low-grade DCIS but <2 ducts or <2mm; RR 4–5×; 10× with family history') bullet('Atypical Lobular Hyperplasia (ALH): fewer than half of acini in lobule distended; RR 4–5×; bilateral marker') heading2('2.3 Fibroadenoma') bullet('Most common breast lump in women UNDER 30 years (\"breast mouse\")') bullet('Histology: BIPHASIC — neoplastic intralobular stromal cells + reactive ductal epithelium') bullet(' Intracanalicular: stroma compresses ducts into slit-like spaces') bullet(' Pericanalicular: stroma grows around ducts (open, round lumina)') bullet('Clinical: rubbery, firm, well-circumscribed, very mobile, non-tender, 1–3 cm') bullet('USS: well-circumscribed, homogeneous, hypoechoic, wider-than-tall; BI-RADS 3') bullet('Natural history: ~30% spontaneously involute within 2 years') bullet('Giant fibroadenoma: >5cm; juvenile fibroadenoma in adolescents') bullet('Complex fibroadenoma: contains cysts/sclerosing adenosis/papillary apocrine change; RR ~3×') bullet('Management:') bullet(' <30 yrs, typical USS + benign CNB → reassurance + 12-month USS follow-up', level=1) bullet(' >35 yrs, enlarging, atypical, patient preference → surgical excision', level=1) heading2('2.4 Phyllodes Tumour') bullet('Fibroepithelial tumour with leaf-like architecture (Greek: phyllon = leaf)') bullet('Spectrum: Benign → Borderline → Malignant (based on stromal cellularity, atypia, mitoses, margins, stromal overgrowth)') bullet('Clinical: rapid growth, large (often >5cm), firm, lobulated; most in 45–50 yr range') bullet('Histology: leaf-like fronds of stroma covered by epithelium; intracanalicular pattern') bullet('KEY: malignant variant spreads HAEMATOGENOUSLY (lung, liver) — NOT via lymphatics → ALND NOT indicated') bullet('Management: WIDE LOCAL EXCISION with 1cm clear margins for all grades') bullet(' Mastectomy if large/multinodular/cannot achieve margins', level=0) bullet(' Recurrence common if margins inadequate', level=0) heading2('2.5 Breast Abscess') add_table( ['Type', 'Organism', 'Associations', 'Treatment'], [ ['Lactational (puerperal)', 'S. aureus (most common), Streptococci', 'First month of breastfeeding', 'Antibiotics + continued lactation; I&D only if fluctuant/refractory'], ['Non-lactational (periareolar)', 'Mixed anaerobes', 'Duct ectasia, squamous metaplasia, fistula formation', 'Antibiotics + I&D; excision of affected duct to prevent recurrence (duct fistula)'], ['Idiopathic Granulomatous Mastitis', 'None (sterile)', 'Autoimmune, hyperprolactinaemia; mimics cancer', 'Steroids/methotrexate; surgery for refractory cases'], ], col_widths=[1.5, 1.5, 2.0, 1.6] ) heading2('2.6 Duct Ectasia / Periductal Mastitis') bullet('Dilated subareolar ducts filled with lipid-rich material; periductal inflammation and fibrosis') bullet('Presents with: nipple retraction (SLIT-LIKE — cf. star-shaped in cancer), multicoloured discharge (green/black), periareolar mass') bullet('Mammary duct fistula: track between duct and periareolar skin; hallmark of chronic periductal mastitis') bullet('Treatment: Hadfield\'s operation = total duct excision (all major subareolar ducts en bloc)') heading2('2.7 Intraductal Papilloma') bullet('Most common cause of BLOODY / SEROUS NIPPLE DISCHARGE in premenopausal women') bullet('Solitary papilloma: in major subareolar duct; benign; low cancer risk') bullet('Multiple peripheral papillomas: increased cancer risk; association with atypical hyperplasia') bullet('Diagnosis: USS + ductography/galactography; MRI ductography if USS inconclusive') bullet('Treatment: microdochectomy (excision of single affected duct); total duct excision for multiple/bilateral') heading2('2.8 Fat Necrosis') bullet('Post-traumatic or post-surgical (including reduction mammoplasty, radiation)') bullet('Lipid-laden macrophages → foreign-body giant cells → fibrosis/calcification') bullet('MIMICS CARCINOMA: hard irregular mass, skin tethering, spiculated/calcified on mammography') bullet('CNB essential to distinguish from malignancy; no treatment needed if confirmed benign') heading2('2.9 Gynaecomastia (Male Breast)') bullet('Benign enlargement of glandular tissue; excess oestrogen-to-androgen ratio') bullet('Causes: Physiological (neonatal, pubertal, senile); Drugs (spironolactone, digoxin, cimetidine, oestrogens, anti-androgens, marijuana); Systemic disease (liver cirrhosis, CKD, hyperthyroidism); Testicular tumours (HCG/oestrogen-secreting)') bullet('Distinguish from MALE BREAST CANCER: eccentric, hard, fixed, unilateral, in elderly') bullet('Treatment: Treat underlying cause; subcutaneous mastectomy for cosmetically distressing/persistent') doc.add_page_break() # ============================================================ # 3. MALIGNANT BREAST PATHOLOGIES # ============================================================ heading1('3. MALIGNANT BREAST PATHOLOGIES') heading2('3.1 Epidemiology') bullet('Most common cancer in women worldwide; ~1 in 8 lifetime risk in Western populations') bullet('~2.3 million new cases globally per year (WHO 2020)') bullet('In men: ~1% of all breast cancers; associated with BRCA2, Klinefelter\'s syndrome') bullet('Peak incidence: 50–70 years; rare before 20 years (<2%)') heading2('3.2 Risk Factors') add_table( ['Risk Factor', 'Relative Risk'], [ ['Female sex / Increasing age', '>4.0'], ['BRCA1/BRCA2 germline mutation (BRCA1: 60–80% lifetime risk; BRCA2: 50–85%)', '>4.0'], ['Strong family history (>1 first-degree relative, young age)', '>4.0'], ['Personal history of breast cancer / LCIS', '>4.0'], ['High mammographic breast density', '>4.0'], ['Moderate penetrance mutations (PALB2, CHEK2, ATM)', '2–4×'], ['Chest wall radiation in childhood/young adulthood', '2–4×'], ['Atypical ductal/lobular hyperplasia (ADH/ALH)', '4–5×'], ['Early menarche (<12 yrs) / Late menopause (>55 yrs)', '1.1–2.0×'], ['Nulliparity / First pregnancy >30 yrs', '1.1–2.0×'], ['HRT (combined oestrogen + progestogen) / OCP use', '1.1–2.0×'], ['Obesity (post-menopausal), Alcohol use, Shift work', '1.1–2.0×'], ], col_widths=[4.2, 1.8] ) para('Protective factors: ', bold_label='') bullet('Early first pregnancy (<20 yrs), prolonged breastfeeding, physical activity, prophylactic oophorectomy before 40') para('', bold_label='BRCA Notes: ') bullet('BRCA1 cancers predominantly TNBC; BRCA2 more commonly ER-positive') bullet('BRCA1 also confers 40–50% ovarian cancer risk; BRCA2 20–30%') bullet('PALB2 mutations: 35% lifetime breast cancer risk; now offer BRCA-equivalent management') heading2('3.3 Classification of Breast Cancer') heading3('Non-Invasive (In Situ) Cancers — 15–20% of screen-detected cancers') add_table( ['Type', 'Features', 'Behaviour'], [ ['DCIS — Comedo', 'Central necrosis + calcification; high nuclear grade; HER2 overexpression common', 'High risk of progression; aggressive'], ['DCIS — Cribriform', 'Round punched-out spaces; bridges span lumen; intermediate grade', 'Lower risk than comedo'], ['DCIS — Solid', 'Fills ductal lumen; variable grade', 'Variable'], ['DCIS — Papillary/Micropapillary', 'Papillary projections; low grade; ER+', 'Indolent; good prognosis'], ['LCIS', 'Small bland cells distending acini; basement membrane intact; E-cadherin negative', 'Bilateral risk marker (8–10× risk); not treated as cancer'], ['Pleomorphic LCIS', 'Large pleomorphic cells; comedo necrosis; more aggressive variant', 'Treated more like DCIS'], ], col_widths=[1.8, 3.0, 1.8] ) bullet('KEY: DCIS calcifies → PLEOMORPHIC/LINEAR MICROCALCIFICATIONS on mammography (segmental distribution)') bullet('LCIS: NOW classified as benign — no longer Tis in AJCC 8th edition') heading3('Invasive Cancers') add_table( ['Type', 'Frequency', 'Key Features'], [ ['Invasive Ductal Carcinoma, NOS (IDC)', '50–70%', 'Cohesive mass; scirrhous/desmoplastic; spiculated on mammography; stony hard on palpation'], ['Invasive Lobular Carcinoma (ILC)', '5–15%', 'Indian-file single-cell infiltration; E-cadherin loss (CDH1 mutation); multifocal/bilateral; difficult to detect on mammography; best on MRI'], ['Tubular carcinoma', '2–3%', 'Pure tubule formation; well-differentiated; >90% ER+; EXCELLENT prognosis'], ['Mucinous (colloid) carcinoma', '2–3%', 'Cells floating in pools of extracellular mucin; elderly women; better prognosis'], ['Medullary carcinoma', '~5%', 'Large pleomorphic cells, syncytial growth, lymphocytic infiltrate, pushing borders; paradoxically GOOD prognosis; BRCA1-associated; often TNBC'], ['Micropapillary carcinoma', '<5%', 'Highly lymphovascular invasive; poor prognosis'], ['Metaplastic carcinoma', '~1%', 'Squamous or sarcomatoid elements; chemoresistant; usually TNBC'], ['Adenoid cystic carcinoma', '<1%', 'Cribriform; low grade; excellent prognosis; perineural invasion'], ], col_widths=[2.0, 0.9, 3.7] ) heading3('Special Clinical Entities') bullet('INFLAMMATORY BREAST CANCER (IBC): T4d; skin erythema + oedema + peau d\'orange >1/3 of breast skin; NOT infection — caused by DERMAL LYMPHATIC TUMOUR EMBOLI; diagnosis = CLINICAL; skin punch biopsy confirms; NACT first → MRM → RT (NO immediate reconstruction)') bullet('PAGET\'S DISEASE OF THE NIPPLE: eczematous change of NAC; Paget cells (large, pale cytoplasm) in nipple epidermis; 97% have underlying DCIS or invasive carcinoma; diagnosis: skin punch biopsy; treat underlying malignancy') bullet('MALE BREAST CANCER: ~1% of all breast cancers; IDC most common; associated with BRCA2, Klinefelter\'s, gynaecomastia, exogenous oestrogens; managed like female breast cancer') doc.add_page_break() # ============================================================ # 4. HISTOPATHOLOGY # ============================================================ heading1('4. HISTOPATHOLOGY') heading2('4.1 Nottingham (Elston-Ellis) Histological Grading') bullet('Applies to INVASIVE cancers only') bullet('Scores 3 parameters, each 1–3:') bullet(' (1) Tubule formation: >75% = 1; 10–75% = 2; <10% = 3', level=1) bullet(' (2) Nuclear pleomorphism: small uniform = 1; moderate = 2; marked = 3', level=1) bullet(' (3) Mitotic count: per 10 HPF (calibrated to microscope field area)', level=1) add_table( ['Total Score', 'Grade', 'Interpretation'], [ ['3–5', 'Grade 1', 'Well differentiated — best prognosis'], ['6–7', 'Grade 2', 'Moderately differentiated'], ['8–9', 'Grade 3', 'Poorly differentiated — worst prognosis'], ], col_widths=[1.2, 1.2, 4.2] ) heading2('4.2 Immunohistochemistry (IHC) Markers') add_table( ['Marker', 'Normal Threshold', 'Clinical Relevance'], [ ['ER (Oestrogen Receptor)', 'Positive: ≥1% nuclear staining (ASCO/CAP)', '~70% of invasive cancers; guides endocrine therapy'], ['PR (Progesterone Receptor)', 'Positive: ≥1% nuclear staining', '~60% positive; ER+/PR+ = best endocrine response'], ['HER2', '3+ by IHC = positive; 2+ = equivocal → FISH/CISH', '15–20% positive; guides trastuzumab/pertuzumab therapy'], ['HER2-low (NEW)', 'IHC 1+ or IHC 2+/FISH-', 'Targetable by T-DXd (DESTINY-Breast04); previously "HER2-negative"'], ['Ki-67', '>14% = high proliferation', 'Distinguishes Luminal A (low) from Luminal B (high); prognostic'], ], col_widths=[1.8, 2.0, 2.8] ) heading2('4.3 Molecular Subtypes') add_table( ['Subtype', 'ER', 'PR', 'HER2', 'Ki-67', 'Frequency', 'Treatment'], [ ['Luminal A', '+', '+', '-', 'Low', '50–65%', 'Endocrine therapy; chemo rarely needed'], ['Luminal B (HER2-)', '+', 'Low/-', '-', 'High', 'Included', 'Endocrine + chemotherapy'], ['Luminal B (HER2+)', '+', 'Low/-', '+', 'Any', 'Included', 'Anti-HER2 + endocrine + chemo'], ['HER2-enriched', '-', '-', '+', 'High', '~15%', 'Anti-HER2 + chemotherapy'], ['Triple Negative (TNBC)', '-', '-', '-', 'High', '~15%', 'Chemotherapy ± immunotherapy ± PARP inhibitor'], ], col_widths=[1.6, 0.4, 0.4, 0.5, 0.5, 0.9, 2.3] ) bullet('TNBC associated with BRCA1 mutations; young women; African American women; early relapse pattern (<8 yrs); brain and visceral metastases predominate') bullet('HER2-enriched: before targeted therapy had worst prognosis; dramatically improved with trastuzumab') heading2('4.4 Histological Features of Specific Cancers') heading3('Invasive Ductal Carcinoma (IDC NOS)') bullet('Irregular infiltrative borders; prominent DESMOPLASTIC STROMA (gives stony hard texture)') bullet('Tubule formation, nuclear pleomorphism, mitotic figures — graded by Nottingham') bullet('Lymphovascular invasion (LVI): important adverse prognostic factor') bullet('Calcification may be present') heading3('Invasive Lobular Carcinoma (ILC)') bullet('Single-file ("Indian file") pattern of tumour cells through stroma') bullet('Small uniform cells with intracytoplasmic mucin vacuoles ("signet-ring" cells)') bullet('Concentric/targetoid growth around pre-existing ducts and lobules') bullet('LOSS OF E-CADHERIN (IHC negative): CDH1 gene mutation/deletion — PATHOGNOMONIC') bullet('Alveolar, solid, pleomorphic, and tubulolobular subtypes exist') heading3('DCIS — Key Histological Points') bullet('Malignant cells WITHIN ductal basement membrane — no stromal invasion') bullet('Comedo DCIS: central necrosis + calcification → microcalcifications on mammography') bullet('Grade and ER status more important than architectural pattern for treatment decisions') bullet('Frequently coexists with invasive cancer; morphology of both usually similar') doc.add_page_break() # ============================================================ # 5. CLINICAL FEATURES # ============================================================ heading1('5. CLINICAL FEATURES') heading2('5.1 History') bullet('Lump: onset, duration, change with menstrual cycle, pain') bullet('Skin changes: dimpling, peau d\'orange, colour change, ulceration') bullet('Nipple changes: discharge (colour, unilateral/bilateral, spontaneous/expressed), retraction, eczema/scaling') bullet('Axillary lump — lymphadenopathy') bullet('Systemic: weight loss, bone pain, breathlessness, jaundice (= metastatic disease)') bullet('Risk factors: family history, OCP/HRT, previous biopsies/DCIS, radiation, BRCA status') heading2('5.2 Examination Technique') heading3('Inspection (arms by sides, above head, hands on hips → contracted pectoralis)') bullet('Asymmetry of breasts in size/shape/level') bullet('Skin changes: peau d\'orange (>1/3 breast = IBC), erythema, oedema, ulceration') bullet('Skin dimpling: Cooper\'s ligament involvement (also visible with arm elevation)') bullet('Nipple retraction: SLIT-LIKE = duct ectasia; STAR-SHAPED / DEVIATED = malignancy') bullet('Venous dilatation over breast (increased vascularity in cancer)') bullet('Satellite skin nodules, ulceration, en cuirasse appearance') heading3('Palpation (supine, arm above head for inner quadrants)') bullet('Technique: pad of 3 fingers; "clock method" or concentric circles; axilla in sitting position') bullet('Document: Site (quadrant + clock face), Size, Shape, Consistency, Surface, Borders') bullet('Mobility: from skin (pinch) + from deep fascia (patient contracts pectoralis major)') bullet('MALIGNANT LUMP: hard, irregular, non-tender, ill-defined, fixed to skin or deep fascia') bullet('Nipple: discharge (express each quadrant); retraction; Paget\'s changes') bullet('Axilla: levels I, II, III; Supraclavicular fossa; Infraclavicular region') bullet('Liver: hepatomegaly in metastatic disease') heading2('5.3 Signs of Advanced Disease') add_table( ['Sign', 'Structure Involved'], [ ['Peau d\'orange', 'Dermal lymphatic blockage'], ['Skin fixity / dimpling', 'Cooper\'s ligaments infiltrated'], ['Deep fixity (pectoralis))', 'Pectoralis fascia / muscle invasion'], ['Skin ulceration / satellite nodules', 'Direct skin infiltration'], ['En cuirasse carcinoma', 'Diffuse chest wall fibrosis'], ['Axillary node fixity / matting', 'N2 disease; extranodal extension'], ['Arm lymphoedema', 'Axillary vessel/node blockage'], ['Supraclavicular nodes', 'N3 disease'], ], col_widths=[2.5, 4.1] ) doc.add_page_break() # ============================================================ # 6. TRIPLE ASSESSMENT # ============================================================ heading1('6. INVESTIGATION — TRIPLE ASSESSMENT') p = doc.add_paragraph() p.add_run('Triple assessment (Clinical + Radiological + Pathological) achieves ~100% positive predictive value. All three components must be CONCORDANT.').bold = True heading2('6.1 Component 1: Clinical Assessment') bullet('E1 = Normal; E2 = Benign; E3 = Probably benign; E4 = Probably malignant; E5 = Malignant') heading2('6.2 Component 2: Radiological Imaging') heading3('Mammography') bullet('FIRST-LINE in women >35–40 years (dense tissue limits sensitivity in young women)') bullet('Low-voltage, high-amperage x-rays; ~1 mGy per film dose') bullet('Standard views: Craniocaudal (CC) + Mediolateral oblique (MLO)') bullet('MAMMOGRAPHIC SIGNS OF MALIGNANCY:') bullet(' Stellate/spiculated density — MOST SPECIFIC for malignancy', level=1) bullet(' Pleomorphic/heterogeneous microcalcifications — DCIS signature', level=1) bullet(' Asymmetric density, architectural distortion', level=1) bullet(' Skin thickening, nipple retraction, axillary adenopathy (advanced signs)', level=1) heading3('BI-RADS Classification (Breast Imaging Reporting and Data System)') add_table( ['BI-RADS', 'Category', 'Malignancy Risk', 'Action'], [ ['0', 'Incomplete', '-', 'Additional imaging needed'], ['1', 'Negative', '0%', 'Routine screening'], ['2', 'Benign', '0%', 'Routine follow-up'], ['3', 'Probably benign', '<2%', '6-month USS/mammography follow-up'], ['4A/B/C', 'Suspicious', '2–95%', 'Biopsy required; 4A low, 4B intermediate, 4C high suspicion'], ['5', 'Highly suspicious', '>95%', 'Biopsy required; tissue diagnosis before treatment'], ['6', 'Known malignancy', '100%', 'Confirmed cancer; staging/treatment planning'], ], col_widths=[0.8, 1.6, 1.4, 2.8] ) heading3('Ultrasonography (USS)') bullet('FIRST-LINE in young women (<35–40 years) and pregnant/lactating women (dense breasts)') bullet('Distinguishes CYSTIC (anechoic, posterior acoustic enhancement) from SOLID lesions') bullet('BENIGN USS features: well-defined, homogeneous, hypoechoic, wider-than-tall, smooth margins') bullet('MALIGNANT USS features: hypoechoic, irregular/spiculated, taller-than-wide, posterior acoustic shadowing, microlobulation') bullet('AXILLARY USS: in all diagnosed cancers; core biopsy of suspicious nodes (loss of echogenic hilum, cortical thickening >3mm)') bullet('Guides needle localization and CNB') heading3('MRI Breast') bullet('Highest sensitivity (~95–99%) for invasive cancer; lower specificity → false positives') bullet('INDICATIONS:') bullet(' BRCA1/2 annual screening (from age 25–30)', level=1) bullet(' Extent of disease assessment (especially ILC, multifocality/multicentricity)', level=1) bullet(' Response to neoadjuvant chemotherapy (serial MRI)', level=1) bullet(' Dense breasts where other imaging inconclusive', level=1) bullet(' Occult primary with axillary nodal metastases', level=1) bullet(' Assessment of residual disease post-augmentation', level=1) bullet('Dynamic contrast enhancement (DCE-MRI): rapid wash-in and wash-out = malignant kinetics') heading2('6.3 Component 3: Pathological Sampling') heading3('Fine Needle Aspiration Cytology (FNAC)') bullet('21–23G needle; smear stained (Papanicolaou, MGG, H&E)') bullet('Reporting: C1 (inadequate), C2 (benign), C3 (atypical), C4 (suspicious), C5 (malignant)') bullet('Advantages: quick, cheap, therapeutic for cysts; minimal discomfort') bullet('LIMITATIONS: CANNOT distinguish invasive from in-situ; no receptor testing; operator-dependent') bullet('Largely superseded by core needle biopsy in most centres') heading3('Core Needle Biopsy (CNB) — Standard of Care') bullet('14G spring-loaded core gun; or vacuum-assisted biopsy (VAB) 8–11G for calcifications') bullet('Guidance: USS (mass lesions) or stereotactic/mammographic (calcifications) or MRI (MRI-only lesions)') bullet('Provides HISTOLOGICAL diagnosis with tumour type, grade, ER/PR/HER2/Ki-67') bullet('Reporting: B1 (normal), B2 (benign), B3 (uncertain malignant potential), B4 (suspicious), B5 (malignant: B5a in-situ; B5b invasive)') bullet('TITANIUM CLIP placed at biopsy site for future localization — essential') bullet('VAB advantages: removes 12+ cores in single insertion; preferred for microcalcifications, radial scar, papillary lesions') heading3('Sentinel Lymph Node Biopsy (SLNB)') bullet('For staging of clinically/radiologically node-negative axilla (cN0)') bullet('DUAL TECHNIQUE: Tc-99m sulphur colloid (injected ~24h pre-op) + Patent blue dye (intraoperative) — >95% identification rate') bullet('ICG (indocyanine green) fluorescence: emerging as equal/superior to blue dye; no allergic reaction risk') bullet('SLN assessed: intraoperative frozen section OR OSNA (One-Step Nucleic Acid Amplification of CK19 mRNA)') bullet('If positive: proceed to ALND or targeted axillary dissection (TAD)') bullet('Axillary USS with CNB of suspicious nodes pre-operatively; TAD = combined SLNB + clipped node excision after NACT') doc.add_page_break() # ============================================================ # 7. TNM STAGING # ============================================================ heading1('7. STAGING — AJCC 8th EDITION TNM (2018)') p = doc.add_paragraph() p.add_run('AJCC 8th Edition (2017): First staging system to incorporate non-anatomic prognostic factors — ER/PR/HER2 status, Nottingham grade, genomic assays (Oncotype DX, MammaPrint) — into a "Prognostic Stage".').bold = True heading2('7.1 T — Primary Tumour') add_table( ['T', 'Description'], [ ['TX', 'Primary tumour cannot be assessed'], ['T0', 'No evidence of primary tumour'], ['Tis (DCIS)', 'Ductal carcinoma in situ'], ['Tis (Paget)', 'Paget\'s disease of nipple NOT associated with invasive carcinoma or DCIS (Paget with DCIS/IDC staged by size of underlying tumour)'], ['T1mi', 'Microinvasion: ≤1 mm'], ['T1a', '>1 mm to ≤5 mm'], ['T1b', '>5 mm to ≤10 mm'], ['T1c', '>10 mm to ≤20 mm'], ['T2', '>20 mm to ≤50 mm'], ['T3', '>50 mm'], ['T4a', 'Any size, direct extension to chest wall (ribs/intercostal muscles/serratus anterior; NOT pectoralis muscle)'], ['T4b', 'Skin oedema (peau d\'orange), ulceration, or satellite nodules confined to same breast'], ['T4c', 'Both T4a and T4b'], ['T4d', 'Inflammatory carcinoma (IBC)'], ], col_widths=[0.8, 5.8] ) bullet('NOTE: invasion of dermis alone does NOT qualify as T4; LCIS no longer classified as Tis') heading2('7.2 N — Regional Lymph Nodes (Pathological pN)') add_table( ['pN', 'Description'], [ ['pN0', 'No regional LN metastasis; isolated tumour cells (ITCs ≤0.2mm) = pN0(i+)'], ['pN1mi', 'Micrometastasis: >0.2 mm but ≤2.0 mm (>200 cells in single cross section)'], ['pN1', '1–3 positive axillary LN; and/or internal mammary LN by SLN (not clinically detected)'], ['pN2', '4–9 positive axillary LN; OR clinically detected internal mammary LN (without axillary LN)'], ['pN3', '≥10 positive axillary LN; OR infraclavicular (Level III) LN; OR clinically detected IM LN + axillary LN; OR supraclavicular LN'], ], col_widths=[0.9, 5.7] ) bullet('Clinical N (cN1): mobile ipsilateral Level I/II axillary LN; cN2: fixed/matted; cN3: infraclavicular, IM+axillary, or supraclavicular') bullet('Metastasis to contralateral axillary nodes or any non-regional node = M1') heading2('7.3 M — Distant Metastasis') bullet('M0: No clinical or radiological distant metastasis; M0(i+): molecular/histological circulating tumour cells found') bullet('M1: Distant metastasis — any non-regional lymph node, bone, lung, liver, brain, skin (beyond primary area)') heading2('7.4 Anatomic Stage Groups') add_table( ['Stage', 'T', 'N', 'M', '5-Year Survival'], [ ['Stage 0', 'Tis', 'N0', 'M0', '~100%'], ['Stage IA', 'T1', 'N0', 'M0', '~99%'], ['Stage IB', 'T0–T1', 'N1mi', 'M0', '~99%'], ['Stage IIA', 'T0–T1 / T2', 'N1 / N0', 'M0', '~90%'], ['Stage IIB', 'T2 / T3', 'N1 / N0', 'M0', '~80%'], ['Stage IIIA', 'T0–T3 / T3', 'N2 / N1', 'M0', '~60–70%'], ['Stage IIIB', 'T4', 'N0–N2', 'M0', '~50–60%'], ['Stage IIIC', 'Any T', 'N3', 'M0', '~40–50%'], ['Stage IV', 'Any T', 'Any N', 'M1', '~28% (5-yr)'], ], col_widths=[1.0, 0.9, 0.9, 0.7, 3.1] ) heading2('7.5 Staging Workup') bullet('Early (Stage I–II): CBC, LFTs, calcium; NO routine bone scan or CT in asymptomatic patients (low yield)') bullet('Locally advanced/Stage III+: CT chest/abdomen/pelvis + bone scintigraphy OR PET-CT (superior, single modality)') bullet('PET-CT: preferred for staging locally advanced, suspected recurrence, equivocal findings') bullet('MRI brain: if neurological symptoms or HER2+ / TNBC with systemic metastases') bullet('Genomic Assays (early ER+/HER2-/LN0):') bullet(' Oncotype DX (21-gene Recurrence Score, RS): RS 0–25 = endocrine therapy only (TAILORx trial for >50 yrs; <50 yrs with RS 16–25 may benefit from chemo)', level=1) bullet(' MammaPrint (70-gene): genomically low-risk = safe to omit chemo even if clinically high-risk (MINDACT trial)', level=1) bullet(' Prosigna (PAM50), EndoPredict, Breast Cancer Index also validated', level=1) doc.add_page_break() # ============================================================ # 8. MANAGEMENT # ============================================================ heading1('8. MANAGEMENT OF BREAST CANCER') heading2('8.1 Principles') bullet('MULTIDISCIPLINARY TEAM (MDT): surgeon, medical oncologist, radiation oncologist, radiologist, pathologist, breast care nurse, genetic counsellor, reconstructive surgeon, psycho-oncologist') bullet('All new breast cancer cases discussed at weekly MDT before treatment') bullet('Consent includes discussion of reconstruction, fertility preservation (premenopausal), genetic testing') heading2('8.2 Surgical Management') heading3('Breast-Conserving Surgery (BCS) / Wide Local Excision (WLE)') bullet('Removes tumour with adequate margins — "no ink on tumour" = adequate; ≥2mm preferred for DCIS') bullet('EQUIVALENT SURVIVAL to mastectomy when combined with adjuvant whole-breast RT (NSABP B-06 landmark trial)') bullet('CONTRAINDICATIONS to BCS:') bullet(' Multiple tumours in different quadrants (multicentric disease)', level=1) bullet(' Large tumour : breast size ratio (poor cosmetic result)', level=1) bullet(' Cannot receive radiotherapy (e.g. previous chest RT, scleroderma, pregnancy — relative CI)', level=1) bullet(' Inflammatory breast cancer', level=1) bullet(' Persistent positive margins despite re-excision', level=1) bullet(' Patient preference for mastectomy', level=1) bullet('Oncoplastic BCS (Levels I & II): combines tumour excision with immediate volume displacement/replacement; reduces re-excision rates; enables wider excisions') heading3('Mastectomy Types') add_table( ['Procedure', 'What is Removed', 'Indication'], [ ['Total (simple) mastectomy', 'All breast tissue + NAC; pectoralis preserved', 'DCIS (large/multifocal), prophylactic, early cancer not suitable for BCS'], ['Modified Radical Mastectomy (MRM) — Patey\'s', 'Breast + NAC + axillary dissection (L I–II); pectoralis major preserved; minor excised', 'Standard for invasive cancer with axillary disease'], ['Skin-sparing mastectomy', 'Breast tissue + NAC; skin envelope preserved', 'Immediate reconstruction; oncologically equivalent'], ['Nipple-sparing mastectomy', 'Breast tissue only; NAC + skin envelope preserved', 'Prophylactic; select invasive/DCIS; inframammary fold incision'], ['Radical mastectomy (Halsted)', 'Breast + both pectorals + axillary dissection', 'Historical only — no longer standard'], ], col_widths=[1.9, 2.2, 2.5] ) heading3('Localization of Non-palpable Lesions') bullet('Wire-guided localization: traditional; placed day-of-surgery under imaging guidance; painful; scheduling limitations') bullet('ROLL (Radioguided Occult Lesion Localization): Tc-99m injected into lesion; gamma probe guides excision') bullet('Magseed / SAVI Scout (radar reflector): placed at time of biopsy (weeks before surgery); no day-of-surgery procedure; localized with handheld probe in OR') bullet('FIND (Fluoroscopic Intraoperative Neoplasm Detection): locates radiopaque biopsy clip with fluoroscopy; no separate procedure needed') bullet('All techniques: specimen radiograph after excision to confirm lesion retrieved') heading2('8.3 Axillary Surgery') heading3('Sentinel Lymph Node Dissection (SLND/SLNB)') bullet('STANDARD for clinically node-negative (cN0) patients (clinical exam + USS neg)') bullet('Dual technique (blue dye + Tc-99m) or ICG fluorescence') bullet('OSNA (One-Step Nucleic Acid Amplification): CK19 mRNA from lysed SLN; more sensitive than frozen section; gives quantitative result → immediate decision on ALND') bullet('If SLN negative: no further axillary surgery needed') bullet('If SLN positive: see ACOSOG Z0011 below') heading3('Axillary Lymph Node Dissection (ALND)') bullet('Removes Levels I and II axillary nodes (minimum 10 nodes for adequate staging)') bullet('Indications: cN1–3 (clinically positive axilla pre-op); SLN positive (selected patients, see Z0011)') bullet('Complications: lymphoedema (15–20%), seroma, wound infection, arm numbness (ICN nerve), shoulder stiffness, limited arm movement') bullet('ACOSOG Z0011 trial: 1–2 positive SLNs + BCS + whole-breast RT + systemic therapy → NO completion ALND needed; equivalent locoregional control and survival → PRACTICE-CHANGING') bullet('AMAROS trial: positive SLN → axillary RT equivalent to ALND with significantly less lymphoedema') bullet('Axillary Reverse Mapping (ARM): maps arm lymphatics during ALND; preserves them to reduce lymphoedema risk') heading2('8.4 Adjuvant Radiotherapy') heading3('After BCS (Whole-Breast Irradiation — WBI)') bullet('Standard: 40–50 Gy / 15–25 fractions over 3–5 weeks') bullet('Hypofractionated (preferred): 40 Gy / 15 fractions — equivalent to standard (START trials)') bullet('ULTRA-hypofractionation: 26 Gy / 5 fractions over 1 week (FAST-Forward trial — non-inferior)') bullet('Tumour bed boost (10–16 Gy): young patients (<40 yrs), close margins, grade 3, DCIS component') bullet('Accelerated Partial Breast Irradiation (APBI): treats tumour cavity only; options: IORT (20 Gy, TARGIT-A trial), interstitial brachytherapy, 3D conformal external beam; selected low-risk patients (≥50 yrs, T1, ER+, clear margins, no LVSI)') heading3('Post-Mastectomy Radiation Therapy (PMRT)') bullet('STANDARD indications: T3/T4 tumours; ≥4 positive nodes; positive margins') bullet('Consider for: 1–3 positive nodes with high-risk features (premenopausal, Grade 3, LVI)') bullet('Fields: chest wall + regional nodes (internal mammary + supraclavicular ± axilla)') bullet('Delays immediate reconstruction — use tissue expander + delayed exchange') heading2('8.5 Systemic Therapy') heading3('Neoadjuvant Chemotherapy (NACT) — Pre-operative') bullet('Indications: Locally advanced (Stage III+); Inflammatory breast cancer; Large tumour for BCS downsizing; HER2+ and TNBC (guides adjuvant treatment by pCR/residual disease)') bullet('Pathological Complete Response (pCR): no residual invasive cancer in breast + nodes → improved long-term survival (especially TNBC, HER2+)') bullet('Residual disease post-NACT = adverse prognostic sign → escalate adjuvant therapy') bullet('Standard regimens: AC × 4 → T × 4 (doxorubicin/cyclophosphamide → paclitaxel); or FEC-T (5-FU/epirubicin/cyclophosphamide → docetaxel); dose-dense every 2 weeks + G-CSF superior to every 3 weeks') heading3('Endocrine Therapy (ER-positive disease)') add_table( ['Agent', 'Class', 'Indication', 'Key Side Effects'], [ ['Tamoxifen', 'SERM', 'Premenopausal; ± postmenopausal 5–10 yrs', 'DVT/PE, endometrial cancer, hot flushes, cataracts'], ['Anastrozole / Letrozole', 'Non-steroidal AI', 'Postmenopausal (or premenopausal + OFS)', 'Arthralgia, osteoporosis, hot flushes'], ['Exemestane', 'Steroidal AI', 'Postmenopausal; can follow tamoxifen', 'Similar to non-steroidal AIs'], ['Goserelin / Leuprolide', 'LHRH agonist (OFS)', 'Premenopausal high-risk; combined with AI (TEXT/SOFT trials)', 'Menopausal symptoms, bone loss'], ['Fulvestrant', 'SERD (IM)', 'Metastatic ER+/HER2- post-AI failure', 'Injection site reactions'], ['Elacestrant', 'Oral SERD', 'ESR1-mutated metastatic ER+ (EMERALD trial)', 'Nausea, dyslipidaemia'], ], col_widths=[1.4, 1.3, 2.3, 1.6] ) heading3('HER2-Targeted Therapy') add_table( ['Agent', 'Mechanism', 'Setting', 'Key Trial'], [ ['Trastuzumab (Herceptin)', 'Anti-HER2 mAb (domain IV)', 'Adjuvant 1 year; neoadjuvant + chemo', 'HERA, NSABP B-31 — ↓recurrence ~50%'], ['Pertuzumab (Perjeta)', 'Anti-HER2 mAb (domain II — dimerisation inhibitor)', 'Neoadjuvant + trastuzumab + docetaxel; high-risk adjuvant', 'APHINITY — improved IDFS in node+ disease'], ['T-DM1 (Kadcyla)', 'ADC: trastuzumab + emtansine (microtubule inhibitor)', 'Residual HER2+ disease after NACT', 'KATHERINE — ↓recurrence vs. trastuzumab alone'], ['T-DXd (Enhertu)', 'ADC: trastuzumab + deruxtecan (topo-I inhibitor)', 'HER2-positive AND HER2-low metastatic (2nd line+)', 'DESTINY-Breast04 — major PFS/OS improvement in HER2-low'], ['Lapatinib (Tykerb)', 'TKI (HER1+HER2)', 'Metastatic HER2+ (CNS metastases)', 'Historical; replaced by newer agents'], ['Tucatinib', 'Selective HER2 TKI', 'Metastatic HER2+ with brain mets (with T-DM1 or trastuzumab)', 'HER2CLIMB trial'], ['Neratinib', 'Irreversible pan-HER TKI', 'Extended adjuvant after trastuzumab (ExteNET trial)', '↓distant recurrence in HR+/HER2+ subgroup'], ], col_widths=[1.3, 2.0, 1.5, 1.8] ) heading3('Triple-Negative Breast Cancer (TNBC) — Systemic Therapy') bullet('CHEMOTHERAPY: anthracycline (doxorubicin/epirubicin) + taxane backbone; add carboplatin if BRCA1/2 mutation') bullet('PEMBROLIZUMAB (PD-1 checkpoint inhibitor):') bullet(' KEYNOTE-522: neoadjuvant pembro + chemo → surgery → adjuvant pembro (1 yr); significant ↑pCR (64.8% vs 51.2%) and event-free survival', level=1) bullet(' KEYNOTE-355: metastatic TNBC, PD-L1 CPS ≥10; pembrolizumab + chemo → ↑PFS and OS', level=1) bullet('OLAPARIB (PARP inhibitor):') bullet(' For germline BRCA1/2-mutated, HER2-negative (TNBC or ER+) — adjuvant setting', level=1) bullet(' OlympiA trial: 1 year olaparib after (neo)adjuvant chemo → ↓distant metastases by 42%; ↑OS at 4-year follow-up', level=1) bullet(' OlympiAD: olaparib vs. chemotherapy in metastatic gBRCA-mutated HER2- breast cancer → superior PFS', level=1) bullet('CAPECITABINE: oral fluoropyrimidine; adjuvant for residual TNBC after NACT (CREATE-X trial)') bullet('SACITUZUMAB GOVITECAN (Trodelvy): TROP-2 targeted ADC; metastatic TNBC (ASCENT trial) — significant PFS and OS improvement over chemotherapy') heading3('CDK4/6 Inhibitors (ER+/HER2- disease)') bullet('Palbociclib (Ibrance), Ribociclib (Kisqali), Abemaciclib (Verzenio) — combined with AIs or fulvestrant') bullet('METASTATIC: standard first-line therapy for HR+/HER2- metastatic; MONALEESA-2, PALOMA-3, MONARCH-3 trials') bullet('Ribociclib (MONALEESA-3 & 7): FIRST CDK4/6 inhibitor to demonstrate OVERALL SURVIVAL benefit; especially in premenopausal metastatic HR+/HER2-') bullet('ABEMACICLIB ADJUVANT (monarchE trial): 2 years abemaciclib + endocrine therapy for high-risk ER+/HER2- early breast cancer (≥4 positive LN; OR 1–3 LN with grade 3, T3+, or Ki-67 ≥20%) → significant ↑IDFS and distant relapse-free survival') heading3('PI3K/AKT/mTOR Pathway Inhibitors') bullet('Alpelisib (Piqray): PI3K-alpha inhibitor; PIK3CA-mutated HR+/HER2- metastatic BC + fulvestrant (SOLAR-1 trial) → ↑PFS') bullet('Capivasertib: AKT inhibitor; PIK3CA/AKT1/PTEN-altered HR+/HER2- metastatic BC + fulvestrant (CAPItello-291 trial)') bullet('Everolimus: mTOR inhibitor; exemestane + everolimus for postmenopausal HR+/HER2- post-AI (BOLERO-2 trial)') heading3('Bone-Modifying Agents') bullet('Bisphosphonates (Zoledronic acid q6 months; Clodronate): reduce bone metastases; ↑OS in postmenopausal/ovarian-suppressed patients (EBCTCG meta-analysis)') bullet('Denosumab (RANK-L inhibitor): reduces skeletal-related events in bone metastases; also studied in adjuvant setting') doc.add_page_break() # ============================================================ # 9. DCIS MANAGEMENT # ============================================================ heading1('9. MANAGEMENT OF DCIS') bullet('Surgery: BCS preferred; CLEAR MARGINS ≥2mm; mastectomy for large/multifocal/inability to achieve margins') bullet('RT: whole-breast RT after BCS reduces ipsilateral recurrence (NSABP B-17 & B-24 trials); benefit greatest in high-grade/comedo DCIS; absolute benefit modest in low-risk DCIS (active surveillance studies ongoing)') bullet('Endocrine therapy:') bullet(' Tamoxifen (premenopausal/postmenopausal): reduces ipsilateral + contralateral breast cancer (NSABP B-24)', level=1) bullet(' Anastrozole (postmenopausal): NSABP B-35 → superior breast cancer-free survival vs. tamoxifen in <60 yrs', level=1) bullet(' Overall benefit: ~50% reduction in breast cancer recurrence with endocrine therapy', level=1) bullet('SLNB in DCIS:') bullet(' Recommended if mastectomy planned (pathology may reveal invasive component)', level=1) bullet(' Recommended for high-risk DCIS: grade 3, mass-forming, >2 cm', level=1) bullet('SentiNot trial: SPIO nanoparticle injection at time of DCIS surgery without upfront SLNB; delayed SLNB if invasive disease on final pathology; 78.7% of patients avoided SLNB entirely') bullet('Active surveillance/watchful waiting for low-risk DCIS: under investigation (COMET, LORD, LORIS trials) — NOT current standard') doc.add_page_break() # ============================================================ # 10. BREAST RECONSTRUCTION # ============================================================ heading1('10. BREAST RECONSTRUCTION') heading2('10.1 Timing') bullet('IMMEDIATE: at time of mastectomy; fewer operations; preserves skin envelope; improved cosmesis; preferred if NO PMRT expected') bullet('DELAYED: separate procedure; indicated when PMRT needed, advanced cancer, active smoking, uncontrolled DM, high BMI') bullet('Inflammatory breast cancer: CONTRAINDICATED for immediate reconstruction (needs PMRT urgently)') heading2('10.2 Types') heading3('Implant-Based Reconstruction') bullet('TWO-STAGE: tissue expander placed at mastectomy → gradual saline filling in clinic → exchange to permanent implant (6–12 wks; after RT if needed)') bullet('DIRECT-TO-IMPLANT (one-stage): permanent implant at mastectomy; ideal for nipple-sparing mastectomy; requires well-perfused skin flap') bullet('ACELLULAR DERMAL MATRIX (ADM): biological scaffold supports lower pole of implant; reduces animation deformity; enables pre-pectoral implant placement') bullet('PRE-PECTORAL implant: placed above pectoralis major; reduces animation deformity (muscle contraction causing implant movement); requires ADM support') heading3('Autologous Reconstruction') add_table( ['Flap', 'Type', 'Key Features', 'Donor Site Issues'], [ ['DIEP flap', 'Free flap (microsurgical)', 'Deep inferior epigastric perforator; GOLD STANDARD; preserves rectus muscle entirely; natural feel and appearance', 'Abdominal scar; requires microsurgical expertise; longer surgery'], ['TRAM flap', 'Pedicled or free', 'Transverse rectus abdominis musculocutaneous; reliable; sacrifices rectus muscle', 'Hernia/weakness risk; abdominal bulge'], ['Latissimus dorsi (LD)', 'Pedicled myocutaneous', 'Reliable; well-vascularised; combined with implant in most cases', 'Shoulder weakness (latissimus function), back scar, seroma'], ['SGAP flap', 'Free flap', 'Superior gluteal artery perforator; when abdomen unavailable', 'Gluteal scar; complex microsurgery'], ], col_widths=[1.2, 1.2, 2.5, 1.7] ) doc.add_page_break() # ============================================================ # 11. RECENT ADVANCES # ============================================================ heading1('11. RECENT ADVANCES (2020–2026)') heading2('11.1 Surgical Advances') bullet('Nipple-sparing mastectomy: expanded indications; oncologically safe with negative retroareolar margins; markedly improved cosmesis and body image') bullet('Oncoplastic BCS: reduces positive margins, re-excision rates, and cosmetic deformity; "Level I and II" techniques for varying excision volumes') bullet('OSNA intraoperative SLN assessment: higher sensitivity vs. frozen section; CK19 mRNA copy number quantifies tumour burden; same-session ALND decision') bullet('Wireless localisation (Magseed, SAVI Scout, RFID tags): placed weeks before surgery; no day-of-surgery localisation procedure; patient-friendly') bullet('Z0011 & AMAROS trials: eliminated routine ALND in selected SLN-positive patients; massively reduced lymphoedema burden') bullet('Targeted axillary dissection (TAD): removal of biopsy-clipped positive node + SLN after NACT; lower false-negative rate than SLNB alone') heading2('11.2 Novel Systemic Therapies') bullet('T-DXd / Trastuzumab Deruxtecan (Enhertu): PARADIGM SHIFT') bullet(' HER2-POSITIVE: superior PFS and OS in metastatic disease (DESTINY-Breast03 vs. T-DM1)', level=1) bullet(' HER2-LOW (IHC 1+ or 2+/FISH-): DESTINY-Breast04 — major PFS and OS improvement over chemotherapy in previously treated metastatic HR+ and TNBC HER2-low disease; HER2-low is now a DISTINCT TARGETABLE ENTITY, changing classification of ~50% of "HER2-negative" cancers', level=1) bullet('Pembrolizumab in TNBC (KEYNOTE-522): neoadjuvant immunotherapy + chemo → improved pCR (64.8% vs 51.2%) AND event-free survival at 3 years; FDA-approved for high-risk early TNBC') bullet('Olaparib adjuvant (OlympiA): 1-year olaparib for germline BRCA-mutated, HER2-negative high-risk early breast cancer; ↑DDFS and OS benefit at extended follow-up') bullet('Abemaciclib adjuvant (monarchE): CDK4/6 inhibitor added to endocrine therapy in HR+/HER2- high-risk early BC; significant and sustained reduction in invasive disease recurrence') bullet('Ribociclib overall survival (MONALEESA-3 & 7): first CDK4/6 inhibitor to demonstrate OS benefit; standard of care in metastatic HR+/HER2-') bullet('Elacestrant/Camizestrant (oral SERDs): ESR1-mutated endocrine-resistant ER+ metastatic BC; novel oral SERDs outperform fulvestrant in ESR1-mutated disease (EMERALD trial)') bullet('Sacituzumab govitecan: TROP-2 ADC; ASCENT trial → significant OS benefit in metastatic TNBC vs. chemo; TROPiCS-02 trial in HR+ metastatic disease') bullet('Capivasertib (AKT inhibitor, CAPItello-291): PI3K/AKT/PTEN-altered HR+/HER2- metastatic BC + fulvestrant → ↑PFS and OS') bullet('Inavolisib + palbociclib + fulvestrant: PI3K + CDK4/6 + endocrine triple combination for PIK3CA-mutated metastatic HR+/HER2-; INAVO120 trial') heading2('11.3 Radiation Advances') bullet('Ultra-hypofractionation (FAST-Forward trial): 26 Gy / 5 fractions in 1 week; non-inferior to 40 Gy/15 fractions for local recurrence at 5 years; adopted in many UK centres post-COVID') bullet('APBI/IORT (TARGIT-A trial): single-dose IORT (20 Gy) at time of BCS; non-inferior to WBI in selected low-risk patients (≥45 yrs, T1–T2 ER+, clear margins)') bullet('Proton beam therapy: reduced cardiac and pulmonary dose; important for left-sided, young patients, post-reconstruction; increasing availability') bullet('MR-guided radiotherapy (MR-Linac): real-time tumour tracking; reducing treatment margins; improving precision') heading2('11.4 Genomics and Precision Medicine') bullet('Oncotype DX (TAILORx trial): RS 11–25 in ER+/HER2-/N0 women >50 yrs → endocrine therapy alone sufficient; chemotherapy not beneficial') bullet('MammaPrint (MINDACT trial): genomically low-risk patients can safely omit chemotherapy even if clinically high-risk by traditional criteria; 46% of "high clinical risk" patients proved genomically low-risk') bullet('Liquid biopsy (ctDNA): emerging tool for:') bullet(' Early detection of metastatic relapse (months before clinical detection)', level=1) bullet(' Treatment monitoring (response/resistance)', level=1) bullet(' Detection of ESR1, PIK3CA, AKT1 resistance mutations to guide therapy switch', level=1) bullet('BRCA-like/HRD (Homologous Recombination Deficiency) testing: identifies BRCA-like tumours even without germline BRCA mutation → platinum/PARP inhibitor sensitivity') bullet('Multi-gene germline panel testing (NCCN indications): BRCA1/2, PALB2, CHEK2, ATM, CDH1, STK11, TP53 — guides preventive and therapeutic decisions') doc.add_page_break() # ============================================================ # 12. LANDMARK TRIALS # ============================================================ heading1('12. LANDMARK TRIALS — SUMMARY TABLE') add_table( ['Trial', 'Question', 'Key Finding', 'Impact'], [ ['NSABP B-06', 'BCS vs. mastectomy', 'BCS + RT = mastectomy in overall survival', 'Established BCS as standard for early breast cancer'], ['NSABP B-17', 'RT after BCS for DCIS', 'RT reduces ipsilateral recurrence by 50%', 'Standard: RT after BCS for DCIS'], ['NSABP B-24', 'Tamoxifen + RT for DCIS', 'Tamoxifen further reduces ipsilateral and contralateral recurrence in ER+ DCIS', 'Endocrine therapy standard for ER+ DCIS after BCS+RT'], ['ACOSOG Z0011', 'ALND vs. no ALND for 1–2 +ve SLN in BCS', 'No survival difference; no ALND needed', 'Eliminated routine ALND in 1–2 SLN+ BCS patients'], ['AMAROS', '+ve SLN: ALND vs. axillary RT', 'Equivalent locoregional control; less lymphoedema with RT', 'Axillary RT alternative to ALND in SLN+ patients'], ['TAILORx', 'Chemo vs. endocrine for RS 11–25', 'Chemo adds no benefit in women >50 yrs with RS 11–25 ER+/HER2-/N0', 'Spares ~70% of early ER+ patients from chemo'], ['MINDACT', 'MammaPrint in guiding chemo decision', 'Genomically low-risk can omit chemo (even if clinically high-risk)', 'Validated 70-gene assay in clinical decision-making'], ['KATHERINE', 'T-DM1 vs. trastuzumab for residual HER2+ post-NACT', 'T-DM1 → ↓recurrence by 50%', 'T-DM1 standard for residual HER2+ disease'], ['KEYNOTE-522', 'Pembrolizumab + NACT in high-risk TNBC', '↑pCR (64.8% vs 51.2%) and ↑event-free survival', 'Pembrolizumab standard of care in early high-risk TNBC'], ['OlympiA', 'Adjuvant olaparib in gBRCA+ HER2-', '↓distant metastasis by 42%; ↑OS', 'PARP inhibitor adjuvant standard for gBRCA+ high-risk'], ['monarchE', 'Adjuvant abemaciclib in high-risk HR+/HER2-', '↑invasive DFS and distant RFS sustained at 4 years', 'CDK4/6 inhibitor adjuvant for high-risk ER+ early BC'], ['DESTINY-Breast04', 'T-DXd in HER2-low metastatic BC', 'Major ↑PFS and OS vs. chemotherapy; HER2-low = new entity', 'Redefined HER2 spectrum; T-DXd standard for HER2-low'], ['FAST-Forward', '5 vs. 15 vs. 3-week RT after BCS', '26Gy/5fr = 40Gy/15fr for local recurrence at 5 years', 'Ultra-hypofractionation adopted as new standard'], ['MONALEESA-3/7', 'Ribociclib in HR+/HER2- metastatic', 'First CDK4/6 inhibitor to show OS benefit', 'Standard first-line therapy in HR+/HER2- metastatic'], ['TARGIT-A', 'IORT vs. whole-breast RT in low-risk BCS', 'IORT non-inferior for local recurrence in selected patients', 'APBI/IORT option for low-risk early breast cancer'], ], col_widths=[1.5, 1.7, 2.0, 1.4] ) # Save path = '/tmp/workspace/breast-surgery/Breast_Surgery_PG_Notes.docx' doc.save(path) print(f"Saved: {path}") PYEOF

The complete notes have been compiled into a Word document you can download:

Breast Surgery PG Notes

Word Document · DOCX


The document is fully formatted with colour-coded headings, tables, and bullet points, and covers all 12 sections:
SectionContent
1Surgical Anatomy (relations, Cooper's ligaments, TDLU, blood supply, Batson's plexus, lymphatics, nerve supply)
2Benign Pathologies (ANDI, fibrocystic, fibroadenoma, phyllodes, abscess, duct ectasia, papilloma, fat necrosis, gynaecomastia)
3Malignant Pathologies (epidemiology, risk factors table, DCIS subtypes, ILC, IDC, special types, IBC, Paget's)
4Histopathology (Nottingham grading, IHC panel, molecular subtypes table, IDC/ILC/DCIS microscopy)
5Clinical Features (full examination technique, signs of advanced disease)
6Triple Assessment (E1-5, BI-RADS 0-6 table, USS, MRI, FNAC C1-5, CNB B1-5, SLNB technique)
7AJCC 8th Edition TNM (full T/N/M, stage groups with survival, staging workup, genomic assays)
8Management (MDT, BCS vs. mastectomy, ALND vs. SLNB/Z0011, localization, RT, endocrine therapy, HER2 therapy table, TNBC, CDK4/6, PI3K/AKT, bone agents)
9DCIS Management (surgery, RT, endocrine therapy, SentiNot trial)
10Breast Reconstruction (implant-based, DIEP/TRAM/LD/SGAP autologous flaps)
11Recent Advances (T-DXd/HER2-low, pembrolizumab/TNBC, olaparib, abemaciclib adjuvant, oral SERDs, FAST-Forward RT, liquid biopsy)
1215 Landmark Trials summary table

Difference between dimpling, puckering, tethering

These three terms are often used loosely or interchangeably in clinical practice, but they have distinct meanings based on which structure is involved and whether the sign is static or dynamic. Let me look this up in the surgical textbooks for precise definitions.
Finding Sources
Finding Sources
Reading File
Finding Sources
The Bailey & Love passage gives the classical surgical distinction precisely. Here is a clear, exam-focused breakdown:

Dimpling vs. Puckering vs. Tethering

All three are skin signs of breast cancer caused by the same underlying mechanism - but they differ in extent and number of Cooper's ligaments involved.

The Common Mechanism

Tumour cells release FGF, TGFα/β, and VEGF → stimulate adjacent fibrocytes → convert to fibroblasts → lay down collagen (desmoplastic reaction) → collagen contracts → Cooper's ligaments shorten → skin is pulled inward.

The Three Signs Compared

FeatureDimplingPuckeringTethering
DefinitionA small, focal inward pit/depression in the skinA gathered/folded puckered appearance of skin over a larger areaSkin drawn inward and fixed; loss of free mobility of skin
No. of Cooper's ligaments involvedSingle ligament shortenedSeveral ligaments shortenedMany ligaments shrunken (more advanced)
AppearanceSingle small indentation, like a dimpleSkin creased/crinkled over tumour - resembles puckered fabricSkin taut, retracted, adherent to underlying tumour
ElicitedOften visible on inspection; accentuated by raising arms or skin pinchVisible on inspection and accentuated by arm movementsVisible at rest; skin cannot be moved freely over the lump
Stage implicationEarly sign; skin not directly invadedIntermediateMore advanced local involvement; but not T4 unless full invasion
Vs. peau d'orangeFocal - due to ligament contractionFocal-regionalDifferent from peau d'orange which is due to lymphatic blockage causing diffuse oedema

Key Clinical Points

How to elicit these signs:
  1. At rest - inspect with patient sitting facing you
  2. Arms raised - stretches Cooper's ligaments, exaggerates any dimpling
  3. Hands on hips / pressed together - contracts pectoralis major; accentuates deep fixity and skin signs
  4. Skin pinch test - gently pinch skin over the lump to check if it rolls freely (tethering = reduced mobility / unable to pinch freely)
Tethering vs. fixity - important distinction:
  • Tethering = skin is drawn toward tumour but NOT directly invaded; skin can be slightly moved but with resistance
  • Fixity = skin is directly infiltrated by tumour (T4b); no movement at all; may progress to ulceration
Nipple retraction - same mechanism; many Cooper's ligaments anchoring from retroareolar region shorten → nipple drawn in. Distinguish:
  • Cancer: star-shaped, recent onset, unilateral, deviated toward tumour
  • Duct ectasia: slit-like, bilateral, longstanding

Summary Mnemonic

"D-P-T: 1 ligament, Several, Many"
  • Dimpling = 1 Cooper's ligament
  • Puckering = Several Cooper's ligaments
  • Tethering = Many Cooper's ligaments
All are produced by desmoplastic collagen contraction - dimpling is the earliest and most focal; tethering is more widespread involvement of the ligamentous framework.
  • Bailey and Love's Short Practice of Surgery 28th ed., Chapter 58 - Local Spread of Breast Cancer, p. 953

Difference between T4a (chest wall invasion) vs. T4b (skin involvement)

Good exam question - the boundaries of T4a and T4b are frequently misunderstood. Let me get the exact AJCC definitions from the surgical textbooks.
Finding Sources
Finding Sources
Reading File
Reading File
Both Bailey & Love and Schwartz's give the exact AJCC 8th edition wording. Here is a precise breakdown:

T4a vs. T4b — AJCC 8th Edition (Exact Definitions)


The Overarching T4 Definition

"Tumour of any size with direct extension to the chest wall and/or to the skin (ulceration or macroscopic nodules). Invasion of the dermis alone does NOT qualify as T4."
This is the most important rule: superficial dermis invasion alone is NOT enough for T4. The skin involvement must be qualitatively specific.

T4a — Chest Wall Invasion

"Extension to the chest wall; invasion or adherence to pectoralis muscle in the absence of invasion of chest wall structures does NOT qualify as T4a."

What counts as chest wall?

The chest wall = ribs + intercostal muscles + serratus anterior

What does NOT count as chest wall?

Pectoralis major and pectoralis minor muscles - even if the tumour is directly invading or adherent to pectoralis, this is NOT T4a.
StructureT4a?
RibsYES
Intercostal musclesYES
Serratus anteriorYES
Pectoralis major (invasion/adherence)NO - NOT T4a
Pectoralis minorNO - NOT T4a

Why this matters clinically:

Pectoralis is considered part of the surgical field - it can be excised (or divided away from). True chest wall structures (ribs, intercostals) cannot be removed without major chest wall surgery. Hence the distinction is anatomically and surgically meaningful.

Clinical sign of T4a:

  • Tumour is immobile on the chest wall (fixed deeply)
  • Test: patient presses hands firmly on hips (contracts pectoralis) → if immobility persists even with pectoralis relaxed, suggests true chest wall invasion
  • Note: tumour fixed to pectoralis alone (mobile with muscle relaxation) = NOT T4a

T4b — Skin Involvement

"Ulceration and/or ipsilateral macroscopic satellite nodules and/or oedema (including peau d'orange) of the skin — that does NOT meet the criteria for inflammatory carcinoma."

Three qualifying skin signs for T4b:

SignDescriptionNotes
UlcerationFull-thickness skin breakdown over the tumourMust be direct tumour ulceration, not post-biopsy/trauma
Macroscopic satellite skin nodulesVisible discrete tumour nodules in skin of the same breastIpsilateral only; microscopic skin nodules alone are NOT sufficient
Skin oedema / peau d'orangeLymphatic blockage → skin thickening + follicular pittingMust involve the breast skin (ipsilateral); if >1/3 of breast = consider T4d

What does NOT count for T4b:

  • Dimpling / tethering / fixity of skin = NOT T4b (these are Cooper's ligament signs, not direct skin invasion)
  • Dermis invasion alone on histology = NOT T4b (the AJCC 8th explicitly states this)
  • Peau d'orange if it involves >1/3 of breast + erythema = T4d (inflammatory carcinoma), NOT T4b

T4c and T4d — Complete the Picture

TDefinition
T4cBoth T4a AND T4b present simultaneously
T4dInflammatory carcinoma: peau d'orange + erythema involving >1/3 of breast surface ± a lump; caused by dermal lymphatic tumour emboli (not infection); diagnosed CLINICALLY

The Critical Exam Traps

Trap 1: "Tumour fixed to pectoralis major = T4a"WRONG. Pectoralis is NOT chest wall. Tumour must invade ribs/intercostals/serratus.
Trap 2: "Any skin involvement = T4b"WRONG. Dermis invasion alone on histology does NOT qualify. Must have ulceration, satellite nodules, or oedema/peau d'orange macroscopically.
Trap 3: "Peau d'orange = T4b always"WRONG. Peau d'orange involving >1/3 of breast + erythema = T4d (IBC). Peau d'orange that does not meet IBC criteria = T4b.
Trap 4: "Tethering / dimpling = T4b"WRONG. These are Cooper's ligament contraction signs. They do NOT represent true skin invasion. They may not even change T category.

Summary Table

FeatureT4aT4b
Structure involvedChest wall (ribs, intercostals, serratus)Skin of breast
Pectoralis muscle invasionNOT T4aNot relevant
Dermis invasion alone (histology)Not applicableNOT T4b
Qualifying signsDeep immobility on chest wallUlceration, macroscopic satellite nodules, peau d'orange/oedema
Clinical testImmobile on chest wall even with pectoralis relaxedVisible skin breakdown, nodules, or oedema
CombinedT4c = T4a + T4b
IBC rulePeau d'orange >1/3 breast + erythema = T4d, NOT T4b
Sources: Bailey & Love 28th ed. Table 58.6; Schwartz's Principles of Surgery 11th ed. - AJCC 8th Edition TNM tables

Generate a quick reference pdf on breast cancer staging with decision algorithms Explain the major traps also.

Reading File
Running Command

mkdir -p /tmp/workspace/breast-staging && python3 -c "from reportlab.lib.pagesizes import A4; print('reportlab ok')"

Running Command

cat > /tmp/workspace/breast-staging/build_pdf.py << 'PYEOF' from reportlab.lib.pagesizes import A4 from reportlab.lib import colors from reportlab.lib.units import mm, cm from reportlab.lib.styles import ParagraphStyle, getSampleStyleSheet from reportlab.lib.enums import TA_CENTER, TA_LEFT, TA_JUSTIFY from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle, PageBreak, HRFlowable, KeepTogether) from reportlab.platypus.flowables import Flowable from reportlab.graphics.shapes import Drawing, Rect, String, Line, Arrow, Polygon from reportlab.graphics import renderPDF import math # ── colours ────────────────────────────────────────────────────────────────── NAVY = colors.HexColor('#1A356E') CRIMSON = colors.HexColor('#C0392B') FOREST = colors.HexColor('#1A6E4A') AMBER = colors.HexColor('#D35400') PURPLE = colors.HexColor('#6C3483') TEAL = colors.HexColor('#117A65') STEEL = colors.HexColor('#2E86C1') LGRAY = colors.HexColor('#F0F3F4') MGRAY = colors.HexColor('#D5D8DC') DGRAY = colors.HexColor('#566573') WHITE = colors.white BLACK = colors.black GOLD = colors.HexColor('#F1C40F') LTRED = colors.HexColor('#FADBD8') LTGREEN = colors.HexColor('#D5F5E3') LTBLUE = colors.HexColor('#D6EAF8') LTYELLOW = colors.HexColor('#FEF9E7') LTPURPLE = colors.HexColor('#EAD1FF') W, H = A4 # 595.27 x 841.89 pts # ── styles ─────────────────────────────────────────────────────────────────── def make_styles(): s = {} base = ParagraphStyle('base', fontName='Helvetica', fontSize=9, leading=13, textColor=BLACK) s['title'] = ParagraphStyle('title', fontName='Helvetica-Bold', fontSize=22, leading=28, textColor=WHITE, alignment=TA_CENTER) s['sub'] = ParagraphStyle('sub', fontName='Helvetica', fontSize=11, leading=16, textColor=WHITE, alignment=TA_CENTER) s['h1'] = ParagraphStyle('h1', fontName='Helvetica-Bold', fontSize=13, leading=18, textColor=WHITE, alignment=TA_CENTER) s['h2'] = ParagraphStyle('h2', fontName='Helvetica-Bold', fontSize=11, leading=15, textColor=NAVY) s['h2w'] = ParagraphStyle('h2w', fontName='Helvetica-Bold', fontSize=11, leading=15, textColor=WHITE, alignment=TA_CENTER) s['body'] = ParagraphStyle('body', fontName='Helvetica', fontSize=8.5, leading=13, textColor=BLACK) s['bodysm'] = ParagraphStyle('bodysm', fontName='Helvetica', fontSize=7.5, leading=11, textColor=BLACK) s['bold'] = ParagraphStyle('bold', fontName='Helvetica-Bold', fontSize=8.5, leading=13, textColor=BLACK) s['trap'] = ParagraphStyle('trap', fontName='Helvetica', fontSize=8.5, leading=13, textColor=CRIMSON) s['trapbold']= ParagraphStyle('trapbold',fontName='Helvetica-Bold', fontSize=9, leading=13, textColor=CRIMSON) s['ok'] = ParagraphStyle('ok', fontName='Helvetica-Bold', fontSize=8.5, leading=13, textColor=FOREST) s['center'] = ParagraphStyle('center', fontName='Helvetica', fontSize=8.5, leading=12, alignment=TA_CENTER) s['centerbold'] = ParagraphStyle('centerbold', fontName='Helvetica-Bold', fontSize=9, leading=13, alignment=TA_CENTER, textColor=NAVY) s['note'] = ParagraphStyle('note', fontName='Helvetica-Oblique', fontSize=7.5, leading=11, textColor=DGRAY) s['tblhdr'] = ParagraphStyle('tblhdr', fontName='Helvetica-Bold', fontSize=8, leading=11, textColor=WHITE, alignment=TA_CENTER) s['tblcell'] = ParagraphStyle('tblcell', fontName='Helvetica', fontSize=8, leading=11, textColor=BLACK) s['tblbold'] = ParagraphStyle('tblbold', fontName='Helvetica-Bold', fontSize=8, leading=11, textColor=BLACK) return s ST = make_styles() # ── helpers ─────────────────────────────────────────────────────────────────── def section_header(text, color=NAVY, text_color=WHITE): tbl = Table([[Paragraph(text, ST['h1'])]], colWidths=[W - 40*mm]) tbl.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,-1), color), ('ROUNDEDCORNERS', [4, 4, 4, 4]), ('TOPPADDING', (0,0), (-1,-1), 6), ('BOTTOMPADDING', (0,0), (-1,-1), 6), ('LEFTPADDING', (0,0), (-1,-1), 10), ('RIGHTPADDING', (0,0), (-1,-1), 10), ])) return tbl def colored_cell(text, bg, fg=BLACK, bold=False, fontsize=8, align=TA_LEFT): fn = 'Helvetica-Bold' if bold else 'Helvetica' sty = ParagraphStyle('cc', fontName=fn, fontSize=fontsize, leading=fontsize+3, textColor=fg, alignment=align) return Paragraph(text, sty) def trap_box(num, title, wrong, right, note=''): hdr = [[colored_cell(f'⚠ TRAP {num}: {title}', LTRED, CRIMSON, bold=True, fontsize=9)]] tbl_hdr = Table(hdr, colWidths=[W-40*mm]) tbl_hdr.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,-1), LTRED), ('BOX', (0,0), (-1,-1), 1.2, CRIMSON), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('LEFTPADDING', (0,0), (-1,-1), 8), ])) body_rows = [ [colored_cell('✗ WRONG:', WHITE, CRIMSON, bold=True), colored_cell(wrong, WHITE, CRIMSON)], [colored_cell('✓ CORRECT:', WHITE, FOREST, bold=True), colored_cell(right, WHITE, FOREST)], ] if note: body_rows.append([colored_cell('📌 NOTE:', WHITE, AMBER, bold=True), colored_cell(note, WHITE, AMBER)]) tbl_body = Table(body_rows, colWidths=[30*mm, W-40*mm-30*mm]) tbl_body.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,-1), WHITE), ('BOX', (0,0), (-1,-1), 1.2, CRIMSON), ('LINEABOVE', (0,0), (-1,0), 0, WHITE), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 8), ('VALIGN', (0,0), (-1,-1), 'TOP'), ])) return [tbl_hdr, tbl_body, Spacer(1, 4*mm)] # ══════════════════════════════════════════════════════════════════════════════ # BUILD DOCUMENT # ══════════════════════════════════════════════════════════════════════════════ path = '/tmp/workspace/breast-staging/Breast_Cancer_Staging_QR.pdf' doc = SimpleDocTemplate(path, pagesize=A4, leftMargin=20*mm, rightMargin=20*mm, topMargin=18*mm, bottomMargin=18*mm) story = [] # ───────────────────────────────────────────────────────────────────────────── # TITLE BLOCK # ───────────────────────────────────────────────────────────────────────────── title_data = [[ Paragraph('BREAST CANCER STAGING', ST['title']), ],[ Paragraph('AJCC 8th Edition · Quick Reference + Decision Algorithms + Exam Traps', ST['sub']), ]] title_tbl = Table(title_data, colWidths=[W-40*mm]) title_tbl.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,-1), NAVY), ('ROUNDEDCORNERS', [6,6,6,6]), ('TOPPADDING', (0,0), (-1,-1), 8), ('BOTTOMPADDING', (0,0), (-1,-1), 8), ('LEFTPADDING', (0,0), (-1,-1), 12), ('RIGHTPADDING', (0,0), (-1,-1), 12), ])) story.append(title_tbl) story.append(Spacer(1, 5*mm)) # ───────────────────────────────────────────────────────────────────────────── # SECTION 1 — T STAGING # ───────────────────────────────────────────────────────────────────────────── story.append(section_header('T — PRIMARY TUMOUR STAGING', NAVY)) story.append(Spacer(1, 2*mm)) t_headers = [ colored_cell('T', NAVY, WHITE, bold=True, align=TA_CENTER), colored_cell('Size / Criteria', NAVY, WHITE, bold=True), colored_cell('Key Rule / Trap', NAVY, WHITE, bold=True), ] t_rows = [ [colored_cell('Tis\n(DCIS)', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('Ductal carcinoma in situ — cells within basement membrane\nTis (Paget) = Paget\'s of nipple NOT associated with underlying DCIS/IDC', LGRAY, BLACK), colored_cell('LCIS is NO LONGER Tis in AJCC 8th — classified as benign\nPaget\'s WITH underlying IDC/DCIS → staged by the IDC/DCIS size', LTYELLOW, AMBER, bold=False)], [colored_cell('T1mi', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('Microinvasion ≤ 1 mm', LGRAY, BLACK), colored_cell('Multiple foci of microinvasion → use LARGEST focus, NOT sum', LTYELLOW, AMBER)], [colored_cell('T1a', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('> 1 mm to ≤ 5 mm', LGRAY, BLACK), colored_cell('Round 1.1–1.9 mm → report as 2 mm (T1a)', LGRAY, DGRAY)], [colored_cell('T1b', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('> 5 mm to ≤ 10 mm', LGRAY, BLACK), colored_cell('', LGRAY, BLACK)], [colored_cell('T1c', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('> 10 mm to ≤ 20 mm', LGRAY, BLACK), colored_cell('', LGRAY, BLACK)], [colored_cell('T2', LTBLUE, STEEL, bold=True, align=TA_CENTER), colored_cell('> 20 mm to ≤ 50 mm', LTBLUE, BLACK), colored_cell('Clinical vs. pathologic size → use pathologic (takes precedence)', LTBLUE, DGRAY)], [colored_cell('T3', colors.HexColor('#FAD7A0'), AMBER, bold=True, align=TA_CENTER), colored_cell('> 50 mm', colors.HexColor('#FAD7A0'), BLACK), colored_cell('T3 = size only; NO skin/chest wall involvement', colors.HexColor('#FAD7A0'), AMBER)], [colored_cell('T4a', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('Extension to chest wall\n(ribs, intercostal muscles, serratus anterior)', LTRED, BLACK), colored_cell('⚠ Pectoralis muscle invasion/adherence = NOT T4a\nChest wall ≠ pectoralis', LTRED, CRIMSON, bold=True)], [colored_cell('T4b', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('Skin: ulceration AND/OR macroscopic satellite nodules\nAND/OR oedema (peau d\'orange) — NOT meeting IBC criteria', LTRED, BLACK), colored_cell('⚠ Dermis invasion on histology alone = NOT T4b\n⚠ Dimpling/tethering = NOT T4b\n⚠ Peau d\'orange > 1/3 breast + erythema = T4d (IBC), not T4b', LTRED, CRIMSON, bold=True)], [colored_cell('T4c', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('Both T4a AND T4b', LTRED, BLACK), colored_cell('T4c = T4a + T4b combined', LTRED, CRIMSON)], [colored_cell('T4d', colors.HexColor('#D2B4DE'), PURPLE, bold=True, align=TA_CENTER), colored_cell('Inflammatory carcinoma (IBC)\nPeau d\'orange + erythema > 1/3 of breast ± lump', colors.HexColor('#D2B4DE'), BLACK), colored_cell('Diagnosis is CLINICAL (not radiological or histological alone)\nDermal lymphatic emboli on biopsy — confirms but not required\nNACT first → MRM → RT; NO immediate reconstruction', colors.HexColor('#D2B4DE'), PURPLE, bold=True)], ] t_table_data = [t_headers] + t_rows t_table = Table(t_table_data, colWidths=[14*mm, 68*mm, 73*mm]) t_table.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), NAVY), ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 5), ('RIGHTPADDING', (0,0), (-1,-1), 5), ('ROWBACKGROUNDS', (0,1), (-1,-1), [LGRAY, WHITE]), ])) story.append(t_table) story.append(Spacer(1, 3*mm)) story.append(Paragraph('* Pathologic size takes precedence over clinical size. For mixed IDC + DCIS: T is based on IDC (invasive) component ONLY, not total tumour size.', ST['note'])) story.append(Spacer(1, 4*mm)) # ───────────────────────────────────────────────────────────────────────────── # T4 DECISION ALGORITHM (drawn as a flowchart table) # ───────────────────────────────────────────────────────────────────────────── story.append(section_header('T4 DECISION ALGORITHM — Is it T4?', CRIMSON)) story.append(Spacer(1, 2*mm)) algo_style = ParagraphStyle('alg', fontName='Helvetica', fontSize=8.5, leading=13) algo_bold = ParagraphStyle('algb', fontName='Helvetica-Bold', fontSize=8.5, leading=13) def box(text, bg, fg=BLACK, bold=False): fn = 'Helvetica-Bold' if bold else 'Helvetica' sty = ParagraphStyle('bx', fontName=fn, fontSize=8.5, leading=12, textColor=fg, alignment=TA_CENTER) t = Table([[Paragraph(text, sty)]], colWidths=[None]) t.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,-1), bg), ('BOX', (0,0), (-1,-1), 1, fg), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 6), ('RIGHTPADDING', (0,0), (-1,-1), 6), ])) return t # Flowchart as structured table q_col = 80*mm a_col = 30*mm r_col = W - 40*mm - q_col - a_col flow_data = [ # row 0 — header [colored_cell('QUESTION', NAVY, WHITE, bold=True, align=TA_CENTER), colored_cell('ANSWER', NAVY, WHITE, bold=True, align=TA_CENTER), colored_cell('RESULT', NAVY, WHITE, bold=True, align=TA_CENTER)], # row 1 [colored_cell('Tumour any size with direct extension to chest wall\nOR skin (ulceration/nodules)?', LGRAY, BLACK), colored_cell('NO', LGRAY, FOREST, bold=True, align=TA_CENTER), colored_cell('→ NOT T4\n (Could be T1/T2/T3 depending on size)', LGRAY, FOREST)], [colored_cell('', LGRAY, BLACK), colored_cell('YES ↓', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('', LGRAY, BLACK)], # row 3 [colored_cell('Does skin involvement = erythema + peau d\'orange\n> 1/3 of breast surface?', colors.HexColor('#EBD5F5'), PURPLE), colored_cell('YES', colors.HexColor('#EBD5F5'), PURPLE, bold=True, align=TA_CENTER), colored_cell('→ T4d (Inflammatory Carcinoma)\n Must also have clinical IBC picture', colors.HexColor('#EBD5F5'), PURPLE, bold=True)], [colored_cell('', colors.HexColor('#EBD5F5'), BLACK), colored_cell('NO ↓', colors.HexColor('#EBD5F5'), NAVY, bold=True, align=TA_CENTER), colored_cell('', colors.HexColor('#EBD5F5'), BLACK)], # row 5 [colored_cell('Is it ONLY dermis invasion on histology\n(no ulceration, no nodules, no oedema)?', LTYELLOW, AMBER), colored_cell('YES', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('→ NOT T4b\n Dermis invasion alone does NOT qualify\n Stage by tumour SIZE (T1/T2/T3)', LTYELLOW, AMBER, bold=True)], [colored_cell('', LTYELLOW, BLACK), colored_cell('NO ↓', LTYELLOW, NAVY, bold=True, align=TA_CENTER), colored_cell('', LTYELLOW, BLACK)], # row 7 [colored_cell('Is it skin involvement:\nulceration / macroscopic sat. nodules / peau d\'orange\n(NOT meeting IBC criteria)?', LTRED, CRIMSON), colored_cell('YES', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('→ T4b', LTRED, CRIMSON, bold=True)], [colored_cell('', LTRED, BLACK), colored_cell('NO ↓', LTRED, NAVY, bold=True, align=TA_CENTER), colored_cell('', LTRED, BLACK)], # row 9 [colored_cell('Is it chest wall invasion:\nribs / intercostal muscles / serratus anterior?\n(NOT just pectoralis)', LTRED, CRIMSON), colored_cell('YES', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('→ T4a', LTRED, CRIMSON, bold=True)], [colored_cell('', LTRED, BLACK), colored_cell('↕ BOTH?', LTRED, NAVY, bold=True, align=TA_CENTER), colored_cell('', LTRED, BLACK)], # row 11 [colored_cell('Both chest wall AND qualifying skin signs present?', LTRED, CRIMSON), colored_cell('YES', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('→ T4c (= T4a + T4b)', LTRED, CRIMSON, bold=True)], # row 12 — pectoralis trap [colored_cell('Tumour fixed to / invading PECTORALIS MUSCLE only?', LTYELLOW, AMBER), colored_cell('YES', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('→ NOT T4a!\n Pectoralis ≠ chest wall\n Stage by SIZE only (T1/T2/T3)\n Note deep fixity on examination', LTYELLOW, AMBER, bold=True)], ] flow_tbl = Table(flow_data, colWidths=[q_col, a_col, r_col]) flow_tbl.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), NAVY), ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('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(flow_tbl) story.append(Spacer(1, 4*mm)) # ───────────────────────────────────────────────────────────────────────────── # PAGE 2 — N STAGING # ───────────────────────────────────────────────────────────────────────────── story.append(PageBreak()) story.append(section_header('N — REGIONAL LYMPH NODE STAGING', FOREST)) story.append(Spacer(1, 2*mm)) # Clinical N story.append(Paragraph('CLINICAL N (cN) — Based on physical exam + imaging', ST['h2'])) story.append(Spacer(1, 1*mm)) cn_data = [ [colored_cell('cN', FOREST, WHITE, bold=True, align=TA_CENTER), colored_cell('Clinical Criteria', FOREST, WHITE, bold=True), colored_cell('Key Points', FOREST, WHITE, bold=True)], [colored_cell('cN0', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('No regional LN metastasis (imaging or clinical exam)', LTGREEN, BLACK), colored_cell('USS axilla mandatory; CNB any suspicious node (cortex >3mm, loss of hilum)', LTGREEN, DGRAY)], [colored_cell('cN1', LGRAY, FOREST, bold=True, align=TA_CENTER), colored_cell('Movable ipsilateral Level I/II axillary LN metastasis', LGRAY, BLACK), colored_cell('Mobile = can be separated from each other and structures', LGRAY, DGRAY)], [colored_cell('cN2a', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('Fixed/matted ipsilateral Level I/II axillary LN', LTYELLOW, BLACK), colored_cell('Fixed = cannot be moved; matted = fused nodes', LTYELLOW, AMBER)], [colored_cell('cN2b', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('Clinically detected ipsilateral internal mammary LN\nwithout axillary LN metastasis', LTYELLOW, BLACK), colored_cell('Clinically detected = by imaging or exam; NOT by SLN biopsy', LTYELLOW, AMBER)], [colored_cell('cN3a', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('Ipsilateral infraclavicular (Level III) LN metastasis', LTRED, BLACK), colored_cell('Level III = medial to pectoralis minor (apical nodes)', LTRED, CRIMSON)], [colored_cell('cN3b', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('Ipsilateral internal mammary LN + axillary LN metastasis', LTRED, BLACK), colored_cell('Both IM and axillary nodes involved = N3b', LTRED, CRIMSON)], [colored_cell('cN3c', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('Ipsilateral supraclavicular LN metastasis', LTRED, BLACK), colored_cell('⚠ Supraclavicular = N3c (NOT M1)', LTRED, CRIMSON, bold=True)], ] cn_tbl = Table(cn_data, colWidths=[16*mm, 82*mm, 57*mm]) cn_tbl.setStyle(TableStyle([ ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(cn_tbl) story.append(Spacer(1, 3*mm)) # Pathological N story.append(Paragraph('PATHOLOGICAL N (pN) — Based on surgical specimen / SLNB + ALND', ST['h2'])) story.append(Spacer(1, 1*mm)) pn_data = [ [colored_cell('pN', TEAL, WHITE, bold=True, align=TA_CENTER), colored_cell('Pathological Criteria', TEAL, WHITE, bold=True), colored_cell('Threshold / Key Rule', TEAL, WHITE, bold=True)], [colored_cell('pN0', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('No regional LN metastasis\npN0(i+) = isolated tumour cells (ITCs)', LTGREEN, BLACK), colored_cell('ITCs: clusters ≤ 0.2 mm OR < 200 cells = pN0(i+)\nNOT clinically significant; NO treatment change', LTGREEN, FOREST)], [colored_cell('pN1mi', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('Micrometastasis', LGRAY, BLACK), colored_cell('> 0.2 mm BUT ≤ 2.0 mm\nOR > 200 cells in single cross-section', LGRAY, NAVY)], [colored_cell('pN1a', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('1–3 positive axillary LN\n(at least 1 > 2 mm)', LGRAY, BLACK), colored_cell('', LGRAY, BLACK)], [colored_cell('pN1b', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('Internal mammary LN with micrometastasis\nor macrometastasis by SLN biopsy (not clinically detected)', LGRAY, BLACK), colored_cell('Not clinically detected = found only on SLN biopsy\nClinically detected IM → pN2b', LGRAY, DGRAY)], [colored_cell('pN1c', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('1–3 axillary LN AND IM LN by SLN biopsy', LGRAY, BLACK), colored_cell('', LGRAY, BLACK)], [colored_cell('pN2a', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('4–9 positive axillary LN\n(at least 1 > 2 mm)', LTYELLOW, BLACK), colored_cell('Determines PMRT eligibility ≥ 4 nodes', LTYELLOW, AMBER)], [colored_cell('pN2b', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('Clinically detected ipsilateral IM LN\nwithout axillary LN metastasis', LTYELLOW, BLACK), colored_cell('Clinically detected = by imaging', LTYELLOW, AMBER)], [colored_cell('pN3a', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('≥ 10 positive axillary LN OR\ninfraclavicular (Level III) LN', LTRED, BLACK), colored_cell('Level III/infraclavicular = pN3a', LTRED, CRIMSON)], [colored_cell('pN3b', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('pN1a or pN2a WITH clinically detected IM LN, OR\n≥ 4 axillary LN WITH IM LN by SLN biopsy', LTRED, BLACK), colored_cell('', LTRED, CRIMSON)], [colored_cell('pN3c', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('Ipsilateral supraclavicular LN metastasis', LTRED, BLACK), colored_cell('⚠ Still N3c — NOT M1\nContralateral axillary = M1', LTRED, CRIMSON, bold=True)], ] pn_tbl = Table(pn_data, colWidths=[16*mm, 82*mm, 57*mm]) pn_tbl.setStyle(TableStyle([ ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(pn_tbl) story.append(Spacer(1, 3*mm)) # N decision algorithm story.append(section_header('N DECISION ALGORITHM — Axilla Assessment', TEAL)) story.append(Spacer(1, 2*mm)) n_algo_data = [ [colored_cell('STEP', TEAL, WHITE, bold=True, align=TA_CENTER), colored_cell('QUESTION', TEAL, WHITE, bold=True), colored_cell('YES → ACTION', TEAL, WHITE, bold=True), colored_cell('NO → ACTION', TEAL, WHITE, bold=True)], [colored_cell('1', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('Clinically suspicious axilla?\n(exam or USS: cortex > 3mm, loss of hilum)', LTGREEN, BLACK), colored_cell('→ USS-guided CNB of node\nIf confirmed +ve: cN1–3\nPlan ALND or NACT → re-stage', LTGREEN, FOREST), colored_cell('→ Proceed to SLNB at surgery\n(dual technique)', LTGREEN, FOREST)], [colored_cell('2', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('SLNB performed — SLN positive?', LGRAY, BLACK), colored_cell('→ Apply Z0011 criteria:\nBCS + WBI + systemic Rx\n1–2 SLN+: OMIT ALND\n(ACOSOG Z0011)', LGRAY, NAVY), colored_cell('→ pN0 or pN1mi\nNo further axillary surgery\n(if pN1mi: discuss systemic therapy)', LGRAY, NAVY)], [colored_cell('3', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('SLN+ AND mastectomy planned\nOR > 2 SLN+ OR macromets?', LTYELLOW, BLACK), colored_cell('→ Complete ALND (Levels I + II)\nMinimum 10 nodes required', LTYELLOW, AMBER), colored_cell('→ Axillary RT as alternative\n(AMAROS trial: equivalent\nlocoregional control,\nless lymphoedema)', LTYELLOW, AMBER)], [colored_cell('4\n(post-\nNACT)', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('cN+ patient who received NACT:\nAxilla now clinically negative (ycN0)?', LTRED, BLACK), colored_cell('→ TAD preferred:\nSLNB + excision of\npre-NACT clipped node\n(false -ve rate < 10%)', LTRED, CRIMSON), colored_cell('→ ALND if:\nStill clinically node+\n(ycN1-3)', LTRED, CRIMSON)], ] n_algo_tbl = Table(n_algo_data, colWidths=[14*mm, 55*mm, 60*mm, 26*mm]) n_algo_tbl.setStyle(TableStyle([ ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(n_algo_tbl) story.append(Spacer(1, 3*mm)) story.append(Paragraph('TAD = Targeted Axillary Dissection (SLNB + removal of pre-NACT biopsy-clipped node) | ALND = Axillary Lymph Node Dissection (Levels I + II)', ST['note'])) # ───────────────────────────────────────────────────────────────────────────── # PAGE 3 — M STAGING + STAGE GROUPS # ───────────────────────────────────────────────────────────────────────────── story.append(PageBreak()) story.append(section_header('M — DISTANT METASTASIS', AMBER)) story.append(Spacer(1, 2*mm)) m_data = [ [colored_cell('M', AMBER, WHITE, bold=True, align=TA_CENTER), colored_cell('Criteria', AMBER, WHITE, bold=True), colored_cell('Notes', AMBER, WHITE, bold=True)], [colored_cell('M0', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('No clinical or radiological evidence of distant metastasis', LTGREEN, BLACK), colored_cell('', LTGREEN, BLACK)], [colored_cell('M0(i+)', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('Circulating tumour cells (CTCs) or\ndisseminated tumour cells in bone marrow found\nbut no clinical/radiological distant metastasis', LTYELLOW, BLACK), colored_cell('Molecular/histological finding only\nNo change to clinical staging or management', LTYELLOW, AMBER)], [colored_cell('M1', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('Distant metastasis:\n• Any non-regional LN (including contralateral axilla, cervical)\n• Bone, lung, liver, brain, adrenal, skin beyond primary area', LTRED, BLACK), colored_cell('⚠ Contralateral axillary LN = M1\n⚠ Cervical LN = M1\nSupraclavicular = N3c (NOT M1)', LTRED, CRIMSON, bold=True)], ] m_tbl = Table(m_data, colWidths=[18*mm, 90*mm, 47*mm]) m_tbl.setStyle(TableStyle([ ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(m_tbl) story.append(Spacer(1, 4*mm)) # ANATOMIC STAGE GROUPS story.append(section_header('ANATOMIC STAGE GROUPS (AJCC 8th Edition)', NAVY)) story.append(Spacer(1, 2*mm)) sg_data = [ [colored_cell('Stage', NAVY, WHITE, bold=True, align=TA_CENTER), colored_cell('T', NAVY, WHITE, bold=True, align=TA_CENTER), colored_cell('N', NAVY, WHITE, bold=True, align=TA_CENTER), colored_cell('M', NAVY, WHITE, bold=True, align=TA_CENTER), colored_cell('5-yr Survival', NAVY, WHITE, bold=True, align=TA_CENTER), colored_cell('Management Implication', NAVY, WHITE, bold=True)], [colored_cell('0', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('Tis', LTGREEN, BLACK, align=TA_CENTER), colored_cell('N0', LTGREEN, BLACK, align=TA_CENTER), colored_cell('M0', LTGREEN, BLACK, align=TA_CENTER), colored_cell('~100%', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('BCS + RT ± endocrine; or mastectomy', LTGREEN, BLACK)], [colored_cell('IA', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('T1', LTGREEN, BLACK, align=TA_CENTER), colored_cell('N0', LTGREEN, BLACK, align=TA_CENTER), colored_cell('M0', LTGREEN, BLACK, align=TA_CENTER), colored_cell('~99%', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('BCS + RT or mastectomy; SLNB; adjuvant systemic', LTGREEN, BLACK)], [colored_cell('IB', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('T0–T1', LTGREEN, BLACK, align=TA_CENTER), colored_cell('N1mi', LTGREEN, BLACK, align=TA_CENTER), colored_cell('M0', LTGREEN, BLACK, align=TA_CENTER), colored_cell('~99%', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('As IA; micrometastasis: discuss systemic therapy', LTGREEN, BLACK)], [colored_cell('IIA', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('T0–T1\nor T2', LGRAY, BLACK, align=TA_CENTER), colored_cell('N1\nor N0', LGRAY, BLACK, align=TA_CENTER), colored_cell('M0', LGRAY, BLACK, align=TA_CENTER), colored_cell('~90%', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('BCS or mastectomy; SLNB or ALND; adjuvant Rx', LGRAY, BLACK)], [colored_cell('IIB', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('T2\nor T3', LGRAY, BLACK, align=TA_CENTER), colored_cell('N1\nor N0', LGRAY, BLACK, align=TA_CENTER), colored_cell('M0', LGRAY, BLACK, align=TA_CENTER), colored_cell('~80%', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('BCS (if feasible) or mastectomy; consider NACT', LGRAY, BLACK)], [colored_cell('IIIA', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('T0–T3\nor T3', LTYELLOW, BLACK, align=TA_CENTER), colored_cell('N2\nor N1', LTYELLOW, BLACK, align=TA_CENTER), colored_cell('M0', LTYELLOW, BLACK, align=TA_CENTER), colored_cell('~60–70%', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('NACT → surgery; ALND; PMRT; multidisciplinary', LTYELLOW, BLACK)], [colored_cell('IIIB', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('T4', LTRED, BLACK, align=TA_CENTER), colored_cell('N0–N2', LTRED, BLACK, align=TA_CENTER), colored_cell('M0', LTRED, BLACK, align=TA_CENTER), colored_cell('~50–60%', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('NACT → MRM → PMRT; no immediate reconstruction if T4d', LTRED, BLACK)], [colored_cell('IIIC', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('Any T', LTRED, BLACK, align=TA_CENTER), colored_cell('N3', LTRED, BLACK, align=TA_CENTER), colored_cell('M0', LTRED, BLACK, align=TA_CENTER), colored_cell('~40–50%', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('NACT → MRM → PMRT (chest wall + regional nodes)', LTRED, BLACK)], [colored_cell('IV', colors.HexColor('#D7BDE2'), PURPLE, bold=True, align=TA_CENTER), colored_cell('Any T', colors.HexColor('#D7BDE2'), BLACK, align=TA_CENTER), colored_cell('Any N', colors.HexColor('#D7BDE2'), BLACK, align=TA_CENTER), colored_cell('M1', colors.HexColor('#D7BDE2'), BLACK, align=TA_CENTER), colored_cell('~28%\n(5-yr)', colors.HexColor('#D7BDE2'), PURPLE, bold=True, align=TA_CENTER), colored_cell('Systemic therapy (endocrine, targeted, chemo, immuno);\npalliative surgery/RT for symptom control; MDT', colors.HexColor('#D7BDE2'), BLACK)], ] sg_tbl = Table(sg_data, colWidths=[13*mm, 16*mm, 14*mm, 12*mm, 18*mm, 82*mm]) sg_tbl.setStyle(TableStyle([ ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 4), ('RIGHTPADDING', (0,0), (-1,-1), 4), ])) story.append(sg_tbl) story.append(Spacer(1, 3*mm)) story.append(Paragraph('* Survival figures are approximate 5-year relative survival for anatomic stage groups (SEER data). Prognostic stage groups incorporating ER/PR/HER2/grade may differ significantly.', ST['note'])) # ───────────────────────────────────────────────────────────────────────────── # PAGE 4 — STAGING WORKUP ALGORITHM # ───────────────────────────────────────────────────────────────────────────── story.append(PageBreak()) story.append(section_header('STAGING WORKUP — DECISION ALGORITHM', NAVY)) story.append(Spacer(1, 2*mm)) wu_data = [ [colored_cell('Stage', NAVY, WHITE, bold=True, align=TA_CENTER), colored_cell('Mandatory Workup', NAVY, WHITE, bold=True), colored_cell('Additional Investigations', NAVY, WHITE, bold=True), colored_cell('Notes / Traps', NAVY, WHITE, bold=True)], [colored_cell('I–II\n(Early)', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('• CNB: histology, grade, ER/PR/HER2/Ki-67\n• Bilateral mammography ± USS\n• Axillary USS ± CNB\n• Bloods: CBC, LFTs, calcium, ALP', LTGREEN, BLACK), colored_cell('• MRI breast (dense tissue, ILC,\n multifocality query)\n• Genomic assay if ER+/HER2-/\n node-negative (Oncotype DX)', LTGREEN, FOREST), colored_cell('⚠ NO routine CT/bone scan in\nasymptomatic Stage I–II\n(very low yield, unnecessary\nradiation + cost)', LTGREEN, CRIMSON, bold=True)], [colored_cell('III\n(Locally\nAdv.)', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('• All of above\n• CT chest / abdomen / pelvis\n• Bone scintigraphy (bone scan)\n OR PET-CT (preferred — single modality)', LTYELLOW, BLACK), colored_cell('• PET-CT: detects distant mets\n + equivocal findings\n• MRI brain if neuro symptoms\n or HER2+ / TNBC', LTYELLOW, AMBER), colored_cell('⚠ PET-CT superior to CT + bone\nscan for Stage III; avoids two\nseparate imaging tests', LTYELLOW, AMBER, bold=True)], [colored_cell('IV\n(Metastatic)', colors.HexColor('#D7BDE2'), PURPLE, bold=True, align=TA_CENTER), colored_cell('• CT chest/abdomen/pelvis\n• Bone scan OR PET-CT\n• Biopsy of metastatic site\n (re-test ER/PR/HER2 — receptor\n discordance occurs in ~20%)', colors.HexColor('#D7BDE2'), BLACK), colored_cell('• MRI brain if symptomatic\n• Liquid biopsy (ctDNA) for\n ESR1/PIK3CA mutations\n to guide targeted therapy', colors.HexColor('#D7BDE2'), PURPLE), colored_cell('⚠ ALWAYS biopsy metastatic site\nReceptor status may change\n(ER-→ER+; HER2 discordance)\n— changes treatment plan', colors.HexColor('#D7BDE2'), CRIMSON, bold=True)], [colored_cell('GENETIC\nTESTING', LTPURPLE, PURPLE, bold=True, align=TA_CENTER), colored_cell('NCCN indications for germline panel testing:\n• Breast cancer < 50 yrs\n• Triple-negative breast cancer (any age)\n• Male breast cancer\n• Multiple primary breast cancers\n• Ashkenazi Jewish heritage\n• Family history of breast < 50yrs, ovarian,\n pancreatic, or high-risk prostate cancer', LTPURPLE, BLACK), colored_cell('BRCA1/2, PALB2, CHEK2, ATM,\nCDH1 (lobular), STK11,\nTP53 (Li-Fraumeni)\n\nBRCA1: 60–80% lifetime BC risk\nBRCA2: 50–85% lifetime BC risk\nPALB2: ~35% lifetime BC risk', LTPURPLE, PURPLE), colored_cell('⚠ Genetic result changes:\n• Surgical planning\n (bilateral mastectomy)\n• Contralateral prophylaxis\n• Ovarian cancer prevention\n• Family cascade testing\n• PARP inhibitor eligibility', LTPURPLE, CRIMSON, bold=True)], ] wu_tbl = Table(wu_data, colWidths=[16*mm, 65*mm, 52*mm, 22*mm]) wu_tbl.setStyle(TableStyle([ ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(wu_tbl) story.append(Spacer(1, 3*mm)) # GENOMIC ASSAY decision algorithm story.append(Paragraph('GENOMIC ASSAY DECISION — When to Use Oncotype DX / MammaPrint?', ST['h2'])) story.append(Spacer(1, 1.5*mm)) ga_data = [ [colored_cell('Condition', TEAL, WHITE, bold=True), colored_cell('Assay', TEAL, WHITE, bold=True, align=TA_CENTER), colored_cell('Result', TEAL, WHITE, bold=True), colored_cell('Action', TEAL, WHITE, bold=True)], [colored_cell('ER+, HER2−, LN0\nInvasive BC\nPost-menopause OR age >50', LTGREEN, BLACK), colored_cell('Oncotype DX\n(21-gene RS)', LTGREEN, TEAL, bold=True, align=TA_CENTER), colored_cell('RS 0–25', LTGREEN, FOREST, bold=True), colored_cell('Endocrine therapy ONLY\n(TAILORx — chemo adds no benefit)', LTGREEN, FOREST)], [colored_cell('ER+, HER2−, LN0\nPre-menopause OR age <50', LTYELLOW, BLACK), colored_cell('Oncotype DX\n(21-gene RS)', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('RS 16–25', LTYELLOW, AMBER, bold=True), colored_cell('CONSIDER chemotherapy\n(moderate absolute benefit in <50 yrs, TAILORx)', LTYELLOW, AMBER)], [colored_cell('ER+, HER2−, LN0 or LN+\nAny menopausal status', LGRAY, BLACK), colored_cell('MammaPrint\n(70-gene)', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('Genomically\nLow Risk', LGRAY, FOREST, bold=True), colored_cell('Omit chemotherapy even if CLINICALLY high risk\n(MINDACT — ~1.5% survival difference at 5 yrs)', LGRAY, FOREST)], [colored_cell('ANY RS > 25 or\nGenomic high risk', LTRED, BLACK), colored_cell('Either assay', LTRED, CRIMSON, bold=True, align=TA_CENTER), colored_cell('High Risk', LTRED, CRIMSON, bold=True), colored_cell('Recommend adjuvant chemotherapy in addition to endocrine therapy', LTRED, CRIMSON)], ] ga_tbl = Table(ga_data, colWidths=[50*mm, 28*mm, 28*mm, 49*mm]) ga_tbl.setStyle(TableStyle([ ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 5), ])) story.append(ga_tbl) # ───────────────────────────────────────────────────────────────────────────── # PAGE 5 — EXAM TRAPS # ───────────────────────────────────────────────────────────────────────────── story.append(PageBreak()) story.append(section_header('⚠ MAJOR EXAM TRAPS IN BREAST CANCER STAGING', CRIMSON)) story.append(Spacer(1, 2*mm)) traps = [ ('1', 'Pectoralis invasion = T4a?', '"The tumour invades pectoralis major, therefore T4a."', 'Pectoralis major and minor are NOT chest wall. T4a requires invasion of ribs, intercostal muscles, or serratus anterior. Pectoralis invasion alone → stage by TUMOUR SIZE only (T1/T2/T3).', 'This is the most common MCQ trap. Test clinically: tumour fixed to chest wall even with pectoralis relaxed = T4a; fixed only when pectoralis contracts = NOT T4a.'), ('2', 'Dermis invasion alone on histology = T4b?', '"Histology shows invasion of the dermis → T4b skin involvement."', 'AJCC 8th explicitly states: "invasion of the dermis alone does NOT qualify as T4." T4b requires MACROSCOPIC skin signs: ulceration, satellite nodules, or peau d\'orange/oedema visible clinically.', 'Microscopic dermis involvement on histology is relatively common and does NOT upstage. Only macroscopic changes count.'), ('3', 'Dimpling / tethering = T4b?', '"Patient has skin dimpling over the lump → T4b."', 'Dimpling and tethering are caused by Cooper\'s ligament contraction (desmoplastic shortening) — NOT direct skin invasion. They do NOT qualify as T4b. They reflect Cooper\'s ligament involvement only.', 'Dimpling = 1 Cooper\'s ligament; Puckering = several; Tethering = many. None of these = T4b.'), ('4', 'Peau d\'orange = T4b always?', '"Peau d\'orange is present → always T4b."', 'Peau d\'orange > 1/3 of breast + erythema = T4d (Inflammatory Breast Cancer). Peau d\'orange that does NOT meet IBC criteria (< 1/3 surface, no erythema) = T4b.', 'T4d (IBC) is a CLINICAL diagnosis. Dermal lymphatic emboli on biopsy confirm but are NOT required for diagnosis.'), ('5', 'Supraclavicular nodes = M1?', '"Patient has supraclavicular lymphadenopathy → Stage IV (M1)."', 'Ipsilateral supraclavicular lymph node metastasis = N3c (Stage IIIC), NOT M1. It is still potentially curative with chemoradiation.', 'Contralateral axillary nodes or cervical nodes = M1. This distinction is clinically critical — N3c is treated with curative intent; M1 is palliative intent.'), ('6', 'LCIS = Tis (pre-cancerous)?', '"LCIS is staged as Tis, same as DCIS."', 'AJCC 8th Edition 2018: LCIS has been REMOVED from TNM staging. It is now classified as a BENIGN entity. Only DCIS (and Paget\'s of the nipple) remain as Tis.', 'LCIS is a bilateral RISK MARKER (8–10× increased risk), not a precancer requiring excision margins. ADH is managed differently from DCIS.'), ('7', 'Paget\'s disease → always Tis?', '"Paget\'s disease of the nipple → always staged as Tis(Paget)."', 'Tis(Paget) applies ONLY when Paget\'s is NOT associated with underlying DCIS or invasive carcinoma. If underlying IDC/DCIS is present, stage by the SIZE and characteristics of the underlying tumour — not Tis(Paget).', '97% of Paget\'s cases have underlying DCIS or IDC. Always image and biopsy the underlying breast.'), ('8', 'Tumour size = total tumour size on imaging?', '"Imaging shows 35 mm total lesion (IDC 20 mm + DCIS 15 mm) → T2."', 'T staging uses INVASIVE component size ONLY. If IDC is 20 mm + DCIS 15 mm = T stage is based on 20 mm IDC = T1c. The DCIS component is NOT included in T measurement.', 'DCIS component is noted separately but does not change T stage unless it is pure DCIS (then Tis). Pathologic T takes precedence over clinical/imaging T.'), ('9', 'Internal mammary nodes = M1?', '"CT shows internal mammary lymph node → M1."', 'Internal mammary nodes are REGIONAL lymph nodes (N category). Clinically detected IM LN alone (without axillary) = N2b; with axillary = N3b. They are NOT M1.', 'Only NON-REGIONAL lymph nodes = M1. Regional nodes = axillary (I/II/III), internal mammary, and supraclavicular (ipsilateral). All others = M1.'), ('10', 'IBC → operate immediately?', '"Inflammatory breast cancer with T4d → proceed to mastectomy first."', 'IBC (T4d) is treated with NEOADJUVANT CHEMOTHERAPY FIRST, then Modified Radical Mastectomy, then post-mastectomy radiation. Immediate reconstruction is CONTRAINDICATED (delays PMRT).', 'IBC is a systemic disease at presentation. Surgery-first leads to worse outcomes. Skin biopsy (dermal lymphatic emboli) confirms but is not required for diagnosis.'), ('11', 'ALND mandatory for all SLN-positive patients?', '"Any positive sentinel lymph node → proceed to full axillary clearance (ALND)."', 'ACOSOG Z0011 (landmark trial): if BCS + whole-breast radiation + systemic therapy planned, patients with 1–2 positive SLNs do NOT need completion ALND. Equivalent locoregional control and survival.', 'Z0011 does NOT apply to: mastectomy patients, > 2 positive SLNs, gross extranodal extension, or if WBI not planned. AMAROS trial supports axillary RT as alternative to ALND in SLN+ patients.'), ('12', 'Prognostic stage = anatomic stage?', '"The anatomic stage group (T2 N1 M0 = Stage IIA) is the final stage."', 'AJCC 8th introduced two stage systems: Anatomic stage (TNM only) AND Prognostic stage (incorporates ER/PR/HER2/grade/genomic assays). Prognostic stage must be reported in the US. A T2N1 ER+ grade 1 tumour may downstage prognostically.', 'Anatomic stage is still used globally and is sufficient for most international exams. Be aware that "prognostic stage" exists as a concept in newer literature.'), ] for num, title, wrong, right, note in traps: story += trap_box(num, title, wrong, right, note) # ───────────────────────────────────────────────────────────────────────────── # PAGE 6 — MANAGEMENT DECISION ALGORITHM # ───────────────────────────────────────────────────────────────────────────── story.append(PageBreak()) story.append(section_header('TREATMENT DECISION ALGORITHM BY STAGE', STEEL)) story.append(Spacer(1, 2*mm)) tx_data = [ [colored_cell('Stage', STEEL, WHITE, bold=True, align=TA_CENTER), colored_cell('Surgery', STEEL, WHITE, bold=True), colored_cell('Axilla', STEEL, WHITE, bold=True), colored_cell('RT', STEEL, WHITE, bold=True), colored_cell('Systemic Therapy', STEEL, WHITE, bold=True)], [colored_cell('0\n(DCIS)', LTGREEN, FOREST, bold=True, align=TA_CENTER), colored_cell('BCS (margins ≥2mm) or mastectomy\n(if large, multifocal, or cannot achieve margins)', LTGREEN, BLACK), colored_cell('SLNB only if:\n• Mastectomy planned\n• High-risk DCIS (G3, mass-forming, >2cm)\n(SentiNot trial: SPIO approach)', LTGREEN, FOREST), colored_cell('WBI after BCS\n(NSABP B-17)\nTumour bed boost\nif high-grade', LTGREEN, BLACK), colored_cell('ER+: Tamoxifen OR Anastrozole (post-meno)\n(NSABP B-24, NSABP B-35)\nNo chemotherapy needed', LTGREEN, BLACK)], [colored_cell('I–II\n(Early)', LGRAY, NAVY, bold=True, align=TA_CENTER), colored_cell('BCS + RT = mastectomy (NSABP B-06)\nBCS if: unifocal, adequate breast size, RT feasible\nMastectomy if: multicentric, large tumour:breast ratio, CI to RT\nNipple/skin-sparing options for reconstruction', LGRAY, BLACK), colored_cell('cN0: SLNB\n1–2 SLN+, BCS+WBI+systemic:\n→ NO ALND (Z0011)\n>2 SLN+ or mastectomy:\n→ ALND or axillary RT (AMAROS)', LGRAY, NAVY), colored_cell('After BCS:\nWBI (40Gy/15f or 26Gy/5f)\n+ boost if high-risk\nAfter mastectomy:\nPMRT if T3/T4 or ≥4 LN+', LGRAY, BLACK), colored_cell('ER+: Endocrine therapy 5–10 years\nHER2+: Trastuzumab 1 year (± pertuzumab)\nHigh-risk ER+: Abemaciclib 2 yrs (monarchE)\ngBRCA+ HER2-: Olaparib 1 yr (OlympiA)\nChemo: based on grade, LN status, genomics', LGRAY, BLACK)], [colored_cell('III\n(Locally\nAdv.)', LTYELLOW, AMBER, bold=True, align=TA_CENTER), colored_cell('NACT first (AC-T or FEC-T)\nRe-stage after 4–6 cycles\nMRM (modified radical mastectomy)\nBCS if good downstaging response\nT4d (IBC): MRM only, NO reconstruction', LTYELLOW, BLACK), colored_cell('ALND (Levels I+II)\nPost-NACT: TAD if\nypN0 (TAD preferred\nover SLNB alone)', LTYELLOW, AMBER), colored_cell('PMRT mandatory:\nChest wall +\nregional nodes\n(IM + supraclavicular)', LTYELLOW, BLACK), colored_cell('HER2+: Trastuzumab + pertuzumab with NACT\nResidual HER2+ post-NACT: T-DM1 (KATHERINE)\nTNBC: add pembrolizumab to NACT (KEYNOTE-522)\ngBRCA+: add carboplatin to NACT; olaparib adjuvant\nResidual TNBC: capecitabine (CREATE-X)', LTYELLOW, BLACK)], [colored_cell('IV\n(Meta-\nstatic)', colors.HexColor('#D7BDE2'), PURPLE, bold=True, align=TA_CENTER), colored_cell('Palliative surgery only:\n• Brain metastasis (craniotomy)\n• Spinal cord compression\n• Pathological fracture fixation\n• Toilet mastectomy (bleeding/ulcerating primary)\nNo curative surgical intent', colors.HexColor('#D7BDE2'), BLACK), colored_cell('Not applicable\n(axillary surgery\nonly for palliation)', colors.HexColor('#D7BDE2'), PURPLE), colored_cell('Palliative RT:\n• Bone mets (pain)\n• Brain mets (WBRT or SRS)\n• Spinal cord\n• Skin ulceration', colors.HexColor('#D7BDE2'), BLACK), colored_cell('ER+/HER2-: AI + CDK4/6 inhibitor (1st line); ESR1-mutated: elacestrant/fulvestrant\nHER2+: trastuzumab + pertuzumab + taxane (1st line); T-DXd (2nd+ line)\nHER2-low: T-DXd (DESTINY-Breast04)\nTNBC: chemo ± atezolizumab/pembrolizumab ± sacituzumab govitecan\ngBRCA+: olaparib/talazoparib\nPIK3CA-mutated ER+: alpelisib + fulvestrant (SOLAR-1)', colors.HexColor('#D7BDE2'), BLACK)], ] tx_tbl = Table(tx_data, colWidths=[13*mm, 47*mm, 32*mm, 24*mm, 39*mm]) tx_tbl.setStyle(TableStyle([ ('GRID', (0,0), (-1,-1), 0.5, MGRAY), ('VALIGN', (0,0), (-1,-1), 'TOP'), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('LEFTPADDING', (0,0), (-1,-1), 4), ('RIGHTPADDING', (0,0), (-1,-1), 4), ])) story.append(tx_tbl) story.append(Spacer(1, 3*mm)) # ───────────────────────────────────────────────────────────────────────────── # PAGE 7 — QUICK REFERENCE CARD # ───────────────────────────────────────────────────────────────────────────── story.append(PageBreak()) story.append(section_header('QUICK REFERENCE SUMMARY CARD', NAVY)) story.append(Spacer(1, 2*mm)) # Two-column layout: left = T/N mnemonic; right = landmark trials left_items = [ ('T STAGING QUICK RECALL', NAVY, [ 'Tis = DCIS or Paget\'s (no underlying IDC/DCIS)', 'T1mi = ≤ 1mm | T1a = 1–5mm | T1b = 5–10mm | T1c = 10–20mm', 'T2 = 20–50mm | T3 = > 50mm', 'T4a = ribs/intercostals/serratus (NOT pectoralis)', 'T4b = ulceration/nodules/peau d\'orange (NOT dermis alone)', 'T4c = T4a + T4b | T4d = IBC (erythema >1/3 breast)', ]), ('N STAGING QUICK RECALL', FOREST, [ 'N0 = no nodes | N1mi = micromet (>0.2–≤2mm)', 'N1 = 1–3 axillary | N2 = 4–9 axillary or IM nodes', 'N3 = ≥10 axillary / Level III / IM+axillary / supraclavicular', 'Supraclavicular = N3c (NOT M1)', 'Contralateral axillary = M1', 'ITC (≤0.2mm) = pN0(i+) — no treatment change', ]), ('KEY DEFINITIONS', AMBER, [ 'Chest wall = ribs + intercostals + serratus anterior', 'Pectoralis major/minor ≠ chest wall (NOT T4a)', 'IBC = clinical diagnosis; >1/3 breast; T4d; NACT first', 'LCIS = benign risk marker; removed from TNM (AJCC 8th)', 'T size = invasive component only (NOT IDC + DCIS combined)', 'Pathologic T/N takes precedence over clinical T/N', ]), ] right_items = [ ('LANDMARK TRIALS', CRIMSON, [ 'NSABP B-06: BCS + RT = mastectomy (survival)', 'Z0011: 1–2 SLN+ → no ALND (BCS + WBI + systemic)', 'AMAROS: axillary RT = ALND in SLN+ (less lymphoedema)', 'NSABP B-17/B-24: RT + tamoxifen after BCS for DCIS', 'TAILORx: RS 0–25 → endocrine only (>50 yrs ER+/HER2-/N0)', 'MINDACT: genomic low-risk → omit chemo (even clinical HR)', 'KATHERINE: T-DM1 for residual HER2+ post-NACT', 'KEYNOTE-522: pembro + NACT in high-risk TNBC → ↑pCR+EFS', 'OlympiA: olaparib adjuvant gBRCA+ HER2- → ↓mets ↑OS', 'monarchE: abemaciclib adj. HR+/HER2- high-risk → ↑IDFS', 'DESTINY-B04: T-DXd in HER2-low → ↑PFS + OS', 'FAST-Forward: 26Gy/5f = 40Gy/15f (WBI after BCS)', 'MONALEESA-3/7: ribociclib → OS benefit HR+/HER2- met', ]), ('MOLECULAR SUBTYPES AT A GLANCE', TEAL, [ 'Luminal A: ER+ PR+ HER2− Ki67 low → best prognosis', 'Luminal B: ER+ HER2− high Ki67 OR HER2+', 'HER2: ER− PR− HER2+ → anti-HER2 + chemo', 'TNBC: ER− PR− HER2− → highest relapse risk; early', 'HER2-low: IHC 1+ or 2+/FISH− → targetable with T-DXd', ]), ] def make_summary_col(items): elems = [] for title, color, points in items: hdr = Table([[colored_cell(title, color, WHITE, bold=True, fontsize=8, align=TA_CENTER)]], colWidths=[None]) hdr.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,-1), color), ('TOPPADDING', (0,0), (-1,-1), 4), ('BOTTOMPADDING', (0,0), (-1,-1), 4), ('LEFTPADDING', (0,0), (-1,-1), 6), ])) elems.append(hdr) for pt in points: sty = ParagraphStyle('pt', fontName='Helvetica', fontSize=7.5, leading=11, textColor=BLACK, leftIndent=6, spaceAfter=1) elems.append(Paragraph('• ' + pt, sty)) elems.append(Spacer(1, 3*mm)) return elems # Build as two-column table left_elems = make_summary_col(left_items) right_elems = make_summary_col(right_items) # Pad to equal length while len(left_elems) < len(right_elems): left_elems.append(Spacer(1, 1)) while len(right_elems) < len(left_elems): right_elems.append(Spacer(1, 1)) two_col_data = [[left_elems, right_elems]] two_col_tbl = Table(two_col_data, colWidths=[(W-40*mm)/2, (W-40*mm)/2]) two_col_tbl.setStyle(TableStyle([ ('VALIGN', (0,0), (-1,-1), 'TOP'), ('LEFTPADDING', (0,0), (0,-1), 0), ('RIGHTPADDING', (0,0), (0,-1), 4), ('LEFTPADDING', (1,0), (1,-1), 4), ('RIGHTPADDING', (1,0), (1,-1), 0), ('TOPPADDING', (0,0), (-1,-1), 0), ('BOTTOMPADDING', (0,0), (-1,-1), 0), ])) story.append(two_col_tbl) # Footer story.append(HRFlowable(width='100%', thickness=0.5, color=MGRAY)) story.append(Spacer(1, 2*mm)) story.append(Paragraph( 'Sources: AJCC Cancer Staging Manual 8th Edition | Sabiston Textbook of Surgery 21st ed. | Bailey & Love\'s Short Practice of Surgery 28th ed. | ' 'Fischer\'s Mastery of Surgery 8th ed. | Schwartz\'s Principles of Surgery 11th ed. | Mulholland & Greenfield\'s Surgery 7th ed. | ' 'PubMed landmark trials (2017–2026). Prepared for surgical postgraduate examination revision.', ST['note'])) # ══════════════════════════════════════════════════════════════════════════════ # BUILD PDF # ══════════════════════════════════════════════════════════════════════════════ doc.build(story) print(f"PDF saved: {path}") PYEOF python3 /tmp/workspace/breast-staging/build_pdf.py

Running Command

sed -i 's/from reportlab.graphics.shapes import Drawing, Rect, String, Line, Arrow, Polygon/from reportlab.graphics.shapes import Drawing, Rect, String, Line, Polygon/' /tmp/workspace/breast-staging/build_pdf.py && python3 /tmp/workspace/breast-staging/build_pdf.py

Your PDF is ready:

Breast Cancer Staging QR

PDF Document · PDF


Here is what the 7-page PDF contains:
Page 1 — T Staging Table Full T0 to T4d with colour-coded rows, exact AJCC 8th criteria, and inline trap warnings for each subcategory
Page 2 — T4 Decision Algorithm + N Staging
  • Step-by-step flowchart: "Is it T4?" with every branch clearly mapped (pectoralis trap, dermis-only trap, IBC threshold)
  • Clinical N (cN0–N3c) and Pathological N (pN0–pN3c) tables with ITC thresholds and micrometastasis definitions
  • Axilla management decision algorithm (cN0 → SLNB → Z0011 → ALND/RT → post-NACT TAD)
Page 3 — M Staging + Stage Groups
  • M0/M0(i+)/M1 with the contralateral axilla = M1 trap highlighted
  • Full anatomic stage grouping (0–IV) with 5-year survival and management implications
Page 4 — Staging Workup Algorithm + Genomic Assays
  • Stage-by-stage workup table (what to order, when to order CT/bone scan, when NOT to)
  • Oncotype DX / MammaPrint decision table with TAILORx and MINDACT findings
Page 5 — 12 Major Exam Traps Each trap in a red-bordered box with: ✗ Wrong belief → ✓ Correct answer → 📌 Clinical note
Page 6 — Treatment Decision Algorithm by Stage Stage 0 through IV: surgery / axilla / RT / systemic therapy in one concise matrix
Page 7 — Quick Reference Summary Card Two-column layout: T/N mnemonics + key definitions (left) | 13 landmark trials + molecular subtypes (right)
This is a shared conversation. Sign in to Orris to start your own chat.