Topics : Rebuilding the Base — Pelvic Floor Rehabilitation in Cervical Cancer Survivorship. PLEASE PREPARE PRESENTATION PPT FOR MY ( EMIRATES ONCOLOGY) CONFERENCE
cervical cancer AND pelvic floor rehabilitation
pelvic floor rehabilitation cervical cancer survivors guidelines pelvic health 2024
female pelvic floor muscles anatomy diagram rehabilitation
gynecologic cancer AND pelvic floor physiotherapy
https://esgo.org/media/2023/07/Huffman-2016-Sexual-health-gy…
~/
cancer AND pelvic floor muscle training
cervical cancer survivorship pelvic floor physical therapy study urinary sexual function radiotherapy
~/
mkdir -p "/tmp/workspace/emirates-oncology-pelvic-floor/src" "/tmp/workspace/emirates-oncology-pelvic-floor/output"
~/emirates-oncology-pelvic-floor/src/build_deck.py
from pptx import Presentation
from pptx.util import Inches, Pt
from pptx.enum.shapes import MSO_SHAPE, MSO_CONNECTOR
from pptx.enum.text import PP_ALIGN, MSO_ANCHOR
from pptx.dml.color import RGBColor
from pptx.enum.dml import MSO_THEME_COLOR
from pptx.enum.shapes import MSO_AUTO_SHAPE_TYPE
OUT='/tmp/workspace/emirates-oncology-pelvic-floor/output/Rebuilding_the_Base_Pelvic_Floor_Rehabilitation_Cervical_Cancer_Survivorship.pptx'
prs=Presentation(); prs.slide_width=Inches(13.333); prs.slide_height=Inches(7.5)
blank=prs.slide_layouts[6]
# Palette
NAVY=RGBColor(11,35,58); TEAL=RGBColor(0,125,134); AQUA=RGBColor(83,200,193); GOLD=RGBColor(235,180,63)
INK=RGBColor(28,43,57); MUTED=RGBColor(90,111,125); PALE=RGBColor(241,247,248); WHITE=RGBColor(255,255,255); RED=RGBColor(191,67,64); GREEN=RGBColor(48,143,111)
def bg(slide, color=WHITE):
s=slide.background.fill; s.solid(); s.fore_color.rgb=color
def rect(slide,x,y,w,h,fill,line=None,r=0):
sh=slide.shapes.add_shape(MSO_SHAPE.ROUNDED_RECTANGLE if r else MSO_SHAPE.RECTANGLE, Inches(x), Inches(y), Inches(w), Inches(h))
sh.fill.solid(); sh.fill.fore_color.rgb=fill
sh.line.color.rgb=line if line else fill
if r: sh.adjustments[0]=0.12
return sh
def text(slide,x,y,w,h,txt,size=20,color=INK,bold=False,align=PP_ALIGN.LEFT,font='Aptos',val=None,margin=0):
box=slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h)); tf=box.text_frame
tf.clear(); tf.word_wrap=True; tf.margin_left=Inches(margin); tf.margin_right=Inches(margin); tf.margin_top=Inches(margin); tf.margin_bottom=Inches(margin)
if val: tf.vertical_anchor=val
lines=txt.split('\n')
for i,line in enumerate(lines):
p=tf.paragraphs[0] if i==0 else tf.add_paragraph(); p.text=line; p.alignment=align
p.space_after=Pt(3)
for run in p.runs:
run.font.name=font; run.font.size=Pt(size); run.font.bold=bold; run.font.color.rgb=color
return box
def bullet(slide,x,y,w,h,items,size=18,color=INK):
box=slide.shapes.add_textbox(Inches(x), Inches(y), Inches(w), Inches(h)); tf=box.text_frame; tf.clear(); tf.word_wrap=True
tf.margin_left=tf.margin_right=Inches(.03); tf.margin_top=Inches(.02)
for i,item in enumerate(items):
p=tf.paragraphs[0] if i==0 else tf.add_paragraph(); p.text=item; p.level=0; p.font.size=Pt(size); p.font.color.rgb=color; p.space_after=Pt(8)
p._p.get_or_add_pPr().insert(0, p._p._new_buChar('•'))
return box
def title(slide,heading,kicker=None,num=None):
if kicker: text(slide,.62,.38,10,.25,kicker.upper(),10,TEAL,True)
text(slide,.62,.68,11.7,.63,heading,27,NAVY,True)
rect(slide,.62,1.42,1.08,.055,TEAL)
if num is not None: text(slide,12.15,.48,.55,.3,f'{num:02}',11,MUTED,True,align=PP_ALIGN.RIGHT)
def footer(slide, n):
rect(slide,.62,7.12,12.1,.012,RGBColor(213,227,229))
text(slide,.62,7.18,9,.18,'EMIRATES ONCOLOGY CONFERENCE | Cervical cancer survivorship',8,MUTED)
text(slide,12.1,7.18,.6,.18,str(n),8,MUTED,align=PP_ALIGN.RIGHT)
def notes(slide, txt):
ns=slide.notes_slide
tf=ns.notes_text_frame
tf.text=txt
def circle(slide,x,y,d,fill,label='',ls=13,tc=WHITE):
sh=slide.shapes.add_shape(MSO_SHAPE.OVAL, Inches(x), Inches(y), Inches(d), Inches(d)); sh.fill.solid(); sh.fill.fore_color.rgb=fill; sh.line.color.rgb=fill
if label: text(slide,x,y+.18,d,d-.36,label,ls,tc,True,align=PP_ALIGN.CENTER,val=MSO_ANCHOR.MIDDLE)
return sh
# 1 cover
s=prs.slides.add_slide(blank); bg(s,NAVY)
# Decorative pelvic "base" arcs
for x,y,d,c in [(8.7,.35,4.3,TEAL),(9.5,1.15,2.7,AQUA),(7.85,4.9,3.3,RGBColor(19,65,85))]: circle(s,x,y,d,c)
rect(s,.7,.72,1.22,.07,GOLD)
text(s,.72,1.15,7.5,.34,'EMIRATES ONCOLOGY CONFERENCE',13,AQUA,True)
text(s,.72,1.72,7.55,1.65,'Rebuilding\nthe Base',39,WHITE,True)
text(s,.75,3.62,7.6,.82,'Pelvic floor rehabilitation in\ncervical cancer survivorship',23,RGBColor(221,240,241),False)
text(s,.75,5.28,6.8,.25,'A functional, person-centred pathway from treatment to recovery',13,GOLD,True)
text(s,.75,6.48,7,.28,'Presenter name | Institution | 27 August 2026',11,RGBColor(190,215,220))
notes(s,'Opening message: cure is not the endpoint. In cervical cancer, pelvic floor function is a survivorship outcome that deserves planned assessment and rehabilitation.')
# 2 Why now
s=prs.slides.add_slide(blank); bg(s); title(s,'Why the pelvic floor belongs in survivorship care','The clinical gap',2)
text(s,.66,1.78,4.1,.42,'Treatment can cure cancer and still disrupt daily life.',23,NAVY,True)
items=['Bladder: urgency, leakage, incomplete emptying','Bowel: urgency, constipation, fecal leakage','Sexual health: pain, dryness, stenosis, avoidance','Pain and participation: hypertonicity, fear, reduced activity']
bullet(s,.7,2.43,5.4,3.4,items,18)
rect(s,6.45,1.75,5.98,4.55,PALE,r=1)
text(s,6.9,2.12,5,.28,'THE SURVIVOR’S QUESTION',12,TEAL,True)
text(s,6.9,2.64,4.95,1.1,'“Can I return to the life that feels like mine?”',28,NAVY,True)
text(s,6.9,4.32,4.85,.78,'Our response should be a pathway, not a leaflet.',19,INK)
text(s,6.9,5.5,4.85,.32,'Screen • assess • treat • track',16,GREEN,True)
footer(s,2); notes(s,'Introduce pelvic health as functional recovery. These symptoms commonly cluster and require proactive, sensitive enquiry. Avoid assuming a weak pelvic floor: some patients have overactivity, pain and poor relaxation.')
# 3 mechanisms
s=prs.slides.add_slide(blank); bg(s); title(s,'Different treatments, converging pelvic consequences','Mechanism matters',3)
# three treatment cards
cards=[('Surgery','Nerve disruption\nScar and altered support\nEarly voiding dysfunction',TEAL),('Radiotherapy / brachytherapy','Fibrosis and reduced tissue compliance\nMucosal change and vaginal shortening\nBowel and bladder irritability',GOLD),('Systemic / menopause effects','Fatigue and deconditioning\nOestrogen deficiency\nMood, body image, fear',GREEN)]
for i,(h,body,c) in enumerate(cards):
x=.65+i*4.18; rect(s,x,1.82,3.72,2.15,PALE,r=1); rect(s,x,1.82,3.72,.13,c)
text(s,x+.27,2.16,3.15,.35,h,18,NAVY,True); text(s,x+.27,2.72,3.05,1.02,body,15,INK)
# convergence
text(s,.67,4.62,2.2,.25,'CONVERGES ON',11,TEAL,True)
rect(s,.67,5.0,12.05,1.15,NAVY,r=1)
for i,(icon,label) in enumerate([('B','Bladder'),('Bo','Bowel'),('S','Sexual health'),('P','Pain & participation')]):
x=1.05+i*2.9; circle(s,x,5.24,.55,AQUA,icon,10,NAVY); text(s,x+.7,5.35,1.85,.28,label,14,WHITE,True)
footer(s,3); notes(s,'Frame dysfunction as multifactorial. Surgery, radiation, and menopause-related factors affect different tissues, nerves and behavior. The clinical response is an individual assessment rather than a standard Kegel prescription.')
# 4 what assess
s=prs.slides.add_slide(blank); bg(s); title(s,'Make pelvic function visible','A 3-minute screen at transition and follow-up',4)
text(s,.68,1.72,3.4,.3,'Ask permission. Normalize. Listen.',19,NAVY,True)
qs=[('BLADDER','Any leakage, urgency, pain, difficulty emptying?'),('BOWEL','Any urgency, constipation, leakage, bleeding?'),('VAGINAL / SEXUAL','Dryness, tightness, pain, change in intimacy or examination tolerance?'),('PAIN / FUNCTION','Pelvic pain, heaviness, fear of movement, activity restriction?')]
for i,(h,q) in enumerate(qs):
y=2.28+i*.93; rect(s,.68,y,11.85,.7,PALE,r=1); rect(s,.68,y,.18,.7,[TEAL,GOLD,GREEN,RED][i])
text(s,1.08,y+.14,2.1,.2,h,12,NAVY,True); text(s,3.12,y+.12,8.7,.33,q,16,INK)
rect(s,.68,6.2,11.85,.54,RGBColor(229,241,239),r=1); text(s,.94,6.35,11,.2,'Use patient-reported outcomes to open the conversation, then perform targeted examination when appropriate and consented.',13,GREEN,True)
footer(s,4); notes(s,'Suggested entry points: end of treatment, first survivorship visit, symptom-triggered review, and annually. Positive screen should lead to pelvic health physiotherapy and symptom-specific medical evaluation. Red flags require urgent oncology or specialist review.')
# 5 evaluation
s=prs.slides.add_slide(blank); bg(s); title(s,'Assessment: phenotype before prescription','The pelvic floor is not a single diagnosis',5)
left=[('1','History','Onset, triggers, bowel/bladder diary, sexual and functional goals'),('2','Safety check','Recurrence concern, infection, fistula, bleeding, obstruction, severe pain'),('3','Examination','Consent-led external and, where appropriate, internal assessment: tone, tenderness, strength, relaxation, scar/tissue mobility'),('4','Measures','ICIQ-UI, PFDI-20, FSFI/FSDS-R where relevant, pain NRS, goal attainment')]
for i,(n,h,b) in enumerate(left):
y=1.75+i*1.1; circle(s,.72,y,.56,TEAL,n,14); text(s,1.52,y-.01,2.0,.24,h,16,NAVY,True); text(s,3.15,y-.02,5.45,.5,b,14,INK)
rect(s,9.35,1.7,3.05,4.8,NAVY,r=1)
text(s,9.75,2.12,2.25,.22,'CLINICAL RULE',12,GOLD,True)
text(s,9.75,2.62,2.25,1.32,'Strengthening is not the answer to every pelvic symptom.',25,WHITE,True)
text(s,9.75,4.43,2.25,.98,'Hypertonicity or pain may require down-training, breathing, manual techniques and graded exposure first.',15,RGBColor(213,232,235))
footer(s,5); notes(s,'A high-quality pelvic floor assessment considers contractility and relaxation. If vaginal examination is not preferred or appropriate, external observation, symptom measures and education remain useful. Screen red flags before rehabilitation.')
# 6 intervention
s=prs.slides.add_slide(blank); bg(s); title(s,'Rehabilitation is a tailored bundle','Core components',6)
components=[('Education & self-management','Bladder/bowel habits, fluid and fiber strategy, pacing, skin and vaginal care'),('Motor retraining','Coordination, endurance, relaxation, cough/impact strategies, home programme'),('Symptom-directed techniques','Manual therapy, scar mobility, breathing, graded exposure, biofeedback when indicated'),('Vaginal / sexual rehabilitation','Lubricants, moisturizers, dilator programme when appropriate, partner-inclusive communication'),('Whole-person recovery','Physical activity, sleep, mental health, body image and relationship support')]
for i,(h,b) in enumerate(components):
y=1.7+i*.91; circle(s,.72,y,.48,[TEAL,GOLD,GREEN,RED,AQUA][i],str(i+1),12,NAVY if i in [1,4] else WHITE); text(s,1.43,y-.02,3.0,.23,h,16,NAVY,True); text(s,4.35,y-.02,7.72,.42,b,14,INK)
rect(s,.7,6.35,11.7,.4,PALE,r=1); text(s,.95,6.45,11,.18,'Dose, modality and timing should be individualized to symptoms, tissue status, goals and treatment phase.',12,TEAL,True)
footer(s,6); notes(s,'Present pelvic health physiotherapy as a multimodal package, not simply exercises. The patient should agree goals. Dilators may be offered where appropriate but clinicians should acknowledge evidence limitations and adherence barriers.')
# 7 pathway timeline
s=prs.slides.add_slide(blank); bg(s); title(s,'Build rehabilitation into the cancer pathway','From prehabilitation to long-term recovery',7)
# timeline
x0=1.0; y=3.35
rect(s,1.0,y,11.1,.09,RGBColor(205,224,226))
stages=[('Before treatment','Baseline symptoms\nEducation and expectations\nRisk stratification'),('During treatment','Manage irritative symptoms\nMaintain movement\nProtect confidence'),('0-12 weeks after','Early assessment\nBladder/bowel plan\nRestore mobility'),('3-12 months','Progress pelvic goals\nSexual rehabilitation\nReview outcomes'),('Long-term','Annual screen\nRapid re-entry for symptoms\nPeer / community support')]
for i,(h,b) in enumerate(stages):
x=1.0+i*2.25; circle(s,x+.64,3.06,.66,[TEAL,GOLD,GREEN,AQUA,NAVY][i],str(i+1),14,WHITE)
text(s,x,1.65,1.95,.42,h,16,NAVY,True,align=PP_ALIGN.CENTER); text(s,x,2.2,1.95,.72,b,13,INK,align=PP_ALIGN.CENTER)
text(s,.8,4.42,11.6,.28,'Trigger a rapid review for new or worsening symptoms, bleeding, fistula suspicion, obstruction, unexplained weight loss, or possible recurrence.',15,RED,True,align=PP_ALIGN.CENTER)
rect(s,1.05,5.2,10.95,.82,PALE,r=1); text(s,1.38,5.42,10.3,.25,'Operational principle: survivorship care plan + named referral pathway + documented patient-reported outcomes.',16,GREEN,True,align=PP_ALIGN.CENTER)
footer(s,7); notes(s,'Prehabilitation is feasible even if formal therapy starts later. The pathway should not depend on a patient finding the service themselves. Every phase has a pragmatic pelvic health action.')
# 8 MDT
s=prs.slides.add_slide(blank); bg(s); title(s,'The service model: one door, many skills','Who does what',8)
centerx=6.0; centery=3.05
circle(s,5.25,2.52,1.48,NAVY,'SURVIVOR\nGOALS',17,WHITE)
roles=[('Gyn oncologist','Safety, recurrence\nreview, referral',1.0,1.2,TEAL),('Radiation oncologist','Toxicity surveillance\nand tissue effects',9.65,1.2,GOLD),('Pelvic health PT','Assessment and\nrehabilitation lead',.88,4.85,GREEN),('Urology / GI','Complex bladder,\nbowel, fistula',9.7,4.85,RED),('Sexual health / psychology','Distress, intimacy,\ncommunication',5.1,5.75,AQUA)]
for h,b,x,y,c in roles:
rect(s,x,y,2.35,.96,PALE,r=1); rect(s,x,y,.12,.96,c); text(s,x+.24,y+.14,1.94,.2,h,13,NAVY,True); text(s,x+.24,y+.45,1.94,.35,b,11,INK)
# connector approximate from card to center
# simple connecting lines
for x1,y1,x2,y2 in [(3.35,2.15,5.25,2.85),(9.65,2.15,6.73,2.85),(3.23,5.0,5.25,3.72),(9.7,5.0,6.73,3.72),(6.3,5.75,6.0,4.0)]:
line=s.shapes.add_connector(MSO_CONNECTOR.STRAIGHT, Inches(x1), Inches(y1), Inches(x2), Inches(y2)); line.line.color.rgb=RGBColor(177,204,207); line.line.width=Pt(1.4)
text(s,.78,6.72,11.8,.18,'Include lymphedema, dietetics, social work and primary care according to need and local availability.',12,MUTED,align=PP_ALIGN.CENTER)
footer(s,8); notes(s,'Adapt this MDT to your center. The important operational point is a visible pathway and feedback loop, with pelvic health rehabilitation integrated rather than peripheral.')
# 9 evidence
s=prs.slides.add_slide(blank); bg(s); title(s,'What the evidence supports, and where it is still thin','Be credible about uncertainty',9)
rect(s,.7,1.72,5.85,4.75,RGBColor(232,244,241),r=1); text(s,1.05,2.07,4.9,.25,'WHAT WE CAN SAY',14,GREEN,True)
bullet(s,1.04,2.52,4.95,2.9,['Multimodal pelvic floor physical therapy can improve dyspareunia, sexual function and urinary symptoms in gynecologic cancer survivors.','Pelvic floor muscle training and dilator-based approaches have low-to-moderate certainty evidence for sexual function and quality of life in cervical cancer survivors.','Structured survivorship programmes should include pelvic, urogenital, gastrointestinal and sexual rehabilitation.'],16)
rect(s,6.8,1.72,5.85,4.75,RGBColor(253,246,232),r=1); text(s,7.15,2.07,4.9,.25,'WHAT WE SHOULD NOT OVERCLAIM',14,RED,True)
bullet(s,7.14,2.52,4.95,2.9,['Trials are small and interventions are heterogeneous.','The best exercise dose, optimal timing and patient selection are not settled.','Dilator use is widely advised after pelvic radiation, but direct effectiveness evidence and adherence remain variable.','Outcomes need to include patient priorities, not strength alone.'],16)
text(s,.9,6.75,11.5,.18,'Clinical implication: offer a safe, goal-directed programme while measuring outcomes and contributing to better evidence.',13,NAVY,True,align=PP_ALIGN.CENTER)
footer(s,9); notes(s,'This is an evidence-informed rather than evidence-perfect field. Be transparent. The 2024 systematic review found only seven studies with heterogeneous methodology. ESGO nevertheless sets expectations for structured survivorship and access to sexual rehabilitation.')
# 10 implementation
s=prs.slides.add_slide(blank); bg(s); title(s,'A 90-day implementation sprint','Start where you are',10)
steps=[('0-30 days','Map referral routes\nAgree red flags\nChoose a 4-domain screen'),('31-60 days','Train the clinic team\nPilot in one clinic\nCreate patient handout'),('61-90 days','Audit uptake and delay\nReview patient-reported outcomes\nRefine with patient feedback')]
for i,(h,b) in enumerate(steps):
x=.75+i*4.18; rect(s,x,1.9,3.65,2.3,PALE,r=1); rect(s,x,1.9,3.65,.14,[TEAL,GOLD,GREEN][i]); text(s,x+.28,2.35,3.1,.23,h,20,NAVY,True); text(s,x+.28,2.93,3.05,.78,b,16,INK)
text(s,.75,4.78,3,.25,'A simple dashboard',18,NAVY,True)
metrics=[('Reach','% screened at end of treatment'),('Access','Median days: positive screen → PT'),('Value','Goal attainment / PROM change'),('Equity','Language, culture, geography, cost barriers')]
for i,(h,b) in enumerate(metrics):
x=.75+i*3.02; rect(s,x,5.28,2.7,.82,WHITE,RGBColor(214,229,231),r=1); text(s,x+.2,5.46,2.25,.18,h,13,TEAL,True); text(s,x+.2,5.73,2.25,.2,b,11,INK)
footer(s,10); notes(s,'Offer a feasible start. A screening question and a named pathway are more useful than an unimplemented ideal protocol. Capture data from the beginning to show demand and outcomes.')
# 11 case
s=prs.slides.add_slide(blank); bg(s); title(s,'Case: move from symptom list to meaningful goal','What success looks like',11)
rect(s,.7,1.7,3.3,4.85,NAVY,r=1); text(s,1.05,2.05,2.55,.25,'AYA, 42 years',17,GOLD,True); text(s,1.05,2.55,2.5,2.75,'6 months after chemoradiation and brachytherapy\n\nUrgency, pain with penetration, fear of exercise\n\n“No one asked.”',18,WHITE,False)
text(s,4.5,1.78,7.4,.24,'ASSESSMENT → PLAN → OUTCOME',13,TEAL,True)
blocks=[('Assessment','Urinary urgency; pelvic floor overactivity and tenderness; vaginal tissue change; goal: return to pain-free intimacy and walking.',4.5,2.25,TEAL),('Plan','Education, bladder strategy, down-training and breathing, manual techniques as consented, vaginal care and gradual exposure; sexual-health support.',4.5,3.55,GOLD),('Measure','Patient goal attainment, urgency episodes, pain NRS, confidence with movement and intimacy at 6-12 weeks.',4.5,4.85,GREEN)]
for h,b,x,y,c in blocks:
rect(s,x,y,7.6,1.0,PALE,r=1); rect(s,x,y,.15,1.0,c); text(s,x+.33,y+.16,1.55,.2,h,14,NAVY,True); text(s,x+1.8,y+.13,5.45,.5,b,13,INK)
footer(s,11); notes(s,'Use this fictional case to demonstrate why default strengthening can be unsuitable. The first therapeutic target may be relaxation, safety and confidence. Goals selected by the survivor guide the plan.')
# 12 take home
s=prs.slides.add_slide(blank); bg(s,NAVY)
text(s,.72,.72,4,.25,'EMIRATES ONCOLOGY CONFERENCE',12,AQUA,True)
text(s,.72,1.38,11.1,.58,'Three take-home messages',32,WHITE,True)
msgs=[('1','Ask early','Pelvic symptoms are common, often unspoken and treatable.'),('2','Assess the phenotype','Do not prescribe generic Kegels without a symptom and function assessment.'),('3','Build the pathway','A named pelvic health referral route is a quality marker of survivorship care.')]
for i,(n,h,b) in enumerate(msgs):
y=2.45+i*1.25; circle(s,.78,y,.58,[AQUA,GOLD,GREEN][i],n,15,NAVY); text(s,1.6,y-.02,3.25,.23,h,18,WHITE,True); text(s,4.6,y-.02,7.1,.35,b,16,RGBColor(215,234,237))
rect(s,.72,6.35,11.8,.06,GOLD); text(s,.72,6.65,11.5,.25,'Cure matters. Function matters. Asking is the first intervention.',19,WHITE,True)
notes(s,'Close with the service commitment: pelvic health should be routinely planned, sensitively discussed and measured. Invite questions.')
# 13 sources
s=prs.slides.add_slide(blank); bg(s); title(s,'Selected references','For discussion and service design',13)
refs=[
'Fotopoulou C, et al. ESGO expanded quality indicators and accreditation for cervical cancer management. Int J Gynecol Cancer. 2024. doi:10.1136/ijgc-2024-005293.',
'Huffman LB, et al. Sexual health in gynecologic cancer survivors: a review and clinical guide. Gynecol Oncol. 2016;143:557-565.',
'Vissers J, et al. Effectiveness of pelvic floor muscle and education-based therapies in females treated for gynecological cancer: systematic review. 2024. PMCID: PMC11579103.',
'Cyr MP, et al. Improvements following multimodal pelvic floor physical therapy in gynecological cancer survivors with dyspareunia: one-year follow-up. PLoS One. 2022;17:e0262844. PMCID: PMC8789131.',
'Li X, et al. Pelvic floor rehabilitation exercise in postoperative patients with cervical cancer. Front Oncol. 2023;13:1118794. PMCID: PMC10204585.',
'Lindgren A, et al. Female pelvic cancer survivors’ experiences of pelvic floor muscle training after pelvic radiotherapy. Support Care Cancer. 2024;32:767. PMID:39623242.',
'Berek & Novak’s Gynecology. Cervical cancer chronic morbidity section, including late radiation complications. Library source reviewed for this deck.'
]
bullet(s,.75,1.75,11.8,4.7,refs,13)
text(s,.75,6.55,11.5,.24,'Evidence note: studies vary in population, intervention and outcome measures. Apply multidisciplinary clinical judgment and local protocols.',12,RED,True)
footer(s,13); notes(s,'Reference slide. Ensure local protocol and radiation oncology follow-up guidance are used alongside this educational content.')
# metadata
prs.core_properties.title='Rebuilding the Base - Pelvic Floor Rehabilitation in Cervical Cancer Survivorship'
prs.core_properties.subject='Emirates Oncology Conference'
prs.core_properties.author='OpenAI - prepared for user review'
prs.save(OUT)
print(OUT)
python "/tmp/workspace/emirates-oncology-pelvic-floor/src/build_deck.py"
~/emirates-oncology-pelvic-floor/src/build_deck.py
Successfully replaced 1 instance(s) of the string in '/tmp/workspace/emirates-oncology-pelvic-floor/src/build_deck.py'
python "/tmp/workspace/emirates-oncology-pelvic-floor/src/build_deck.py" && python - <<'PY' from pptx import Presentation p='/tmp/workspace/emirates-oncology-pelvic-floor/output/Rebuilding_the_Base_Pelvic_Floor_Rehabilitation_Cervical_Cancer_Survivorship.pptx' prs=Presentation(p) print('slides',len(prs.slides)) for i,s in enumerate(prs.slides,1): print(i, sum(1 for sh in s.shapes if getattr(sh,'has_text_frame',False)), 'shapes') PY
~/emirates-oncology-pelvic-floor/
/tmp/skills/pptx/scripts
python - <<'PY' from zipfile import ZipFile from pptx import Presentation p='/tmp/workspace/emirates-oncology-pelvic-floor/output/Rebuilding_the_Base_Pelvic_Floor_Rehabilitation_Cervical_Cancer_Survivorship.pptx' with ZipFile(p) as z: bad=z.testzip(); print('zip_ok=',bad is None,'members=',len(z.namelist())) prs=Presentation(p) print('title=',prs.core_properties.title) print('slides=',len(prs.slides)) for i,sl in enumerate(prs.slides,1): texts=[sh.text.strip() for sh in sl.shapes if getattr(sh,'has_text_frame',False) and sh.text.strip()] print(i, texts[0][:70] if texts else 'NO_TEXT', 'notes=', bool(sl.notes_slide.notes_text_frame.text.strip())) PY
PRESENTATION NOT ABLE TO DOWNLOAD
~/emirates-oncology-pelvic-floor/output
Rebuilding the Base Pelvic Floor Rehabilitation Cervical Cancer Survivorship
Presentation · PPTX
90 mins presentation - please add more slides related to topics
cervical cancer pelvic floor rehabilitation survivorship guideline systematic review 2024 2025
gynecologic cancer AND pelvic floor rehabilitation
pelvic radiotherapy cervical cancer vaginal stenosis anatomy illustration
https://pmc.ncbi.nlm.nih.gov/articles/PMC11579103
PMID: 39623242
PMID: 39765163
presentation ?
ESGO cervical cancer survivorship pelvic rehabilitation sexual health quality indicators
gynecologic cancer pelvic floor rehabilitation
~/emirates-oncology-pelvic-floor/src
~/emirates-oncology-pelvic-floor
~/emirates-oncology-pelvic-floor/src/build_90min_deck.py
from pptx import Presentation
from pptx.util import Inches, Pt
from pptx.enum.shapes import MSO_SHAPE
from pptx.enum.text import PP_ALIGN, MSO_ANCHOR
from pptx.dml.color import RGBColor
from pptx.enum.dml import MSO_LINE_DASH_STYLE
OUT='/tmp/workspace/emirates-oncology-pelvic-floor/output/Rebuilding_the_Base_90_Min_Emirates_Oncology.pptx'
prs=Presentation(); prs.slide_width=Inches(13.333); prs.slide_height=Inches(7.5)
blank=prs.slide_layouts[6]
NAVY=RGBColor(11,35,58); TEAL=RGBColor(0,125,134); AQUA=RGBColor(83,200,193); GOLD=RGBColor(235,180,63)
INK=RGBColor(28,43,57); MUTED=RGBColor(90,111,125); PALE=RGBColor(241,247,248); WHITE=RGBColor(255,255,255); RED=RGBColor(181,66,65); GREEN=RGBColor(48,143,111); LIGHT=RGBColor(227,240,242)
def add_rect(s,x,y,w,h,c,round=False,line=None):
q=s.shapes.add_shape(MSO_SHAPE.ROUNDED_RECTANGLE if round else MSO_SHAPE.RECTANGLE, Inches(x),Inches(y),Inches(w),Inches(h)); q.fill.solid();q.fill.fore_color.rgb=c; q.line.color.rgb=line or c
if round: q.adjustments[0]=0.10
return q
def tx(s,x,y,w,h,t,sz=18,c=INK,bold=False,align=PP_ALIGN.LEFT,va=None):
q=s.shapes.add_textbox(Inches(x),Inches(y),Inches(w),Inches(h)); f=q.text_frame; f.clear();f.word_wrap=True
f.margin_left=f.margin_right=Inches(.02);f.margin_top=f.margin_bottom=Inches(.01)
if va: f.vertical_anchor=va
for i,line in enumerate(t.split('\n')):
p=f.paragraphs[0] if i==0 else f.add_paragraph();p.text=line;p.alignment=align;p.space_after=Pt(2)
for r in p.runs: r.font.name='Aptos';r.font.size=Pt(sz);r.font.bold=bold;r.font.color.rgb=c
return q
def bullets(s,x,y,w,h,items,sz=16,c=INK):
q=s.shapes.add_textbox(Inches(x),Inches(y),Inches(w),Inches(h));f=q.text_frame;f.clear();f.word_wrap=True
f.margin_left=Inches(.02);f.margin_right=Inches(.02)
for i,v in enumerate(items):
p=f.paragraphs[0] if i==0 else f.add_paragraph();p.text='• '+v;p.font.name='Aptos';p.font.size=Pt(sz);p.font.color.rgb=c;p.space_after=Pt(6)
return q
def base(title,section='',n=None):
s=prs.slides.add_slide(blank); bg=s.background.fill;bg.solid();bg.fore_color.rgb=WHITE
add_rect(s,0,0,13.333,.12,TEAL)
if section:tx(s,.62,.32,10,.24,section.upper(),10,TEAL,True)
tx(s,.62,.61,11.75,.55,title,26,NAVY,True)
add_rect(s,.62,1.34,1.05,.05,TEAL)
if n is not None: tx(s,12.15,.58,.55,.32,f'{n:02d}',12,TEAL,True,PP_ALIGN.RIGHT)
return s
def foot(s,n,ref=''):
add_rect(s,.62,7.03,12.1,.015,RGBColor(215,228,230))
tx(s,.62,7.12,7,.18,'EMIRATES ONCOLOGY CONFERENCE | CERVICAL CANCER SURVIVORSHIP',8,MUTED,True)
if ref: tx(s,5.25,7.11,6.65,.19,ref,7,MUTED,False,PP_ALIGN.RIGHT)
tx(s,12.1,7.1,.5,.2,str(n),9,TEAL,True,PP_ALIGN.RIGHT)
def notes(s,t):
tf=s.notes_slide.notes_text_frame;tf.text=t
def card(s,x,y,w,h,hdr,body,accent=TEAL):
add_rect(s,x,y,w,h,PALE,True);add_rect(s,x,y,.12,h,accent);tx(s,x+.3,y+.18,w-.5,.25,hdr,14,NAVY,True);tx(s,x+.3,y+.55,w-.5,h-.7,body,13,INK)
def activity(s,prompt,minutes,items,n):
s=base('Audience activity',f'{minutes} minutes',n);add_rect(s,.8,1.75,11.7,1.05,NAVY,True);tx(s,1.15,2.02,11,0.44,prompt,23,WHITE,True,PP_ALIGN.CENTER)
for i,v in enumerate(items): card(s,.9+i*3.0,3.35,2.65,2.2,str(i+1),v,[TEAL,GOLD,GREEN,RED][i%4])
tx(s,.9,6.2,11.5,.35,'Invite two tables to report back. Link answers to the pathway on slide 31.',14,TEAL,True,PP_ALIGN.CENTER);foot(s,n);notes(s,'Facilitate rather than lecture. Ask participants to identify the first operational change they could make in their own service.')
# 1
s=prs.slides.add_slide(blank);f=s.background.fill;f.solid();f.fore_color.rgb=NAVY
add_rect(s,0,0,13.333,.14,TEAL);tx(s,.82,.75,8.8,.3,'EMIRATES ONCOLOGY CONFERENCE',14,AQUA,True);tx(s,.82,1.35,10.6,1.8,'Rebuilding the Base',42,WHITE,True);tx(s,.86,3.05,10.2,.75,'Pelvic Floor Rehabilitation in Cervical Cancer Survivorship',25,RGBColor(215,235,237));add_rect(s,.84,4.15,1.5,.08,GOLD);tx(s,.86,4.58,7.8,.4,'A practical 90-minute multidisciplinary session',18,GOLD,True);tx(s,.86,6.45,10,.3,'Presenter: ____________________ | Institution: ____________________',14,RGBColor(200,222,225));notes(s,'Introduce yourself and state that this is a functional survivorship session, not a substitute for individualized clinical assessment.')
# 2
s=base('Learning objectives','Opening',2);bullets(s,.85,1.85,11.5,3.5,['Recognize treatment-related pathways to pelvic floor dysfunction after cervical cancer.','Use a consent-led screen to identify bladder, bowel, vaginal, sexual and pain concerns.','Match rehabilitation strategies to the symptom phenotype instead of prescribing generic exercises.','Build a realistic multidisciplinary referral pathway and measure whether it works.'],21);add_rect(s,.85,5.7,11.4,.65,LIGHT,True);tx(s,1.15,5.92,10.8,.2,'Take-home message: disease control and pelvic function must be planned together.',17,TEAL,True,PP_ALIGN.CENTER);foot(s,2);notes(s,'Set expectation: we will cover assessment, intervention, evidence, cases and implementation.')
# 3
s=base('90-minute roadmap','Opening',3);agenda=[('0-10 min','Why this matters'),('10-25 min','Mechanisms and assessment'),('25-45 min','Symptom-specific rehabilitation'),('45-60 min','Sexual and vaginal health'),('60-72 min','Cases and audience work'),('72-85 min','Service design'),('85-90 min','Key actions and questions')]
for i,(a,b) in enumerate(agenda):
y=1.68+i*.67;add_rect(s,.85,y,2.15,.45,[TEAL,GOLD,GREEN,AQUA,NAVY,TEAL,GOLD][i],True);tx(s,1.02,y+.11,1.8,.17,a,12,WHITE,True,PP_ALIGN.CENTER);tx(s,3.25,y+.07,6.5,.25,b,16,NAVY,True)
foot(s,3);notes(s,'Use the agenda to make the 90-minute structure explicit. Plan to protect discussion time.')
# 4
s=base('The survivorship gap','Why it matters',4);tx(s,.85,1.73,5.6,.65,'We often ask “Is there recurrence?” before we ask “Can you live your life?”',25,NAVY,True);bullets(s,.85,2.72,5.55,2.6,['Pelvic symptoms may persist after curative treatment.','They affect confidence, sleep, mobility, intimacy and work.','Many women do not volunteer symptoms unless invited.'],17)
for i,(h,b,c) in enumerate([('BLADDER','Leakage • urgency • retention',TEAL),('BOWEL','Urgency • constipation • leakage',GOLD),('VAGINAL / SEXUAL','Dryness • narrowing • pain',GREEN),('PAIN / FUNCTION','Pelvic pain • avoidance • fatigue',RED)]): card(s,7.0+(i%2)*2.7,1.7+(i//2)*2.15,2.35,1.65,h,b,c)
foot(s,4,'ESGO survivorship quality indicators, 2024');notes(s,'Normalize symptom disclosure. Use patient-centered language and avoid assuming sexual activity or partnership.')
# 5
s=base('What cervical cancer treatment can change','Mechanisms',5);cols=[('Surgery','Autonomic nerve disturbance\nScar and tissue mobility change\nLymphatic disruption'),('Radiotherapy','Mucosal change and fibrosis\nVascular change\nBowel and bladder irritation'),('Systemic / hormonal / psychosocial','Fatigue and deconditioning\nMenopausal symptoms\nFear, body image, relationship strain')]
for i,(h,b) in enumerate(cols):card(s,.85+i*4.1,1.85,3.65,3.1,h,b,[TEAL,GOLD,GREEN][i])
add_rect(s,.85,5.55,11.65,.72,NAVY,True);tx(s,1.15,5.77,11,.22,'The phenotype is multifactorial: tissue, nerve, muscle, behavior and context all matter.',18,WHITE,True,PP_ALIGN.CENTER);foot(s,5,'Berek & Novak’s Gynecology; ESGO 2024');notes(s,'Do not attribute every new symptom to rehabilitation needs. New symptoms can require evaluation for recurrence or treatment complication.')
# 6
s=base('The pelvic floor: more than “squeeze”','Mechanisms',6);add_rect(s,.85,1.75,5.25,4.5,PALE,True);tx(s,1.15,2.05,4.55,.4,'Core functions',21,NAVY,True);bullets(s,1.15,2.65,4.6,2.9,['Support pelvic organs','Coordinate continence and evacuation','Respond to pressure and movement','Contribute to sexual function and pain modulation','Relax as well as contract'],17)
for i,(h,b,c) in enumerate([('OVERACTIVE','Pain, guarding, difficulty with penetration or evacuation',RED),('UNDERACTIVE','Leakage, heaviness, reduced support',TEAL),('POORLY COORDINATED','Urgency, incomplete emptying, dysfunctional defecation',GOLD)]):card(s,6.6,1.75+i*1.48,5.55,1.18,h,b,c)
foot(s,6);notes(s,'This slide is essential: a strong contraction is not the desired outcome in every person.')
# 7
s=base('Risk stratification: who needs proactive review?','Assessment',7);bullets(s,.85,1.75,6.3,4.45,['Radical hysterectomy, pelvic lymphadenectomy, chemoradiation or brachytherapy.','Pre-existing incontinence, constipation, prolapse, pelvic pain or trauma history.','High symptom burden during treatment or difficulty with catheter removal / voiding.','Barriers to access: language, travel, cost, cultural comfort, disability or social isolation.'],17)
add_rect(s,7.65,1.75,4.55,4.45,NAVY,True);tx(s,8.05,2.1,3.75,.23,'EQUITY QUESTION',12,GOLD,True);tx(s,8.05,2.65,3.6,1.2,'Who will not reach the service if referral depends on self-advocacy?',24,WHITE,True);tx(s,8.05,4.38,3.55,.82,'Design an opt-out screen, interpreter pathway and remote option where possible.',15,RGBColor(215,235,237));foot(s,7);notes(s,'Risk stratification is for proactive support, not for excluding patients who report symptoms later.')
# 8
s=base('A 3-minute pelvic health screen','Assessment',8);questions=[('Bladder','Leakage, urgency, pain, difficulty emptying?'),('Bowel','Urgency, constipation, leakage, bleeding?'),('Vaginal / sexual','Dryness, tightness, pain, change in intimacy or examination tolerance?'),('Pain / function','Pelvic pain, heaviness, fear of movement, activity restriction?')]
for i,(h,b) in enumerate(questions): card(s,.85,1.65+i*1.08,11.55,.78,h,b,[TEAL,GOLD,GREEN,RED][i])
add_rect(s,.85,6.2,11.55,.45,LIGHT,True);tx(s,1.1,6.33,11,.14,'Ask permission. Normalize. Document. Act on the answer.',14,TEAL,True,PP_ALIGN.CENTER);foot(s,8);notes(s,'Use this as a script. Screening can be done by oncology nurses, physicians or allied health staff. A positive screen is the beginning of assessment, not a diagnosis.')
# 9
s=base('Safety first: do not rehabilitate around a red flag','Assessment',9);red=['New vaginal, rectal or urinary bleeding','Fever, acute pelvic pain or suspected infection','Fistula symptoms, obstruction, severe retention','Progressive unexplained pain, weight loss or possible recurrence','Acute leg swelling, cardiopulmonary symptoms or neurological deficit']
add_rect(s,.85,1.7,11.55,.6,RGBColor(255,236,235),True);tx(s,1.15,1.9,10.9,.2,'Escalate for clinical evaluation before proceeding with a routine rehabilitation plan.',17,RED,True,PP_ALIGN.CENTER);bullets(s,1.1,2.75,10.8,2.8,red,18,INK);foot(s,9);notes(s,'This is a generic safety framework. Follow local oncology, emergency and radiation toxicity protocols.')
# 10
s=base('Assessment: phenotype before prescription','Assessment',10);steps=[('History','Time course, treatment exposure, goals, diary, impact'),('Consent-led examination','External and where appropriate internal: tone, tenderness, relaxation, strength, scars/tissue mobility'),('Outcome measures','Symptom measure plus goal attainment: do not measure what you will not use'),('Clinical hypothesis','What is driving the symptom? What must be ruled out? What can change?')]
for i,(h,b) in enumerate(steps):card(s,.85+(i%2)*5.95,1.75+(i//2)*2.0,5.4,1.45,h,b,[TEAL,GOLD,GREEN,AQUA][i])
foot(s,10);notes(s,'Explicitly mention that internal examination is never compulsory. Use a trauma-informed, culturally responsive approach.')
# 11
s=base('Useful measures: keep it feasible','Assessment',11);data=[('Bladder','ICIQ-UI Short Form; bladder diary; patient goal'),('Bowel','Bowel diary; urgency/leakage frequency; radiation symptom review'),('Vaginal / sexual','Pain NRS; ICIQ-VS; sexual concerns screen; patient-defined intimacy goal'),('Global','EORTC QLQ-C30/CX24 where used; participation and goal attainment')]
for i,(h,b) in enumerate(data):card(s,.85,1.7+i*1.08,11.5,.78,h,b,[TEAL,GOLD,GREEN,AQUA][i])
foot(s,11);notes(s,'Do not overload the clinic with tools. Pick 1-2 routine measures, then add targeted tools for a specific concern.')
#12
activity(s,'At what point in your pathway is pelvic health currently screened?',5,['At diagnosis','During treatment','At completion','Only when patient asks'],12)
# 13
s=base('Intervention principles','Rehabilitation',13);bullets(s,.85,1.75,6.0,4.5,['Treat the impairment pattern, not the cancer label.','Set a functional goal that matters to the patient.','Teach both contraction and relaxation when indicated.','Use graded progression and a sustainable home programme.','Review adherence barriers without blame.','Combine physical rehabilitation with medical, psychosocial and sexual-health care.'],17)
add_rect(s,7.4,1.85,4.7,3.95,NAVY,True);tx(s,7.85,2.25,3.8,.2,'AVOID THE DEFAULT',12,GOLD,True);tx(s,7.85,2.78,3.65,1.15,'“Everyone should do Kegels.”',28,WHITE,True,PP_ALIGN.CENTER);tx(s,7.85,4.35,3.65,.78,'For pain and hypertonicity, down-training and graded exposure may come first.',15,RGBColor(215,235,237),False,PP_ALIGN.CENTER);foot(s,13);notes(s,'Use individualized language. Explain that pelvic floor muscle training is active rehabilitation, not simply a leaflet.')
# 14
s=base('Urinary symptoms: a practical pathway','Symptom-specific care',14);for i,(h,b,c) in enumerate([('Leakage with exertion','Assess cough/impact strategies, support, timing, strength and endurance.',TEAL),('Urgency / frequency','Screen infection/irritation; bladder habits, urge suppression, pacing, relaxation.',GOLD),('Incomplete emptying','Review voiding pattern, retention risk and need for medical/urology assessment.',RED),('Painful bladder symptoms','Rule out pathology; use symptom-directed medical and pelvic pain strategies.',GREEN)]):card(s,.85+(i%2)*5.9,1.75+(i//2)*2.0,5.35,1.42,h,b,c)
foot(s,14);notes(s,'Mention that new retention or hematuria needs medical assessment. Rehabilitation should interface with urology/urogynecology.')
#15
s=base('Pelvic floor muscle training: what good delivery looks like','Symptom-specific care',15);items=[('Teach','Confirm the patient can identify, contract and relax appropriately.'),('Dose','Choose strength, endurance, coordination or relaxation targets based on assessment.'),('Integrate','Link exercises to tasks: cough, transfer, urgency, walking, lifting or defecation strategies.'),('Support','Consider supervised review, biofeedback when appropriate, and habit cues for home practice.'),('Reassess','Measure meaningful change and adapt rather than continuing an ineffective programme.')]
for i,(h,b) in enumerate(items):card(s,.85,1.55+i*.93,11.5,.68,h,b,[TEAL,GOLD,GREEN,AQUA,RED][i])
foot(s,15,'Lindgren et al. Support Care Cancer 2024, PMID 39623242');notes(s,'Recent qualitative work within a trial context found structured programmes, physiotherapist support and routine-building helpful. Avoid prescribing a universal repetition count.')
#16
s=base('Bowel symptoms: use a team approach','Symptom-specific care',16);bullets(s,.85,1.75,5.7,3.9,['Clarify stool consistency, frequency, urgency, leakage, pain, bleeding and diet.','Review radiation-related bowel morbidity and medication effects.','Use bowel routine, toileting posture, coordinated relaxation, fiber/fluid strategy where appropriate.','Refer for gastroenterology, dietetics or specialist continence support when needed.'],17)
for i,(h,b,c) in enumerate([('CONSTIPATION','Avoid escalating strain. Check outlet dysfunction and pelvic floor non-relaxation.',GOLD),('URGENCY / LEAKAGE','Diary, stool optimization, urge strategies and targeted continence rehabilitation.',TEAL),('BLEEDING / SEVERE PAIN','Not a physiotherapy-only problem: escalate for evaluation.',RED)]):card(s,7.1,1.7+i*1.45,5.0,1.1,h,b,c)
foot(s,16);notes(s,'The rehabilitation plan should never delay evaluation of bleeding, obstruction or significant radiation injury.')
#17
s=base('Chronic pelvic pain: reduce threat, restore choice','Symptom-specific care',17);cards=[('Explain','Pain can be influenced by tissue change, muscle guarding, sensitization, fear and stress. Validate without minimizing.'),('Down-train','Breath, relaxation, pacing, posture, external/manual techniques and movement confidence.'),('Grade exposure','Return to activities or examination/penetration goals only at the person’s pace.'),('Coordinate','Address sleep, mood, trauma history, medication and specialist pain support where needed.')]
for i,(h,b) in enumerate(cards):card(s,.85+(i%2)*5.9,1.7+(i//2)*2.05,5.35,1.45,h,b,[RED,TEAL,GOLD,GREEN][i])
foot(s,17);notes(s,'Avoid telling a patient that pain is “all in the mind”. Use a biopsychosocial framework with respectful language.')
#18
s=base('Lymphedema and movement: do not overlook participation','Symptom-specific care',18);bullets(s,.85,1.75,6.1,3.9,['Ask about limb or genital swelling, heaviness, skin changes and activity limitation.','Refer to trained lymphedema services for assessment, compression and self-management education.','Progress physical activity safely: walking, resistance and functional conditioning support recovery.','Address fear of movement and practical barriers such as fatigue, transport or caregiving.'],17)
add_rect(s,7.45,1.85,4.6,3.7,LIGHT,True);tx(s,7.85,2.22,3.8,.22,'FUNCTIONAL QUESTION',12,TEAL,True);tx(s,7.85,2.73,3.7,1.2,'What has the patient stopped doing because of symptoms?',25,NAVY,True,PP_ALIGN.CENTER);foot(s,18);notes(s,'Rehabilitation outcomes should include participation, not only symptom severity.')
#19
activity(s,'Case 1: 48-year-old, 6 months after radical hysterectomy. She has urgency, slow voiding and avoids leaving home. What is your first step?',7,['Screen red flags and quantify symptoms','Assume weakness and prescribe Kegels','Refer without assessment','Discuss goals and coordinate medical + pelvic health evaluation'],19)
#20
s=base('Sexual health belongs in routine cancer care','Sexual and vaginal health',20);tx(s,.85,1.75,11.2,.5,'Permission to ask is itself an intervention.',27,NAVY,True,PP_ALIGN.CENTER);bullets(s,1.1,2.65,10.8,2.8,['Ask at diagnosis, during treatment, after treatment and in longer-term survivorship.','Do not assume sexual activity, partner status, orientation, fertility goals or desired outcomes.','Use neutral language: “Has treatment affected comfort, intimacy, body confidence or sexual wellbeing?”','Offer choices: education, medical management, pelvic health therapy, psychology and partner-inclusive support.'],18)
foot(s,20,'Clinical practice guidelines on sexual dysfunction in gynecological cancer, 2025');notes(s,'Current guidance emphasizes routine assessment across the care continuum. Create an environment in which it is safe not to discuss details today and safe to return later.')
#21
s=base('Vaginal health after pelvic radiotherapy','Sexual and vaginal health',21);cols=[('Possible effects','Dryness, mucosal fragility, narrowing/shortening, pain, altered tissue flexibility'),('First conversation','Explain changes; assess symptoms, goals, examination tolerance and cancer treatment context'),('Rehabilitation options','Lubricants/moisturizers, graded self-insertion or dilator if appropriate, pelvic floor down-training, tissue mobility, psychosexual support')]
for i,(h,b) in enumerate(cols):card(s,.85+i*4.1,1.75,3.65,3.55,h,b,[RED,GOLD,TEAL][i])
add_rect(s,.85,5.75,11.6,.52,RGBColor(255,246,220),True);tx(s,1.05,5.91,11.2,.18,'Dilators should be offered with education, choice, consent and follow-up, not as a task handed to the patient.',14,INK,True,PP_ALIGN.CENTER);foot(s,21,'Cyr et al. Curr Oncol Rep 2024; ESGO sexual health review');notes(s,'Be honest: routine dilator evidence has limitations. Offer individualized support and respect refusal or discontinuation.')
#22
s=base('Dyspareunia: a multimodal rehabilitation model','Sexual and vaginal health',22);steps=[('1. Clarify','Location, quality, triggers, vaginal symptoms, fear, relationship and patient goals.'),('2. Rule out','Recurrence, infection, severe atrophy, radiation injury or other medical pathology.'),('3. Rehabilitate','Education, relaxation, breathing, desensitization, soft tissue approaches, graded exposure and home practice.'),('4. Support','Lubrication strategies, psychosexual care, partner communication and paced return to intimacy.')]
for i,(h,b) in enumerate(steps):card(s,.85+(i%2)*5.9,1.7+(i//2)*2.0,5.35,1.42,h,b,[TEAL,GOLD,RED,GREEN][i])
foot(s,22,'Cyr et al. PLoS One 2022; PMID 35151175');notes(s,'Multimodal pelvic physical therapy studies have reported sustained improvement, but studies are relatively small. Do not promise a specific response.')
#23
s=base('Counseling language that lowers barriers','Sexual and vaginal health',23);phrases=[('Open','“Many people notice bladder, bowel, pelvic pain or intimacy changes after treatment. Has this affected you?”'),('Permission','“Would it be okay if I ask a few questions about vaginal comfort or sexual wellbeing?”'),('Normalize','“You do not need to be sexually active to deserve care for these symptoms.”'),('Offer choice','“We can start with education, external assessment or referral. Internal examination is never required.”')]
for i,(h,b) in enumerate(phrases):card(s,.85,1.55+i*1.12,11.5,.82,h,b,[TEAL,GOLD,GREEN,AQUA][i])
foot(s,23);notes(s,'Encourage culturally sensitive phrasing. Invite an interpreter, not a family member, where needed.')
#24
s=base('What the evidence supports - and what it does not','Evidence',24);add_rect(s,.85,1.7,5.5,3.95,RGBColor(231,246,241),True);tx(s,1.2,2.05,4.8,.25,'REASONABLE TO OFFER',14,GREEN,True);bullets(s,1.2,2.55,4.65,2.5,['Individualized pelvic floor interventions and education.','Symptom-targeted bladder/bowel strategies.','Multimodal support for dyspareunia and sexual wellbeing.','Supervised support to improve confidence and adherence.'],16)
add_rect(s,6.9,1.7,5.5,3.95,RGBColor(255,243,225),True);tx(s,7.25,2.05,4.8,.25,'STATE THE UNCERTAINTY',14,RED,True);bullets(s,7.25,2.55,4.65,2.5,['Heterogeneous interventions and outcome measures.','Limited cervical-cancer-specific trials for many outcomes.','Dilator protocols and causal effect remain uncertain.','Need for larger trials and implementation evaluation.'],16)
foot(s,24,'Cyr et al. 2024 systematic review, PMID 39177709; Devan Moy 2025, PMID 39765163');notes(s,'This is the evidence anchor. Mention the strength of evidence is generally low-to-moderate and intervention packages vary.')
#25
s=base('Recent evidence: what changes practice?','Evidence',25);ev=[('2024 systematic review','Low-to-moderate evidence supported pelvic floor muscle/dilator therapies for sexual function and quality of life in cervical cancer survivors; study number and quality were limited.'),('2024 PFMT experience study','Women valued structured training, physiotherapist support and habit-building after pelvic radiotherapy.'),('2025 review of reviews','Pelvic floor exercise, biofeedback and education received stronger recommendations; dilators/manual techniques had more uncertain protocol evidence.')]
for i,(h,b) in enumerate(ev):card(s,.85,1.68+i*1.45,11.5,1.08,h,b,[TEAL,GOLD,GREEN][i])
foot(s,25,'PMIDs 39177709, 39623242, 39765163');notes(s,'Avoid overstating efficacy. Translate evidence into an offer of individualized care with measurement and review.')
#26
s=base('Case 2: “I have finished treatment, but I do not feel normal”','Case discussion',26);add_rect(s,.85,1.65,11.5,1.0,NAVY,True);tx(s,1.15,1.93,10.9,.35,'39-year-old, 9 months after chemoradiation and brachytherapy: dyspareunia, vaginal tightness, urgency and fear of examination.',20,WHITE,True,PP_ALIGN.CENTER)
for i,(h,b) in enumerate([('Ask','What outcome would matter most to her now?'),('Assess','Red flags, tissue symptoms, bladder function, pain phenotype, preferences.'),('Plan','Education plus individualized pelvic health, vaginal/sexual support and medical review as needed.'),('Review','Track a chosen goal, not only penetration or a score.')]):card(s,.85+(i%2)*5.9,3.15+(i//2)*1.5,5.35,1.0,h,b,[TEAL,GOLD,GREEN,AQUA][i])
foot(s,26);notes(s,'Use the case to model a non-prescriptive plan. Ask the audience where they would refer and how they would overcome access barriers.')
#27
activity(s,'Table task: write the first 3 sentences you would use to open the conversation in Case 2.',6,['Ask permission','Normalize symptoms','Invite the patient’s goal','Offer choices, not pressure'],27)
#28
s=base('Who does what?','Multidisciplinary care',28);team=[('Oncology team','Screen, explain risk, exclude recurrence/acute toxicity, activate referral.'),('Pelvic health physiotherapist','Detailed functional assessment, individualized rehabilitation and self-management.'),('Urology / urogynecology','Voiding dysfunction, incontinence, hematuria, complex bladder symptoms.'),('Gastroenterology / dietetics','Radiation bowel morbidity, nutrition, refractory bowel symptoms.'),('Psychology / sexual health','Distress, trauma, relationship or sexual wellbeing support.'),('Lymphedema service','Limb/genital swelling assessment and management.')]
for i,(h,b) in enumerate(team):card(s,.85+(i%2)*5.9,1.55+(i//2)*1.45,5.35,1.05,h,b,[TEAL,GOLD,GREEN,AQUA,RED,NAVY][i])
foot(s,28);notes(s,'There is no single owner. Clarify responsibility and referral criteria in writing.')
#29
s=base('Referral triggers and urgency','Multidisciplinary care',29);for i,(h,b,c) in enumerate([('Routine pelvic health referral','Persistent or bothersome urinary, bowel, vaginal, pain or functional symptoms.',TEAL),('Priority specialist review','Retention, recurrent infection, severe leakage, significant bowel dysfunction, escalating pain.',GOLD),('Urgent oncology / medical review','Bleeding, fistula suspicion, obstruction, severe acute pain, possible recurrence.',RED)]):card(s,.85,1.75+i*1.45,11.5,1.1,h,b,c)
foot(s,29);notes(s,'Customize this slide to your institution. Add local contact points before presenting.')
#30
s=base('The minimum viable survivorship pathway','Service design',30);stages=[('1. Identify','Standard screen at treatment completion'),('2. Triage','Red flags, symptom severity, patient preference'),('3. Refer','Named pelvic health service plus medical subspecialty routes'),('4. Treat','Individualized plan and education'),('5. Review','Outcome and re-entry pathway for late effects')]
for i,(h,b) in enumerate(stages):
x=.85+i*2.34;add_rect(s,x,2.25,2.0,2.2,[TEAL,GOLD,GREEN,AQUA,NAVY][i],True);tx(s,x+.2,2.62,1.6,.35,h,17,WHITE,True,PP_ALIGN.CENTER);tx(s,x+.18,3.25,1.64,.65,b,13,WHITE,False,PP_ALIGN.CENTER)
if i<4:tx(s,x+2.02,3.12,.3,.2,'›',25,TEAL,True,PP_ALIGN.CENTER)
add_rect(s,.85,5.4,11.5,.6,LIGHT,True);tx(s,1.15,5.61,10.9,.18,'Start with one standard screen and one reliable referral destination. Expand after the pathway works.',15,TEAL,True,PP_ALIGN.CENTER);foot(s,30,'ESGO 2024 expanded quality indicators');notes(s,'A basic pathway is better than an aspirational complex pathway that no one can access.')
#31
s=base('Operational workflow: 15 minutes at transition to survivorship','Service design',31);workflow=[('0-3 min','Normalize and screen'),('3-6 min','Safety/recurrence check and symptom priority'),('6-10 min','Explain likely pathway; give written resource'),('10-13 min','Refer or book assessment'),('13-15 min','Document goal, outcome measure and follow-up date')]
for i,(h,b) in enumerate(workflow):card(s,.85,1.53+i*.9,11.5,.64,h,b,[TEAL,GOLD,GREEN,AQUA,RED][i])
foot(s,31);notes(s,'For clinics with less time, screening can be completed before the visit via digital or paper form.')
#32
s=base('Measure what matters','Service design',32);measures=[('Process','Screening completion, referral rate, wait time, attendance'),('Clinical','Chosen urinary/bowel/pain/vaginal symptom score; goal attainment'),('Experience','Patient comfort discussing symptoms, confidence, accessibility'),('Equity','Uptake by language, age, geography, treatment type and social context'),('Learning','Reasons for decline, non-attendance and pathway failure')]
for i,(h,b) in enumerate(measures):card(s,.85,1.5+i*.91,11.5,.65,h,b,[TEAL,GOLD,GREEN,AQUA,RED][i])
foot(s,32);notes(s,'Do not evaluate only the number of referrals. Evaluate whether women can access and benefit from the service.')
#33
s=base('Barriers: name them, then design around them','Service design',33);bar=[('Patient','Embarrassment, fatigue, transport, competing priorities, fear of symptoms or examination'),('Clinician','Time, confidence, lack of training, uncertainty about where to refer'),('System','Few pelvic health specialists, fragmented records, funding, language access')]
for i,(h,b) in enumerate(bar):card(s,.85+i*4.1,1.75,3.65,2.25,h,b,[TEAL,GOLD,RED][i])
add_rect(s,.85,4.7,11.5,1.0,NAVY,True);tx(s,1.15,4.97,10.9,.32,'Design response: opt-out screening + simple referral + interpreter/telehealth options + clinician script + feedback loop.',18,WHITE,True,PP_ALIGN.CENTER);foot(s,33);notes(s,'Invite attendees to identify one barrier specific to their setting.')
#34
activity(s,'Implementation challenge: choose one change to test in the next 30 days.',7,['Standardize one screen','Name one referral destination','Create one patient information sheet','Audit 10 survivorship visits'],34)
#35
s=base('A patient-facing explanation','Communication',35);add_rect(s,1.1,1.75,11.1,3.9,PALE,True);tx(s,1.55,2.15,10.15,.26,'“Cancer treatment can affect the muscles, nerves and tissues that help with bladder, bowel, comfort and intimacy. These symptoms are common and treatable. A pelvic health therapist can assess what is happening and work with you on a plan that matches your goals. You are always in control of what is discussed or examined.”',22,NAVY,False,PP_ALIGN.CENTER,MSO_ANCHOR.MIDDLE)
foot(s,35);notes(s,'Use this phrase or adapt it for your local patient information materials.')
#36
s=base('Key actions for tomorrow','Close',36);actions=[('Ask','Make pelvic health a routine survivorship question.'),('Assess','Phenotype symptoms and check red flags before prescribing.'),('Act','Use an individualized, multidisciplinary rehabilitation plan.'),('Access','Build one clear, equitable referral route.'),('Audit','Measure symptoms, function, experience and pathway reach.')]
for i,(h,b) in enumerate(actions):card(s,.85,1.47+i*.91,11.5,.65,h,b,[TEAL,GOLD,GREEN,AQUA,RED][i])
foot(s,36);notes(s,'Close with these five actions. Invite participants to choose one they will take back to their service.')
#37
s=base('Selected references','References',37);refs=['Fotopoulou C, et al. ESGO expanded quality indicators and accreditation for cervical cancer management. Int J Gynecol Cancer. 2024.','Cyr MP, et al. Effectiveness of pelvic floor muscle and education-based therapies in females treated for gynecological cancer: systematic review. Curr Oncol Rep. 2024. PMID: 39177709.','Lindgren A, et al. Female pelvic cancer survivors’ experiences of pelvic floor muscle training after pelvic radiotherapy. Support Care Cancer. 2024. PMID: 39623242.','Devan Moy N, Simarro González MC. Pelvic rehabilitation for sexual dysfunction secondary to gynecological cancer: review of reviews. Rehabilitacion. 2025. PMID: 39765163.','Cyr MP, et al. Improvements following multimodal pelvic floor physical therapy in gynecological cancer survivors with dyspareunia. PLoS One. 2022.','Clinical practice guidelines: sexual dysfunction in gynecological cancer patients. 2025.']
bullets(s,.85,1.65,11.65,4.8,refs,14);foot(s,37);notes(s,'References are selected, not exhaustive. Add institutional and local guideline references as required.')
#38
s=prs.slides.add_slide(blank);f=s.background.fill;f.solid();f.fore_color.rgb=NAVY;add_rect(s,0,0,13.333,.14,TEAL);tx(s,.9,1.35,11.4,.65,'Questions and discussion',33,WHITE,True,PP_ALIGN.CENTER);tx(s,1.1,2.35,11.0,.5,'What is the one change that would make pelvic health visible in your survivorship pathway?',20,GOLD,True,PP_ALIGN.CENTER);add_rect(s,3.3,3.55,6.7,.07,AQUA);tx(s,.9,5.95,11.4,.3,'Thank you',18,RGBColor(215,235,237),True,PP_ALIGN.CENTER);notes(s,'Take questions. Consider returning to the pathway slide if discussion becomes operational.')
prs.core_properties.title='Rebuilding the Base: Pelvic Floor Rehabilitation in Cervical Cancer Survivorship - 90 Minute Conference Presentation'
prs.core_properties.subject='Emirates Oncology Conference'
prs.core_properties.author='Orris'
prs.save(OUT)
print(OUT)
python "/tmp/workspace/emirates-oncology-pelvic-floor/src/build_90min_deck.py" && python - <<'PY' from pptx import Presentation from zipfile import ZipFile p='/tmp/workspace/emirates-oncology-pelvic-floor/output/Rebuilding_the_Base_90_Min_Emirates_Oncology.pptx' with ZipFile(p) as z: print('zip_ok',z.testzip() is None) prs=Presentation(p) print('slides',len(prs.slides)) for i,s in enumerate(prs.slides,1): text=' '.join(sh.text for sh in s.shapes if getattr(sh,'has_text_frame',False)).strip() print(i, len(text), 'notes',bool(s.notes_slide.notes_text_frame.text.strip())) PY
python - <<'PY' p='/tmp/workspace/emirates-oncology-pelvic-floor/src/build_90min_deck.py' s=open(p).read() s=s.replace("s=base('Urinary symptoms: a practical pathway','Symptom-specific care',14);for i,(h,b,c) in enumerate([", "s=base('Urinary symptoms: a practical pathway','Symptom-specific care',14)\nfor i,(h,b,c) in enumerate([") s=s.replace("s=base('Bowel symptoms: use a team approach','Symptom-specific care',16);bullets", "s=base('Bowel symptoms: use a team approach','Symptom-specific care',16)\nbullets") s=s.replace("s=base('Referral triggers and urgency','Multidisciplinary care',29);for i,(h,b,c) in enumerate([", "s=base('Referral triggers and urgency','Multidisciplinary care',29)\nfor i,(h,b,c) in enumerate([") open(p,'w').write(s) PY python -m py_compile "/tmp/workspace/emirates-oncology-pelvic-floor/src/build_90min_deck.py" && python "/tmp/workspace/emirates-oncology-pelvic-floor/src/build_90min_deck.py"
python - <<'PY' from pptx import Presentation from zipfile import ZipFile p='/tmp/workspace/emirates-oncology-pelvic-floor/output/Rebuilding_the_Base_90_Min_Emirates_Oncology.pptx' with ZipFile(p) as z: print('zip_ok', z.testzip() is None, 'members',len(z.namelist())) prs=Presentation(p) print('slides',len(prs.slides)) for i,s in enumerate(prs.slides,1): texts=[sh.text.strip() for sh in s.shapes if getattr(sh,'has_text_frame',False) and sh.text.strip()] print(i, texts[0][:65] if texts else 'NO_TEXT', 'notes',bool(s.notes_slide.notes_text_frame.text.strip())) PY
Rebuilding the Base 90 Min Emirates Oncology
Presentation · PPTX
Detailed one please with images/pictures in slides
female pelvic floor muscles levator ani anatomical illustration medical
female urinary continence pelvic floor anatomy diagram medical
cervical cancer pelvic radiotherapy treatment diagram brachytherapy medical illustration
vaginal dilator rehabilitation pelvic radiotherapy medical illustration
pelvic floor physical therapy biofeedback female medical
cervical cancer pelvic floor rehabilitation image anatomy radiotherapy vaginal stenosis
~/emirates-oncology-pelvic-floor
Medical educational illustration of the female pelvic floor in sagittal section, clearly showing bladder, urethra, uterus/cervix, vagina, rectum, levator ani, puborectalis, pelvic diaphragm and perineal body, accurate anatomy, labelled cleanly for an oncology conference slide
Medical educational infographic illustrating the cervical cancer pelvic radiotherapy survivorship pathway: radiation exposure to pelvic tissues leading to fibrosis, vaginal shortening, bladder and bowel symptoms, pelvic pain, followed by pelvic floor rehabilitation including assessment, relaxation, strengthening, biofeedback and return to daily life. Accurate, respectful, conference-ready
Respectful clinical illustration for an oncology conference: pelvic health physiotherapist teaching a cervical cancer survivor diaphragmatic breathing and pelvic floor relaxation in a private rehabilitation clinic, non-identifiable adults, no nudity, medical setting
Medical educational illustration showing vaginal tissue changes after pelvic radiotherapy in a respectful sagittal cutaway: normal flexible vaginal canal compared with fibrosis and narrowing, labelled normal tissue, fibrosis, stenosis, with simple clear clinical style
Medical educational infographic of a multidisciplinary cervical cancer survivorship team around the patient: gynecologic oncologist, radiation oncologist, pelvic health physiotherapist, urologist, gastroenterologist, psychologist, sexual health clinician, nurse navigator, clean professional conference graphic
~/emirates-oncology-pelvic-floor
Rebuilding the Base Pelvic Floor Rehabilitation Cervical Cancer Survivorship
Presentation · PPTX
Rebuilding the Base 90 Min Emirates Oncology
Presentation · PPTX
An error occurred (ValidationException) when calling the InvokeCodeInterpreter operation: Code interpreter session 01M10YTYXFKD0DFZADSAMZ2F79 is not active
We encountered an error while processing your request. Please try again or reach out to us for help.
An error occurred (ValidationException) when calling the InvokeCodeInterpreter operation: Code interpreter session 01M10YTYXFKD0DFZADSAMZ2F79 is not active
We encountered an error while processing your request. Please try again or reach out to us for help.
Detailed one please with images/pictures in slides
~/emirates-oncology-pelvic-floor
cervical cancer survivorship pelvic floor rehabilitation systematic review 2024 ESGO
female pelvic floor anatomy diagram levator ani medical
cervical cancer radiotherapy brachytherapy medical diagram