Their is CRC presentation of mine tomorrow….i want to know some answers from you so that i can give the answer to crc members give relvant answer only…..question are; 1)just simply my heading and explain my heading i want to explain to members and how can i say it is an observational study 2) why do you want to do the study 3)what is the use of study 4)tell some important introduction points which can i put into the topic so to enhance my study 5)rational of my study and give some important points from the review literature so it can be explained easily 6)what are objective of study if they arises the question that if their are no patch or any nerve involvement and it is pure neurtic type or any cardinal signs of leprosy 7)how will i explain my methodology if they ask that biopsy report comes after 14 days and how will you enroll the patient in this study if your study is cross sectional observational study.. 8)explain the case record form 9)why will you not include children in your study less than 18 years of age… 10)why have you taken that sample size And more answers that is relvant to the study and that can cancel my study so provide me answer to that also And give all the answer in the form of ppt or pdf
cd /tmp/workspace/attachments/74b62932-803c-47de-91d6-e4cc10edf64b/ && python3 -c " from pptx import Presentation prs = Presentation('ANUJ_final_edited_referenced.pptx') for i, slide in enumerate(prs.slides, 1): print(f'=== SLIDE {i} ===') for shape in slide.shapes: if shape.has_text_frame and shape.text_frame.text.strip(): print(shape.text_frame.text) print() "
leprosy neuropathy skin lesions diagnosis
mkdir -p /tmp/workspace/anuj-crc && ls /tmp/workspace/anuj-crc/
~/anuj-crc/generate_crc_pdf.py
from reportlab.lib.pagesizes import A4
from reportlab.lib.styles import getSampleStyleSheet, ParagraphStyle
from reportlab.lib.units import cm
from reportlab.lib.colors import HexColor, white, black
from reportlab.platypus import (SimpleDocTemplate, Paragraph, Spacer, Table,
TableStyle, PageBreak, HRFlowable)
from reportlab.lib.enums import TA_LEFT, TA_CENTER, TA_JUSTIFY
from reportlab.platypus import KeepTogether
doc = SimpleDocTemplate(
"/tmp/workspace/anuj-crc/CRC_QA_Anuj_Leprosy.pdf",
pagesize=A4,
rightMargin=2*cm, leftMargin=2*cm,
topMargin=2.5*cm, bottomMargin=2.5*cm
)
# Colors
PRIMARY = HexColor("#1a3a5c") # dark navy
ACCENT = HexColor("#2e86c1") # blue
LIGHT = HexColor("#d6eaf8") # light blue bg
WARN = HexColor("#922b21") # red for critical
WARN_BG = HexColor("#fdedec")
GREEN = HexColor("#1e8449")
GREEN_BG= HexColor("#eafaf1")
GOLD = HexColor("#b7950b")
GOLD_BG = HexColor("#fef9e7")
styles = getSampleStyleSheet()
# Custom styles
title_style = ParagraphStyle('Title', parent=styles['Title'],
fontSize=16, textColor=white, alignment=TA_CENTER,
spaceAfter=4, fontName='Helvetica-Bold')
subtitle_style = ParagraphStyle('Sub', parent=styles['Normal'],
fontSize=10, textColor=HexColor("#aed6f1"), alignment=TA_CENTER,
spaceAfter=2, fontName='Helvetica')
q_style = ParagraphStyle('Q', parent=styles['Normal'],
fontSize=12, textColor=white, fontName='Helvetica-Bold',
spaceBefore=0, spaceAfter=0, leftIndent=6)
a_style = ParagraphStyle('A', parent=styles['Normal'],
fontSize=10, textColor=HexColor("#1b2631"), fontName='Helvetica',
spaceBefore=4, spaceAfter=3, leftIndent=8, rightIndent=4,
leading=15)
bullet_style = ParagraphStyle('Bullet', parent=styles['Normal'],
fontSize=10, textColor=HexColor("#1b2631"), fontName='Helvetica',
spaceBefore=2, spaceAfter=2, leftIndent=20, rightIndent=4,
leading=14, bulletIndent=12)
sub_head = ParagraphStyle('SubHead', parent=styles['Normal'],
fontSize=10.5, textColor=PRIMARY, fontName='Helvetica-Bold',
spaceBefore=6, spaceAfter=2, leftIndent=8)
warn_style = ParagraphStyle('Warn', parent=styles['Normal'],
fontSize=10, textColor=WARN, fontName='Helvetica-BoldOblique',
spaceBefore=3, spaceAfter=3, leftIndent=8)
note_style = ParagraphStyle('Note', parent=styles['Normal'],
fontSize=9.5, textColor=HexColor("#4a235a"), fontName='Helvetica-Oblique',
spaceBefore=2, spaceAfter=2, leftIndent=8)
def make_question_block(num, question, content_elements, color=ACCENT, bg=LIGHT):
"""Wraps a question header + answer elements in a colored table block."""
q_table = Table([[Paragraph(f"Q{num}. {question}", q_style)]],
colWidths=[doc.width])
q_table.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), color),
('TOPPADDING', (0,0), (-1,-1), 8),
('BOTTOMPADDING', (0,0), (-1,-1), 8),
('LEFTPADDING', (0,0), (-1,-1), 10),
('RIGHTPADDING', (0,0), (-1,-1), 10),
('ROUNDEDCORNERS', [4,4,0,0]),
]))
inner = [[e] for e in content_elements]
a_table_data = [[item] for item in content_elements]
# wrap in a light background table
combined = [q_table, Spacer(1, 1)]
ans_table = Table([[e] for e in content_elements], colWidths=[doc.width])
ans_table.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), bg),
('TOPPADDING', (0,0), (-1,-1), 2),
('BOTTOMPADDING', (0,0), (-1,-1), 2),
('LEFTPADDING', (0,0), (-1,-1), 4),
('RIGHTPADDING', (0,0), (-1,-1), 4),
]))
combined.append(ans_table)
combined.append(Spacer(1, 10))
return combined
def b(text):
return f"<b>{text}</b>"
def make_bullet(text):
return Paragraph(f"• {text}", bullet_style)
def make_para(text):
return Paragraph(text, a_style)
def make_subhead(text):
return Paragraph(text, sub_head)
def make_warn(text):
return Paragraph(f"⚠ {text}", warn_style)
def make_note(text):
return Paragraph(f"📝 {text}", note_style)
# ---- Build story ----
story = []
# Cover header
cover = Table([[Paragraph(
"CRC PRESENTATION — READY ANSWERS",
ParagraphStyle('CT', parent=styles['Title'], fontSize=18,
textColor=white, alignment=TA_CENTER, fontName='Helvetica-Bold'))],
[Paragraph("Clinico-Epidemiological Correlation of Disability Among Newly Diagnosed Leprosy Patients:<br/>"
"A Cross-Sectional Study at a Tertiary Care Centre",
ParagraphStyle('CS', parent=styles['Normal'], fontSize=11,
textColor=HexColor("#aed6f1"), alignment=TA_CENTER,
fontName='Helvetica'))],
[Paragraph("Dr. Anuj Jain | MD (DVL) | TMMC & RC, Moradabad | 2025–2028",
ParagraphStyle('CD', parent=styles['Normal'], fontSize=10,
textColor=HexColor("#85c1e9"), alignment=TA_CENTER,
fontName='Helvetica-Oblique'))]],
colWidths=[doc.width])
cover.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), PRIMARY),
('TOPPADDING', (0,0), (-1,-1), 14),
('BOTTOMPADDING', (0,0), (-1,-1), 14),
('LEFTPADDING', (0,0), (-1,-1), 12),
('RIGHTPADDING', (0,0), (-1,-1), 12),
('ROUNDEDCORNERS', [6,6,6,6]),
]))
story.append(cover)
story.append(Spacer(1, 16))
# ========================
# Q1 - Heading Explanation
# ========================
q1_content = [
make_para("Your study title is:<br/><b>\"Clinico-Epidemiological Correlation of Disability Among Newly Diagnosed Leprosy Patients: A Cross-Sectional Study at a Tertiary Care Centre\"</b>"),
make_subhead("How to explain it word-by-word:"),
make_bullet("<b>Clinico-</b> = Clinical features of the patient — type of leprosy (TT/BT/BB/BL/LL/PNL), nerve involvement, lepra reactions, duration of disease."),
make_bullet("<b>Epidemiological</b> = Population-level factors — age, sex, occupation, literacy, delay in diagnosis, socioeconomic status."),
make_bullet("<b>Correlation</b> = We are looking at the relationship/association between the above clinical and epidemiological variables WITH the grade of disability."),
make_bullet("<b>Disability</b> = Defined by WHO Disability Grading System (1998) — Grade 0 (no disability), Grade 1 (loss of protective sensation), Grade 2 (visible deformity — claw hand, foot drop, lagophthalmos, corneal opacity)."),
make_bullet("<b>Newly Diagnosed</b> = Patients who have NOT previously taken MDT (Multi-Drug Therapy) — this ensures we are capturing disability at baseline, before treatment."),
make_bullet("<b>Cross-Sectional Study</b> = We examine patients at a single point in time (at diagnosis). We record clinical features AND disability grade simultaneously."),
make_bullet("<b>Tertiary Care Centre</b> = TMMC & RC, Moradabad — a referral hospital serving western Uttar Pradesh."),
make_subhead("Why it is an Observational Study:"),
make_para("It is observational because:<br/>"
"1. We are <b>not giving any new treatment</b> or intervention — patients receive standard MDT as per NLEP guidelines.<br/>"
"2. We are only <b>observing and recording</b> what is already present at the time of diagnosis.<br/>"
"3. There is <b>no manipulation of exposure or outcome</b> — we simply assess clinical type, nerve function, and disability grade and look for associations.<br/>"
"4. Cross-sectional design means all measurements happen at <b>one point in time</b> — no follow-up or prospective intervention."),
make_note("You can say: 'Sir, in this study we are not intervening or allocating any treatment. We are purely observing the patient at the time of first diagnosis, assessing clinical parameters and disability, and then studying their correlation. Hence it is purely observational.'"),
]
story += make_question_block(1, "Explain your study heading and how is it an observational study?", q1_content)
# ========================
# Q2 - Why do this study
# ========================
q2_content = [
make_subhead("Primary Justification:"),
make_bullet("Leprosy remains the <b>leading cause of preventable peripheral neuropathy and disability</b> worldwide, despite MDT being freely available."),
make_bullet("Despite achieving 'elimination' in India at national level (<1/10,000 prevalence), <b>western Uttar Pradesh — including Moradabad district — continues to report high annual case detection rates</b>, making it an endemic pocket."),
make_bullet("Disability in leprosy, especially Grade 2, causes permanent disfigurement, social stigma, loss of livelihood, and family burden."),
make_bullet("Many patients arrive at tertiary centres late — already with Grade 1 or Grade 2 disability. We need to understand WHY — is it the type of leprosy? Delay in diagnosis? Multibacillary disease? Lepra reactions?"),
make_subhead("Gap in Existing Knowledge:"),
make_bullet("Indian studies report widely varying Grade 2 disability rates — <b>6.4% to 43.75%</b> — depending on region, setting, and year."),
make_bullet("There is <b>NO published data from western Uttar Pradesh</b> specifically on clinico-epidemiological correlates of disability in newly diagnosed leprosy patients."),
make_bullet("Existing national data cannot be directly applied to our region because of differences in leprosy type distribution, health-seeking behaviour, and sociodemographic factors."),
make_subhead("Practical Benefit of the Study:"),
make_bullet("Results will help identify which clinical type and epidemiological group is at highest risk of disability."),
make_bullet("This will allow the department and NLEP to target <b>high-risk patients for early nerve function assessment, POD (Prevention of Disability) measures, and rehabilitation</b>."),
make_note("You can say: 'Sir, we want to generate region-specific data from western UP because disability prevention strategies must be based on local evidence, not national averages.'"),
]
story += make_question_block(2, "Why do you want to do this study?", q2_content)
# ========================
# Q3 - Use of study
# ========================
q3_content = [
make_subhead("Direct Clinical Use:"),
make_bullet("Identification of <b>which clinical type of leprosy</b> (MB vs PB; LL/BL vs TT/BT) carries the highest risk of disability — guides early referral and nerve function monitoring."),
make_bullet("Identification of <b>which nerve</b> (ulnar, median, common peroneal, posterior tibial, facial, great auricular) is most commonly involved — guides targeted clinical examination."),
make_bullet("Identifies role of <b>lepra reactions (Type 1 / Type 2 / ENL)</b> in contributing to disability — so reaction episodes are treated aggressively to prevent nerve damage."),
make_subhead("Epidemiological/Public Health Use:"),
make_bullet("Provides <b>local prevalence data</b> on Grade 1 and Grade 2 disability for western UP — fills a data gap."),
make_bullet("Helps understand whether sociodemographic factors (illiteracy, rural residence, delayed diagnosis, low income) are independently associated with disability — informs health education strategies."),
make_bullet("Findings can be shared with <b>District Leprosy Officer, NLEP state cell</b> to guide POD programme activities."),
make_subhead("Academic Use:"),
make_bullet("Forms part of your MD thesis — adds to the published literature from Indian tertiary care centres."),
make_bullet("Can be published in IJDVL, Indian J Lepr, or other peer-reviewed journals."),
make_note("In CRC, summarise: 'The study will give us region-specific data, identify high-risk groups, and guide targeted disability prevention at this institution and at the district NLEP programme level.'"),
]
story += make_question_block(3, "What is the use of this study?", q3_content)
# ========================
# Q4 - Introduction points
# ========================
q4_content = [
make_subhead("Key Points to Include in Introduction:"),
make_bullet("<b>Definition:</b> Leprosy (Hansen's disease) is a chronic granulomatous infection caused by Mycobacterium leprae, an obligate intracellular bacillus with a doubling time of ~13 days and incubation period of 2–10 years."),
make_bullet("<b>Transmission:</b> Primarily via respiratory droplets from untreated multibacillary patients; skin-to-skin contact is a minor route."),
make_bullet("<b>Global Burden:</b> India contributes ~50–60% of new global leprosy cases each year. Despite WHO 'elimination' at national level, endemic pockets persist in UP, Bihar, West Bengal, Odisha, Chhattisgarh, Jharkhand."),
make_bullet("<b>Peripheral Neuropathy:</b> M. leprae is the ONLY known bacterium that invades peripheral nerve Schwann cells. Among communicable diseases, leprosy is the leading cause of peripheral neuropathy and preventable disability worldwide."),
make_bullet("<b>Types of Disability:</b> Primary disability (direct nerve damage: anaesthesia, paralysis, autonomic loss) vs Secondary disability (consequences of neglected primary disability: plantar ulcers, contractures, absorption of digits, corneal ulceration leading to blindness)."),
make_bullet("<b>WHO Disability Grading System (1998):</b> Grade 0 — no disability; Grade 1 — loss of protective sensation in hands/feet, or reduced visual acuity; Grade 2 — visible deformity or damage (claw hand, wrist drop, foot drop, lagophthalmos, corneal opacity, ulcer)."),
make_bullet("<b>MDT Success and Residual Problem:</b> MDT kills bacteria but does NOT reverse pre-existing nerve damage. Hence, disability at diagnosis is the critical window to intervene."),
make_bullet("<b>NLEP Goal:</b> The National Leprosy Eradication Programme targets zero-disability leprosy by focusing on early detection, POD (Prevention of Disability), CBMR (Community-Based Medical Rehabilitation)."),
make_bullet("<b>Local Context:</b> Moradabad, western UP is a high-endemic area. TMMC & RC is a tertiary referral centre serving multiple districts — making it ideal for studying newly diagnosed leprosy patients across a broad sociodemographic spectrum."),
make_note("Tip: Mention the 'missing window' — by the time many patients reach us, nerve damage has already begun. This study captures that baseline snapshot."),
]
story += make_question_block(4, "Important Introduction Points to enhance your study", q4_content)
# ========================
# Q5 - Rationale + Review of Literature
# ========================
q5_content = [
make_subhead("Rationale Statement (to say verbally):"),
make_para("\"Leprosy remains a leading cause of preventable physical disability worldwide. Despite MDT success in reducing case load, nerve damage leading to Grade 1 (sensory loss) and Grade 2 (visible deformity) disability continues to occur, particularly in endemic regions like western Uttar Pradesh. Indian studies report widely varying disability rates — from 6.4% to 43.75% for Grade 2 — depending on the region and setting. This underscores the need for region-specific data to guide disability prevention strategies. Hence, this study was undertaken to determine the clinico-epidemiological correlation of disability among newly diagnosed leprosy patients at TMMC & RC, Moradabad.\""),
make_subhead("Key Review of Literature Points (Study-wise):"),
make_bullet("<b>Sarkar et al., IJDVL 2012</b> — Institution-based study, West Bengal. Found higher Grade 2 disability in MB (multibacillary) patients. Emphasized delayed diagnosis as key risk factor."),
make_bullet("<b>Ishore et al., Indian J Lepr 2019</b> — Darjeeling district, West Bengal. Cross-sectional. Reported nerve involvement strongly correlated with Grade 2 disability. Ulnar nerve most commonly affected."),
make_bullet("<b>Rathod et al., An Bras Dermatol 2020</b> — Retrospective institutional analysis. 95 cases. Lepromatous/BL type had highest Grade 2 disability. Lepra reactions doubled disability risk."),
make_bullet("<b>Shravani et al., J Fam Med Prim Care 2022</b> — Central India endemic area. Pilot study. Grade 2 disability found in 43.75% — highest in LL type. Highlighted that delay in treatment >2 years significantly worsened outcomes."),
make_bullet("<b>Laldinthari et al., Asian J Med Sci 2023</b> — Northeast India. Clinical profile of new leprosy patients. 40.5% had some form of disability. Found male sex, MB leprosy, and nerve trunk involvement as risk factors."),
make_bullet("<b>Jalakam Venkata SP et al., Cureus 2025</b> — Visakhapatnam. 94 new cases. Grade 2 disability in 12%, Grade 1 in ~18%. Multibacillary type and more than 2 nerves involved predicted higher disability grade — this is your sample size reference study."),
make_note("Summary sentence to say: 'All existing Indian studies report that MB type, nerve involvement, lepra reactions, and delay in diagnosis are key predictors of disability. However, NONE of these are from western Uttar Pradesh — making our study uniquely important for local evidence generation.'"),
]
story += make_question_block(5, "Rationale and important Review of Literature points", q5_content)
# ========================
# Q6 - Objectives + Pure Neuritic Leprosy
# ========================
q6_content = [
make_subhead("Primary Objective:"),
make_para("To determine the proportion of Grade 1 and Grade 2 disability among newly diagnosed leprosy patients using the WHO Disability Grading System (1998)."),
make_subhead("Secondary Objectives:"),
make_bullet("To study the association of disability grade with clinical type (Ridley-Jopling + PB/MB WHO classification) and nerve involvement."),
make_bullet("To study the association of disability with sociodemographic factors (age, sex, occupation, literacy, delay in diagnosis)."),
make_bullet("To study the occurrence of lepra reactions and their association with disability grade."),
make_subhead("If CRC asks: 'What if there is no patch, no nerve involvement — pure neuritic type or only cardinal signs?'"),
make_para("This is about <b>Pure Neural Leprosy (PNL)</b> — a well-recognized clinical entity."),
make_bullet("<b>Definition of PNL:</b> Nerve involvement without any skin lesion whatsoever. Patient presents with mononeuropathy or mononeuropathy multiplex (thickened nerve + sensory/motor loss) but NO hypopigmented or erythematous skin patch."),
make_bullet("<b>Cardinal signs of leprosy:</b> (1) Hypopigmented/erythematous skin lesion with loss of sensation; (2) Thickened peripheral nerve; (3) Slit-skin smear / nerve biopsy showing AFB or granuloma consistent with leprosy."),
make_bullet("<b>Diagnosis of PNL:</b> Requires at least one of — nerve biopsy showing granuloma/AFB, or clinical mononeuropathy in an endemic setting with no other cause. NLEP guidelines allow clinical diagnosis of PNL."),
make_bullet("<b>Answer to CRC:</b> 'Sir, a patient with PNL (pure neuritic type) where ONLY thickened nerve(s) are present WITHOUT skin lesion is still diagnosed as leprosy per NLEP criteria if nerve biopsy or clinical context confirms it. Such patients are included in our study under the PNL subtype. They will be classified as PB or MB based on nerve biopsy results and SSS (slit-skin smear). Their disability will be graded using WHO Disability Grading System — they may present at Grade 1 (sensory loss) or Grade 2 (motor weakness/deformity) at baseline.'"),
make_bullet("PNL patients are at HIGH RISK of Grade 1/2 disability at diagnosis since nerve damage is the primary process."),
make_warn("If CRC asks: 'What if biopsy is not done or not possible in PNL?' — Answer: Clinical diagnosis of PNL in endemic setting is accepted per NLEP 2019 Manual. Nerve biopsy is confirmatory but not mandatory for enrolment if clinical features are typical."),
]
story += make_question_block(6, "Objectives — and how to handle 'pure neuritic / cardinal signs only' question", q6_content, color=GREEN, bg=GREEN_BG)
# ========================
# Q7 - Methodology + Biopsy 14 days + Cross-sectional enrolment
# ========================
q7_content = [
make_subhead("How to Explain Methodology (in simple flow):"),
make_para("<b>Step 1:</b> Patient attends DVL OPD/IPD at TMMC & RC."),
make_para("<b>Step 2:</b> Clinician (Dr. Anuj) examines the patient — checks for cardinal signs of leprosy (skin lesion with loss of sensation, thickened nerve, SSS positivity)."),
make_para("<b>Step 3:</b> Patient is diagnosed as leprosy clinically by the treating consultant (as per NLEP/WHO criteria)."),
make_para("<b>Step 4:</b> Patient is asked for consent — if eligible (age 18–65, new case, no prior MDT, no other cause of disability), enrolled."),
make_para("<b>Step 5:</b> Case Record Form (CRF) is filled — demographic details, history, clinical type, nerve examination (palpation for thickening/tenderness), sensory testing (ballpoint pen/monofilament), motor testing (VMT), eye examination."),
make_para("<b>Step 6:</b> WHO Disability Grade (0/1/2) is assigned to eyes, hands, and feet — this is the <b>primary outcome measure</b>."),
make_para("<b>Step 7:</b> Investigations — SSS (slit-skin smear), BI (bacteriological index), and if needed, nerve biopsy."),
make_para("<b>Step 8:</b> Data entered into Excel/SPSS for analysis. Statistical tests (chi-square, Fisher exact, logistic regression) applied."),
make_subhead("CRC Question: 'Biopsy report comes after 14 days — how will you enrol in a cross-sectional study?'"),
make_para("This is a VERY common and important CRC question. Here is your answer:"),
make_bullet("<b>Diagnosis is CLINICAL, not biopsy-dependent:</b> As per NLEP Guidelines 2019 and WHO, leprosy is diagnosed clinically on the basis of cardinal signs. Biopsy / histopathology is a <b>confirmatory/supplementary investigation</b>, NOT mandatory for diagnosis or enrolment."),
make_bullet("<b>Enrolment is done at the time of clinical diagnosis:</b> The patient is enrolled, CRF filled, and disability graded on the SAME DAY as clinical diagnosis — this is the cross-sectional 'single point in time' assessment."),
make_bullet("<b>Biopsy is recorded as an investigation result:</b> If biopsy is sent, the result (when available at 14 days) will be noted in the CRF under 'Investigations' and used for <b>sub-classification</b> (Ridley-Jopling histological type) but does NOT change the cross-sectional data collection which is already done."),
make_bullet("<b>Cross-sectional design validity is preserved:</b> Because the primary outcome (disability grade) and primary exposure (clinical type at diagnosis) are both measured at the same time point — the cross-sectional snapshot is complete WITHOUT the biopsy."),
make_warn("'Sir, our enrolment criterion is clinical diagnosis as per NLEP criteria. The biopsy result adds histological detail but does NOT delay enrolment. The cross-sectional assessment — clinical examination and disability grading — is done on the day of diagnosis. Biopsy is supplementary.'"),
]
story += make_question_block(7, "Methodology explanation + biopsy after 14 days + cross-sectional enrolment", q7_content)
# ========================
# Q8 - Case Record Form
# ========================
q8_content = [
make_subhead("CRF Structure (Slide 26–29 of your presentation):"),
make_bullet("<b>A. Demographic Details:</b> Name, age, sex, CR no., date of enrolment, address, occupation, literacy status, duration of symptoms, delay in diagnosis (date of onset vs date of diagnosis), family history of leprosy."),
make_bullet("<b>B. History:</b> Duration of skin lesion/nerve symptoms, history of lepra reaction, any prior treatment for leprosy, comorbidities (DM, CVD, neurological disease)."),
make_bullet("<b>C. Clinical Classification:</b> Type of leprosy as per Ridley-Jopling (TT/BT/BB/BL/LL/PNL) and WHO (PB = <5 patches / MB = 5+ patches). Number of skin lesions. Bacteriological Index (BI)."),
make_bullet("<b>D. Nerve Examination:</b> Which nerves are thickened/tender — bilateral ulnar, median, radial cutaneous, common peroneal, posterior tibial, great auricular, facial. Grade of thickening (0/1/2)."),
make_bullet("<b>E. Sensory & Motor Nerve Function Impairment (NFI):</b> Sensory testing with ballpoint pen/Semmes-Weinstein monofilament for hands and feet. VMT (Voluntary Muscle Testing) for intrinsic hand muscles, foot dorsiflexors, eye closure. Eye: visual acuity, lagophthalmos, corneal sensation."),
make_bullet("<b>F. WHO Disability Grade (0/1/2):</b> Assigned separately for each eye, each hand, each foot. Final grade = highest of the six."),
make_bullet("<b>G. Type of Deformity:</b> Claw hand, wrist drop, foot drop, plantar ulcer, resorption of digits, facial deformity, corneal opacity, lagophthalmos — ticked as applicable."),
make_bullet("<b>H. Investigations:</b> SSS result (site, BI, MI), skin biopsy report (if done), nerve biopsy (if done for PNL), any other relevant investigation."),
make_subhead("Why each section matters — what to say to CRC:"),
make_para("'Sir, the CRF is designed to capture all possible clinical and epidemiological variables that the literature has identified as risk factors for disability — so that we can perform a comprehensive multi-variable analysis. Each section corresponds to one or more study objectives.'"),
]
story += make_question_block(8, "Explain the Case Record Form (CRF)", q8_content, color=HexColor("#7d6608"), bg=GOLD_BG)
# ========================
# Q9 - Why not children (<18)
# ========================
q9_content = [
make_subhead("Reasons for Excluding Children <18 Years:"),
make_bullet("<b>Ethical concerns:</b> Children below 18 are considered a <b>vulnerable population</b> under ICMR Guidelines for Biomedical and Health Research (2017). Enrolling minors in observational studies requires additional ethical safeguards (parental consent + child assent for >12 years), making the consent process complex for this study design."),
make_bullet("<b>Separate pediatric leprosy guidelines:</b> WHO and NLEP have separate MDT regimens for children (<10 years and 10–14 years). Clinical presentation, nerve function assessment norms, and disability interpretation differ in children — making adult and pediatric data incomparable."),
make_bullet("<b>Nerve function testing standardization:</b> The WHO Disability Grading System and VMT/monofilament testing are validated and standardized for adults. Reference values and interpretation for children differ, reducing the comparability and reliability of results."),
make_bullet("<b>Rarity and referral bias:</b> Childhood leprosy constitutes a small proportion of cases at tertiary centres — inclusion would require a much longer study period to enroll statistically meaningful numbers, which is beyond the 18-month timeframe."),
make_bullet("<b>Upper age limit (65 years):</b> Patients above 65 excluded because age-related peripheral neuropathy (diabetic neuropathy, osteoarthritis-related deformity, age-related sensory decline) can confound disability assessment."),
make_warn("If CRC pushes: 'But leprosy affects children too.' — Answer: 'Sir, you are correct. Pediatric leprosy is important. However, for this study we have focused on adults aged 18–65 to maintain methodological rigour and avoid confounding by developmental/ethical variables. A separate dedicated study on pediatric leprosy disability would be more appropriate.'"),
]
story += make_question_block(9, "Why are children <18 years excluded?", q9_content)
# ========================
# Q10 - Sample size
# ========================
q10_content = [
make_subhead("Sample Size Calculation (from your slide 16):"),
make_para("Formula used: <b>N = Z²α × P(100 − P) / E²</b>"),
make_bullet("<b>Zα = 1.96</b> at 95% confidence interval (standard for medical research)."),
make_bullet("<b>P = 12%</b> — prevalence of disability (Grade 1 or Grade 2) in newly diagnosed leprosy patients from the reference study: Jalakam Venkata SP et al., Cureus 2025 (Visakhapatnam)."),
make_bullet("<b>E = 6.6%</b> — absolute allowable error (margin of error)."),
make_bullet("<b>N = (1.96)² × 14 × (100 − 14) / (6.6)² = <u>94 patients</u></b>"),
make_subhead("How to defend the sample size:"),
make_bullet("The reference study (Jalakam 2025) is recent (2025), from an Indian setting, cross-sectional, and uses the same WHO disability grading system — making it the most appropriate reference for our sample size."),
make_bullet("A sample of 94 provides 95% confidence with 6.6% margin of error. This is statistically adequate for a prevalence-based cross-sectional study."),
make_bullet("Over 18 months at a high-volume tertiary DVL centre in western UP, enrolling 94 new leprosy patients is achievable — the centre sees approximately 100–150 new leprosy cases per year."),
make_bullet("The sample size was calculated for the primary objective (prevalence of disability). For secondary objectives (associations with clinical/epidemiological factors), sub-group analyses will have appropriate statistical testing (chi-square with Fisher's exact as needed)."),
make_warn("If CRC asks: 'Why P=12%?' — Answer: 'Sir, we used 12% from the most recent Indian reference study (Jalakam 2025) which reports disability prevalence of 12% in newly diagnosed leprosy patients using the same WHO grading. This is a conservative estimate, meaning our study is not underpowered.'"),
make_note("If asked about larger sample: 'Sir, if the actual prevalence is higher, our study will detect it with even greater power — 12% is a conservative estimate ensuring we are not underpowered.'"),
]
story += make_question_block(10, "Why have you taken this sample size (N=94)?", q10_content)
story.append(PageBreak())
# ========================
# BONUS - Questions that could CANCEL your study
# ========================
cancel_header = Table([[Paragraph("⚠ POTENTIAL QUESTIONS THAT COULD CHALLENGE / CANCEL YOUR STUDY — AND HOW TO DEFEND",
ParagraphStyle('WH', parent=styles['Normal'], fontSize=13, textColor=white,
fontName='Helvetica-Bold', alignment=TA_CENTER))]],
colWidths=[doc.width])
cancel_header.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), WARN),
('TOPPADDING', (0,0), (-1,-1), 10),
('BOTTOMPADDING', (0,0), (-1,-1), 10),
('LEFTPADDING', (0,0), (-1,-1), 10),
('RIGHTPADDING', (0,0), (-1,-1), 10),
]))
story.append(cancel_header)
story.append(Spacer(1, 10))
challenges = [
("CRC Challenge 1: 'Your study is purely descriptive — what new knowledge will it add?'",
[make_para("This is an analytical cross-sectional study, not just descriptive. We are NOT merely counting disability — we are studying the <b>association and correlation</b> of disability with clinical type, nerve involvement, lepra reactions, and sociodemographic factors using inferential statistics (chi-square, logistic regression). The new knowledge is: <i>which specific clinical and epidemiological factors predict disability at the time of first diagnosis in western UP</i> — data that does not exist currently."),
]),
("CRC Challenge 2: 'Your study has no control group — how is it valid?'",
[make_para("A cross-sectional observational study examining prevalence and associations does NOT require a control group. The study question is: 'What is the prevalence of disability and what factors are associated with it among newly diagnosed leprosy patients?' This is an appropriate design for a prevalence/association study. A case-control or cohort would be needed only if we were studying causation over time — which is not our objective."),
]),
("CRC Challenge 3: 'Cross-sectional design cannot establish causation — why not do a cohort study?'",
[make_para("You are correct that cross-sectional studies cannot establish temporal causation. Our study does NOT claim to establish causation. It aims to establish <b>association and correlation</b> between clinical/epidemiological variables and disability at the time of diagnosis. For a 3-year MD thesis period and a 18-month study window, a cohort design would require years of follow-up and is not feasible. Our findings will generate hypotheses for future longitudinal studies."),
]),
("CRC Challenge 4: 'How will you confirm leprosy diagnosis — only on clinical grounds?'",
[make_para("Diagnosis will be made as per <b>NLEP Training Manual 2019</b> and WHO criteria — requiring at least ONE cardinal sign: (1) hypopigmented/erythematous skin lesion with definite loss of sensation; (2) thickened peripheral nerve; (3) positive SSS for AFB. For PNL cases, nerve biopsy will be performed. SSS (slit-skin smear) will be done in all MB-suspected cases. Histopathology (skin biopsy) will be performed where indicated. So diagnosis is BOTH clinical AND supported by investigations — not purely clinical."),
]),
("CRC Challenge 5: 'Convenient sampling is a bias — why not random sampling?'",
[make_para("Random sampling requires a known sampling frame (list of all leprosy patients) which does not exist prospectively — we cannot know in advance who will develop leprosy and attend our OPD. For newly diagnosed patients attending a tertiary centre during a defined time period, <b>consecutive/convenient sampling (enrolling ALL eligible patients) is the most appropriate and widely used method</b> in similar published studies. This is equivalent to a census of all eligible patients during the study period — minimising selection bias."),
]),
("CRC Challenge 6: 'Why 18 months? Can you complete in time?'",
[make_para("18 months is from IEC/CRC clearance date. Based on the annual new leprosy case load at TMMC & RC DVL department (approximately 100–150 new cases per year), we expect to enroll 94 patients within 12–14 months, keeping 4–6 months for data analysis, write-up, and thesis submission. Hence 18 months is a <b>conservative and achievable</b> timeline."),
]),
("CRC Challenge 7: 'What if a patient's disability is due to diabetes, not leprosy?'",
[make_para("This is specifically addressed in our <b>exclusion criteria</b>: 'Patients with disability or neurological deficit due to causes other than leprosy (e.g., diabetes mellitus, CVA, RTA-related deformity, amyloidosis, congenital deformity) are excluded.' We will perform relevant investigations (fasting blood sugar/HbA1c if DM suspected) to rule out co-existing causes. Patients with dual pathology will be excluded."),
]),
("CRC Challenge 8: 'Pregnant and lactating females are excluded — is this justified?'",
[make_para("Yes. Pregnancy is an independent risk factor for lepra reactions and altered immune status, which can independently cause acute nerve function changes. Including pregnant females would confound our disability data. Additionally, standard investigations (SSS, nerve biopsy) and some aspects of clinical assessment may be different in pregnant patients. This exclusion is consistent with published studies (Shravani et al., 2022; Sarkar et al., 2012)."),
]),
("CRC Challenge 9: 'Relapse cases — how will you distinguish a new case from a relapse?'",
[make_para("Relapse patients are excluded. Distinction criteria: (1) <b>New case</b> = has NEVER received MDT previously. (2) <b>Relapse</b> = has previously completed a full course of MDT and now presents with new active disease. History of prior MDT is taken from the patient and verified from available medical records, NLEP treatment card, or previous discharge summary. If there is ANY doubt (no documentation), the patient is excluded from the study to maintain study integrity."),
]),
("CRC Challenge 10: 'What are the ethical considerations?'",
[make_para("The study involves ONLY clinical examination and routine investigations (SSS, blood tests) — no new drug or experimental intervention. IEC approval will be obtained before enrollment. Written informed consent in Hindi and English will be taken. Participant information sheet (Hindi + English) is prepared. Confidentiality will be maintained — data coded, no patient identifiers in published data. Patients are free to withdraw at any time without affecting their treatment. All patients receive standard NLEP MDT irrespective of study participation. Cost of investigations: NIL to the patient."),
]),
]
for ch_title, ch_content in challenges:
ch_header = Table([[Paragraph(ch_title,
ParagraphStyle('CH', parent=styles['Normal'], fontSize=10.5,
textColor=white, fontName='Helvetica-Bold'))]],
colWidths=[doc.width])
ch_header.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), HexColor("#6e2f1a")),
('TOPPADDING', (0,0), (-1,-1), 7),
('BOTTOMPADDING', (0,0), (-1,-1), 7),
('LEFTPADDING', (0,0), (-1,-1), 10),
('RIGHTPADDING', (0,0), (-1,-1), 10),
]))
ch_ans = Table([[e] for e in ch_content], colWidths=[doc.width])
ch_ans.setStyle(TableStyle([
('BACKGROUND', (0,0), (-1,-1), HexColor("#fdfefe")),
('TOPPADDING', (0,0), (-1,-1), 2),
('BOTTOMPADDING', (0,0), (-1,-1), 2),
('LEFTPADDING', (0,0), (-1,-1), 6),
('RIGHTPADDING', (0,0), (-1,-1), 6),
('BOX', (0,0), (-1,-1), 0.5, HexColor("#922b21")),
]))
story.append(ch_header)
story.append(Spacer(1,1))
story.append(ch_ans)
story.append(Spacer(1,8))
# Footer note
story.append(Spacer(1, 10))
story.append(HRFlowable(width="100%", thickness=1, color=ACCENT))
story.append(Spacer(1, 6))
story.append(Paragraph(
"Prepared for CRC Presentation | Dr. Anuj Jain, PG Resident, DVL, TMMC & RC, Moradabad | August 2026",
ParagraphStyle('Footer', parent=styles['Normal'], fontSize=8.5,
textColor=HexColor("#7f8c8d"), alignment=TA_CENTER,
fontName='Helvetica-Oblique')))
doc.build(story)
print("PDF generated successfully!")
cd /tmp/workspace/anuj-crc && python3 generate_crc_pdf.py 2>&1
ls -lh /tmp/workspace/anuj-crc/
CRC QA Anuj Leprosy
PDF Document · PDF
| Study | Finding |
|---|---|
| Sarkar et al. IJDVL 2012 | Higher Grade 2 in MB; delayed diagnosis = key risk factor |
| Ishore et al. Indian J Lepr 2019 | Ulnar nerve most commonly involved; nerve involvement predicts Grade 2 |
| Rathod et al. An Bras Dermatol 2020 | LL/BL highest Grade 2; lepra reactions double disability risk |
| Shravani et al. JFMPC 2022 | 43.75% Grade 2 in LL; delay >2 years worsens outcome |
| Laldinthari et al. Asian J Med Sci 2023 | 40.5% had disability; male sex + MB + nerve involvement = risk factors |
| Jalakam et al. Cureus 2025 | 12% Grade 2; >2 nerves involved = highest predictor — YOUR sample size reference |
"Sir, diagnosis is CLINICAL as per NLEP 2019. Enrolment happens on the day of clinical diagnosis. The CRF is filled and disability graded at that single time point — this is the cross-sectional assessment. Biopsy, when done, is a supplementary investigation — its result (available at 14 days) is noted for histological subclassification but does NOT delay or invalidate enrolment. The cross-sectional 'snapshot' is already complete without the biopsy report."