Kindly convert this into an attractive ppt for post graduate pharmacology residents with appropriate visuals and grpahics

Reading File
Reading File
Reading File
Running Command

cd /home/daytona/workspace/attachments/882bd931-84a0-4dde-a66e-e7d7c7f143a7 && pandoc INTRODUCTIO1.docx -o /tmp/intro_content.md && cat /tmp/intro_content.md

Searching Images

history of pharmacology timeline ancient to modern

Searching Images

penicillin discovery Alexander Fleming antibiotic

Searching Images

drug receptor interaction pharmacodynamics

Running Command

mkdir -p /home/daytona/workspace/pharmacology-ppt && ls /home/daytona/workspace/pharmacology-ppt/

Writing File

~/pharmacology-ppt/create_ppt.js

const pptxgen = require("pptxgenjs");
const { execSync } = require("child_process");

// ─────────────────────────────────────────────
// FETCH IMAGES
// ─────────────────────────────────────────────
const imageUrls = [
  "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_8d3d0d34708fa276dcdadb6c0bbf6bc3d01526dbf186ff656c9296834b509cc1.jpg", // cancer immunotherapy timeline
  "https://cdn.orris.care/cdss_images/HARRISON_1763035966873_8460ba69-de47-4ffd-8e86-a36f06bb7d86.png", // penicillin agar plate
  "https://cdn.orris.care/cdss_images/pmc_clinical_VQA_8b4c566947e256d817c2f50dc49147342eb538f04b14e3d4526c5096bcb7c75a.jpg", // receptor pharmacodynamics
];

let imgs = [];
try {
  const result = execSync(
    `node /home/daytona/skills/shared/scripts/fetch_images.js ${imageUrls.map(u => `"${u}"`).join(" ")}`,
    { maxBuffer: 50 * 1024 * 1024 }
  ).toString();
  imgs = JSON.parse(result);
} catch (e) {
  console.error("Image fetch error:", e.message);
  imgs = imageUrls.map(() => ({ base64: null, error: "failed" }));
}

// ─────────────────────────────────────────────
// COLOUR PALETTE  (deep navy + gold accent)
// ─────────────────────────────────────────────
const NAVY      = "0A1628";   // dominant dark bg
const NAVY2     = "0D1F3C";   // slightly lighter navy
const NAVY3     = "152A50";   // card / section bg
const GOLD      = "D4A843";   // primary accent
const GOLD_LT   = "F0C96A";   // lighter gold for headings
const WHITE     = "FFFFFF";
const OFFWHITE  = "E8EDF4";
const TEAL      = "2FBFBD";   // secondary accent
const TEAL_LT   = "5DD9D7";
const LIGHT_GRAY = "B0BEC5";
const CRIMSON   = "C0392B";
const GREEN     = "27AE60";

let pres = new pptxgen();
pres.layout = "LAYOUT_16x9";
pres.author  = "Pharmacology Department";
pres.title   = "History & Evolution of Pharmacology";

// ─────────────────────────────────────────────
// HELPER: full dark background
// ─────────────────────────────────────────────
function darkBg(slide) {
  slide.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 10, h: 5.625, fill: { color: NAVY }, line: { color: NAVY } });
}
function addDivider(slide, x, y, w, color = GOLD) {
  slide.addShape(pres.ShapeType.rect, { x, y, w, h: 0.04, fill: { color }, line: { color } });
}
function sectionBadge(slide, text, x, y) {
  slide.addShape(pres.ShapeType.roundRect, { x, y, w: 2.4, h: 0.32, fill: { color: TEAL }, line: { color: TEAL }, rectRadius: 0.12 });
  slide.addText(text, { x, y, w: 2.4, h: 0.32, fontSize: 9, bold: true, color: NAVY, align: "center", valign: "middle", margin: 0 });
}
function slideTitle(slide, text, y = 0.32) {
  slide.addText(text, { x: 0.5, y, w: 9, h: 0.55, fontSize: 24, bold: true, color: GOLD_LT, fontFace: "Calibri", align: "left", margin: 0 });
  addDivider(slide, 0.5, y + 0.58, 9);
}
function bulletBox(slide, items, x, y, w, h, opts = {}) {
  const textArr = items.map((item, i) => ({
    text: item,
    options: { bullet: { indent: 15 }, breakLine: i < items.length - 1, fontSize: opts.fontSize || 11, color: opts.color || OFFWHITE, bold: false }
  }));
  slide.addText(textArr, { x, y, w, h, fontFace: "Calibri", valign: "top", margin: [4, 8, 4, 8], ...opts });
}
function card(slide, x, y, w, h, color = NAVY3) {
  slide.addShape(pres.ShapeType.roundRect, { x, y, w, h, fill: { color }, line: { color: TEAL, pt: 0.7 }, rectRadius: 0.1 });
}
function goldCard(slide, x, y, w, h) {
  slide.addShape(pres.ShapeType.roundRect, { x, y, w, h, fill: { color: GOLD }, line: { color: GOLD_LT, pt: 0.7 }, rectRadius: 0.1 });
}

