attachment
attachment

use this book and use other referance and make a ppt for teaching and exam point of view as per the following questions, in descriptive manner, point wise as well

analyse_media
Reading File
Reading File
Reading File
Running Command

python3 -c " import pdfplumber pdf_path = '/tmp/workspace/attachments/f5391d3f-bb91-4524-ad39-bd9b6206d498/Pharmacotherapeutics by DIPIRO.pdf' with pdfplumber.open(pdf_path) as pdf: print(f'Total pages: {len(pdf.pages)}') # Print text from first 5 pages to understand structure for i in range(min(5, len(pdf.pages))): text = pdf.pages[i].extract_text() if text: print(f'--- PAGE {i+1} ---') print(text[:500]) print() "

Finding Sources
Running Command

python3 -c " import pdfplumber pdf_path = '/tmp/workspace/attachments/f5391d3f-bb91-4524-ad39-bd9b6206d498/Pharmacotherapeutics by DIPIRO.pdf' with pdfplumber.open(pdf_path) as pdf: all_text = [] for i, page in enumerate(pdf.pages): text = page.extract_text() if text: all_text.append(f'=== PAGE {i+1} ===\n{text}') full = '\n'.join(all_text) # Save to file with open('/tmp/workspace/dipiro_content.txt', 'w') as f: f.write(full) print(f'Saved {len(full)} characters') print('First 200 chars of each page (preview):') for t in all_text: lines = t.split('\n') print(lines[0]) "

Reading File
Reading File
Reading File
Reading File
Reading File
Reading File
Running Command

