Explain each risk of artificial breatfeeding from textbooks
| Risk | Core Mechanism |
|---|---|
| (a) Type 1 Diabetes | Missing immune tolerance from breast milk; cow's milk protein autoimmunity |
| (b) SIDS | Loss of arousal, immunologic, and sleep-cycle protective effects of breastfeeding |
| (c) Adult Type 2 Diabetes | Early programming of insulin resistance; formula's higher protein/insulin load |
| (d) Childhood Obesity | Loss of suckling-driven self-regulation; IGF-1 driven adipogenesis |
| (e) Adult Obesity | Metabolic programming of adiposity set-point in infancy |
| (f) Crohn's Disease | Impaired gut mucosal development; dysbiosis; immune dysregulation |
| (g) Ulcerative Colitis | Same as above - altered mucosal immunity and microbiome |
| (h) Atopic Dermatitis | Th2 immune skewing; sensitization to formula proteins |
| (i) Reduced IQ | Absence of DHA and cholesterol needed for CNS myelination and synaptogenesis |
Just main main points If possible with diagram or picture
Medical educational diagram showing long-term risks of exclusive artificial bottle feeding in infants. Central image of a baby bottle with 9 risks branching out as labeled arrows or boxes around it: (a) Type 1 Diabetes - autoimmune beta cell destruction, (b) Sudden Infant Death - loss of arousal protection, (c) Adult Type 2 Diabetes - insulin resistance programming, (d) Childhood Obesity - overfeeding, loss of self-regulation, (e) Adult Obesity - metabolic programming, (f) Crohn's Disease - gut dysbiosis, (g) Ulcerative Colitis - mucosal immune dysregulation, (h) Atopic Dermatitis - Th2 allergic sensitization, (i) Reduced IQ - lack of DHA for brain development. Clean medical infographic style with clear labels and icons.

| # | Risk | Key Point |
|---|---|---|
| a | Type 1 Diabetes | Formula proteins trigger autoimmune attack on pancreatic beta cells |
| b | Sudden Infant Death (SIDS) | No breastfeeding = less arousal from sleep + more respiratory infections |
| c | Adult Type 2 Diabetes | Early formula feeding programs insulin resistance (OR 0.41 for breastfed vs bottle-fed) |
| d | Childhood Obesity | Bottle-fed babies can't self-regulate intake; formula drives excess IGF-1 |
| e | Adult Obesity | Metabolic "programming" in infancy sets a higher adiposity set-point for life |
| f | Crohn's Disease | No breast milk = poor gut mucosal development + gut dysbiosis |
| g | Ulcerative Colitis | Same - altered microbiome and impaired colonic immune tolerance |
| h | Atopic Dermatitis | Formula proteins sensitize neonatal gut → Th2 allergic response → eczema |
| i | Reduced IQ | Breast milk DHA & cholesterol are essential for brain myelination; formula lacks these |
Also add conditions and advantage of artificial breastfeeding Kinda of bottle, sterilisation, process to clean, duration of bottle to use
Medical educational infographic about artificial bottle feeding for infants. Split into 4 clear sections with icons: 1) Indications/Conditions when bottle feeding is needed (maternal HIV, galactosemia, medications, insufficient milk), 2) Advantages of bottle feeding (shared feeding, measured intake, maternal freedom), 3) Types of feeding bottles (glass, BPA-free plastic, silicone, anti-colic), 4) Sterilization and cleaning process steps with icons (wash, boil, steam sterilize, dry). Clean professional medical infographic style with soft colors.
Medical infographic showing bottle sterilization steps for infant feeding: Step 1 - disassemble bottle parts, Step 2 - wash with hot soapy water and bottle brush, Step 3 - rinse thoroughly, Step 4 - boil in water for 5 minutes OR use electric steam sterilizer, Step 5 - air dry on clean rack, Step 6 - store in clean covered container. Simple numbered steps with clear icons, medical educational style, clean white background with soft blue and green colors.