// ═══════════════════════════════════════════════════════
// SLIDE 1 — TITLE SLIDE
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);

  // decorative gradient strip (left side)
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: GOLD }, line: { color: GOLD } });
  s.addShape(pres.ShapeType.rect, { x: 0.18, y: 0, w: 0.06, h: 5.625, fill: { color: TEAL }, line: { color: TEAL } });

  // top banner
  s.addShape(pres.ShapeType.rect, { x: 0.24, y: 0, w: 9.76, h: 1.1, fill: { color: NAVY2 }, line: { color: NAVY2 } });
  s.addText("DEPARTMENT OF PHARMACOLOGY", { x: 0.5, y: 0.12, w: 9, h: 0.35, fontSize: 10, bold: true, color: TEAL, charSpacing: 3, align: "left", margin: 0, fontFace: "Calibri" });
  s.addText("Post-Graduate Residency Programme", { x: 0.5, y: 0.48, w: 9, h: 0.3, fontSize: 11, color: LIGHT_GRAY, align: "left", margin: 0, fontFace: "Calibri", italic: true });
  addDivider(s, 0.5, 1.0, 9, GOLD);

  // main title
  s.addText("HISTORY &\nEVOLUTION OF\nPHARMACOLOGY", {
    x: 0.5, y: 1.2, w: 5.8, h: 2.6,
    fontSize: 36, bold: true, color: GOLD_LT,
    fontFace: "Calibri", align: "left", valign: "top", margin: 0,
    lineSpacingMultiple: 1.15
  });

  // subtitle
  s.addText("From Ancient Herbs to Precision Medicine", {
    x: 0.5, y: 3.85, w: 6, h: 0.5,
    fontSize: 14, color: OFFWHITE, italic: true, margin: 0,
    fontFace: "Calibri", align: "left"
  });

  // decorative molecule circles (right side)
  const circles = [
    { x: 6.8, y: 0.5, w: 1.4, h: 1.4, color: NAVY3 },
    { x: 7.9, y: 1.5, w: 1.8, h: 1.8, color: NAVY3 },
    { x: 6.5, y: 2.1, w: 1.0, h: 1.0, color: NAVY2 },
    { x: 7.5, y: 3.2, w: 2.2, h: 2.2, color: NAVY3 },
  ];
  circles.forEach(c => {
    s.addShape(pres.ShapeType.ellipse, { x: c.x, y: c.y, w: c.w, h: c.h, fill: { color: c.color }, line: { color: TEAL, pt: 1.2 } });
  });
  s.addText("Rx", { x: 7.7, y: 1.9, w: 1.5, h: 0.9, fontSize: 38, bold: true, color: GOLD, align: "center", margin: 0, fontFace: "Calibri" });
  s.addText("⚗", { x: 6.55, y: 2.1, w: 0.9, h: 0.9, fontSize: 22, color: TEAL_LT, align: "center", margin: 0 });

  // bottom strip
  s.addShape(pres.ShapeType.rect, { x: 0.24, y: 5.25, w: 9.76, h: 0.375, fill: { color: NAVY2 }, line: { color: NAVY2 } });
  s.addText(`Introduction to Pharmacology  |  PG Pharmacology Residents  |  2026`, {
    x: 0.5, y: 5.27, w: 9.2, h: 0.3,
    fontSize: 8.5, color: LIGHT_GRAY, align: "left", margin: 0, fontFace: "Calibri"
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 2 — AGENDA / LECTURE OUTLINE
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: GOLD }, line: { color: GOLD } });
  sectionBadge(s, "LECTURE OVERVIEW", 0.3, 0.15);
  slideTitle(s, "What We Will Cover Today", 0.55);

  const topics = [
    ["01", "Definition & Scope of Pharmacology", TEAL],
    ["02", "Ancient & Medieval Contributions", GOLD],
    ["03", "Classical Greek Era & Renaissance", TEAL],
    ["04", "Early Scientific Foundations (17th–18th C)", GOLD],
    ["05", "Academic Foundation: Buchheim & Schmiedeberg", TEAL],
    ["06", "Evolution of Modern Pharmacology", GOLD],
    ["07", "Advancements: mAbs, CRISPR, AI", TEAL],
    ["08", "Current & Future Challenges", GOLD],
  ];

  topics.forEach((t, i) => {
    const row = Math.floor(i / 2);
    const col = i % 2;
    const x = 0.35 + col * 4.8;
    const y = 1.1 + row * 1.08;
    card(s, x, y, 4.45, 0.88);
    s.addShape(pres.ShapeType.ellipse, { x: x + 0.1, y: y + 0.18, w: 0.5, h: 0.5, fill: { color: t[2] }, line: { color: t[2] } });
    s.addText(t[0], { x: x + 0.1, y: y + 0.18, w: 0.5, h: 0.5, fontSize: 10, bold: true, color: NAVY, align: "center", valign: "middle", margin: 0 });
    s.addText(t[1], { x: x + 0.72, y: y + 0.2, w: 3.6, h: 0.48, fontSize: 10.5, bold: false, color: OFFWHITE, align: "left", valign: "middle", margin: 0, fontFace: "Calibri" });
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 3 — DEFINITIONS
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: TEAL }, line: { color: TEAL } });
  sectionBadge(s, "DEFINITIONS", 0.3, 0.15);
  slideTitle(s, "What is Pharmacology?", 0.55);

  // Etymology box
  card(s, 0.35, 1.1, 9.3, 0.75, NAVY3);
  s.addText([
    { text: "Etymology: ", options: { bold: true, color: GOLD, fontSize: 13 } },
    { text: '"pharmakon"', options: { bold: true, color: TEAL_LT, italic: true, fontSize: 13 } },
    { text: " (Greek: drug/poison)  +  ", options: { color: OFFWHITE, fontSize: 13 } },
    { text: '"logos"', options: { bold: true, color: TEAL_LT, italic: true, fontSize: 13 } },
    { text: " (Greek: study/knowledge)", options: { color: OFFWHITE, fontSize: 13 } },
  ], { x: 0.45, y: 1.15, w: 9.1, h: 0.65, valign: "middle", margin: 4 });

  // Three definition cards
  const defs = [
    {
      title: "PHARMACOLOGY",
      color: GOLD,
      body: "Study of substances that interact with living systems through chemical processes — especially by binding to regulatory molecules and activating or inhibiting normal body processes."
    },
    {
      title: "PHARMACOKINETICS",
      color: TEAL,
      body: "What the body does to the drug — absorption, distribution, metabolism & excretion (ADME). Describes the movement of drugs through the body after administration."
    },
    {
      title: "PHARMACODYNAMICS",
      color: TEAL_LT,
      body: "What the drug does to the body — biochemical & physiological effects, mechanisms of action, and how drugs produce therapeutic and adverse effects."
    },
  ];

  defs.forEach((d, i) => {
    const x = 0.35 + i * 3.15;
    s.addShape(pres.ShapeType.roundRect, { x, y: 2.0, w: 3.0, h: 2.9, fill: { color: NAVY3 }, line: { color: d.color, pt: 1.5 }, rectRadius: 0.12 });
    s.addShape(pres.ShapeType.rect, { x, y: 2.0, w: 3.0, h: 0.45, fill: { color: d.color }, line: { color: d.color } });
    s.addText(d.title, { x, y: 2.0, w: 3.0, h: 0.45, fontSize: 10, bold: true, color: NAVY, align: "center", valign: "middle", margin: 0, fontFace: "Calibri" });
    s.addText(d.body, { x: x + 0.1, y: 2.5, w: 2.8, h: 2.3, fontSize: 10, color: OFFWHITE, align: "left", valign: "top", margin: 4, fontFace: "Calibri" });
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 4 — ANCIENT CONTRIBUTIONS
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: GOLD }, line: { color: GOLD } });
  sectionBadge(s, "EARLY CONTRIBUTIONS", 0.3, 0.15);
  slideTitle(s, "Ancient & Medieval Pharmacology", 0.55);

  const anc = [
    {
      era: "Ancient Egypt\n~1550 BCE",
      title: "Ebers Papyrus",
      body: "One of the oldest medical documents — detailed herbal remedies, surgical practices, and early pharmaceutical formulations.",
      color: GOLD
    },
    {
      era: "Ancient India",
      title: "Ayurvedic Pharmacology",
      body: "Charaka Samhita: diseases, medicinal plants, drug formulations.\nRasa Shastra: metals, minerals, mercury — early pharmaceutical chemistry.",
      color: TEAL
    },
    {
      era: "Ancient China\n~2nd C BCE",
      title: "Huangdi Neijing",
      body: "The Yellow Emperor's Inner Canon: Yin-Yang balance, Qi, herbal medicine, acupuncture — foundational text of Traditional Chinese Medicine.",
      color: GOLD_LT
    },
  ];

  anc.forEach((a, i) => {
    const x = 0.3 + i * 3.2;
    s.addShape(pres.ShapeType.roundRect, { x, y: 1.12, w: 3.0, h: 3.9, fill: { color: NAVY3 }, line: { color: a.color, pt: 1.2 }, rectRadius: 0.12 });
    // era badge
    s.addShape(pres.ShapeType.roundRect, { x: x + 0.15, y: 1.22, w: 2.7, h: 0.65, fill: { color: a.color }, line: { color: a.color }, rectRadius: 0.08 });
    s.addText(a.era, { x: x + 0.15, y: 1.22, w: 2.7, h: 0.65, fontSize: 9.5, bold: true, color: NAVY, align: "center", valign: "middle", margin: 0 });
    s.addText(a.title, { x: x + 0.12, y: 2.0, w: 2.75, h: 0.4, fontSize: 12, bold: true, color: a.color, align: "left", margin: 0 });
    s.addText(a.body, { x: x + 0.12, y: 2.45, w: 2.75, h: 2.35, fontSize: 10, color: OFFWHITE, align: "left", valign: "top", margin: 4 });
  });

  // key takeaway
  s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 5.1, w: 9.4, h: 0.38, fill: { color: NAVY2 }, line: { color: GOLD, pt: 0.5 }, rectRadius: 0.06 });
  s.addText("⭐  Key Insight: Ancient pharmacology was empirical — symptoms observed, plant remedies applied, and knowledge passed down through texts.", {
    x: 0.4, y: 5.12, w: 9.2, h: 0.32, fontSize: 9, color: GOLD_LT, align: "left", valign: "middle", margin: 0, italic: true
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 5 — GREEK ERA & RENAISSANCE
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: TEAL }, line: { color: TEAL } });
  sectionBadge(s, "GREEK ERA & RENAISSANCE", 0.3, 0.15);
  slideTitle(s, "Classical Greek Era & Renaissance Breakthrough", 0.55);

  const scholars = [
    {
      name: "Dioscorides\n(1st century CE)",
      work: "De Materia Medica",
      contrib: "Described hundreds of medicinal plants, animal products, & minerals. Standard reference for >1500 years in Europe & Middle East.",
      color: TEAL
    },
    {
      name: "Claudius Galen\n(Roman era)",
      work: "Galenicals",
      contrib: "Systematic study of drugs, anatomy & therapeutics. Medicinal formulations from plant, animal & mineral sources — dominated practice for centuries.",
      color: GOLD
    },
    {
      name: "Paracelsus\n(1493–1541)",
      work: "Renaissance Breakthrough",
      contrib: "Emphasized chemical remedies over humour theory.\n\n\"All things are poison… only the dose makes a thing not a poison\"\n— Foundation of toxicology & dose-response.",
      color: TEAL_LT
    },
  ];

  scholars.forEach((sc, i) => {
    const x = 0.3 + i * 3.2;
    card(s, x, 1.1, 3.0, 4.3);
    s.addShape(pres.ShapeType.ellipse, { x: x + 1.1, y: 1.2, w: 0.8, h: 0.8, fill: { color: sc.color }, line: { color: sc.color } });
    s.addText(["⚕","📜","⚗"][i], { x: x + 1.1, y: 1.2, w: 0.8, h: 0.8, fontSize: 22, align: "center", valign: "middle", margin: 0 });
    s.addText(sc.name, { x: x + 0.1, y: 2.1, w: 2.8, h: 0.6, fontSize: 10.5, bold: true, color: sc.color, align: "center", margin: 0 });
    s.addText(sc.work, { x: x + 0.1, y: 2.7, w: 2.8, h: 0.3, fontSize: 9.5, bold: true, color: GOLD_LT, align: "center", margin: 0, italic: true });
    addDivider(s, x + 0.2, 3.05, 2.6, sc.color);
    s.addText(sc.contrib, { x: x + 0.12, y: 3.1, w: 2.76, h: 2.1, fontSize: 9.5, color: OFFWHITE, align: "left", valign: "top", margin: 4 });
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 6 — 17th–18th CENTURY
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: GOLD }, line: { color: GOLD } });
  sectionBadge(s, "EARLY SCIENTIFIC ERA", 0.3, 0.15);
  slideTitle(s, "Early Scientific Foundations  (17th – 18th Century)", 0.55);

  // Timeline bar
  s.addShape(pres.ShapeType.rect, { x: 0.5, y: 2.6, w: 9.0, h: 0.06, fill: { color: GOLD }, line: { color: GOLD } });

  const events = [
    { year: "1628", name: "William Harvey", detail: "Discovery of blood circulation\n→ opened door for IV drug delivery", x: 0.5 },
    { year: "1660s", name: "Robert Boyle", detail: "First IV drug injections\ndirectly into animal bloodstream", x: 2.8 },
    { year: "1785", name: "William Withering", detail: "\"Account of the Foxglove\"\nDigitalis for dropsy (edema)\n→ birth of clinical pharmacology", x: 5.1 },
    { year: "1804", name: "Friedrich Sertürner", detail: "Isolated morphine from opium\n→ first alkaloid isolation\n→ dawn of drug purification", x: 7.4 },
  ];

  events.forEach((e, i) => {
    const dotColor = i % 2 === 0 ? GOLD : TEAL;
    // dot on timeline
    s.addShape(pres.ShapeType.ellipse, { x: e.x + 0.7, y: 2.5, w: 0.26, h: 0.26, fill: { color: dotColor }, line: { color: dotColor } });
    // card above or below
    const above = i % 2 === 0;
    const cy = above ? 1.0 : 2.95;
    card(s, e.x, cy, 2.15, above ? 1.35 : 1.55, NAVY3);
    s.addShape(pres.ShapeType.roundRect, { x: e.x, cy, w: 2.15, h: 0.32, fill: { color: dotColor }, line: { color: dotColor }, rectRadius: 0.06 });
    s.addText(e.year, { x: e.x, y: cy, w: 2.15, h: 0.32, fontSize: 11, bold: true, color: NAVY, align: "center", valign: "middle", margin: 0 });
    s.addText(e.name, { x: e.x + 0.06, y: cy + 0.34, w: 2.03, h: 0.3, fontSize: 9.5, bold: true, color: dotColor, align: "left", margin: 0 });
    s.addText(e.detail, { x: e.x + 0.06, y: cy + 0.64, w: 2.03, h: 0.85, fontSize: 8.5, color: OFFWHITE, align: "left", valign: "top", margin: 2 });
  });

  // Aspirin + Wöhler row at bottom
  const rows = [
    { label: "1828 — Friedrich Wöhler", text: "Synthesised urea from inorganic sources → overthrew vitalism → founded organic chemistry & modern drug synthesis", color: TEAL },
    { label: "1897 — Felix Hoffmann (Bayer)", text: "Synthesised acetylsalicylic acid (Aspirin) → first blockbuster synthetic drug; demonstrated industrial drug production at scale", color: GOLD },
  ];
  rows.forEach((r, i) => {
    card(s, 0.35 + i * 4.7, 4.7, 4.4, 0.75, NAVY3);
    s.addText(r.label, { x: 0.45 + i * 4.7, y: 4.73, w: 4.2, h: 0.28, fontSize: 9.5, bold: true, color: r.color, align: "left", margin: 0 });
    s.addText(r.text, { x: 0.45 + i * 4.7, y: 5.0, w: 4.2, h: 0.38, fontSize: 8.5, color: OFFWHITE, align: "left", valign: "top", margin: 2 });
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 7 — ACADEMIC FOUNDATION
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: TEAL }, line: { color: TEAL } });
  sectionBadge(s, "ACADEMIC FOUNDATION", 0.3, 0.15);
  slideTitle(s, "Founders of Experimental Pharmacology", 0.55);

  // Buchheim
  card(s, 0.3, 1.1, 4.4, 3.95);
  s.addShape(pres.ShapeType.ellipse, { x: 1.8, y: 1.22, w: 0.95, h: 0.95, fill: { color: TEAL }, line: { color: TEAL_LT, pt: 2 } });
  s.addText("🔬", { x: 1.8, y: 1.22, w: 0.95, h: 0.95, fontSize: 28, align: "center", valign: "middle", margin: 0 });
  s.addText("Rudolf Buchheim", { x: 0.4, y: 2.28, w: 4.2, h: 0.38, fontSize: 14, bold: true, color: TEAL_LT, align: "center", margin: 0 });
  s.addText("1820 – 1879", { x: 0.4, y: 2.65, w: 4.2, h: 0.25, fontSize: 9.5, color: GOLD, align: "center", margin: 0, italic: true });
  addDivider(s, 0.5, 2.95, 4.0, TEAL);
  bulletBox(s, [
    "Founder of Experimental Pharmacology",
    "Established first pharmacology laboratory at University of Dorpat (1847)",
    "Introduced scientific & laboratory-based drug study",
    "Transformed pharmacology into an independent scientific discipline",
  ], 0.4, 3.0, 4.1, 1.9, { fontSize: 10 });

  // Schmiedeberg
  card(s, 5.0, 1.1, 4.7, 3.95);
  s.addShape(pres.ShapeType.ellipse, { x: 6.55, y: 1.22, w: 0.95, h: 0.95, fill: { color: GOLD }, line: { color: GOLD_LT, pt: 2 } });
  s.addText("🏛", { x: 6.55, y: 1.22, w: 0.95, h: 0.95, fontSize: 28, align: "center", valign: "middle", margin: 0 });
  s.addText("Oswald Schmiedeberg", { x: 5.1, y: 2.28, w: 4.5, h: 0.38, fontSize: 14, bold: true, color: GOLD_LT, align: "center", margin: 0 });
  s.addText("1838 – 1921  |  \"Father of Modern Pharmacology\"", { x: 5.1, y: 2.65, w: 4.5, h: 0.25, fontSize: 9.5, color: TEAL, align: "center", margin: 0, italic: true });
  addDivider(s, 5.1, 2.95, 4.5, GOLD);
  bulletBox(s, [
    "Student of Rudolf Buchheim",
    "Established pharmacology institute at University of Strasbourg",
    "Trained pharmacologists from across the world",
    "Emphasized experimental methods; established pharmacology as an independent medical science",
  ], 5.1, 3.0, 4.5, 1.9, { fontSize: 10 });

  // RAM NATH CHOPRA footnote
  s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 5.1, w: 9.4, h: 0.38, fill: { color: NAVY2 }, line: { color: GOLD, pt: 0.5 }, rectRadius: 0.06 });
  s.addText("🇮🇳  Col. Ram Nath Chopra (1882–1973) — Father of Indian Pharmacology: pioneered indigenous drug research & modern pharmacology in India", {
    x: 0.4, y: 5.12, w: 9.2, h: 0.32, fontSize: 9, color: GOLD_LT, align: "left", valign: "middle", margin: 0, italic: true
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 8 — MAGIC BULLET & ANTIBIOTICS
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: GOLD }, line: { color: GOLD } });
  sectionBadge(s, "EVOLUTION OF MODERN PHARMACOLOGY", 0.3, 0.15);
  slideTitle(s, "The Magic Bullet Theory & Antibiotic Era", 0.55);

  // left: Magic Bullet
  card(s, 0.3, 1.1, 4.4, 4.25);
  s.addText("🎯  Paul Ehrlich & the\n\"Magic Bullet\" Theory", { x: 0.4, y: 1.15, w: 4.2, h: 0.72, fontSize: 13, bold: true, color: GOLD_LT, align: "left", valign: "middle", margin: 0 });
  addDivider(s, 0.4, 1.9, 4.1, GOLD);
  bulletBox(s, [
    "Proposed chemicals could selectively target disease-causing organisms without harming normal cells",
    "Proved via Arsphenamine (Salvarsan, 1909) — first antimicrobial drug for syphilis (Treponema pallidum)",
    "\"Corpora non agunt nisi fixata\" — substances cannot act unless bound",
    "Founded modern chemotherapy, receptor theory & rational drug design",
  ], 0.4, 2.0, 4.2, 3.2, { fontSize: 10 });

  // right: Antibiotic Era
  card(s, 5.0, 1.1, 4.7, 4.25);
  s.addText("🧫  The Antibiotic Era", { x: 5.1, y: 1.15, w: 4.5, h: 0.5, fontSize: 13, bold: true, color: TEAL_LT, align: "left", valign: "middle", margin: 0 });
  addDivider(s, 5.1, 1.68, 4.5, TEAL);
  const abxEvents = [
    { year: "1928", text: "Fleming discovers Penicillin (Penicillium notatum inhibits bacteria)" },
    { year: "1940s", text: "Florey & Chain purify penicillin — clinical use in WWII" },
    { year: "1943", text: "Waksman isolates Streptomycin — first drug for tuberculosis" },
    { year: "1950s+", text: "Tetracyclines, chloramphenicol, erythromycin, cephalosporins discovered" },
  ];
  abxEvents.forEach((ab, i) => {
    const ey = 1.78 + i * 0.82;
    s.addShape(pres.ShapeType.roundRect, { x: 5.1, y: ey, w: 0.7, h: 0.28, fill: { color: TEAL }, line: { color: TEAL }, rectRadius: 0.06 });
    s.addText(ab.year, { x: 5.1, y: ey, w: 0.7, h: 0.28, fontSize: 8.5, bold: true, color: NAVY, align: "center", valign: "middle", margin: 0 });
    s.addText(ab.text, { x: 5.85, y: ey, w: 3.75, h: 0.55, fontSize: 9.5, color: OFFWHITE, align: "left", valign: "middle", margin: 2 });
    if (i < abxEvents.length - 1)
      s.addShape(pres.ShapeType.rect, { x: 5.42, y: ey + 0.28, w: 0.06, h: 0.54, fill: { color: TEAL }, line: { color: TEAL } });
  });

  // Add penicillin image if available
  if (imgs[1] && !imgs[1].error) {
    s.addImage({ data: imgs[1].base64, x: 5.1, y: 4.1, w: 1.5, h: 1.1, sizing: { type: "contain", w: 1.5, h: 1.1 } });
    s.addText("Penicillin zone\nof inhibition", { x: 6.6, y: 4.2, w: 2.8, h: 0.7, fontSize: 8, color: LIGHT_GRAY, align: "left", margin: 0, italic: true });
  }

  s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 5.45, w: 9.4, h: 0.02, fill: { color: GOLD }, line: { color: GOLD } });
}

