convert the above abstract into presentation for case discussion in elaborate
cd /home/daytona/workspace && python -m markitdown "/home/daytona/workspace/attachments/1a9c52e3-0998-4299-8e55-87e7d34e00e0/TANCON2026_Abstract_MPAN_EyeOfTheTiger_Merged.docx" 2>&1
cd /home/daytona/workspace && python -m markitdown "/home/daytona/workspace/attachments/1a9c52e3-0998-4299-8e55-87e7d34e00e0/iglon (1).pptx" 2>&1
cd /home/daytona/workspace && pip install markitdown -q 2>&1 | tail -3
cd /home/daytona/workspace && python -m markitdown "/home/daytona/workspace/attachments/1a9c52e3-0998-4299-8e55-87e7d34e00e0/TANCON2026_Abstract_MPAN_EyeOfTheTiger_Merged.docx" 2>&1
cd /home/daytona/workspace && python -m markitdown "/home/daytona/workspace/attachments/1a9c52e3-0998-4299-8e55-87e7d34e00e0/iglon (1).pptx" 2>&1
pip install markitdown[all] -q 2>&1 | tail -3
pip install "markitdown[all]" -q 2>&1 | tail -3 && pip install python-docx python-pptx -q 2>&1 | tail -3
python3 -c " from docx import Document doc = Document('/home/daytona/workspace/attachments/1a9c52e3-0998-4299-8e55-87e7d34e00e0/TANCON2026_Abstract_MPAN_EyeOfTheTiger_Merged.docx') for p in doc.paragraphs: if p.text.strip(): print(repr(p.style.name), '|', p.text[:200]) " 2>&1
python3 -c " from pptx import Presentation prs = Presentation('/home/daytona/workspace/attachments/1a9c52e3-0998-4299-8e55-87e7d34e00e0/iglon (1).pptx') for i, slide in enumerate(prs.slides): print(f'--- Slide {i+1} ---') for shape in slide.shapes: if hasattr(shape, 'text') and shape.text.strip(): print(shape.text[:300]) " 2>&1
python3 -c " from docx import Document doc = Document('/home/daytona/workspace/attachments/1a9c52e3-0998-4299-8e55-87e7d34e00e0/TANCON2026_Abstract_MPAN_EyeOfTheTiger_Merged.docx') for p in doc.paragraphs: if p.text.strip(): try: print(repr(p.style.name)[:30], '|', p.text[:250]) except: print('N/A |', p.text[:250]) " 2>&1
python3 -c " from docx import Document doc = Document('/home/daytona/workspace/attachments/1a9c52e3-0998-4299-8e55-87e7d34e00e0/TANCON2026_Abstract_MPAN_EyeOfTheTiger_Merged.docx') full_text = [] for p in doc.paragraphs: if p.text.strip(): full_text.append(p.text) print('\n'.join(full_text)) " 2>&1
mkdir -p /home/daytona/workspace/mpan-presentation && ls /home/daytona/workspace/mpan-presentation/
~/mpan-presentation/build.js
const pptxgen = require("pptxgenjs");
const pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.title = "Eye-of-the-Tiger Sign in MPAN — TANCON 2026 Case Discussion";
pres.author = "TANCON 2026";
// ─── COLOR PALETTE ───────────────────────────────────────────────
const C = {
navy: "0A1931", // dominant dark
teal: "1A6B72", // supporting
amber: "E8A020", // accent
gold: "F4C842", // highlight
light: "EDF4F5", // light bg
white: "FFFFFF",
red: "C0392B",
green: "1A7A4A",
purple: "5B2C6F",
gray: "7F8C8D",
lgray: "D5D8DC",
dkgray: "2C3E50",
};
// ─── HELPER: section header bar ─────────────────────────────────
function addHeader(slide, title, color) {
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 0, w: 10, h: 0.7,
fill: { color: color || C.navy }, line: { color: color || C.navy }
});
slide.addText(title, {
x: 0.2, y: 0, w: 9.6, h: 0.7,
fontSize: 22, bold: true, color: C.white,
valign: "middle", margin: 0
});
}
function addAccentBar(slide, color) {
slide.addShape(pres.shapes.RECTANGLE, {
x: 0, y: 5.3, w: 10, h: 0.325,
fill: { color: color || C.teal }, line: { color: color || C.teal }
});
}
// ─── SLIDE 1: TITLE ──────────────────────────────────────────────
{
const s = pres.addSlide();
// Full dark bg
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navy }, line: { color: C.navy } });
// Amber accent strip
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 4.2, w: 10, h: 0.18, fill: { color: C.amber }, line: { color: C.amber } });
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 4.4, w: 10, h: 0.06, fill: { color: C.gold }, line: { color: C.gold } });
s.addText("TANCON 2026", {
x: 0.5, y: 0.35, w: 9, h: 0.5, fontSize: 15, color: C.gold, bold: true,
charSpacing: 4, align: "center"
});
s.addText("14th Annual Conference of TNPA | August 28–30, 2026 | Hosur", {
x: 0.5, y: 0.82, w: 9, h: 0.38, fontSize: 12, color: C.lgray, align: "center", italic: true
});
s.addText("VIDEO PRESENTATION • CASE REPORT", {
x: 0.5, y: 1.25, w: 9, h: 0.36, fontSize: 12, color: C.amber, bold: true,
charSpacing: 2, align: "center"
});
// Main title
s.addText([
{ text: "Eye-of-the-Tiger Sign in ", options: { color: C.white } },
{ text: "MPAN", options: { color: C.gold, bold: true } },
{ text: "\nMasquerading as Hereditary Spastic Ataxia", options: { color: C.white } }
], {
x: 0.5, y: 1.7, w: 9, h: 1.5,
fontSize: 28, bold: true, align: "center", valign: "middle"
});
s.addText("A Genetically Confirmed Case of Compound Heterozygous C19orf12 Variants", {
x: 0.5, y: 3.25, w: 9, h: 0.6, fontSize: 15, color: C.lgray,
align: "center", italic: true
});
s.addShape(pres.shapes.RECTANGLE, { x: 2.5, y: 3.95, w: 5, h: 0.04, fill: { color: C.teal }, line: { color: C.teal } });
s.addText("Case Discussion — Prepared for TANCON 2026", {
x: 0.5, y: 4.6, w: 9, h: 0.4, fontSize: 12, color: C.lgray,
align: "center"
});
}
// ─── SLIDE 2: OUTLINE ─────────────────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Case Discussion — Overview", C.navy);
addAccentBar(s, C.teal);
const items = [
["1", "Patient Profile & Presentation"],
["2", "Clinical Examination Findings"],
["3", "Investigations & MRI Findings"],
["4", "Diagnosis & Confirmatory Testing"],
["5", "MPAN — Background & NBIA Classification"],
["6", "Pathomechanism of MPAN"],
["7", "Clinical Spectrum of MPAN"],
["8", "Eye-of-the-Tiger Sign — Radiology"],
["9", "Differential Diagnosis"],
["10","Management & Treatment"],
["11","Discussion & Key Teaching Points"],
["12","Conclusion & Take-Home Messages"],
];
const cols = [items.slice(0, 6), items.slice(6)];
cols.forEach((col, ci) => {
col.forEach(([num, label], ri) => {
const x = 0.4 + ci * 4.9;
const y = 0.9 + ri * 0.72;
s.addShape(pres.shapes.RECTANGLE, {
x, y: y - 0.02, w: 0.45, h: 0.42, fill: { color: C.amber }, line: { color: C.amber }
});
s.addText(num, { x, y: y - 0.02, w: 0.45, h: 0.42, fontSize: 13, bold: true, color: C.navy, align: "center", valign: "middle", margin: 0 });
s.addText(label, { x: x + 0.55, y: y - 0.04, w: 4.2, h: 0.5, fontSize: 13, color: C.navy, valign: "middle" });
});
});
}
// ─── SLIDE 3: PATIENT PROFILE ─────────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Patient Profile", C.navy);
addAccentBar(s, C.teal);
// Profile card
s.addShape(pres.shapes.RECTANGLE, {
x: 0.4, y: 0.85, w: 4.2, h: 3.5,
fill: { color: C.white }, line: { color: C.lgray },
shadow: { type: "outer", color: "000000", blur: 6, offset: 2, angle: 135, opacity: 0.12 }
});
s.addShape(pres.shapes.RECTANGLE, { x: 0.4, y: 0.85, w: 4.2, h: 0.45, fill: { color: C.teal }, line: { color: C.teal } });
s.addText("Demographics", { x: 0.5, y: 0.85, w: 4.0, h: 0.45, fontSize: 14, bold: true, color: C.white, valign: "middle", margin: 0 });
const demo = [
["Age", "29 years"],
["Sex", "Male"],
["Onset of symptoms", "Age 20 (dragging of leg)"],
["Duration", "~9 years progressive course"],
["Worsening", "Marked over last 1.5 years"],
["Key complaint", "Imbalance, falls, cognitive slowing"],
];
demo.forEach(([k, v], i) => {
const y = 1.38 + i * 0.49;
s.addText(k + ":", { x: 0.55, y, w: 1.8, h: 0.44, fontSize: 12, bold: true, color: C.dkgray, valign: "middle" });
s.addText(v, { x: 2.35, y, w: 2.1, h: 0.44, fontSize: 12, color: C.navy, valign: "middle" });
});
// Past history card
s.addShape(pres.shapes.RECTANGLE, {
x: 5.1, y: 0.85, w: 4.5, h: 3.5,
fill: { color: C.white }, line: { color: C.lgray },
shadow: { type: "outer", color: "000000", blur: 6, offset: 2, angle: 135, opacity: 0.12 }
});
s.addShape(pres.shapes.RECTANGLE, { x: 5.1, y: 0.85, w: 4.5, h: 0.45, fill: { color: C.purple }, line: { color: C.purple } });
s.addText("Background History", { x: 5.2, y: 0.85, w: 4.3, h: 0.45, fontSize: 14, bold: true, color: C.white, valign: "middle", margin: 0 });
const hist = [
"Depression since adolescence — on intermittent antidepressants",
"No family history of similar illness",
"No consanguinity documented",
"Decline in activities of daily living",
"Frequent falls — progressive over 1.5 years",
"Cognitive slowing noticed by family",
];
hist.forEach((t, i) => {
s.addText([{ text: "• ", options: { color: C.amber, bold: true } }, { text: t, options: { color: C.dkgray } }], {
x: 5.2, y: 1.38 + i * 0.49, w: 4.2, h: 0.46, fontSize: 11.5, valign: "middle"
});
});
}
// ─── SLIDE 4: CHIEF COMPLAINTS & HISTORY ──────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "History of Present Illness", C.teal);
addAccentBar(s, C.navy);
// Timeline visualization
const events = [
{ age: "Age 20", event: "Onset of leg dragging", color: C.teal },
{ age: "Progressive", event: "Slowly progressive imbalance\n& difficulty walking", color: C.teal },
{ age: "Last 1.5 yrs", event: "Marked worsening — frequent falls\ncognitive slowing & ADL decline", color: C.amber },
{ age: "Presentation", event: "Referred for specialist evaluation\nat age 29", color: C.red },
];
events.forEach((e, i) => {
const x = 0.3 + i * 2.4;
// Circle
s.addShape(pres.shapes.OVAL, { x: x + 0.5, y: 0.9, w: 0.7, h: 0.7, fill: { color: e.color }, line: { color: e.color } });
s.addText(String(i + 1), { x: x + 0.5, y: 0.9, w: 0.7, h: 0.7, fontSize: 16, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });
// Connector
if (i < events.length - 1) {
s.addShape(pres.shapes.RECTANGLE, { x: x + 1.22, y: 1.2, w: 1.15, h: 0.08, fill: { color: C.lgray }, line: { color: C.lgray } });
}
s.addText(e.age, { x: x + 0.3, y: 1.65, w: 1.1, h: 0.35, fontSize: 11, bold: true, color: e.color, align: "center" });
s.addShape(pres.shapes.RECTANGLE, { x: x + 0.1, y: 2.05, w: 1.8, h: 0.04, fill: { color: e.color }, line: { color: e.color } });
s.addText(e.event, { x: x + 0.05, y: 2.12, w: 2.0, h: 0.9, fontSize: 11, color: C.dkgray, align: "center", valign: "top" });
});
// Key negatives
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y: 3.3, w: 9.4, h: 1.6,
fill: { color: C.white }, line: { color: C.lgray },
shadow: { type: "outer", color: "000000", blur: 4, offset: 2, angle: 135, opacity: 0.1 }
});
s.addText("Key Negative History", { x: 0.45, y: 3.35, w: 4, h: 0.35, fontSize: 13, bold: true, color: C.navy });
const negs = [
"No fever, headache, or meningeal signs",
"No seizures or loss of consciousness",
"No family history of neurological disease",
"No exposure to toxins or drugs",
"No sensory loss (pain & vibration preserved)",
"SCA panel — unrevealing",
];
const ncol = [negs.slice(0, 3), negs.slice(3)];
ncol.forEach((col, ci) => {
col.forEach((t, ri) => {
s.addText([{ text: "✗ ", options: { color: C.red, bold: true } }, { text: t, options: { color: C.dkgray } }], {
x: 0.4 + ci * 4.8, y: 3.7 + ri * 0.38, w: 4.5, h: 0.36, fontSize: 11.5
});
});
});
}
// ─── SLIDE 5: CLINICAL EXAMINATION ────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Clinical Examination Findings", C.purple);
addAccentBar(s, C.navy);
const boxes = [
{
title: "Higher Functions", color: C.purple, x: 0.3, y: 0.85, w: 3.0, h: 2.25,
items: ["Mild cognitive slowing", "Apraxia of eyelid opening", "Slight oculomotor apraxia"]
},
{
title: "Motor System", color: C.teal, x: 3.55, y: 0.85, w: 3.0, h: 2.25,
items: ["Normal tone & power", "Brisk deep tendon reflexes", "Bilateral extensor plantars", "Cerebellar ataxia — FNF incoordination"]
},
{
title: "Gait", color: C.amber, x: 6.8, y: 0.85, w: 2.9, h: 2.25,
items: ["Spastic-ataxic gait pattern", "Frequent falls", "Imbalance — progressive"]
},
];
boxes.forEach(b => {
s.addShape(pres.shapes.RECTANGLE, {
x: b.x, y: b.y, w: b.w, h: b.h,
fill: { color: C.white }, line: { color: b.color },
shadow: { type: "outer", color: "000000", blur: 6, offset: 2, angle: 135, opacity: 0.13 }
});
s.addShape(pres.shapes.RECTANGLE, { x: b.x, y: b.y, w: b.w, h: 0.42, fill: { color: b.color }, line: { color: b.color } });
s.addText(b.title, { x: b.x + 0.1, y: b.y, w: b.w - 0.15, h: 0.42, fontSize: 13, bold: true, color: C.white, valign: "middle", margin: 0 });
b.items.forEach((item, ii) => {
s.addText([{ text: "• ", options: { color: b.color, bold: true } }, { text: item, options: { color: C.dkgray } }], {
x: b.x + 0.12, y: b.y + 0.5 + ii * 0.42, w: b.w - 0.2, h: 0.42, fontSize: 11.5, valign: "middle"
});
});
});
// Key positives summary
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y: 3.3, w: 9.4, h: 1.6,
fill: { color: C.navy }, line: { color: C.navy }
});
s.addText("Sensory & Reflexes", { x: 0.5, y: 3.36, w: 3, h: 0.35, fontSize: 13, bold: true, color: C.gold });
const srows = [
["Pain sensation", "Preserved"],
["Vibration sensation", "Preserved"],
["Deep tendon reflexes", "Brisk bilaterally"],
["Plantar response", "Extensor bilateral — upper motor neuron sign"],
["Cerebellar signs", "Finger-nose incoordination, ataxic gait"],
["Oculomotor", "Mild oculomotor & eyelid-opening apraxia"],
];
const scols = [srows.slice(0, 3), srows.slice(3)];
scols.forEach((col, ci) => {
col.forEach(([k, v], ri) => {
s.addText(k + ":", { x: 0.45 + ci * 4.8, y: 3.74 + ri * 0.37, w: 2.3, h: 0.35, fontSize: 11, bold: true, color: C.lgray });
s.addText(v, { x: 2.75 + ci * 4.8, y: 3.74 + ri * 0.37, w: 2.3, h: 0.35, fontSize: 11, color: C.gold });
});
});
}
// ─── SLIDE 6: INVESTIGATIONS ────────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Investigations", C.teal);
addAccentBar(s, C.navy);
// Table
const rows = [
["Investigation", "Finding", "Significance"],
["MRI Brain", "Eye-of-the-tiger sign; periventricular WM changes;\nGP & SN blooming on SWI", "Initially suggested PKAN"],
["SCA Gene Panel", "Unrevealing / Negative", "Excluded common spinocerebellar ataxias"],
["Whole Mitochondrial\nGenome Sequencing", "Unrevealing / Negative", "Excluded primary mitochondrial disease"],
["Whole-Exome Sequencing\n(Exome Max)", "Compound heterozygous C19orf12 variants confirmed", "Diagnostic — confirmed MPAN"],
["Routine bloods, CSF", "Not specified as abnormal", "Baseline workup"],
];
const colWidths = [2.5, 4.5, 2.6];
const colX = [0.3, 2.82, 7.35];
const headerH = 0.5;
const rowH = 0.68;
rows.forEach((row, ri) => {
const y = 0.85 + ri * rowH;
row.forEach((cell, ci) => {
const isHeader = ri === 0;
s.addShape(pres.shapes.RECTANGLE, {
x: colX[ci], y, w: colWidths[ci], h: rowH,
fill: { color: isHeader ? C.navy : ri % 2 === 0 ? C.white : "E8F4F5" },
line: { color: C.lgray }
});
s.addText(cell, {
x: colX[ci] + 0.08, y: y + 0.05, w: colWidths[ci] - 0.16, h: rowH - 0.1,
fontSize: isHeader ? 13 : 11,
bold: isHeader,
color: isHeader ? C.white : ci === 1 && ri === 4 ? C.green : C.dkgray,
valign: "middle"
});
});
});
}
// ─── SLIDE 7: MRI — EYE OF THE TIGER ──────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navy }, line: { color: C.navy } });
addAccentBar(s, C.amber);
s.addText("MRI Findings — Eye-of-the-Tiger Sign", {
x: 0.3, y: 0.1, w: 9.4, h: 0.65, fontSize: 22, bold: true, color: C.white, valign: "middle"
});
// Left: schematic description
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y: 0.85, w: 4.3, h: 4.1,
fill: { color: "0D2137" }, line: { color: C.teal }
});
const mri_points = [
{ label: "Eye-of-the-Tiger Sign", desc: "Central T2 hyperintensity within pallidal hypointensity on axial MRI — classically seen in PKAN; rare in MPAN" },
{ label: "Globus Pallidus", desc: "T2/SWI hypointensity — iron deposition (blooming on SWI)" },
{ label: "Substantia Nigra", desc: "Blooming signal on susceptibility-weighted imaging (SWI)" },
{ label: "White Matter Changes", desc: "Periventricular signal changes noted" },
{ label: "Clinical Implication", desc: "MRI alone CANNOT reliably distinguish MPAN from PKAN — molecular testing is essential" },
];
mri_points.forEach((p, i) => {
s.addText(p.label, { x: 0.45, y: 1.0 + i * 0.72, w: 3.9, h: 0.3, fontSize: 12, bold: true, color: C.gold });
s.addText(p.desc, { x: 0.45, y: 1.3 + i * 0.72, w: 3.9, h: 0.38, fontSize: 10.5, color: C.lgray });
});
// Right: comparison box
s.addShape(pres.shapes.RECTANGLE, {
x: 4.85, y: 0.85, w: 4.8, h: 4.1,
fill: { color: "0D2137" }, line: { color: C.amber }
});
s.addShape(pres.shapes.RECTANGLE, { x: 4.85, y: 0.85, w: 4.8, h: 0.42, fill: { color: C.amber }, line: { color: C.amber } });
s.addText("PKAN vs MPAN — MRI Comparison", { x: 4.95, y: 0.85, w: 4.6, h: 0.42, fontSize: 13, bold: true, color: C.navy, valign: "middle", margin: 0 });
const compare = [
["Feature", "PKAN", "MPAN"],
["Gene", "PANK2", "C19orf12"],
["Eye-of-Tiger", "Classic / Defining", "Rare — reported in <10 cases"],
["GP signal", "Hypointense + central T2 bright", "Hypointense (streak/linear)"],
["SN involvement", "Less prominent", "Common on SWI"],
["WM changes", "Absent typically", "Can be present"],
["Onset age", "Childhood / adolescence", "Adolescence / young adult"],
["Ataxia", "Less prominent", "Can dominate phenotype (rare)"],
];
compare.forEach((row, ri) => {
const y = 1.35 + ri * 0.43;
const isH = ri === 0;
[row[0], row[1], row[2]].forEach((cell, ci) => {
const x = [4.9, 6.58, 8.0][ci];
const w = [1.65, 1.4, 1.6][ci];
s.addText(cell, {
x, y, w, h: 0.42,
fontSize: isH ? 11.5 : 10.5,
bold: isH,
color: isH ? C.navy : ci === 2 && ri === 2 ? C.amber : C.lgray,
valign: "middle",
fill: isH ? undefined : undefined
});
});
if (!isH) {
s.addShape(pres.shapes.RECTANGLE, { x: 4.9, y: y + 0.41, w: 4.65, h: 0.01, fill: { color: C.teal }, line: { color: C.teal } });
}
});
}
// ─── SLIDE 8: GENETIC FINDINGS ────────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Genetic Diagnosis — Whole-Exome Sequencing", C.navy);
addAccentBar(s, C.amber);
// Gene box
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y: 0.85, w: 9.4, h: 0.95,
fill: { color: C.navy }, line: { color: C.navy }
});
s.addText([
{ text: "Gene: ", options: { color: C.gold, bold: true } },
{ text: "C19orf12 ", options: { color: C.white } },
{ text: " | ", options: { color: C.amber } },
{ text: "Disease: ", options: { color: C.gold, bold: true } },
{ text: "MPAN (Mitochondrial Membrane Protein-Associated Neurodegeneration) ", options: { color: C.white } },
{ text: " | ", options: { color: C.amber } },
{ text: "Inheritance: ", options: { color: C.gold, bold: true } },
{ text: "Autosomal Recessive", options: { color: C.white } },
], { x: 0.45, y: 0.9, w: 9.0, h: 0.8, fontSize: 13, valign: "middle" });
// Variant cards
const variants = [
{
title: "Variant 1",
var: "c.215C>A",
prot: "p.Pro72Gln",
class: "Likely Pathogenic",
classColor: C.amber,
details: ["Exon variant in C19orf12", "Proline → Glutamine substitution at codon 72", "Affects mitochondrial membrane protein function", "Reported in MPAN literature"],
},
{
title: "Variant 2",
var: "c.46T>C",
prot: "p.Ser16Pro",
class: "Variant of Uncertain Significance (VUS)",
classColor: C.teal,
details: ["Serine → Proline substitution at codon 16", "Near N-terminus of protein", "In compound heterozygosity with Variant 1", "Clinical significance supported by phenotype"],
},
];
variants.forEach((v, i) => {
const x = 0.3 + i * 4.9;
s.addShape(pres.shapes.RECTANGLE, {
x, y: 1.95, w: 4.55, h: 3.1,
fill: { color: C.white }, line: { color: v.classColor },
shadow: { type: "outer", color: "000000", blur: 6, offset: 2, angle: 135, opacity: 0.12 }
});
s.addShape(pres.shapes.RECTANGLE, { x, y: 1.95, w: 4.55, h: 0.42, fill: { color: v.classColor }, line: { color: v.classColor } });
s.addText(v.title, { x: x + 0.1, y: 1.95, w: 4.3, h: 0.42, fontSize: 14, bold: true, color: C.white, valign: "middle", margin: 0 });
s.addText(v.var + " → " + v.prot, { x: x + 0.15, y: 2.42, w: 4.2, h: 0.45, fontSize: 15, bold: true, color: C.navy });
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: x + 0.15, y: 2.88, w: 4.1, h: 0.36,
fill: { color: v.classColor }, line: { color: v.classColor }, rectRadius: 0.08
});
s.addText(v.class, { x: x + 0.15, y: 2.88, w: 4.1, h: 0.36, fontSize: 11, bold: true, color: C.white, align: "center", valign: "middle", margin: 0 });
v.details.forEach((d, di) => {
s.addText([{ text: "• ", options: { color: v.classColor, bold: true } }, { text: d, options: { color: C.dkgray } }], {
x: x + 0.15, y: 3.3 + di * 0.38, w: 4.2, h: 0.36, fontSize: 11
});
});
});
}
// ─── SLIDE 9: NBIA CLASSIFICATION ─────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "NBIA — Classification & MPAN in Context", C.dkgray);
addAccentBar(s, C.amber);
// NBIA types table
s.addText("Neurodegeneration with Brain Iron Accumulation (NBIA) — Major Subtypes", {
x: 0.3, y: 0.8, w: 9.4, h: 0.38, fontSize: 13, bold: true, color: C.navy
});
const nbia = [
["Subtype", "Gene", "Key Feature", "Eye-of-Tiger"],
["PKAN", "PANK2", "Childhood onset, classic EoT sign", "YES (classic)"],
["MPAN ★", "C19orf12", "Parkinsonism, spasticity, optic atrophy", "RARE"],
["BPAN", "WDR45", "X-linked, T1 halo + SN/GP hypointensity", "No"],
["CoPAN", "COASY", "Pantothenate kinase-like", "No"],
["INAD/NBIA1", "PLA2G6", "Infantile onset, cerebellar", "No"],
["FA2H-MPAN", "FA2H", "Spastic paraplegia, cerebellar", "No"],
["KFO", "FTL", "Ferritin light chain, dementia", "No"],
];
const ncolW = [1.6, 1.4, 4.3, 1.7];
const ncolX = [0.3, 1.92, 3.35, 7.68];
nbia.forEach((row, ri) => {
const y = 1.25 + ri * 0.5;
row.forEach((cell, ci) => {
const isH = ri === 0;
const isMPAN = ri === 2;
s.addShape(pres.shapes.RECTANGLE, {
x: ncolX[ci], y, w: ncolW[ci], h: 0.48,
fill: { color: isH ? C.navy : isMPAN ? "#E8F4FF" : ri % 2 === 0 ? C.white : "F2F2F2" },
line: { color: C.lgray }
});
s.addText(cell, {
x: ncolX[ci] + 0.06, y: y + 0.04, w: ncolW[ci] - 0.12, h: 0.42,
fontSize: isH ? 12 : 11,
bold: isH || isMPAN,
color: isH ? C.white : isMPAN ? C.navy : C.dkgray,
valign: "middle"
});
});
});
s.addText("★ = This case", { x: 0.35, y: 5.15, w: 3, h: 0.28, fontSize: 10, italic: true, color: C.gray });
}
// ─── SLIDE 10: PATHOGENESIS ───────────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Pathogenesis of MPAN", C.teal);
addAccentBar(s, C.navy);
const steps = [
{ icon: "C19orf12\nMutation", color: C.navy, desc: "Biallelic loss-of-function variants in C19orf12\n(mitochondria-associated ER membrane)" },
{ icon: "Mito-\ncondrial\nDysfunction", color: C.teal, desc: "Impaired coenzyme A biosynthesis\nMitochondrial membrane integrity disrupted" },
{ icon: "Iron\nDysregulation", color: C.amber, desc: "Abnormal iron metabolism in globus pallidus\nand substantia nigra — oxidative stress" },
{ icon: "Neuro-\ndegeneration", color: C.red, desc: "Progressive neuronal loss: corticospinal,\ncerebellar, visual, & dopaminergic pathways" },
];
steps.forEach((step, i) => {
const x = 0.3 + i * 2.4;
s.addShape(pres.shapes.OVAL, {
x, y: 0.88, w: 2.0, h: 1.2,
fill: { color: step.color }, line: { color: step.color }
});
s.addText(step.icon, { x: x + 0.05, y: 0.9, w: 1.9, h: 1.15, fontSize: 12, bold: true, color: C.white, align: "center", valign: "middle" });
if (i < steps.length - 1) {
s.addShape(pres.shapes.RECTANGLE, { x: x + 2.05, y: 1.43, w: 0.35, h: 0.1, fill: { color: C.lgray }, line: { color: C.lgray } });
s.addText("→", { x: x + 2.05, y: 1.3, w: 0.35, h: 0.38, fontSize: 20, color: C.amber, align: "center", bold: true });
}
s.addText(step.desc, { x: x - 0.05, y: 2.12, w: 2.2, h: 1.05, fontSize: 10.5, color: C.dkgray, align: "center" });
});
// C19orf12 function box
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y: 3.35, w: 9.4, h: 1.7,
fill: { color: C.white }, line: { color: C.teal },
shadow: { type: "outer", color: "000000", blur: 5, offset: 2, angle: 135, opacity: 0.1 }
});
s.addText("C19orf12 — Key Facts", { x: 0.5, y: 3.4, w: 4, h: 0.4, fontSize: 13, bold: true, color: C.teal });
const facts = [
"Located on chromosome 19q12; encodes a mitochondria-associated ER membrane protein",
"Involved in coenzyme A biosynthesis — links lipid metabolism & iron handling",
"Expressed in substantia nigra, globus pallidus, and cerebellum — explains phenotype",
"Over 40 pathogenic variants described; compound heterozygous (like this case) accounts for autosomal recessive inheritance",
"Eye-of-the-tiger sign in MPAN: may reflect different iron deposition kinetics vs. PKAN",
];
facts.forEach((f, i) => {
s.addText([{ text: "▸ ", options: { color: C.teal, bold: true } }, { text: f, options: { color: C.dkgray } }], {
x: 0.45, y: 3.78 + i * 0.25, w: 9.1, h: 0.26, fontSize: 10.5
});
});
}
// ─── SLIDE 11: CLINICAL SPECTRUM ─────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Clinical Spectrum of MPAN", C.purple);
addAccentBar(s, C.teal);
const features = [
{ title: "Parkinsonism", items: ["Bradykinesia, rigidity", "Tremor less prominent", "Levodopa may have modest benefit"], color: C.navy, x: 0.3, y: 0.85 },
{ title: "Spasticity", items: ["Hyperreflexia", "Extensor plantars", "Spastic gait"], color: C.teal, x: 3.65, y: 0.85 },
{ title: "Optic Atrophy", items: ["Visual field defects", "Pallor on fundoscopy", "May be subclinical"], color: C.purple, x: 7.0, y: 0.85 },
{ title: "Cognitive Decline", items: ["Frontal dysexecutive", "Behavioral changes", "Depression — early feature"], color: C.amber, x: 0.3, y: 2.85 },
{ title: "Ataxia (Rare ★)", items: ["Cerebellar incoordination", "Spastic-ataxic gait", "Oculomotor apraxia"], color: C.red, x: 3.65, y: 2.85 },
{ title: "Dysarthria / Dysphagia", items: ["Bulbar involvement", "Progressive dysarthria", "Late feature"], color: C.green, x: 7.0, y: 2.85 },
];
features.forEach(f => {
s.addShape(pres.shapes.RECTANGLE, {
x: f.x, y: f.y, w: 2.95, h: 1.82,
fill: { color: C.white }, line: { color: f.color },
shadow: { type: "outer", color: "000000", blur: 4, offset: 1, angle: 135, opacity: 0.1 }
});
s.addShape(pres.shapes.RECTANGLE, { x: f.x, y: f.y, w: 2.95, h: 0.4, fill: { color: f.color }, line: { color: f.color } });
s.addText(f.title + (f.title.includes("★") ? "" : ""), {
x: f.x + 0.1, y: f.y, w: 2.75, h: 0.4, fontSize: 12, bold: true, color: C.white, valign: "middle", margin: 0
});
f.items.forEach((item, ii) => {
s.addText([{ text: "• ", options: { color: f.color, bold: true } }, { text: item, options: { color: C.dkgray } }], {
x: f.x + 0.1, y: f.y + 0.46 + ii * 0.42, w: 2.75, h: 0.4, fontSize: 11
});
});
});
s.addText("★ Ataxia-dominant phenotype (as in this case) is exceptionally rare and can mimic hereditary spastic ataxia (SPG43)", {
x: 0.3, y: 4.96, w: 9.4, h: 0.38, fontSize: 10.5, italic: true, color: C.red, bold: true
});
}
// ─── SLIDE 12: DIFFERENTIAL DIAGNOSIS ────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Differential Diagnosis", C.dkgray);
addAccentBar(s, C.amber);
const diffs = [
{ dx: "PKAN (PANK2)", why: "Eye-of-tiger sign, GP iron, dystonia-parkinsonism, childhood onset", dist: "PANK2 gene; EoT is defining; dystonia >> ataxia; no WES C19orf12 variant", clue: C.red },
{ dx: "Hereditary Spastic\nAtaxia (SPG43)", why: "Spastic-ataxic gait, young onset, pyramidal signs, progressive", dist: "SCA panel negative; WES revealed C19orf12; MRI shows GP/SN iron", clue: C.amber },
{ dx: "SCA subtypes\n(SCA1,2,3,7...)", why: "Cerebellar ataxia, young onset, progressive", dist: "SCA panel unrevealing; MRI iron deposition pattern not typical for SCA", clue: C.teal },
{ dx: "Wilson's Disease", why: "Young onset, movement disorder, neuropsychiatric, liver involvement", dist: "No Kayser-Fleischer rings; ceruloplasmin normal; no liver disease", clue: C.purple },
{ dx: "Other NBIA subtypes\n(BPAN, CoPAN)", why: "Brain iron accumulation, neurodegeneration, similar MRI pattern", dist: "Gene-specific features; WES confirmed C19orf12 — not WDR45 or COASY", clue: C.navy },
{ dx: "Neuroacanthocytosis", why: "Movement disorder, psychiatric features, young onset", dist: "No acanthocytes on blood film; different MRI findings", clue: C.green },
];
diffs.forEach((d, i) => {
const ri = Math.floor(i / 2);
const ci = i % 2;
const x = 0.3 + ci * 4.9;
const y = 0.85 + ri * 1.5;
s.addShape(pres.shapes.RECTANGLE, {
x, y, w: 4.55, h: 1.38,
fill: { color: C.white }, line: { color: d.clue },
shadow: { type: "outer", color: "000000", blur: 4, offset: 1, angle: 135, opacity: 0.1 }
});
s.addShape(pres.shapes.RECTANGLE, { x, y, w: 0.18, h: 1.38, fill: { color: d.clue }, line: { color: d.clue } });
s.addText(d.dx, { x: x + 0.25, y: y + 0.04, w: 4.1, h: 0.42, fontSize: 12, bold: true, color: d.clue });
s.addText([{ text: "Why considered: ", options: { bold: true, color: C.dkgray } }, { text: d.why, options: { color: C.dkgray } }], {
x: x + 0.25, y: y + 0.44, w: 4.1, h: 0.42, fontSize: 10
});
s.addText([{ text: "Distinguishing: ", options: { bold: true, color: C.green } }, { text: d.dist, options: { color: C.dkgray } }], {
x: x + 0.25, y: y + 0.86, w: 4.1, h: 0.44, fontSize: 10
});
});
}
// ─── SLIDE 13: MANAGEMENT ──────────────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Management & Treatment", C.green);
addAccentBar(s, C.navy);
const drugs = [
{ drug: "Carbidopa-Levodopa", role: "Dopaminergic therapy for parkinsonism features", note: "Modest benefit; titrate carefully", color: C.teal },
{ drug: "Baclofen", role: "Antispasticity — reduces pyramidal spasticity", note: "Titrate to effect; watch sedation", color: C.navy },
{ drug: "Amantadine", role: "Dopaminergic + NMDA antagonist; may help dyskinesia", note: "Can improve mobility & gait", color: C.purple },
{ drug: "Dalfampridine", role: "Potassium channel blocker — improves walking speed in spasticity", note: "Used in spastic gait disorders", color: C.amber },
];
drugs.forEach((d, i) => {
const x = 0.3 + (i % 2) * 4.9;
const y = 0.85 + Math.floor(i / 2) * 1.4;
s.addShape(pres.shapes.RECTANGLE, {
x, y, w: 4.55, h: 1.28,
fill: { color: C.white }, line: { color: d.color },
shadow: { type: "outer", color: "000000", blur: 5, offset: 2, angle: 135, opacity: 0.1 }
});
s.addShape(pres.shapes.RECTANGLE, { x, y, w: 4.55, h: 0.38, fill: { color: d.color }, line: { color: d.color } });
s.addText(d.drug, { x: x + 0.1, y: y, w: 4.3, h: 0.38, fontSize: 13, bold: true, color: C.white, valign: "middle", margin: 0 });
s.addText(d.role, { x: x + 0.1, y: y + 0.42, w: 4.3, h: 0.42, fontSize: 11, color: C.dkgray });
s.addText([{ text: "Note: ", options: { bold: true, color: d.color } }, { text: d.note, options: { color: C.gray } }], {
x: x + 0.1, y: y + 0.84, w: 4.3, h: 0.38, fontSize: 10.5
});
});
// Non-pharmacological
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y: 3.75, w: 9.4, h: 1.5,
fill: { color: C.navy }, line: { color: C.navy }
});
s.addText("Non-Pharmacological & Genetic Interventions", { x: 0.5, y: 3.8, w: 5, h: 0.38, fontSize: 13, bold: true, color: C.gold });
const nondrug = [
["Gait Physiotherapy", "Multidisciplinary rehabilitation — improve balance & reduce falls"],
["Genetic Counselling", "Autosomal recessive — 25% recurrence risk; cascade testing for siblings"],
["Iron Chelation", "Deferiprone under investigation in NBIA; not standard of care yet"],
["Multidisciplinary Care", "Neurologist, physiotherapist, ophthalmologist, genetic counsellor"],
];
nondrug.forEach(([k, v], i) => {
const c = i < 2 ? 0 : 1;
const r = i % 2;
s.addText([{ text: "▸ " + k + ": ", options: { bold: true, color: C.gold } }, { text: v, options: { color: C.lgray } }], {
x: 0.45 + c * 4.8, y: 4.22 + r * 0.42, w: 4.6, h: 0.4, fontSize: 11
});
});
}
// ─── SLIDE 14: KEY DISCUSSION POINTS ─────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navy }, line: { color: C.navy } });
addAccentBar(s, C.amber);
s.addText("Discussion — Key Teaching Points", {
x: 0.3, y: 0.1, w: 9.4, h: 0.65, fontSize: 22, bold: true, color: C.white
});
const points = [
{
num: "01", title: "Eye-of-the-Tiger ≠ PKAN exclusively",
body: "While EoT sign is the hallmark of PKAN, it has been documented in fewer than 10 published MPAN cases. This case proves imaging alone cannot dictate genetic diagnosis."
},
{
num: "02", title: "Ataxia-dominant MPAN — an underrecognised phenotype",
body: "Classical MPAN presents with parkinsonism + spasticity. Ataxia- and oculomotor apraxia-dominant MPAN (mimicking SPG43) has been described in only a handful of cases globally."
},
{
num: "03", title: "Molecular diagnosis is indispensable",
body: "SCA panel & mitochondrial genome sequencing were negative. Only whole-exome sequencing revealed compound heterozygous C19orf12 variants — confirming MPAN."
},
{
num: "04", title: "Depression as an early feature",
body: "Longstanding depression since adolescence preceded motor symptoms by a decade. Neuropsychiatric symptoms may be the first manifestation of MPAN."
},
{
num: "05", title: "Compound heterozygosity",
body: "One likely pathogenic variant + one VUS in compound heterozygous state is consistent with autosomal recessive MPAN. Phenotype-genotype correlation supports pathogenicity of the VUS."
},
];
points.forEach((p, i) => {
const y = 0.88 + i * 0.88;
s.addShape(pres.shapes.RECTANGLE, {
x: 0.3, y, w: 0.7, h: 0.72,
fill: { color: C.amber }, line: { color: C.amber }
});
s.addText(p.num, { x: 0.3, y, w: 0.7, h: 0.72, fontSize: 16, bold: true, color: C.navy, align: "center", valign: "middle", margin: 0 });
s.addText(p.title, { x: 1.1, y: y + 0.04, w: 8.6, h: 0.32, fontSize: 13, bold: true, color: C.gold });
s.addText(p.body, { x: 1.1, y: y + 0.36, w: 8.6, h: 0.44, fontSize: 11, color: C.lgray });
});
}
// ─── SLIDE 15: CONCLUSION ─────────────────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.navy }, line: { color: C.navy } });
// Accent strip
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 1.8, w: 0.2, h: 2.5, fill: { color: C.amber }, line: { color: C.amber } });
addAccentBar(s, C.teal);
s.addText("Conclusion & Take-Home Messages", {
x: 0.4, y: 0.15, w: 9.2, h: 0.58, fontSize: 22, bold: true, color: C.white
});
s.addShape(pres.shapes.RECTANGLE, { x: 0.4, y: 0.75, w: 9.2, h: 0.04, fill: { color: C.amber }, line: { color: C.amber } });
const messages = [
{ icon: "🧬", text: "Consider MPAN in young adults with spastic-ataxic gait + parkinsonism — even when MRI shows eye-of-the-tiger sign" },
{ icon: "🔬", text: "Whole-exome sequencing is the diagnostic cornerstone when targeted gene panels are non-diagnostic" },
{ icon: "🧠", text: "Compound heterozygous C19orf12 variants (one LP + one VUS) with matching phenotype — sufficient to confirm MPAN diagnosis" },
{ icon: "📋", text: "Depression and early neuropsychiatric features may precede motor manifestations in MPAN by years" },
{ icon: "🩺", text: "Early genetic diagnosis enables appropriate treatment, accurate genetic counselling, and family cascade testing" },
{ icon: "📸", text: "This case expands the known radiological and clinical spectrum of C19orf12-related MPAN" },
];
messages.forEach((m, i) => {
const y = 0.95 + i * 0.72;
s.addShape(pres.shapes.RECTANGLE, {
x: 0.4, y, w: 9.2, h: 0.62,
fill: { color: i % 2 === 0 ? "0D2137" : "112744" },
line: { color: C.teal }
});
s.addText(m.icon + " " + m.text, {
x: 0.55, y: y + 0.05, w: 8.9, h: 0.52, fontSize: 12, color: i % 2 === 0 ? C.lgray : C.gold, valign: "middle"
});
});
}
// ─── SLIDE 16: KEYWORDS / REFERENCES ─────────────────────────────
{
const s = pres.addSlide();
s.addShape(pres.shapes.RECTANGLE, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: C.light }, line: { color: C.light } });
addHeader(s, "Keywords & References", C.dkgray);
addAccentBar(s, C.amber);
// Keywords
const keywords = ["Neurodegeneration with Brain Iron Accumulation", "MPAN", "C19orf12", "Eye-of-the-Tiger Sign", "Hereditary Spastic Ataxia", "PKAN", "Oculomotor Apraxia", "Compound Heterozygous", "Whole-Exome Sequencing", "NBIA"];
s.addText("Keywords", { x: 0.4, y: 0.85, w: 4, h: 0.38, fontSize: 14, bold: true, color: C.navy });
keywords.forEach((kw, i) => {
const ci = i % 2;
const ri = Math.floor(i / 2);
s.addShape(pres.shapes.ROUNDED_RECTANGLE, {
x: 0.4 + ci * 4.5, y: 1.28 + ri * 0.44, w: 4.3, h: 0.38,
fill: { color: ci === 0 ? C.teal : C.navy }, line: { color: ci === 0 ? C.teal : C.navy },
rectRadius: 0.1
});
s.addText(kw, { x: 0.5 + ci * 4.5, y: 1.28 + ri * 0.44, w: 4.15, h: 0.38, fontSize: 11, color: C.white, align: "center", valign: "middle", margin: 0 });
});
// Conference info
s.addShape(pres.shapes.RECTANGLE, {
x: 0.4, y: 3.88, w: 9.2, h: 1.38,
fill: { color: C.navy }, line: { color: C.navy }
});
s.addText("Presented at TANCON 2026", { x: 0.6, y: 3.94, w: 5, h: 0.38, fontSize: 14, bold: true, color: C.gold });
s.addText([
{ text: "14th Annual Conference, Tamil Nadu & Pondicherry Association of Neurologists\n", options: {} },
{ text: "\"Mind Matters: Bridging Neurology & Modern Therapeutics\"\n", options: { italic: true } },
{ text: "August 28–30, 2026 | Hotel Hills, Hosur", options: {} }
], { x: 0.6, y: 4.32, w: 8.7, h: 0.85, fontSize: 11.5, color: C.lgray });
}
// ─── WRITE FILE ───────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/mpan-presentation/MPAN_CaseDiscussion_TANCON2026.pptx" })
.then(() => console.log("SUCCESS: PPTX written"))
.catch(e => console.error("ERROR:", e));
cd /home/daytona/workspace/mpan-presentation && node build.js 2>&1
ls -lh /home/daytona/workspace/mpan-presentation/MPAN_CaseDiscussion_TANCON2026.pptx
MPAN CaseDiscussion TANCON2026
Presentation · PPTX
| Slide | Content |
|---|---|
| 1 | Title slide — TANCON 2026 branding, full case title |
| 2 | Case discussion overview / table of contents |
| 3 | Patient profile — demographics + background history cards |
| 4 | History of Present Illness — visual timeline (age 20 → presentation) + key negatives |
| 5 | Clinical examination — Higher Functions / Motor / Gait boxes + sensory table |
| 6 | Investigations table — MRI, SCA panel, mitochondrial WGS, WES findings |
| 7 | MRI findings — Eye-of-the-Tiger sign explained + PKAN vs MPAN MRI comparison table |
| 8 | Genetic diagnosis — both C19orf12 variants displayed with ACMG classification cards |
| 9 | NBIA classification table — MPAN highlighted in context of all NBIA subtypes |
| 10 | Pathogenesis flowchart — C19orf12 mutation → mitochondrial dysfunction → iron dysregulation → neurodegeneration |
| 11 | Clinical spectrum of MPAN — 6 feature boxes including the rare ataxia-dominant phenotype flagged |
| 12 | Differential diagnosis — 6 differentials with "why considered" vs "distinguishing features" |
| 13 | Management — 4 drug cards (levodopa, baclofen, amantadine, dalfampridine) + non-pharmacological panel |
| 14 | Discussion — 5 key teaching points numbered on dark background |
| 15 | Conclusion — 6 take-home messages in alternating highlight boxes |
| 16 | Keywords + TANCON 2026 conference details |
Find recent MPAN research papers and clinical case reports on PubMed
"MPAN" AND "C19orf12"
"mitochondrial membrane protein-associated neurodegeneration" AND "C19orf12"
"neurodegeneration with brain iron accumulation" AND "C19orf12"
PMID: 40867110
PMID: 39755877
PMID: 41937575
"C19orf12" AND "case report"
PMID: 37605305
PMID: 41239414
PMID: 39523449
PMID: 35432442
PMID: 41478510
| PMID | Year | Type | Key Contribution |
|---|---|---|---|
| 40867110 | 2025 | Review | Comprehensive MPAN update — best current review |
| 39755877 | 2025 | Case series | Indian cohort, 7 patients; 2 novel splice variants |
| 37605305 | 2023 | Case series | AD-MPAN & mosaicism; late-onset atypical phenotypes |
| 39523449 | 2024 | Case report | Depression-first MPAN; quetiapine for psychosis |
| 35432442 | 2022 | Case report | De novo C19orf12 variant; dominant inheritance |
| 41937575 | 2026 | Mechanism | C19orf12 phase separation; BNIP3/mitophagy axis |
| 41239414 | 2025 | Animal model | Tubular ER disruption; knockout mouse model |
| 41478510 | 2026 | Biomarkers | Lysosomal alterations; 18-patient proteomics |
| 35182730 | 2022 | Mechanism | Ferroptosis as cell death mechanism |
| 36863113 | 2023 | Functional | Frameshift mutation; mitochondrial dysfunction |
| 41276763 | 2025 | Review | Iron dysregulation across NBIA subtypes |
Create a comprehensive literature review PDF with all abstracts
PMID: 35182730
PMID: 36863113
PMID: 41276763
PMID: 39419454
PMID: 34983316
~/mpan-presentation/build_pdf.py
#!/usr/bin/env python3
"""
MPAN Literature Review PDF Generator
Comprehensive literature review with all PubMed abstracts
"""
from reportlab.lib.pagesizes import A4
from reportlab.lib import colors
from reportlab.lib.units import mm, cm
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.enums import TA_LEFT, TA_CENTER, TA_JUSTIFY
from reportlab.platypus import (
SimpleDocTemplate, Paragraph, Spacer, Table, TableStyle,
HRFlowable, PageBreak, KeepTogether
)
from reportlab.platypus.flowables import HRFlowable
from reportlab.pdfbase import pdfmetrics
from reportlab.pdfbase.ttfonts import TTFont
from datetime import date
# ── Colors ────────────────────────────────────────────────────────────────────
NAVY = colors.HexColor("#0A1931")
TEAL = colors.HexColor("#1A6B72")
AMBER = colors.HexColor("#E8A020")
GOLD = colors.HexColor("#F4C842")
LGRAY = colors.HexColor("#D5D8DC")
DGRAY = colors.HexColor("#2C3E50")
MGRAY = colors.HexColor("#7F8C8D")
RED = colors.HexColor("#C0392B")
GREEN = colors.HexColor("#1A7A4A")
PURPLE = colors.HexColor("#5B2C6F")
BLUE = colors.HexColor("#1A5276")
LBG = colors.HexColor("#EDF4F5")
WHITE = colors.white
W, H = A4 # 595.27 x 841.89 pts
# ── Styles ─────────────────────────────────────────────────────────────────────
def build_styles():
base = getSampleStyleSheet()
s = {}
s["cover_title"] = ParagraphStyle(
"cover_title", fontSize=26, leading=32, textColor=WHITE,
fontName="Helvetica-Bold", alignment=TA_CENTER, spaceAfter=6
)
s["cover_sub"] = ParagraphStyle(
"cover_sub", fontSize=13, leading=18, textColor=GOLD,
fontName="Helvetica-Bold", alignment=TA_CENTER, spaceAfter=4
)
s["cover_body"] = ParagraphStyle(
"cover_body", fontSize=11, leading=16, textColor=LGRAY,
fontName="Helvetica", alignment=TA_CENTER, spaceAfter=3
)
s["section_head"] = ParagraphStyle(
"section_head", fontSize=14, leading=18, textColor=WHITE,
fontName="Helvetica-Bold", alignment=TA_LEFT,
spaceAfter=0, spaceBefore=16,
backColor=NAVY, leftIndent=-12, rightIndent=-12,
borderPad=6
)
s["paper_title"] = ParagraphStyle(
"paper_title", fontSize=12, leading=16, textColor=NAVY,
fontName="Helvetica-Bold", alignment=TA_LEFT,
spaceBefore=14, spaceAfter=3
)
s["meta"] = ParagraphStyle(
"meta", fontSize=9, leading=13, textColor=MGRAY,
fontName="Helvetica", alignment=TA_LEFT, spaceAfter=3
)
s["badge"] = ParagraphStyle(
"badge", fontSize=8, leading=11, textColor=WHITE,
fontName="Helvetica-Bold", alignment=TA_CENTER
)
s["abstract_head"] = ParagraphStyle(
"abstract_head", fontSize=9, leading=12, textColor=TEAL,
fontName="Helvetica-Bold", alignment=TA_LEFT, spaceAfter=2
)
s["abstract_body"] = ParagraphStyle(
"abstract_body", fontSize=9.5, leading=14, textColor=DGRAY,
fontName="Helvetica", alignment=TA_JUSTIFY, spaceAfter=4
)
s["body"] = ParagraphStyle(
"body", fontSize=10, leading=15, textColor=DGRAY,
fontName="Helvetica", alignment=TA_JUSTIFY, spaceAfter=6
)
s["bullet"] = ParagraphStyle(
"bullet", fontSize=9.5, leading=14, textColor=DGRAY,
fontName="Helvetica", leftIndent=14, firstLineIndent=-10,
spaceAfter=3
)
s["toc_title"] = ParagraphStyle(
"toc_title", fontSize=16, leading=20, textColor=NAVY,
fontName="Helvetica-Bold", alignment=TA_LEFT,
spaceBefore=8, spaceAfter=14
)
s["toc_entry"] = ParagraphStyle(
"toc_entry", fontSize=10, leading=16, textColor=DGRAY,
fontName="Helvetica", alignment=TA_LEFT
)
s["toc_cat"] = ParagraphStyle(
"toc_cat", fontSize=10, leading=14, textColor=TEAL,
fontName="Helvetica-Bold", spaceBefore=8, spaceAfter=2
)
s["footer_note"] = ParagraphStyle(
"footer_note", fontSize=8, leading=11, textColor=MGRAY,
fontName="Helvetica-Oblique", alignment=TA_CENTER
)
s["table_head"] = ParagraphStyle(
"table_head", fontSize=9, leading=12, textColor=WHITE,
fontName="Helvetica-Bold", alignment=TA_CENTER
)
s["table_cell"] = ParagraphStyle(
"table_cell", fontSize=8.5, leading=12, textColor=DGRAY,
fontName="Helvetica", alignment=TA_LEFT
)
s["highlight_box"] = ParagraphStyle(
"highlight_box", fontSize=10, leading=15, textColor=NAVY,
fontName="Helvetica", alignment=TA_JUSTIFY,
leftIndent=10, rightIndent=10, spaceAfter=4
)
s["kw_label"] = ParagraphStyle(
"kw_label", fontSize=8.5, leading=12, textColor=TEAL,
fontName="Helvetica-Bold"
)
s["kw_text"] = ParagraphStyle(
"kw_text", fontSize=8.5, leading=12, textColor=DGRAY,
fontName="Helvetica-Oblique"
)
return s
# ── Paper Data ─────────────────────────────────────────────────────────────────
PAPERS = [
# ── Reviews ──────────────────────────────────────────────────────────────
{
"category": "Reviews & Updates",
"num": 1,
"pmid": "40867110",
"title": "An Update and Perspectives on Mitochondrial Membrane Protein-Associated Neurodegeneration and C19orf12 Research",
"authors": "Gnutti B, Iuso A, Angelini C, Finazzi D",
"journal": "Brain Sciences",
"year": "2025",
"pub_date": "Jul 22, 2025",
"pub_type": "Review",
"pub_type_color": TEAL,
"doi": "10.3390/brainsci15080777",
"pmcid": "PMC12384588",
"open_access": True,
"relevance": "★★★★★",
"keywords": "MPAN; C19orf12; neurodegeneration; brain iron accumulation; treatment; diagnosis",
"abstract": {
"Abstract": "Mitochondrial Membrane Protein-Associated Neurodegeneration is a rare monogenic form of neurodegeneration characterized by iron accumulation in the brain. It is due to variants in the orphan gene C19orf12. Since its definition in 2011, many scientific groups have investigated the clinical features and molecular underpinnings of the disorder. In this review, we summarize the main points of progress in this field, trying to highlight the issues that need further attention and efforts to speed up the diagnostic path, improve the existing treatment options, and define targeted therapies."
},
"clinical_relevance": "Most current comprehensive review of MPAN. Covers all advances since the disease was first defined in 2011 — clinical features, molecular mechanisms, diagnostics, and treatment gaps. Essential reading for any clinician encountering MPAN."
},
{
"category": "Reviews & Updates",
"num": 2,
"pmid": "41276763",
"title": "Iron Dysregulation in Neurodegeneration with Brain Iron Accumulation (NBIA): Links between Mutations in BPAN, PKAN, MPAN and PLAN Types and Iron Metabolism",
"authors": "Wisniewska K, Szota M, Zabinska M, Szulc A, Grabowski L, Wegrzyn G",
"journal": "Molecular Neurobiology",
"year": "2025",
"pub_date": "Nov 24, 2025",
"pub_type": "Review",
"pub_type_color": TEAL,
"doi": "10.1007/s12035-025-05479-z",
"pmcid": "PMC12641038",
"open_access": True,
"relevance": "★★★★☆",
"keywords": "NBIA; iron metabolism; BPAN; PKAN; MPAN; PLAN; WDR45; PANK2; C19orf12; PLA2G6; iron chelators",
"abstract": {
"Abstract": "Neurodegeneration with brain iron accumulation (NBIA) is a group of rare neurodegenerative disorders characterized by excessive iron deposition in the central nervous system. The disease typically manifests in early childhood with progressive dystonia, muscle rigidity, spasticity, ataxia, as well as personality changes (such as nervousness, aggression, and learning difficulties) and psychiatric symptoms (including disorientation, confusion, seizures, and dementia). The most common forms — BPAN, PKAN, MPAN, and PLAN — are associated with mutations in the WDR45, PANK2, C19orf12, and PLA2G6 genes, respectively, leading to disruptions in mitochondrial functions, autophagy, and coenzyme A metabolism. These abnormalities result in oxidative stress and neurodegeneration; however, the connection between the observed mutations and iron accumulation in the central nervous system remains unclear. There is ongoing debate as to whether iron accumulation is a primary pathological factor or a secondary consequence of cellular dysfunction. Unfortunately, despite numerous therapeutic attempts, including the use of iron chelators, treatment efficacy remains very limited. Therefore, the aim of this review was to present the latest findings on the relationship between WDR45, PANK2, C19orf12, and PLA2G6 mutations and iron metabolism disorders. The data presented may help explain the previously undescribed roles of these mutations in the excessive iron accumulation observed in the nervous system of patients with NBIA, while also highlighting the complexity of NBIA pathogenesis. A better understanding of these mechanisms may contribute to the development of new, more effective therapeutic strategies."
},
"clinical_relevance": "Comparative review across NBIA subtypes. Directly explains why iron accumulates in the globus pallidus and substantia nigra across BPAN, PKAN, MPAN, and PLAN — important for understanding MRI findings and differential diagnosis."
},
# ── Clinical / Genetic Case Series ───────────────────────────────────────
{
"category": "Clinical & Genetic Case Series",
"num": 3,
"pmid": "39755877",
"title": "C19orf12 Gene Variants Causing Mitochondrial Membrane Protein-Associated Neurodegeneration (MPAN)",
"authors": "Kumari R, Holla VV, Sriram N, Kamble N, Asranna A, Saini J",
"journal": "European Journal of Human Genetics",
"year": "2025",
"pub_date": "Jul 2025",
"pub_type": "Case Series",
"pub_type_color": PURPLE,
"doi": "10.1038/s41431-024-01778-6",
"pmcid": "PMC12229627",
"open_access": True,
"relevance": "★★★★★",
"keywords": "C19orf12; MPAN; India; spastic-ataxic; optic atrophy; splice-site variant; exome sequencing",
"abstract": {
"Abstract": "Mitochondrial membrane protein-associated neurodegeneration (MPAN) is a rare neurodegenerative disorder characterized by spastic paraplegia, parkinsonism and psychiatric and/or behavioral symptoms caused by variants in gene encoding chromosome-19 open reading frame-12 (C19orf12). We present here seven patients from six unrelated families with detailed clinical, radiological, and genetic investigations. Childhood-onset patients predominantly had a spastic ataxic phenotype with optic atrophy, while adult-onset patients were presented with cognitive, behavioral, and parkinsonian symptoms. Levodopa induced choreiform dyskinesia was observed in one patient who showed a response to levodopa. Brain magnetic resonance imaging showed mineralization in all patients and cerebellar atrophy in one patient. The 'pallidal splitting sign' was found in two patients and additional caudate and putamen mineralization was noted in two patients. Exome sequencing identified six variants in the C19orf12 gene, including two novel splice-site variants and four previously reported missense variants. Transcript analysis using RT-PCR followed by Sanger sequencing was performed on a splice site variant (c.194-2delA) to understand the splice defect and its consequences. This analysis confirmed the splice defect and use of an alternate cryptic splice site in the downstream exonic region. The variants identified in this study expand the spectrum of clinical and genetic knowledge on MPAN patients, highlighting the importance of genetic testing in the diagnosis and management of this disorder."
},
"clinical_relevance": "DIRECTLY RELEVANT to the TANCON 2026 case — Indian MPAN cohort. Childhood-onset cases showed spastic-ataxic phenotype with optic atrophy, closely mirroring the presented patient. Two novel splice-site variants identified. Confirms that whole-exome sequencing is essential when targeted panels are negative."
},
{
"category": "Clinical & Genetic Case Series",
"num": 4,
"pmid": "37605305",
"title": "Autosomal Dominant MPAN: Mosaicism Expands the Clinical Spectrum to Atypical Late-Onset Phenotypes",
"authors": "Angelini C, Durand CM, Fergelot P, Deforges J, Vital A, Menegon P",
"journal": "Movement Disorders",
"year": "2023",
"pub_date": "Nov 2023",
"pub_type": "Case Series",
"pub_type_color": PURPLE,
"doi": "10.1002/mds.29576",
"pmcid": None,
"open_access": False,
"relevance": "★★★★☆",
"keywords": "MPAN; autosomal dominant; mosaicism; C19orf12; late-onset; iron metabolism; autophagy",
"abstract": {
"Background": "Mitochondrial membrane protein-associated neurodegeneration (MPAN) is caused by mutations in the C19orf12 gene. MPAN typically appears in the first two decades of life and presents with progressive dystonia-parkinsonism, lower motor neuron signs, optic atrophy, and abnormal iron deposits predominantly in the basal ganglia. MPAN, initially considered as a strictly autosomal recessive disease (AR), turned out to be also dominantly inherited (AD).",
"Objectives": "To better characterize the clinical, molecular, and functional spectra associated with dominant pathogenic heterozygous C19orf12 variants.",
"Methods": "Clinical, imaging, and molecular information were collected from eight individuals from four AD-MPAN families. Brain neuropathology results were obtained for one patient. Functional studies focused on energy and iron metabolism were conducted on fibroblasts from AD-MPAN patients, AR-MPAN patients, and controls.",
"Results": "Four heterozygous C19orf12 variants were identified in eight AD-MPAN patients. Two patients carrying the familial variant in mosaic displayed an atypical late-onset phenotype. Fibroblasts from AD-MPAN showed more severe alterations of iron storage metabolism and autophagy compared to AR-MPAN cells.",
"Conclusion": "These data add strong evidence of the realness of AD-MPAN with identification of novel monoallelic C19orf12 variants, including at the mosaic state. This has implications for diagnosis procedures. The phenotypic spectrum of MPAN is expanded to late-onset atypical presentations. AD-MPAN shows more drastic abnormalities of iron metabolism and autophagy than AR-MPAN."
},
"clinical_relevance": "Important paradigm shift — MPAN is NOT exclusively autosomal recessive. Mosaic monoallelic variants cause late-onset atypical disease. Direct implications for genetic counselling, inheritance discussions with families, and interpretation of single heterozygous variants in clinical practice."
},
# ── Case Reports ─────────────────────────────────────────────────────────
{
"category": "Case Reports",
"num": 5,
"pmid": "39523449",
"title": "C19orf12 Gene Mutation with Neuropsychiatric Symptoms: A Case Report",
"authors": "Yildirim I, Altunc AT, Gur E, Hacikurtes G, Usta Saglam NG, Kiziltan G",
"journal": "Neurocase",
"year": "2024",
"pub_date": "Aug 2024",
"pub_type": "Case Report",
"pub_type_color": RED,
"doi": "10.1080/13554794.2024.2426822",
"pmcid": None,
"open_access": False,
"relevance": "★★★★★",
"keywords": "C19orf12; MPAN; depression; neuropsychiatric; psychosis; quetiapine; NBIA",
"abstract": {
"Abstract": "Neurodegeneration with brain iron accumulation (NBIA) is a genetic disorder characterized by iron accumulation in the basal ganglia. Patients may develop behavioral abnormalities, dementia, movement disorders, and neuropsychiatric symptoms such as emotional lability, depression, anxiety, hallucinations, impulsivity, obsessions, and hyperactivity. In this case, a 46-year-old male patient with a C19orf12 mutation experienced depressive complaints before movement disorders, followed by cognitive deficits and psychotic symptoms as the disease progressed. The patient's response to quetiapine treatment is crucial for managing neuropsychiatric symptoms. This case could contribute to the literature on presentation, differential diagnosis, and management of neuropsychiatric symptoms in rare NBIA patients."
},
"clinical_relevance": "DIRECTLY RELEVANT — depression preceding motor symptoms, mirroring the TANCON 2026 case. Demonstrates that neuropsychiatric features (depression, psychosis) can be the first and dominant presentation of MPAN, years before movement disorder. Quetiapine response for psychotic symptoms is a practical management pearl."
},
{
"category": "Case Reports",
"num": 6,
"pmid": "35432442",
"title": "Case Report: Identification of a De Novo C19orf12 Variant in a Patient with Mitochondrial Membrane Protein-Associated Neurodegeneration",
"authors": "Yang Y, Zhang S, Yang W, Wei T, Hao W, Cheng T",
"journal": "Frontiers in Genetics",
"year": "2022",
"pub_date": "2022",
"pub_type": "Case Report",
"pub_type_color": RED,
"doi": "10.3389/fgene.2022.852374",
"pmcid": "PMC9006254",
"open_access": True,
"relevance": "★★★★☆",
"keywords": "C19orf12; MPAN; de novo; dominant; depression; dystonia; dementia; WES",
"abstract": {
"Background": "Mitochondrial membrane protein-associated neurodegeneration (MPAN) mostly arises as an autosomal recessive disease and is caused by variants in the chromosome 19 open reading frame 12 (C19orf12) gene. However, a few C19orf12 monoallelic truncating de novo variants have been reported and segregated as autosomal dominant traits in some cases.",
"Methods": "We performed whole-exome sequencing and analyzed genes related to neurodegeneration associated with brain iron accumulation for pathogenic variants. The identified variants were confirmed by Sanger sequencing and tested using in silico tools.",
"Results": "The patient had an onset of depression at the age of 22 years, which rapidly progressed to severe dystonia, dementia, and bladder and bowel incontinence. Neuroimaging showed hypointensity in the substantia nigra and the globus pallidum, with additional frontotemporal atrophy. Genetic analysis revealed a single complex de novo variant [c.336_338delinsCACA (p.Trp112CysfsTer40)] in the C19orf12 gene.",
"Conclusion": "This study enriches the genetic spectrum and clinical features of C19orf12 variants and provides additional evidence of the variable inheritance pattern of MPAN."
},
"clinical_relevance": "De novo C19orf12 variant presenting with depression at age 22. Rapid progression to dystonia and dementia. Reinforces the pattern of psychiatric onset in MPAN and the need for WES when routine testing is negative. Supports AD/de novo inheritance in a subset."
},
{
"category": "Case Reports",
"num": 7,
"pmid": "34983316",
"title": "Novel C19orf12 Loss-of-Function Variant Leading to Neurodegeneration with Brain Iron Accumulation",
"authors": "Lefter A, Mitrea I, Mitrea D, Plaiasu V, Bertoli-Avella A, Beetz C",
"journal": "Neurocase",
"year": "2021",
"pub_date": "Dec 2021",
"pub_type": "Case Report",
"pub_type_color": RED,
"doi": "10.1080/13554794.2021.2022703",
"pmcid": None,
"open_access": False,
"relevance": "★★★☆☆",
"keywords": "C19orf12; MPAN; novel variant; loss-of-function; Romania; exome sequencing",
"abstract": {
"Abstract": "Neurodegeneration with brain iron accumulation (NBIA) is a group of inherited disorders characterised by cerebral iron overload mainly in the basal ganglia. Mitochondrial membrane protein-associated neurodegeneration (MPAN) is a form of NBIA caused by pathogenic C19orf12 gene variants. We report on a Romanian patient with MPAN confirmed through exome sequencing, revealing a homozygous nonsense variant in the C19orf12 gene, NM_001031726.3: c.215T>G (p.Leu72*), that co-segregates with disease in tested relatives: the patient's parents, younger brother and paternal uncle are heterozygous carriers. This is a novel disease-causing variant in the C19orf12 gene and the first reported MPAN case in a Romanian patient."
},
"clinical_relevance": "First Romanian MPAN case. Novel homozygous nonsense variant (p.Leu72*) confirmed by co-segregation analysis. Contributes to global variant spectrum — similar position (codon 72) to the c.215C>A (p.Pro72Gln) variant in the TANCON 2026 case, making this particularly noteworthy."
},
# ── Pathomechanism & Basic Science ───────────────────────────────────────
{
"category": "Pathomechanism & Basic Science",
"num": 8,
"pmid": "41937575",
"title": "Phase Separation of C19orf12 Regulates BNIP3 Protein Quality Control and Maintains Neuronal Mitophagy",
"authors": "Shao C, Bhatta S, Kumari M, Wu F, Siedlak SL, Torres S",
"journal": "Autophagy",
"year": "2026",
"pub_date": "Apr 11, 2026",
"pub_type": "Original Research",
"pub_type_color": NAVY,
"doi": "10.1080/15548627.2026.2655834",
"pmcid": None,
"open_access": False,
"relevance": "★★★★☆",
"keywords": "C19orf12; mitophagy; BNIP3; liquid-liquid phase separation; MPAN; iron accumulation; axonal spheroids",
"abstract": {
"Abstract": "Mutations in C19orf12, an orphan gene with elusive function, cause mitochondrial membrane protein-associated neurodegeneration (MPAN). Despite the intriguing mitochondrial deficits, the mechanisms underlying the loss of function of C19orf12 in MPAN pathogenesis remain unclear. In this study, we aim to explore the functional impacts of C19orf12 mutations on mitophagy in MPAN models in vitro and in vivo. Our findings suggest that C19orf12 regulates the turnover of mitophagy receptor BNIP3 proteins through the lysosomal degradation pathway. Disruption of this process leads to the accumulation of oxidized BNIP3 proteins on mitochondria that are ineffective in initiating mitophagy. Mechanistically, C19orf12 participates in protein condensate formation by liquid-liquid phase separation (LLPS) to facilitate BNIP3 protein turnover on the mitochondrial membrane. Along with mitophagy deficits, a rodent MPAN model exhibits motor deficits and core pathological features of MPAN, including iron accumulation, axonal spheroids, and neuroinflammation. This study underscores the pivotal role of C19orf12 in regulating the quality control of BNIP3 protein to control mitophagy, highlighting the significance of impaired mitophagy in the pathogenesis of MPAN."
},
"clinical_relevance": "2026 breakthrough — identifies liquid-liquid phase separation as the mechanism by which C19orf12 regulates BNIP3/mitophagy. Provides the most mechanistically detailed understanding of MPAN to date and suggests mitophagy pathway as a potential therapeutic target."
},
{
"category": "Pathomechanism & Basic Science",
"num": 9,
"pmid": "41239414",
"title": "Loss of Mouse C19orf12 Homolog Disturbs Tubular ER Homeostasis and Leads to Neuroaxonal Dystrophy",
"authors": "Wu F, Siedlak SL, Bhatta S, Khaled S, Shao C, Torres S",
"journal": "Acta Neuropathologica Communications",
"year": "2025",
"pub_date": "Nov 14, 2025",
"pub_type": "Animal Study",
"pub_type_color": BLUE,
"doi": "10.1186/s40478-025-02145-2",
"pmcid": "PMC12619510",
"open_access": True,
"relevance": "★★★☆☆",
"keywords": "C19orf12; knockout mouse; tubular ER; neuroaxonal dystrophy; RTN3; dopaminergic; substantia nigra",
"abstract": {
"Abstract": "Neurodegeneration with brain iron accumulation (NBIA) is a group of rare diseases associated with genetic mutations in several genes including C19orf12. To explore the underlying mechanism of NBIA pathogenesis, we investigated a mouse homolog of human C19orf12 gene knockout mouse model. In the brains of knockout mice, an age-dependent accumulation of abundant axonal spheroids, alongside brain iron accumulation, neuroinflammation, alpha-synuclein and ubiquitin pathology was observed. Axonal spheroids were associated with abnormal ER and damaged mitochondria in knockout mice. These abnormal spheroids consistently contained the tubular ER protein reticulon 3 (RTN3) even at younger ages which preceded the onset of motor symptoms. The abnormal localized expansion of axonal ER underlies swollen axon terminals of dopaminergic neurons. The accumulated neuroaxonal swellings likely impair functioning of the dopaminergic system in the substantia nigra, striatum, and other brain regions, which ultimately led to motor function deficits in knockout mice. Altogether, the absence of C19orf12 in mouse brains recapitulates cardinal features of neuropathology in human NBIA, suggesting that C19orf12 is essential to maintain the tubular ER homeostasis in neuronal axon."
},
"clinical_relevance": "First validated knockout mouse model faithfully recapitulating MPAN neuropathology. Identifies tubular ER disruption (RTN3 accumulation in axonal spheroids) as an early event preceding motor symptoms — may be relevant to pre-symptomatic detection and therapeutic window identification."
},
{
"category": "Pathomechanism & Basic Science",
"num": 10,
"pmid": "35182730",
"title": "C19orf12 Ablation Causes Ferroptosis in Mitochondrial Membrane Protein-Associated Neurodegeneration",
"authors": "Shao C, Zhu J, Ma X, Siedlak SL, Cohen ML, Lerner A",
"journal": "Free Radical Biology & Medicine",
"year": "2022",
"pub_date": "Mar 2022",
"pub_type": "Original Research",
"pub_type_color": NAVY,
"doi": "10.1016/j.freeradbiomed.2022.02.006",
"pmcid": "PMC8957567",
"open_access": True,
"relevance": "★★★★☆",
"keywords": "C19orf12; ferroptosis; iron overload; mitochondrial fragmentation; oxidative stress; DFO; NAC",
"abstract": {
"Abstract": "Mitochondrial membrane protein-associated with neurodegeneration (MPAN) is a rare genetic disease characterized by aggressive neurodegeneration and massive iron accumulation in patients' brains. Genetics studies identified defects in C19orf12 locus being associated with MPAN which likely caused loss of function although underlying pathogenic mechanism(s) remain elusive. In the present study, we investigated C19orf12 knockout (KO) M17 neuronal cells and primary skin fibroblasts from MPAN patients with C19orf12 homozygous G58S or heterozygous C19orf12 p99fs*102 mutations as cellular models of MPAN. C19orf12 KO cells and MPAN fibroblast cells demonstrated mitochondrial fragmentation and dysfunction, iron overload and increased oxidative damage. Antioxidant NAC and iron chelator DFO rescued both oxidative stress and mitochondrial deficits. Moreover, C19orf12 KO cells and MPAN fibroblast cells were susceptible to erastin- or RSL3-induced ferroptosis which could be almost completely prevented by pretreatment of iron chelator DFO. Importantly, we also found mitochondrial fragmentation and increased ferroptosis-related oxidative damage in neurons in the biopsied cortical tissues from an MPAN patient. Collectively, these results supported the notion that iron overload and ferroptosis likely play an important role in the pathogenesis of MPAN."
},
"clinical_relevance": "Establishes ferroptosis (iron-dependent cell death) as a key mechanism in MPAN neurodegeneration. Iron chelator DFO and antioxidant NAC rescue mitochondrial deficits in cellular models — providing rationale for iron chelation therapy trials in NBIA/MPAN."
},
{
"category": "Pathomechanism & Basic Science",
"num": 11,
"pmid": "36863113",
"title": "A Novel C19orf12 Frameshift Mutation in a MPAN Pedigree Impairs Mitochondrial Function and Connectivity Leading to Neurodegeneration",
"authors": "Chen HY, Lin HI, Hsu CL, Chen PL, Huang CY, Teng SC",
"journal": "Parkinsonism & Related Disorders",
"year": "2023",
"pub_date": "Apr 2023",
"pub_type": "Original Research",
"pub_type_color": NAVY,
"doi": "10.1016/j.parkreldis.2023.105353",
"pmcid": None,
"open_access": False,
"relevance": "★★★☆☆",
"keywords": "C19orf12; frameshift; autosomal dominant; mitochondrial dysfunction; ATP; alpha-synuclein; tau; CRISPR",
"abstract": {
"Background": "Mitochondrial membrane protein-associated neurodegeneration (MPAN) is a rare genetic disease characterized by progressive neurodegeneration with brain iron accumulations combined with neuronal alpha-synuclein and tau aggregations. Mutations in C19orf12 have been associated with both autosomal recessive and autosomal dominant inheritance patterns of MPAN.",
"Methods": "Clinical features and functional evidence are presented from a Taiwanese family with autosomal dominant MPAN caused by a novel heterozygous frameshift and nonsense mutation in C19orf12, c273_274 insA (p.P92Tfs*9). To verify the pathogenicity of the identified variant, we examined mitochondrial function, morphology, protein aggregation, neuronal apoptosis, and RNA interactome in p.P92Tfs*9 mutant knock-in SH-SY5Y cells created with CRISPR-Cas9 technology.",
"Results": "The patients with the C19orf12 p.P92Tfs*9 mutation presented with generalized dystonia, retrocollis, cerebellar ataxia, and cognitive decline, starting in their mid-20s. The identified novel frameshift mutation is located in the evolutionarily conserved region of the last exon of C19orf12. In vitro studies revealed impaired mitochondrial function, reduced ATP production, aberrant mitochondria interconnectivity and ultrastructure. Increased neuronal alpha-synuclein and tau aggregations and apoptosis were observed under mitochondrial stress. Transcriptomic analysis revealed altered expression of genes in clusters related to mitochondrial fission, lipid metabolism, and iron homeostasis pathways.",
"Conclusion": "These findings provide clinical, genetic, and mechanistic insight revealing a novel heterozygous C19orf12 frameshift mutation as a cause of autosomal dominant MPAN, further strengthening the importance of mitochondrial dysfunction in MPAN pathogenesis."
},
"clinical_relevance": "CRISPR-validated dominant frameshift variant. Clinical presentation included cerebellar ataxia — relevant to the ataxic phenotype in the TANCON 2026 case. Alpha-synuclein and tau aggregations in cellular model link MPAN to broader proteinopathy spectrum."
},
# ── Biomarkers & Cellular Studies ────────────────────────────────────────
{
"category": "Biomarkers & Cellular Studies",
"num": 12,
"pmid": "41478510",
"title": "Autophagy-Related Proteomics Reveals Lysosomal Alterations Linked to C19orf12 Mutations and Candidate Biomarkers in MPAN Patients' Fibroblasts",
"authors": "Pakula B, Wydrych A, Lebiedzinska-Arciszewska M, Jakubek-Olszewska P, Skowronska M, Kurkowska-Jastrzebska I",
"journal": "Neurobiology of Disease",
"year": "2026",
"pub_date": "Feb 2026",
"pub_type": "Original Research",
"pub_type_color": NAVY,
"doi": "10.1016/j.nbd.2025.107255",
"pmcid": None,
"open_access": False,
"relevance": "★★★★☆",
"keywords": "MPAN; autophagy; proteomics; lysosome; biomarkers; C19orf12; fibroblasts; disease severity",
"abstract": {
"Abstract": "Mitochondrial Membrane Protein-Associated Neurodegeneration (MPAN) is the third most common genetically-defined subtype of Neurodegeneration with Brain Iron Accumulation (NBIA), a group of rare, clinically heterogeneous disorders. The MPAN pathomechanism, including the link between C19orf12 mutations, iron accumulation, and metabolic alterations, is still poorly understood. While earlier research pointed to impaired autophagy in MPAN, a comprehensive understanding remains elusive. Here, we investigated the autophagy-linked proteome in primary fibroblasts derived from 18 MPAN patients and identified distinct alterations in autophagy-related protein expression. Importantly, a subset of these proteomic changes showed significant associations with disease severity, highlighting their potential relevance as biomarkers of clinical progression. Functional analyses further revealed increased lysosomal acidification as the most consistently affected autophagy-related process in MPAN fibroblasts. Notably, both proteomic and functional alterations were associated with C19orf12 mutation zygosity, underscoring its modulatory role in disease-relevant cellular pathways."
},
"clinical_relevance": "Largest proteomics dataset in MPAN (18 patients). Identifies lysosomal hyperacidification as a consistent cellular hallmark. Proteomic changes correlating with disease severity may serve as future biomarkers for clinical trial endpoints and disease monitoring."
},
{
"category": "Biomarkers & Cellular Studies",
"num": 13,
"pmid": "39419454",
"title": "Metabolic Alterations in Fibroblasts of Patients with MPAN Subtype of Neurodegeneration with Brain Iron Accumulation",
"authors": "Wydrych A, Pakula B, Jakubek-Olszewska P, Janikiewicz J, Dobosz AM, Cudna A",
"journal": "Biochimica et Biophysica Acta — Molecular Basis of Disease",
"year": "2025",
"pub_date": "Jan 2025",
"pub_type": "Original Research",
"pub_type_color": NAVY,
"doi": "10.1016/j.bbadis.2024.167541",
"pmcid": None,
"open_access": False,
"relevance": "★★★☆☆",
"keywords": "MPAN; fibroblasts; metabolic flexibility; OXPHOS; C19orf12; disease severity; cellular model",
"abstract": {
"Abstract": "Mutations in the following genes: PANK2, PLA2G6, C19orf12, WDR45, CP, FA2H, ATP13A2, FTL, DCAF17, and CoASY are associated with the development of different subtypes of inherited rare disease Neurodegeneration with Brain Iron Accumulation (NBIA). Four main subtypes — pantothenate kinase-associated neurodegeneration (PKAN), PLA2G6-associated neurodegeneration (PLAN), mitochondrial membrane protein-associated neurodegeneration (MPAN) and beta-propeller protein-associated neurodegeneration (BPAN) — are responsible for up to 82% of all NBIA cases. Here we studied fibroblasts from 11 patients with pathogenic mutations in C19orf12, and demonstrate various cellular aberrations. Differences between fibroblasts from healthy individuals and MPAN patients were potentiated when cells were grown under oxidative phosphorylation (OXPHOS) promoting conditions, suggesting impaired metabolic flexibility. The extent of some of the cellular aberrations quantitatively correlated with disease severity, suggesting their involvement in the NBIA pathomechanism."
},
"clinical_relevance": "Demonstrates impaired metabolic flexibility in MPAN patient-derived fibroblasts. Cellular phenotype severity correlates with clinical disease severity — supporting fibroblasts as a valid disease model and potential platform for drug screening."
},
]
# ── PDF Builder ─────────────────────────────────────────────────────────────────
def build_pdf(output_path):
doc = SimpleDocTemplate(
output_path,
pagesize=A4,
leftMargin=2.2*cm, rightMargin=2.2*cm,
topMargin=2.5*cm, bottomMargin=2.5*cm,
title="MPAN Literature Review — TANCON 2026",
author="Prepared for TANCON 2026",
subject="Mitochondrial Membrane Protein-Associated Neurodegeneration (MPAN) / C19orf12"
)
S = build_styles()
story = []
# ── COVER PAGE ────────────────────────────────────────────────────────────
# Top color block via table
cover_top = Table(
[[Paragraph("COMPREHENSIVE LITERATURE REVIEW", S["cover_sub"]),
Paragraph("Mitochondrial Membrane Protein-Associated<br/>Neurodegeneration (MPAN)", S["cover_title"]),
Paragraph("C19orf12-Related Neurodegeneration with Brain Iron Accumulation", S["cover_sub"]),
]],
colWidths=[W - 4.4*cm],
rowHeights=[None]
)
cover_block_data = [
[Paragraph("COMPREHENSIVE LITERATURE REVIEW", S["cover_sub"])],
[Paragraph("<b>Mitochondrial Membrane Protein-Associated<br/>Neurodegeneration (MPAN)</b>", S["cover_title"])],
[Paragraph("C19orf12-Related Neurodegeneration with Brain Iron Accumulation", S["cover_sub"])],
[Paragraph(" ", S["cover_body"])],
[Paragraph("Prepared for: TANCON 2026 — 14th Annual Conference", S["cover_body"])],
[Paragraph("Tamil Nadu & Pondicherry Association of Neurologists", S["cover_body"])],
[Paragraph("<i>\"Mind Matters: Bridging Neurology & Modern Therapeutics\"</i>", S["cover_body"])],
[Paragraph("August 28–30, 2026 | Hotel Hills, Hosur", S["cover_body"])],
[Paragraph(" ", S["cover_body"])],
[Paragraph(f"PubMed Search Date: July 14, 2026 | Papers Reviewed: 13 | Date Range: 2021–2026", S["cover_body"])],
]
cover_tbl = Table(cover_block_data, colWidths=[W - 4.4*cm])
cover_tbl.setStyle(TableStyle([
("BACKGROUND", (0, 0), (-1, -1), NAVY),
("TEXTCOLOR", (0, 0), (-1, -1), WHITE),
("ALIGN", (0, 0), (-1, -1), "CENTER"),
("VALIGN", (0, 0), (-1, -1), "MIDDLE"),
("TOPPADDING", (0, 0), (-1, 0), 28),
("BOTTOMPADDING", (0, -1), (-1, -1), 28),
("LEFTPADDING", (0, 0), (-1, -1), 20),
("RIGHTPADDING", (0, 0), (-1, -1), 20),
]))
story.append(cover_tbl)
story.append(Spacer(1, 0.6*cm))
# Stats row
stats = [
("13", "Total Papers"),
("2", "Reviews"),
("2", "Case Series"),
("3", "Case Reports"),
("4", "Basic Science"),
("2", "Biomarker Studies"),
]
stat_data = [[
Paragraph(f"<b><font color='#E8A020' size=18>{n}</font></b><br/><font size=9 color='#2C3E50'>{l}</font>", S["footer_note"])
for n, l in stats
]]
stat_tbl = Table(stat_data, colWidths=[(W - 4.4*cm) / 6] * 6)
stat_tbl.setStyle(TableStyle([
("BACKGROUND", (0, 0), (-1, -1), LBG),
("ALIGN", (0, 0), (-1, -1), "CENTER"),
("VALIGN", (0, 0), (-1, -1), "MIDDLE"),
("TOPPADDING", (0, 0), (-1, -1), 10),
("BOTTOMPADDING", (0, 0), (-1, -1), 10),
("BOX", (0, 0), (-1, -1), 1, LGRAY),
("INNERGRID", (0, 0), (-1, -1), 0.5, LGRAY),
]))
story.append(stat_tbl)
story.append(Spacer(1, 0.4*cm))
story.append(HRFlowable(width="100%", thickness=2, color=AMBER))
story.append(Spacer(1, 0.3*cm))
story.append(Paragraph(
"Searches conducted on PubMed using queries: \"MPAN\" AND \"C19orf12\", \"mitochondrial membrane protein-associated neurodegeneration\", "
"\"neurodegeneration with brain iron accumulation\" AND \"C19orf12\", limited to 2021–2026. "
"Case reports also searched with publication type filter. Papers curated for direct clinical, genetic, mechanistic, and translational relevance to MPAN.",
S["footer_note"]
))
story.append(PageBreak())
# ── QUICK REFERENCE TABLE ─────────────────────────────────────────────────
story.append(Paragraph("Quick Reference Summary", S["toc_title"]))
story.append(HRFlowable(width="100%", thickness=1.5, color=NAVY))
story.append(Spacer(1, 0.3*cm))
hdr = [
Paragraph("#", S["table_head"]),
Paragraph("Title (Abbreviated)", S["table_head"]),
Paragraph("Authors", S["table_head"]),
Paragraph("Journal / Year", S["table_head"]),
Paragraph("Type", S["table_head"]),
Paragraph("Relevance", S["table_head"]),
]
tbl_data = [hdr]
cat_colors = {
"Reviews & Updates": TEAL,
"Clinical & Genetic Case Series": PURPLE,
"Case Reports": RED,
"Pathomechanism & Basic Science": NAVY,
"Biomarkers & Cellular Studies": BLUE,
}
for p in PAPERS:
short_title = p["title"][:65] + "…" if len(p["title"]) > 65 else p["title"]
short_authors = p["authors"].split(",")[0] + " et al." if "," in p["authors"] else p["authors"]
tbl_data.append([
Paragraph(str(p["num"]), S["table_cell"]),
Paragraph(short_title, S["table_cell"]),
Paragraph(short_authors, S["table_cell"]),
Paragraph(f"{p['journal'][:22]}\n{p['year']}", S["table_cell"]),
Paragraph(p["pub_type"], S["table_cell"]),
Paragraph(p["relevance"], S["table_cell"]),
])
col_w = [0.5*cm, 6.5*cm, 3.2*cm, 2.8*cm, 2.2*cm, 1.5*cm]
ref_tbl = Table(tbl_data, colWidths=col_w, repeatRows=1)
ts = [
("BACKGROUND", (0, 0), (-1, 0), NAVY),
("TEXTCOLOR", (0, 0), (-1, 0), WHITE),
("FONTNAME", (0, 0), (-1, 0), "Helvetica-Bold"),
("FONTSIZE", (0, 0), (-1, 0), 9),
("ALIGN", (0, 0), (-1, 0), "CENTER"),
("ROWBACKGROUNDS", (0, 1), (-1, -1), [WHITE, colors.HexColor("#F4F6F7")]),
("GRID", (0, 0), (-1, -1), 0.4, LGRAY),
("FONTSIZE", (0, 1), (-1, -1), 8),
("VALIGN", (0, 0), (-1, -1), "TOP"),
("TOPPADDING", (0, 0), (-1, -1), 4),
("BOTTOMPADDING", (0, 0), (-1, -1), 4),
("LEFTPADDING", (0, 0), (-1, -1), 4),
]
ref_tbl.setStyle(TableStyle(ts))
story.append(ref_tbl)
story.append(Spacer(1, 0.4*cm))
story.append(HRFlowable(width="100%", thickness=0.5, color=LGRAY))
story.append(PageBreak())
# ── PAPER ENTRIES ─────────────────────────────────────────────────────────
current_cat = None
for p in PAPERS:
# Category header
if p["category"] != current_cat:
current_cat = p["category"]
cat_color = cat_colors.get(current_cat, NAVY)
cat_tbl = Table(
[[Paragraph(f" {current_cat.upper()}", ParagraphStyle(
"ch", fontSize=13, leading=18, textColor=WHITE,
fontName="Helvetica-Bold"
))]],
colWidths=[W - 4.4*cm]
)
cat_tbl.setStyle(TableStyle([
("BACKGROUND", (0, 0), (-1, -1), cat_color),
("TOPPADDING", (0, 0), (-1, -1), 8),
("BOTTOMPADDING", (0, 0), (-1, -1), 8),
("LEFTPADDING", (0, 0), (-1, -1), 8),
]))
story.append(Spacer(1, 0.2*cm))
story.append(cat_tbl)
story.append(Spacer(1, 0.3*cm))
# Badge + Title row
badge_color = p["pub_type_color"]
badge_tbl = Table(
[[
Paragraph(f"<b>{p['pub_type'].upper()}</b>", ParagraphStyle(
"bt", fontSize=8, textColor=WHITE, fontName="Helvetica-Bold", alignment=TA_CENTER
)),
Paragraph(f"<b>{p['num']}.</b> {p['title']}", S["paper_title"]),
]],
colWidths=[2.2*cm, W - 4.4*cm - 2.4*cm]
)
badge_tbl.setStyle(TableStyle([
("BACKGROUND", (0, 0), (0, 0), badge_color),
("ALIGN", (0, 0), (0, 0), "CENTER"),
("VALIGN", (0, 0), (-1, -1), "TOP"),
("TOPPADDING", (0, 0), (0, 0), 6),
("BOTTOMPADDING", (0, 0), (0, 0), 6),
]))
entry_parts = [badge_tbl]
# Authors / meta line
oa_badge = " [OPEN ACCESS]" if p["open_access"] else ""
pmc_str = f" | PMC: {p['pmcid']}" if p["pmcid"] else ""
meta_line = (
f"<b>Authors:</b> {p['authors']}<br/>"
f"<b>Journal:</b> {p['journal']} | <b>Published:</b> {p['pub_date']} | "
f"<b>PMID:</b> {p['pmid']} | <b>DOI:</b> {p['doi']}{pmc_str}"
f"<font color='#1A7A4A'>{oa_badge}</font>"
)
entry_parts.append(Paragraph(meta_line, S["meta"]))
# Relevance + Keywords row
rel_kw_data = [[
Paragraph(f"<b>Relevance:</b> {p['relevance']}", ParagraphStyle(
"rk", fontSize=9, fontName="Helvetica-Bold", textColor=AMBER
)),
Paragraph(f"<b>Keywords:</b> <i>{p['keywords']}</i>", S["meta"]),
]]
rk_tbl = Table(rel_kw_data, colWidths=[3*cm, W - 4.4*cm - 3.2*cm])
rk_tbl.setStyle(TableStyle([("VALIGN", (0, 0), (-1, -1), "TOP")]))
entry_parts.append(rk_tbl)
# Abstract
entry_parts.append(Spacer(1, 0.15*cm))
entry_parts.append(HRFlowable(width="100%", thickness=0.5, color=LGRAY))
entry_parts.append(Spacer(1, 0.1*cm))
for section, text in p["abstract"].items():
if section.lower() != "abstract":
entry_parts.append(Paragraph(section, S["abstract_head"]))
entry_parts.append(Paragraph(text, S["abstract_body"]))
# Clinical relevance box
entry_parts.append(Spacer(1, 0.15*cm))
clin_data = [[
Paragraph(
f"<b><font color='#1A6B72'>Clinical Relevance / Commentary:</font></b> {p['clinical_relevance']}",
S["highlight_box"]
)
]]
clin_tbl = Table(clin_data, colWidths=[W - 4.4*cm])
clin_tbl.setStyle(TableStyle([
("BACKGROUND", (0, 0), (-1, -1), colors.HexColor("#EDF4F5")),
("BOX", (0, 0), (-1, -1), 0.8, TEAL),
("TOPPADDING", (0, 0), (-1, -1), 6),
("BOTTOMPADDING", (0, 0), (-1, -1), 6),
("LEFTPADDING", (0, 0), (-1, -1), 10),
("RIGHTPADDING", (0, 0), (-1, -1), 10),
]))
entry_parts.append(clin_tbl)
entry_parts.append(Spacer(1, 0.3*cm))
entry_parts.append(HRFlowable(width="100%", thickness=0.8, color=LGRAY))
entry_parts.append(Spacer(1, 0.15*cm))
story.append(KeepTogether(entry_parts[:4]))
for part in entry_parts[4:]:
story.append(part)
story.append(PageBreak())
# ── SYNTHESIS SECTION ────────────────────────────────────────────────────
synth_header = Table(
[[Paragraph(" SYNTHESIS & KEY THEMES", ParagraphStyle(
"sh", fontSize=14, leading=18, textColor=WHITE, fontName="Helvetica-Bold"
))]],
colWidths=[W - 4.4*cm]
)
synth_header.setStyle(TableStyle([
("BACKGROUND", (0, 0), (-1, -1), DGRAY),
("TOPPADDING", (0, 0), (-1, -1), 10),
("BOTTOMPADDING", (0, 0), (-1, -1), 10),
("LEFTPADDING", (0, 0), (-1, -1), 10),
]))
story.append(synth_header)
story.append(Spacer(1, 0.4*cm))
themes = [
("1. Expanding Clinical Spectrum",
"MPAN no longer presents as a uniform disorder. Recent case series (PMID 39755877, 37605305) have documented ataxia-dominant phenotypes, late-onset mosaic presentations, and depression-first courses. The classical triad of parkinsonism + spasticity + optic atrophy is not required for diagnosis. In particular, childhood-onset MPAN may mimic hereditary spastic ataxia (SPG43), as demonstrated in the TANCON 2026 case."),
("2. Eye-of-the-Tiger Sign — Not Exclusive to PKAN",
"Traditionally associated exclusively with PKAN, the eye-of-the-tiger sign on MRI has now been documented in fewer than 10 MPAN cases globally. The TANCON 2026 case adds to this rare but growing subset. Current literature strongly supports that MRI findings alone cannot reliably distinguish MPAN from PKAN, and molecular confirmation via whole-exome sequencing is indispensable."),
("3. Whole-Exome Sequencing as Diagnostic Gold Standard",
"Multiple case reports and series (PMIDs 39755877, 35432442, 34983316) demonstrate that targeted gene panels — including SCA panels and mitochondrial genome sequencing — are routinely negative in atypical MPAN. WES is the only reliable method to identify compound heterozygous, mosaic, and de novo variants. This has significant cost and access implications in lower-resource settings."),
("4. Neuropsychiatric Features as Early Warning Signs",
"Two independent case reports (PMIDs 39523449, 35432442) document depression preceding motor symptoms by years in MPAN. Adolescent-onset depression in a patient who later develops a progressive movement disorder should prompt consideration of NBIA/MPAN in the differential, particularly when MRI shows basal ganglia changes."),
("5. Autosomal Dominant and Mosaic MPAN — A Paradigm Shift",
"MPAN was originally classified as strictly autosomal recessive. The 2023 Movement Disorders paper (PMID 37605305) definitively establishes dominant and mosaic forms. AD-MPAN shows more severe autophagy and iron metabolism defects than AR-MPAN. This changes genetic counselling practice: a single heterozygous C19orf12 variant should no longer be dismissed as a carrier state without phenotypic consideration."),
("6. Pathomechanism — Converging on Mitophagy and ER Homeostasis",
"2025–2026 basic science publications reveal two convergent mechanisms: (a) C19orf12 regulates BNIP3 turnover via liquid-liquid phase separation, controlling mitophagy (PMID 41937575); (b) C19orf12 maintains tubular ER homeostasis in axons — its loss causes RTN3-positive axonal spheroids preceding motor symptoms (PMID 41239414). These findings position mitophagy and ER quality control as therapeutic targets."),
("7. Ferroptosis as the Mode of Neuronal Death",
"PMID 35182730 establishes ferroptosis — iron-dependent oxidative cell death — as the primary mechanism of neuronal loss in MPAN. Critically, the iron chelator DFO and antioxidant NAC rescue cellular deficits in MPAN models. This provides a strong scientific rationale for iron chelation trials, currently being evaluated with deferiprone in NBIA."),
("8. Biomarkers on the Horizon",
"The 2026 proteomics study (PMID 41478510) identified lysosomal hyperacidification and specific autophagy-related proteins as candidate disease severity biomarkers in MPAN patient fibroblasts. Combined with the metabolic flexibility data (PMID 39419454), patient-derived fibroblasts are emerging as a robust model for biomarker discovery and drug screening — essential for future clinical trials."),
]
for title, text in themes:
story.append(Paragraph(f"<b>{title}</b>", ParagraphStyle(
"th", fontSize=11, leading=15, textColor=NAVY,
fontName="Helvetica-Bold", spaceBefore=10, spaceAfter=3
)))
story.append(Paragraph(text, S["body"]))
story.append(Spacer(1, 0.1*cm))
story.append(Spacer(1, 0.5*cm))
story.append(HRFlowable(width="100%", thickness=2, color=AMBER))
story.append(Spacer(1, 0.3*cm))
# ── CITATION LIST ────────────────────────────────────────────────────────
story.append(Paragraph("References (Vancouver Format)", ParagraphStyle(
"rl", fontSize=13, leading=17, textColor=NAVY, fontName="Helvetica-Bold",
spaceBefore=8, spaceAfter=8
)))
for p in PAPERS:
authors_short = p["authors"]
ref_text = (
f"<b>{p['num']}.</b> {authors_short}. {p['title']}. "
f"<i>{p['journal']}</i>. {p['year']}. "
f"doi:{p['doi']}. PMID: {p['pmid']}."
)
story.append(Paragraph(ref_text, ParagraphStyle(
"ref", fontSize=8.5, leading=13, textColor=DGRAY,
fontName="Helvetica", leftIndent=14, firstLineIndent=-14,
spaceAfter=5
)))
story.append(Spacer(1, 0.4*cm))
story.append(HRFlowable(width="100%", thickness=0.5, color=LGRAY))
story.append(Spacer(1, 0.2*cm))
story.append(Paragraph(
f"Literature review prepared for TANCON 2026 — Tamil Nadu & Pondicherry Association of Neurologists. "
f"PubMed search conducted July 14, 2026. All abstracts reproduced from original publications. "
f"This document is for educational/conference use only.",
S["footer_note"]
))
# ── PAGE NUMBERING ────────────────────────────────────────────────────────
def add_page_number(canvas, doc):
canvas.saveState()
canvas.setFont("Helvetica", 8)
canvas.setFillColor(MGRAY)
page_num = canvas.getPageNumber()
canvas.drawCentredString(W / 2, 1.2*cm, f"MPAN Literature Review — TANCON 2026 | Page {page_num}")
canvas.setStrokeColor(LGRAY)
canvas.setLineWidth(0.4)
canvas.line(2.2*cm, 1.5*cm, W - 2.2*cm, 1.5*cm)
canvas.restoreState()
doc.build(story, onFirstPage=add_page_number, onLaterPages=add_page_number)
print(f"PDF written to: {output_path}")
if __name__ == "__main__":
out = "/home/daytona/workspace/mpan-presentation/MPAN_LiteratureReview_TANCON2026.pdf"
build_pdf(out)
cd /home/daytona/workspace/mpan-presentation && python3 build_pdf.py 2>&1
Failed to create session: bad request: failed to resolve container IP after 3 attempts: no IP address found. Is the Sandbox started?
We encountered an error while processing your request. Please try again or reach out to us for help.
Create a comprehensive literature review PDF with all abstracts
ls /home/daytona/workspace/mpan-presentation/ && python3 -c "import reportlab; print('reportlab ok')" 2>&1
cd /home/daytona/workspace/mpan-presentation && python3 build_pdf.py 2>&1
ls -lh /home/daytona/workspace/mpan-presentation/MPAN_LiteratureReview_TANCON2026.pdf
MPAN LiteratureReview TANCON2026
PDF Document · PDF
| Section | Papers | Color |
|---|---|---|
| Reviews & Updates | 2 | Teal |
| Clinical & Genetic Case Series | 2 | Purple |
| Case Reports | 3 | Red |
| Pathomechanism & Basic Science | 4 | Navy |
| Biomarkers & Cellular Studies | 2 | Blue |