| Condition | Reason |
|---|---|
| Maternal HIV / HTLV-I | Virus transmitted through breast milk |
| Active pulmonary TB | Risk of airborne transmission during close contact feeding |
| Herpetic breast lesions | Direct contact transmission to infant |
| Ebola / Marburg / Lassa / Dengue | Viral transmission via milk |
| Maternal substance abuse | Drugs pass into breast milk |
| Galactosemia (infant) | Cannot tolerate lactose in any milk; needs lactose-free formula |
| Certain maternal medications | Chemotherapy, radioactive iodine, some antivirals (check LactMed) |
| Insufficient milk / lactation failure | After all support measures exhausted |
| Maternal death / severe illness | Infant requires alternative feeding |
| Advantage | Detail |
|---|---|
| Shared feeding | Father/caregiver can feed - promotes bonding and gives mother rest |
| Measurable intake | Exact volume known - useful in monitoring growth or illness |
| Maternal freedom | No feeding schedule tied to mother; mother can return to work |
| Maternal medications | Mother can take drugs contraindicated in breastfeeding |
| No maternal diet restrictions | No need to avoid alcohol, caffeine, certain foods |
| Comfortable for mother | No nipple pain, mastitis, engorgement |
| Consistent composition | Formula is standardized (no variation with maternal nutrition) |
| Type | Key Points |
|---|---|
| Glass | Most hygienic, no chemical leaching, heavy, breakable |
| BPA-free Plastic | Lightweight, durable - must be BPA-free (BPA causes hormonal disruption) |
| Silicone | Soft, flexible, durable, heat-resistant, good for older infants |
| Anti-colic bottles | Built-in vent reduces air swallowing - reduces colic and gas |
| Wide-neck bottles | Easier to clean; mimics breast shape |
Nipple sizes: Use slow-flow (Size 1) for newborns; increase flow size as baby grows. Wrong flow size = choking or frustration.
| Method | How | Time |
|---|---|---|
| Boiling | Submerge in boiling water | 5 minutes |
| Steam steriliser (electric) | Place items, add water, switch on | 8-12 min |
| Microwave steam | Microwave-safe steriliser bag | 2-4 min |
| Cold water steriliser (chemical) | Submerge in sterilising solution | 30 min |
After sterilising: store in steriliser or covered clean container. Use within 24 hours or re-sterilise.
| Item | Replacement Guideline |
|---|---|
| Teats/Nipples | Replace every 4-6 weeks (silicone sooner if cracked, discoloured, or weak) |
| Plastic bottles | Replace every 3-6 months or if scratched/cloudy (bacteria harbour in scratches) |
| Glass bottles | Replace if chipped or cracked |
| Anti-colic vents/valves | Replace every 4 weeks |
| Bottle brush | Replace monthly |
Key rule: If the teat is sticky, cracked, torn, or the hole has enlarged - discard immediately. A worn teat can cause the infant to swallow excessive air or choke.
Can you make pdf white bkg with black font of all these information Not in table form Just matter with a given heading
mkdir -p /tmp/workspace/bottle-feeding-pdf
~/bottle-feeding-pdf/generate_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm
from reportlab.lib import colors
from reportlab.platypus import SimpleDocTemplate, Paragraph, Spacer, HRFlowable
from reportlab.lib.enums import TA_LEFT, TA_CENTER
OUTPUT = "/tmp/workspace/bottle-feeding-pdf/Artificial_Bottle_Feeding.pdf"
doc = SimpleDocTemplate(
OUTPUT,
pagesize=A4,
rightMargin=2.5*cm,
leftMargin=2.5*cm,
topMargin=2.5*cm,
bottomMargin=2.5*cm,
)
styles = getSampleStyleSheet()
# Custom styles
title_style = ParagraphStyle(
"MainTitle",
fontName="Helvetica-Bold",
fontSize=18,
textColor=colors.black,
spaceAfter=6,
alignment=TA_CENTER,
)
subtitle_style = ParagraphStyle(
"Subtitle",
fontName="Helvetica",
fontSize=11,
textColor=colors.black,
spaceAfter=16,
alignment=TA_CENTER,
)
heading1_style = ParagraphStyle(
"Heading1",
fontName="Helvetica-Bold",
fontSize=14,
textColor=colors.black,
spaceBefore=18,
spaceAfter=6,
borderPad=2,
)
heading2_style = ParagraphStyle(
"Heading2",
fontName="Helvetica-Bold",
fontSize=12,
textColor=colors.black,
spaceBefore=12,
spaceAfter=4,
)
body_style = ParagraphStyle(
"Body",
fontName="Helvetica",
fontSize=10.5,
textColor=colors.black,
spaceAfter=6,
leading=16,
)
bullet_style = ParagraphStyle(
"Bullet",
fontName="Helvetica",
fontSize=10.5,
textColor=colors.black,
spaceAfter=4,
leading=16,
leftIndent=16,
bulletIndent=0,
)
story = []
# ── TITLE ──────────────────────────────────────────────────────────────────
story.append(Paragraph("Artificial (Bottle) Feeding", title_style))
story.append(Paragraph("A Complete Guide — Risks, Indications, Advantages, Equipment & Sterilisation", subtitle_style))
story.append(HRFlowable(width="100%", thickness=1.2, color=colors.black, spaceAfter=14))
# ══════════════════════════════════════════════════════════════════════
# SECTION 1: LONG-TERM RISKS
# ══════════════════════════════════════════════════════════════════════
story.append(Paragraph("Long-Term Risks of Exclusive Artificial (Bottle) Feeding", heading1_style))
story.append(HRFlowable(width="100%", thickness=0.5, color=colors.black, spaceAfter=8))
story.append(Paragraph("(a) Type 1 Diabetes", heading2_style))
story.append(Paragraph(
"Breast milk contains over 50 immunologically active components including secretory IgA, lactoferrin, T and B lymphocytes, macrophages, and growth factors that support maturation of the mucosal barrier of the gut and developing immune system. These are absent from formula. Cow's milk proteins in formula may trigger an autoimmune attack on pancreatic beta cells in genetically susceptible infants, increasing the risk of insulin-dependent (type 1) diabetes. Studies show lower odds of type 1 diabetes in exclusively breastfed infants.",
body_style))
story.append(Paragraph("(b) Sudden Infant Death Syndrome (SIDS)", heading2_style))
story.append(Paragraph(
"Breastfed infants have a significantly reduced risk of SIDS. Breastfeeding promotes lighter sleep arousal cycles, reduces respiratory and infectious illness that are known SIDS risk factors, and provides immunologic components that protect against viral and bacterial infections. Bottle-fed babies spend longer periods in deep sleep and miss these protective effects.",
body_style))
story.append(Paragraph("(c) Adult Type 2 Diabetes", heading2_style))
story.append(Paragraph(
"Formula feeding programs insulin resistance from infancy due to its higher protein load, which drives excess insulin secretion and may impair long-term beta cell function. Exclusively breastfed infants show significantly lower rates of non-insulin-dependent diabetes mellitus across all age groups. The odds ratio for diabetes in exclusively breastfed vs. exclusively formula-fed individuals is 0.41 (95% CI: 0.18 to 0.93) — meaning bottle-fed infants carry more than double the risk.",
body_style))
story.append(Paragraph("(d) Childhood Obesity", heading2_style))
story.append(Paragraph(
"Bottle-fed infants cannot self-regulate their milk intake the way breastfed infants can. At the breast, a baby alters its suckling pattern to control intake. Formula-fed infants are given measured amounts that may override satiety cues and promote overfeeding. Additionally, formula's higher protein content stimulates higher IGF-1 secretion, promoting greater fat cell (adipocyte) development in early life.",
body_style))
story.append(Paragraph("(e) Adult Obesity", heading2_style))
story.append(Paragraph(
"The same mechanisms driving childhood obesity extend into adult life through metabolic programming. Early infant feeding practices set the body weight regulation set-point, adipose tissue distribution, and metabolic rate for life. The more exclusively and longer an infant is breastfed, the greater the protection against long-term obesity. Formula-fed infants who receive no breast milk carry the greatest risk.",
body_style))
story.append(Paragraph("(f) Crohn's Disease", heading2_style))
story.append(Paragraph(
"Breastfeeding supports the healthy development of the intestinal mucosal barrier and a normal gut microbiome through oligosaccharides, bifidus factor, secretory IgA, and growth factors found in breast milk. Formula-fed infants develop a different, less diverse gut microbiome with reduced Bifidobacterium and Lactobacillus colonisation. In genetically susceptible individuals, this failure to develop a mature gut mucosal barrier and normal immune tolerance may contribute to the dysregulated intestinal immune response that underlies Crohn's disease.",
body_style))
story.append(Paragraph("(g) Ulcerative Colitis", heading2_style))
story.append(Paragraph(
"Similar to Crohn's disease, the absence of breast milk's mucosal protective factors — IgA, lactoferrin, growth factors, bifidus factor — leaves the colonic mucosa of formula-fed infants more vulnerable to immune dysregulation. The altered gut microbiome in formula-fed infants creates a pro-inflammatory intestinal environment that may predispose to ulcerative colitis in susceptible individuals.",
body_style))
story.append(Paragraph("(h) Atopic Dermatitis (Eczema)", heading2_style))
story.append(Paragraph(
"Exclusive breastfeeding for at least 4 to 6 months shows a clear protective effect against atopic dermatitis and eczema. Breast milk's immunologic components guide the infant's immune system toward a Th1 response rather than the Th2 allergic response. Small amounts of food antigens passed through breast milk help establish immune tolerance. Formula proteins are foreign antigens to the neonatal gut and repeated exposure can drive IgE-mediated allergic sensitisation, manifesting as atopic dermatitis.",
body_style))
story.append(Paragraph("(i) Reduced Intelligence Quotient (IQ)", heading2_style))
story.append(Paragraph(
"Breast milk contains cholesterol and docosahexaenoic acid (DHA) that play a direct role in central nervous system development, contributing to myelination and synaptic formation. Neurodevelopmental studies consistently show better results on intelligence tests, developmental performance, visual acuity, and school performance for exclusively breastfed infants. One of the most consistent findings is a few IQ test points advantage to the breastfed infant. Formula-fed infants who receive no breast milk at all carry the greatest disadvantage.",
body_style))
story.append(Spacer(1, 10))
# ══════════════════════════════════════════════════════════════════════
# SECTION 2: INDICATIONS
# ══════════════════════════════════════════════════════════════════════
story.append(Paragraph("Conditions When Artificial Feeding is Indicated", heading1_style))
story.append(HRFlowable(width="100%", thickness=0.5, color=colors.black, spaceAfter=8))
story.append(Paragraph(
"Breastfeeding is recommended for all infants unless there is a specific contraindication. True contraindications are few but important:",
body_style))
indications = [
("Maternal HIV or HTLV-I infection", "The virus is transmitted through breast milk. Formula feeding is recommended in settings where safe alternatives are available."),
("Active pulmonary tuberculosis", "Risk of airborne transmission during the close contact of breastfeeding. Feeding can resume after 2 weeks of effective treatment."),
("Herpetic breast lesions", "Direct contact transmission to the infant during feeding is a risk. Expressed milk from unaffected breast may be used."),
("Ebola, Marburg, Lassa, or Dengue virus infection", "Viral transmission through breast milk is a risk when a safe alternative food source is available."),
("Maternal substance abuse", "Illicit drugs and uncontrolled alcohol intake pass into breast milk and harm the infant."),
("Infant galactosemia", "The infant cannot tolerate lactose found in any milk. A lactose-free formula is required. In milder forms, partial breastfeeding may be possible."),
("Certain maternal medications", "Chemotherapy agents, radioactive iodine, and some antivirals are contraindicated during breastfeeding. Most medications are compatible — always check LactMed."),
("Lactation failure or insufficient milk supply", "After all support measures (lactation consultant, frequent feeding, pumping) have been exhausted."),
("Maternal death or severe debilitating illness", "The infant requires an alternative caregiver and feeding method."),
]
for title, detail in indications:
story.append(Paragraph(f"<b>{title}</b>", bullet_style))
story.append(Paragraph(detail, ParagraphStyle("IndentBody", parent=body_style, leftIndent=16, spaceAfter=6)))
story.append(Spacer(1, 10))
# ══════════════════════════════════════════════════════════════════════
# SECTION 3: ADVANTAGES
# ══════════════════════════════════════════════════════════════════════
story.append(Paragraph("Advantages of Artificial (Bottle) Feeding", heading1_style))
story.append(HRFlowable(width="100%", thickness=0.5, color=colors.black, spaceAfter=8))
advantages = [
("Shared feeding responsibility", "The father, grandparent, or other caregiver can feed the infant, promoting bonding between the infant and other family members and giving the mother essential rest."),
("Measurable intake", "The exact volume consumed at each feed is known. This is useful for monitoring growth, managing illness, or when precise intake tracking is medically required."),
("Maternal freedom and flexibility", "The mother is not tied to a feeding schedule. She can return to work, travel, or be separated from the infant without disruption to feeding."),
("Maternal medications", "The mother can take medications that are contraindicated during breastfeeding, including treatments for cancer, certain infections, or psychiatric conditions."),
("No maternal dietary restrictions", "The mother does not need to restrict her intake of alcohol, caffeine, certain foods, or medications on the basis of breast milk safety."),
("Physical comfort for the mother", "Avoids nipple pain, cracked nipples, mastitis, breast engorgement, and the physical demands of frequent nursing."),
("Consistent formula composition", "Commercial infant formula is standardised and does not vary with maternal nutrition status, hydration, or health, unlike breast milk."),
("Useful in special medical situations", "Premature infants or infants with certain metabolic conditions may require a specialised formula that provides nutrients not available in breast milk alone."),
]
for title, detail in advantages:
story.append(Paragraph(f"<b>{title}</b>", bullet_style))
story.append(Paragraph(detail, ParagraphStyle("IndentBody2", parent=body_style, leftIndent=16, spaceAfter=6)))
story.append(Spacer(1, 10))
# ══════════════════════════════════════════════════════════════════════
# SECTION 4: TYPES OF BOTTLES
# ══════════════════════════════════════════════════════════════════════
story.append(Paragraph("Types of Feeding Bottles", heading1_style))
story.append(HRFlowable(width="100%", thickness=0.5, color=colors.black, spaceAfter=8))
bottle_types = [
("Glass bottles", "The most hygienic option. Does not leach any chemicals into formula. Easy to sterilise and does not scratch or cloud over time. Disadvantages include being heavy and breakable, making them less ideal for older infants who hold their own bottles."),
("BPA-free plastic bottles", "Lightweight and durable. Must be confirmed BPA-free as bisphenol-A (BPA) is a chemical that can leach into formula and disrupt hormonal development. Always check the label before purchasing. Replace when scratched or cloudy as bacteria harbour in surface scratches."),
("Silicone bottles", "Soft, flexible, durable, and heat-resistant. A good compromise between glass and plastic. Well-suited for older infants. More expensive but long-lasting."),
("Anti-colic bottles", "Designed with a built-in vent or straw system that reduces the amount of air the infant swallows during feeding. Reduces colic, gas, and reflux. Particularly recommended for infants who are gassy or colicky."),
("Wide-neck bottles", "Wider opening makes them easier to clean thoroughly. The wider teat better mimics the shape of the breast, which can help infants who alternate between breast and bottle feeding."),
("Disposable liner bottles", "Pre-sterilised liners are placed inside a reusable shell. Convenient for travel. The liner collapses as the infant drinks, reducing air ingestion."),
]
for title, detail in bottle_types:
story.append(Paragraph(f"<b>{title}</b>", bullet_style))
story.append(Paragraph(detail, ParagraphStyle("IndentBody3", parent=body_style, leftIndent=16, spaceAfter=6)))
story.append(Paragraph(
"Teat/Nipple Flow Sizes: Use Size 1 (slow flow) for newborns. Increase the flow size as the baby grows and demonstrates frustration with slow flow or takes excessively long to feed. Using a fast-flow teat too early can cause choking and aspiration.",
body_style))
story.append(Spacer(1, 10))
# ══════════════════════════════════════════════════════════════════════
# SECTION 5: STERILISATION
# ══════════════════════════════════════════════════════════════════════
story.append(Paragraph("Cleaning and Sterilisation of Feeding Equipment", heading1_style))
story.append(HRFlowable(width="100%", thickness=0.5, color=colors.black, spaceAfter=8))
story.append(Paragraph(
"All feeding equipment must be cleaned and sterilised before every feed for infants under 12 months of age. The infant immune system is immature and cannot fight infections that a healthy adult would easily handle. Sterilisation failure is one of the most common causes of infant gastroenteritis in bottle-fed babies.",
body_style))
story.append(Paragraph("Step-by-Step Washing Process (Before Every Feed)", heading2_style))
wash_steps = [
"Disassemble — separate the bottle, teat/nipple, ring, and cap completely.",
"Rinse immediately with cold water to remove all milk residue. Do not use hot water first as it can cause milk protein to stick.",
"Wash all parts with hot soapy water using a dedicated bottle brush. Scrub the inside of the bottle and squeeze soapy water through the teat hole to clean inside the teat.",
"Rinse thoroughly under running water to remove all soap residue.",
"Air dry upside down on a clean drying rack. Do not towel dry as towels introduce bacteria.",
]
for i, step in enumerate(wash_steps, 1):
story.append(Paragraph(f"Step {i}: {step}", bullet_style))
story.append(Spacer(1, 8))
story.append(Paragraph("Sterilisation Methods", heading2_style))
sterilise_methods = [
("Boiling method", "Fully submerge all disassembled parts in a large pot of boiling water. Boil for a minimum of 5 minutes. Ensure no air bubbles are trapped inside bottles or teats. Remove with clean tongs."),
("Electric steam steriliser", "Place all disassembled parts into the steriliser, add the required amount of water, and run the cycle (typically 8 to 12 minutes). Items remain sterile inside the closed steriliser for up to 24 hours."),
("Microwave steam steriliser", "Use a microwave-safe steriliser bag or container. Add the specified amount of water and microwave for 2 to 4 minutes depending on wattage. Check the manufacturer's guide."),
("Cold water chemical sterilisation", "Submerge all parts in a sterilising solution (made from sterilising tablets or liquid) in a dedicated container. Ensure all parts are fully submerged with no air pockets. Leave for at least 30 minutes. No rinsing is needed — the solution is safe for infants."),
("Dishwasher sterilisation", "Only valid if the dishwasher has a high-temperature cycle (above 80 degrees Celsius). This is considered supplementary washing only — additional sterilisation by boiling or steam is still recommended for infants under 3 months."),
]
for title, detail in sterilise_methods:
story.append(Paragraph(f"<b>{title}</b>", bullet_style))
story.append(Paragraph(detail, ParagraphStyle("IndentBody4", parent=body_style, leftIndent=16, spaceAfter=6)))
story.append(Paragraph(
"Important: After sterilising, store items inside the steriliser or in a clean, covered container. Use within 24 hours or sterilise again before use.",
body_style))
story.append(Spacer(1, 10))
# ══════════════════════════════════════════════════════════════════════
# SECTION 6: DURATION OF USE
# ══════════════════════════════════════════════════════════════════════
story.append(Paragraph("Duration of Use — When to Replace Equipment", heading1_style))
story.append(HRFlowable(width="100%", thickness=0.5, color=colors.black, spaceAfter=8))
story.append(Paragraph(
"Feeding equipment degrades over time and must be replaced regularly to maintain hygiene and safety. Damaged or worn equipment can harbour bacteria in scratches and may alter the feeding experience for the infant.",
body_style))
replacements = [
("Teats and nipples", "Replace every 4 to 6 weeks regardless of visible damage. Discard immediately if the teat becomes sticky, cracked, torn, discoloured, or if the hole has enlarged. A weak or enlarged teat can cause the infant to choke or swallow excessive air."),
("Plastic bottles", "Replace every 3 to 6 months or as soon as the bottle becomes scratched or cloudy. Surface scratches are not visible to the naked eye in early stages but harbour bacteria that cannot be removed by washing alone."),
("Glass bottles", "Replace immediately if chipped or cracked. Otherwise, glass bottles last indefinitely with proper care."),
("Silicone bottles", "Replace every 3 to 6 months or sooner if the silicone becomes discoloured, sticky, or shows any tearing."),
("Anti-colic valves and vents", "Replace every 4 weeks. These small components are difficult to clean completely and are a common site for milk residue build-up and bacterial growth."),
("Bottle brush", "Replace monthly or when the bristles become splayed. A worn bottle brush cannot clean effectively and may leave milk residue behind."),
("Steriliser", "Follow the manufacturer's guide. Descale electric steam sterilisers regularly, especially in hard water areas, to maintain effectiveness."),
]
for title, detail in replacements:
story.append(Paragraph(f"<b>{title}</b>", bullet_style))
story.append(Paragraph(detail, ParagraphStyle("IndentBody5", parent=body_style, leftIndent=16, spaceAfter=6)))
story.append(Spacer(1, 14))
story.append(HRFlowable(width="100%", thickness=1, color=colors.black, spaceAfter=8))
story.append(Paragraph(
"Source: Textbook of Family Medicine 9e | Creasy & Resnik's Maternal-Fetal Medicine | Swanson's Family Medicine Review",
ParagraphStyle("Footer", fontName="Helvetica-Oblique", fontSize=9, textColor=colors.black, alignment=TA_CENTER)
))
# Build PDF
doc.build(story)
print("PDF generated successfully:", OUTPUT)