mkdir -p /tmp/workspace/pain-ppt && python3 << 'PYEOF' from pptx import Presentation from pptx.util import Inches, Pt, Emu from pptx.dml.color import RGBColor from pptx.enum.text import PP_ALIGN, MSO_ANCHOR from pptx.util import Inches, Pt import copy prs = Presentation() prs.slide_width = Inches(13.333) prs.slide_height = Inches(7.5) # ─── Color Palette ──────────────────────────────────────────────── DARK_BLUE = RGBColor(0x0A, 0x29, 0x5F) # #0A295F MED_BLUE = RGBColor(0x1A, 0x5F, 0x9A) # #1A5F9A ACCENT_GOLD = RGBColor(0xF0, 0xA5, 0x00) # #F0A500 LIGHT_BG = RGBColor(0xF0, 0xF4, 0xFA) # #F0F4FA WHITE = RGBColor(0xFF, 0xFF, 0xFF) DARK_TEXT = RGBColor(0x1A, 0x1A, 0x2E) GREEN = RGBColor(0x17, 0x7E, 0x37) RED = RGBColor(0xC0, 0x1C, 0x1C) ORANGE = RGBColor(0xE0, 0x6B, 0x00) blank_layout = prs.slide_layouts[6] # ─── Helper Functions ───────────────────────────────────────────── def add_rect(slide, x, y, w, h, fill_color, line_color=None): shape = slide.shapes.add_shape(1, Inches(x), Inches(y), Inches(w), Inches(h)) shape.fill.solid() shape.fill.fore_color.rgb = fill_color if line_color: shape.line.color.rgb = line_color shape.line.width = Pt(1) else: shape.line.fill.background() return shape def add_text(slide, text, x, y, w, h, font_size=18, bold=False, color=DARK_TEXT, align=PP_ALIGN.LEFT, italic=False, wrap=True): tb = slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h)) tf = tb.text_frame tf.word_wrap = wrap tf.margin_left = Pt(4) tf.margin_right = Pt(4) tf.margin_top = Pt(2) tf.margin_bottom = Pt(2) p = tf.paragraphs[0] p.alignment = align run = p.add_run() run.text = text run.font.size = Pt(font_size) run.font.bold = bold run.font.italic = italic run.font.color.rgb = color run.font.name = "Calibri" return tb def add_bullet_slide(slide, bullets, x, y, w, h, font_size=16, color=DARK_TEXT, bullet_char="•", spacing=1.15): tb = slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h)) tf = tb.text_frame tf.word_wrap = True tf.margin_left = Pt(4) tf.margin_top = Pt(2) first = True for item in bullets: if first: p = tf.paragraphs[0] first = False else: p = tf.add_paragraph() p.space_before = Pt(3) p.space_after = Pt(2) run = p.add_run() run.text = f"{bullet_char} {item}" run.font.size = Pt(font_size) run.font.color.rgb = color run.font.name = "Calibri" return tb def slide_header(slide, title, subtitle=None): """Standard header bar""" add_rect(slide, 0, 0, 13.333, 1.1, DARK_BLUE) add_rect(slide, 0, 1.1, 13.333, 0.08, ACCENT_GOLD) add_text(slide, title, 0.3, 0.05, 12.5, 0.9, font_size=30, bold=True, color=WHITE, align=PP_ALIGN.LEFT) if subtitle: add_text(slide, subtitle, 0.3, 0.75, 12.5, 0.4, font_size=14, color=ACCENT_GOLD, align=PP_ALIGN.LEFT) # footer add_rect(slide, 0, 7.25, 13.333, 0.25, DARK_BLUE) add_text(slide, "DiPiro Pharmacotherapeutics | Pain Management & Headache", 0.3, 7.25, 10, 0.25, font_size=9, color=WHITE, align=PP_ALIGN.LEFT) add_text(slide, "Ref: DiPiro JT et al., Pharmacotherapy, 7th Ed.", 9.5, 7.25, 3.5, 0.25, font_size=9, color=ACCENT_GOLD, align=PP_ALIGN.RIGHT) add_rect(slide, 0, 1.18, 13.333, 6.07, LIGHT_BG) def two_col_layout(slide, left_title, left_bullets, right_title, right_bullets, fs=15): add_rect(slide, 0.2, 1.25, 6.3, 0.45, MED_BLUE) add_text(slide, left_title, 0.3, 1.28, 6.1, 0.4, font_size=15, bold=True, color=WHITE) add_bullet_slide(slide, left_bullets, 0.25, 1.75, 6.25, 5.3, font_size=fs) add_rect(slide, 6.8, 1.25, 6.3, 0.45, MED_BLUE) add_text(slide, right_title, 6.9, 1.28, 6.1, 0.4, font_size=15, bold=True, color=WHITE) add_bullet_slide(slide, right_bullets, 6.85, 1.75, 6.25, 5.3, font_size=fs) def section_box(slide, x, y, w, h, title, bullets, title_color=MED_BLUE, fs=14): add_rect(slide, x, y, w, 0.4, title_color) add_text(slide, title, x+0.1, y+0.02, w-0.2, 0.38, font_size=14, bold=True, color=WHITE) add_rect(slide, x, y+0.4, w, h-0.4, WHITE, MED_BLUE) add_bullet_slide(slide, bullets, x+0.15, y+0.42, w-0.3, h-0.5, font_size=fs) # ═══════════════════════════════════════════════════════════════ # SLIDE 1 – Title Slide # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) add_rect(slide, 0, 0, 13.333, 7.5, DARK_BLUE) add_rect(slide, 0, 5.8, 13.333, 1.7, RGBColor(0x06, 0x1A, 0x40)) add_rect(slide, 0, 3.0, 13.333, 0.07, ACCENT_GOLD) add_text(slide, "PAIN MANAGEMENT", 0.5, 0.4, 12.3, 1.1, font_size=52, bold=True, color=WHITE, align=PP_ALIGN.CENTER) add_text(slide, "& HEADACHE DISORDERS", 0.5, 1.4, 12.3, 0.9, font_size=40, bold=True, color=ACCENT_GOLD, align=PP_ALIGN.CENTER) add_text(slide, "Pharmacotherapeutics – DiPiro | Teaching & Exam Preparation", 0.5, 2.4, 12.3, 0.5, font_size=18, color=WHITE, align=PP_ALIGN.CENTER) add_text(slide, "Topics Covered:", 0.8, 3.3, 5, 0.4, font_size=14, bold=True, color=ACCENT_GOLD) topics = [ "Types of Pain & Assessment", "WHO Pain Ladder", "Non-pharmacological Therapy", "Opioid Analgesics & Adverse Effects", "Cancer Pain Management", "Neuralgia Types & Management", ] for i, t in enumerate(topics): add_text(slide, f"▶ {t}", 0.8, 3.7 + i*0.28, 5.5, 0.3, font_size=12, color=WHITE) topics2 = [ "Headache Classification (IHS)", "Migraine – Pathogenesis & Therapy", "IHS Diagnostic Criteria", "Treatment Algorithm", "Cluster Headache", "Role of Propranolol", ] for i, t in enumerate(topics2): add_text(slide, f"▶ {t}", 6.8, 3.7 + i*0.28, 5.5, 0.3, font_size=12, color=WHITE) add_text(slide, "Reference: DiPiro JT et al., Pharmacotherapy: A Pathophysiologic Approach, 7th Ed.", 0.5, 6.0, 12.3, 0.4, font_size=11, color=ACCENT_GOLD, align=PP_ALIGN.CENTER, italic=True) add_text(slide, "Chapters 30 (Pain Management) & 31 (Headache)", 0.5, 6.4, 12.3, 0.4, font_size=11, color=WHITE, align=PP_ALIGN.CENTER, italic=True) # ═══════════════════════════════════════════════════════════════ # SLIDE 2 – Types of Pain # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Types of Pain", "Characteristics & Classification (DiPiro Ch. 30)") section_box(slide, 0.2, 1.25, 3.1, 2.9, "NOCICEPTIVE", ["Caused by tissue injury/activation of nociceptors", "Somatic: well-localised, throbbing/aching", "Visceral: poorly localised, referred, crampy", "Usually responds to opioids & NSAIDs", "E.g., post-operative pain, arthritis"], DARK_BLUE) section_box(slide, 3.5, 1.25, 3.1, 2.9, "NEUROPATHIC", ["Disease of CNS/PNS", "Peripheral (PHN, diabetic neuropathy)", "Central (post-stroke, MS)", "Burning, shooting, electric-shock quality", "Allodynia & Hyperalgesia common", "Requires TCAs, AEDs, SNRIs"], MED_BLUE) section_box(slide, 6.8, 1.25, 3.1, 2.9, "INFLAMMATORY", ["Tissue inflammation → sensitisation", "Peripheral & central sensitisation", "NSAIDs / COX-2 inhibitors", "Corticosteroids effective", "E.g., rheumatoid arthritis"], GREEN) section_box(slide, 10.0, 1.25, 3.1, 2.9, "FUNCTIONAL", ["No identifiable tissue/nerve damage", "Fibromyalgia, IBS, tension headache", "Central sensitisation mechanism", "SSRIs / SNRIs / CBT", "Multimodal management"], ORANGE) section_box(slide, 0.2, 4.3, 3.1, 2.9, "ACUTE PAIN", ["< 3–6 months duration", "Clearly identifiable cause", "Sympathetic response: HTN, tachy", "Aggressive treatment recommended", "NSAIDs/Opioids appropriate"], DARK_BLUE) section_box(slide, 3.5, 4.3, 3.1, 2.9, "CHRONIC NON-MALIGNANT", ["> 6 months beyond healing", "Back pain, osteoarthritis, PVD", "Multimodal / multidisciplinary", "Opioids if psychologically healthy", "Consider NMDA antagonists (methadone)"], MED_BLUE) section_box(slide, 6.8, 4.3, 3.1, 2.9, "CHRONIC MALIGNANT", ["Life-threatening disease: cancer, AIDS", "Goal: alleviation & prevention", "Tolerance/dependence less concern", "Systematic stepwise approach", "Potent opioids & adjuvants"], RED) section_box(slide, 10.0, 4.3, 3.1, 2.9, "NEUROPATHIC PAIN KEY", ["Allodynia: pain from non-painful stimulus", "Hyperalgesia: exaggerated pain response", "Wind-up: central sensitisation", "PHN: post-herpetic neuralgia", "CRPS, Phantom limb pain"], ORANGE) # ═══════════════════════════════════════════════════════════════ # SLIDE 3 – Clinical Presentation & Pain Assessment # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Clinical Presentation & Pain Assessment", "Characteristics, Grading Scales & Assessment Guidelines") two_col_layout(slide, "Clinical Presentation of Pain", ["General: Patient may be in acute distress (acute) or show no visible signs (chronic)", "Onset, duration, location, quality, severity, intensity", "Anxiety, depression, fatigue, anger, fear, insomnia", "Acute Pain: HTN, tachycardia, diaphoresis, mydriasis, pallor", "Chronic Pain: No autonomic signs; psychological overlay", "Quality – burning, shooting, aching, throbbing, stabbing", "Nociceptive: well-localized; Neuropathic: diffuse/radiating"], "Grading Scales for Pain", ["Simple Descriptive Scale: No → Mild → Moderate → Severe → Worst", "0–10 NRS (Numeric Rating Scale): 0 = no pain, 10 = worst", "Mild: 1–3/10 | Moderate: 4–6/10 | Severe: 7–10/10", "VAS (Visual Analog Scale): 10cm line, patient marks position", "Wong-Baker FACES Scale: for children/cognitively impaired", "Brief Pain Inventory (BPI): assesses functional impact", "McGill Pain Questionnaire: qualitative descriptors", "FLACC Scale: Neonates/non-verbal patients", "Assessment should be REPEATED regularly (5th vital sign)"] ) # ═══════════════════════════════════════════════════════════════ # SLIDE 4 – WHO Pain Ladder # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "WHO Pain Ladder Management", "3-Step Analgesic Ladder – Systematic Stepwise Approach") # Step boxes for i, (step, pain, drugs, color) in enumerate([ ("STEP 1", "Mild Pain\n(NRS 1–3)", "• Acetaminophen 1000mg q6h\n• NSAIDs: Ibuprofen 600mg q6h\n• Aspirin\n• ± Adjuvants\n• Regular scheduled dosing", DARK_BLUE), ("STEP 2", "Moderate Pain\n(NRS 4–6)", "• Step 1 drug PLUS\n• Weak opioid:\n – Codeine 60mg + APAP 325mg\n – Oxycodone 5mg + APAP\n – Tramadol\n• ± Adjuvants\n• Regular scheduled dosing", MED_BLUE), ("STEP 3", "Severe Pain\n(NRS 7–10)", "• Strong opioid:\n – Morphine (oral/IV/SC)\n – Oxycodone CR\n – Hydromorphone\n – Fentanyl patch\n – Methadone\n• ± Non-opioid ± Adjuvant\n• If pain persists → next step", RED), ]): x = 0.3 + i * 4.33 add_rect(slide, x, 1.25, 4.0, 0.5, color) add_text(slide, step, x+0.1, 1.27, 1.2, 0.46, font_size=20, bold=True, color=WHITE) add_text(slide, pain, x+1.2, 1.27, 2.7, 0.46, font_size=13, color=ACCENT_GOLD) add_rect(slide, x, 1.75, 4.0, 3.8, WHITE, color) add_text(slide, drugs, x+0.15, 1.82, 3.7, 3.7, font_size=13, color=DARK_TEXT, wrap=True) # Adjuvants box add_rect(slide, 0.3, 5.7, 12.7, 1.4, RGBColor(0xE8, 0xF4, 0xFF), MED_BLUE) add_text(slide, "Adjuvant Medications (used at ALL steps based on indication):", 0.5, 5.75, 12.3, 0.4, font_size=13, bold=True, color=DARK_BLUE) adj = "TCAs (amitriptyline) – neuropathic | AEDs (gabapentin, pregabalin) – neuropathic | Corticosteroids – bone/nerve pain | Antidepressants (duloxetine, venlafaxine) | Muscle relaxants | Bisphosphonates – bone metastases | Local anesthetics (lidocaine patch)" add_text(slide, adj, 0.5, 6.15, 12.3, 0.9, font_size=12, color=DARK_TEXT, wrap=True) # Arrow add_text(slide, "▲ Pain not controlled → move UP the ladder", 0.3, 5.52, 9, 0.3, font_size=13, bold=True, color=ACCENT_GOLD) # ═══════════════════════════════════════════════════════════════ # SLIDE 5 – Non-Pharmacological Therapy # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Non-Pharmacological Therapy of Pain", "Psychological & Physical Interventions") section_box(slide, 0.2, 1.25, 6.3, 2.8, "PSYCHOLOGICAL INTERVENTIONS", ["Imagery: picturing safe/peaceful environment (acute pain)", "Distraction: music, breathing techniques", "Relaxation therapy: reduces muscle tension & anxiety", "Biofeedback: control physiologic pain responses", " – Effective in headache & chronic low back pain", "Cognitive-Behavioral Therapy (CBT): monitor perceptions, reduce stress", "Psychotherapy: comorbid psychiatric conditions, terminal illness", "Support groups & spiritual counselling", "Patient education: expectations for pain & treatment"], DARK_BLUE) section_box(slide, 6.8, 1.25, 6.3, 2.8, "PHYSICAL THERAPY", ["Exercise & physiotherapy: strength, flexibility, mobility", "TENS (Transcutaneous Electrical Nerve Stimulation)", "Hot/cold packs: inflammation & muscle spasm", "Massage therapy: relaxation, muscle tension", "Acupuncture: endorphin release, gate control", "Spinal manipulation (chiropractor): back pain", "Ultrasound therapy: deep tissue healing", "Hydrotherapy / aquatic therapy"], MED_BLUE) section_box(slide, 0.2, 4.2, 6.3, 2.9, "INTERVENTIONAL & SURGICAL", ["Regional nerve blocks: local anesthetic injection", "Epidural analgesia: lower extremity/post-op pain", "Intrathecal drug delivery (pain pump)", "PCA – Patient-Controlled Analgesia", "Neurostimulation/Spinal cord stimulation", "Neurosurgical procedures (last resort)"], GREEN) section_box(slide, 6.8, 4.2, 6.3, 2.9, "COMPLEMENTARY / ALTERNATIVE", ["Yoga & meditation: mind-body integration", "Tai Chi: chronic pain, improved function", "Herbal remedies (evidence limited)", "Mind-body practices reduce anxiety", "Used ALONGSIDE pharmacological therapy", "Avoid replacing proven treatments"], ORANGE) # ═══════════════════════════════════════════════════════════════ # SLIDE 6 – Opioid Analgesics & Adverse Effects # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Opioid Analgesics – Pharmacology & Adverse Effects", "Types, Routes, Monitoring & Major Side Effects") two_col_layout(slide, "Opioid Classification & Key Drugs", ["Full Agonists (morphine-like):", " – Morphine: Gold standard, multiple routes", " – Oxycodone: Oral, CR formulation available", " – Hydromorphone: 5× more potent than morphine", " – Fentanyl: Transdermal patch, IV/SC", " – Methadone: Long t½, NMDA antagonist", "Partial Agonists: Buprenorphine", "Mixed Agonist-Antagonist: Pentazocine, Nalbuphine", "Weak Opioids: Codeine, Tramadol, Propoxyphene", "Antagonist: Naloxone (reversal agent)"], "Major Adverse Effects of Opioids", ["CNS: Sedation, hallucinations, euphoria/dysphoria", "Respiratory: Respiratory depression (serious!)", " – Tolerance develops with repeated use", " – Naloxone for reversal", "GI: Constipation (tolerance DOES NOT develop!)", " – Prophylactic stimulant laxatives required", "Nausea & Vomiting: centrally-acting antiemetic", "Urinary Retention: especially in elderly", "Pruritus (epidural opioids): treat with naloxone", "Myoclonus: especially at high doses", "CNS Irritability: discontinue, use benzodiazepine", "Tolerance, Dependence (physical) – not same as addiction"] ) # ═══════════════════════════════════════════════════════════════ # SLIDE 7 – Barriers to Pain Management in Cancer # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Barriers to Effective Pain Management in Cancer Patients", "Patient, Clinician & System-Level Barriers") section_box(slide, 0.2, 1.25, 4.1, 5.9, "PATIENT BARRIERS", ["Fear of opioid addiction/dependence", "Belief that pain is 'inevitable'", "Reluctance to report pain (stigma)", "Fear of side effects (respiratory depression)", "Non-adherence to dosing schedule", "Cultural attitudes toward pain", "Fear of tolerance ('saving' drugs)", "Inadequate knowledge about pain relief", "Financial constraints on medications", "Fear of injectable medications"], DARK_BLUE, 13) section_box(slide, 4.5, 1.25, 4.1, 5.9, "CLINICIAN BARRIERS", ["Inadequate pain assessment", "Fear of regulatory scrutiny (DEA)", "Low competence in pain management", " – 75% of physicians cite this", "Concern about opioid dependence", "Under-prescribing of opioids", "Failure to use equianalgesic tables", "Lack of pain reassessment", "Not using adjuvant analgesics", "Poor knowledge of palliative care"], MED_BLUE, 13) section_box(slide, 8.8, 1.25, 4.3, 5.9, "SYSTEM/POLICY BARRIERS", ["Legal/regulatory restrictions on opioids", "Limited access to palliative care", "Inadequate insurance coverage", "Formulary restrictions", "Drug availability issues", "Poor coordination of care", "Lack of pain specialist access", "No standard pain screening protocols", "Stigma around opioid prescribing", "Limited palliative training in med schools"], GREEN, 13) # ═══════════════════════════════════════════════════════════════ # SLIDE 8 – Cancer Pain Management # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Pain Management in Cancer Patients", "Systematic Approach – WHO Ladder & Beyond") two_col_layout(slide, "Principles of Cancer Pain Management", ["By the mouth (oral route preferred)", "By the clock (regular, scheduled dosing)", "By the ladder (WHO 3-step ladder)", "Rescue dose = 10–15% of 24hr total", "Never use PRN alone for chronic cancer pain", "Assess & reassess regularly", "Treat side effects proactively", "Use equianalgesic conversions", "Opioid rotation if tolerance/side effects", "Taper opioids if pain resolves by 15–20%/day", "Informed consent for chronic opioid therapy", "Pain contracts/medication management agreements"], "Pharmacologic Treatment – Cancer Pain", ["Mild: Acetaminophen 1000mg q6h ± NSAID", "Moderate: Codeine/oxycodone + APAP", "Severe: Morphine (first choice)", " – Start 5–10mg oral q4h", " – IV/SC if oral not tolerated", "Fentanyl patch: stable chronic pain", "Methadone: NMDA antagonism; cheap", "Hydromorphone: 5× morphine potency", "Adjuvants: TCAs, gabapentin, steroids", "Bisphosphonates: bone metastases pain", "Ketamine: NMDA for refractory pain", "Intrathecal opioids: refractory cases"] ) # ═══════════════════════════════════════════════════════════════ # SLIDE 9 – Oncology Pharmacologic Treatment # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Pharmacologic Treatment of Oncology Patients – Pain", "Long Essay: Comprehensive Drug-Based Management") add_rect(slide, 0.2, 1.25, 12.8, 0.4, MED_BLUE) add_text(slide, "Non-Opioid Analgesics", 0.35, 1.27, 5, 0.36, font_size=14, bold=True, color=WHITE) non_opioid = [ "Acetaminophen: mild–moderate pain, hepatotoxic >4g/day, safe renally", "NSAIDs (Ibuprofen, Naproxen, Ketorolac): anti-inflammatory, bone pain, GI risk", "COX-2 inhibitors (Celecoxib): less GI side effects; caution in CVD", "Adjuvants: steroids (bone/nerve pain), bisphosphonates (metastatic bone pain)" ] add_bullet_slide(slide, non_opioid, 0.3, 1.68, 12.6, 1.1, font_size=13) add_rect(slide, 0.2, 2.85, 12.8, 0.4, RED) add_text(slide, "Opioid Analgesics", 0.35, 2.87, 5, 0.36, font_size=14, bold=True, color=WHITE) opioid = [ "Morphine: gold standard – oral, SC, IV, intrathecal; active metabolite M-6-G", "Oxycodone CR (OxyContin): q12h dosing; moderate–severe pain", "Fentanyl: transdermal patch (72h); avoid in opioid-naive; IV in ICU", "Hydromorphone: 5× potency vs morphine; renal failure patients", "Methadone: long half-life; NMDA receptor antagonist; QT monitoring needed", "Buprenorphine: partial agonist; ceiling effect on respiratory depression" ] add_bullet_slide(slide, opioid, 0.3, 3.28, 12.6, 1.7, font_size=13) add_rect(slide, 0.2, 5.05, 12.8, 0.4, GREEN) add_text(slide, "Adjuvant / Co-analgesics", 0.35, 5.07, 5, 0.36, font_size=14, bold=True, color=WHITE) adj = [ "TCAs (amitriptyline): neuropathic pain – block reuptake of norepinephrine/serotonin", "Anticonvulsants: Gabapentin, Pregabalin – block voltage-gated Ca2+ channels", "SNRIs (duloxetine, venlafaxine): neuropathic + depression comorbidity", "Corticosteroids: nerve compression, spinal cord compression, bone pain", "Bisphosphonates (zoledronic acid): osteolytic metastases; reduce skeletal events" ] add_bullet_slide(slide, adj, 0.3, 5.48, 12.6, 1.7, font_size=13) # ═══════════════════════════════════════════════════════════════ # SLIDE 10 – Neuralgia Types & Management # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Types of Neuralgia & Management", "Peripheral Neuropathic Pain Syndromes") section_box(slide, 0.2, 1.25, 6.3, 2.5, "TRIGEMINAL NEURALGIA", ["Severe stabbing/electric shock pain – face", "Distribution: V2/V3 branches of trigeminal nerve", "Triggers: chewing, talking, touch, wind", "Pathology: demyelination at root entry zone", "1st line: Carbamazepine 100–200mg TID", "2nd line: Oxcarbazepine, Gabapentin, Baclofen", "Surgery: Microvascular decompression (MVD)", " – Gamma Knife radiosurgery if not fit"], DARK_BLUE, 13) section_box(slide, 6.8, 1.25, 6.3, 2.5, "POST-HERPETIC NEURALGIA (PHN)", ["Pain persisting >3 months after herpes zoster", "Elderly / immunocompromised at risk", "Burning, allodynia along dermatomal distribution", "Treatment goals: pain control, function restoration", "1st line: Gabapentin / Pregabalin", " Lidocaine 5% patch", " TCAs (amitriptyline, nortriptyline)", "2nd line: Opioids, Capsaicin cream", "Prevention: Varicella zoster vaccine (Zostavax)"], MED_BLUE, 13) section_box(slide, 0.2, 3.9, 4.1, 3.3, "DIABETIC PERIPHERAL NEUROPATHY", ["Burning/tingling in hands & feet (stocking-glove)", "Most common metabolic neuropathy", "1st line: Duloxetine, Pregabalin", "2nd line: TCAs, Gabapentin, SNRIs", "Tight glycemic control (preventive)", "Capsaicin topical, Lidocaine patch"], GREEN, 13) section_box(slide, 4.5, 3.9, 4.1, 3.3, "GLOSSOPHARYNGEAL NEURALGIA", ["Severe pain: throat, tongue, ear", "Triggered by swallowing/speaking", "Rarer than trigeminal neuralgia", "Treatment: Carbamazepine (1st line)", "Baclofen, Oxcarbazepine", "Surgery: sectioning CN IX"], MED_BLUE, 13) section_box(slide, 8.8, 3.9, 4.3, 3.3, "OTHER NEURALGIAS", ["Occipital Neuralgia: Greater occipital nerve", " – Local anesthetic block effective", "CRPS Type I/II (Causalgia):", " – Sympathetically maintained pain", " – TCAs, anticonvulsants, steroids", "Pudendal neuralgia: pelvic/perineal pain", "Intercostal neuralgia: rib/chest wall"], ORANGE, 13) # ═══════════════════════════════════════════════════════════════ # SLIDE 11 – Trigeminal Neuralgia Management (detail) # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Trigeminal Neuralgia – Pathophysiology & Management", "Short Essay Focus (5 Marks)") two_col_layout(slide, "Pathophysiology", ["Demyelination at root entry zone of CN V", "Causes: multiple sclerosis, vascular compression", "Aberrant vascular loop (SCA or AICA) compresses nerve", "Loss of inhibitory interneurons → paroxysmal discharge", "Mechanical allodynia: light touch triggers severe pain", "Pain is unilateral along V2 (maxillary) / V3 (mandibular)", "V1 (ophthalmic) less commonly involved"], "Management", ["PHARMACOLOGICAL:", "1st line: Carbamazepine 100–200mg TID → 400–800mg/day", " – Monitor CBC (aplastic anemia risk), LFTs", "2nd line: Oxcarbazepine (fewer side effects)", " Gabapentin / Pregabalin", " Baclofen (muscle relaxant)", " Lamotrigine", "SURGICAL (refractory cases):", "Microvascular Decompression (MVD) – Jannetta procedure", "Percutaneous rhizotomy: glycerol/balloon", "Gamma Knife radiosurgery", "Goals: pain control, avoid triggers, improve QOL"] ) # ═══════════════════════════════════════════════════════════════ # SLIDE 12 – IHS Classification of Headache # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "IHS Classification of Headache (ICHD-3)", "International Headache Society Classification System") add_rect(slide, 0.2, 1.25, 12.8, 0.45, DARK_BLUE) add_text(slide, "PRIMARY HEADACHES", 0.4, 1.28, 6, 0.4, font_size=16, bold=True, color=WHITE) add_text(slide, "SECONDARY HEADACHES", 6.8, 1.28, 6, 0.4, font_size=16, bold=True, color=ACCENT_GOLD) prim = [ ("MIGRAINE", "With/without aura | Chronic migraine | Menstrual migraine"), ("TENSION-TYPE", "Episodic (<15 days/month) | Chronic (≥15 days/month)"), ("CLUSTER HEADACHE", "Episodic | Chronic – Trigeminal Autonomic Cephalalgias (TAC)"), ("PAROXYSMAL HEMICRANIA", "Short unilateral head pain + autonomic features"), ("HYPNIC HEADACHE", "Occurs during sleep, awakens patient"), ("THUNDERCLAP", "Sudden severe onset – must rule out SAH"), ] for i, (name, detail) in enumerate(prim): y = 1.8 + i * 0.82 add_rect(slide, 0.2, y, 6.3, 0.75, RGBColor(0xE8, 0xF0, 0xFF), MED_BLUE) add_text(slide, name, 0.35, y+0.03, 2.5, 0.35, font_size=13, bold=True, color=DARK_BLUE) add_text(slide, detail, 0.35, y+0.35, 6.0, 0.38, font_size=11, color=DARK_TEXT) sec = [ ("Trauma/Injury", "Post-concussion headache"), ("Vascular", "SAH, ICH, AVM, Carotid dissection"), ("Non-vascular intracranial", "Intracranial hypertension"), ("Substance/Withdrawal", "MOH (medication overuse), caffeine, alcohol"), ("Infection", "Meningitis, encephalitis"), ("Homeostasis", "Hypertension, hypoxia, dialysis"), ("Cranial/neck/eye disorders", "Glaucoma, sinusitis, TMJ"), ("Psychiatric", "Somatisation disorders"), ] for i, (name, detail) in enumerate(sec): y = 1.8 + i * 0.67 add_rect(slide, 6.8, y, 6.3, 0.62, RGBColor(0xFF, 0xF0, 0xE8), RED) add_text(slide, name, 6.95, y+0.02, 2.5, 0.3, font_size=12, bold=True, color=RED) add_text(slide, detail, 6.95, y+0.3, 6.0, 0.3, font_size=11, color=DARK_TEXT) # ═══════════════════════════════════════════════════════════════ # SLIDE 13 – Migraine Pathogenesis # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Pathogenesis of Migraine Headache", "Trigeminovascular Hypothesis & Neuronal Mechanisms") two_col_layout(slide, "Pathogenesis – Key Theories", ["1. VASCULAR HYPOTHESIS:", " – Intracerebral vasoconstriction → neural ischemia (aura)", " – Followed by reflex extracranial vasodilation → pain", "2. TRIGEMINOVASCULAR THEORY (current):", " – Trigeminovascular system overactivation", " – Release of CGRP, substance P from trigeminal nerve endings", " – Neurogenic inflammation of dural blood vessels", " – Activates pain receptors → throbbing pain", "3. CORTICAL SPREADING DEPRESSION (CSD):", " – Wave of neuronal/glial depolarisation → aura", " – Spreads at 3–5mm/min across cortex", "4. SEROTONIN IMBALANCE:", " – Serotonin drops during attack", " – Triptans target 5-HT1B/1D receptors"], "Precipitating Factors (Triggers)", ["Hormonal: menstruation, OCP, ovulation", "Food: cheese, chocolate, red wine, caffeine withdrawal", "Alcohol: especially red wine", "Sleep: too much or too little", "Stress: emotional stress & let-down after stress", "Environmental: bright lights, loud noise, strong smells", "Physical: skipping meals, dehydration, exercise", "Weather/altitude changes", "Head/neck trauma", "Medications: nitrates, reserpine, oestrogens", "Sensory stimuli: flickering lights (photophobia)", "Keeping a headache diary helps identify triggers"] ) # ═══════════════════════════════════════════════════════════════ # SLIDE 14 – IHS Diagnostic Criteria for Migraine # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "IHS Diagnostic Criteria for Migraine (ICHD-3)", "Migraine Without Aura & With Aura") add_rect(slide, 0.2, 1.25, 6.3, 5.9, RGBColor(0xE8, 0xF0, 0xFF), DARK_BLUE) add_rect(slide, 0.2, 1.25, 6.3, 0.5, DARK_BLUE) add_text(slide, "MIGRAINE WITHOUT AURA (1.1)", 0.35, 1.28, 6.0, 0.45, font_size=15, bold=True, color=WHITE) criteria_wo = [ "A. ≥5 attacks fulfilling criteria B–D", "B. Duration: 4–72 hours (untreated/unsuccessfully treated)", "C. At least 2 of the following:", " 1. Unilateral location", " 2. Pulsating quality (throbbing)", " 3. Moderate or severe pain intensity", " 4. Aggravation by routine physical activity", "D. During headache, at least 1 of:", " 1. Nausea and/or vomiting", " 2. Photophobia AND phonophobia", "E. Not better accounted for by another diagnosis", ] add_bullet_slide(slide, criteria_wo, 0.35, 1.8, 6.1, 5.1, font_size=13, bullet_char="→") add_rect(slide, 6.8, 1.25, 6.3, 5.9, RGBColor(0xFF, 0xF4, 0xE8), ORANGE) add_rect(slide, 6.8, 1.25, 6.3, 0.5, ORANGE) add_text(slide, "MIGRAINE WITH AURA (1.2)", 6.95, 1.28, 6.0, 0.45, font_size=15, bold=True, color=WHITE) criteria_w = [ "A. ≥2 attacks fulfilling criteria B–D", "B. Aura with ≥1 of (fully reversible):", " 1. Visual symptoms (most common)", " 2. Sensory symptoms", " 3. Speech/language disturbance", " 4. Motor symptoms", " 5. Brainstem symptoms", " 6. Retinal symptoms", "C. ≥2 of following 4 characteristics:", " – ≥1 aura symptom spreads gradually >5min", " – Aura lasts 5–60 minutes each", " – ≥1 symptom unilateral", " – Aura accompanied/followed by headache", "D. Not better accounted for by another ICHD-3 diagnosis", ] add_bullet_slide(slide, criteria_w, 6.95, 1.8, 6.1, 5.1, font_size=13, bullet_char="→") # ═══════════════════════════════════════════════════════════════ # SLIDE 15 – Clinical Manifestations of Migraine + IHS table # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Clinical Manifestations of Migraine Headache", "4 Phases + IHS Classification Table") two_col_layout(slide, "4 Phases of Migraine", ["1. PRODROME (24–48h before):", " – Mood changes, yawning, food craving", " – Fatigue, photosensitivity, neck stiffness", "2. AURA (if present, 20–60 min):", " – Visual: fortification spectra, scotoma", " – Sensory: unilateral tingling/numbness", " – Motor: hemiplegia (hemiplegic migraine)", " – Fully reversible", "3. HEADACHE PHASE (4–72h):", " – Unilateral, pulsating, moderate–severe", " – Nausea/vomiting, photophobia, phonophobia", " – Aggravated by physical activity", "4. POSTDROME:", " – Fatigue, cognitive impairment (brain fog)", " – Mood changes, scalp tenderness"], "IHS Classification – Migraine Subtypes", ["1.1 Migraine without aura", "1.2 Migraine with aura", " 1.2.1 With typical aura + migraine headache", " 1.2.2 With typical aura + non-migraine headache", " 1.2.3 With typical aura without headache", " 1.2.4 With brainstem aura", " 1.2.5 Hemiplegic migraine", " 1.2.6 Retinal migraine", "1.3 Chronic migraine (≥15 days/month >3 months)", "1.4 Complications of migraine:", " – Status migrainosus (>72h)", " – Persistent aura without infarction", " – Migrainous infarction", "1.5 Probable migraine", "Prevalence: 10–15% adults; F>M after puberty"] ) # ═══════════════════════════════════════════════════════════════ # SLIDE 16 – Pharmacotherapy of Migraine # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Pharmacotherapy of Migraine Headache", "Acute (Abortive) & Preventive (Prophylactic) Treatment") section_box(slide, 0.2, 1.25, 6.3, 5.9, "ACUTE / ABORTIVE THERAPY", ["NON-SPECIFIC ANALGESICS (mild–moderate):", "• NSAIDs: Aspirin 900mg, Ibuprofen 400–800mg, Naproxen", "• Acetaminophen alone or with aspirin + caffeine", "• Combined: APAP + aspirin + caffeine (Excedrin)", "", "MIGRAINE-SPECIFIC (moderate–severe):", "• TRIPTANS (5-HT1B/1D agonists) – First line:", " – Sumatriptan: SC, nasal, oral (most studied)", " – Rizatriptan, Zolmitriptan, Eletriptan", " – Avoid in cardiovascular disease, pregnancy", "• ERGOTAMINES:", " – Ergotamine tartrate (oral/rectal/SL)", " – DHE (IV/SC/nasal) – preferred in refractory", "ANTI-EMETICS:", " – Metoclopramide (IV with DHE)", " – Prochlorperazine, Ondansetron", "OPIOIDS: last resort / rescue therapy"], DARK_BLUE, 12) section_box(slide, 6.8, 1.25, 6.3, 5.9, "PREVENTIVE / PROPHYLACTIC", ["Indications for Prophylaxis:", "• ≥4 attacks/month significantly disabling", "• Attacks lasting >48 hours", "• Failed acute therapies", "• Medication overuse headache risk", "• Patient preference", "", "BETA-BLOCKERS (first line):", "• Propranolol 80–240mg/day (FDA approved)", "• Metoprolol, Timolol, Atenolol", "", "ANTIDEPRESSANTS:", "• Amitriptyline 10–150mg (first line)", "• Venlafaxine, Duloxetine", "", "ANTICONVULSANTS:", "• Valproate 500–1500mg/day", "• Topiramate 50–200mg/day", "", "CALCIUM CHANNEL BLOCKERS:", "• Verapamil 240–480mg/day", "• Flunarizine (not available in US)", "", "CGRP monoclonal antibodies (newer):", "• Erenumab, Fremanezumab, Galcanezumab"], MED_BLUE, 12) # ═══════════════════════════════════════════════════════════════ # SLIDE 17 – Treatment Algorithm for Migraine # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Treatment Algorithm for Migraine Headaches", "Stepped-Care Approach") # Algorithm boxes steps = [ ("STEP 1\nMild Migraine", "NSAIDs (Ibuprofen/Aspirin/Naproxen)\nAcetaminophen ± Caffeine\nSimple analgesics", DARK_BLUE), ("STEP 2\nModerate Attack", "NSAIDs + Antiemetic\nOr TRIPTAN (oral)\nSumatriptan 50–100mg oral\nRizatriptan 10mg oral", MED_BLUE), ("STEP 3\nSevere / Triptan Failure", "SC Sumatriptan 6mg\nINtranasal Sumatriptan/DHE\nOral DHE with antiemetic\nErgotamine combinations", RED), ("STEP 4\nStatus Migrainosus\n(>72h)", "IV Metoclopramide + IV DHE\nIV Valproate\nIV Ketorolac\nCorticosteroids (Dexamethasone)\nOpioids (last resort)", ORANGE), ] for i, (title, drugs, col) in enumerate(steps): x = 0.2 + i * 3.28 add_rect(slide, x, 1.25, 3.1, 0.9, col) add_text(slide, title, x+0.1, 1.28, 2.9, 0.84, font_size=13, bold=True, color=WHITE, align=PP_ALIGN.CENTER) add_rect(slide, x, 2.15, 3.1, 3.2, RGBColor(0xF5, 0xF8, 0xFF), col) add_text(slide, drugs, x+0.1, 2.2, 2.9, 3.1, font_size=12, color=DARK_TEXT, wrap=True) if i < 3: add_text(slide, "►", x+3.0, 2.55, 0.4, 0.5, font_size=24, bold=True, color=col) add_text(slide, "↑ If no relief in 2 hours or attack is already severe, move to next step", 0.3, 5.45, 12.7, 0.4, font_size=13, bold=True, color=RED, align=PP_ALIGN.CENTER) # Prophylaxis indication add_rect(slide, 0.2, 5.9, 12.8, 1.3, RGBColor(0xE8, 0xF4, 0xE8), GREEN) add_text(slide, "PROPHYLAXIS: Propranolol | Amitriptyline | Topiramate | Valproate | Verapamil | CGRP mAbs", 0.4, 5.95, 12.4, 0.4, font_size=14, bold=True, color=DARK_BLUE) add_text(slide, "Indications: ≥4 migraines/month | >48h duration | Failed acute therapy | Medication overuse risk | Special populations (pregnancy: propranolol, amitriptyline)", 0.4, 6.35, 12.4, 0.8, font_size=12, color=DARK_TEXT, wrap=True) # ═══════════════════════════════════════════════════════════════ # SLIDE 18 – Goals of Therapy & Role of Propranolol # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Goals of Therapy in Migraine & Role of Propranolol", "Preventive Therapy Focus") two_col_layout(slide, "Goals of Therapy – Migraine", ["ACUTE GOALS:", "• Rapid, consistent pain relief", "• Reduce associated symptoms (N/V, photo/phono)", "• Restore ability to function normally", "• Avoid medication overuse headache", "• Minimal adverse drug reactions", "", "PREVENTIVE GOALS:", "• Reduce attack frequency by ≥50%", "• Reduce severity and duration", "• Decrease disability & improve QOL", "• Reduce reliance on acute medications", "• Improve overall function & work productivity", "• Treat comorbidities simultaneously"], "Role of Propranolol", ["CLASS: Non-selective beta-adrenergic blocker", "DOSE: 80–240mg/day (oral, in divided doses)", "FDA APPROVED for migraine prophylaxis", "", "MECHANISM:", "• Blocks beta-1/beta-2 adrenergic receptors", "• Reduces cerebrovascular reactivity", "• Stabilises 5-HT receptor sensitivity", "• Reduces catecholamine-mediated vasoconstriction", "", "EFFICACY: Reduces attack frequency by ~50%", "ONSET: 4–8 weeks for full effect", "", "CONTRAINDICATIONS:", "• Asthma / COPD (bronchospasm risk)", "• Heart block, bradycardia", "• Decompensated heart failure", "• Insulin-dependent diabetes (masks hypoglycemia)", "• Raynaud's phenomenon"] ) # ═══════════════════════════════════════════════════════════════ # SLIDE 19 – Cluster Headache # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Cluster Headache – Pathophysiology & Management", "Trigeminal Autonomic Cephalgia (TAC)") two_col_layout(slide, "Pathophysiology & Clinical Presentation", ["Epidemiology: M > F (6:1), 0.1–0.4% prevalence", "Age of onset: 20–40 years", "Pathogenesis:", " – Hypothalamic dysfunction (suprachiasmatic nucleus)", " – Trigeminovascular activation", " – Parasympathetic overactivity", " – CGRP and VIP release", "SYMPTOMS:", "• Severe unilateral periorbital/retro-orbital pain", "• Duration: 15 minutes – 3 hours", "• Frequency: 1–8 attacks per day", "• Attacks occur in clusters (weeks–months)", "AUTONOMIC FEATURES (ipsilateral):", "• Lacrimation, conjunctival injection", "• Rhinorrhea, nasal congestion", "• Ptosis, miosis (Horner's syndrome)", "• Facial sweating & flushing", "BEHAVIOUR: Patient restless/agitated (vs. migraine: still)"], "Management", ["ACUTE THERAPY:", "1st line: 100% Oxygen via non-rebreather mask", " – 7–10 L/min for 15 min → rapid relief", " – Safe, highly effective", "Sumatriptan 6mg SC or nasal spray", "DHE intranasal / IV", "Zolmitriptan nasal spray", "Lidocaine 4% intranasal (less effective)", "", "PREVENTIVE (Transitional):", "Verapamil 240–480mg/day (drug of choice)", "Lithium carbonate 600–900mg/day", "Corticosteroids: short-term bridge during cluster", " – Prednisone 60mg tapering over 3 weeks", "Ergotamine at bedtime (nocturnal attacks)", "Melatonin 10mg/night", "", "SURGICAL (refractory):", "Occipital nerve stimulation", "Deep brain stimulation (posterior hypothalamus)"] ) # ═══════════════════════════════════════════════════════════════ # SLIDE 20 – Non-pharmacological Management of Migraine # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Non-Pharmacological Management of Migraine", "Lifestyle, Behavioural & Physical Approaches") section_box(slide, 0.2, 1.25, 4.0, 5.9, "TRIGGER AVOIDANCE", ["Keep headache diary to identify triggers", "Food triggers: avoid cheese, chocolate, red wine, MSG, caffeine (withdrawal)", "Sleep: regular sleep schedule, avoid oversleeping", "Meal regularity: avoid skipping meals", "Hydration: adequate fluid intake", "Alcohol avoidance especially red wine", "Hormonal: discuss OCP modification", "Reduce sensory stimuli (bright lights, loud noise)", "Stress management"], DARK_BLUE, 12) section_box(slide, 4.4, 1.25, 4.4, 5.9, "BEHAVIOURAL THERAPIES", ["Biofeedback (Level A evidence):", " – EMG biofeedback for muscle tension", " – Thermal biofeedback for hand warming", " – Reduces frequency & severity", "CBT – Cognitive Behavioural Therapy:", " – Identify & change maladaptive thoughts", " – Stress coping strategies", "Relaxation Training:", " – Progressive muscle relaxation", " – Deep breathing techniques", "Mindfulness-based stress reduction (MBSR)", "Combined behavioural therapy + medication > alone"], MED_BLUE, 12) section_box(slide, 9.0, 1.25, 4.1, 5.9, "OTHER APPROACHES", ["Acupuncture:", " – Evidence supports preventive use", " – May be as effective as prophylactic drugs", "Physical therapy & exercise:", " – Aerobic exercise reduces frequency", "Massage therapy:", " – Neck/shoulder muscle tension", "TENS (Transcutaneous Electrical Stimulation)", "Cefaly device (supraorbital nerve stimulation)", "Nutraceuticals (preventive):", " – Riboflavin (Vit B2) 400mg/day", " – Magnesium 400–600mg/day", " – Coenzyme Q10", " – Butterbur (Petasites) extract"], GREEN, 12) # ═══════════════════════════════════════════════════════════════ # SLIDE 21 – Summary / Quick Revision # ═══════════════════════════════════════════════════════════════ slide = prs.slides.add_slide(blank_layout) slide_header(slide, "Quick Revision – Key Exam Points", "Pain Management & Headache – High-Yield Facts") two_col_layout(slide, "Pain Management – Key Facts", ["WHO ladder: 3 steps | Mild→Moderate→Severe", "Constipation from opioids: no tolerance develops", "Respiratory depression: tolerance develops rapidly", "Equianalgesic: Hydromorphone 1.5mg IV = Morphine 10mg IV", "Methadone: NMDA antagonist, long t½, QTc monitoring", "Fentanyl patch: change q72h; not for opioid-naïve", "Naloxone: opioid antagonist / reversal agent", "Non-malignant chronic pain: >6 months after healing", "Cancer pain: By mouth, By clock, By ladder", "Barriers: Patient fear, clinician under-prescribing", "Adjuvants: TCAs, AEDs, SNRIs for neuropathic pain", "PHN treatment: Gabapentin/Pregabalin (1st line)"], "Headache – Key Facts", ["IHS: Primary (migraine, TTH, cluster) vs Secondary", "Migraine prevalence: 10–15%; F > M after puberty", "Migraine criteria: ≥5 attacks, 4–72h, POUND criteria", "POUND: Pulsating, One-day duration, Unilateral, Nausea, Disabling", "Triptans: 5-HT1B/1D agonists; contraindicated in CVD", "Sumatriptan: first available triptan; SC/nasal/oral", "Propranolol: non-selective β-blocker; FDA-approved prophylaxis", "Cluster: O2 100% + Sumatriptan SC; Verapamil preventive", "Carbamazepine: 1st line for trigeminal neuralgia", "MVD: Microvascular decompression for TN (surgical)", "Topiramate + Valproate: AED migraine prophylaxis", "Chronic migraine: ≥15 headache days/month"] ) # Save out_path = '/tmp/workspace/pain-ppt/Pain_Management_Headache_PPT.pptx' prs.save(out_path) print(f"Saved: {out_path}") print(f"Slides: {len(prs.slides)}") PYEOF

