Describe the epidemiology of polio myelitis in India. Explain the strategy of polio eradication in India. Add a note on the use of monovalent and bivalent vaccines. Discuss on the measures undertaken to eradicate polio myelitis globally.
polio eradication India epidemiology strategy pulse polio monovalent bivalent vaccine
Make pdf
ls -la /tmp/workspace/ 2>/dev/null || mkdir -p /tmp/workspace && ls -la /tmp/workspace/
mkdir -p /tmp/workspace/polio-pdf && cat > /tmp/workspace/polio-pdf/generate_pdf.py << 'PYEOF' 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, ListFlowable, ListItem, Table, TableStyle, KeepTogether ) from reportlab.lib.enums import TA_LEFT, TA_CENTER, TA_JUSTIFY OUTPUT = "/tmp/workspace/polio-pdf/Poliomyelitis_India_Eradication.pdf" doc = SimpleDocTemplate( OUTPUT, pagesize=A4, leftMargin=2.5*cm, rightMargin=2.5*cm, topMargin=2.5*cm, bottomMargin=2.5*cm, title="Poliomyelitis: Epidemiology & Eradication in India", author="Orris Medical Assistant" ) styles = getSampleStyleSheet() # Custom styles title_style = ParagraphStyle( 'CustomTitle', parent=styles['Title'], fontSize=18, textColor=colors.HexColor('#1a3a5c'), spaceAfter=6, spaceBefore=0, alignment=TA_CENTER, fontName='Helvetica-Bold' ) subtitle_style = ParagraphStyle( 'Subtitle', parent=styles['Normal'], fontSize=11, textColor=colors.HexColor('#4a6fa5'), spaceAfter=18, alignment=TA_CENTER, fontName='Helvetica' ) h1_style = ParagraphStyle( 'H1', parent=styles['Heading1'], fontSize=13, textColor=colors.white, backColor=colors.HexColor('#1a3a5c'), spaceBefore=16, spaceAfter=8, leftIndent=-0.5*cm, rightIndent=-0.5*cm, leading=20, fontName='Helvetica-Bold', borderPad=5 ) h2_style = ParagraphStyle( 'H2', parent=styles['Heading2'], fontSize=11, textColor=colors.HexColor('#1a3a5c'), spaceBefore=10, spaceAfter=4, fontName='Helvetica-Bold', borderPad=2, borderColor=colors.HexColor('#4a6fa5'), borderWidth=0, leftIndent=0, borderRadius=2 ) h3_style = ParagraphStyle( 'H3', parent=styles['Heading3'], fontSize=10, textColor=colors.HexColor('#2c5f8a'), spaceBefore=8, spaceAfter=3, fontName='Helvetica-Bold', ) body_style = ParagraphStyle( 'Body', parent=styles['Normal'], fontSize=9.5, leading=14, spaceAfter=6, alignment=TA_JUSTIFY, fontName='Helvetica' ) bullet_style = ParagraphStyle( 'Bullet', parent=body_style, leftIndent=14, bulletIndent=0, spaceAfter=3, ) note_style = ParagraphStyle( 'Note', parent=body_style, fontSize=8.5, textColor=colors.HexColor('#555555'), leftIndent=10, rightIndent=10, backColor=colors.HexColor('#f0f4f8'), borderPad=6, borderColor=colors.HexColor('#4a6fa5'), borderWidth=1, borderRadius=3 ) story = [] # ── TITLE ────────────────────────────────────────────────────────────────── story.append(Spacer(1, 0.3*cm)) story.append(Paragraph("Poliomyelitis", title_style)) story.append(Paragraph( "Epidemiology in India | Eradication Strategy | Monovalent & Bivalent Vaccines | Global Measures", subtitle_style )) story.append(HRFlowable(width="100%", thickness=2, color=colors.HexColor('#1a3a5c'), spaceAfter=10)) story.append(Paragraph("Source: Park's Textbook of Preventive and Social Medicine | Orris Medical", note_style)) story.append(Spacer(1, 0.4*cm)) # ── SECTION 1 ────────────────────────────────────────────────────────────── story.append(Paragraph("1. Epidemiology of Poliomyelitis in India", h1_style)) story.append(Paragraph("<b>The Disease</b>", h3_style)) story.append(Paragraph( "Poliomyelitis is an acute viral infection caused by an RNA enterovirus. It is primarily an " "infection of the human alimentary tract, but the virus may invade the central nervous system " "in approximately <b>1% of cases</b>, resulting in varying degrees of flaccid paralysis and possibly " "death.", body_style )) story.append(Paragraph("<b>Global Context</b>", h3_style)) story.append(Paragraph( "In the pre-vaccination era, poliomyelitis was found in all countries. Widespread use of polio " "vaccines since 1954 eliminated the disease in developed countries. In 1988, the World Health " "Assembly (WHA) resolved to eradicate poliomyelitis globally - reducing endemic countries from " "<b>more than 125 in 1988</b> to just <b>3 in 2017</b> (Afghanistan, Pakistan, Nigeria).", body_style )) story.append(Paragraph("<b>Epidemiology in India</b>", h3_style)) bullets_epi = [ "<b>High-risk geography:</b> Uttar Pradesh (UP) and Bihar were the most persistently endemic states - large populations, poor sanitation, crowding, high birth rates, open defecation, and malnutrition reducing vaccine efficacy.", "<b>Age distribution:</b> Predominantly children under 5 years, peaking in the 1-4 year age group.", "<b>Seasonality:</b> Transmission peaks June-September (monsoon); PPI rounds scheduled November-February (low transmission season).", "<b>Serotype distribution:</b> Wild poliovirus type 1 (WPV1) was the dominant cause of paralytic disease. WPV3 also circulated. WPV2 was last detected in India in the early 1990s.", "<b>Last case:</b> Howrah, West Bengal - onset <b>13 January 2011</b>. India declared polio-free on <b>27 March 2014</b>.", "<b>Surveillance indicator:</b> AFP reporting rose from 1,005 cases (1996) to 11,675 (2020) - reflecting improved surveillance, not more disease. Stool specimen completeness improved from 59% (1998) to 82% (2020).", ] for b in bullets_epi: story.append(Paragraph(f"• {b}", bullet_style)) story.append(Spacer(1, 0.2*cm)) # ── SECTION 2 ────────────────────────────────────────────────────────────── story.append(Paragraph("2. Strategy of Polio Eradication in India", h1_style)) # Sub-sections subs2 = [ ( "(a) Pulse Polio Immunization (PPI) / National Immunization Days (NIDs)", "The Government of India conducted the <b>first PPI round on 9 December 1995</b> and <b>20 January 1996</b> (two rounds 6 weeks apart), initially targeting children under 3 years, later extended to under 5 years. " "'Pulse' describes the sudden, simultaneous, mass administration of OPV on a single day to all children 0-5 years regardless of previous immunization. " "PPI doses supplement but do NOT replace routine immunization doses. Two rounds are held 4-6 weeks apart each year.", ), ( "(b) Sustain Routine Immunization (RI)", "High levels of routine OPV coverage were maintained to ensure every child completed the standard schedule. " "Coverage monitored at district level and below.", ), ( "(c) AFP Surveillance", "Reporting of all AFP cases in children under 15 years is mandatory. Active AFP surveillance extended to all AFP causes (not just polio) since 1992. " "A network of <b>Surveillance Medical Officers (SMOs)</b> covers defined areas, with a national team in Delhi and regular weekly reporting.", ), ( "(d) Case Investigation and Outbreak Response", "Rapid case investigation with collection of two stool samples for virus isolation. " "<b>Even a single case is treated as an outbreak</b>, with preventive measures initiated within 48 hours. " "All AFP cases are followed up at 60 days to assess residual paralysis.", ), ( "(e) Mopping Up", "Door-to-door immunization in high-risk districts where wild poliovirus is suspected to still circulate - the final stage of eradication. Actively implemented in UP, Bihar, and other high-risk areas.", ), ( "(f) Sub-National Immunization Days (SNIDs)", "Targeted campaigns in high-risk districts of UP and Bihar supplemented national rounds. " "Migratory children from UP/Bihar tracked and vaccinated in states of Punjab, Haryana, Gujarat, and West Bengal.", ), ( "(g) Intensified Strategies (2005-2006 onwards)", "Per IEAG recommendations: (i) Monovalent OPV1/OPV3 for targeted SIAs; (ii) Additional personnel deployed to Bihar, UP, and Mumbai; (iii) Social mobilization targeting missed groups; (iv) Mobile teams at transit points - railway/bus stations, moving trains; (v) Special booths at international borders (Wagah, Attari, Munabo); (vi) Birth dose of mOPV1 for neonates in high-risk UP areas.", ), ( "(h) Monitoring and Quality Assurance", "<b>Vaccine Vial Monitors (VVMs)</b> made mandatory since 1998 - colour labels detect heat-compromised vaccines. " "107 high-risk blocks identified for multi-pronged strategy (sanitation, hygiene, clean water + vaccination).", ), ( "(i) Polio Endgame Measures", "<b>IPV introduced</b> in national immunization programme from <b>30 November 2015</b>. " "<b>tOPV to bOPV switch</b> on <b>25 April 2016 (National Switch Day)</b>. " "Rapid Response Teams (RRTs) and Emergency Preparedness and Response Plans (EPRPs) established in all states. " "Environmental surveillance at multiple sewage sites. Rolling emergency OPV stock maintained.", ), ] for title, content in subs2: story.append(Paragraph(title, h2_style)) story.append(Paragraph(content, body_style)) # ── SECTION 3 ────────────────────────────────────────────────────────────── story.append(Paragraph("3. Monovalent and Bivalent Vaccines", h1_style)) story.append(Paragraph("Trivalent OPV (tOPV)", h2_style)) story.append(Paragraph( "The original OPV contained all three serotypes (types 1, 2, 3). Effective overall, but in areas " "with high diarrheal burden (like UP and Bihar), competition between strains for gut replication " "reduced the immune response to each individual type.", body_style )) story.append(Paragraph("Monovalent OPV (mOPV1 and mOPV3)", h2_style)) story.append(Paragraph( "Developed and licensed in <b>2005-2006</b>. Each contains only one serotype, eliminating inter-strain " "competition and yielding higher seroconversion rates per dose.", body_style )) story.append(Paragraph("<b>Advantages over tOPV:</b>", h3_style)) for b in [ "Higher seroconversion for the targeted serotype (no inter-serotype competition).", "In UP/Bihar where WPV1 dominated, mOPV1 gave significantly better protection per dose.", "IEAG (2006) prioritized mOPV1 to control WPV1, accepting transient WPV3 risk (WPV3 outbreaks followed in 2007 and 2009 but were ultimately controlled).", "A specific 'birth dose' of mOPV1 was recommended for all neonates in high-risk UP areas.", ]: story.append(Paragraph(f"• {b}", bullet_style)) story.append(Paragraph( "<b>Operational challenge:</b> Giving mOPV1 and mOPV3 simultaneously raised concerns about efficacy " "when co-administered, and added complexity for 2.3 million vaccinators used to a single vial per child.", body_style )) story.append(Paragraph("Bivalent OPV (bOPV - Types 1 and 3)", h2_style)) story.append(Paragraph( "After global declaration that WPV2 was eradicated (last detected 1999), GPEI recommended a " "globally synchronized switch from tOPV to <b>bivalent OPV (bOPV)</b> - containing only types 1 and 3 " "- to eliminate vaccine-associated paralytic polio (VAPP) and circulating vaccine-derived poliovirus " "type 2 (cVDPV2). The type 2 component of tOPV caused <b>>90% of VDPVs</b> and <b>~40% of VAPP cases</b>.", body_style )) story.append(Paragraph("India completed this switch on <b>25 April 2016</b>.", body_style)) story.append(Paragraph("<b>Alongside bOPV switch:</b>", h3_style)) for b in [ "IPV introduced at 14 weeks (with 3rd pentavalent dose) to maintain type 2 immunity.", "Fractional dose IPV (fIPV): 2 doses of 0.1 mL intradermally at 6 and 14 weeks - higher seroconversion than single full-dose IM IPV.", "GPEI Strategy 2022-2026 includes a bOPV cessation plan and eventual transition to IPV-only schedules.", ]: story.append(Paragraph(f"• {b}", bullet_style)) # IPV comparison table story.append(Spacer(1, 0.3*cm)) story.append(Paragraph("IPV vs. Fractional IPV (fIPV) Comparison", h2_style)) table_data = [ ["Parameter", "IPV (Full Dose)", "Fractional IPV (fIPV)"], ["Volume per dose", "0.5 mL", "0.1 mL"], ["Schedule", "1 dose at 14 weeks", "2 doses: 6 and 14 weeks"], ["Route", "Intramuscular (IM)", "Intradermal (ID)"], ["Seroconversion", "Standard", "Higher (2-dose schedule)"], ] t = Table(table_data, colWidths=[4.5*cm, 5*cm, 5*cm]) t.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1a3a5c')), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('FONTSIZE', (0,0), (-1,-1), 9), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#f0f4f8'), colors.white]), ('GRID', (0,0), (-1,-1), 0.5, colors.HexColor('#aaaaaa')), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('FONTNAME', (0,1), (0,-1), 'Helvetica-Bold'), ('TEXTCOLOR', (0,1), (0,-1), colors.HexColor('#1a3a5c')), ])) story.append(t) story.append(Spacer(1, 0.3*cm)) # ── SECTION 4 ────────────────────────────────────────────────────────────── story.append(Paragraph("4. Global Measures to Eradicate Poliomyelitis", h1_style)) story.append(Paragraph( "The <b>Global Polio Eradication Initiative (GPEI)</b>, launched in 1988, is led by national governments, " "WHO, Rotary International, the US CDC, UNICEF, and the Bill & Melinda Gates Foundation - the largest " "internationally coordinated public health effort in history.", body_style )) global_measures = [ ("1. Routine Immunization (RI)", "All countries include OPV in EPI, ensuring every child receives at least 3 doses in infancy. " "Strengthening RI is necessary to maintain high population immunity, especially after OPV withdrawal."), ("2. National Immunization Days (NIDs)", "Mass campaigns targeting all children under 5 regardless of vaccination history, conducted twice yearly " "during low transmission seasons. India's NIDs covered over 170 million children per round."), ("3. Supplementary Immunization Activities (SIAs)", "Additional campaigns targeting high-risk populations - migrants, nomads, displaced persons, and " "communities with vaccine hesitancy."), ("4. AFP Surveillance", "Global system for detecting, reporting, and responding to AFP cases. Under International Health " "Regulations, polio is subject to international surveillance. WHO must be notified promptly; quarterly " "reports submitted on prescribed forms to WHO Geneva."), ("5. Mopping Up", "Door-to-door immunization in areas where wild poliovirus is still thought to circulate - the final " "push in each region before certification."), ("6. OPV Withdrawal and IPV Introduction", "Global tOPV to bOPV switch completed April 2016. At least one dose of IPV introduced in all routine " "immunization schedules globally to maintain type 2 protection."), ("7. Containment", "After WPV2 eradication, all laboratory stocks of WPV2 must be destroyed or transferred to approved " "containment facilities. Within two weeks of national switch date, ministries confirmed tOPV withdrawal."), ("8. Environmental Surveillance", "Testing sewage/wastewater samples for poliovirus allows detection of silent transmission before " "clinical cases appear - a critical early-warning system."), ("9. cVDPV Outbreak Response", "Outbreak response immunization (ORI) using mOPV2 (type 2 outbreaks) or mOPV1/mOPV3 for respective " "serotypes in affected countries with low routine immunization coverage."), ] for title, content in global_measures: story.append(Paragraph(title, h2_style)) story.append(Paragraph(content, body_style)) # Status Box story.append(Spacer(1, 0.3*cm)) story.append(Paragraph("Current Global Status (2026)", h2_style)) status_data = [ ["Poliovirus Type", "Status", "Remaining Endemic Countries"], ["WPV Type 2", "Eradicated (2015)", "None"], ["WPV Type 3", "Eradicated (2019)", "None"], ["WPV Type 1", "Endemic", "Afghanistan, Pakistan"], ["cVDPV", "Ongoing outbreaks", "Multiple low-coverage countries"], ] ts = Table(status_data, colWidths=[4.5*cm, 4*cm, 6*cm]) ts.setStyle(TableStyle([ ('BACKGROUND', (0,0), (-1,0), colors.HexColor('#1a3a5c')), ('TEXTCOLOR', (0,0), (-1,0), colors.white), ('FONTNAME', (0,0), (-1,0), 'Helvetica-Bold'), ('FONTSIZE', (0,0), (-1,-1), 9), ('ROWBACKGROUNDS', (0,1), (-1,-1), [colors.HexColor('#f0f4f8'), colors.white]), ('GRID', (0,0), (-1,-1), 0.5, colors.HexColor('#aaaaaa')), ('VALIGN', (0,0), (-1,-1), 'MIDDLE'), ('ALIGN', (0,0), (-1,-1), 'CENTER'), ('TOPPADDING', (0,0), (-1,-1), 5), ('BOTTOMPADDING', (0,0), (-1,-1), 5), ('FONTNAME', (0,1), (0,-1), 'Helvetica-Bold'), ('TEXTCOLOR', (0,3), (-1,3), colors.HexColor('#cc4400')), # WPV1 row - red ('BACKGROUND', (0,3), (-1,3), colors.HexColor('#fff0ed')), ])) story.append(ts) # Footer note story.append(Spacer(1, 0.5*cm)) story.append(HRFlowable(width="100%", thickness=1, color=colors.HexColor('#cccccc'), spaceAfter=6)) story.append(Paragraph( "<b>Source:</b> Park's Textbook of Preventive and Social Medicine (Chapter on Poliomyelitis, pp. 240-248) | " "WHO Weekly Epidemiological Records | GPEI Endgame Strategy 2022-2026 | PIB India", note_style )) # Build PDF doc.build(story) print(f"PDF created: {OUTPUT}") PYEOF python /tmp/workspace/polio-pdf/generate_pdf.py
Poliomyelitis India Eradication
PDF Document · PDF