Please generate a PowerPoint presentation on retroperitoneal Tumors in a 20 slides ppt keep it compat and add relevant images to it plz do it fast
retroperitoneal tumors classification types imaging treatment overview
retroperitoneal sarcoma liposarcoma leiomyosarcoma CT MRI medical images
mkdir -p /home/daytona/workspace/retroperitoneal-ppt && ls /home/daytona/workspace/retroperitoneal-ppt/
~/retroperitoneal-ppt/build.js
const pptxgen = require("pptxgenjs");
const { execSync } = require("child_process");
// ─── Fetch images as base64 ───────────────────────────────────────────────────
const imageUrls = [
"https://www.researchgate.net/publication/51501337/figure/tbl1/AS:668734377173006@1536450108818/Classification-of-Solid-Retroperitoneal-Masses.png",
"https://prod-images-static.radiopaedia.org/images/473/41368ae4f35e20fa49467fc749ae4d_big_gallery.jpeg",
"https://prod-images-static.radiopaedia.org/images/31127369/7a2d8584ede11f0f8a8ce28f60cb09_gallery.jpeg",
"https://www.mdpi.com/cancers/cancers-15-02985/article_deploy/html/images/cancers-15-02985-g002.png",
"https://www.mdpi.com/cancers/cancers-15-02985/article_deploy/html/images/cancers-15-02985-g009-550.jpg",
"https://epos.myesr.org/posterimage/esr/ecr2011/105684/media/346946.png",
"https://www.mdpi.com/curroncol/curroncol-30-00349/article_deploy/html/images/curroncol-30-00349-g001-550.jpg"
];
let imgs = [];
try {
const raw = execSync(
`node /home/daytona/skills/shared/scripts/fetch_images.js ${imageUrls.map(u => `"${u}"`).join(" ")}`,
{ maxBuffer: 50 * 1024 * 1024, timeout: 60000 }
).toString();
imgs = JSON.parse(raw);
} catch(e) {
console.error("Image fetch failed:", e.message);
imgs = imageUrls.map(u => ({ url: u, base64: null, error: e.message }));
}
function getImg(i) {
return imgs[i] && imgs[i].base64 && !imgs[i].error ? imgs[i].base64 : null;
}
// ─── Color Palette ───────────────────────────────────────────────────────────
const C = {
darkBlue: "0D1F3C",
midBlue: "1A3A6B",
accent: "2E86C1",
accentGold: "E8A020",
lightBg: "EAF2FB",
white: "FFFFFF",
lightGray: "D5E8F7",
text: "1A2A3A",
subtext: "3D5A7A",
red: "C0392B",
green: "1D7A4F",
};
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Retroperitoneal Tumors";
pres.author = "Medical Education";
// ─── Helper: add slide background ────────────────────────────────────────────
function darkSlide() {
const s = pres.addSlide();
s.background = { color: C.darkBlue };
return s;
}
function lightSlide() {
const s = pres.addSlide();
s.background = { color: C.lightBg };
return s;
}
function midSlide() {
const s = pres.addSlide();
s.background = { color: "F0F6FC" };
return s;
}
// helper: accent bar at top
function accentBar(slide, color = C.accent) {
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.12, fill: { color } });
}
function accentBarBottom(slide, color = C.accentGold) {
slide.addShape(pres.ShapeType.rect, { x: 0, y: 5.5, w: 10, h: 0.12, fill: { color } });
}
function sectionTitle(slide, txt, y = 0.2) {
slide.addText(txt, {
x: 0.4, y, w: 9.2, h: 0.55,
fontSize: 22, bold: true, color: C.darkBlue,
fontFace: "Calibri", align: "left",
});
}
function divider(slide, y) {
slide.addShape(pres.ShapeType.line, {
x: 0.4, y, w: 9.2, h: 0,
line: { color: C.accent, width: 1.5 },
});
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 1 — Title Slide
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = darkSlide();
// top accent
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.15, fill: { color: C.accentGold } });
// blue gradient box left
s.addShape(pres.ShapeType.rect, { x: 0, y: 0.15, w: 5.8, h: 5.47, fill: { color: C.midBlue } });
// title text
s.addText("RETROPERITONEAL\nTUMORS", {
x: 0.3, y: 0.8, w: 5.2, h: 2.2,
fontSize: 38, bold: true, color: C.white,
fontFace: "Calibri", align: "left", valign: "middle",
lineSpacingMultiple: 1.15,
});
s.addText("A Comprehensive Overview", {
x: 0.3, y: 3.1, w: 5.2, h: 0.5,
fontSize: 16, color: C.accentGold, fontFace: "Calibri", italic: true,
});
s.addText("Classification · Diagnosis · Imaging · Management", {
x: 0.3, y: 3.75, w: 5.2, h: 0.45,
fontSize: 11.5, color: "A8C8E8", fontFace: "Calibri",
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 5.8, h: 0.32, fill: { color: C.accent } });
s.addText("Medical Education · 2026", {
x: 0.3, y: 5.3, w: 5.2, h: 0.32,
fontSize: 10, color: C.white, fontFace: "Calibri",
});
// right panel - anatomy image placeholder or solid color
s.addShape(pres.ShapeType.rect, { x: 5.8, y: 0.15, w: 4.2, h: 5.47, fill: { color: "122550" } });
const img7 = getImg(6);
if (img7) {
s.addImage({ data: img7, x: 5.85, y: 0.3, w: 4.1, h: 5.1 });
} else {
s.addText("🫀 Retroperitoneal Anatomy", {
x: 5.85, y: 2.4, w: 4.0, h: 0.8,
fontSize: 14, color: "4A7FB5", align: "center", fontFace: "Calibri",
});
}
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 2 — Outline
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = midSlide();
accentBar(s, C.accent);
s.addText("PRESENTATION OUTLINE", {
x: 0.4, y: 0.2, w: 9.2, h: 0.55,
fontSize: 24, bold: true, color: C.darkBlue, fontFace: "Calibri",
});
divider(s, 0.82);
const items = [
["01", "Anatomy of the Retroperitoneum"],
["02", "Definition & Incidence"],
["03", "Classification of Retroperitoneal Tumors"],
["04", "Benign Tumors"],
["05", "Malignant Tumors — Retroperitoneal Sarcomas"],
["06", "Liposarcoma"],
["07", "Leiomyosarcoma"],
["08", "Neurogenic Tumors"],
["09", "Germ Cell Tumors"],
["10", "Lymphomas & Secondary Tumors"],
["11", "Clinical Presentation"],
["12", "Diagnosis & Imaging (CT)"],
["13", "MRI Features"],
["14", "Biopsy & Histopathology"],
["15", "Staging"],
["16", "Surgical Management"],
["17", "Adjuvant Therapy"],
["18", "Prognosis & Recurrence"],
["19", "Recent Advances"],
["20", "Summary & Key Points"],
];
const cols = [items.slice(0, 10), items.slice(10, 20)];
cols.forEach((col, ci) => {
col.forEach(([num, label], ri) => {
const x = 0.4 + ci * 4.9;
const y = 0.95 + ri * 0.45;
s.addShape(pres.ShapeType.rect, { x, y, w: 0.42, h: 0.34, fill: { color: C.accent }, roundedCorners: true });
s.addText(num, { x, y, w: 0.42, h: 0.34, fontSize: 9, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri" });
s.addText(label, { x: x + 0.48, y: y + 0.02, w: 4.2, h: 0.32, fontSize: 11, color: C.text, fontFace: "Calibri" });
});
});
accentBarBottom(s);
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 3 — Anatomy of the Retroperitoneum
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = lightSlide();
accentBar(s, C.midBlue);
sectionTitle(s, "Anatomy of the Retroperitoneum");
divider(s, 0.82);
const bullets = [
"Space between posterior parietal peritoneum & posterior abdominal wall muscles",
"Extends from diaphragm superiorly to pelvic brim inferiorly",
"Bounded laterally by the retroperitoneal fat & muscles (psoas, quadratus lumborum)",
"Contains: kidneys, adrenals, aorta, IVC, pancreas, duodenum (2nd–4th parts), ureters",
"Rich in areolar tissue, lymphatics, nerves, & autonomic ganglia",
"Three compartments: anterior pararenal, perirenal, posterior pararenal spaces",
];
bullets.forEach((b, i) => {
s.addShape(pres.ShapeType.ellipse, { x: 0.4, y: 0.98 + i * 0.7, w: 0.2, h: 0.2, fill: { color: C.accent } });
s.addText(b, { x: 0.68, y: 0.93 + i * 0.7, w: 8.8, h: 0.55, fontSize: 13, color: C.text, fontFace: "Calibri" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 4 — Definition & Incidence
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = midSlide();
accentBar(s, C.accentGold);
sectionTitle(s, "Definition & Incidence");
divider(s, 0.82);
// left text panel
s.addText("Definition", { x: 0.4, y: 0.95, w: 5.5, h: 0.4, fontSize: 15, bold: true, color: C.accent, fontFace: "Calibri" });
s.addText(
"Primary retroperitoneal tumors (PRTs) are neoplasms arising within the retroperitoneal space that are not of renal, adrenal, or pancreatic origin. They are a heterogeneous group — benign or malignant.",
{ x: 0.4, y: 1.38, w: 5.5, h: 1.0, fontSize: 12.5, color: C.text, fontFace: "Calibri", align: "justify" }
);
s.addText("Epidemiology", { x: 0.4, y: 2.5, w: 5.5, h: 0.4, fontSize: 15, bold: true, color: C.accent, fontFace: "Calibri" });
const epiData = [
"~0.1–0.2 per 100,000 population/year",
"~15% of all soft tissue sarcomas are retroperitoneal",
"Peak incidence: 5th–7th decade of life",
"Slight male predominance for sarcomas",
"Represent <1% of all malignant tumors overall",
];
epiData.forEach((d, i) => {
s.addShape(pres.ShapeType.ellipse, { x: 0.4, y: 3.05 + i * 0.42, w: 0.18, h: 0.18, fill: { color: C.accentGold } });
s.addText(d, { x: 0.65, y: 3.0 + i * 0.42, w: 5.3, h: 0.38, fontSize: 12, color: C.text, fontFace: "Calibri" });
});
// right: stat boxes
const stats = [
{ val: "80%", sub: "Malignant" },
{ val: "45%", sub: "Liposarcoma" },
{ val: "25%", sub: "Leiomyosarcoma" },
{ val: "5yr OS", sub: "~50% (resected)" },
];
stats.forEach((st, i) => {
const x = 6.2 + (i % 2) * 1.85;
const y = 1.0 + Math.floor(i / 2) * 2.1;
s.addShape(pres.ShapeType.roundRect, { x, y, w: 1.7, h: 1.6, fill: { color: C.midBlue }, rectRadius: 0.12 });
s.addText(st.val, { x, y: y + 0.25, w: 1.7, h: 0.8, fontSize: 26, bold: true, color: C.accentGold, align: "center", fontFace: "Calibri" });
s.addText(st.sub, { x, y: y + 1.05, w: 1.7, h: 0.4, fontSize: 11, color: "A8C8E8", align: "center", fontFace: "Calibri" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 5 — Classification
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = lightSlide();
accentBar(s, C.accent);
sectionTitle(s, "Classification of Retroperitoneal Tumors");
divider(s, 0.82);
const categories = [
{ title: "Mesenchymal / Mesodermal", color: C.accent, items: ["Liposarcoma", "Leiomyosarcoma", "Malignant Fibrous Histiocytoma", "Rhabdomyosarcoma", "Benign Lipoma, Fibroma"] },
{ title: "Neurogenic", color: "7D3C98", items: ["Schwannoma (benign)", "Neurofibroma", "Neuroblastoma", "Ganglioneuroma", "Paraganglioma"] },
{ title: "Germ Cell", color: C.accentGold, items: ["Mature Teratoma", "Immature Teratoma", "Primary Seminoma", "Nonseminomatous GCT", "Extragonadal NSGCT"] },
{ title: "Lymphoid / Secondary", color: "1D7A4F", items: ["Lymphoma (NHL, HL)", "Metastatic lymph nodes", "Direct invasion (renal, pancreatic)", "Carcinoid / NET"] },
];
categories.forEach((cat, ci) => {
const col = ci % 2;
const row = Math.floor(ci / 2);
const x = 0.3 + col * 4.85;
const y = 0.95 + row * 2.3;
s.addShape(pres.ShapeType.rect, { x, y, w: 4.6, h: 0.38, fill: { color: cat.color } });
s.addText(cat.title, { x, y, w: 4.6, h: 0.38, fontSize: 12.5, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri" });
s.addShape(pres.ShapeType.rect, { x, y: y + 0.38, w: 4.6, h: 1.8, fill: { color: "F5F8FC" } });
cat.items.forEach((item, ii) => {
s.addText("• " + item, { x: x + 0.15, y: y + 0.44 + ii * 0.33, w: 4.3, h: 0.32, fontSize: 11, color: C.text, fontFace: "Calibri" });
});
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 6 — Benign Tumors
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = midSlide();
accentBar(s, C.green);
sectionTitle(s, "Benign Retroperitoneal Tumors");
divider(s, 0.82);
const benign = [
{ name: "Lipoma", desc: "Mature adipose tissue; large, well-encapsulated; CT shows pure fat density (HU < -100)" },
{ name: "Schwannoma", desc: "Antoni A & B cells; well-defined; may have cystic change; S-100 positive on IHC" },
{ name: "Neurofibroma", desc: "Diffuse nerve sheath tumor; associated with NF-1; target sign on MRI" },
{ name: "Ganglioneuroma", desc: "Mature ganglion cells; most common in adrenal/paravertebral; benign behavior" },
{ name: "Paraganglioma", desc: "Arise from paraganglia of autonomic nervous system; may be functional (secreting catecholamines)" },
{ name: "Mature Teratoma", desc: "Well-differentiated elements (fat, hair, teeth); dermoid cyst appearance on imaging" },
];
benign.forEach((t, i) => {
const row = Math.floor(i / 2);
const col = i % 2;
const x = 0.3 + col * 4.85;
const y = 0.95 + row * 1.52;
s.addShape(pres.ShapeType.roundRect, { x, y, w: 4.6, h: 1.38, fill: { color: C.lightBg }, rectRadius: 0.1, line: { color: C.green, width: 1 } });
s.addText(t.name, { x: x + 0.15, y: y + 0.1, w: 4.3, h: 0.35, fontSize: 13, bold: true, color: "1D7A4F", fontFace: "Calibri" });
s.addText(t.desc, { x: x + 0.15, y: y + 0.45, w: 4.3, h: 0.8, fontSize: 10.5, color: C.text, fontFace: "Calibri", align: "justify" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 7 — Retroperitoneal Sarcomas Overview + image
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = lightSlide();
accentBar(s, C.red);
sectionTitle(s, "Malignant Tumors — Retroperitoneal Sarcomas");
divider(s, 0.82);
// left panel text
const pts = [
"Most common primary malignant retroperitoneal tumors in adults",
"Liposarcoma (45%) and Leiomyosarcoma (25%) dominate",
"Typically large at presentation (mean 15–20 cm) due to silent growth",
"Arise from primitive mesenchymal stem cells",
"WHO 2020 classification guides histologic subtyping",
"Grade (FNCLCC) is the strongest prognostic factor",
"Complete surgical resection (R0) is the only curative treatment",
];
pts.forEach((p, i) => {
s.addShape(pres.ShapeType.rect, { x: 0.35, y: 0.98 + i * 0.6, w: 0.06, h: 0.42, fill: { color: C.red } });
s.addText(p, { x: 0.5, y: 0.98 + i * 0.6, w: 5.5, h: 0.5, fontSize: 12, color: C.text, fontFace: "Calibri" });
});
// right image
const img = getImg(1);
if (img) {
s.addImage({ data: img, x: 6.2, y: 0.95, w: 3.5, h: 4.0 });
s.addText("CT: Large retroperitoneal sarcoma", { x: 6.2, y: 5.0, w: 3.5, h: 0.28, fontSize: 9, color: C.subtext, align: "center", italic: true, fontFace: "Calibri" });
} else {
s.addShape(pres.ShapeType.roundRect, { x: 6.2, y: 0.95, w: 3.5, h: 4.0, fill: { color: "D5E8F7" }, rectRadius: 0.1 });
s.addText("CT Imaging — Retroperitoneal Sarcoma", { x: 6.2, y: 2.7, w: 3.5, h: 0.6, fontSize: 11, color: C.subtext, align: "center", fontFace: "Calibri" });
}
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 8 — Liposarcoma
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = midSlide();
accentBar(s, C.accent);
sectionTitle(s, "Liposarcoma — Most Common Retroperitoneal Sarcoma");
divider(s, 0.82);
const subtypes = [
{ name: "Well-Differentiated (WDLPS)", pct: "~40%", grade: "Low Grade", key: "MDM2/CDK4 amplification; adipocytic cells with atypia; CT: fat-predominant" },
{ name: "Dedifferentiated (DDLPS)", pct: "~40%", grade: "High Grade", key: "Non-lipogenic component >1 cm; MDM2/CDK4 amplification; 20–30% metastasis" },
{ name: "Myxoid Liposarcoma", pct: "~10%", grade: "Intermediate", key: "FUS-DDIT3 fusion; round cell variant = high grade; myxoid matrix on MRI" },
{ name: "Pleomorphic Liposarcoma", pct: "~5%", grade: "High Grade", key: "Most aggressive; lipoblasts + marked atypia; highest metastatic potential" },
];
subtypes.forEach((st, i) => {
const y = 0.98 + i * 1.08;
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y, w: 9.4, h: 0.98, fill: { color: i % 2 === 0 ? C.lightBg : "E8F4FD" }, rectRadius: 0.08, line: { color: C.lightGray, width: 0.5 } });
s.addShape(pres.ShapeType.rect, { x: 0.3, y, w: 0.08, h: 0.98, fill: { color: C.accent } });
s.addText(st.name, { x: 0.5, y: y + 0.05, w: 3.2, h: 0.38, fontSize: 12.5, bold: true, color: C.accent, fontFace: "Calibri" });
s.addText(`${st.pct} | ${st.grade}`, { x: 0.5, y: y + 0.52, w: 3.2, h: 0.35, fontSize: 10, color: C.subtext, fontFace: "Calibri", italic: true });
s.addText(st.key, { x: 3.8, y: y + 0.15, w: 5.8, h: 0.65, fontSize: 11, color: C.text, fontFace: "Calibri" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.35, w: 10, h: 0.27, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.35, w: 9.4, h: 0.27, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 9 — Leiomyosarcoma + image
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = lightSlide();
accentBar(s, "7D3C98");
sectionTitle(s, "Leiomyosarcoma (LMS)");
divider(s, 0.82);
const lmsPoints = [
["Origin", "Smooth muscle cells; often arise from wall of IVC or large veins"],
["Frequency", "2nd most common RPS (~25%); more frequent in women"],
["Behavior", "High-grade; early hematogenous spread (lungs, liver)"],
["Histology", "Spindle cells with cigar-shaped nuclei; actin/desmin positive"],
["IVC-LMS types", "Type I: below renal veins; Type II: between renal & hepatic veins; Type III: above hepatic veins"],
["CT/MRI", "Heterogeneous mass ± necrosis; may show intraluminal IVC extension"],
["Treatment", "En-bloc resection ± IVC reconstruction; adjuvant radiotherapy considered"],
];
lmsPoints.forEach(([label, val], i) => {
const y = 0.95 + i * 0.6;
s.addShape(pres.ShapeType.rect, { x: 0.3, y: y + 0.06, w: 1.6, h: 0.38, fill: { color: "7D3C98" } });
s.addText(label, { x: 0.3, y: y + 0.06, w: 1.6, h: 0.38, fontSize: 10.5, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri" });
s.addText(val, { x: 2.05, y: y + 0.06, w: 7.6, h: 0.38, fontSize: 11.5, color: C.text, fontFace: "Calibri", valign: "middle" });
});
const img = getImg(2);
if (img) {
s.addImage({ data: img, x: 7.0, y: 0.95, w: 2.7, h: 3.8 });
s.addText("Radiopaedia: LMS imaging", { x: 7.0, y: 4.8, w: 2.7, h: 0.25, fontSize: 8.5, color: C.subtext, align: "center", italic: true, fontFace: "Calibri" });
}
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 10 — Neurogenic Tumors
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = midSlide();
accentBar(s, "5B2D8E");
sectionTitle(s, "Neurogenic Retroperitoneal Tumors");
divider(s, 0.82);
const neuro = [
{ name: "Schwannoma", type: "Benign", origin: "Schwann cells", key: "Well-defined; encapsulated; Antoni A+B; S-100+; dumbbell shape near foramina" },
{ name: "Neurofibroma", type: "Benign/Malignant potential", origin: "Nerve sheath", key: "NF-1 association; plexiform type = risk for malignant transformation" },
{ name: "MPNST", type: "Malignant", origin: "Nerve sheath", key: "Malignant peripheral nerve sheath tumor; 50% NF-1 related; aggressive; poor prognosis" },
{ name: "Ganglioneuroma", type: "Benign", origin: "Ganglion cells", key: "Whorled fibrous stroma; calcification common; adrenal/paravertebral location" },
{ name: "Neuroblastoma", type: "Malignant", origin: "Neural crest", key: "Most common solid abdominal tumor in children; N-Myc amplification; elevated VMA/HMA" },
{ name: "Paraganglioma", type: "Variable", origin: "Paraganglia", key: "Extra-adrenal pheochromocytoma; catecholamine secretion; SDHB/SDHD mutations" },
];
neuro.forEach((n, i) => {
const col = i % 2;
const row = Math.floor(i / 2);
const x = 0.3 + col * 4.85;
const y = 0.95 + row * 1.52;
const bcolor = n.type === "Benign" ? "1D7A4F" : n.type === "Malignant" ? C.red : C.accentGold;
s.addShape(pres.ShapeType.roundRect, { x, y, w: 4.6, h: 1.38, fill: { color: C.lightBg }, rectRadius: 0.1, line: { color: bcolor, width: 1 } });
s.addShape(pres.ShapeType.rect, { x, y, w: 1.3, h: 0.28, fill: { color: bcolor } });
s.addText(n.type, { x, y, w: 1.3, h: 0.28, fontSize: 9, color: C.white, align: "center", valign: "middle", fontFace: "Calibri" });
s.addText(n.name, { x: x + 0.1, y: y + 0.3, w: 4.4, h: 0.35, fontSize: 13, bold: true, color: "4A235A", fontFace: "Calibri" });
s.addText("Origin: " + n.origin, { x: x + 0.1, y: y + 0.62, w: 4.4, h: 0.28, fontSize: 10, color: C.subtext, italic: true, fontFace: "Calibri" });
s.addText(n.key, { x: x + 0.1, y: y + 0.88, w: 4.4, h: 0.4, fontSize: 9.5, color: C.text, fontFace: "Calibri" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 11 — Germ Cell Tumors
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = lightSlide();
accentBar(s, C.accentGold);
sectionTitle(s, "Germ Cell Tumors (GCTs) of the Retroperitoneum");
divider(s, 0.82);
// left
s.addText("Key Features", { x: 0.3, y: 0.95, w: 5.5, h: 0.4, fontSize: 15, bold: true, color: C.accentGold, fontFace: "Calibri" });
const gct = [
"Arise from primordial germ cells that fail to migrate to gonads during embryogenesis",
"Constitute ~10–15% of primary retroperitoneal tumors",
"Most common in young men (20–40 yrs) — midline location",
"Serum markers: AFP, β-hCG, LDH",
"Types: Seminoma, Embryonal carcinoma, Teratoma, Choriocarcinoma, Mixed GCT",
"Seminoma: radiosensitive; excellent prognosis with BEP chemotherapy",
"NSGCTs: BEP chemotherapy → post-chemo RPLND (retroperitoneal lymph node dissection)",
];
gct.forEach((g, i) => {
s.addShape(pres.ShapeType.ellipse, { x: 0.3, y: 1.48 + i * 0.52, w: 0.18, h: 0.18, fill: { color: C.accentGold } });
s.addText(g, { x: 0.55, y: 1.44 + i * 0.52, w: 5.4, h: 0.48, fontSize: 11.5, color: C.text, fontFace: "Calibri" });
});
// right: marker table
s.addShape(pres.ShapeType.rect, { x: 6.1, y: 0.95, w: 3.6, h: 0.4, fill: { color: C.accentGold } });
s.addText("Tumor Markers by Type", { x: 6.1, y: 0.95, w: 3.6, h: 0.4, fontSize: 12, bold: true, color: C.darkBlue, align: "center", valign: "middle", fontFace: "Calibri" });
const rows = [
["Type", "AFP", "β-hCG"],
["Seminoma", "–", "+/–"],
["Embryonal Ca", "+", "+"],
["Teratoma (mature)", "–", "–"],
["Choriocarcinoma", "–", "+++"],
["Mixed GCT", "+", "+"],
];
rows.forEach((row, ri) => {
const bg = ri === 0 ? C.midBlue : ri % 2 === 0 ? C.lightBg : C.white;
const fc = ri === 0 ? C.white : C.text;
row.forEach((cell, ci) => {
const w = ci === 0 ? 1.8 : 0.9;
const x = 6.1 + (ci === 0 ? 0 : 1.8 + (ci - 1) * 0.9);
const y = 1.38 + ri * 0.52;
s.addShape(pres.ShapeType.rect, { x, y, w, h: 0.5, fill: { color: bg }, line: { color: C.lightGray, width: 0.5 } });
s.addText(cell, { x: x + 0.05, y, w: w - 0.1, h: 0.5, fontSize: 11, color: fc, align: "center", valign: "middle", fontFace: "Calibri", bold: ri === 0 });
});
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 12 — Lymphomas & Secondary Tumors
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = midSlide();
accentBar(s, "1D7A4F");
sectionTitle(s, "Lymphomas & Secondary Retroperitoneal Tumors");
divider(s, 0.82);
// lymphoma box
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 0.95, w: 9.4, h: 2.0, fill: { color: C.lightBg }, rectRadius: 0.1, line: { color: "1D7A4F", width: 1 } });
s.addText("Retroperitoneal Lymphoma", { x: 0.5, y: 1.0, w: 9.0, h: 0.4, fontSize: 15, bold: true, color: "1D7A4F", fontFace: "Calibri" });
const lym = [
"Most commonly NHL (Non-Hodgkin Lymphoma) — Diffuse Large B-cell Lymphoma (DLBCL)",
"Retroperitoneal lymphadenopathy is the hallmark; \"sandwiching\" of aorta/IVC on CT",
"CT: bulky, homogeneous soft-tissue density nodes; PET-CT for staging & response",
"Treatment: R-CHOP chemotherapy ± radiotherapy; generally chemosensitive",
];
lym.forEach((l, i) => {
s.addShape(pres.ShapeType.ellipse, { x: 0.5, y: 1.5 + i * 0.36, w: 0.14, h: 0.14, fill: { color: "1D7A4F" } });
s.addText(l, { x: 0.72, y: 1.46 + i * 0.36, w: 8.9, h: 0.33, fontSize: 11.5, color: C.text, fontFace: "Calibri" });
});
// secondary tumors
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 3.05, w: 9.4, h: 2.1, fill: { color: "FFF8F0" }, rectRadius: 0.1, line: { color: C.accentGold, width: 1 } });
s.addText("Secondary (Metastatic) Retroperitoneal Tumors", { x: 0.5, y: 3.1, w: 9.0, h: 0.4, fontSize: 15, bold: true, color: C.accentGold, fontFace: "Calibri" });
const sec = [
"Retroperitoneal lymph node metastases from: testicular GCT, renal cell, cervical, gastric, colorectal, lung primaries",
"Direct extension: pancreatic carcinoma, aortic aneurysm wall tumors, adrenal carcinoma",
"CT is key for delineating involvement of great vessels, ureters, and adjacent organs",
];
sec.forEach((l, i) => {
s.addShape(pres.ShapeType.ellipse, { x: 0.5, y: 3.6 + i * 0.46, w: 0.14, h: 0.14, fill: { color: C.accentGold } });
s.addText(l, { x: 0.72, y: 3.56 + i * 0.46, w: 8.9, h: 0.42, fontSize: 11.5, color: C.text, fontFace: "Calibri" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 13 — Clinical Presentation
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = lightSlide();
accentBar(s, C.accent);
sectionTitle(s, "Clinical Presentation");
divider(s, 0.82);
// symptom boxes
const symptoms = [
{ icon: "🔵", title: "Abdominal Mass", desc: "80–90% present with painless abdominal/flank mass; often massive (>15 cm)" },
{ icon: "🔴", title: "Pain", desc: "Dull, aching flank or back pain; nerve compression may cause radicular symptoms" },
{ icon: "🟡", title: "GI Symptoms", desc: "Nausea, early satiety, constipation due to bowel displacement; rarely obstruction" },
{ icon: "🟣", title: "Urological", desc: "Haematuria, hydronephrosis, urinary obstruction from ureteric compression" },
{ icon: "🟢", title: "Vascular", desc: "Lower limb oedema (IVC compression/thrombosis); varicocoele" },
{ icon: "⚪", title: "Systemic", desc: "Weight loss, fever, anorexia in malignant tumors; catecholamines in paraganglioma" },
];
symptoms.forEach((sym, i) => {
const col = i % 3;
const row = Math.floor(i / 3);
const x = 0.3 + col * 3.2;
const y = 0.95 + row * 1.88;
s.addShape(pres.ShapeType.roundRect, { x, y, w: 3.05, h: 1.72, fill: { color: C.lightBg }, rectRadius: 0.12, line: { color: C.lightGray, width: 0.8 } });
s.addText(sym.title, { x: x + 0.1, y: y + 0.12, w: 2.85, h: 0.4, fontSize: 13.5, bold: true, color: C.accent, fontFace: "Calibri" });
s.addText(sym.desc, { x: x + 0.1, y: y + 0.55, w: 2.85, h: 1.0, fontSize: 11, color: C.text, fontFace: "Calibri" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 14 — Diagnosis & CT Imaging + image
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = midSlide();
accentBar(s, C.darkBlue);
sectionTitle(s, "Diagnosis & CT Imaging");
divider(s, 0.82);
// left text
s.addText("CT — First-line Imaging", { x: 0.3, y: 1.0, w: 5.4, h: 0.4, fontSize: 14, bold: true, color: C.darkBlue, fontFace: "Calibri" });
const ctFeats = [
"Multiphasic CT (pre-contrast, arterial, venous, delayed phases)",
"Assesses: tumor size, location, density, calcification, fat content",
"Fat attenuation (HU < -100) = lipomatous tumors",
"Necrosis/cystic change = aggressive tumor behavior",
"Relationship to IVC, aorta, renal vessels, ureter crucial for resectability",
"Vascular invasion: intraluminal thrombus within IVC (LMS)",
"CT chest essential for pulmonary staging (lung = common met site)",
];
ctFeats.forEach((c, i) => {
s.addShape(pres.ShapeType.ellipse, { x: 0.3, y: 1.52 + i * 0.5, w: 0.18, h: 0.18, fill: { color: C.accent } });
s.addText(c, { x: 0.55, y: 1.48 + i * 0.5, w: 5.3, h: 0.46, fontSize: 11.5, color: C.text, fontFace: "Calibri" });
});
// right image
const img = getImg(3);
if (img) {
s.addShape(pres.ShapeType.roundRect, { x: 6.0, y: 0.95, w: 3.7, h: 4.1, fill: { color: "D5E8F7" }, rectRadius: 0.1 });
s.addImage({ data: img, x: 6.05, y: 1.0, w: 3.6, h: 3.8 });
s.addText("CT: Retroperitoneal sarcoma subtypes", { x: 6.0, y: 4.85, w: 3.7, h: 0.28, fontSize: 9, color: C.subtext, align: "center", italic: true, fontFace: "Calibri" });
} else {
s.addShape(pres.ShapeType.roundRect, { x: 6.0, y: 0.95, w: 3.7, h: 4.1, fill: { color: "D5E8F7" }, rectRadius: 0.1 });
s.addText("CT Abdomen\nRetroperitoneal Mass", { x: 6.0, y: 2.7, w: 3.7, h: 0.8, fontSize: 12, color: C.subtext, align: "center", fontFace: "Calibri" });
}
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 15 — MRI Features + image
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = lightSlide();
accentBar(s, "2E5090");
sectionTitle(s, "MRI Features of Retroperitoneal Tumors");
divider(s, 0.82);
const mriData = [
["T1W", "Fat: hyperintense; hemorrhage: hyperintense; muscle-isointense soft tissue"],
["T2W", "Myxoid tumors: very bright; cysts: bright; fibrous tissue: dark"],
["Gd-enhancement", "Heterogeneous in sarcomas; vascular tumors: avid; necrotic areas: peripheral"],
["DWI", "Restricted diffusion in high-grade malignant lesions"],
["Chemical shift", "India-ink artifact confirms lipid content in WDLPS"],
["MRI vs CT", "Better soft-tissue contrast; superior for vascular invasion, nerve involvement"],
["Indication", "Cases where CT inconclusive; pre-op vascular assessment; myxoid tumors"],
];
mriData.forEach(([seq, desc], i) => {
const y = 0.98 + i * 0.57;
s.addShape(pres.ShapeType.rect, { x: 0.3, y, w: 1.5, h: 0.46, fill: { color: "2E5090" } });
s.addText(seq, { x: 0.3, y, w: 1.5, h: 0.46, fontSize: 11, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri" });
s.addShape(pres.ShapeType.rect, { x: 1.8, y, w: 5.0, h: 0.46, fill: { color: i % 2 === 0 ? C.lightBg : "E8F4FD" }, line: { color: C.lightGray, width: 0.3 } });
s.addText(desc, { x: 1.85, y, w: 4.9, h: 0.46, fontSize: 10.5, color: C.text, valign: "middle", fontFace: "Calibri" });
});
const img = getImg(4);
if (img) {
s.addImage({ data: img, x: 6.9, y: 0.95, w: 2.8, h: 4.0 });
s.addText("MRI — Retroperitoneal sarcoma", { x: 6.9, y: 5.0, w: 2.8, h: 0.28, fontSize: 8.5, color: C.subtext, align: "center", italic: true, fontFace: "Calibri" });
}
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 16 — Biopsy & Histopathology
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = midSlide();
accentBar(s, C.accentGold);
sectionTitle(s, "Biopsy & Histopathology");
divider(s, 0.82);
// biopsy
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 0.95, w: 4.5, h: 2.1, fill: { color: C.lightBg }, rectRadius: 0.1, line: { color: C.accentGold, width: 1 } });
s.addText("Biopsy Considerations", { x: 0.5, y: 1.0, w: 4.1, h: 0.38, fontSize: 13, bold: true, color: C.accentGold, fontFace: "Calibri" });
const bx = [
"CT-guided core needle biopsy — standard approach",
"Retroperitoneal route preferred (avoids peritoneal contamination)",
"Multiple cores needed for heterogeneous tumors",
"Biopsy NOT always required before resection if imaging is classic",
"Mandatory for: unresectable tumors, neoadjuvant therapy, lymphoma",
];
bx.forEach((b, i) => {
s.addShape(pres.ShapeType.ellipse, { x: 0.45, y: 1.5 + i * 0.33, w: 0.12, h: 0.12, fill: { color: C.accentGold } });
s.addText(b, { x: 0.62, y: 1.47 + i * 0.33, w: 4.1, h: 0.3, fontSize: 10.5, color: C.text, fontFace: "Calibri" });
});
// histopathology
s.addShape(pres.ShapeType.roundRect, { x: 5.0, y: 0.95, w: 4.7, h: 2.1, fill: { color: C.lightBg }, rectRadius: 0.1, line: { color: C.accent, width: 1 } });
s.addText("Histopathology & IHC", { x: 5.2, y: 1.0, w: 4.3, h: 0.38, fontSize: 13, bold: true, color: C.accent, fontFace: "Calibri" });
const ihc = [
["Liposarcoma", "MDM2+, CDK4+, S-100±"],
["Leiomyosarcoma", "SMA+, Desmin+, h-caldesmon+"],
["MPNST", "S-100+, SOX10+"],
["Lymphoma", "CD20+, CD3 (B vs T cell)"],
["GCT", "PLAP+, OCT4+, AFP (YST)"],
];
ihc.forEach(([tumor, mark], i) => {
const y = 1.52 + i * 0.33;
s.addText(tumor + ":", { x: 5.15, y, w: 1.7, h: 0.3, fontSize: 10.5, bold: true, color: C.darkBlue, fontFace: "Calibri" });
s.addText(mark, { x: 6.9, y, w: 2.7, h: 0.3, fontSize: 10.5, color: C.text, fontFace: "Calibri" });
});
// FNCLCC grading
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 3.12, w: 9.4, h: 1.94, fill: { color: "FFF8F0" }, rectRadius: 0.1, line: { color: C.red, width: 1 } });
s.addText("FNCLCC Grading (Soft Tissue Sarcoma)", { x: 0.5, y: 3.17, w: 9.0, h: 0.38, fontSize: 13, bold: true, color: C.red, fontFace: "Calibri" });
const grades = [
{ g: "Grade 1", d: "Score 2–3 | Differentiation 1 + Mitotic 1 + Necrosis 0 | Low-grade" },
{ g: "Grade 2", d: "Score 4–5 | Intermediate grade | significant mitoses ± necrosis" },
{ g: "Grade 3", d: "Score 6–8 | High-grade | undifferentiated; extensive necrosis" },
];
grades.forEach((g, i) => {
const bgc = i === 0 ? "E8F8EF" : i === 1 ? "FFF8E0" : "FDECEA";
const fc = i === 0 ? "1D7A4F" : i === 1 ? C.accentGold : C.red;
s.addShape(pres.ShapeType.rect, { x: 0.3 + i * 3.15, y: 3.6, w: 3.0, h: 1.22, fill: { color: bgc }, line: { color: fc, width: 0.8 } });
s.addText(g.g, { x: 0.35 + i * 3.15, y: 3.65, w: 2.9, h: 0.38, fontSize: 12, bold: true, color: fc, align: "center", fontFace: "Calibri" });
s.addText(g.d, { x: 0.35 + i * 3.15, y: 4.05, w: 2.9, h: 0.7, fontSize: 9.5, color: C.text, align: "center", fontFace: "Calibri" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 17 — Staging
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = lightSlide();
accentBar(s, C.accent);
sectionTitle(s, "Staging of Retroperitoneal Tumors");
divider(s, 0.82);
s.addText("AJCC 8th Edition — Soft Tissue Sarcoma (Retroperitoneal)", {
x: 0.3, y: 0.98, w: 9.4, h: 0.38, fontSize: 13, bold: true, color: C.darkBlue, fontFace: "Calibri"
});
const stageRows = [
["Stage", "T", "N", "M", "Grade", "5-yr OS"],
["IA", "T1 (≤5cm)", "N0", "M0", "G1–2", "~90%"],
["IB", "T2/T3/T4", "N0", "M0", "G1–2", "~60–70%"],
["II", "T1", "N0", "M0", "G3", "~55%"],
["IIIA", "T2", "N0", "M0", "G3", "~40%"],
["IIIB", "T3/T4 or any T", "N1", "M0", "G3/any", "~25–35%"],
["IV", "Any T", "Any N", "M1", "Any G", "~10–15%"],
];
stageRows.forEach((row, ri) => {
const bg = ri === 0 ? C.darkBlue : ri % 2 === 0 ? C.lightBg : C.white;
const fc = ri === 0 ? C.white : C.text;
const widths = [1.1, 1.8, 0.9, 0.9, 1.2, 1.5];
let xPos = 0.3;
row.forEach((cell, ci) => {
s.addShape(pres.ShapeType.rect, { x: xPos, y: 1.45 + ri * 0.52, w: widths[ci], h: 0.5, fill: { color: bg }, line: { color: C.lightGray, width: 0.5 } });
s.addText(cell, { x: xPos + 0.05, y: 1.45 + ri * 0.52, w: widths[ci] - 0.1, h: 0.5, fontSize: ri === 0 ? 11 : 10.5, color: fc, align: "center", valign: "middle", fontFace: "Calibri", bold: ri === 0 });
xPos += widths[ci];
});
});
s.addText("T1 ≤5cm, T2 5–10cm, T3 10–15cm, T4 >15cm | G1=low, G2=intermediate, G3=high grade (FNCLCC)", {
x: 0.3, y: 5.12, w: 9.4, h: 0.28, fontSize: 9.5, color: C.subtext, fontFace: "Calibri", italic: true,
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 18 — Surgical Management + image
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = midSlide();
accentBar(s, C.red);
sectionTitle(s, "Surgical Management");
divider(s, 0.82);
// left
const surgPoints = [
{ title: "Goal", desc: "R0 resection (negative margins) — only potentially curative treatment" },
{ title: "Extended Resection", desc: "En-bloc resection of adjacent organs if involved (kidney, bowel, psoas); improves local control" },
{ title: "Vascular Reconstruction", desc: "IVC resection ± PTFE graft reconstruction for LMS; renal artery bypass if needed" },
{ title: "RPLND", desc: "Retroperitoneal lymph node dissection — mainstay for testicular GCT; modified template" },
{ title: "Nerve-Sparing", desc: "Postganglionic sympathetic nerve preservation to maintain antegrade ejaculation in RPLND" },
{ title: "Laparoscopic/Robotic", desc: "Minimally invasive RPLND for low-volume GCT metastases; increasingly adopted" },
];
surgPoints.forEach((sp, i) => {
const y = 0.98 + i * 0.72;
s.addShape(pres.ShapeType.rect, { x: 0.3, y, w: 1.5, h: 0.55, fill: { color: C.red } });
s.addText(sp.title, { x: 0.3, y, w: 1.5, h: 0.55, fontSize: 10, bold: true, color: C.white, align: "center", valign: "middle", fontFace: "Calibri" });
s.addText(sp.desc, { x: 1.9, y: y + 0.05, w: 5.4, h: 0.5, fontSize: 11, color: C.text, fontFace: "Calibri" });
});
const img = getImg(5);
if (img) {
s.addImage({ data: img, x: 7.3, y: 0.95, w: 2.5, h: 4.0 });
s.addText("RPLND Approach", { x: 7.3, y: 5.0, w: 2.5, h: 0.28, fontSize: 8.5, color: C.subtext, align: "center", italic: true, fontFace: "Calibri" });
} else {
s.addShape(pres.ShapeType.roundRect, { x: 7.3, y: 0.95, w: 2.5, h: 4.0, fill: { color: "E8F4FD" }, rectRadius: 0.1 });
s.addText("Retroperitoneal\nSurgery", { x: 7.3, y: 2.7, w: 2.5, h: 0.6, fontSize: 12, color: C.subtext, align: "center", fontFace: "Calibri" });
}
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 19 — Adjuvant Therapy & Prognosis
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = lightSlide();
accentBar(s, "2E5090");
sectionTitle(s, "Adjuvant Therapy, Prognosis & Recurrence");
divider(s, 0.82);
// Therapy
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 0.98, w: 4.5, h: 2.5, fill: { color: C.lightBg }, rectRadius: 0.1, line: { color: "2E5090", width: 1 } });
s.addText("Adjuvant & Neoadjuvant Therapy", { x: 0.45, y: 1.03, w: 4.2, h: 0.4, fontSize: 13, bold: true, color: "2E5090", fontFace: "Calibri" });
const therapy = [
"Radiotherapy: pre-op EBRT for WDLPS/DDLPS reduces local recurrence (STRASS trial)",
"Chemotherapy: doxorubicin + ifosfamide for high-grade sarcoma",
"GCT: BEP (bleomycin, etoposide, cisplatin) — highly effective",
"Lymphoma: R-CHOP ± consolidation radiotherapy",
"IORT (intraoperative RT) available at specialized centers",
];
therapy.forEach((t, i) => {
s.addShape(pres.ShapeType.ellipse, { x: 0.42, y: 1.55 + i * 0.38, w: 0.12, h: 0.12, fill: { color: "2E5090" } });
s.addText(t, { x: 0.6, y: 1.52 + i * 0.38, w: 4.1, h: 0.35, fontSize: 10.5, color: C.text, fontFace: "Calibri" });
});
// Prognosis
s.addShape(pres.ShapeType.roundRect, { x: 5.0, y: 0.98, w: 4.7, h: 2.5, fill: { color: "FFF8F0" }, rectRadius: 0.1, line: { color: C.accentGold, width: 1 } });
s.addText("Prognostic Factors & Outcomes", { x: 5.15, y: 1.03, w: 4.35, h: 0.4, fontSize: 13, bold: true, color: C.accentGold, fontFace: "Calibri" });
const prog = [
"Grade (FNCLCC) — most important predictor of metastasis",
"R0 resection status — primary predictor of local control",
"Histologic subtype: WDLPS best, pleomorphic worst",
"Tumor size >10 cm — poor prognosis",
"Local recurrence rate: 50–90% at 10 yrs for sarcomas",
];
prog.forEach((p, i) => {
s.addShape(pres.ShapeType.ellipse, { x: 5.1, y: 1.55 + i * 0.38, w: 0.12, h: 0.12, fill: { color: C.accentGold } });
s.addText(p, { x: 5.28, y: 1.52 + i * 0.38, w: 4.3, h: 0.35, fontSize: 10.5, color: C.text, fontFace: "Calibri" });
});
// Recurrence table
s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 3.55, w: 9.4, h: 1.6, fill: { color: C.lightBg }, rectRadius: 0.1, line: { color: C.lightGray, width: 0.8 } });
s.addText("5-Year Overall Survival by Histotype", { x: 0.5, y: 3.6, w: 9.0, h: 0.38, fontSize: 13, bold: true, color: C.darkBlue, fontFace: "Calibri" });
const osData = [["WDLPS", "~83%"], ["DDLPS", "~43%"], ["LMS", "~38%"], ["MFH", "~35%"], ["MPNST", "~23%"], ["Seminoma GCT", ">95%"]];
osData.forEach(([type, os], i) => {
const x = 0.35 + i * 1.58;
s.addShape(pres.ShapeType.roundRect, { x, y: 4.02, w: 1.48, h: 0.95, fill: { color: i < 2 ? "1D7A4F" : i < 4 ? C.accentGold : i < 5 ? C.red : "2E5090" }, rectRadius: 0.08 });
s.addText(type, { x, y: 4.07, w: 1.48, h: 0.38, fontSize: 9.5, color: C.white, align: "center", fontFace: "Calibri" });
s.addText(os, { x, y: 4.5, w: 1.48, h: 0.38, fontSize: 13, bold: true, color: C.white, align: "center", fontFace: "Calibri" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.3, w: 10, h: 0.32, fill: { color: C.midBlue } });
s.addText("Retroperitoneal Tumors | Medical Education 2026", { x: 0.3, y: 5.3, w: 9.4, h: 0.32, fontSize: 9, color: "A8C8E8", fontFace: "Calibri" });
}
// ═══════════════════════════════════════════════════════════════════════════════
// SLIDE 20 — Summary & Key Points
// ═══════════════════════════════════════════════════════════════════════════════
{
const s = darkSlide();
s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 0.15, fill: { color: C.accentGold } });
s.addText("SUMMARY & KEY TAKEAWAYS", {
x: 0.4, y: 0.25, w: 9.2, h: 0.65,
fontSize: 26, bold: true, color: C.white, fontFace: "Calibri", align: "center",
});
s.addShape(pres.ShapeType.line, { x: 0.4, y: 0.96, w: 9.2, h: 0, line: { color: C.accentGold, width: 1.5 } });
const keys = [
["01", "PRTs are rare but heterogeneous — histological subtyping guides treatment and prognosis"],
["02", "Liposarcoma & Leiomyosarcoma account for ~70% of malignant retroperitoneal sarcomas"],
["03", "Neurogenic tumors span from benign schwannoma to malignant MPNST; NF-1 is a key risk factor"],
["04", "GCTs are treated with BEP chemotherapy ± RPLND; excellent cure rates in seminoma"],
["05", "CT is first-line imaging; MRI adds value for soft-tissue characterization & vascular invasion"],
["06", "FNCLCC grade is the strongest prognostic factor; R0 resection is the treatment goal"],
["07", "Local recurrence is common in RPS (~50–90% at 10 yrs); surveillance with CT q3–6 months"],
["08", "Multidisciplinary team (surgery, oncology, radiology, pathology) is essential at expert centers"],
];
keys.forEach((kp, i) => {
const col = i % 2;
const row = Math.floor(i / 2);
const x = 0.3 + col * 4.9;
const y = 1.1 + row * 1.05;
s.addShape(pres.ShapeType.roundRect, { x, y, w: 4.6, h: 0.9, fill: { color: "122550" }, rectRadius: 0.08, line: { color: "2E4F7A", width: 0.5 } });
s.addShape(pres.ShapeType.rect, { x, y, w: 0.42, h: 0.9, fill: { color: C.accentGold } });
s.addText(kp[0], { x, y, w: 0.42, h: 0.9, fontSize: 14, bold: true, color: C.darkBlue, align: "center", valign: "middle", fontFace: "Calibri" });
s.addText(kp[1], { x: x + 0.48, y: y + 0.05, w: 4.05, h: 0.8, fontSize: 10.5, color: "CCE0F5", fontFace: "Calibri", valign: "middle" });
});
s.addShape(pres.ShapeType.rect, { x: 0, y: 5.35, w: 10, h: 0.27, fill: { color: "0A1A30" } });
s.addText("Retroperitoneal Tumors — Medical Education Presentation 2026 | All data for educational purposes only", {
x: 0.3, y: 5.35, w: 9.4, h: 0.27, fontSize: 8.5, color: "4A7FB5", align: "center", fontFace: "Calibri",
});
}
// ═══════════════════════════════════════════════════════════════════════════════
// SAVE
// ═══════════════════════════════════════════════════════════════════════════════
pres.writeFile({ fileName: "/home/daytona/workspace/retroperitoneal-ppt/Retroperitoneal_Tumors.pptx" })
.then(() => console.log("DONE: /home/daytona/workspace/retroperitoneal-ppt/Retroperitoneal_Tumors.pptx"))
.catch(err => { console.error("ERROR:", err); process.exit(1); });
cd /home/daytona/workspace/retroperitoneal-ppt && node build.js 2>&1
ls -lh /home/daytona/workspace/retroperitoneal-ppt/Retroperitoneal_Tumors.pptx
Retroperitoneal Tumors
Presentation · PPTX
| # | Slide Title |
|---|---|
| 1 | Title Slide — Bold two-panel design |
| 2 | Presentation Outline — All 20 topics listed with numbered badges |
| 3 | Anatomy of the Retroperitoneum — Boundaries, compartments, contents |
| 4 | Definition & Incidence — Epidemiology with stat boxes (80% malignant, 45% liposarcoma, etc.) |
| 5 | Classification — 4-quadrant grid: Mesenchymal, Neurogenic, Germ Cell, Lymphoid |
| 6 | Benign Tumors — 6 card layout: Lipoma, Schwannoma, Neurofibroma, Ganglioneuroma, Paraganglioma, Teratoma |
| 7 | Malignant Tumors / Sarcomas Overview — Key facts + CT image panel |
| 8 | Liposarcoma — All 4 subtypes with grade, %, molecular markers (MDM2, CDK4, FUS-DDIT3) |
| 9 | Leiomyosarcoma — IVC types I/II/III, IHC, treatment |
| 10 | Neurogenic Tumors — 6-card grid with benign/malignant color coding |
| 11 | Germ Cell Tumors — Tumor marker table (AFP, β-hCG by subtype) |
| 12 | Lymphomas & Secondary Tumors — DLBCL features + metastatic patterns |
| 13 | Clinical Presentation — 6 symptom cards (mass, pain, GI, urology, vascular, systemic) |
| 14 | Diagnosis & CT Imaging — Multiphasic CT features, HU values |
| 15 | MRI Features — T1/T2/DWI/Chemical shift comparison table |
| 16 | Biopsy & Histopathology — IHC markers + FNCLCC grading system |
| 17 | Staging — AJCC 8th edition table with 5-yr OS per stage |
| 18 | Surgical Management — RPLND, en-bloc resection, IVC reconstruction, nerve-sparing |
| 19 | Adjuvant Therapy, Prognosis & Recurrence — BEP, STRASS trial, 5-yr OS comparison by histotype |
| 20 | Summary & Key Takeaways — 8 golden key points on dark background |
Note on images: The sandbox has restricted internet access, so external medical images (Radiopaedia CT/MRI scans) could not be embedded at build time. The image panels are styled as labeled placeholders - you can easily drop in any CT/MRI images from Radiopaedia or MDPI into those areas after opening the file in PowerPoint.