// ═══════════════════════════════════════════════════════
// SLIDE 9 — RECEPTOR THEORY
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: TEAL }, line: { color: TEAL } });
  sectionBadge(s, "RECEPTOR THEORY", 0.3, 0.15);
  slideTitle(s, "Evolution of Receptor Theory", 0.55);

  const stages = [
    { name: "Paul Ehrlich\n(late 19th C)", desc: "\"Corpora non agunt nisi fixata\"\nDrugs bind selectively to cellular components — concept of selective drug–cell interaction", color: GOLD },
    { name: "J.N. Langley\n(early 20th C)", desc: "Proposed \"receptive substances\"\nin cells — first formal receptor concept describing drug–tissue interaction", color: TEAL },
    { name: "A.J. Clark\n(1920s–30s)", desc: "Occupancy Theory:\nDrug effect ∝ receptors occupied\nFirst quantitative receptor model", color: GOLD_LT },
    { name: "R. Ahlquist\n(1948)", desc: "Classified adrenergic receptors into\nα (alpha) and β (beta) subtypes — landmark in receptor pharmacology", color: TEAL_LT },
    { name: "James Black\n(1960s–70s)", desc: "Developed beta-blockers &\nH2-blockers — practical application of receptor theory → Nobel Prize 1988", color: GOLD },
  ];

  // horizontal flow with arrows
  stages.forEach((st, i) => {
    const x = 0.22 + i * 1.92;
    card(s, x, 1.1, 1.75, 3.8);
    s.addShape(pres.ShapeType.ellipse, { x: x + 0.38, y: 1.2, w: 0.98, h: 0.98, fill: { color: st.color }, line: { color: st.color } });
    s.addText(["⚗","🔬","📈","α/β","🏆"][i], { x: x + 0.38, y: 1.2, w: 0.98, h: 0.98, fontSize: 20, align: "center", valign: "middle", margin: 0 });
    s.addText(st.name, { x: x + 0.06, y: 2.28, w: 1.62, h: 0.5, fontSize: 9, bold: true, color: st.color, align: "center", margin: 0 });
    addDivider(s, x + 0.12, 2.8, 1.5, st.color);
    s.addText(st.desc, { x: x + 0.06, y: 2.88, w: 1.62, h: 1.85, fontSize: 8.5, color: OFFWHITE, align: "left", valign: "top", margin: 2 });
    if (i < stages.length - 1) {
      s.addShape(pres.ShapeType.rect, { x: x + 1.75, y: 2.0, w: 0.17, h: 0.06, fill: { color: GOLD }, line: { color: GOLD } });
      s.addText("▶", { x: x + 1.82, y: 1.88, w: 0.2, h: 0.3, fontSize: 11, color: GOLD, align: "center", margin: 0 });
    }
  });

  s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 5.08, w: 9.4, h: 0.4, fill: { color: NAVY2 }, line: { color: TEAL, pt: 0.5 }, rectRadius: 0.06 });
  s.addText("Clinical Impact: Receptor theory enabled the design of highly selective agents — beta-blockers, ACE inhibitors, H2 blockers, monoclonal antibodies.", {
    x: 0.4, y: 5.1, w: 9.2, h: 0.35, fontSize: 9, color: TEAL_LT, align: "left", valign: "middle", margin: 0, italic: true
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 10 — BIOTECH REVOLUTION
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: GOLD }, line: { color: GOLD } });
  sectionBadge(s, "BIOTECH REVOLUTION", 0.3, 0.15);
  slideTitle(s, "The Biotechnology Revolution", 0.55);

  const btech = [
    { icon: "🧬", title: "Recombinant DNA\nTechnology", body: "Boyer & Cohen (1970s)\nEnabled production of therapeutic proteins\n(insulin, GH, interferons)", color: GOLD },
    { icon: "💉", title: "Recombinant\nHuman Insulin", body: "1982: First FDA-approved\ngenetically engineered drug\nMilestone in biotech medicine", color: TEAL },
    { icon: "🔬", title: "Monoclonal\nAntibodies", body: "Köhler & Milstein (1975)\nHybridoma technology →\nIdentical targeted antibodies", color: GOLD_LT },
    { icon: "🧫", title: "Human Genome\nProject", body: "Mapped all human genes →\nFoundation for pharmacogenomics\n& personalized medicine", color: TEAL_LT },
    { icon: "✂️", title: "CRISPR\nGene Editing", body: "Doudna & Charpentier\nMolecular scissors → precise\nDNA repair for genetic disease", color: GOLD },
    { icon: "🤖", title: "AI in Drug\nDiscovery", body: "Machine learning analyzes\nmolecular/clinical data →\nFaster, cheaper drug design", color: TEAL },
  ];

  btech.forEach((b, i) => {
    const col = i % 3;
    const row = Math.floor(i / 3);
    const x = 0.3 + col * 3.22;
    const y = 1.1 + row * 2.18;
    card(s, x, y, 3.02, 2.0);
    s.addShape(pres.ShapeType.ellipse, { x: x + 0.1, y: y + 0.12, w: 0.56, h: 0.56, fill: { color: b.color }, line: { color: b.color } });
    s.addText(b.icon, { x: x + 0.1, y: y + 0.12, w: 0.56, h: 0.56, fontSize: 18, align: "center", valign: "middle", margin: 0 });
    s.addText(b.title, { x: x + 0.72, y: y + 0.12, w: 2.2, h: 0.56, fontSize: 10, bold: true, color: b.color, align: "left", valign: "middle", margin: 0 });
    addDivider(s, x + 0.12, y + 0.72, 2.7, b.color);
    s.addText(b.body, { x: x + 0.1, y: y + 0.8, w: 2.8, h: 1.1, fontSize: 9.5, color: OFFWHITE, align: "left", valign: "top", margin: 4 });
  });

  s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 5.35, w: 9.4, h: 0.16, fill: { color: GOLD }, line: { color: GOLD }, rectRadius: 0.05 });
}

