Make a complete advanced dm hematology ppt on aplastic anemia and focus mainly in all also include pathophysiology in great detail latest advanced with all trials
Make a complete advanced dm hematology ppt on aplastic anemia and focus mainly in all also include pathophysiology in great detail latest advanced with all trials
"aplastic anemia" AND treatment
aplastic anemia 2024 2025 latest clinical trials eltrombopag horse ATG HSCT guidelines
PMID: 34986284
PMID: 42047558
"aplastic anemia" AND pathophysiology AND "T cell"
"aplastic anemia" AND "bone marrow transplant" AND outcomes
PMID: 35491054
PMID: 38669341
aplastic anemia bone marrow biopsy histology hypocellular

Histopathology: Bone marrow biopsy prepared for light microscopy shows diffuse infiltration by hairy cells rather than well-formed nodules. The marrow is often hypercellular in established disease but can be hypocellular in early stages, mimicking aplastic anemia. Hairy cells appear monotonous with oval nuclei and abundant clear cytoplasm that yields a characteristic fried egg morphology on H&E sections. In some cases, hair-like cytoplasmic projections (hairy indentations) are accentuated with specialized staining such as DBA.44 immunostain, supporting a hairy cell leukemia (HCL) diagnosis. The tumor cells may display spindled forms; the immunophenotype typically includes DBA.44 positivity, and cells may express CD11c, CD25, and CD103 on broader panels. Normal hematopoietic elements, particularly myeloid precursors, are reduced and can show dysplastic changes reminiscent of myelodysplastic syndrome. Plasma cells and mast cells may be mildly increased. Significant reticulin fibrosis is common, contributing to difficult marrow aspirates and making core biopsy essential to determine the extent of marrow replacement. Although marrow evaluation is informative, many cases of HCL can be diagnosed from peripheral blood smear and immunophenotyping alone; however, the biopsy provides baseline disease burden and a reference for assessing therapeutic response and fibrosis progression. This image exemplifies classic HCL marrow involvement with fried egg cells and conspicuous reticulin fibrosis.

This diagnostic image is a low-magnification light microscopy photomicrograph of a bone marrow trephine biopsy, likely stained with hematoxylin and eosin (H&E). The specimen exhibits marked hypocellularity, a hallmark of severe aplastic anemia. The hematopoietic space is predominantly occupied by clear, vacuolated adipocytes (fatty marrow), with a notable absence of normal myeloid, erythroid, and megakaryocytic cell lines. Eosinophilic (pink) trabecular bone spicules are visible at the periphery and interspersed within the marrow cavity, providing structural context. The clinical significance of this finding is the demonstration of bone marrow failure, where the functional marrow has been replaced by adipose tissue. The absence of infiltrative abnormal cells or significant fibrosis is a key negative finding for differentiating this from myelodysplastic syndromes or myelofibrosis.

Light microscopy of a bone marrow biopsy from hairy cell leukemia (HCL) shows diffuse infiltration by small to medium lymphoid cells with abundant clear cytoplasm and oval, occasionally reniform nuclei; the cytoplasm creates a fried egg appearance. Hairy projections may be highlighted by immunostaining and by DBA.44 positivity, along with CD11c, CD25, and CD103 markers. The marrow is commonly hypercellular in established disease, whereas early involvement may be hypocellular and mimic aplastic anemia. Prominent reticulin fibrosis is typical and can hinder aspirate yield, making core biopsy essential for assessing infiltration and baseline disease burden. Normal hematopoietic elements, especially the myeloid lineage, are reduced and may display dysplastic changes resembling myelodysplastic syndrome. Plasma cells and mast cells may be mildly increased. In some cases, hairy cells assume a spindle-shaped morphology. The neoplastic cells are typically monotonous with minimal prominent nucleoli, and cytoplasm may exhibit cytoplasmic processes. Unlike several small B-cell lymphomas, discrete cellular aggregates are uncommon, with diffuse replacement predominating. Immunohistochemistry and flow cytometry confirm the diagnosis via characteristic immunophenotype. Clinically, marrow involvement informs staging, prognosis, and treatment planning, though peripheral blood smear and immunophenotypic profiling often suffice for diagnosis. This image, captured at high magnification on a hematoxylin and eosin stained section, showcases classic hairy cell features.