Running Command

python3 -c " from pptx import Presentation prs = Presentation('/tmp/workspace/pain-ppt/Pain_Management_Headache_PPT.pptx') print(f'Total slides: {len(prs.slides)}') print() for i, slide in enumerate(prs.slides, 1): texts = [s.text_frame.text.strip() for s in slide.shapes if s.has_text_frame] title = next((t for t in texts if t and len(t) > 5), 'No title') print(f'Slide {i}: {title[:80]}') "

Your PPT is ready! Here's the download link:

Pain Management Headache PPT

Presentation · PPTX


What's Inside – 21 Slides Covering ALL Exam Questions

SlideTopicExam Questions Covered
1Title SlideOverview of all topics
2Types of PainShort Essay Q1, Q3; Short Answer Q1
3Clinical Presentation & Grading ScalesShort Answer Q3, Q4
4WHO Pain LadderShort Essay Q4; full 3-step table
5Non-Pharmacological TherapyShort Essay Q3; Short Answer Q13
6Opioids – Pharmacology & Adverse EffectsShort Answer Q2; opioid routes
7Barriers to Cancer Pain ManagementShort Essay Q2
8Cancer Pain ManagementShort Essay Q12; Long Q1
9Pharmacologic Treatment of OncologyLong Q1 in detail
10Types of Neuralgia & ManagementShort Essay Q5; Short Answer Q6, Q7
11Trigeminal Neuralgia (detail)Short Essay Q6
12IHS Headache ClassificationShort Essay Q8
13Migraine Pathogenesis & TriggersShort Essay Q9; Short Answer Q9
14IHS Diagnostic Criteria for MigraineShort Essay Q10
15Clinical Manifestations + SubtypesShort Essay Q7; Short Answer Q10
16Pharmacotherapy of MigraineShort Essay Q9; Short Answer Q8
17Treatment AlgorithmShort Essay Q11; Short Answer Q8
18Goals of Therapy & Role of PropranololShort Answer Q11, Q12
19Cluster HeadacheLong Q2 – complete
20Non-pharmacological Migraine MgmtShort Answer Q13
21Quick Revision – High-Yield FactsAll 2-mark answers
Design features: Dark blue/gold color scheme, section-boxed content, two-column layouts, color-coded drug categories, footers with DiPiro citation on every slide, and a final revision slide summarizing all 2-mark answers.
This is a shared conversation. Sign in to Orris to start your own chat.