// ═══════════════════════════════════════════════════════
// SLIDE 11 — PERSONALIZED MEDICINE
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: TEAL }, line: { color: TEAL } });
  sectionBadge(s, "PRECISION MEDICINE", 0.3, 0.15);
  slideTitle(s, "The Era of Personalized Medicine", 0.55);

  // central concept
  s.addShape(pres.ShapeType.ellipse, { x: 3.8, y: 2.0, w: 2.4, h: 1.6, fill: { color: NAVY3 }, line: { color: GOLD, pt: 2 } });
  s.addText("Personalized\nMedicine", { x: 3.8, y: 2.05, w: 2.4, h: 1.5, fontSize: 12, bold: true, color: GOLD_LT, align: "center", valign: "middle", margin: 0 });

  // surrounding concept cards
  const concepts = [
    { text: "Pharmacogenomics\nGenetic variation predicts\ndrug response & dosing", x: 0.3, y: 1.0, color: GOLD },
    { text: "Human Genome\nProject (2003)\nFoundation of genomic medicine", x: 0.3, y: 3.2, color: TEAL },
    { text: "Targeted Therapies\nMonoclonal antibodies &\ngene-specific cancer drugs", x: 7.4, y: 1.0, color: GOLD_LT },
    { text: "Biomarker-Based\nDiagnosis\nRight drug, right patient", x: 7.4, y: 3.2, color: TEAL_LT },
  ];

  concepts.forEach((c, i) => {
    card(s, c.x, c.y, 3.1, 1.7, NAVY3);
    s.addShape(pres.ShapeType.roundRect, { x: c.x, y: c.y, w: 3.1, h: 0.3, fill: { color: c.color }, line: { color: c.color }, rectRadius: 0.06 });
    s.addText(c.text, { x: c.x + 0.1, y: c.y + 0.35, w: 2.9, h: 1.25, fontSize: 9.5, color: OFFWHITE, align: "left", valign: "top", margin: 4 });
    // arrow lines (simplified)
    const toX = i < 2 ? 3.8 : 7.4;
    const toY = i < 2 ? 2.55 : 2.55;
  });

  // Shift from old → new paradigm
  s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 5.05, w: 9.4, h: 0.48, fill: { color: NAVY2 }, line: { color: GOLD, pt: 0.5 }, rectRadius: 0.06 });
  s.addText([
    { text: "Old paradigm: ", options: { bold: true, color: GOLD, fontSize: 10 } },
    { text: "\"One-size-fits-all\" treatment     ", options: { color: OFFWHITE, fontSize: 10 } },
    { text: "New paradigm: ", options: { bold: true, color: TEAL_LT, fontSize: 10 } },
    { text: "Therapy tailored to genetics, molecular profile, lifestyle & environment", options: { color: OFFWHITE, fontSize: 10 } },
  ], { x: 0.5, y: 5.07, w: 9.0, h: 0.4, valign: "middle", margin: 4 });
}

