what optimal semen parameters ie total sperm count , prewash TMSC, post wash TMSC for IUI success
"intrauterine insemination" AND "total motile sperm count" AND threshold
optimal semen parameters IUI success total sperm count prewash postwash TMSC threshold 2024
"intrauterine insemination" AND "total motile sperm count" AND "pregnancy rate"
https://www.maleinfertilityguide.com/density-motility-and-to…
| Pre-wash TMSC | Interpretation |
|---|---|
| < 5 million | Poor prognosis; IUI success rate ~0-5%; consider moving to IVF/ICSI |
| 5-10 million | Borderline; success rates ~5-15% per cycle |
| 10-20 million | Acceptable; reasonable IUI candidate |
| ≥ 20 million | Optimal; best IUI outcomes |
Clinical use note: Pre-wash TMSC is most useful for counseling couples who have not yet attempted IUI, since post-wash counts aren't yet available.
| Post-wash TMSC | Success estimate |
|---|---|
| < 1 million | Very low success (~1-2% per cycle); proceed to IVF/ICSI |
| 1-5 million | Low-moderate success; still possible but suboptimal |
| 5-10 million | Good success; this is the commonly cited minimum "optimal" threshold |
| ≥ 10 million | High success; consistently associated with best pregnancy rates |
Post-wash TMSC is more informative for repeat cycles once a lab result is available, but the main limitation is it's not available pre-counseling for new couples.
| Parameter | Relevant threshold |
|---|---|
| Progressive motility | ≥ 32% (WHO lower reference limit); < 32% significantly reduces success |
| Morphology (strict Kruger) | Controversial - some studies show no impact if TMSC is adequate; severe teratozoospermia (< 1-2% normal forms) may still reduce IUI success |
| Abstinence | 2-5 days optimal; > 5 days reduces motility and morphology, especially in oligozoospermic men |
| Post-wash volume | 0.3-0.5 mL is ideal for insemination |
| Parameter | Minimum (proceed with caution) | Optimal |
|---|---|---|
| Pre-wash TMSC | ≥ 5 million | ≥ 20 million |
| Post-wash TMSC | ≥ 1 million | ≥ 5-10 million |
| Raw sperm concentration | ≥ 5-10 million/mL | ≥ 15 million/mL |
| Progressive motility (pre-wash) | ≥ 32% | > 50% |
refine this slide for iui outcome ppt with above information
node /home/daytona/skills/shared/scripts/fetch_images.js "https://d361swluvexzqs.cloudfront.net/chats-attachments/image-1782494768425-46ibly.png" 2>/dev/null | python3 -c "import json,sys; d=json.load(sys.stdin); print('OK' if not d[0]['error'] else d[0]['error']); open('/home/daytona/workspace/iui-slide/original.b64','w').write(d[0]['base64'])" && echo "saved"
mkdir -p /home/daytona/workspace/iui-slide && ls /home/daytona/workspace/iui-slide/
~/iui-slide/build.js
const pptxgen = require("pptxgenjs");
const fs = require("fs");
// Load the original slide image for logo extraction (we'll embed it as header)
const logoB64 = fs.readFileSync("/home/daytona/workspace/iui-slide/original.b64", "utf8");
let pres = new pptxgen();
pres.layout = "LAYOUT_16x9"; // 10" x 5.625"
pres.title = "Semen Parameters Impact on IUI Success";
let slide = pres.addSlide();
// ── Background: off-white
slide.background = { color: "F8F6F2" };
// ── Left orange accent bar
slide.addShape(pres.ShapeType.rect, {
x: 0, y: 0, w: 0.22, h: 5.625,
fill: { color: "F05A24" },
line: { color: "F05A24" }
});
// ── Right green accent bar
slide.addShape(pres.ShapeType.rect, {
x: 9.78, y: 0, w: 0.22, h: 5.625,
fill: { color: "008A4B" },
line: { color: "008A4B" }
});
// ── Top header bar (dark navy)
slide.addShape(pres.ShapeType.rect, {
x: 0.22, y: 0, w: 9.56, h: 0.72,
fill: { color: "1A2E4A" },
line: { color: "1A2E4A" }
});
// ── Logo strip: embed original image cropped to top (we use it as-is at top)
// Use the original image as a reference logo placeholder using text
slide.addText([
{ text: "AP ", options: { color: "F05A24", bold: true, fontSize: 13 } },
{ text: "ISAR ", options: { color: "FFFFFF", bold: true, fontSize: 13 } },
{ text: "CONCLAVE ", options: { color: "008A4B", bold: true, fontSize: 11 } },
{ text: "| Uniting Minds, Advancing Fertility Care", options: { color: "CCDDEE", bold: false, fontSize: 9 } }
], {
x: 0.3, y: 0.14, w: 9.2, h: 0.44,
align: "center", valign: "middle", margin: 0
});
// ── Main Title
slide.addShape(pres.ShapeType.rect, {
x: 0.22, y: 0.72, w: 9.56, h: 0.58,
fill: { color: "FFFFFF" },
line: { color: "E0E0E0", pt: 0.5 }
});
slide.addText("Semen Parameters Impact on IUI Success", {
x: 0.22, y: 0.72, w: 9.56, h: 0.58,
fontSize: 20, bold: true, color: "1A2E4A",
align: "center", valign: "middle", margin: 0,
fontFace: "Calibri"
});
// ──────────────────────────────────────────────
// LEFT COLUMN: Semen Parameters table
// ──────────────────────────────────────────────
// Section header bg
slide.addShape(pres.ShapeType.rect, {
x: 0.3, y: 1.38, w: 4.5, h: 0.32,
fill: { color: "1A2E4A" },
line: { color: "1A2E4A" }
});
slide.addText("SEMEN PARAMETERS", {
x: 0.3, y: 1.38, w: 2.2, h: 0.32,
fontSize: 10, bold: true, color: "FFFFFF",
valign: "middle", margin: 8, fontFace: "Calibri"
});
slide.addText("MINIMUM THRESHOLD", {
x: 2.5, y: 1.38, w: 2.3, h: 0.32,
fontSize: 10, bold: true, color: "F4C842",
valign: "middle", margin: 8, fontFace: "Calibri"
});
// Table rows: alternating
const paramRows = [
{ param: "Total Sperm Count", min: "> 15 mil/mL", note: "WHO ref ≥15 M/mL" },
{ param: "Prewash TMSC", min: "≥ 5 million", note: "Ideally ≥ 20 M" },
{ param: "Progressive Motility", min: "≥ 32%", note: "WHO 2021 ref" },
{ param: "Morphology (Kruger)", min: "≥ 4% normal", note: "Controversial for IUI" },
{ param: "Post-wash TMSC", min: "≥ 1 million", note: "Optimal ≥ 5-10 M" },
{ param: "DFI (selected cases)", min: "< 30%", note: "" },
{ param: "24 hr Sperm Survival", min: "> 70%", note: "" },
];
const rowH = 0.38;
const tableTop = 1.72;
paramRows.forEach((row, i) => {
const y = tableTop + i * rowH;
const bg = i % 2 === 0 ? "EDF4F8" : "FFFFFF";
// Row bg
slide.addShape(pres.ShapeType.rect, {
x: 0.3, y, w: 4.5, h: rowH,
fill: { color: bg },
line: { color: "D0DDE8", pt: 0.5 }
});
// Orange left indicator
slide.addShape(pres.ShapeType.rect, {
x: 0.3, y: y + 0.06, w: 0.05, h: rowH - 0.12,
fill: { color: i < 3 ? "F05A24" : "008A4B" },
line: { color: i < 3 ? "F05A24" : "008A4B" }
});
// Parameter name
slide.addText(row.param, {
x: 0.4, y, w: 2.05, h: rowH,
fontSize: 9.5, color: "1A2E4A", bold: false,
valign: "middle", margin: [0, 0, 0, 6], fontFace: "Calibri"
});
// Minimum value
slide.addText(row.min, {
x: 2.5, y, w: 1.5, h: rowH,
fontSize: 9.5, color: "1A2E4A", bold: true,
valign: "middle", margin: [0, 0, 0, 4], fontFace: "Calibri"
});
// Note (small)
if (row.note) {
slide.addText(row.note, {
x: 3.98, y, w: 0.82, h: rowH,
fontSize: 7.5, color: "778899", bold: false, italic: true,
valign: "middle", margin: 0, fontFace: "Calibri"
});
}
});
// ──────────────────────────────────────────────
// RIGHT COLUMN: Post-wash TMSC → CPR table
// ──────────────────────────────────────────────
// Section header
slide.addShape(pres.ShapeType.rect, {
x: 5.2, y: 1.38, w: 4.5, h: 0.32,
fill: { color: "1A2E4A" },
line: { color: "1A2E4A" }
});
slide.addText("POST-WASH TMSC", {
x: 5.2, y: 1.38, w: 2.2, h: 0.32,
fontSize: 10, bold: true, color: "F4C842",
valign: "middle", margin: 8, fontFace: "Calibri"
});
slide.addText("CPR / CYCLE", {
x: 7.4, y: 1.38, w: 2.1, h: 0.32,
fontSize: 10, bold: true, color: "F4C842",
valign: "middle", margin: 8, fontFace: "Calibri"
});
const cprRows = [
{ range: "< 1 million", cpr: "< 2%", bar: 0.02, color: "D32F2F", rec: "IVF/ICSI" },
{ range: "1 – 4 million", cpr: "4 – 8%", bar: 0.08, color: "F57C00", rec: "Caution" },
{ range: "5 – 9 million", cpr: "8 – 12%", bar: 0.12, color: "F9A825", rec: "Acceptable" },
{ range: "≥ 10 million", cpr: "≥ 15%", bar: 0.18, color: "388E3C", rec: "Optimal" },
];
const cprTop = 1.72;
const cprRowH = 0.46;
const barMaxW = 1.6;
cprRows.forEach((row, i) => {
const y = cprTop + i * cprRowH;
const bg = i % 2 === 0 ? "EDF4F8" : "FFFFFF";
// Row bg
slide.addShape(pres.ShapeType.rect, {
x: 5.2, y, w: 4.5, h: cprRowH,
fill: { color: bg },
line: { color: "D0DDE8", pt: 0.5 }
});
// TMSC range
slide.addText(row.range, {
x: 5.25, y, w: 1.5, h: cprRowH,
fontSize: 9.5, color: "1A2E4A", bold: false,
valign: "middle", margin: [0, 0, 0, 4], fontFace: "Calibri"
});
// CPR badge
slide.addShape(pres.ShapeType.roundRect, {
x: 6.75, y: y + 0.1, w: 0.72, h: cprRowH - 0.2,
fill: { color: row.color },
line: { color: row.color },
rectRadius: 0.06
});
slide.addText(row.cpr, {
x: 6.75, y: y + 0.1, w: 0.72, h: cprRowH - 0.2,
fontSize: 9, bold: true, color: "FFFFFF",
align: "center", valign: "middle", margin: 0, fontFace: "Calibri"
});
// Progress bar
const filledW = barMaxW * row.bar * 5;
slide.addShape(pres.ShapeType.rect, {
x: 7.55, y: y + 0.17, w: barMaxW, h: 0.12,
fill: { color: "D8E8F0" },
line: { color: "D8E8F0" }
});
if (filledW > 0) {
slide.addShape(pres.ShapeType.rect, {
x: 7.55, y: y + 0.17, w: Math.min(filledW, barMaxW), h: 0.12,
fill: { color: row.color },
line: { color: row.color }
});
}
// Recommendation label
slide.addText(row.rec, {
x: 7.55, y: y + 0.28, w: barMaxW, h: 0.16,
fontSize: 7.5, color: row.color, bold: true, italic: false,
align: "left", valign: "top", margin: 0, fontFace: "Calibri"
});
});
// ──────────────────────────────────────────────
// BOTTOM: Key thresholds callout box + prewash comparison
// ──────────────────────────────────────────────
const bottomY = 1.72 + 4 * cprRowH + 0.08;
// Pre-wash TMSC summary box
slide.addShape(pres.ShapeType.rect, {
x: 0.3, y: bottomY, w: 4.5, h: 0.62,
fill: { color: "FFF8E1" },
line: { color: "F4C842", pt: 1.5 }
});
slide.addText([
{ text: "Pre-wash TMSC ", options: { bold: true, color: "1A2E4A", fontSize: 9 } },
{ text: "< 5 M → IVF/ICSI | 5–10 M → Borderline | 10–20 M → Acceptable | ≥ 20 M → Optimal", options: { bold: false, color: "444444", fontSize: 8.5 } }
], {
x: 0.35, y: bottomY + 0.02, w: 4.4, h: 0.28,
valign: "middle", margin: 4, fontFace: "Calibri", wrap: true
});
slide.addText([
{ text: "IUI → IVF decision: ", options: { bold: true, color: "D32F2F", fontSize: 8.5 } },
{ text: "post-wash TMSC < 1 M | ≥ 3–6 failed cycles | bilateral tubal block", options: { bold: false, color: "444444", fontSize: 8.5 } }
], {
x: 0.35, y: bottomY + 0.31, w: 4.4, h: 0.28,
valign: "middle", margin: 4, fontFace: "Calibri"
});
// Sources box
slide.addShape(pres.ShapeType.rect, {
x: 5.2, y: bottomY, w: 4.5, h: 0.62,
fill: { color: "EDF4F8" },
line: { color: "B0C8D8", pt: 1 }
});
slide.addText([
{ text: "Sources: ", options: { bold: true, color: "1A2E4A", fontSize: 7.5 } },
{ text: "Campbell-Walsh-Wein Urology; Berek & Novak Gynecology; Smith & Tanagho Urology; Badawy A (Fertil Steril 2009); Madbouly K (Can J Urol 2017); WHO 2021 Semen Parameters", options: { bold: false, color: "556677", fontSize: 7.5 } }
], {
x: 5.25, y: bottomY + 0.04, w: 4.4, h: 0.54,
valign: "top", margin: 4, fontFace: "Calibri", wrap: true
});
// ── Footer
slide.addShape(pres.ShapeType.rect, {
x: 0.22, y: 5.42, w: 9.56, h: 0.2,
fill: { color: "1A2E4A" },
line: { color: "1A2E4A" }
});
slide.addText("AP ISAR CONCLAVE | Uniting Minds, Advancing Fertility Care", {
x: 0.22, y: 5.42, w: 9.56, h: 0.2,
fontSize: 7, color: "AABBCC", align: "center", valign: "middle", margin: 0, fontFace: "Calibri"
});
// ── Divider line between columns
slide.addShape(pres.ShapeType.line, {
x: 4.86, y: 1.38, w: 0, h: 4.1,
line: { color: "C0D0DC", pt: 1, dashType: "dash" }
});
// Save
pres.writeFile({ fileName: "/home/daytona/workspace/iui-slide/IUI_Semen_Parameters.pptx" });
console.log("Done");
cd /home/daytona/workspace/iui-slide && node build.js 2>&1
ls -lh /home/daytona/workspace/iui-slide/IUI_Semen_Parameters.pptx
cd /home/daytona/workspace/iui-slide && python /home/daytona/skills/pptx/scripts/thumbnail.py IUI_Semen_Parameters.pptx 2>&1 | head -20
node -e " // Check: 7 rows * 0.38 = 2.66 height, starts at 1.72, ends at 4.38 // Bottom box at 4.38 + 0.08 = 4.46, height 0.62 ends at 5.08 -> ok // But CPR has 4 rows * 0.46 = 1.84, starts at 1.72, ends at 3.56 -> big gap before bottom console.log('Left table bottom:', 1.72 + 7*0.38); console.log('Right table bottom:', 1.72 + 4*0.46); console.log('Bottom box starts:', 1.72 + 7*0.38 + 0.08); console.log('Bottom box ends:', 1.72 + 7*0.38 + 0.08 + 0.62); "
IUI Semen Parameters
Presentation · PPTX
| Original | Refined |
|---|---|
| Total Sperm Count: > 10 mil/ml | Corrected to > 15 mil/mL (WHO 2021 lower ref limit for concentration) |
| Prewash TMSC: > 5 million | Kept, with note: "Ideally ≥ 20 M" added |
| Progressive motility: ≥ 30% | Updated to ≥ 32% (WHO 2021 reference limit) |
| Morphology: ≥ 4% normal | Kept, added note: "Controversial for IUI" |
| Post-wash TMSC: ≥ 1 million | Kept as minimum, added note: "Optimal ≥ 5–10 M" |
| CPR table: plain text | Converted to color-coded CPR badges + visual progress bars (red/orange/yellow/green) |
| No decision guidance | Added bottom callout: prewash TMSC tiers + IUI → IVF/ICSI decision triggers |
| No sources | Added source citation bar (Campbell-Walsh, Berek & Novak, WHO 2021, key studies) |
| AP ISAR design maintained | Orange/green accent bars + navy header preserved from original |
want a table with trouble shooter and what to do in iui semen preparartion to increase pregancy chance in cases high viscous semen, delayed liquefaction, less volume, less motility, post wash recovery low count or motility , next iui precaution to increase preganncy chances for iui workshop
IUI semen preparation troubleshoot high viscosity delayed liquefaction low motility post wash recovery techniques laboratory
https://pmc.ncbi.nlm.nih.gov/articles/PMC6792139
IUI next cycle precautions improve pregnancy chance abstinence timing antioxidants lifestyle low volume hypospermia semen IUI preparation tips
~/iui-slide/build_troubleshoot.js
const pptxgen = require("pptxgenjs");
let pres = new pptxgen();
pres.layout = "LAYOUT_WIDE"; // 13.3" x 7.5" — more room for tables
pres.title = "IUI Semen Preparation Troubleshooter";
// ─────────────────────────────────────────────────
// HELPER FUNCTIONS
// ─────────────────────────────────────────────────
function addHeader(slide, W) {
// Left orange bar
slide.addShape(slide.pres ? slide.pres.ShapeType.rect : "rect", {
x: 0, y: 0, w: 0.22, h: 7.5,
fill: { color: "F05A24" }, line: { color: "F05A24" }
});
// Right green bar
slide.addShape("rect", {
x: W - 0.22, y: 0, w: 0.22, h: 7.5,
fill: { color: "008A4B" }, line: { color: "008A4B" }
});
}
// ─────────────────────────────────────────────────
// SLIDE 1 — TROUBLESHOOTER TABLE
// ─────────────────────────────────────────────────
{
const W = 13.3;
let slide = pres.addSlide();
slide.background = { color: "F5F7FA" };
// Side bars
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.22, h: 7.5, fill: { color: "F05A24" }, line: { color: "F05A24" } });
slide.addShape(pres.ShapeType.rect, { x: W - 0.22, y: 0, w: 0.22, h: 7.5, fill: { color: "008A4B" }, line: { color: "008A4B" } });
// Header bar
slide.addShape(pres.ShapeType.rect, { x: 0.22, y: 0, w: W - 0.44, h: 0.72, fill: { color: "1A2E4A" }, line: { color: "1A2E4A" } });
slide.addText([
{ text: "AP ", options: { color: "F05A24", bold: true, fontSize: 12 } },
{ text: "ISAR ", options: { color: "FFFFFF", bold: true, fontSize: 12 } },
{ text: "CONCLAVE ", options: { color: "7EC8A4", bold: true, fontSize: 11 } },
{ text: "| Uniting Minds, Advancing Fertility Care", options: { color: "AABBCC", fontSize: 9 } }
], { x: 0.3, y: 0.04, w: W - 0.6, h: 0.44, align: "center", valign: "middle", margin: 0 });
// Title
slide.addShape(pres.ShapeType.rect, { x: 0.22, y: 0.72, w: W - 0.44, h: 0.62, fill: { color: "FFFFFF" }, line: { color: "E0E0E0", pt: 0.5 } });
slide.addText("IUI Semen Preparation Troubleshooter", {
x: 0.22, y: 0.72, w: W - 0.44, h: 0.62,
fontSize: 22, bold: true, color: "1A2E4A", align: "center", valign: "middle", margin: 0, fontFace: "Calibri"
});
// Table column headers
const colX = [0.28, 2.55, 5.35, 8.85, 11.05];
const colW = [2.22, 2.75, 3.45, 2.15, 1.95];
const headers = ["PROBLEM", "CAUSE", "LABORATORY FIX", "NEXT CYCLE PRECAUTION", "ESCALATE IF"];
const headerY = 1.42;
colX.forEach((x, i) => {
slide.addShape(pres.ShapeType.rect, {
x, y: headerY, w: colW[i], h: 0.38,
fill: { color: i === 0 ? "1A2E4A" : i === 2 ? "1A4A2E" : "1A2E4A" },
line: { color: "FFFFFF", pt: 0.8 }
});
slide.addText(headers[i], {
x, y: headerY, w: colW[i], h: 0.38,
fontSize: 8.5, bold: true, color: i === 2 ? "7EC8A4" : "F4C842",
align: "center", valign: "middle", margin: [0, 2], fontFace: "Calibri"
});
});
// Table rows data
const rows = [
{
problem: "HIGH VISCOSITY",
icon: "🔴",
cause: "Prostate/seminal vesicle dysfunction; dehydration; infection",
fix: "• Aspirate through 18G needle (avoid — damages sperm)\n• Add alpha-chymotrypsin (5 mg/mL, 10 min @ 37°C)\n• Mechanical pipetting ×10-15\n• Dilute 1:1 in SpermRinse, incubate 10 min then DGC\n• Bromelain 0.1% or DTT (research labs)",
precaution: "• Well-hydrated at collection\n• Avoid >5 days abstinence\n• Oral ambroxol HCl (mucolytic) 7 days pre-IUI\n• Treat prostatitis if confirmed\n• Repeat SA after treatment",
escalate: "Persistent viscosity → consider IVF; culture for prostatitis"
},
{
problem: "DELAYED LIQUEFACTION (>60 min)",
icon: "🟠",
cause: "Low PSA secretion; seminal vesicle dysfunction; incomplete collection",
fix: "• Wait up to 60 min at 37°C before processing\n• Dilute 1:2 in HTF/SpermRinse, pipette gently\n• Alpha-chymotrypsin 5 mg/mL × 10 min\n• Switch to density gradient — avoids delayed swim-up\n• Check for completeness of collection",
precaution: "• Ensure complete specimen collection\n• 2-3 days abstinence (not >5)\n• Treat underlying seminal vesicle pathology\n• Semen culture to rule out infection",
escalate: ">60 min persistent → DFI testing; consider IVF/ICSI"
},
{
problem: "LOW VOLUME (<1.5 mL)",
icon: "🟡",
cause: "Partial collection; retrograde ejaculation; ejaculatory duct obstruction; hypogonadism; short abstinence",
fix: "• Verify complete collection (re-collect if partial)\n• Retrograde: alkalinize urine (sodium bicarb 3g OD × 3d), spin post-void urine, use best fraction\n• SpermRinse dilution → DGC wash\n• If very low, combine split ejaculate\n• Increase insemination volume to 0.5 mL",
precaution: "• Collect in 2-part containers (antegrade + retrograde)\n• Pseudoephedrine 60 mg before collection (retrograde)\n• Abstinence 48-72 hrs\n• Fructose test + TRUS to rule out obstruction",
escalate: "Azoospermia or <0.5 mL → TRUS; consider surgical sperm retrieval"
},
{
problem: "LOW MOTILITY / ASTHENOSPERMIA",
icon: "🟠",
cause: "Varicocele; oxidative stress; infection; anti-sperm antibodies; prolonged abstinence; poor collection",
fix: "• Density gradient centrifugation (DGC) over swim-up — better motile recovery\n• Pentoxifylline 3.6 mmol/L in media (20 min)\n• Minimize centrifugation force (200-300 × g)\n• Add antioxidant to media (Vit E 1 mM)\n• Avoid repeat centrifuge — use single DGC spin\n• Test viability (HOS test) if near-zero motility",
precaution: "• Oral antioxidants 3 months pre: CoQ10 200-400 mg, Vit C+E, lycopene\n• Varicocele repair if clinical grade\n• 2-day abstinence + ejaculate clearing day before\n• Avoid heat exposure (laptops, hot baths)\n• Repeat SA after 3 months lifestyle change",
escalate: "TMSC <1M post-wash → IVF/ICSI; DFI >30% → ICSI"
},
{
problem: "POST-WASH LOW COUNT\n(sperm loss at wash)",
icon: "🔴",
cause: "Severe oligozoospermia; necrospermia; technical error (wrong spin); pellet loss; pipette tip retention",
fix: "• Switch swim-up → DGC (recovers more motile cells)\n• Reduce centrifuge force: 300 × g × 10 min (not 600 × g)\n• Check pellet carefully — minimize aspiration of pellet\n• Use reduced-volume gradient (mini-DGC)\n• Add sperm to smaller final volume (0.2-0.3 mL) for concentrated inseminate\n• Consider double DGC if first wash shows adequate sperm",
precaution: "• Pre-wash TMSC assessment before each cycle\n• Freeze spare aliquot if good day (backup vial)\n• Ensure lab uses mini-DGC for oligospermia protocol\n• Discuss empirical IVF/ICSI threshold counseling",
escalate: "Post-wash <1M TMSC → IVF/ICSI; <0.5M → ICSI mandatory"
},
{
problem: "POST-WASH LOW MOTILITY\n(motility drops after wash)",
icon: "🟠",
cause: "Over-centrifugation; ROS generation; contamination with debris; seminal plasma not removed; media quality",
fix: "• Reduce centrifugation: 200-300 × g (not >500 × g)\n• Use fresh HEPES-buffered media (HTF, SpermRinse)\n• Minimize time between wash and insemination (<2 hrs)\n• Keep sample at 37°C — avoid temperature shock\n• Check media pH (7.2-7.4) and expiry\n• Do NOT re-vortex or re-centrifuge post-wash pellet\n• Add final wash with antioxidant media",
precaution: "• IUI within 1 hour of final wash (time-critical)\n• Lab QC: media osmolality check monthly\n• Document post-wash motility in every cycle\n• Consider adding N-acetyl cysteine to wash media\n• Use density gradient, not simple wash",
escalate: "Consistently <1M post-wash TMSC → IVF; motility <10% post-wash → ICSI"
}
];
const rowStartY = 1.82;
const rowHeights = [0.78, 0.72, 0.72, 0.84, 0.84, 0.78];
rows.forEach((row, i) => {
const y = rowStartY + rowHeights.slice(0, i).reduce((a, b) => a + b, 0);
const h = rowHeights[i];
const bg = i % 2 === 0 ? "EDF4FB" : "FFFFFF";
// Row backgrounds
colX.forEach((x, ci) => {
slide.addShape(pres.ShapeType.rect, {
x, y, w: colW[ci], h,
fill: { color: ci === 0 ? (i % 2 === 0 ? "E8F0F8" : "F0F5FB") : bg },
line: { color: "D0DDE8", pt: 0.5 }
});
});
// Problem cell with icon badge
const problemColor = row.icon === "🔴" ? "D32F2F" : row.icon === "🟠" ? "E65100" : "F9A825";
slide.addShape(pres.ShapeType.rect, {
x: colX[0], y, w: 0.06, h,
fill: { color: problemColor }, line: { color: problemColor }
});
slide.addText(row.problem, {
x: colX[0] + 0.1, y, w: colW[0] - 0.12, h,
fontSize: 8, bold: true, color: "1A2E4A",
valign: "middle", margin: [0, 2, 0, 2], fontFace: "Calibri", wrap: true
});
// Cause
slide.addText(row.cause, {
x: colX[1], y, w: colW[1], h,
fontSize: 7.5, color: "334455",
valign: "middle", margin: [2, 4], fontFace: "Calibri", wrap: true
});
// Lab Fix (green tint column)
slide.addShape(pres.ShapeType.rect, {
x: colX[2], y, w: colW[2], h,
fill: { color: i % 2 === 0 ? "E8F5EE" : "F0FAF4" },
line: { color: "B0D8BC", pt: 0.5 }
});
slide.addText(row.fix, {
x: colX[2], y, w: colW[2], h,
fontSize: 7, color: "1A3A25",
valign: "middle", margin: [2, 4], fontFace: "Calibri", wrap: true
});
// Next cycle precaution (amber tint)
slide.addShape(pres.ShapeType.rect, {
x: colX[3], y, w: colW[3], h,
fill: { color: i % 2 === 0 ? "FFF8E8" : "FFFCF2" },
line: { color: "E8D08C", pt: 0.5 }
});
slide.addText(row.precaution, {
x: colX[3], y, w: colW[3], h,
fontSize: 7, color: "4A3300",
valign: "middle", margin: [2, 4], fontFace: "Calibri", wrap: true
});
// Escalate
slide.addShape(pres.ShapeType.rect, {
x: colX[4], y, w: colW[4], h,
fill: { color: i % 2 === 0 ? "FDE8E8" : "FFF0F0" },
line: { color: "E8B0B0", pt: 0.5 }
});
slide.addText(row.escalate, {
x: colX[4], y, w: colW[4], h,
fontSize: 7, color: "7A0000",
valign: "middle", margin: [2, 4], fontFace: "Calibri", wrap: true, italic: true
});
});
// Footer
slide.addShape(pres.ShapeType.rect, { x: 0.22, y: 7.33, w: W - 0.44, h: 0.17, fill: { color: "1A2E4A" }, line: { color: "1A2E4A" } });
slide.addText("DGC = Density Gradient Centrifugation | TMSC = Total Motile Sperm Count | HTF = Human Tubal Fluid | DTT = Dithiothreitol | HOS = Hypo-Osmotic Swelling | ROS = Reactive Oxygen Species", {
x: 0.22, y: 7.33, w: W - 0.44, h: 0.17,
fontSize: 6, color: "7799BB", align: "center", valign: "middle", margin: 0, fontFace: "Calibri"
});
}
// ─────────────────────────────────────────────────
// SLIDE 2 — NEXT IUI CYCLE PRECAUTIONS
// ─────────────────────────────────────────────────
{
const W = 13.3;
let slide = pres.addSlide();
slide.background = { color: "F5F7FA" };
slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.22, h: 7.5, fill: { color: "F05A24" }, line: { color: "F05A24" } });
slide.addShape(pres.ShapeType.rect, { x: W - 0.22, y: 0, w: 0.22, h: 7.5, fill: { color: "008A4B" }, line: { color: "008A4B" } });
slide.addShape(pres.ShapeType.rect, { x: 0.22, y: 0, w: W - 0.44, h: 0.72, fill: { color: "1A2E4A" }, line: { color: "1A2E4A" } });
slide.addText([
{ text: "AP ", options: { color: "F05A24", bold: true, fontSize: 12 } },
{ text: "ISAR ", options: { color: "FFFFFF", bold: true, fontSize: 12 } },
{ text: "CONCLAVE ", options: { color: "7EC8A4", bold: true, fontSize: 11 } },
{ text: "| Uniting Minds, Advancing Fertility Care", options: { color: "AABBCC", fontSize: 9 } }
], { x: 0.3, y: 0.04, w: W - 0.6, h: 0.44, align: "center", valign: "middle", margin: 0 });
slide.addShape(pres.ShapeType.rect, { x: 0.22, y: 0.72, w: W - 0.44, h: 0.62, fill: { color: "FFFFFF" }, line: { color: "E0E0E0", pt: 0.5 } });
slide.addText("Precautions for Next IUI Cycle — Maximising Pregnancy Chances", {
x: 0.22, y: 0.72, w: W - 0.44, h: 0.62,
fontSize: 20, bold: true, color: "1A2E4A", align: "center", valign: "middle", margin: 0, fontFace: "Calibri"
});
// 6-panel grid layout (2 rows × 3 cols)
const panels = [
{
title: "ABSTINENCE & TIMING",
color: "1A4A2E",
accent: "008A4B",
icon: "⏱",
points: [
"2–3 days abstinence optimal (not >5 days)",
"Ejaculate 1 day before collection to clear old sperm (high DFI)",
"Collect at laboratory, not home (if >30 min transit time)",
"IUI within 1 hour of final wash — time critical",
"Trigger (hCG 5000–10,000 IU) → IUI at 36–38 hrs",
"Avoid double IUI if single-timed IUI is optimal"
]
},
{
title: "SPERM QUALITY OPTIMISATION",
color: "1A2E4A",
accent: "2979FF",
icon: "🔬",
points: [
"Oral antioxidants: CoQ10 200–400 mg, Vit C 1g, Vit E 400 IU × 3 months",
"Treat subclinical varicocele if bilateral / unilateral grade II-III",
"Avoid laptops on lap, hot baths, tight underwear",
"Lycopene 5 mg/day improves motility and morphology",
"Avoid smoking, alcohol, recreational drugs 3 months prior",
"Treat leukocytospermia with doxycycline 100 mg × 14 days"
]
},
{
title: "SEMEN COLLECTION TIPS",
color: "4A1A00",
accent: "F05A24",
icon: "🧫",
points: [
"Use sterile, sperm-safe, non-cytotoxic collection container",
"Avoid lubricants — use Pre-Seed if needed (sperm-safe)",
"Collect FULL ejaculate — first fraction richest in sperm",
"Low volume (<1.5 mL): check retrograde ejaculation",
"If high viscosity: collect in pre-warmed container",
"Document collection time accurately for lab processing"
]
},
{
title: "LABORATORY PROTOCOL UPGRADES",
color: "004A1A",
accent: "00C853",
icon: "⚗️",
points: [
"Prefer DGC over swim-up for oligospermia / asthenospermia",
"Swim-up preferred for normal / near-normal semen",
"DGC recovers more motile cells AND reduces DNA fragmentation",
"Mini-DGC for samples <5 M/mL concentration",
"Keep inseminate 0.3–0.5 mL at controlled volume",
"Add antioxidant-supplemented wash media if ROS suspected"
]
},
{
title: "OVARIAN STIMULATION STRATEGY",
color: "1A004A",
accent: "7C4DFF",
icon: "💊",
points: [
"Add ovarian stimulation if natural cycle IUI failed",
"Letrozole 2.5–5 mg × 5 days (preferred; lower multiple risk)",
"Clomiphene 50–100 mg × 5 days (alternative)",
"Gonadotropins (FSH) if clomiphene-resistant — monitor closely",
"Target 1–2 dominant follicles ≥18 mm to limit multiple pregnancy",
"Cancel cycle if ≥3 follicles ≥14 mm (OHSS risk)"
]
},
{
title: "WHEN TO ESCALATE TO IVF/ICSI",
color: "4A001A",
accent: "D32F2F",
icon: "⚠️",
points: [
"Post-wash TMSC < 1 million on ≥2 cycles",
"Failed 3–6 IUI cycles with adequate parameters",
"DFI > 30% (ICSI preferred)",
"Female age ≥38 yrs — limit IUI to 2–3 cycles max",
"Bilateral tubal disease, severe endometriosis",
"Persistent severe asthenospermia (<5% motility)"
]
}
];
const panW = (W - 0.6) / 3;
const panH = 2.82;
const startY = 1.42;
panels.forEach((panel, idx) => {
const col = idx % 3;
const row = Math.floor(idx / 3);
const x = 0.28 + col * (panW + 0.04);
const y = startY + row * (panH + 0.06);
// Panel border + background
slide.addShape(pres.ShapeType.rect, {
x, y, w: panW, h: panH,
fill: { color: "FFFFFF" },
line: { color: panel.accent, pt: 1.5 }
});
// Title bar
slide.addShape(pres.ShapeType.rect, {
x, y, w: panW, h: 0.38,
fill: { color: panel.color },
line: { color: panel.color }
});
slide.addText(`${panel.icon} ${panel.title}`, {
x: x + 0.06, y, w: panW - 0.1, h: 0.38,
fontSize: 9, bold: true, color: "FFFFFF",
valign: "middle", margin: [0, 4], fontFace: "Calibri"
});
// Bullet points
const bullets = panel.points.map((pt, pi) => ({
text: pt,
options: {
bullet: { type: "number", style: "arabicPeriod", startAt: pi + 1 },
color: "1A2E4A",
fontSize: 8.2,
breakLine: pi < panel.points.length - 1,
fontFace: "Calibri"
}
}));
slide.addText(bullets, {
x: x + 0.08, y: y + 0.42, w: panW - 0.18, h: panH - 0.5,
valign: "top", margin: [2, 4], wrap: true
});
});
// Footer
slide.addShape(pres.ShapeType.rect, { x: 0.22, y: 7.33, w: W - 0.44, h: 0.17, fill: { color: "1A2E4A" }, line: { color: "1A2E4A" } });
slide.addText("Sources: Campbell-Walsh-Wein Urology | Berek & Novak Gynecology | WHO Semen Manual 2021 | Cochrane Review PMC6792139 | Tau Andrology 2024 (Ejaculatory frequency) | Madbouly K, Can J Urol 2017", {
x: 0.22, y: 7.33, w: W - 0.44, h: 0.17,
fontSize: 6, color: "7799BB", align: "center", valign: "middle", margin: 0, fontFace: "Calibri"
});
}
// ─────────────────────────────────────────────────
// SAVE
// ─────────────────────────────────────────────────
pres.writeFile({ fileName: "/home/daytona/workspace/iui-slide/IUI_Troubleshooter.pptx" });
console.log("Done");
cd /home/daytona/workspace/iui-slide && node build_troubleshoot.js 2>&1
cd /home/daytona/workspace/iui-slide && python /home/daytona/skills/pptx/scripts/thumbnail.py IUI_Troubleshooter.pptx 2>&1
IUI Troubleshooter
Presentation · PPTX
| Problem | Cause | Lab Fix | Next Cycle Precaution | Escalate If |
|---|---|---|---|---|
| High Viscosity 🔴 | Prostate/seminal vesicle dysfunction, dehydration | Alpha-chymotrypsin 5 mg/mL × 10 min; mechanical pipetting; 1:1 SpermRinse dilution + DGC | Oral ambroxol HCl 7d pre-IUI; well-hydrated; treat prostatitis | Persistent → IVF |
| Delayed Liquefaction 🟠 | Low PSA; seminal vesicle issue | Wait 60 min @ 37°C; dilute 1:2; chymotrypsin; switch to DGC | 2-3 day abstinence; semen culture; complete collection | >60 min persistent → DFI test → IVF/ICSI |
| Low Volume (<1.5 mL) 🟡 | Partial collection; retrograde EJ; obstruction | Alkalinize urine + spin post-void urine; combine fractions | Split-collection containers; pseudoephedrine 60 mg; TRUS | Azoospermia → surgical retrieval |
| Low Motility 🟠 | Varicocele; oxidative stress; infection | DGC over swim-up; pentoxifylline; gentle spin 200-300 × g | CoQ10 + Vit C/E × 3 months; varicocele repair; ejaculate-clearing day before | Post-wash TMSC <1M → IVF/ICSI |
| Post-wash Low Count 🔴 | Oligospermia; pellet loss; wrong spin | Mini-DGC; reduce to 300 × g; concentrated 0.2-0.3 mL inseminate | Pre-wash TMSC assessment every cycle; freeze backup aliquot | <1M → IVF; <0.5M → ICSI mandatory |
| Post-wash Low Motility 🟠 | Over-centrifugation; ROS; media quality | 200-300 × g only; HEPES media; inseminate within 1 hr; check pH 7.2-7.4 | IUI within 1 hr of wash; NAC in wash media; DGC standard | Consistently <1M → IVF; <10% motility → ICSI |
unable to open , give information
| Criterion | Action |
|---|---|
| Post-wash TMSC < 1 million on ≥2 cycles | Proceed to IVF |
| Failed 3-6 IUI cycles with adequate parameters | Move to IVF |
| DFI > 30% | ICSI preferred over IUI |
| Female age ≥38 years | Limit to 2-3 IUI cycles max, then IVF |
| Bilateral tubal disease / severe endometriosis | Skip IUI → directly IVF |
| Persistent severe asthenospermia (<5% motility) | ICSI |
| Post-wash TMSC < 0.5 million | ICSI mandatory |