Bone marrow histology on this hematoxylin and eosin–stained section shows diffuse infiltration by mature B-lymphoid cells with prolymphocytic features, partially replacing normal adipocytic marrow. Infiltrating cells are medium to large with round to irregular nuclei, coarse chromatin, conspicuous nucleoli, and scant to moderate cytoplasm. Scattered prolymphocytes are present and background fat cells persist in residual islands; the overall architecture is variably effaced. This pattern is characteristic of bone marrow involvement by B-cell prolymphocytic leukemia (B-PLL). Although immunophenotype cannot be determined on this slide, typical profiles include bright surface immunoglobulin expression with CD19 and CD20 positivity, coexpression of CD5 and FMC7, and often absence of CD23. Clinically, B-PLL affects the elderly and presents with leukocytosis (often >100,000/μL), anemia, thrombocytopenia, and splenomegaly; B symptoms may be present. Relapsed disease can show central nervous system involvement, refractory hypercalcemia, or extramedullary masses. The histopathologic finding confirms marrow involvement and aids staging and management, while recognizing differential diagnoses such as chronic lymphocytic leukemia/small lymphocytic lymphoma, mantle cell lymphoma, hairy cell leukemia, and acute lymphoblastic leukemia. Integrate complete blood count, flow cytometry immunophenotyping, cytogenetics, and molecular studies for definitive classification and prognosis. This image depicts a bone marrow biopsy/aspirate specimen illustrating B-PLL–related marrow infiltration.
mkdir -p /tmp/workspace/aplastic-anemia-ppt && ls /tmp/workspace/
Ppt fast
mkdir -p /tmp/workspace/aplastic-anemia-ppt && cat > /tmp/workspace/aplastic-anemia-ppt/build_ppt.py << 'PYEOF' from pptx import Presentation from pptx.util import Inches, Pt, Emu from pptx.dml.color import RGBColor from pptx.enum.text import PP_ALIGN, MSO_ANCHOR from pptx.util import Inches, Pt import copy prs = Presentation() prs.slide_width = Inches(13.333) prs.slide_height = Inches(7.5) blank = prs.slide_layouts[6] # ─── Color Palette ─────────────────────────────────────────────── DARK_BG = RGBColor(0x0D, 0x1B, 0x2A) # deep navy ACCENT1 = RGBColor(0xE8, 0x3A, 0x3A) # red accent ACCENT2 = RGBColor(0x00, 0xC2, 0xFF) # electric blue GOLD = RGBColor(0xFF, 0xC8, 0x00) # gold WHITE = RGBColor(0xFF, 0xFF, 0xFF) LIGHT_GRAY = RGBColor(0xD0, 0xD8, 0xE8) MID_BLUE = RGBColor(0x1A, 0x3A, 0x5C) TEAL = RGBColor(0x00, 0x8B, 0x8B) GREEN = RGBColor(0x00, 0xC8, 0x7A) ORANGE = RGBColor(0xFF, 0x8C, 0x00) def add_rect(slide, x, y, w, h, fill_color, transparency=0): shape = slide.shapes.add_shape(1, Inches(x), Inches(y), Inches(w), Inches(h)) shape.fill.solid() shape.fill.fore_color.rgb = fill_color shape.line.fill.background() return shape def add_textbox(slide, text, x, y, w, h, font_size=18, bold=False, color=WHITE, align=PP_ALIGN.LEFT, italic=False, wrap=True): tb = slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h)) tf = tb.text_frame tf.word_wrap = wrap tf.margin_left = Pt(0) tf.margin_right = Pt(0) tf.margin_top = Pt(2) tf.margin_bottom = Pt(2) p = tf.paragraphs[0] p.alignment = align run = p.add_run() run.text = text run.font.size = Pt(font_size) run.font.bold = bold run.font.italic = italic run.font.color.rgb = color run.font.name = "Calibri" return tb def add_multiline_tb(slide, lines, x, y, w, h, font_size=14, color=WHITE, bold_first=False, line_spacing=1.15): from pptx.util import Pt as PPt from pptx.oxml.ns import qn from lxml import etree tb = slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h)) tf = tb.text_frame tf.word_wrap = True tf.margin_left = Pt(4) tf.margin_right = Pt(4) tf.margin_top = Pt(2) tf.margin_bottom = Pt(2) first = True for i, line in enumerate(lines): if i == 0: p = tf.paragraphs[0] else: p = tf.add_paragraph() p.alignment = PP_ALIGN.LEFT run = p.add_run() run.text = line run.font.size = PPt(font_size) run.font.color.rgb = color run.font.name = "Calibri" run.font.bold = (bold_first and first) first = False return tb def bg(slide): add_rect(slide, 0, 0, 13.333, 7.5, DARK_BG) def header_bar(slide, title, subtitle=None): add_rect(slide, 0, 0, 13.333, 1.1, MID_BLUE) add_rect(slide, 0, 1.05, 13.333, 0.07, ACCENT1) add_textbox(slide, title, 0.3, 0.08, 11, 0.7, font_size=28, bold=True, color=WHITE, align=PP_ALIGN.LEFT) if subtitle: add_textbox(slide, subtitle, 0.3, 0.72, 11, 0.35, font_size=13, bold=False, color=ACCENT2) def footer(slide, txt="DM Hematology | Aplastic Anemia | Advanced Review 2025"): add_rect(slide, 0, 7.2, 13.333, 0.3, MID_BLUE) add_textbox(slide, txt, 0.3, 7.22, 12, 0.25, font_size=9, color=LIGHT_GRAY, align=PP_ALIGN.LEFT) # ══════════════════════════════════════════════════════════════════ # SLIDE 1 – TITLE # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) add_rect(s, 0, 0, 4.5, 7.5, MID_BLUE) # left panel add_rect(s, 4.45, 0, 0.08, 7.5, ACCENT1) # divider # Left panel accent add_rect(s, 0.2, 2.5, 3.8, 0.06, GOLD) add_textbox(s, "DM HEMATOLOGY", 0.3, 0.5, 4, 0.5, font_size=13, bold=True, color=GOLD, align=PP_ALIGN.LEFT) add_textbox(s, "APLASTIC\nANEMIA", 0.3, 1.1, 4.1, 2.2, font_size=46, bold=True, color=WHITE, align=PP_ALIGN.LEFT) add_textbox(s, "Advanced Clinical Review", 0.3, 2.9, 4, 0.45, font_size=16, bold=False, color=ACCENT2, align=PP_ALIGN.LEFT) add_textbox(s, "Pathophysiology | Diagnosis | Management\nLatest Trials & Guidelines 2025", 0.3, 3.5, 4, 0.8, font_size=12, color=LIGHT_GRAY, align=PP_ALIGN.LEFT) add_textbox(s, "Harrison's 22E | Robbins 11E\nNEJM 2022 | Blood 2024 | NEJM Evidence 2026\nASH Draft Guidelines 2025", 0.3, 4.5, 4, 1.0, font_size=10, color=LIGHT_GRAY, italic=True) # Right panel – slide index boxes topics = [ ("01", "Definition & Epidemiology"), ("02", "Etiology & Classification"), ("03", "Pathophysiology (Detailed)"), ("04", "Immune Mechanisms"), ("05", "Clonal Evolution & PNH"), ("06", "Clinical Features"), ("07", "Diagnosis & Investigations"), ("08", "Severity Classification"), ("09", "Treatment Algorithm"), ("10", "IST + Eltrombopag – Trials"), ("11", "HSCT – Indications & Outcomes"), ("12", "Salvage Therapy"), ("13", "Supportive Care"), ("14", "Prognosis & Follow-up"), ] ystart = 0.25 for num, topic in topics: add_rect(s, 4.7, ystart, 0.5, 0.38, ACCENT1) add_textbox(s, num, 4.72, ystart+0.02, 0.46, 0.35, font_size=11, bold=True, color=WHITE, align=PP_ALIGN.CENTER) add_textbox(s, topic, 5.25, ystart+0.04, 7.8, 0.35, font_size=12, color=LIGHT_GRAY) ystart += 0.47 # ══════════════════════════════════════════════════════════════════ # SLIDE 2 – DEFINITION & EPIDEMIOLOGY # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Definition & Epidemiology", "Aplastic Anemia — Overview") footer(s) # Definition box add_rect(s, 0.3, 1.25, 8.2, 1.45, MID_BLUE) add_rect(s, 0.3, 1.25, 0.12, 1.45, ACCENT1) add_textbox(s, "DEFINITION", 0.55, 1.28, 4, 0.35, font_size=12, bold=True, color=GOLD) add_textbox(s, "Aplastic anemia (AA) is pancytopenia with bone marrow hypocellularity resulting from destruction or suppression " "of multipotent hematopoietic stem cells (HSCs), leading to bone marrow failure. The marrow is often virtually " "devoid of recognizable hematopoietic elements and replaced by fat cells.", 0.55, 1.62, 7.85, 1.0, font_size=13, color=LIGHT_GRAY, wrap=True) # Epidemiology epi = [ ("Incidence", "2–3 per million/year (Western); 4–7 per million/year (Asia — 2× higher)"), ("Peak Age", "Bimodal: 15–25 years and >60 years; slight male predominance in older group"), ("Geography", "Higher rates in East Asia (viral hepatitis, environmental exposures)"), ("Mortality", "Without treatment: median survival <1 year in severe AA; >80% 5-yr survival with HSCT/IST"), ("Relation to PNH", "20–30% of AA have PNH clone at diagnosis; frank PNH develops in ~5–10%"), ("Relation to MDS", "Clonal evolution to MDS/AML in ~10–15% of treated patients over 10 years"), ] y = 2.85 for label, val in epi: add_rect(s, 0.3, y, 2.2, 0.38, RGBColor(0x1E, 0x4A, 0x6E)) add_textbox(s, label, 0.35, y+0.04, 2.1, 0.32, font_size=11, bold=True, color=GOLD) add_textbox(s, val, 2.6, y+0.04, 10.5, 0.38, font_size=11, color=LIGHT_GRAY, wrap=True) y += 0.46 # Right side stat boxes for bx, by, val, lbl, col in [ (9.1, 1.3, "~4-7", "per million/yr\n(Asia)", ACCENT2), (11.0, 1.3, "2-3", "per million/yr\n(West)", GREEN), (9.1, 2.45, "~80%", "5-yr survival\nwith HSCT/IST", GOLD), (11.0, 2.45, "10-15%", "Clonal\nevolution", ORANGE), ]: add_rect(s, bx, by, 1.7, 0.95, MID_BLUE) add_textbox(s, val, bx, by+0.04, 1.7, 0.5, font_size=20, bold=True, color=col, align=PP_ALIGN.CENTER) add_textbox(s, lbl, bx, by+0.52, 1.7, 0.42, font_size=10, color=LIGHT_GRAY, align=PP_ALIGN.CENTER) # ══════════════════════════════════════════════════════════════════ # SLIDE 3 – ETIOLOGY & CLASSIFICATION # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Etiology & Classification", "Causes and Types of Aplastic Anemia") footer(s) # Two columns cols = [ ("ACQUIRED (Immune-Mediated) — 80–85%", ACCENT1, [ "• Idiopathic (~70% of acquired) — most common", "• Post-hepatitis (seronegative hepatitis — non-A, B, C, G)", "• Drugs: chloramphenicol, NSAIDs, carbamazepine, sulfonamides,\n gold, penicillamine, felbamate (dose-independent, idiosyncratic)", "• Toxins: benzene, organophosphates, radiation", "• Infections: EBV, CMV, parvovirus B19, HIV, hepatitis viruses", "• Pregnancy-associated (rare; may remit post-partum)", "• Thymoma-associated", "• PNH-related aplasia", ]), ("INHERITED / CONSTITUTIONAL — 15–20%", GREEN, [ "• Fanconi Anemia — FANC genes (FANCA most common); DNA repair", "• Dyskeratosis Congenita — DKC1, TERT, TERC; telomere biology", "• Shwachman-Diamond — SBDS gene; exocrine pancreatic insufficiency", "• Diamond-Blackfan Anemia — ribosomal protein genes (RPS19, etc.)", "• GATA2 deficiency — MDS/AML, lymphedema, immunodeficiency", "• RUNX1 familial platelet disorder", "• Telomere Biology Disorders (TBD) — present in adults", "• Severe Congenital Neutropenia (Kostmann)", ]), ] for ci, (title, col, items) in enumerate(cols): xo = 0.3 + ci * 6.5 add_rect(s, xo, 1.2, 6.2, 0.42, col) add_textbox(s, title, xo+0.1, 1.23, 6.0, 0.38, font_size=12, bold=True, color=WHITE) add_rect(s, xo, 1.62, 6.2, 5.4, MID_BLUE) yt = 1.7 for item in items: add_textbox(s, item, xo+0.15, yt, 5.9, 0.55, font_size=11, color=LIGHT_GRAY, wrap=True) yt += 0.57 # ══════════════════════════════════════════════════════════════════ # SLIDE 4 – PATHOPHYSIOLOGY OVERVIEW # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Pathophysiology — Overview", "Two Major Mechanisms of Marrow Failure") footer(s) add_textbox(s, "Two primary (non-mutually exclusive) mechanisms underlie acquired AA:", 0.3, 1.2, 12.8, 0.4, font_size=13, color=GOLD, bold=True) # Mech 1 add_rect(s, 0.25, 1.65, 6.1, 4.5, MID_BLUE) add_rect(s, 0.25, 1.65, 6.1, 0.42, ACCENT1) add_textbox(s, "MECHANISM 1 — Immune-Mediated Destruction", 0.35, 1.67, 5.9, 0.38, font_size=12, bold=True, color=WHITE) pts1 = [ "▶ Antigen-altered HSCs trigger CD4+ Th1 activation", "▶ Oligoclonal cytotoxic CD8+ T cells attack HSCs", "▶ IFN-γ and TNF-α upregulate Fas on HSCs → apoptosis", "▶ IL-2 drives T cell expansion; IL-6 mediates inflammation", "▶ Th17 cells elevated in severe/late disease", "▶ Effector memory CD8+ T cells dominant in severe disease", "▶ Regulatory T cells (Tregs) markedly reduced → loss of\n immune tolerance", "▶ Type I interferons polarize immune system toward Th1\n in early phase", "▶ Clonal expansion of virus-reactive T cells that cross-react\n with HSC antigens (molecular mimicry — Blood 2024)", "▶ Evidence: IST (ATG + CsA) restores hematopoiesis in 60–70%", ] yt = 2.17 for pt in pts1: add_textbox(s, pt, 0.4, yt, 5.85, 0.45, font_size=11, color=LIGHT_GRAY, wrap=True) yt += 0.43 # Mech 2 add_rect(s, 6.7, 1.65, 6.15, 4.5, MID_BLUE) add_rect(s, 6.7, 1.65, 6.15, 0.42, ACCENT2) add_textbox(s, "MECHANISM 2 — Intrinsic HSC Defects", 6.8, 1.67, 5.95, 0.38, font_size=12, bold=True, color=WHITE) pts2 = [ "▶ 5–10% of cases: germline TERT/TERC mutations (telomerase)", "▶ 50% of AA: abnormally short telomeres even without mutation", "▶ Short telomeres → premature HSC senescence & exhaustion", "▶ Telomere defects → neoantigen expression → T cell attack\n (links mechanisms 1 & 2)", "▶ PIGA gene mutations → GPI anchor deficiency → PNH clone", "▶ Somatic mutations (clonal hematopoiesis) found in 30% at\n baseline; rise to 55% at 6 months, 80% at 24 months\n (NEJM Evidence 2026, Kaya et al.)", "▶ CH driver genes: DNMT3A, TET2, ASXL1, U2AF1, SF3B1", "▶ Loss-of-function mutations rescue HSCs from immune attack\n via HLA class I downregulation (immune escape)", "▶ IBMFS germline mutations in adults: GATA2, RUNX1, ERCC6L2", ] yt = 2.17 for pt in pts2: add_textbox(s, pt, 6.85, yt, 5.85, 0.45, font_size=11, color=LIGHT_GRAY, wrap=True) yt += 0.43 # ══════════════════════════════════════════════════════════════════ # SLIDE 5 – DETAILED IMMUNE PATHOPHYSIOLOGY # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Detailed Immune Pathophysiology", "Cytotoxic T Cell–Mediated Destruction of HSCs") footer(s) # Flow diagram using colored boxes and arrows steps = [ (0.3, 1.35, "TRIGGER\nDrug / Viral infection /\nUnknown antigen", ORANGE), (3.0, 1.35, "ANTIGEN\nPRESENTATION\nHSC presents neoantigen\nvia HLA class II", ACCENT1), (5.7, 1.35, "CD4+ Th1\nACTIVATION\nIL-2 secretion\nT cell proliferation", ACCENT2), (8.4, 1.35, "OLIGOCLONAL\nCD8+ CTL\nExpansion and\nhoming to marrow", MID_BLUE), (11.1, 1.35, "HSC\nDESTRUCTION\nFas/FasL, perforin\ngranzyme B, IFN-γ", ACCENT1), ] for (bx, by, txt, col) in steps: add_rect(s, bx, by, 2.55, 1.05, col) add_textbox(s, txt, bx+0.08, by+0.05, 2.4, 0.95, font_size=10.5, bold=False, color=WHITE, align=PP_ALIGN.CENTER) # Arrows for ax in [2.6, 5.3, 8.0, 10.7]: add_textbox(s, "➤", ax+0.05, 1.75, 0.4, 0.4, font_size=14, bold=True, color=GOLD, align=PP_ALIGN.CENTER) # Cytokine roles add_rect(s, 0.3, 2.6, 12.7, 0.38, RGBColor(0x10, 0x28, 0x40)) add_textbox(s, "KEY CYTOKINES & MEDIATORS", 0.4, 2.62, 12.5, 0.35, font_size=12, bold=True, color=GOLD) cyto_data = [ ("IFN-γ", "Upregulates Fas on HSCs, triggers apoptosis; induces CXCL10 attracting more CTLs", ACCENT1), ("TNF-α", "Synergizes with IFN-γ for HSC apoptosis; NF-κB activation", ORANGE), ("IL-2", "Drives T cell expansion; secreted by Th1 cells", ACCENT2), ("Th17/IL-17", "Elevated in severe disease; promotes inflammation", GREEN), ("Type I IFNs", "Early phase polarization toward Th1; amplify immune attack", TEAL), ("Tregs (↓)", "CD4+CD25+FoxP3+ cells markedly reduced → loss of self-tolerance", ACCENT1), ] yt = 3.1 for i, (name, desc, col) in enumerate(cyto_data): xi = 0.3 if i % 2 == 0 else 6.7 yt2 = yt if i < 2 else (yt + 0.52 * ((i // 2) - (0 if i % 2 == 0 else 0))) # Simpler linear layout pass # Draw as table rows yt = 3.08 for name, desc, col in cyto_data: add_rect(s, 0.3, yt, 2.0, 0.41, col) add_textbox(s, name, 0.32, yt+0.04, 1.96, 0.34, font_size=12, bold=True, color=WHITE, align=PP_ALIGN.CENTER) add_textbox(s, desc, 2.4, yt+0.05, 10.55, 0.38, font_size=11, color=LIGHT_GRAY, wrap=True) yt += 0.47 # Molecular mimicry box add_rect(s, 0.3, 5.95, 12.7, 0.5, RGBColor(0x1A, 0x1A, 0x4A)) add_rect(s, 0.3, 5.95, 0.1, 0.5, GOLD) add_textbox(s, "2024 ADVANCE (Blood 2024 — Ben Hamza et al.): Virus-reactive T cells in AA cross-react with HSC antigens via " "MOLECULAR MIMICRY — providing direct mechanistic proof of immune-mediated HSC destruction triggered by viral infection.", 0.5, 5.97, 12.4, 0.46, font_size=10.5, color=GOLD, italic=True, wrap=True) # ══════════════════════════════════════════════════════════════════ # SLIDE 6 – CLONAL EVOLUTION, PNH, CH # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Clonal Evolution, PNH & Clonal Hematopoiesis", "The AA–MDS–PNH Continuum") footer(s) # PNH section add_rect(s, 0.3, 1.2, 6.0, 0.38, ACCENT2) add_textbox(s, "PNH CLONE IN APLASTIC ANEMIA", 0.4, 1.22, 5.8, 0.34, font_size=13, bold=True, color=WHITE) pnh_pts = [ "• PNH clone (PIGA mutation → GPI-AP deficiency) detectable in 20–30% of AA at diagnosis by flow cytometry", "• Small PNH clones in AA: PROTECTIVE — escape immune destruction (GPI-AP−HSCs not recognized by CTLs)", "• Frank hemolytic PNH develops in ~5–10% of recovered AA patients as clone expands", "• AA and PNH share HLA-DR2 association; both respond to IST", "• Eculizumab (C5 inhibitor) for hemolytic PNH; does NOT treat underlying AA", "• Regular PNH clone monitoring by flow cytometry every 6–12 months in recovered AA", ] yt = 1.65 for pt in pnh_pts: add_textbox(s, pt, 0.35, yt, 5.9, 0.41, font_size=11, color=LIGHT_GRAY, wrap=True) yt += 0.42 # Clonal hematopoiesis section add_rect(s, 6.6, 1.2, 6.4, 0.38, ORANGE) add_textbox(s, "CLONAL HEMATOPOIESIS (CH) IN AA — NEJM Evidence 2026", 6.7, 1.22, 6.2, 0.34, font_size=11.5, bold=True, color=WHITE) ch_pts = [ "• Phase 3 RACE trial (Kaya et al., NEJM Evidence 2026, PMID 42047558):", " – 170 patients; samples at baseline, 6 months, 24 months", " – Somatic mutations at baseline: 30% of patients", " – At 6 months: 55.3% | At 24 months: 79.6%", " – Mean mutations/patient: 0.4 → 1.2 → 2.5 over 24 months", "• Common CH genes: DNMT3A, TET2, ASXL1, U2AF1, SF3B1, JAK2", "• CH reflects survival & expansion of immune-escape HSC clones", "• Eltrombopag addition did NOT increase CH or malignant transformation", "• HLA class I loss mutations: most common immune-escape mechanism", "• CH with myeloid-driver genes (RUNX1, SETBP1, CSF3R) → higher\n risk MDS/AML evolution — requires close surveillance", "• Annual bone marrow biopsy + cytogenetics + NGS panel recommended", ] yt = 1.65 for pt in ch_pts: add_textbox(s, pt, 6.65, yt, 6.25, 0.41, font_size=10.5, color=LIGHT_GRAY, wrap=True) yt += 0.41 # MDS evolution box add_rect(s, 0.3, 5.95, 12.7, 0.5, RGBColor(0x3A, 0x10, 0x10)) add_rect(s, 0.3, 5.95, 0.1, 0.5, ACCENT1) add_textbox(s, "CLONAL EVOLUTION TO MDS/AML: ~10–15% over 10 years post-IST. Cytogenetic abnormalities: monosomy 7 (highest risk), trisomy 8, del(13q). " "Annual marrow surveillance + cytogenetics mandatory. Monosomy 7 detected → proceed to HSCT urgently.", 0.5, 5.97, 12.4, 0.46, font_size=10.5, color=LIGHT_GRAY, italic=False, wrap=True) # ══════════════════════════════════════════════════════════════════ # SLIDE 7 – CLINICAL FEATURES # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Clinical Features", "Presentation, Examination & Red Flag Signs") footer(s) # Three columns clincols = [ ("SYMPTOMS", ACCENT2, [ "Anemia Symptoms", "• Fatigue, weakness, dyspnea", "• Pallor, palpitations", "• Exercise intolerance", "", "Thrombocytopenia", "• Petechiae, ecchymoses", "• Mucosal bleeding (gum, nose)", "• Menorrhagia", "• GI/intracranial bleeding (severe)", "", "Neutropenia", "• Recurrent bacterial infections", "• Fever", "• Oral ulcers, perianal infections", "• Life-threatening sepsis", ]), ("EXAMINATION", GREEN, [ "Positive Findings", "• Pallor (mucous membranes)", "• Petechiae / purpura", "• Ecchymoses", "• Signs of infection", "", "ABSENT Findings (key negatives)", "• NO hepatosplenomegaly", "• NO lymphadenopathy", "• If splenomegaly → question AA dx", "", "Constitutional (IBMFS)", "• Short stature, café-au-lait spots (FA)", "• Nail dystrophy, leukoplakia (DC)", "• Thumb anomalies (FA)", "• Pigmentation abnormalities", ]), ("RED FLAGS / SPECIAL", ORANGE, [ "Preceding Events", "• Seronegative hepatitis 2–3 months\n before → post-hepatitis AA", "• Drug exposure history", "", "Pregnancy", "• AA in pregnancy → rare but serious", "• May remit post-partum", "", "Inherited Syndromes", "• Young age + family history", "• Chromosomal breakage test (DEB)\n positive → Fanconi anemia", "• Telomere length assay", "• Pulmonary fibrosis (TBD)", "", "PNH Symptoms", "• Hemoglobinuria, dark urine", ]), ] for ci, (title, col, items) in enumerate(clincols): xo = 0.3 + ci * 4.35 add_rect(s, xo, 1.2, 4.1, 0.38, col) add_textbox(s, title, xo+0.1, 1.22, 3.9, 0.35, font_size=13, bold=True, color=WHITE) add_rect(s, xo, 1.58, 4.1, 5.47, MID_BLUE) yt = 1.65 for item in items: bold = not item.startswith("•") and item != "" fc = GOLD if bold and item != "" else LIGHT_GRAY add_textbox(s, item, xo+0.12, yt, 3.9, 0.42, font_size=10.5, bold=bold, color=fc, wrap=True) yt += 0.38 # ══════════════════════════════════════════════════════════════════ # SLIDE 8 – DIAGNOSIS & INVESTIGATIONS # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Diagnosis & Investigations", "Mandatory Work-up for Bone Marrow Failure") footer(s) # Left column – tests add_rect(s, 0.3, 1.2, 6.0, 0.38, ACCENT1) add_textbox(s, "LABORATORY INVESTIGATIONS", 0.4, 1.22, 5.8, 0.35, font_size=13, bold=True, color=WHITE) tests = [ ("CBC + Differential", "Pancytopenia: ↓Hb, ↓WBC (neutropenia), ↓Platelets; MCV often elevated"), ("Reticulocyte Count", "Absolute reticulocyte count <20×10⁹/L — hallmark of hypoplastic marrow"), ("Peripheral Smear", "Normocytic (or macrocytic) normochromic anemia; no dysplasia; no blasts"), ("Bone Marrow Aspirate", "Hypocellular; fat cells predominate; few scattered lymphocytes/plasma cells"), ("Trephine Biopsy", "Gold standard: cellularity <25% (severe AA); <50% with <30% residual cells"), ("Cytogenetics (BM)", "Exclude MDS; del(7q), monosomy 7, trisomy 8 suggest MDS/evolution"), ("PNH Flow Cytometry", "GPI-AP on RBCs & granulocytes; FLAER assay; detect clones ≥0.1%"), ("Chromosomal Breakage", "DEB/MMC test for Fanconi anemia in young patients"), ("Telomere Length", "Flow-FISH or qPCR; short telomeres → TBD/DC; <1st %ile significant"), ("Genomic Panel (NGS)", "Germline + somatic mutations: TERT, TERC, DKC1, GATA2, DNMT3A, etc."), ] yt = 1.65 for test, desc in tests: add_rect(s, 0.3, yt, 2.5, 0.41, MID_BLUE) add_textbox(s, test, 0.35, yt+0.03, 2.4, 0.36, font_size=10.5, bold=True, color=ACCENT2) add_textbox(s, desc, 2.85, yt+0.04, 3.4, 0.38, font_size=10, color=LIGHT_GRAY, wrap=True) yt += 0.46 # Right column add_rect(s, 6.6, 1.2, 6.4, 0.38, ACCENT2) add_textbox(s, "ADDITIONAL WORK-UP", 6.7, 1.22, 6.2, 0.35, font_size=13, bold=True, color=WHITE) extra = [ ("Viral Serology", "Hepatitis A/B/C/E, EBV, CMV, HIV, parvovirus B19"), ("LFTs / Hepatitis panel", "Post-hepatitis AA; elevated transaminases may precede marrow failure"), ("Autoimmune screen", "ANA, anti-dsDNA (exclude SLE-related marrow failure)"), ("HLA Typing", "Patient + siblings — for potential HSCT; done early"), ("Serum B12/Folate", "Exclude megaloblastic anemia mimicking pancytopenia"), ("Renal Function", "Baseline before ATG/CsA; CsA is nephrotoxic"), ("Iron Studies + Ferritin", "Baseline; frequent transfusions → iron overload monitoring"), ("Chest X-ray / CT", "Exclude mediastinal mass (thymoma); infection work-up"), ("Echocardiogram", "Baseline cardiac function before ATG; pre-HSCT evaluation"), ("Pregnancy test", "All women of childbearing age before treatment"), ("Urine osmolality", "If PNH suspected; hemoglobinuria"), ("Family history + exam", "For IBMFS; siblings for donor search"), ] yt = 1.65 for test, desc in extra: add_rect(s, 6.6, yt, 2.5, 0.41, MID_BLUE) add_textbox(s, test, 6.65, yt+0.03, 2.4, 0.36, font_size=10.5, bold=True, color=GREEN) add_textbox(s, desc, 9.15, yt+0.04, 3.75, 0.38, font_size=10, color=LIGHT_GRAY, wrap=True) yt += 0.46 # ══════════════════════════════════════════════════════════════════ # SLIDE 9 – SEVERITY CLASSIFICATION # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Severity Classification", "Camitta Criteria & EBMT Refinements") footer(s) # Camitta criteria box add_rect(s, 0.3, 1.2, 12.7, 0.75, MID_BLUE) add_rect(s, 0.3, 1.2, 0.1, 0.75, GOLD) add_textbox(s, "CAMITTA CRITERIA — Requires: BM cellularity <25% (or <50% with <30% hematopoietic cells)", 0.5, 1.22, 12.4, 0.35, font_size=13, bold=True, color=GOLD) add_textbox(s, "+ At least 2 of: Neutrophils <0.5×10⁹/L | Platelets <20×10⁹/L | Reticulocytes <20×10⁹/L", 0.5, 1.57, 12.4, 0.35, font_size=12, color=LIGHT_GRAY) # Categories cats = [ ("MODERATE\n(mAA)", TEAL, "Criteria", "Cytopenia NOT meeting severe criteria\nBone marrow cellularity <50%", "Management", "Watch & wait if mild\nIST if transfusion dependent or symptomatic\nNo urgent HSCT"), ("SEVERE\n(SAA)", ORANGE, "Criteria", "BM cellularity <25%\n≥2 of: Neutrophils <0.5, Plt <20, Retic <20 (all ×10⁹/L)", "Management", "IMMEDIATE treatment\nHSCT if MSD available (age <50)\nIST + Eltrombopag if no MSD"), ("VERY SEVERE\n(vSAA)", ACCENT1, "Criteria", "Meets SAA criteria +\nNeutrophils <0.2×10⁹/L", "Management", "URGENT treatment\nHighest priority for HSCT\nIST triple therapy if no donor\nG-CSF use controversial"), ] for ci, (name, col, l1, v1, l2, v2) in enumerate(cats): xo = 0.3 + ci * 4.35 add_rect(s, xo, 2.1, 4.1, 0.65, col) add_textbox(s, name, xo+0.1, 2.12, 3.9, 0.6, font_size=15, bold=True, color=WHITE, align=PP_ALIGN.CENTER) add_rect(s, xo, 2.75, 4.1, 1.6, MID_BLUE) add_textbox(s, l1, xo+0.1, 2.8, 3.9, 0.3, font_size=11, bold=True, color=GOLD) add_textbox(s, v1, xo+0.1, 3.1, 3.9, 1.1, font_size=11, color=LIGHT_GRAY, wrap=True) add_rect(s, xo, 4.35, 4.1, 1.85, RGBColor(0x10, 0x28, 0x40)) add_textbox(s, l2, xo+0.1, 4.4, 3.9, 0.3, font_size=11, bold=True, color=ACCENT2) add_textbox(s, v2, xo+0.1, 4.7, 3.9, 1.4, font_size=11, color=LIGHT_GRAY, wrap=True) # Additional markers add_rect(s, 0.3, 6.3, 12.7, 0.75, RGBColor(0x0A, 0x20, 0x38)) add_textbox(s, "RISK FACTORS FOR POOR PROGNOSIS:", 0.45, 6.32, 3.5, 0.35, font_size=11, bold=True, color=GOLD) add_textbox(s, "Age >40 | vSAA | Monosomy 7 on cytogenetics | High transfusion burden pre-treatment | " "Concomitant PNH with large clone | Failure to respond to 2 courses of IST | " "Prior cytotoxic therapy | Presence of myeloid-driver CH mutations (RUNX1, SETBP1)", 3.9, 6.32, 9.1, 0.72, font_size=10.5, color=LIGHT_GRAY, wrap=True) # ══════════════════════════════════════════════════════════════════ # SLIDE 10 – TREATMENT ALGORITHM # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Treatment Algorithm — First-Line", "Decision Pathway for Newly Diagnosed AA") footer(s) # Top: Diagnosis box add_rect(s, 5.5, 1.2, 2.4, 0.5, GOLD) add_textbox(s, "NEWLY DIAGNOSED AA", 5.52, 1.22, 2.36, 0.46, font_size=12, bold=True, color=DARK_BG, align=PP_ALIGN.CENTER) add_textbox(s, "▼", 6.55, 1.72, 0.5, 0.3, font_size=14, bold=True, color=GOLD, align=PP_ALIGN.CENTER) # Eligibility add_rect(s, 4.4, 2.05, 4.6, 0.5, MID_BLUE) add_textbox(s, "Assess: Age | Performance Status | HLA typing | Donor availability", 4.45, 2.07, 4.5, 0.46, font_size=11, color=ACCENT2, align=PP_ALIGN.CENTER, wrap=True) # Two branches add_textbox(s, "◄ MSD available", 2.3, 2.65, 2.0, 0.35, font_size=11, bold=True, color=GREEN) add_textbox(s, "No MSD ►", 9.0, 2.65, 2.0, 0.35, font_size=11, bold=True, color=ORANGE) # Branch 1: HSCT add_rect(s, 0.3, 3.05, 5.8, 3.95, MID_BLUE) add_rect(s, 0.3, 3.05, 5.8, 0.42, GREEN) add_textbox(s, "MATCHED SIBLING DONOR (MSD) HSCT", 0.4, 3.07, 5.6, 0.38, font_size=12, bold=True, color=WHITE) hsct_pts = [ "• Age <40 (or up to 50 in good PS): FIRST-LINE therapy", "• Conditioning: Cy/ATG (young); Flu/Cy/ATG (older/alternative donor)", "• Cyclophosphamide 50 mg/kg × 4 days + horse ATG", "• GVHD prophylaxis: CsA ± methotrexate", "• Outcomes: 5-year OS ~85–90% (children), ~70–80% (adults)", "• MUD transplant: outcomes approach MSD; more GVHD", "• Haploidentical + PT-Cy: emerging; OS ~70% (EBMT 2024)", "• Cord blood: option for children without MSD", "• ASTCT 2024 guidelines: haploidentical HCT valid upfront\n option when MSD unavailable (Blood Adv 2025)", "• Avoid pre-transplant transfusions if possible", "• Minimize transfusion to prevent HLA sensitization", ] yt = 3.55 for pt in hsct_pts: add_textbox(s, pt, 0.4, yt, 5.6, 0.42, font_size=10.5, color=LIGHT_GRAY, wrap=True) yt += 0.38 # Branch 2: IST add_rect(s, 7.2, 3.05, 5.8, 3.95, MID_BLUE) add_rect(s, 7.2, 3.05, 5.8, 0.42, ORANGE) add_textbox(s, "IMMUNOSUPPRESSIVE THERAPY (IST) — TRIPLE THERAPY", 7.3, 3.07, 5.6, 0.38, font_size=11, bold=True, color=WHITE) ist_pts = [ "STANDARD REGIMEN (Harrison's 22E):", "• Horse ATG (hATG) 40 mg/kg/day × 4 days", "• Cyclosporine A (CsA): 6 mg/kg/day × 6 months,\n then taper slowly over 18 months", "• Eltrombopag 150 mg/day from Day 1 × 6 months\n (triple therapy)", "• Prednisolone 1 mg/kg/day × 2 weeks (ATG serum sickness)", "", "RESPONSE RATES (triple therapy):", "• Overall response at 6 months: 68–94%", "• Complete response at 3 months: 22%", "• Complete response at 6 months: 58%", "• 2-year event-free survival: 46%", ] yt = 3.55 for pt in ist_pts: bold = not pt.startswith("•") and pt != "" fc = GOLD if bold else LIGHT_GRAY add_textbox(s, pt, 7.3, yt, 5.6, 0.42, font_size=10.5, bold=bold, color=fc, wrap=True) yt += 0.38 # ══════════════════════════════════════════════════════════════════ # SLIDE 11 – KEY CLINICAL TRIALS # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Key Clinical Trials — IST & Eltrombopag", "Landmark Evidence Shaping Current Practice") footer(s) trials = [ { "trial": "RACE Trial — Phase 3 RCT", "ref": "Peffault de Latour et al. NEJM 2022 (PMID 34986284)", "col": ACCENT1, "design": "Multicenter RCT | 197 patients | hATG+CsA ± eltrombopag", "results": [ "Complete response at 3 months: 10% (IST) vs 22% (IST+EPAG) — OR 3.2 (p=0.01)", "Overall response at 6 months: 41% vs 68%", "Median time to first response: 8.8 months vs 3.0 months", "MDS transformation: 1 vs 2 patients (similar)", "Somatic mutations (CH): 29% → 66% (IST) vs 31% → 55% (IST+EPAG) at 6 months", "2-year EFS: 34% (IST) vs 46% (IST+EPAG)", ], "conclusion": "EPAG addition significantly improves rate, rapidity & depth of response without extra toxicity", }, { "trial": "NIH Cohort 3 — Phase 1/2", "ref": "Townsley et al. NEJM 2017; followed by phase 2 data 2020", "col": ACCENT2, "design": "Single-arm | hATG+CsA+EPAG from Day 1 × 6 months | 90 pts", "results": [ "Overall response at 6 months: 94% (Cohort 3) — best arm", "Complete response at 6 months: 58%", "Improved marrow cellularity and hematopoietic progenitors", "No increase in clonal evolution vs historical controls (15%)", "Established Day 1 EPAG start as optimal", ], "conclusion": "Day-1 eltrombopag + hATG + CsA is the standard-of-care IST regimen", }, { "trial": "CLONAL DYNAMICS — Phase 3 RACE subset", "ref": "Kaya et al. NEJM Evidence 2026 (PMID 42047558)", "col": GOLD, "design": "Longitudinal somatic mutation analysis | 170 pts | 31-gene & 291-gene NGS panels", "results": [ "CH at baseline: 30% → at 6 months: 55.3% → at 24 months: 79.6%", "Mean mutations/patient: 0.4 → 1.2 → 2.5 (baseline→6→24 months)", "EPAG did NOT increase CH prevalence vs IST alone", "CH reflects immune-escape expansion of surviving HSC clones", "HLA class I loss: dominant immune-escape mechanism identified", ], "conclusion": "CH is ubiquitous in AA post-treatment; EPAG does not worsen clonal risk", }, ] yt = 1.22 for t in trials: add_rect(s, 0.3, yt, 12.7, 0.38, t["col"]) add_textbox(s, f"{t['trial']} | {t['ref']}", 0.4, yt+0.02, 12.5, 0.34, font_size=11.5, bold=True, color=WHITE) yt += 0.38 add_rect(s, 0.3, yt, 12.7, 0.32, MID_BLUE) add_textbox(s, f"Design: {t['design']}", 0.4, yt+0.04, 12.5, 0.28, font_size=10.5, color=ACCENT2, italic=True) yt += 0.32 for r in t["results"]: add_textbox(s, f" • {r}", 0.4, yt, 12.3, 0.33, font_size=10.5, color=LIGHT_GRAY, wrap=True) yt += 0.33 add_rect(s, 0.3, yt, 12.7, 0.32, RGBColor(0x1A, 0x38, 0x1A)) add_textbox(s, f"✔ Conclusion: {t['conclusion']}", 0.4, yt+0.04, 12.5, 0.28, font_size=10.5, color=GREEN, bold=True) yt += 0.42 # ══════════════════════════════════════════════════════════════════ # SLIDE 12 – HSCT IN DETAIL # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Hematopoietic Stem Cell Transplantation (HSCT)", "Indications, Conditioning & Outcomes") footer(s) add_rect(s, 0.3, 1.2, 12.7, 5.85, MID_BLUE) sections = [ ("INDICATIONS", ACCENT2, [ "• SAA/vSAA age <40 with MSD: First-line therapy (preferred over IST)", "• SAA age 40–50 with MSD: Consider HSCT first-line (case-by-case)", "• Age <18 with SAA: HSCT strongly preferred (better outcomes, fewer late effects)", "• Failure of ≥1 course of IST: Proceed to HSCT regardless of age (MSD or MUD)", "• Clonal evolution (monosomy 7, MDS): URGENT HSCT", "• IBMFS (Fanconi, DC): Modified conditioning mandatory", ]), ("CONDITIONING REGIMENS", ORANGE, [ "• Standard (MSD, age <40): Cyclophosphamide 50 mg/kg × 4 days + hATG", "• Older/Alternative donor: Fludarabine-based (Flu/Cy/ATG) — reduced toxicity", "• Fanconi anemia: Reduced-intensity (no alkylating agents)", "• Post-transplant cyclophosphamide (PT-Cy): GVHD prevention in haplo-HCT", "• Avoid TBI in AA (increases late malignancy risk)", ]), ("DONOR TYPES & OUTCOMES", GREEN, [ "• MSD: 5-yr OS 85–90% (children); 70–80% (adults) — BEST outcomes", "• MUD (10/10 HLA): OS ~70–75%; more GVHD, more infections", "• Haploidentical + PT-Cy: OS ~70% (EBMT 2024); emerging evidence for upfront use", " – ASTCT 2024 Guidelines: haploidentical valid upfront when MSD unavailable", "• Cord blood: option for children <20 kg; engraftment slower", "• Meta-analysis haploidentical AA (PMID 37442821, Ann Hematol 2023): acceptable efficacy", ]), ("COMPLICATIONS", ACCENT1, [ "• Graft failure (5–10%): Higher with MUD, prior transfusions, HLA sensitization", "• Acute GVHD (grade III-IV): 15–25% MSD; 30–40% MUD", "• Chronic GVHD: 20–40%; higher in older patients", "• Infections: Bacterial, fungal (pre-engraftment); CMV/EBV (post-engraftment)", "• Late effects: Secondary malignancy (rare without TBI), infertility, endocrine dysfunction", ]), ] yt = 1.28 for title, col, pts in sections: add_rect(s, 0.35, yt, 12.6, 0.35, col) add_textbox(s, title, 0.45, yt+0.03, 12.4, 0.3, font_size=11.5, bold=True, color=WHITE) yt += 0.35 for pt in pts: add_textbox(s, pt, 0.45, yt, 12.4, 0.4, font_size=10.5, color=LIGHT_GRAY, wrap=True) yt += 0.37 yt += 0.07 # ══════════════════════════════════════════════════════════════════ # SLIDE 13 – SALVAGE & SECOND-LINE THERAPY # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Salvage & Second-Line Therapy", "Management of Relapsed / Refractory AA") footer(s) add_textbox(s, "DEFINITION OF TREATMENT FAILURE: No response at 3–6 months | Relapse after response | Cyclosporine-dependent disease", 0.3, 1.2, 12.7, 0.42, font_size=12, bold=True, color=GOLD, wrap=True) # Options table options = [ ("Repeat IST (2nd course ATG)", ACCENT2, "Rabbit ATG (rATG) + CsA + Eltrombopag\n" "• Use rATG if horse ATG given first (switch species)\n" "• Response rate: ~30–40% in relapsed/refractory\n" "• Horse ATG superior to rabbit ATG as first-line\n" "• May combine with eltrombopag even if used first-line"), ("Allogeneic HSCT (if not done)", GREEN, "MUD / Haploidentical / Cord blood\n" "• Preferred for all patients with HLA-matched donor after IST failure\n" "• OS ~70% with MUD after IST failure\n" "• Earlier referral = better outcome (avoid multiple IST courses)"), ("Eltrombopag Monotherapy", ORANGE, "For patients refractory/intolerant to IST:\n" "• 150 mg/day (40 mg/day if East Asian)\n" "• Response in 40–50% of refractory cases\n" "• Romiplostim: Case reports/small series show benefit (Rinsho Ketsueki 2025)"), ("Danazol", TEAL, "Androgen therapy for telomere biology disorders:\n" "• Mechanism: upregulates TERT expression\n" "• Can improve cytopenias; used in DC, TBD\n" "• Hepatotoxicity; virilization in women"), ("Cyclosporine taper optimization", MID_BLUE, "CsA-dependent patients:\n" "• Slow taper over years\n" "• Add mycophenolate mofetil or sirolimus\n" "• Monthly monitoring of CBC during taper"), ("Novel / Investigational", ACCENT1, "2025 frontiers:\n" "• ITK inhibitor (ibrutinib-like): murine model benefit (Cancer Immunol 2025, PMID 40299061)\n" "• JAK inhibitors: investigated in immune-mediated marrow failure\n" "• Single-cell immune profiling guiding targeted therapy (Nat Commun 2025, PMID 40447607)\n" "• Anti-CD52 (alemtuzumab): used in refractory cases"), ] yt = 1.75 for i, (name, col, desc) in enumerate(options): xi = 0.3 if i % 2 == 0 else 6.7 if i % 2 == 0 and i > 0: yt += 1.55 add_rect(s, xi, yt, 6.1, 0.38, col) add_textbox(s, name, xi+0.1, yt+0.03, 5.9, 0.34, font_size=12, bold=True, color=WHITE) add_rect(s, xi, yt+0.38, 6.1, 1.12, MID_BLUE) add_textbox(s, desc, xi+0.12, yt+0.42, 5.85, 1.06, font_size=10.5, color=LIGHT_GRAY, wrap=True) # ══════════════════════════════════════════════════════════════════ # SLIDE 14 – SUPPORTIVE CARE # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Supportive Care", "Management of Cytopenias & Complications") footer(s) supp_cols = [ ("TRANSFUSION SUPPORT", ACCENT2, [ "Red Cell Transfusions", "• Threshold: Hb <7–8 g/dL (or <9 if symptomatic/cardiac)", "• Use leukocyte-depleted, CMV-negative products", "• Irradiate all products (immunosuppressed patients)", "• Minimize pre-HSCT transfusions (HLA sensitization risk)", "", "Platelet Transfusions", "• Prophylactic threshold: Plt <10×10⁹/L", "• Plt <20 if fever/active bleeding", "• HLA-matched platelets if refractory", "", "Iron Chelation", "• Serum ferritin >2500 μg/L or >25–30 units pRBC", "• Oral: Deferasirox; SC: Deferoxamine", "• Monitor LFTs, renal function during chelation", ]), ("INFECTION PROPHYLAXIS", GREEN, [ "Bacterial Prophylaxis", "• Fluoroquinolone (ciprofloxacin/levofloxacin)\n when ANC <0.5×10⁹/L", "• Dental hygiene; avoid invasive procedures", "", "Fungal Prophylaxis", "• Fluconazole or posaconazole (on ATG/steroids)", "• Voriconazole for Aspergillus coverage in high-risk", "", "Viral Prophylaxis", "• Acyclovir/valacyclovir: HSV/VZV reactivation during IST", "• CMV monitoring post-HSCT (weekly PCR)", "• PCP (Pneumocystis) prophylaxis: TMP-SMX or dapsone", "", "Growth Factors", "• G-CSF: Controversial in AA (may drive clonal evolution)", "• Short-term G-CSF for severe infection only", ]), ("OTHER SUPPORTIVE MEASURES", ORANGE, [ "Avoidance Strategies", "• Stop all offending drugs/toxins", "• Avoid live vaccines during IST/HSCT", "• Avoid NSAIDs, antiplatelet agents", "• Protective isolation when ANC <0.2", "", "Gastrointestinal", "• Eltrombopag: take on empty stomach (metal chelation)", "• Anti-nausea: ondansetron during ATG infusion", "• Proton pump inhibitor during steroid course", "", "Hormonal/Fertility", "• OCP/hormonal therapy for menorrhagia", "• Fertility counseling before HSCT", "• Sperm banking pre-transplant", "", "Mental Health", "• Psychosocial support", "• Disease education for patients and families", ]), ] for ci, (title, col, items) in enumerate(supp_cols): xo = 0.3 + ci * 4.35 add_rect(s, xo, 1.2, 4.1, 0.38, col) add_textbox(s, title, xo+0.08, 1.22, 3.95, 0.35, font_size=12, bold=True, color=WHITE) add_rect(s, xo, 1.58, 4.1, 5.57, MID_BLUE) yt = 1.65 for item in items: bold = not item.startswith("•") and item != "" and not item.startswith(" ") fc = GOLD if bold else LIGHT_GRAY add_textbox(s, item, xo+0.1, yt, 3.92, 0.42, font_size=10.5, bold=bold, color=fc, wrap=True) yt += 0.37 # ══════════════════════════════════════════════════════════════════ # SLIDE 15 – PROGNOSIS, MONITORING & FUTURE # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) header_bar(s, "Prognosis, Monitoring & Future Directions", "Long-Term Outcomes & Emerging Therapies") footer(s) # Prognosis boxes progs = [ ("With HSCT\n(MSD, <40 yrs)", "85–90%\n5-year OS", GREEN), ("With IST\n(triple therapy)", "70–80%\noverall response", ACCENT2), ("Relapse rate\nafter IST", "30–40%\nover 5 years", ORANGE), ("Clonal evolution\nto MDS/AML", "10–15%\nat 10 years", ACCENT1), ("CsA-dependent\nremission", "~15–25%\nof responders", TEAL), ] for i, (lbl, val, col) in enumerate(progs): xi = 0.3 + i * 2.6 add_rect(s, xi, 1.2, 2.45, 1.15, col) add_textbox(s, val, xi, 1.22, 2.45, 0.65, font_size=20, bold=True, color=WHITE, align=PP_ALIGN.CENTER) add_textbox(s, lbl, xi, 1.87, 2.45, 0.45, font_size=10, color=WHITE, align=PP_ALIGN.CENTER) # Monitoring schedule add_rect(s, 0.3, 2.5, 6.0, 0.38, ACCENT2) add_textbox(s, "MONITORING SCHEDULE POST-TREATMENT", 0.4, 2.52, 5.8, 0.34, font_size=12, bold=True, color=WHITE) mon = [ ("CBC + retics", "Weekly during active IST; every 4–8 weeks when stable"), ("CsA levels", "Every 2 weeks until stable; trough 200–400 ng/mL"), ("Renal / LFTs", "Every 4–8 weeks on CsA; monthly during EPAG"), ("BM biopsy + cytogenetics", "At 3 months (response assessment); then annually"), ("PNH flow cytometry", "Every 6 months if clone detected; annually otherwise"), ("Ferritin + LFTs", "Every 3 months if on chelation; every 6 months otherwise"), ("NGS somatic panel", "At baseline; at 24 months if CH suspected"), ] yt = 2.95 for test, freq in mon: add_rect(s, 0.3, yt, 2.5, 0.38, MID_BLUE) add_textbox(s, test, 0.35, yt+0.04, 2.4, 0.32, font_size=10.5, bold=True, color=ACCENT2) add_textbox(s, freq, 2.85, yt+0.05, 3.4, 0.34, font_size=10.5, color=LIGHT_GRAY, wrap=True) yt += 0.42 # Future directions add_rect(s, 6.6, 2.5, 6.4, 0.38, GOLD) add_textbox(s, "FUTURE DIRECTIONS & NOVEL THERAPIES (2024–2026)", 6.7, 2.52, 6.2, 0.34, font_size=11.5, bold=True, color=DARK_BG) futures = [ ("Single-cell genomics", "Mapping autoimmune T cell landscape pre/post-IST at single-cell resolution (Nat Commun 2025, PMID 40447607) — enabling precise immunotherapy targeting"), ("IL-2-inducible T cell kinase (ITK) inhibitor", "Targeting ITK ameliorates immune-mediated AA in murine models — potential new immunotherapy approach (Cancer Immunol Immunother 2025, PMID 40299061)"), ("Molecular mimicry targeting", "Identifying specific viral antigens that trigger AA → antigen-specific tolerization strategies (Blood 2024, PMID 38277625)"), ("EPAG frontloading optimization", "Optimal dose/duration, alternate TPO-RA agents (avatrombopag, lusutrombopag) under evaluation in Phase 2 trials"), ("Gene therapy for IBMFS", "Lentiviral correction of FANCA, DKC1 in Fanconi/DC: early phase trials ongoing"), ("ASH 2025 Draft Guidelines", "Systematic guidance for PNH testing, IST regimens, pediatric protocols — full publication anticipated 2025"), ] yt = 2.95 for name, desc in futures: add_rect(s, 6.6, yt, 6.4, 0.38, MID_BLUE) add_rect(s, 6.6, yt, 0.08, 0.38, GOLD) add_textbox(s, name, 6.72, yt+0.03, 2.2, 0.34, font_size=10, bold=True, color=GOLD) add_textbox(s, desc, 8.95, yt+0.03, 4.0, 0.38, font_size=10, color=LIGHT_GRAY, wrap=True) yt += 0.42 # ══════════════════════════════════════════════════════════════════ # SLIDE 16 – SUMMARY # ══════════════════════════════════════════════════════════════════ s = prs.slides.add_slide(blank) bg(s) add_rect(s, 0, 0, 13.333, 7.5, DARK_BG) add_rect(s, 0, 0, 13.333, 0.08, ACCENT1) add_rect(s, 0, 7.42, 13.333, 0.08, ACCENT1) add_textbox(s, "KEY TAKE-HOME MESSAGES", 0.5, 0.2, 12.3, 0.6, font_size=26, bold=True, color=GOLD, align=PP_ALIGN.CENTER) msgs = [ (ACCENT1, "PATHOPHYSIOLOGY", "Oligoclonal CD8+ T cells destroy HSCs via IFN-γ/Fas-mediated apoptosis. " "Intrinsic stem cell defects (telomere shortening, somatic mutations) co-exist. " "Molecular mimicry between viral antigens and HSC antigens is now established (Blood 2024)."), (ACCENT2, "DIAGNOSIS", "Pancytopenia + hypocellular BM on trephine biopsy. " "Mandatory: PNH flow cytometry, chromosomal breakage test (young), telomere length, " "NGS germline/somatic panel, HLA typing."), (GREEN, "FIRST-LINE TREATMENT", "MSD HSCT for age <40 with donor. " "Triple IST (hATG + CsA + Eltrombopag from Day 1) for all others — 68–94% overall response. " "RACE Trial 2022 establishes EPAG as standard. Harrison's 22E endorses 'triple therapy'."), (ORANGE, "TRIALS & EVIDENCE", "RACE Trial (NEJM 2022): EPAG triples CR rate at 3 months. " "NEJM Evidence 2026: CH ubiquitous post-AA, EPAG does not increase clonal risk. " "ASTCT 2024: Haploidentical HSCT is a valid upfront option without MSD."), (GOLD, "SURVEILLANCE", "Annual BM biopsy + cytogenetics + NGS mandatory. " "Monitor PNH clone q6–12 months. " "Monosomy 7 → urgent HSCT. 10–15% clonal evolution to MDS/AML over 10 years."), ] yt = 0.95 for col, title, msg in msgs: add_rect(s, 0.4, yt, 1.5, 0.75, col) add_textbox(s, title, 0.41, yt+0.1, 1.48, 0.6, font_size=11, bold=True, color=WHITE, align=PP_ALIGN.CENTER) add_rect(s, 1.9, yt, 11.0, 0.75, MID_BLUE) add_textbox(s, msg, 2.0, yt+0.08, 10.8, 0.65, font_size=11, color=LIGHT_GRAY, wrap=True) yt += 0.83 add_textbox(s, "Sources: Harrison's Principles of Internal Medicine 22E (2025) | Robbins Basic Pathology 11E | " "NEJM 2022 (PMID 34986284) | NEJM Evidence 2026 (PMID 42047558) | " "Blood Adv 2024 (PMID 38669341) | ASH Draft Guidelines 2025 | ASTCT 2024", 0.4, 7.0, 12.5, 0.38, font_size=9, color=LIGHT_GRAY, italic=True, wrap=True) # Save out_path = "/tmp/workspace/aplastic-anemia-ppt/Aplastic_Anemia_DM_Hematology_Advanced.pptx" prs.save(out_path) print(f"Saved: {out_path}") print(f"Slides: {len(prs.slides)}") PYEOF echo "Script written"
cd /tmp/workspace/aplastic-anemia-ppt && python build_ppt.py 2>&1
Aplastic Anemia DM Hematology Advanced
Presentation · PPTX
| # | Slide | Highlights |
|---|---|---|
| 1 | Title | All topics listed with index |
| 2 | Definition & Epidemiology | Incidence stats, Asia vs West, PNH/MDS link |
| 3 | Etiology & Classification | Acquired (idiopathic, drugs, post-hepatitis) vs Inherited (Fanconi, DC, DBA, GATA2) |
| 4 | Pathophysiology — Overview | Both mechanisms side-by-side (immune vs intrinsic HSC) |
| 5 | Detailed Immune Pathophysiology | CD8+ CTL cascade → IFN-γ/Fas apoptosis; cytokine table; Treg depletion; molecular mimicry (Blood 2024) |
| 6 | Clonal Evolution, PNH & CH | PNH clone role; NEJM Evidence 2026 CH data (30%→55%→80%) |
| 7 | Clinical Features | Symptoms, exam, red flags, IBMFS stigmata |
| 8 | Diagnosis & Investigations | Full work-up: BM biopsy, PNH flow, DEB test, telomere length, NGS |
| 9 | Severity Classification | Camitta: mAA / SAA / vSAA with management per category |
| 10 | Treatment Algorithm | MSD HSCT vs IST triple therapy decision tree |
| 11 | Key Clinical Trials | RACE (NEJM 2022), NIH Cohort 3, NEJM Evidence 2026 with results |
| 12 | HSCT in Detail | Conditioning, donor types, outcomes, ASTCT 2024 guidelines |
| 13 | Salvage Therapy | 2nd course ATG, MUD HSCT, EPAG monotherapy, ITK inhibitor (2025) |
| 14 | Supportive Care | Transfusion thresholds, infection prophylaxis, iron chelation |
| 15 | Prognosis & Future | Monitoring schedule + novel therapies (single-cell genomics, gene therapy, ASH 2025 guidelines) |
| 16 | Summary | 5 key take-home messages with color-coded panels |