// ═══════════════════════════════════════════════════════
// SLIDE 12 — CHALLENGES
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: CRIMSON }, line: { color: CRIMSON } });
  sectionBadge(s, "CHALLENGES & FUTURE", 0.3, 0.15);
  slideTitle(s, "Current & Future Challenges in Pharmacology", 0.55);

  const challenges = [
    { icon: "🦠", title: "Antimicrobial\nResistance", desc: "Excessive antibiotic use → resistant pathogens. Major global health threat.", color: CRIMSON },
    { icon: "💰", title: "Drug Development\nCost & Time", desc: "Single drug: years of research & enormous investment. Many fail in clinical trials.", color: GOLD },
    { icon: "⚖️", title: "Ethics of\nGene Editing", desc: "CRISPR & stem cells raise questions on safety, genetic modification & privacy.", color: TEAL },
    { icon: "🌍", title: "Global Health\nDisparities", desc: "Unequal access to advanced medicines between developed & developing nations.", color: GOLD_LT },
    { icon: "🧬", title: "Genetic Diversity\nin Treatment", desc: "Personalized therapies must be effective across genetically diverse populations.", color: TEAL_LT },
    { icon: "🤖", title: "AI & Regulatory\nFrameworks", desc: "Integration with AI & nanotech requires robust interdisciplinary oversight.", color: GOLD },
  ];

  challenges.forEach((ch, i) => {
    const col = i % 3;
    const row = Math.floor(i / 3);
    const x = 0.3 + col * 3.22;
    const y = 1.1 + row * 2.12;
    card(s, x, y, 3.02, 1.94);
    s.addShape(pres.ShapeType.ellipse, { x: x + 0.1, y: y + 0.12, w: 0.52, h: 0.52, fill: { color: ch.color }, line: { color: ch.color } });
    s.addText(ch.icon, { x: x + 0.1, y: y + 0.12, w: 0.52, h: 0.52, fontSize: 18, align: "center", valign: "middle", margin: 0 });
    s.addText(ch.title, { x: x + 0.68, y: y + 0.12, w: 2.24, h: 0.52, fontSize: 10, bold: true, color: ch.color, align: "left", valign: "middle", margin: 0 });
    addDivider(s, x + 0.12, y + 0.68, 2.7, ch.color);
    s.addText(ch.desc, { x: x + 0.1, y: y + 0.76, w: 2.8, h: 1.0, fontSize: 9.5, color: OFFWHITE, align: "left", valign: "top", margin: 4 });
  });

  s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 5.35, w: 9.4, h: 0.2, fill: { color: NAVY2 }, line: { color: CRIMSON, pt: 0.4 }, rectRadius: 0.05 });
  s.addText("Despite challenges, modern pharmacology advances through research, technology & global collaboration.", { x: 0.4, y: 5.36, w: 9.2, h: 0.18, fontSize: 8.5, color: LIGHT_GRAY, align: "center", margin: 0 });
}

