Attached presentation requried profession presentation for the emirate onology conference , Please make good presentation about this topics
~/
Emirates Oncology Conference official branding presentation 2026
~/attachments/988b4b48-c916-460d-8416-71680d52d799/
cancer oncology
python -c "from pypdf import PdfReader; p='/tmp/workspace/attachments/988b4b48-c916-460d-8416-71680d52d799/1_compressed.pdf'; r=PdfReader(p); print('PAGES',len(r.pages)); [print('\\n--- PAGE',i+1,'---\\n'+(pg.extract_text() or '')) for i,pg in enumerate(r.pages)]"
python -c "import fitz, os; p='/tmp/workspace/attachments/988b4b48-c916-460d-8416-71680d52d799/1_compressed.pdf'; d=fitz.open(p); out='/tmp/workspace/pdf_review'; os.makedirs(out,exist_ok=True); [page.get_pixmap(matrix=fitz.Matrix(1.5,1.5),alpha=False).save(f'{out}/page_{i+1}.png') for i,page in enumerate(d)]; print(out)"
python -c "from pypdf import PdfReader; import os; p='/tmp/workspace/attachments/988b4b48-c916-460d-8416-71680d52d799/1_compressed.pdf'; r=PdfReader(p); out='/tmp/workspace/pdf_review'; os.makedirs(out,exist_ok=True); print([(i+1,len(list(pg.images))) for i,pg in enumerate(r.pages)]); [ [open(f'{out}/p{i+1}_{j+1}_{im.name.replace('/','_')}', 'wb').write(im.data) for j,im in enumerate(pg.images)] for i,pg in enumerate(r.pages) ]; print(os.listdir(out))"
python -c "from PIL import Image,ImageDraw; import os,glob; fs=sorted(glob.glob('/tmp/workspace/pdf_review/*.jpg')); ims=[Image.open(f).convert('RGB') for f in fs]; thumbs=[]; [thumbs.append((im.copy().resize((360,510)),os.path.basename(f))) for im,f in zip(ims,fs)]; canvas=Image.new('RGB',(1440,1620),'white'); d=ImageDraw.Draw(canvas); [(canvas.paste(im,((k%4)*360,(k//4)*540+30)),d.text(((k%4)*360+10,(k//4)*540+8),name,fill='black')) for k,(im,name) in enumerate(thumbs)]; canvas.save('/tmp/workspace/pdf_review/contact.jpg')"
python -c "from PIL import Image; import glob,os; [(print(os.path.basename(f), Image.open(f).size)) for f in sorted(glob.glob('/tmp/workspace/pdf_review/*.jpg'))]"; python -c "import pytesseract; from PIL import Image; import glob,os; [print('---',os.path.basename(f),'---\n',pytesseract.image_to_string(Image.open(f))) for f in sorted(glob.glob('/tmp/workspace/pdf_review/*.jpg'))]"
which tesseract || true; which convert || true; python -c "import importlib.util; print('ocrmypdf',importlib.util.find_spec('easyocr')); print('cv2',importlib.util.find_spec('cv2'))"
pip install --user easyocr -q
python -c "import importlib.util; mods=['transformers','torch','keras_ocr','paddleocr','rapidocr_onnxruntime','doctr']; print({m:bool(importlib.util.find_spec(m)) for m in mods})"; python -c "from PIL import Image; import glob,os; [print(os.path.basename(f), Image.open(f).getbbox()) for f in glob.glob('/tmp/workspace/pdf_review/p*.jpg')]"
mkdir -p /tmp/workspace/ocr_lib && pip install --target /tmp/workspace/ocr_lib easyocr -q
Analyze the supplied PDF at /tmp/workspace/attachments/988b4b48-c916-460d-8416-71680d52d799/1_compressed.pdf. It is a 7-page image-only PDF. Determine the exact topic/content of each page by any reliable means available, and return a concise structured outline for a professional Emirates Oncology Society conference presentation: title, intended message, and 7-12 slide plan. Do not create files. Be explicit about any uncertainty.
~/attachments/988b4b48-c916-460d-8416-71680d52d799
/tmp/workspace
~/ocr_lib
~/pdf_review
python - <<'PY' from PIL import Image import os for i in range(1,8): p=f'/tmp/workspace/pdf_review/p{i}_1_X{i-1}.jpg' im=Image.open(p) print(i, im.size, im.mode) try: import pytesseract print(pytesseract.image_to_string(im)[:4000]) except Exception as e: print('OCR_ERR',repr(e)) PY
python - <<'PY' import importlib.util for x in ['easyocr','keras_ocr','paddleocr','transformers','torch','cv2','fitz','pdf2image']: print(x, bool(importlib.util.find_spec(x))) PY
which tesseract || true; which ocrmypdf || true; python - <<'PY' from PIL import Image ims=[] for i in range(1,8): im=Image.open(f'/tmp/workspace/pdf_review/p{i}_1_X{i-1}.jpg'); im.thumbnail((300,450)); ims.append(im.copy()) out=Image.new('RGB',(2100,450),'white') for i,im in enumerate(ims): out.paste(im,(300*i,0)) out.save('/tmp/workspace/pdf_review/overview.jpg') PY
pip install --quiet rapidocr_onnxruntime && python - <<'PY' from rapidocr_onnxruntime import RapidOCR from PIL import Image engine=RapidOCR() for i in range(1,8): p=f'/tmp/workspace/pdf_review/p{i}_1_X{i-1}.jpg' result,_=engine(p) print('\n=== PAGE',i,'===') if result: for item in result: print(item[1]) else: print('(no OCR)') PY
ASCO Society for Integrative Oncology guideline cancer-related fatigue adult survivors 2024 recommendations exercise CBT mindfulness
cancer-related fatigue energy conservation occupational therapy four Ps prioritize plan pace position infographic
~/
Continue and generate the polished conference PowerPoint
~/
cancer-related fatigue rehabilitation
ASCO SIO guideline cancer related fatigue 2024 exercise CBT mindfulness recommendations
mkdir -p "/tmp/workspace/eos_crf_presentation/src" "/tmp/workspace/eos_crf_presentation/output" && cat > "/tmp/workspace/eos_crf_presentation/src/create_deck.py" <<'PY' from pptx import Presentation from pptx.util import Inches, Pt from pptx.dml.color import RGBColor from pptx.enum.text import PP_ALIGN, MSO_ANCHOR from pptx.enum.shapes import MSO_SHAPE, MSO_CONNECTOR from pptx.enum.dml import MSO_THEME_COLOR from pptx.oxml.xmlchemy import OxmlElement from pptx.oxml.ns import qn from pptx.enum.text import MSO_AUTO_SIZE OUT='/tmp/workspace/eos_crf_presentation/output/Beyond_Rest_Cancer_Related_Fatigue_EOS_Conference.pptx' prs=Presentation(); prs.slide_width=Inches(13.333); prs.slide_height=Inches(7.5) blank=prs.slide_layouts[6] # palette NAVY=RGBColor(9,30,52); NAVY2=RGBColor(14,48,72); TEAL=RGBColor(0,151,150); GOLD=RGBColor(216,169,68); MINT=RGBColor(199,234,226); SKY=RGBColor(223,241,246); INK=RGBColor(20,42,59); WHITE=RGBColor(255,255,255); GREY=RGBColor(101,117,130); PALE=RGBColor(244,248,249); ROSE=RGBColor(242,231,228) def fill(shape,c): shape.fill.solid(); shape.fill.fore_color.rgb=c; shape.line.fill.background() def textbox(s,x,y,w,h,text,size=18,color=INK,bold=False,font='Aptos',align=None, valign=MSO_ANCHOR.TOP, margin=0.06): tb=s.shapes.add_textbox(Inches(x),Inches(y),Inches(w),Inches(h)); tf=tb.text_frame; tf.clear(); tf.word_wrap=True; tf.margin_left=tf.margin_right=Inches(margin); tf.margin_top=tf.margin_bottom=Inches(margin); tf.vertical_anchor=valign p=tf.paragraphs[0]; p.text=text; p.font.name=font; p.font.size=Pt(size); p.font.bold=bold; p.font.color.rgb=color if align: p.alignment=align return tb def rect(s,x,y,w,h,c,rad=False): sh=s.shapes.add_shape(MSO_SHAPE.ROUNDED_RECTANGLE if rad else MSO_SHAPE.RECTANGLE, Inches(x), Inches(y), Inches(w), Inches(h)); fill(sh,c); return sh def line(s,x1,y1,x2,y2,c=TEAL,width=1.5): sh=s.shapes.add_connector(MSO_CONNECTOR.STRAIGHT, Inches(x1),Inches(y1),Inches(x2),Inches(y2)); sh.line.color.rgb=c; sh.line.width=Pt(width); return sh def header(s,num,title,kicker='EMIRATES ONCOLOGY SOCIETY CONFERENCE'): rect(s,0,0,13.333,0.18,TEAL); textbox(s,.55,.32,9.8,.22,kicker,9,TEAL,True); textbox(s,.55,.62,11.8,.6,title,27,NAVY,True); textbox(s,12.08,.35,.65,.28,f'{num:02d}',10,GOLD,True,align=PP_ALIGN.RIGHT) line(s,.55,1.34,12.75,1.34,RGBColor(211,223,226),.8) def footer(s,txt='Cancer-related fatigue | occupational therapy and multidisciplinary rehabilitation'): line(s,.55,7.08,12.75,7.08,RGBColor(211,223,226),.7); textbox(s,.55,7.17,10.8,.18,txt,8,GREY); textbox(s,11.65,7.17,1.1,.18,'EOS 2026',8,TEAL,True,align=PP_ALIGN.RIGHT) def add_notes(slide, notes): notes_slide=slide.notes_slide tf=notes_slide.notes_text_frame tf.text=notes def pill(s,x,y,w,text,c=TEAL): rect(s,x,y,w,.34,c,True); textbox(s,x+.05,y+.035,w-.1,.22,text,10,WHITE,True,align=PP_ALIGN.CENTER) def bullet(s,x,y,w,items,size=17,accent=TEAL,spacing=.64): for i,t in enumerate(items): rect(s,x,y+i*spacing,.12,.12,accent,True); textbox(s,x+.25,y-.04+i*spacing,w-.25,.44,t,size,INK) def stat(s,x,y,w,number,label,c=TEAL): rect(s,x,y,w,1.28,PALE,True); textbox(s,x+.15,y+.15,w-.3,.45,number,27,c,True,align=PP_ALIGN.CENTER); textbox(s,x+.14,y+.75,w-.28,.34,label,11,INK,False,align=PP_ALIGN.CENTER) def circle(s,x,y,d,c,text,sub=''): sh=s.shapes.add_shape(MSO_SHAPE.OVAL,Inches(x),Inches(y),Inches(d),Inches(d)); fill(sh,c); textbox(s,x,y+.22,d,.28,text,18,WHITE,True,align=PP_ALIGN.CENTER); if sub: textbox(s,x-.25,y+d+.08,d+.5,.3,sub,11,INK,True,align=PP_ALIGN.CENTER) # 1 cover s=prs.slides.add_slide(blank); rect(s,0,0,13.333,7.5,NAVY); rect(s,0,0,13.333,.18,TEAL); rect(s,8.9,0,4.433,7.5,NAVY2) # decorative circles for x,y,d,c in [(10.0,1.1,2.7,TEAL),(11.55,2.8,1.85,GOLD),(9.1,4.5,2.25,RGBColor(29,88,104))]: sh=s.shapes.add_shape(MSO_SHAPE.OVAL, Inches(x), Inches(y), Inches(d), Inches(d)); fill(sh,c) textbox(s,.7,.68,6.8,.25,'EMIRATES ONCOLOGY SOCIETY CONFERENCE',11,RGBColor(129,220,211),True) textbox(s,.7,1.55,7.3,1.62,'Beyond\nRest',44,WHITE,True) textbox(s,.75,3.35,7.25,.78,'Occupational therapy-led management of cancer-related fatigue during chemotherapy',24,MINT,False) line(s,.75,4.4,6.6,4.4,GOLD,2) textbox(s,.75,4.72,6.5,.58,'A practical pathway from symptom recognition to participation-preserving care',16,WHITE) textbox(s,.75,6.36,6.6,.35,'Presenter name, credentials | Institution | October 2026',12,RGBColor(194,211,220)) textbox(s,10.15,5.85,2.5,.35,'EOS 2026',15,WHITE,True,align=PP_ALIGN.CENTER) add_notes(s,'Introduce CRF as more than tiredness. This talk focuses on practical, function-centred strategies within a multidisciplinary oncology pathway.') # 2 s=prs.slides.add_slide(blank); header(s,2,'Cancer-related fatigue is not ordinary tiredness'); footer(s) textbox(s,.65,1.66,7.0,.48,'A persistent, subjective sense of tiredness related to cancer or its treatment that interferes with usual functioning.',22,NAVY,True) textbox(s,.66,2.43,6.5,.35,'What makes CRF clinically distinct',13,TEAL,True) bullet(s,.72,2.93,6.3,['Disproportionate to recent activity','Often poorly relieved by sleep or rest','Multidimensional: physical, cognitive and emotional','Changes participation, not only symptom scores'],17) stat(s,8.05,1.82,2.0,'30-60%','moderate-to-severe fatigue during treatment',TEAL) stat(s,10.32,1.82,2.0,'20-30%','persistent fatigue after treatment',GOLD) rect(s,8.05,3.42,4.27,2.25,SKY,True); textbox(s,8.34,3.72,3.72,.3,'Clinical implication',16,NAVY,True); textbox(s,8.34,4.2,3.68,.95,'Ask about what the patient can no longer do. That answer often guides the most useful intervention.',18,INK) add_notes(s,'Use the definition to separate CRF from normal tiredness. Prevalence estimates are from Bower et al, 2024. Stress that impact on activity and roles should be assessed routinely.') #3 s=prs.slides.add_slide(blank); header(s,3,'The fatigue burden is a participation burden'); footer(s) textbox(s,.62,1.65,12.0,.4,'When energy is depleted, everyday occupations become fragmented, delayed, delegated, or abandoned.',20,NAVY,True) items=[('SELF-CARE','dressing, bathing, prayer, sleep routines'),('HOME & FAMILY','meal preparation, caregiving, household tasks'),('WORK & COMMUNITY','transport, work performance, social connection')] for i,(a,b) in enumerate(items): x=.72+i*4.17; rect(s,x,2.42,3.62,2.15,PALE,True); rect(s,x,2.42,3.62,.16,[TEAL,GOLD,RGBColor(29,113,131)][i]); textbox(s,x+.22,2.85,3.15,.3,a,14,NAVY,True); textbox(s,x+.22,3.42,3.05,.72,b,17,INK) textbox(s,.75,5.34,11.5,.3,'For oncology teams: symptom severity and functional impact are related but not interchangeable.',17,TEAL,True,align=PP_ALIGN.CENTER) rect(s,2.15,5.88,9.05,.62,NAVY,True); textbox(s,2.35,6.03,8.65,.28,'“What matters most that fatigue is making difficult right now?”',18,WHITE,False,align=PP_ALIGN.CENTER) add_notes(s,'Use a patient example relevant to your practice. For example, a person receiving chemotherapy who wants to preserve childcare, prayer routines and work attendance but is exhausted by midday.') #4 s=prs.slides.add_slide(blank); header(s,4,'Screen every patient, then assess what matters'); footer(s) steps=[('1','SCREEN','Ask about fatigue at relevant encounters'),('2','ASSESS','Severity, pattern, function, sleep, distress'),('3','IDENTIFY','Contributors and safety concerns'),('4','ACT','Goals, self-management, referral and follow-up')] for i,(n,t,d) in enumerate(steps): x=.72+i*3.12; circle(s,x,1.85,.72,[TEAL,GOLD,RGBColor(29,113,131),NAVY][i],n); textbox(s,x-.05,2.78,1.0,.25,t,12,NAVY,True,align=PP_ALIGN.CENTER); textbox(s,x-.43,3.17,1.85,.72,d,12,INK,False,align=PP_ALIGN.CENTER) if i<3: line(s,x+.83,2.22,x+2.9,2.22,RGBColor(180,203,207),1.6) rect(s,.74,4.5,5.7,1.75,SKY,True); textbox(s,1.0,4.78,5.1,.25,'Useful instruments',15,NAVY,True); textbox(s,1.0,5.18,5.1,.7,'Brief Fatigue Inventory • FACIT-Fatigue • ESAS\nCOPM • occupational profile • fatigue diary',16,INK) rect(s,6.72,4.5,5.55,1.75,ROSE,True); textbox(s,6.98,4.78,4.95,.25,'Do not miss contributing factors',15,NAVY,True); textbox(s,6.98,5.18,4.95,.7,'Pain • anaemia • sleep disruption • distress/depression • medication effects • deconditioning • endocrine or nutritional issues',15,INK) add_notes(s,'Assessment is not merely a scale score. Combine a validated fatigue tool with an occupational profile and review of potentially reversible contributors. Use escalation pathways according to local clinical protocol.') #5 s=prs.slides.add_slide(blank); header(s,5,'Guideline-aligned care: behavioural interventions first'); footer(s) textbox(s,.67,1.68,12.0,.42,'During active treatment, recommend interventions with evidence, tailored to goals, tolerance and clinical safety.',20,NAVY,True) cols=[('MOVE','Exercise\nAerobic, resistance or combined activity',TEAL),('THINK','CBT-informed strategies\nCoping, sleep, activity beliefs',GOLD),('SETTLE','Mindfulness, tai chi or qigong\nAttention and stress regulation',RGBColor(29,113,131))] for i,(title,body,c) in enumerate(cols): x=.72+i*4.17; rect(s,x,2.43,3.6,2.1,PALE,True); rect(s,x,2.43,3.6,.16,c); textbox(s,x+.22,2.82,3.0,.3,title,16,c,True); textbox(s,x+.22,3.32,3.02,.85,body,17,INK) rect(s,.72,5.22,11.72,.78,NAVY,True); textbox(s,.98,5.45,11.2,.27,'The rehabilitation plan is individualized. A safe, feasible plan that a patient can sustain is more useful than a generic prescription.',16,WHITE,False,align=PP_ALIGN.CENTER) textbox(s,.75,6.35,11.7,.3,'Source: ASCO-SIO Guideline Update, 2024. Exercise, CBT, mindfulness-based programs and tai chi/qigong are recommended options during treatment.',10,GREY) add_notes(s,'The updated ASCO-SIO guidance recommends exercise, CBT, mindfulness-based programs, and tai chi/qigong during active treatment. Frame this as a clinical discussion that considers contraindications, treatment effects, patient preference and access.') #6 s=prs.slides.add_slide(blank); header(s,6,'Exercise: make the foundation intervention feasible'); footer(s) textbox(s,.66,1.64,12,.35,'OT can translate “be active” into a realistic, repeatable daily routine.',20,NAVY,True) # ladder for i,(lab,sub,c) in enumerate([('START','short, achievable activity',RGBColor(178,221,216)),('GRADE','increase duration or challenge',RGBColor(89,178,172)),('SUSTAIN','link activity to valued routines',TEAL)]): x=.78+i*4.06; rect(s,x,2.4,3.55,1.18,c,True); textbox(s,x+.15,2.65,3.25,.25,lab,16,NAVY if i==0 else WHITE,True,align=PP_ALIGN.CENTER); textbox(s,x+.17,3.03,3.18,.22,sub,11,NAVY if i==0 else WHITE,align=PP_ALIGN.CENTER) if i<2: line(s,x+3.57,2.98,x+3.92,2.98,GOLD,2) rect(s,.78,4.45,5.55,1.35,SKY,True); textbox(s,1.02,4.72,5.0,.22,'Practical examples',15,NAVY,True); textbox(s,1.02,5.12,5.0,.45,'Walking intervals • sit-to-stand • functional strengthening • active transport within tolerance',15,INK) rect(s,6.7,4.45,5.56,1.35,ROSE,True); textbox(s,6.95,4.72,5.0,.22,'OT contribution',15,NAVY,True); textbox(s,6.95,5.12,5.0,.45,'Grade tasks • build activity into routines • monitor response • remove practical barriers to adherence',15,INK) add_notes(s,'Avoid giving a fixed exercise dose on this slide. Discuss collaboration with physiotherapy or an exercise oncology service. For patients with instability, significant symptoms or treatment complications, use local safety screening and specialist referral.') #7 s=prs.slides.add_slide(blank); header(s,7,'Energy conservation: make the Four Ps visible in daily life'); footer(s) ps=[('P','PRIORITIZE','Choose what matters. Delegate, defer or simplify lower-value tasks.',TEAL),('P','PLAN','Place demanding activities in peak-energy periods. Prepare ahead.',GOLD),('P','PACE','Break tasks into intervals. Rest before exhaustion, not only after.',RGBColor(29,113,131)),('P','POSITION','Sit, organize the workspace, and reduce unnecessary effort.',NAVY)] for i,(p,t,b,c) in enumerate(ps): x=.58+i*3.15; circle(s,x,1.76,.86,c,p); textbox(s,x+1.02,1.85,1.78,.25,t,13,c,True); textbox(s,x,2.92,2.82,.82,b,14,INK,False,align=PP_ALIGN.CENTER) if i<3: line(s,x+2.9,2.2,x+3.1,2.2,RGBColor(185,206,210),1.5) rect(s,.72,4.65,11.75,1.2,PALE,True); textbox(s,1.0,4.9,11.15,.24,'Example: prepare food while seated, cluster errands, use a shopping list, and reserve energy for family time or a clinical appointment.',17,NAVY,True,align=PP_ALIGN.CENTER) textbox(s,.72,6.36,11.75,.25,'Energy conservation is not “doing less”. It is allocating energy to what the patient values most.',15,TEAL,True,align=PP_ALIGN.CENTER) add_notes(s,'Invite the audience to think of one routine task in their setting and how it can be prioritized, planned, paced and positioned. Emphasize that the Four Ps support meaningful participation rather than withdrawal from life.') #8 s=prs.slides.add_slide(blank); header(s,8,'Cognition, distress and roles: the OT treatment toolkit'); footer(s) arr=[('COGNITION','Task segmentation\nchecklists, alarms, planners\nreduce competing demands',TEAL),('DISTRESS','CBT-informed coping\nrelaxation and mindfulness\naddress sleep routines',GOLD),('ROLES','Meaningful activity\nreturn-to-work planning\nenvironmental modification',RGBColor(29,113,131))] for i,(t,b,c) in enumerate(arr): x=.72+i*4.17; rect(s,x,1.84,3.6,2.43,PALE,True); rect(s,x,1.84,3.6,.16,c); textbox(s,x+.24,2.23,3.0,.28,t,15,c,True); textbox(s,x+.24,2.77,3.0,1.1,b,17,INK) rect(s,.72,4.9,11.75,1.15,NAVY,True); textbox(s,1.1,5.18,11.0,.28,'Goal-led rehabilitation asks: “What roles do you need or want to return to, and what is the smallest next step?”',17,WHITE,False,align=PP_ALIGN.CENTER) add_notes(s,'This slide highlights the distinct contribution of occupational therapy. Relate cognitive supports and coping strategies to actual occupations, roles, environments, and participation goals.') #9 s=prs.slides.add_slide(blank); header(s,9,'A multidisciplinary pathway, organized around the patient'); footer(s) # center circle(s,5.72,2.55,1.86,TEAL,'PATIENT','goals, priorities, safety') roles=[(1.1,1.55,'ONCOLOGIST\nmedical review'),(1.15,4.45,'ONCOLOGY NURSE\nscreening + education'),(9.65,1.55,'OT\nfunction + routines'),(9.65,4.45,'PHYSIO / EXERCISE\nactivity prescription'),(5.32,5.42,'PSYCHOLOGY / DIETETICS / SUPPORTIVE CARE\ncontributors, coping and symptom support')] for x,y,t in roles: rect(s,x,y,2.42,.8,PALE,True); textbox(s,x+.1,y+.17,2.22,.42,t,12,NAVY,True,align=PP_ALIGN.CENTER); line(s,x+1.21,y+.4,6.65,3.48,RGBColor(155,194,195),1) textbox(s,.76,6.55,11.85,.26,'Referral triggers: impaired ADLs or mobility, escalating caregiver burden, work disruption, unsafe activity, uncontrolled symptoms, or treatment interference.',14,INK,False,align=PP_ALIGN.CENTER) add_notes(s,'Explain that no single discipline owns fatigue. The pathway needs routine screening, clear referral triggers, shared goals, and feedback to the oncology team.') #10 s=prs.slides.add_slide(blank); header(s,10,'Three actions to embed in routine oncology care'); footer(s) actions=[('ASK','Ask about fatigue and the activity or role it is disrupting.',TEAL),('ASSESS','Assess severity, pattern, contributors, safety and patient-defined goals.',GOLD),('ACT','Act early: individualized exercise, pacing, psychosocial support and rehabilitation referral.',NAVY)] for i,(t,b,c) in enumerate(actions): x=.78+i*4.05; rect(s,x,1.92,3.5,3.38,c,True); textbox(s,x+.22,2.35,3.06,.32,str(i+1),17,WHITE,True,align=PP_ALIGN.CENTER); textbox(s,x+.22,2.92,3.06,.32,t,20,WHITE,True,align=PP_ALIGN.CENTER); line(s,x+.65,3.44,x+2.85,3.44,WHITE,1); textbox(s,x+.31,3.83,2.9,.9,b,16,WHITE,False,align=PP_ALIGN.CENTER) textbox(s,.78,6.02,11.7,.36,'Fatigue care is not simply symptom control. It is participation-preserving cancer care.',20,TEAL,True,align=PP_ALIGN.CENTER) add_notes(s,'Close with the three operational behaviours. Encourage the audience to consider one change they can make: embed a fatigue screen, add a functional question, or establish a direct rehabilitation referral route.') #11 references s=prs.slides.add_slide(blank); header(s,11,'Selected references and acknowledgements'); footer(s,'Prepared from supplied source material and updated guideline evidence') refs=[ 'Bower JE, et al. Management of Fatigue in Adult Survivors of Cancer: ASCO-Society for Integrative Oncology Guideline Update. J Clin Oncol. 2024;42(20):2456-2487. doi:10.1200/JCO.24.00541.', 'Bower JE, et al. Management of Fatigue in Adult Survivors of Cancer: ASCO-SIO Guideline Update Clinical Insights. JCO Oncology Practice. 2024.', 'Kaplan & Sadock’s Comprehensive Textbook of Psychiatry. Cancer-Related Fatigue section. Source text accessed through the medical library.', 'Supplied presentation: Occupational Therapy Strategies for Cancer-Related Fatigue. Content adapted and redesigned for conference presentation.' ] textbox(s,.7,1.68,11.9,.3,'Key evidence informing this presentation',18,NAVY,True) for i,r in enumerate(refs): rect(s,.75,2.25+i*.83,.12,.12,[TEAL,GOLD,RGBColor(29,113,131),NAVY][i],True); textbox(s,1.0,2.15+i*.83,11.1,.55,r,14,INK) rect(s,.75,5.98,11.6,.6,SKY,True); textbox(s,1.0,6.16,11.1,.22,'Please apply local institutional policies and individualized clinical judgement when implementing this pathway.',12,NAVY,True,align=PP_ALIGN.CENTER) add_notes(s,'References are selected to support the main claims. Confirm your institutional guideline versions and add local service contact details before presenting.') # 12 thank you s=prs.slides.add_slide(blank); rect(s,0,0,13.333,7.5,NAVY); rect(s,0,0,13.333,.18,TEAL); rect(s,8.85,0,4.483,7.5,NAVY2) for x,y,d,c in [(10.2,1.0,2.55,TEAL),(9.2,4.45,2.25,RGBColor(29,88,104)),(11.65,3.3,1.55,GOLD)]: sh=s.shapes.add_shape(MSO_SHAPE.OVAL,Inches(x),Inches(y),Inches(d),Inches(d)); fill(sh,c) textbox(s,.75,1.45,6.8,.42,'THANK YOU',15,RGBColor(129,220,211),True) textbox(s,.72,2.15,7.0,.9,'Preserve what\nmatters.',37,WHITE,True) textbox(s,.75,4.32,6.8,.6,'Questions and discussion',24,MINT) line(s,.75,5.16,5.4,5.16,GOLD,2) textbox(s,.75,5.55,6.6,.48,'Presenter name | email@institution.ae\nInstitution / Department',14,WHITE) add_notes(s,'Invite questions. If applicable, direct audience members to local occupational therapy and rehabilitation referral pathways.') # core props prs.core_properties.title='Beyond Rest: Cancer-Related Fatigue During Chemotherapy' prs.core_properties.subject='Professional Emirates Oncology Society conference presentation' prs.core_properties.author='Orris' prs.save(OUT) print(OUT) PY python "/tmp/workspace/eos_crf_presentation/src/create_deck.py" python -c "from pptx import Presentation; p='/tmp/workspace/eos_crf_presentation/output/Beyond_Rest_Cancer_Related_Fatigue_EOS_Conference.pptx'; r=Presentation(p); print('slides',len(r.slides)); print([len(s.shapes) for s in r.slides])"
Beyond Rest Cancer Related Fatigue EOS Conference
Presentation · PPTX