For an MD and DM level paediatricist regarding the breastfeeding topic for National Breastfeeding Day. It is an, uh, national level quiz program for MD and DM level paediatricians. What are all the topics should I cover completely regarding paediatrics, uh, in breastfeeding topic?
National Breastfeeding Day quiz topics MD DM paediatrician India 2024 2025
breastfeeding pediatrics evidence benefits recommendations
breastfeeding quiz topics MD DM paediatricians IAP NNF advanced clinical questions 2025
breastfeeding advanced topics paediatrician quiz IAP NNF breast milk immunology drugs contraindications neonatal
| Problem | Key Points |
|---|---|
| Engorgement | Day 3-5; treat with frequent feeding, warm compresses, cold post-feed |
| Nipple pain/cracks | Poor latch is #1 cause; apply hindmilk/colostrum to heal; nipple shields (last resort) |
| Mastitis | Staphylococcus aureus most common; continue BF; antibiotics (dicloxacillin, cloxacillin); if abscess - surgical drainage |
| Low milk supply (perceived vs. real) | Assess latch/frequency first; galactagogues (domperidone, metoclopramide, fenugreek) if confirmed |
| Lactation failure | Primary vs. secondary; Sheehan's syndrome, IGT (insufficient glandular tissue) |
| Raynaud's of nipple | Vasospasm; nifedipine used in severe cases |
| Nipple confusion | Avoid bottles/pacifiers in first 4-6 weeks; use cup/spoon/SNS instead |
| Location | Temperature | Duration |
|---|---|---|
| Room temperature | 25°C | 4 hours |
| Refrigerator | 4°C | 4 days |
| Freezer compartment | -15°C | 2 weeks |
| Deep freeze | -18 to -20°C | 6 months |
| Deep freeze | -80°C | 12 months |
Create a PowerPoint presentation summarizing these 16 topics with key clinical points
ls -la /tmp/workspace/ 2>/dev/null || echo "workspace does not exist"
mkdir -p /tmp/workspace/breastfeeding-quiz-pptx
~/breastfeeding-quiz-pptx/create_pptx.py
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
from io import BytesIO
# ── Colour palette ────────────────────────────────────────────────────────────
NAVY = RGBColor(0x00, 0x33, 0x66) # dark navy – header bars
TEAL = RGBColor(0x00, 0x7B, 0x8A) # teal accent
AMBER = RGBColor(0xFF, 0xA5, 0x00) # amber highlight
WHITE = RGBColor(0xFF, 0xFF, 0xFF)
LIGHT_GREY = RGBColor(0xF2, 0xF5, 0xF7)
DARK_TEXT = RGBColor(0x1A, 0x1A, 0x2E)
MID_GREY = RGBColor(0x55, 0x65, 0x75)
RED_WARN = RGBColor(0xC0, 0x39, 0x2B)
GREEN_OK = RGBColor(0x1A, 0x7A, 0x4A)
W = Inches(13.333)
H = Inches(7.5)
prs = Presentation()
prs.slide_width = W
prs.slide_height = H
blank = prs.slide_layouts[6] # fully blank
# ─────────────────────────────────────────────────────────────────────────────
# Helper functions
# ─────────────────────────────────────────────────────────────────────────────
def add_rect(slide, x, y, w, h, fill_color, line_color=None, line_width=Pt(0)):
from pptx.enum.shapes import MSO_SHAPE
shp = slide.shapes.add_shape(MSO_SHAPE.RECTANGLE, x, y, w, h)
shp.fill.solid()
shp.fill.fore_color.rgb = fill_color
if line_color:
shp.line.color.rgb = line_color
shp.line.width = line_width
else:
shp.line.fill.background()
shp.shadow.inherit = False
return shp
def add_textbox(slide, x, y, w, h, text, font_size=Pt(14), bold=False,
color=DARK_TEXT, align=PP_ALIGN.LEFT, italic=False,
wrap=True, v_anchor=MSO_ANCHOR.TOP,
margin_l=Inches(0.1), margin_t=Inches(0.05)):
tb = slide.shapes.add_textbox(x, y, w, h)
tf = tb.text_frame
tf.word_wrap = wrap
tf.vertical_anchor = v_anchor
tf.margin_left = margin_l
tf.margin_right = Inches(0.05)
tf.margin_top = margin_t
tf.margin_bottom = Inches(0.05)
p = tf.paragraphs[0]
p.alignment = align
run = p.add_run()
run.text = text
run.font.size = font_size
run.font.bold = bold
run.font.italic = italic
run.font.color.rgb = color
run.font.name = "Calibri"
return tb
def add_bullet_block(slide, x, y, w, h, items, font_size=Pt(13),
bullet_color=TEAL, text_color=DARK_TEXT,
line_spacing=1.15):
"""Adds a textbox with bulleted items using layout placeholder style."""
from pptx.oxml.ns import qn
from lxml import etree
import copy
tb = slide.shapes.add_textbox(x, y, w, h)
tf = tb.text_frame
tf.word_wrap = True
tf.vertical_anchor = MSO_ANCHOR.TOP
tf.margin_left = Inches(0.1)
tf.margin_right = Inches(0.1)
tf.margin_top = Inches(0.05)
tf.margin_bottom = Inches(0.05)
for i, item in enumerate(items):
if i == 0:
p = tf.paragraphs[0]
else:
p = tf.add_paragraph()
# indent via space prefix to mimic bullet
run = p.add_run()
level = 0
prefix = " " * level
if isinstance(item, tuple):
text, level = item
prefix = " " * level
else:
text = item
run.text = prefix + "\u25CF " + text
run.font.size = font_size
run.font.color.rgb = text_color
run.font.name = "Calibri"
p.alignment = PP_ALIGN.LEFT
# space between paragraphs
pPr = p._p.get_or_add_pPr()
spcBef = etree.SubElement(pPr, qn('a:spcBef'))
spcPts = etree.SubElement(spcBef, qn('a:spcPts'))
spcPts.set('val', '80') # 8 pt before each bullet
return tb
def slide_header(slide, topic_num, title, subtitle=None):
"""Draw the standard header bar used on topic slides."""
# Full-width navy bar at top
add_rect(slide, 0, 0, W, Inches(1.15), NAVY)
# Teal accent strip
add_rect(slide, 0, Inches(1.15), W, Inches(0.07), TEAL)
# Topic number badge
badge = add_rect(slide, Inches(0.3), Inches(0.1), Inches(0.75), Inches(0.75), AMBER)
add_textbox(slide, Inches(0.3), Inches(0.1), Inches(0.75), Inches(0.75),
str(topic_num), font_size=Pt(22), bold=True,
color=NAVY, align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
# Title text
add_textbox(slide, Inches(1.25), Inches(0.1), Inches(11.5), Inches(0.65),
title, font_size=Pt(28), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
# Subtitle line if provided
if subtitle:
add_textbox(slide, Inches(1.25), Inches(0.72), Inches(11.5), Inches(0.38),
subtitle, font_size=Pt(14), bold=False,
color=RGBColor(0xCC, 0xE5, 0xFF), align=PP_ALIGN.LEFT,
v_anchor=MSO_ANCHOR.TOP,
margin_l=Inches(0.1), margin_t=Inches(0))
def slide_footer(slide, tag="National Breastfeeding Day Quiz | MD/DM Paediatrics"):
"""Bottom footer bar."""
add_rect(slide, 0, Inches(7.2), W, Inches(0.3), NAVY)
add_textbox(slide, Inches(0.3), Inches(7.2), Inches(12.7), Inches(0.3),
tag, font_size=Pt(9), bold=False,
color=RGBColor(0xCC, 0xE5, 0xFF), align=PP_ALIGN.LEFT,
v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
def key_point_box(slide, x, y, w, h, label, value,
label_color=WHITE, value_color=WHITE,
box_color=TEAL):
add_rect(slide, x, y, w, h, box_color)
add_textbox(slide, x, y, w, Inches(0.32),
label, font_size=Pt(10), bold=True,
color=label_color, align=PP_ALIGN.CENTER,
v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.05), margin_t=Inches(0))
add_textbox(slide, x, y+Inches(0.32), w, h-Inches(0.32),
value, font_size=Pt(12), bold=False,
color=value_color, align=PP_ALIGN.CENTER,
v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.05), margin_t=Inches(0))
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 1 – Title / Cover
# ─────────────────────────────────────────────────────────────────────────────
def make_title_slide(prs):
slide = prs.slides.add_slide(blank)
# Deep navy background
add_rect(slide, 0, 0, W, H, NAVY)
# Teal decorative band
add_rect(slide, 0, Inches(2.6), W, Inches(0.12), TEAL)
add_rect(slide, 0, Inches(5.1), W, Inches(0.12), AMBER)
# Main title
add_textbox(slide, Inches(0.8), Inches(0.7), Inches(11.7), Inches(1.4),
"BREASTFEEDING IN PAEDIATRICS",
font_size=Pt(42), bold=True,
color=WHITE, align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
add_textbox(slide, Inches(0.8), Inches(2.1), Inches(11.7), Inches(0.6),
"A Comprehensive Clinical Quiz Guide",
font_size=Pt(20), bold=False,
color=RGBColor(0xCC, 0xE5, 0xFF), align=PP_ALIGN.CENTER,
v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
# 16 Topics badge area
add_rect(slide, Inches(4.5), Inches(3.0), Inches(4.3), Inches(1.3), TEAL)
add_textbox(slide, Inches(4.5), Inches(3.0), Inches(4.3), Inches(0.55),
"16 TOPICS COVERED",
font_size=Pt(18), bold=True,
color=WHITE, align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
add_textbox(slide, Inches(4.5), Inches(3.55), Inches(4.3), Inches(0.75),
"MD & DM Level Paediatricians",
font_size=Pt(14), bold=False,
color=RGBColor(0xCC, 0xF2, 0xF5), align=PP_ALIGN.CENTER,
v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
add_textbox(slide, Inches(0.8), Inches(5.4), Inches(11.7), Inches(0.5),
"National Breastfeeding Day | August 2025",
font_size=Pt(15), bold=False,
color=AMBER, align=PP_ALIGN.CENTER,
v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
add_textbox(slide, Inches(0.8), Inches(6.1), Inches(11.7), Inches(0.9),
"Anatomy & Physiology • Milk Composition • Immunology • WHO/IAP/AAP Guidelines\n"
"Benefits • Contraindications • Drugs • Technique • Neonatal Problems\n"
"Special Situations • Metabolism • Galactagogues • EBM • Policy",
font_size=Pt(11), bold=False,
color=RGBColor(0xAA, 0xCC, 0xEE), align=PP_ALIGN.CENTER,
v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 2 – Topic 1: Anatomy & Physiology
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_01(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 1, "Anatomy & Physiology of Lactation",
"Structures, hormones, and lactogenesis stages")
# Two columns
# Left column – Lactogenesis stages
add_rect(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.35), Inches(1.35), Inches(6.0), Inches(0.35),
"STAGES OF LACTOGENESIS", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
lg_items = [
"Lactogenesis I – 16 wks gestation; colostrum secretion begins; inhibited by progesterone",
"Lactogenesis II – Day 2-3 postpartum; 'milk coming in'; driven by progesterone withdrawal",
"Lactogenesis III (Galactopoiesis) – ongoing; demand-driven; autocrine regulation via FIL",
"Milk Ejection Reflex – Oxytocin released from posterior pituitary; let-down; inhibited by stress/pain",
"Prolactin – secreted by anterior pituitary; drives milk synthesis; elevated by suckling",
"Feedback Inhibitor of Lactation (FIL) – whey protein; autocrine suppressor; removal = more milk",
"Entero-mammary axis – MALT-sensitised lymphocytes migrate to breast → targeted SIgA in milk",
]
add_bullet_block(slide, Inches(0.4), Inches(1.75), Inches(5.9), Inches(5.1),
lg_items, font_size=Pt(12))
# Right column – Key structures + hormonal cascade
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(0.35), NAVY)
add_textbox(slide, Inches(6.75), Inches(1.35), Inches(6.2), Inches(0.35),
"KEY STRUCTURES & HORMONAL CASCADE", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
r_items = [
"Alveoli → lactiferous ducts → lactiferous sinuses → nipple",
"Montgomery glands – sebaceous; lubricate areola",
"Cooper's ligaments – suspensory ligaments of breast",
"Mammogenesis: estrogen (ductal), progesterone (lobular), prolactin + insulin + cortisol + GH",
"Suckling reflex arc: nipple sensory fibres → hypothalamus → ↑PRL + oxytocin",
"Oxytocin (Ferguson reflex): myoepithelial cells contract → milk ejection",
"Progesterone withdrawal at delivery → Lactogenesis II trigger",
"Prolactin receptor theory: suckling frequency determines receptor density",
]
add_bullet_block(slide, Inches(6.8), Inches(1.75), Inches(6.1), Inches(5.1),
r_items, font_size=Pt(12))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 3 – Topic 2: Composition of Human Milk
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_02(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 2, "Composition of Human Milk",
"Colostrum → Transitional → Mature milk; Foremilk vs. Hindmilk")
# Three phase boxes at top
phases = [
("COLOSTRUM\n(Days 1–5)", "Low vol (2–20 mL/feed)\nHigh SIgA (~12 g/L)\nHigh protein, low fat\nLeukocytes: 1–3 M cells/mL\nLaxative – clears meconium"),
("TRANSITIONAL MILK\n(Days 6–14)", "↑ Fat & lactose\n↓ Protein & immunoglobulins\nGradual transition to mature"),
("MATURE MILK\n(After Day 14)", "Protein: 0.9–1.2 g/dL\nFat: 3.5–4.5 g/dL (~50% kcal)\nLactose: 6.5–7 g/dL\nWhey:Casein = 70:30"),
]
box_w = Inches(4.0)
colors = [TEAL, NAVY, RGBColor(0x2C, 0x5F, 0x8A)]
for i, (ph, desc) in enumerate(phases):
x = Inches(0.3) + i * (box_w + Inches(0.22))
add_rect(slide, x, Inches(1.35), box_w, Inches(2.55),
colors[i])
add_textbox(slide, x, Inches(1.38), box_w, Inches(0.55),
ph, font_size=Pt(12), bold=True, color=WHITE,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
add_textbox(slide, x + Inches(0.1), Inches(1.93), box_w - Inches(0.2), Inches(1.9),
desc, font_size=Pt(11), bold=False, color=WHITE,
align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.TOP,
margin_l=Inches(0.1), margin_t=Inches(0.05))
# Lower two columns
add_rect(slide, Inches(0.3), Inches(4.05), Inches(6.1), Inches(2.9), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.3), Inches(4.05), Inches(6.1), Inches(0.32), AMBER)
add_textbox(slide, Inches(0.35), Inches(4.05), Inches(6.0), Inches(0.32),
"BIOACTIVE COMPONENTS", font_size=Pt(11), bold=True,
color=NAVY, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
bio = [
"HMOs (>200 types): 2'-fucosyllactose most abundant; prebiotic, anti-adhesin, neuro-dev",
"Lactoferrin: iron-chelating, bacteriostatic, bifidogenic",
"Lysozyme: cleaves bacterial peptidoglycan; ↑ over 1st year",
"SIgA: mucosal defence; coats gut epithelium; not absorbed",
"Growth factors: EGF, IGF-1; gut maturation",
"Stem cells, leptin, adiponectin, IL-6, IL-10, TNF-α",
]
add_bullet_block(slide, Inches(0.4), Inches(4.42), Inches(5.9), Inches(2.4),
bio, font_size=Pt(11))
add_rect(slide, Inches(6.7), Inches(4.05), Inches(6.3), Inches(2.9), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(4.05), Inches(6.3), Inches(0.32), AMBER)
add_textbox(slide, Inches(6.75), Inches(4.05), Inches(6.2), Inches(0.32),
"FOREMILK vs HINDMILK | MICRONUTRIENTS", font_size=Pt(11), bold=True,
color=NAVY, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
micro = [
"Foremilk: watery, high lactose (thirst) | Hindmilk: creamy, high fat (energy)",
"Vit D & K: LOW in breast milk → supplementation needed",
"Iron: 0.3 mg/L but 50% bioavailability (vs 10% in formula)",
"Zinc: high bioavailability",
"Alpha-lactalbumin: dominant whey protein (vs β-lactoglobulin in cow)",
"Cow milk whey:casein = 20:80 vs human 70:30 → easier digestion",
]
add_bullet_block(slide, Inches(6.8), Inches(4.42), Inches(6.1), Inches(2.4),
micro, font_size=Pt(11))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 4 – Topic 3: Immunological Components
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_03(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 3, "Immunological Components of Breast Milk",
"Passive immunity, cellular defence, and entero-mammary axis")
# 3 columns
cols = [
("HUMORAL FACTORS", TEAL, [
"SIgA – primary defence; targets ingested pathogens; entero-mammary axis delivers targeted antibodies",
"IgM, IgG also present (lower levels)",
"Complement: C3, C4 present",
"Lysozyme – cleaves bacterial peptidoglycan; concentration INCREASES over 1st year",
"Lactoferrin – iron-chelating, bacteriostatic; promotes Bifidobacterium growth",
"Bifidus factor – promotes Lactobacillus bifidus growth",
]),
("CELLULAR COMPONENTS", NAVY, [
"Leukocytes: 1–3 million cells/mL in colostrum",
"Macrophages >80% – produce IFN, cytokines, complement",
"Lymphocytes: T cells (memory) + B cells",
"Neutrophils: minority",
"Cytokines: IL-6, IL-10, TNF-α, TGF-β – immune modulation",
"Stem cells: multi-potent; developmental role",
]),
("ENTERO-MAMMARY AXIS", RGBColor(0x1A, 0x5F, 0x7A), [
"Maternal gut/respiratory MALT exposed to pathogens",
"Sensitised lymphocytes migrate via bloodstream to breast",
"Breast produces targeted SIgA against those specific pathogens",
"Protects infant from same organisms in shared environment",
"Milk microbiome (>700 species): Staph, Strep, Bifidobacterium",
"Establishes infant gut microbiome; reduces dysbiosis",
]),
]
col_w = Inches(4.1)
for i, (title, color, items) in enumerate(cols):
x = Inches(0.25) + i * (col_w + Inches(0.18))
add_rect(slide, x, Inches(1.35), col_w, Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, x, Inches(1.35), col_w, Inches(0.35), color)
add_textbox(slide, x+Inches(0.1), Inches(1.35), col_w-Inches(0.2), Inches(0.35),
title, font_size=Pt(11), bold=True, color=WHITE,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
add_bullet_block(slide, x+Inches(0.1), Inches(1.75), col_w-Inches(0.2), Inches(5.05),
items, font_size=Pt(11.5))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 5 – Topic 4: WHO/IAP/AAP Guidelines
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_04(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 4, "WHO / IAP / AAP Recommendations & Global Policy",
"Ten Steps, BFHI, IYCF, and global breastfeeding targets")
# Recommendation boxes at top
recs = [
("WHO", "EBF for 6 months\nContinue BF + complementary\nfeeding up to 2 years or beyond"),
("AAP 2022", "EBF for 6 months\nContinue BF at least 2 years\n(updated from 1 year)"),
("IAP 2010", "EBF for 6 months\nInitiation within 1 hour of birth\nContinue to 2 years+"),
]
box_w = Inches(3.9)
for i, (org, rec) in enumerate(recs):
x = Inches(0.3) + i * (box_w + Inches(0.28))
add_rect(slide, x, Inches(1.35), box_w, Inches(1.65), NAVY)
add_textbox(slide, x, Inches(1.35), box_w, Inches(0.38),
org, font_size=Pt(16), bold=True, color=AMBER,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
add_textbox(slide, x+Inches(0.1), Inches(1.73), box_w-Inches(0.2), Inches(1.2),
rec, font_size=Pt(12), bold=False, color=WHITE,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.05), margin_t=Inches(0))
# Ten Steps box (left)
add_rect(slide, Inches(0.3), Inches(3.15), Inches(6.1), Inches(3.8), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.3), Inches(3.15), Inches(6.1), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.35), Inches(3.15), Inches(6.0), Inches(0.35),
"TEN STEPS TO SUCCESSFUL BREASTFEEDING (BFHI)", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
steps = [
"1. Written breastfeeding policy communicated to all staff",
"2. Staff trained in skills to implement policy",
"3. Ante-natal BF counselling to all pregnant women",
"4. Initiate BF within 1 hour of birth (skin-to-skin)",
"5. Show mothers how to BF and maintain lactation if separated",
"6. Give newborns no food or drink other than BM (unless medically indicated)",
"7. Practice rooming-in (mother and infant together 24h)",
"8. Encourage breastfeeding on demand",
"9. Give no artificial teats or pacifiers to BF infants",
"10. Promote BF support groups on discharge",
]
add_bullet_block(slide, Inches(0.4), Inches(3.55), Inches(5.9), Inches(3.35),
steps, font_size=Pt(10.5))
# Right column – policy facts
add_rect(slide, Inches(6.7), Inches(3.15), Inches(6.3), Inches(3.8), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(3.15), Inches(6.3), Inches(0.35), NAVY)
add_textbox(slide, Inches(6.75), Inches(3.15), Inches(6.2), Inches(0.35),
"KEY POLICY FACTS", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
pfacts = [
"Early initiation within 1 hour reduces neonatal mortality by 22%",
"WHO Code (1981): bans formula advertising; no free samples in health facilities",
"World Breastfeeding Week: August 1–7; 2025 theme: 'Invest in Breastfeeding'",
"Global EBF rate at 6 months: ~44% (WHO 2023)",
"LAM (Lactational Amenorrhea Method): 98% effective if EBF + amenorrheic + <6 months",
"IYCF: 8 recommended practices (WHO)",
"SDG 2 (Zero Hunger) + SDG 3 (Good Health) linked to BF targets",
"India Maternity Benefit Act: 26 weeks paid maternity leave",
]
add_bullet_block(slide, Inches(6.8), Inches(3.55), Inches(6.1), Inches(3.35),
pfacts, font_size=Pt(11))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 6 – Topic 5: Benefits
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_05(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 5, "Benefits of Breastfeeding",
"Infant benefits • Maternal benefits • Evidence-based data")
# Left: infant
add_rect(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.35), Inches(1.35), Inches(6.0), Inches(0.35),
"INFANT BENEFITS (WITH EFFECT SIZES)", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
ibens = [
"Diarrhoea hospitalisation: ↓50%",
"LRTI hospitalisation: ↓72%",
"Otitis media: ↓50%",
"SIDS: ↓36–50%",
"NEC: ↓58% (preterm); NEC death ↓79%",
"Childhood obesity: ↓13–22% (dose-dependent)",
"Type 1 DM: ↓30% | Type 2 DM: ↓40%",
"IQ advantage: 3–5 points (DHA/ARA/HMOs)",
"Healthier gut microbiome (Bifidobacterium-dominant)",
"Reduced risk of coeliac disease, IBD",
"Atopic dermatitis: ↓ (asthma: nuanced evidence)",
]
add_bullet_block(slide, Inches(0.4), Inches(1.75), Inches(5.9), Inches(5.1),
ibens, font_size=Pt(12))
# Right: maternal
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(0.35), NAVY)
add_textbox(slide, Inches(6.75), Inches(1.35), Inches(6.2), Inches(0.35),
"MATERNAL BENEFITS", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
mbens = [
"PPH prevention: oxytocin → uterine involution",
"LAM contraception: 98% effective (EBF + amenorrhoea + <6 months)",
"Breast cancer: ↓4% per year of breastfeeding",
"Ovarian cancer: ↓30%",
"Type 2 DM: reduced incidence",
"Postpartum depression: oxytocin ↓ cortisol; protective (dose-dependent)",
"Faster return to pre-pregnancy weight",
"Osteoporosis: possibly protective (debated)",
"Bonding: oxytocin-mediated maternal-infant attachment",
"Economic benefit: formula costs avoided",
]
add_bullet_block(slide, Inches(6.8), Inches(1.75), Inches(6.1), Inches(5.1),
mbens, font_size=Pt(12))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 7 – Topic 6: Contraindications
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_06(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 6, "Contraindications to Breastfeeding",
"Absolute • Temporary • Common myths debunked")
# Absolute contraindications
add_rect(slide, Inches(0.3), Inches(1.35), Inches(5.5), Inches(2.85), WHITE,
line_color=RED_WARN, line_width=Pt(1.0))
add_rect(slide, Inches(0.3), Inches(1.35), Inches(5.5), Inches(0.35), RED_WARN)
add_textbox(slide, Inches(0.35), Inches(1.35), Inches(5.4), Inches(0.35),
"ABSOLUTE CONTRAINDICATIONS", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
abs_ci = [
"Classic GALACTOSEMIA – must use galactose-free formula (Nutramigen)",
"MSUD – partial BF only with strict monitoring",
"HIV (resource-rich settings per CDC) – not recommended",
"HTLV-1 / HTLV-2 infection",
"EBOLA – confirmed or suspected",
"HSV lesions on breast/nipple (that specific breast)",
]
add_bullet_block(slide, Inches(0.4), Inches(1.75), Inches(5.3), Inches(2.3),
abs_ci, font_size=Pt(11), bullet_color=RED_WARN, text_color=DARK_TEXT)
# Temporary
add_rect(slide, Inches(6.1), Inches(1.35), Inches(6.9), Inches(2.85), WHITE,
line_color=AMBER, line_width=Pt(1.0))
add_rect(slide, Inches(6.1), Inches(1.35), Inches(6.9), Inches(0.35), AMBER)
add_textbox(slide, Inches(6.15), Inches(1.35), Inches(6.8), Inches(0.35),
"TEMPORARY CONTRAINDICATIONS & PAUSE DURATIONS", font_size=Pt(11), bold=True,
color=NAVY, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
temp_ci = [
"Radioactive isotopes – pause per half-life:",
" Tc-99m: 24 hrs | Ga-67: 2 weeks",
" I-131: 2 months | I-125: 12 days",
"Active varicella with disseminated lesions (expressed milk OK if no breast lesion)",
"Untreated brucellosis",
"Active untreated TB – direct feeding; expressed milk can be given",
"Certain chemotherapy / cytotoxic agents",
]
add_bullet_block(slide, Inches(6.2), Inches(1.75), Inches(6.7), Inches(2.3),
temp_ci, font_size=Pt(11))
# NOT contraindications
add_rect(slide, Inches(0.3), Inches(4.35), Inches(12.7), Inches(2.6), WHITE,
line_color=GREEN_OK, line_width=Pt(1.0))
add_rect(slide, Inches(0.3), Inches(4.35), Inches(12.7), Inches(0.35), GREEN_OK)
add_textbox(slide, Inches(0.35), Inches(4.35), Inches(12.6), Inches(0.35),
"NOT CONTRAINDICATIONS (Common Exam Myths)", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
not_ci = [
"Hepatitis B (vaccinate + HBIG within 12 h → BF safe)",
"Hepatitis C (unless cracked/bleeding nipples)",
"CMV in term infants (negligible risk; concern only in VLBW preterm)",
"Mastitis (continue feeding – promotes resolution)",
"Mild maternal illness (cold, flu)",
"Jaundice in infant (unless severe – see Topic 11)",
"Most common medications (antibiotics, paracetamol, LMWH, levothyroxine)",
"HIV in resource-limited settings WITH effective ART (WHO recommends EBF)",
]
# Two-row display
half = len(not_ci) // 2
add_bullet_block(slide, Inches(0.4), Inches(4.75), Inches(6.0), Inches(2.1),
not_ci[:half], font_size=Pt(11), text_color=DARK_TEXT)
add_bullet_block(slide, Inches(6.7), Inches(4.75), Inches(6.2), Inches(2.1),
not_ci[half:], font_size=Pt(11), text_color=DARK_TEXT)
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 8 – Topic 7: Drugs
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_07(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 7, "Drugs & Medications in Breastfeeding",
"Pharmacokinetics of transfer • RID >10% threshold • Safe vs. contraindicated")
# PK factors box
add_rect(slide, Inches(0.3), Inches(1.35), Inches(4.2), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.3), Inches(1.35), Inches(4.2), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.35), Inches(1.35), Inches(4.1), Inches(0.35),
"PK FACTORS GOVERNING TRANSFER", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
pk = [
"Mol. weight: <200 Da free transfer; >500 Da poor transfer",
"Protein binding: highly bound = less transfer",
"Lipid solubility: lipophilic drugs concentrate in hindmilk",
"pKa / ion-trapping: basic drugs accumulate (milk pH 7.0 < plasma 7.4)",
"RID (Relative Infant Dose): ≥10% = threshold of concern",
"Oral bioavailability in infant",
"Infant age: neonates <2 months highest risk; >6 months low risk",
"Preterm infants: immature hepatic/renal clearance → higher risk",
"Milk volume: ~150 mL/kg/day (EBF)",
"Reference: Hale's Medications & Mothers' Milk 22nd Ed (2026)",
]
add_bullet_block(slide, Inches(0.4), Inches(1.75), Inches(4.0), Inches(5.1),
pk, font_size=Pt(11))
# Contraindicated
add_rect(slide, Inches(4.7), Inches(1.35), Inches(4.0), Inches(2.75), WHITE,
line_color=RED_WARN, line_width=Pt(0.8))
add_rect(slide, Inches(4.7), Inches(1.35), Inches(4.0), Inches(0.35), RED_WARN)
add_textbox(slide, Inches(4.75), Inches(1.35), Inches(3.9), Inches(0.35),
"CONTRAINDICATED", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
ci_drugs = [
"Chemotherapy (cyclophosphamide, MTX, doxorubicin)",
"Radioactive compounds",
"Ergotamines | Statins",
"Amphetamines, cocaine, PCP",
"Amiodarone (long t½, iodine-containing)",
"Oral retinoids | Gold salts",
"Lithium (only with rigorous monitoring)",
]
add_bullet_block(slide, Inches(4.8), Inches(1.75), Inches(3.8), Inches(2.3),
ci_drugs, font_size=Pt(11))
# Safe drugs
add_rect(slide, Inches(4.7), Inches(4.25), Inches(4.0), Inches(2.7), WHITE,
line_color=GREEN_OK, line_width=Pt(0.8))
add_rect(slide, Inches(4.7), Inches(4.25), Inches(4.0), Inches(0.35), GREEN_OK)
add_textbox(slide, Inches(4.75), Inches(4.25), Inches(3.9), Inches(0.35),
"GENERALLY SAFE", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
safe_drugs = [
"Penicillins, cephalosporins, macrolides",
"Aminoglycosides (poor oral absorption in infant)",
"Paracetamol/acetaminophen",
"Ibuprofen (preferred NSAID; avoid aspirin – Reye's risk)",
"Insulin, levothyroxine (destroyed in GI)",
"LMWH, warfarin (large/protein-bound)",
"Sertraline, paroxetine (low RID SSRIs)",
"Methadone/buprenorphine (ENCOURAGE BF with stable therapy)",
]
add_bullet_block(slide, Inches(4.8), Inches(4.65), Inches(3.8), Inches(2.2),
safe_drugs, font_size=Pt(11))
# Right col
add_rect(slide, Inches(8.9), Inches(1.35), Inches(4.1), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(8.9), Inches(1.35), Inches(4.1), Inches(0.35), NAVY)
add_textbox(slide, Inches(8.95), Inches(1.35), Inches(4.0), Inches(0.35),
"SPECIAL DRUG NOTES", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
spec = [
"Fluoxetine: longer half-life → use sertraline/paroxetine instead",
"Metronidazole: single dose – some advise 12–24 h pump-and-discard",
"Carbimazole/PTU: low doses safe; PTU preferred for hyperthyroidism",
"Antiepileptics: most safe; lamotrigine monitor infant levels",
"Codeine: AVOID – risk of neonatal opioid toxicity (CYP2D6 ultra-metabolisers)",
"Domperidone as galactagogue: QTc prolongation risk; avoid with CYP3A4 inhibitors",
"Antibiotics in nursing: watch for GI effects in infant (diarrhoea, thrush)",
"LactMed (NIH database) + Hale's = standard references",
"RID >10%: lithium, iodine, amiodarone – re-evaluate BF",
]
add_bullet_block(slide, Inches(9.0), Inches(1.75), Inches(3.9), Inches(5.1),
spec, font_size=Pt(11))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 9 – Topic 8: Technique & Support
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_08(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 8, "Breastfeeding Technique & Support",
"Latch, positions, LATCH score, adequacy indicators")
add_rect(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.35), Inches(1.35), Inches(6.0), Inches(0.35),
"LATCH SCORING TOOL (0–10 total)", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
latch = [
"L – Latch: 0=unable | 1=with assistance | 2=independent",
"A – Audible swallowing: 0=none | 1=occasional | 2=spontaneous",
"T – Type of nipple: 0=inverted | 1=flat | 2=everted",
"C – Comfort (breast/nipple): 0=engorged/cracked | 1=filling/red | 2=soft/no tenderness",
"H – Hold (positioning): 0=full assist | 1=minimal assist | 2=no assist",
"Score 7–10: satisfactory latch | <7: needs intervention",
]
add_bullet_block(slide, Inches(0.4), Inches(1.75), Inches(5.9), Inches(2.6),
latch, font_size=Pt(12))
add_rect(slide, Inches(0.3), Inches(4.5), Inches(6.1), Inches(2.3), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.3), Inches(4.5), Inches(6.1), Inches(0.32), NAVY)
add_textbox(slide, Inches(0.35), Inches(4.5), Inches(6.0), Inches(0.32),
"SIGNS OF ADEQUATE FEEDING", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
adeq = [
"6–8 wet nappies/day (after Day 5); pale yellow urine",
"Regains birth weight by Day 10–14",
"Weight gain: 20–30 g/day (0–3 months)",
"8–12 feeds/24 hours in neonatal period",
"Audible swallowing; slow steady jaw movements",
]
add_bullet_block(slide, Inches(0.4), Inches(4.87), Inches(5.9), Inches(1.8),
adeq, font_size=Pt(12))
# Right: Positions + correct latch signs
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(0.35), NAVY)
add_textbox(slide, Inches(6.75), Inches(1.35), Inches(6.2), Inches(0.35),
"POSITIONS & CORRECT LATCH SIGNS", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
pos = [
"POSITIONS: Cradle | Cross-cradle | Football/clutch | Side-lying | Laid-back (biological nurturing)",
"Correct latch – wide open mouth (>140°)",
"Chin touching breast; nose free",
"Lower lip flanged outward",
"More areola visible above than below",
"No pain; audible swallowing",
"Slow steady jaw movement (not rapid suckling)",
"FEEDING FREQUENCY: 8–12 times/24 h; demand (not scheduled)",
"DURATION: Until breast drained; hindmilk obtained after adequate emptying",
"Common error: timing feeds by clock → hindmilk deprivation",
"Nipple confusion: avoid bottles/pacifiers for first 4–6 weeks; use cup/spoon/SNS",
]
add_bullet_block(slide, Inches(6.8), Inches(1.75), Inches(6.1), Inches(5.1),
pos, font_size=Pt(12))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 10 – Topic 9: Common Problems
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_09(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 9, "Common Breastfeeding Problems & Management",
"Engorgement, mastitis, low supply, nipple issues")
problems = [
("ENGORGEMENT", TEAL,
["Days 3–5 postpartum",
"Treat: frequent feeding + warm compresses pre-feed, cold post-feed",
"Avoid pumping excessively (worsens supply mismatch)",
"Cabbage leaves: anecdotal, not evidence-based"]),
("NIPPLE PAIN / CRACKS", NAVY,
["Poor latch is #1 cause – correct first",
"Apply hindmilk/colostrum to heal",
"Nipple shields: last resort only; monitor adequacy",
"Rule out thrush (burning pain, satellite lesions)",
"Raynaud's of nipple: vasospasm → nifedipine for severe cases"]),
("MASTITIS", RED_WARN,
["Staphylococcus aureus most common",
"CONTINUE breastfeeding (promotes resolution)",
"Antibiotics: dicloxacillin/cloxacillin 10 days",
"If abscess: surgical drainage + continue BF from other breast",
"Recurrent mastitis: rule out ductal anomaly"]),
("LOW MILK SUPPLY", RGBColor(0x5D, 0x4E, 0x75),
["Perceived vs. real – assess latch and frequency first",
"Galactagogues: domperidone (preferred), metoclopramide",
"Primary causes: IGT, Sheehan's syndrome, breast surgery",
"Mechanical: frequent feeding + pumping is first-line"]),
("BREAST MILK JAUNDICE vs BF JAUNDICE", RGBColor(0x2E, 0x6D, 0x4B),
["BF jaundice (starvation): Days 2–5; poor intake; treat by improving latch",
"Breast milk jaundice: Day 7–14 onwards; β-glucuronidase in milk",
"Interruption test: 48 h pause → 30–50% bilirubin drop confirms diagnosis",
"Benign; no indication to stop BF long-term"]),
("OTHER PROBLEMS", RGBColor(0x5A, 0x62, 0x71),
["Nipple confusion: avoid bottles/pacifiers first 4–6 wks",
"Lipase activity in EBM: rancid taste → scald at 72°C before storage",
"Flat/inverted nipples: most resolve with correct latch technique",
"Lactation failure (primary/secondary): rule out systemic causes"]),
]
col_w = Inches(4.0)
col_h = Inches(2.55)
for i, (title, color, items) in enumerate(problems):
col = i % 3
row = i // 3
x = Inches(0.25) + col * (col_w + Inches(0.27))
y = Inches(1.35) + row * (col_h + Inches(0.15))
add_rect(slide, x, y, col_w, col_h, WHITE,
line_color=color, line_width=Pt(1.0))
add_rect(slide, x, y, col_w, Inches(0.33), color)
add_textbox(slide, x+Inches(0.1), y, col_w-Inches(0.2), Inches(0.33),
title, font_size=Pt(10), bold=True, color=WHITE,
align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
add_bullet_block(slide, x+Inches(0.1), y+Inches(0.37), col_w-Inches(0.2), col_h-Inches(0.42),
items, font_size=Pt(10.5))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 11 – Topic 10: Special Clinical Situations
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_10(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 10, "Breastfeeding in Special Clinical Situations",
"Preterm/NICU • HIV • Maternal infections • Infant conditions")
# Left column
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(0.35),
"PRETERM & NICU", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
nicu = [
"KMC (Kangaroo Mother Care): ↓mortality 40% in LBW; WHO 2023 – immediate KMC even for UNSTABLE infants",
"Preterm milk (first ~4 wks): ↑ protein, Na, IgA, lactoferrin; ↓ lactose vs. term",
"HMF (Human Milk Fortifier): required for VLBW (<1500 g)",
"Donor Human Milk: for <32 wks or <1500 g; Holder pasteurisation (62.5°C × 30 min)",
"Holder pasteurisation destroys HIV, CMV, bacteria but ↓ some bioactive factors",
"NEC prevention: human milk (maternal/donor) is most effective single strategy",
"Late preterm (34–36+6 wks): sleepy, poor suck; high BF failure risk; close monitoring",
"Preterm BF guided by infant competence/stability – NOT gestational age alone",
]
add_bullet_block(slide, Inches(0.35), Inches(1.75), Inches(6.0), Inches(3.2), nicu, font_size=Pt(11))
add_rect(slide, Inches(0.25), Inches(5.1), Inches(6.2), Inches(1.85), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.25), Inches(5.1), Inches(6.2), Inches(0.32), NAVY)
add_textbox(slide, Inches(0.3), Inches(5.1), Inches(6.1), Inches(0.32),
"HIV & BREASTFEEDING", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
hiv = [
"CDC (resource-rich): BF NOT recommended regardless of ART/viral load",
"WHO (resource-limited): BF + ART recommended; EBF for 6 months reduces MTCT",
"MTCT via milk: 5–20% without ART; <1–2% with ART + viral suppression",
"Mixed feeding > exclusive BF for MTCT risk (gut mucosal damage)",
]
add_bullet_block(slide, Inches(0.35), Inches(5.47), Inches(6.0), Inches(1.42), hiv, font_size=Pt(11))
# Right column
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(0.35), NAVY)
add_textbox(slide, Inches(6.75), Inches(1.35), Inches(6.2), Inches(0.35),
"MATERNAL INFECTIONS & INFANT CONDITIONS", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
spec_sit = [
"CMV: reactivates in milk; term infants – negligible risk; VLBW preterm – risk; Holder pasteurisation eliminates",
"Hep B: NOT CI; HBIG + vaccine within 12 h; BF begins immediately after immunoprophylaxis",
"Hep C: NOT CI (unless cracked/bleeding nipples)",
"TB: active – isolate mother; expressed milk can be given; after 2 wks treatment, direct BF safe",
"COVID-19: BF encouraged; SARS-CoV-2 not in milk; protective Ab in milk; wear mask during feed",
"Cleft lip/palate: Haberman feeder; supplemental nursing systems; cleft palate = BF difficult",
"Down syndrome: hypotonia challenges; BF beneficial; intensive support needed",
"CHD: ↑caloric need; may need high-cal supplement; BF reduces stress of feeding when possible",
"Diabetes (maternal): ↓insulin requirement while BF; watch for hypoglycaemia",
"Breast surgery: augmentation – usually safe; reduction – may impair milk ducts significantly",
"IGT (Insufficient Glandular Tissue): primary lactation failure; partial BF possible",
"Postpartum depression: BF protective; sertraline first-choice SSRI",
]
add_bullet_block(slide, Inches(6.8), Inches(1.75), Inches(6.1), Inches(5.1), spec_sit, font_size=Pt(11))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 12 – Topic 11: Neonatal Metabolism
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_11(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 11, "Breastfeeding & Neonatal Metabolism",
"Hypoglycaemia, jaundice, weight loss, vitamins, iron supplementation")
# Left col
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(0.35),
"NEONATAL HYPOGLYCAEMIA & WEIGHT", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
hypo = [
"At-risk groups: LGA, SGA, preterm, IDM",
"First-line: skin-to-skin + frequent BF",
"Buccal dextrose gel: 40% dextrose, 0.5 mL/kg → before formula supplementation",
"Normal weight loss: up to 7–10% of birth weight (>10% = evaluate)",
"Regain birth weight by Day 10–14",
"Weight gain: 20–30 g/day (0–3 m) | 15–20 g/day (3–6 m) | 10–15 g/day (6–12 m)",
"Hypernatraemic dehydration: lethargy, fever, brick-red urine crystals; serum Na >145",
"BF stools: yellow, seedy, loose (3–8/day early); by 6 wks may be every 7–10 days – NORMAL",
]
add_bullet_block(slide, Inches(0.35), Inches(1.75), Inches(6.0), Inches(3.1), hypo, font_size=Pt(11.5))
add_rect(slide, Inches(0.25), Inches(5.0), Inches(6.2), Inches(1.95), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.25), Inches(5.0), Inches(6.2), Inches(0.32), NAVY)
add_textbox(slide, Inches(0.3), Inches(5.0), Inches(6.1), Inches(0.32),
"JAUNDICE – BF vs. BREAST MILK (KEY DISTINCTION)", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
jaundice = [
"BF JAUNDICE (starvation, Days 2–5): poor intake; treat by improving latch/frequency",
"BREAST MILK JAUNDICE (Days 7–14+): β-glucuronidase + pregnanediol in milk",
"Interruption test: 48 h pause → 30–50% bilirubin drop confirms; restart BF safe",
"Benign; may persist up to 12 weeks; no indication to permanently stop BF",
]
add_bullet_block(slide, Inches(0.35), Inches(5.37), Inches(6.0), Inches(1.5), jaundice, font_size=Pt(11))
# Right col – vitamins, iron, VKDB
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(0.35), NAVY)
add_textbox(slide, Inches(6.75), Inches(1.35), Inches(6.2), Inches(0.35),
"SUPPLEMENTATION IN BREASTFED INFANTS", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
supp = [
"VITAMIN D: 400 IU/day from Day 1 (AAP/IAP) – maternal Vit D does not adequately enrich milk",
"VITAMIN K: IM at birth (prophylaxis); breast milk is LOW in Vit K",
"Late VKDB (Haemorrhagic disease of newborn): BF-associated complication – life-threatening intracranial bleed",
"IRON – Term EBF infants: iron-rich foods from 6 months; if not, supplement 1 mg/kg/day from 4 months (AAP)",
"IRON – Preterm/LBW: 2–4 mg/kg/day from 2–4 weeks of life",
"FLUORIDE: not before 6 months; supplement only if water <0.3 ppm",
"WHO growth standards (2006): based on EBF infants as gold standard",
"BF infants gain faster 0–3 months then SLOWER than formula-fed → normal, not inadequate",
"Growth faltering: weight-for-age <-2SD or crossing ≥2 major centile lines",
]
add_bullet_block(slide, Inches(6.8), Inches(1.75), Inches(6.1), Inches(5.1), supp, font_size=Pt(11.5))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 13 – Topic 12: Complementary Feeding / Extended BF
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_12(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 12, "Complementary Feeding, Weaning & Extended Breastfeeding",
"Timing • Readiness signs • WHO/AAP recommendations")
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(0.35),
"COMPLEMENTARY FEEDING", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
cf = [
"Initiate at 6 months (WHO) – NOT before 4 months (risk of allergy, obesity, infection)",
"SIGNS OF READINESS: head control, sits with support, loss of extrusion reflex, interest in food",
"BF remains PRIMARY nutrition until 12 months; supplement thereafter",
"AAP 2022: introduce allergenic foods (peanut, egg) early – reduces allergy risk",
"IYCF: age-appropriate food consistency, frequency, amount",
"Continued BF during illness: preferred (maintains hydration + immunity)",
"Avoid honey before 1 year (botulism risk)",
"Avoid cow's milk as main drink before 1 year",
"Iron-rich first foods recommended: meat, lentils, fortified cereals",
]
add_bullet_block(slide, Inches(0.35), Inches(1.75), Inches(6.0), Inches(5.1), cf, font_size=Pt(12))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(0.35), NAVY)
add_textbox(slide, Inches(6.75), Inches(1.35), Inches(6.2), Inches(0.35),
"EXTENDED BF & WEANING", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
wean = [
"WHO: continue BF to 2 years or beyond; no defined upper age limit medically",
"AAP 2022 (updated): at least 2 years of BF if mutually desired",
"Previous AAP: until at least 1 year – note the CHANGE for quiz purposes",
"Extended BF: non-nutritive benefits (comfort, immunity) predominate after 2 years",
"Weaning – GRADUAL preferred over abrupt (avoids engorgement, mastitis)",
"Child-led weaning: follows infant's developmental readiness",
"Mother-led weaning: drop one feed at a time over weeks",
"Abrupt weaning: risk of engorgement, mastitis, maternal mood changes",
"Sage tea, pseudoephedrine used to suppress lactation (anecdotal/limited evidence)",
"Cabergoline: effective pharmacological suppression of lactation if needed",
]
add_bullet_block(slide, Inches(6.8), Inches(1.75), Inches(6.1), Inches(5.1), wean, font_size=Pt(12))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 14 – Topic 13: Infant Growth
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_13(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 13, "Breastfeeding & Infant Growth",
"WHO Growth Standards • Weight gain norms • Growth faltering")
# Centre content with wide panels
add_rect(slide, Inches(0.25), Inches(1.35), Inches(12.8), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
# Sub headers and content
# Row 1: WHO standards
add_rect(slide, Inches(0.25), Inches(1.35), Inches(12.8), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.3), Inches(1.35), Inches(12.7), Inches(0.35),
"WHO GROWTH STANDARDS (2006) & NORMAL BF GROWTH PATTERN", font_size=Pt(12), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
who_items = [
"WHO 2006 standards were developed specifically from healthy EBF infants in 6 countries (Brazil, Ghana, India, Norway, Oman, USA)",
"BF infants gain weight FASTER in first 3 months, then SLOWER than formula-fed infants after 3 months",
"This divergence is normal and is NOT an indication to supplement with formula",
"Weight-for-age z-scores based on BF infants – formula-fed infants may falsely appear 'overweight' on these charts",
]
add_bullet_block(slide, Inches(0.35), Inches(1.75), Inches(12.5), Inches(1.55), who_items, font_size=Pt(12))
# Weight gain norms boxes
gain_data = [
("0–3 months", "20–30 g/day"),
("3–6 months", "15–20 g/day"),
("6–12 months", "10–15 g/day"),
("Birth weight doubled", "~4–5 months"),
("Birth weight tripled", "~12 months"),
]
box_w2 = Inches(2.4)
for i, (period, gain) in enumerate(gain_data):
x2 = Inches(0.35) + i * (box_w2 + Inches(0.13))
add_rect(slide, x2, Inches(3.42), box_w2, Inches(0.95),
NAVY if i % 2 == 0 else TEAL)
add_textbox(slide, x2, Inches(3.42), box_w2, Inches(0.42),
period, font_size=Pt(11), bold=True, color=WHITE,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
add_textbox(slide, x2, Inches(3.84), box_w2, Inches(0.53),
gain, font_size=Pt(14), bold=True, color=AMBER,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
# Growth faltering
add_rect(slide, Inches(0.25), Inches(4.5), Inches(12.8), Inches(0.32), NAVY)
add_textbox(slide, Inches(0.3), Inches(4.5), Inches(12.7), Inches(0.32),
"GROWTH FALTERING DEFINITION & MANAGEMENT", font_size=Pt(12), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
gf = [
"Weight for age <-2 SD (z-score) OR crossing ≥2 major centile lines downward",
"Assessment: latch, frequency, foremilk/hindmilk balance, maternal milk supply, infant illness",
"Primary BF problem: correct latch; ensure hindmilk delivery; consider galactagogue if supply confirmed low",
"Organic causes to exclude: metabolic disorders, structural anomalies (cardiac, palate), neuromuscular conditions",
"Supplementation: use donor human milk > formula if supplementation unavoidable in NICU settings",
]
add_bullet_block(slide, Inches(0.35), Inches(4.87), Inches(12.5), Inches(2.0), gf, font_size=Pt(12))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 15 – Topic 14: Expressed Breast Milk
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_14(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 14, "Expressed Breast Milk (EBM) – Storage & Handling",
"Storage durations • Thawing • Human Milk Banks")
# Storage table
add_rect(slide, Inches(0.25), Inches(1.35), Inches(12.8), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.3), Inches(1.35), Inches(12.7), Inches(0.35),
"EBM STORAGE GUIDELINES", font_size=Pt(12), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
storage = [
("Room temperature", "25°C", "4 hours", TEAL),
("Refrigerator", "4°C", "4 days", NAVY),
("Freezer compartment (inside fridge)", "-15°C", "2 weeks", RGBColor(0x2E, 0x6D, 0x8A)),
("Deep freeze (separate door)", "-18 to -20°C", "6 months", RGBColor(0x1A, 0x4F, 0x7A)),
("Ultra-low deep freeze", "-80°C", "12 months", RGBColor(0x0F, 0x2D, 0x5A)),
]
row_h = Inches(0.72)
headers = ["LOCATION", "TEMPERATURE", "DURATION"]
header_x = [Inches(0.25), Inches(4.8), Inches(9.0)]
header_w = [Inches(4.5), Inches(4.15), Inches(3.85)]
for j, (hdr, hx, hw) in enumerate(zip(headers, header_x, header_w)):
add_rect(slide, hx, Inches(1.75), hw, Inches(0.35), NAVY)
add_textbox(slide, hx, Inches(1.75), hw, Inches(0.35),
hdr, font_size=Pt(11), bold=True, color=WHITE,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
for ri, (loc, temp, dur, col) in enumerate(storage):
ry = Inches(2.13) + ri * row_h
bg = WHITE if ri % 2 == 0 else LIGHT_GREY
add_rect(slide, Inches(0.25), ry, Inches(13.0), row_h, bg)
add_textbox(slide, Inches(0.35), ry, Inches(4.35), row_h,
loc, font_size=Pt(12), bold=False, color=DARK_TEXT,
align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
add_rect(slide, Inches(4.8), ry+Inches(0.17), Inches(4.15), row_h-Inches(0.34), col)
add_textbox(slide, Inches(4.8), ry, Inches(4.15), row_h,
temp, font_size=Pt(13), bold=True, color=WHITE,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
add_rect(slide, Inches(9.0), ry+Inches(0.17), Inches(3.85), row_h-Inches(0.34), col)
add_textbox(slide, Inches(9.0), ry, Inches(3.85), row_h,
dur, font_size=Pt(14), bold=True, color=WHITE,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
# Notes below
add_rect(slide, Inches(0.25), Inches(5.7), Inches(12.8), Inches(1.25), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
notes = [
"Thawing: refrigerator overnight OR warm water (NOT microwave – destroys enzymes, creates hot spots)",
"Once thawed: use within 24 hours; do NOT refreeze",
"Lipase activity: some infants reject EBM (rancid taste) → scald at 72°C before storage to inactivate",
"Holder Pasteurisation (for Milk Banks): 62.5°C × 30 min; eliminates HIV, CMV, bacteria",
]
add_bullet_block(slide, Inches(0.35), Inches(5.75), Inches(12.5), Inches(1.1),
notes, font_size=Pt(11.5))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 16 – Topic 15: Galactagogues
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_15(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 15, "Galactagogues",
"Pharmacological • Herbal • Evidence & Safety")
# Pharmacological
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(0.35),
"PHARMACOLOGICAL GALACTAGOGUES", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
pharm = [
"DOMPERIDONE (preferred):",
" Dopamine antagonist → ↑ prolactin",
" Less CNS side effects than metoclopramide",
" CAUTION: QTc prolongation; cardiac arrhythmia risk",
" CONTRAINDICATED with CYP3A4 inhibitors (azoles, erythromycin)",
"",
"METOCLOPRAMIDE:",
" Also dopamine antagonist → ↑ prolactin",
" Crosses BBB → extrapyramidal reactions (tardive dyskinesia risk)",
" Second-line; short courses only",
"",
"OXYTOCIN (intranasal): no longer routinely recommended",
"",
"FIRST-LINE APPROACH: frequent feeding + pumping",
"Evidence base for all galactagogues is weak to moderate",
]
add_bullet_block(slide, Inches(0.35), Inches(1.75), Inches(6.0), Inches(5.1), pharm, font_size=Pt(12))
# Herbal + principles
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(0.35), NAVY)
add_textbox(slide, Inches(6.75), Inches(1.35), Inches(6.2), Inches(0.35),
"HERBAL GALACTAGOGUES & PRINCIPLES", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
herbal = [
"FENUGREEK: most studied herbal; phytoestrogens → ↑ prolactin; caution – lowers blood glucose (diabetics)",
"SHATAVARI (Asparagus racemosus): widely used in India; phytoestrogenic; limited RCT data",
"Blessed thistle, moringa: used traditionally; limited evidence",
"",
"KEY PRINCIPLES FOR GALACTAGOGUE USE:",
"Rule out modifiable causes first: poor latch, infrequent feeds, stress, pain, retained placenta",
"Correct the cause → often resolves without drugs",
"Assess actual supply vs. perceived insufficient milk",
"Cabergoline: for SUPPRESSION of lactation (not stimulation); very effective",
"Bromocriptine (Parlodel): suppresses lactation – NOT a galactagogue; no longer used for suppression due to CVA risk",
"",
"PERCEIVED vs. REAL LOW SUPPLY:",
"Most mothers have sufficient milk; perceived insufficiency is #1 reason for early cessation",
"True primary lactation failure: IGT, Sheehan's syndrome, breast surgery",
]
add_bullet_block(slide, Inches(6.8), Inches(1.75), Inches(6.1), Inches(5.1), herbal, font_size=Pt(11.5))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 17 – Topic 16: Legal, Ethical & Policy Frameworks
# ─────────────────────────────────────────────────────────────────────────────
def make_slide_16(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, LIGHT_GREY)
slide_header(slide, 16, "Legal, Ethical & Policy Frameworks",
"WHO Code • ILO • India legislation • Rights")
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(0.25), Inches(1.35), Inches(6.2), Inches(0.35), TEAL)
add_textbox(slide, Inches(0.3), Inches(1.35), Inches(6.1), Inches(0.35),
"INTERNATIONAL CODE & POLICY", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
intl = [
"WHO International Code of Marketing of Breast-milk Substitutes (1981):",
" No advertising of formula to the public",
" No free samples in health facilities or to mothers",
" Labels must not idealise formula feeding",
" No promotion of bottles, teats, or dummies",
"",
"ILO Maternity Protection Convention:",
" Paid maternity leave entitlement",
" Paid breastfeeding breaks during work hours",
"",
"BFHI (Baby-Friendly Hospital Initiative): WHO + UNICEF; Ten Steps",
"Sustainable Development Goals: SDG 2 (Zero Hunger) + SDG 3 linked to BF",
"Global Nutrition Targets 2030: ≥70% EBF rate target (from current ~44%)",
]
add_bullet_block(slide, Inches(0.35), Inches(1.75), Inches(6.0), Inches(5.1), intl, font_size=Pt(12))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(5.6), WHITE,
line_color=RGBColor(0xCC,0xCC,0xCC), line_width=Pt(0.5))
add_rect(slide, Inches(6.7), Inches(1.35), Inches(6.3), Inches(0.35), NAVY)
add_textbox(slide, Inches(6.75), Inches(1.35), Inches(6.2), Inches(0.35),
"INDIA-SPECIFIC LEGISLATION & QUIZ HIGH-YIELD FACTS", font_size=Pt(11), bold=True,
color=WHITE, align=PP_ALIGN.LEFT, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0.1), margin_t=Inches(0))
india = [
"Maternity Benefit (Amendment) Act 2017: 26 weeks paid maternity leave (previously 12 weeks)",
"Creche facilities mandatory for establishments with ≥50 employees",
"IMS Act 1992 (India): restricts promotion of infant formula",
"Right to breastfeed in public: legally protected in most countries",
"",
"HIGH-YIELD QUIZ DISTINCTIONS:",
"AAP 2022 update: 2 years of BF (changed from 1 year) – know this!",
"Galactosemia = ONLY absolute metabolic CI to BF",
"HIV – two answers (WHO vs CDC) depending on resource setting",
"KMC 2023 update: IMMEDIATE even for UNSTABLE infants",
"Breast milk jaundice ≠ breastfeeding jaundice (key distinction)",
"Buccal dextrose gel: 40% concentration, 0.5 mL/kg",
"Holder pasteurisation: 62.5°C × 30 min",
"RID >10% = threshold of concern (lithium, amiodarone, iodine)",
]
add_bullet_block(slide, Inches(6.8), Inches(1.75), Inches(6.1), Inches(5.1), india, font_size=Pt(11.5))
slide_footer(slide)
# ─────────────────────────────────────────────────────────────────────────────
# SLIDE 18 – Summary / High-Yield Recap
# ─────────────────────────────────────────────────────────────────────────────
def make_summary_slide(prs):
slide = prs.slides.add_slide(blank)
add_rect(slide, 0, 0, W, H, NAVY)
add_rect(slide, 0, Inches(1.2), W, Inches(0.08), AMBER)
add_rect(slide, 0, Inches(6.85), W, Inches(0.08), TEAL)
add_textbox(slide, Inches(0.5), Inches(0.15), Inches(12.3), Inches(1.0),
"HIGH-YIELD RECAP – 18 Points Every MD/DM Must Know",
font_size=Pt(26), bold=True, color=WHITE,
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
# Two columns
left_points = [
"1. Lactogenesis II trigger: progesterone withdrawal (not prolactin rise)",
"2. Foremilk = high lactose; Hindmilk = high fat (don't time-limit feeds!)",
"3. SIgA in colostrum: ~12 g/L (vs. 1 g/L in mature milk)",
"4. AAP 2022: BF until ≥2 years (updated from 1 year)",
"5. Early initiation within 1 hour: ↓ neonatal mortality 22%",
"6. Galactosemia: ONLY absolute metabolic CI to breastfeeding",
"7. HIV: CDC = no BF; WHO = BF + ART in resource-limited settings",
"8. RID >10%: lithium, amiodarone, iodine – reassess breastfeeding",
"9. Codeine: AVOID in BF mothers (CYP2D6 ultra-metaboliser risk)",
]
right_points = [
"10. Buccal dextrose gel: 40%, 0.5 mL/kg before formula supplementation",
"11. KMC 2023 (WHO): immediate KMC even for unstable LBW infants",
"12. Holder pasteurisation: 62.5°C × 30 min (destroys HIV, CMV)",
"13. Breast milk jaundice (Day 7+) vs. BF jaundice (Day 2–5, starvation)",
"14. Vitamin D: 400 IU/day from Day 1 for all EBF infants",
"15. Late VKDB: BF-associated; life-threatening if Vit K prophylaxis missed",
"16. WHO growth standards = based on EBF infants; slower gain 3–12 m is normal",
"17. Domperidone: preferred galactagogue; risk QTc prolongation",
"18. Entero-mammary axis: MALT → targeted maternal SIgA against shared pathogens",
]
add_bullet_block(slide, Inches(0.4), Inches(1.4), Inches(6.2), Inches(5.35),
left_points, font_size=Pt(12), text_color=WHITE)
add_bullet_block(slide, Inches(6.9), Inches(1.4), Inches(6.1), Inches(5.35),
right_points, font_size=Pt(12), text_color=WHITE)
add_textbox(slide, Inches(0.5), Inches(6.85), Inches(12.3), Inches(0.55),
"National Breastfeeding Day | MD/DM Paediatrics Quiz | August 2025 | 16 Topics • 18 High-Yield Facts",
font_size=Pt(10), bold=False, color=RGBColor(0xAA,0xCC,0xEE),
align=PP_ALIGN.CENTER, v_anchor=MSO_ANCHOR.MIDDLE,
margin_l=Inches(0), margin_t=Inches(0))
# ─────────────────────────────────────────────────────────────────────────────
# BUILD ALL SLIDES
# ─────────────────────────────────────────────────────────────────────────────
make_title_slide(prs)
make_slide_01(prs)
make_slide_02(prs)
make_slide_03(prs)
make_slide_04(prs)
make_slide_05(prs)
make_slide_06(prs)
make_slide_07(prs)
make_slide_08(prs)
make_slide_09(prs)
make_slide_10(prs)
make_slide_11(prs)
make_slide_12(prs)
make_slide_13(prs)
make_slide_14(prs)
make_slide_15(prs)
make_slide_16(prs)
make_summary_slide(prs)
# ─────────────────────────────────────────────────────────────────────────────
# SAVE
# ─────────────────────────────────────────────────────────────────────────────
output_path = "/tmp/workspace/breastfeeding-quiz-pptx/Breastfeeding_MD_DM_Paediatrics_Quiz.pptx"
buf = BytesIO()
prs.save(buf)
with open(output_path, "wb") as f:
f.write(buf.getvalue())
print(f"Saved: {output_path}")
print(f"Slides: {len(prs.slides)}")
Should I want to subscribe for ORIS to generate PDF hereafter? Yes.