// ═══════════════════════════════════════════════════════
// SLIDE 13 — SUMMARY INFOGRAPHIC
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: GOLD }, line: { color: GOLD } });
  sectionBadge(s, "SUMMARY", 0.3, 0.15);
  slideTitle(s, "A Scientific Journey — Key Milestones", 0.55);

  const milestones = [
    { era: "Ancient World\n~1550 BCE+", label: "Herbs & Empiricism", color: GOLD },
    { era: "Greek & Roman\n1st C BCE–2nd C CE", label: "Dioscorides & Galenicals", color: TEAL },
    { era: "Renaissance\n1493–1541", label: "Paracelsus:\nDose–Response", color: GOLD_LT },
    { era: "17th–18th C", label: "Harvey, Withering,\nSertürner", color: TEAL_LT },
    { era: "19th C", label: "Buchheim &\nSchmiedeberg", color: GOLD },
    { era: "Early 20th C", label: "Ehrlich's\nMagic Bullet", color: TEAL },
    { era: "Mid 20th C", label: "Antibiotics\n& Receptors", color: GOLD_LT },
    { era: "Late 20th C", label: "Biotech &\nMonoclonal Ab", color: TEAL_LT },
    { era: "21st Century", label: "AI, CRISPR &\nPrecision Medicine", color: GOLD },
  ];

  // S-shaped arrow flow (3 per row)
  const positions = [
    [0.3, 1.05], [3.52, 1.05], [6.75, 1.05],
    [6.75, 2.8], [3.52, 2.8], [0.3, 2.8],
    [0.3, 4.55], [3.52, 4.55], [6.75, 4.55],
  ];

  milestones.forEach((m, i) => {
    const [x, y] = positions[i];
    s.addShape(pres.ShapeType.roundRect, { x, y, w: 2.95, h: 1.55, fill: { color: NAVY3 }, line: { color: m.color, pt: 1.2 }, rectRadius: 0.1 });
    s.addShape(pres.ShapeType.rect, { x, y, w: 2.95, h: 0.3, fill: { color: m.color }, line: { color: m.color } });
    s.addText(m.era, { x, y, w: 2.95, h: 0.3, fontSize: 7.5, bold: true, color: NAVY, align: "center", valign: "middle", margin: 0 });
    s.addText(m.label, { x: x + 0.1, y: y + 0.35, w: 2.75, h: 1.1, fontSize: 10.5, bold: true, color: OFFWHITE, align: "center", valign: "middle", margin: 0 });
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 14 — CONCLUSION
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);

  // decorative strips
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: GOLD }, line: { color: GOLD } });
  s.addShape(pres.ShapeType.rect, { x: 0.18, y: 0, w: 0.06, h: 5.625, fill: { color: TEAL }, line: { color: TEAL } });
  sectionBadge(s, "CONCLUSION", 0.3, 0.15);
  slideTitle(s, "Conclusion", 0.55);

  const concs = [
    "Pharmacology evolved from traditional healing practices to rigorous evidence-based science",
    "Key milestones — from early experimentation to modern drug discovery — have continuously shaped healthcare",
    "Pioneers such as Paracelsus, Harvey, Buchheim, and Ehrlich laid the strong intellectual foundations",
    "Antibiotics, receptor theory, and biotechnology revolutionized therapeutic capabilities",
    "Ethical lessons continue to guide safe, effective, and equitable drug use worldwide",
    "The future lies in personalized medicine, artificial intelligence, and precision therapeutics",
  ];

  concs.forEach((c, i) => {
    const y = 1.18 + i * 0.68;
    s.addShape(pres.ShapeType.roundRect, { x: 0.3, y, w: 9.4, h: 0.58, fill: { color: NAVY3 }, line: { color: i % 2 === 0 ? GOLD : TEAL, pt: 0.6 }, rectRadius: 0.08 });
    s.addShape(pres.ShapeType.ellipse, { x: 0.35, y: y + 0.04, w: 0.5, h: 0.5, fill: { color: i % 2 === 0 ? GOLD : TEAL }, line: { color: i % 2 === 0 ? GOLD : TEAL } });
    s.addText(`${i + 1}`, { x: 0.35, y: y + 0.04, w: 0.5, h: 0.5, fontSize: 12, bold: true, color: NAVY, align: "center", valign: "middle", margin: 0 });
    s.addText(c, { x: 0.95, y: y + 0.05, w: 8.65, h: 0.48, fontSize: 10.5, color: OFFWHITE, align: "left", valign: "middle", margin: 4 });
  });

  // closing quote
  s.addShape(pres.ShapeType.roundRect, { x: 0.3, y: 5.2, w: 9.4, h: 0.32, fill: { color: NAVY2 }, line: { color: GOLD, pt: 0.8 }, rectRadius: 0.08 });
  s.addText("\"Pharmacology is not just the study of drugs — it is the science of improving life.\"", {
    x: 0.4, y: 5.22, w: 9.2, h: 0.28, fontSize: 9.5, bold: true, italic: true, color: GOLD_LT, align: "center", valign: "middle", margin: 0
  });
}

// ═══════════════════════════════════════════════════════
// SLIDE 15 — THANK YOU
// ═══════════════════════════════════════════════════════
{
  const s = pres.addSlide();
  darkBg(s);
  s.addShape(pres.ShapeType.rect, { x: 0, y: 0, w: 0.18, h: 5.625, fill: { color: GOLD }, line: { color: GOLD } });
  s.addShape(pres.ShapeType.rect, { x: 0.18, y: 0, w: 0.06, h: 5.625, fill: { color: TEAL }, line: { color: TEAL } });

  // central circle
  s.addShape(pres.ShapeType.ellipse, { x: 3.5, y: 1.0, w: 3.0, h: 3.0, fill: { color: NAVY3 }, line: { color: GOLD, pt: 2.5 } });
  s.addText("Thank You", { x: 3.5, y: 1.75, w: 3.0, h: 1.5, fontSize: 26, bold: true, color: GOLD_LT, align: "center", valign: "middle", margin: 0 });
  s.addText("Questions & Discussion", { x: 3.5, y: 3.1, w: 3.0, h: 0.45, fontSize: 10, color: TEAL_LT, italic: true, align: "center", margin: 0 });

  s.addShape(pres.ShapeType.rect, { x: 0.24, y: 4.3, w: 9.76, h: 0.06, fill: { color: GOLD }, line: { color: GOLD } });
  s.addText("\"From herbs to high-tech — pharmacology continues to redefine medicine.\"", {
    x: 0.5, y: 4.45, w: 9, h: 0.4, fontSize: 11, bold: true, italic: true, color: OFFWHITE, align: "center", margin: 0
  });
  s.addText("Post-Graduate Pharmacology Residency Programme  |  Department of Pharmacology  |  2026", {
    x: 0.5, y: 5.08, w: 9, h: 0.3, fontSize: 8.5, color: LIGHT_GRAY, align: "center", margin: 0
  });
}

// ─────────────────────────────────────────────
// WRITE FILE
// ─────────────────────────────────────────────
const outPath = "/home/daytona/workspace/pharmacology-ppt/History_of_Pharmacology.pptx";
pres.writeFile({ fileName: outPath }).then(() => {
  console.log("PPT created:", outPath);
}).catch(e => {
  console.error("Error writing PPT:", e.message);
  process.exit(1);
});
Running Command

cd /home/daytona/workspace/pharmacology-ppt && node create_ppt.js 2>&1

Running Command

ls -lh /home/daytona/workspace/pharmacology-ppt/History_of_Pharmacology.pptx

You've run out of free credits. Sign up for a free account to continue using Orris.
This is a shared conversation. Sign in to Orris to start your own chat.