From 65ecef52b5e3b49d96cd944cbdaffaabf0657260 Mon Sep 17 00:00:00 2001 From: Soriba SYLLA Date: Mon, 31 Aug 2026 09:48:21 +0000 Subject: [PATCH] Ajout du contexte processor --- SIRH/__pycache__/urls.cpython-310.pyc | Bin 1539 -> 1504 bytes SIRH/__pycache__/views.cpython-310.pyc | Bin 1265 -> 721 bytes SIRH/__pycache__/wsgi.cpython-310.pyc | Bin 539 -> 520 bytes SIRH/settings.py | 9 +++--- SIRH/sso.py | 20 ++++++++----- .../SIRH/parts/menu_application.html | 2 +- SIRH/urls.py | 28 +++++------------- SIRH/views.py | 16 ++++++++++ contexte_universel.py | 7 +++++ .../fonctions_utilitaire.cpython-310.pyc | Bin 2270 -> 2251 bytes fonction_utilitaire/fonctions_utilitaire.py | 5 +--- .../__pycache__/__init__.cpython-310.pyc | Bin 151 -> 132 bytes .../__pycache__/admin.cpython-310.pyc | Bin 192 -> 173 bytes .../__pycache__/apps.cpython-310.pyc | Bin 443 -> 424 bytes .../__pycache__/forms.cpython-310.pyc | Bin 877 -> 858 bytes .../__pycache__/models.cpython-310.pyc | Bin 1303 -> 1284 bytes .../__pycache__/urls.cpython-310.pyc | Bin 570 -> 551 bytes .../__pycache__/views.cpython-310.pyc | Bin 6069 -> 6050 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 153 -> 134 bytes .../__pycache__/admin.cpython-310.pyc | Bin 644 -> 625 bytes .../__pycache__/forms.cpython-310.pyc | Bin 2758 -> 2739 bytes .../__pycache__/models.cpython-310.pyc | Bin 5623 -> 5604 bytes .../__pycache__/urls.cpython-310.pyc | Bin 1527 -> 1508 bytes .../__pycache__/views.cpython-310.pyc | Bin 14469 -> 14541 bytes .../tags_personnaliser.cpython-310.pyc | Bin 1136 -> 1117 bytes gestion_employe/views.py | 5 +++- .../__pycache__/__init__.cpython-310.pyc | Bin 152 -> 133 bytes .../__pycache__/admin.cpython-310.pyc | Bin 457 -> 438 bytes .../__pycache__/forms.cpython-310.pyc | Bin 4570 -> 4551 bytes .../__pycache__/models.cpython-310.pyc | Bin 7673 -> 7654 bytes .../__pycache__/urls.cpython-310.pyc | Bin 2365 -> 2346 bytes .../__pycache__/views.cpython-310.pyc | Bin 16669 -> 16650 bytes .../__pycache__/__init__.cpython-310.pyc | Bin 151 -> 132 bytes .../__pycache__/admin.cpython-310.pyc | Bin 192 -> 173 bytes .../__pycache__/apps.cpython-310.pyc | Bin 386 -> 367 bytes .../__pycache__/forms.cpython-310.pyc | Bin 1572 -> 1553 bytes .../__pycache__/models.cpython-310.pyc | Bin 1518 -> 1499 bytes .../__pycache__/urls.cpython-310.pyc | Bin 945 -> 926 bytes .../__pycache__/views.cpython-310.pyc | Bin 7604 -> 7585 bytes 39 files changed, 55 insertions(+), 37 deletions(-) create mode 100644 contexte_universel.py diff --git a/SIRH/__pycache__/urls.cpython-310.pyc b/SIRH/__pycache__/urls.cpython-310.pyc index dc00624b36a1e1f28158b577fe6e59da11b2df90..d2c4290a4da086d990472d679850bea6038a5587 100644 GIT binary patch delta 478 zcmYk1y-ve05P+T3X@2bfP@o`SVT_O{6Jmr`m8d`k8bG2;Rbf*Sr3rEZMO_%OFu;Ja zA_UzSc?ft2PYB+C5eW$=AjDaBzVGgQzKifHTJUo@0|;rBuAEU8fcFIc3l^{{Gj%NOWRcX9OWZV+8+FjzW@; zq)5KGHRolgowP=UO3FU ze$VzQTuE<{gkHB#hnUbq-}C6X?TaM(M;yd5yuw5EFl|t2n&o%|moE@;x?ay;6wi*B zBDQ78+DsLOXM(_ITH+a&wbilet^In7=M#T>ue#Z&bvEh;ypVFMvA?!kPXp-Zi%wv( zW3Kh0%j`@r#)m^mynt%(@AprGKou&V}>3`5tox0~*&rK(ofNem_u z++dhL5EH?~U+^oWlU*<}G%*l_y)`2^Roq*3&bb^;)mb!)w`7up1lOEAu1-Bdeps-+ ztoi^;f17XJ*`}P;eiMuWO1Q^2>adAM5hcL54^b8KfQKg?M9~t(|4@P`;a!X7U-|== zUzyRFgJV5#s&2J8a|$0eAgEHT3;gPd(<7sc{MtV0U;q01qa!?RCZ^2$wDmO@Q;I_W zq!eaF+Mb@(AIgL5wQV2LMC6dt^nx+M4gY*EJ!&<(D zZ1Jn};W8Q}T;@j&2s2hvnrHn>i}&umcRgNBL?MT0_iA{gYCT+qQw#&4^M6(0e-ahg z=36aXMj6|{ZMv3V#kjgO(7M*K4R#(qe6l@$vG=qMSJ%DW-REtD;@!iEF`$J0OwN^)Tq*^*eb=I3w{E_~DVM})N@Ke_4s)nWvHrT=;uE{?IcMG5 G{`Yh6lbV$P diff --git a/SIRH/__pycache__/views.cpython-310.pyc b/SIRH/__pycache__/views.cpython-310.pyc index 6835a9e7d8dd39c7ded08a3601f36d8b6a737f6e..0b6bdbc7dbfffc0cef3f123c3273df98f67f992e 100644 GIT binary patch literal 721 zcmZWnJ&)5s5MA5(aB@B=h?2$~m*VV-1|ft55=R5lrE`OfcjD}6?G3Z*IQKy=dWYR7NC-pqSzb9y=z)P6kqe)T&L;wMiYwvZ-oXxMiYq>zCY zO;7{@<4}i9R74&}de97up~nL~YR1Kw@KBEKL=nrejOja(lZBX1e-V?I2mMH!+H{Uk zj35<4#W+FO09yF0%iRs{S#VCZwXLYUV`CiAcuT`36r6B@3~s4Yig5Shk{MMEDU+od zQVY0&4%5ZrQ@S<;^z*WFD`=fss;YF#wApTERkPM`Zml_|>Qp-qk<;LS!anH72wyv} zZZ9yVl|Rq&O^Nw-yUne_RlfLed691vY;Cr_=_i$GTev1-K5N;@Bt*9RkrdwZQf364 z_$F@2;e#NS)1A@s`};k@F4bi!@ApUQRDw-Ar?j%ABYig8ovoZ(zs&PT@+!cksxyOi z{$Cs?J}4Y9;zAE$La0BHa7@G|Tecw%;}A~>e4J1Fr}C<7Ym?D2hw4klIgv^G*}omT zGU%$#S)Ya|4;MPr*1LLKA&Mmq>8iKLXLwMLugn(}ziN!^G`!}2z`uPWl7M;`N6FwX DrK+z% literal 1265 zcmY*ZPmkO*6px)rCX-I9t=Pf|$#7Xkh|G;cRaKR?QsKZ-v53Q5Mj?LP@nXk=?QH2N zl`1V)PMo;45(oCqH`s6CBb@jKh!fAw?6PYq&%fuqyg$G99DVn0nc#Z<&$H9}S(5w} zl$(p9@&q6I6a`N>k%=NpqUe&UbeWQHM&(3h%S`3VJnE^Os$y9np789aWI5wGpWzH>z$CoB00UWtT}_0T~QG%EJ&0Rn7RA|B{&v+on2lS z@gi_Kx?%F5Xdqm=Ot3z#L?^5>k*a#T zj{_2_Um=|cAI7aJeXhW*H8%yu_vr~ZGYu#MV=zvbAQQ&j&xBotFlS)WaG0a0CVpxF z8M6*Q2-KK)u$_bgFA}ql%D?qutraY+HXs*PnDwW-0x+4VFOI+X`t!w^fS0!3yz(Pg ztDuMImZ2!KIhm7!&Phq`(Q(hCR-#r?^FA8g8vk$=Lf&!w_YgR|0OtgUj&Kr&uA=<` z9$!xxzr46PXvpA=F4VE+ikfh%#?pzoA8;sf6b}&jJr37iVhJDPsSRHhv>@gK1V_~! z{~kYWx)WWatux}gI$Zil^T=(mM^~ebU2Ego-r2Dkfp>rJ_V=-6k%JiFMp7}om|5{i UY2HhC9GJ1;|F)m(jii3~9{`6^R{#J2 diff --git a/SIRH/__pycache__/wsgi.cpython-310.pyc b/SIRH/__pycache__/wsgi.cpython-310.pyc index 5c859c6ef2198641580a41d9a1b3d511dc97847b..84b35a4ead7ce66a2d4bcb2c8d1372d5fdaa650f 100644 GIT binary patch delta 34 ocmbQu(!s)=&&$ij00eV+x;JtkW#p97FH0=aFE1~j{Dx5<0E!C - + SIRH diff --git a/SIRH/urls.py b/SIRH/urls.py index 7123c35..c0dea85 100644 --- a/SIRH/urls.py +++ b/SIRH/urls.py @@ -18,7 +18,7 @@ from django.contrib import admin from django.urls import include, path # from django.conf.urls.static import static from django.conf import settings - +from . import views from .sso import SIRHClient client_sirh = SIRHClient( @@ -28,35 +28,23 @@ client_sirh = SIRHClient( ) urlpatterns = [ - # path('login/', - # views.login_view, - # name='login' - # ), - # path( - # 'deconnexion/', - # views.deconnexion_view, - # name='deconnexion' - # ), - path( - '', -<<<<<<< HEAD - views.login_view, - name='index' - ), - path('login/', - views.login_view, + views.connexion, name='login' ), path( 'deconnexion/', - views.deconnexion_view, + views.deconnexion, name='deconnexion' ), path( +<<<<<<< HEAD 'gestion-employe/', ======= >>>>>>> 4934b42 (Implementation de sso) +======= + '', +>>>>>>> 55e5a28 (Ajout du contexte processor) include("gestion_employe.urls") ), path( @@ -77,4 +65,4 @@ urlpatterns = [ ), path("client/", include(client_sirh.get_urls())), ] -# + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) \ No newline at end of file +# + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) diff --git a/SIRH/views.py b/SIRH/views.py index e69de29..43033bf 100644 --- a/SIRH/views.py +++ b/SIRH/views.py @@ -0,0 +1,16 @@ +from django.contrib.auth import logout +from django.shortcuts import redirect +from django.urls import reverse_lazy + +from django.conf import settings + + +def connexion(request): + """Redirige vers le serveur SSO pour l'authentification.""" + return redirect(reverse_lazy("simple-sso-login")) + +def deconnexion(request): + """Gérez la déconnexion des utilisateurs.""" + logout(request) + #return redirect(settings.SSO_LOGOUT_URL) + return redirect("http://authentification.cerfig.org/login") diff --git a/contexte_universel.py b/contexte_universel.py new file mode 100644 index 0000000..9cd578e --- /dev/null +++ b/contexte_universel.py @@ -0,0 +1,7 @@ +from decouple import config + +def contexte_universel(request): + return { + "SIRH_LIEN": config("SIRH_LIEN"), + "SGL_LIEN": config("SGL_LIEN") + } diff --git a/fonction_utilitaire/__pycache__/fonctions_utilitaire.cpython-310.pyc b/fonction_utilitaire/__pycache__/fonctions_utilitaire.cpython-310.pyc index 5d73229bec1941e9d7f8b4c26466a39fbb938993..10a8fe33adad7135542adf4ba111c6711023ac83 100644 GIT binary patch delta 77 zcmca7cv_G*pO=@50SJx>c4tl8$g9W9X{le9SfpQGUOqXT*_Kgy^Hk<6Mn-{6tZs~q gnw#C(+87zlHlJf>X5?j3U}R%tV&q`rkmTV701D|50{{R3 delta 97 zcmX>tcu$ZwpO=@50SM0icF*eH$g9UJ>>>>>> 4934b42 (Implementation de sso) def solde_conge(employe): """Fonction de calcul du solde de congé restant l'employé""" diff --git a/gestion_conge/__pycache__/__init__.cpython-310.pyc b/gestion_conge/__pycache__/__init__.cpython-310.pyc index 2e4e608cf6efd2f90ef7f703bf91c6e604597178..0f5db88e731d01c582a7825fa97cc3bb602182e9 100644 GIT binary patch delta 32 mcmbQv*uu!2&&$ij00eV+x+ikmaH{Kxr=NA>FCYNO9=S>VS F0RUvo5Ci}K diff --git a/gestion_conge/__pycache__/admin.cpython-310.pyc b/gestion_conge/__pycache__/admin.cpython-310.pyc index 8403b94ffd2d0b8d26d3773d14b02d1f57365958..4a98ea97eda62848a1d4ae871c527e9b1cf20a15 100644 GIT binary patch delta 32 mcmX@WxR#MSpO=@50SM;ubWh~Y;8f8sODxhaFE5|iZwLT=GzicD delta 51 zcmZ3>cz}^RpO=@50SE$qxKHHHkTKWK$j?pHFU~JY&CxH;EXvSL&MzuTO)kmI&zo3d F2mpF?5U2nE diff --git a/gestion_conge/__pycache__/apps.cpython-310.pyc b/gestion_conge/__pycache__/apps.cpython-310.pyc index f5e111fe9091415038212291d3f3c1643d8be912..b934e948a4e52ad40b821461248ccf1b90391fd1 100644 GIT binary patch delta 34 ocmdnZyn>lKpO=@50SM;ubZ_LAX5>`XFH0=aFE1~j?8I0J0ER3Gn*aa+ delta 53 zcmZ3%yqlRjpO=@50SE$qxNqc^W|T40&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+H&w H&sYfnht?2t diff --git a/gestion_conge/__pycache__/forms.cpython-310.pyc b/gestion_conge/__pycache__/forms.cpython-310.pyc index a383b8547d244f5c41a41386074fb4710d5237fa..584a4e5414eb3fc52e23cfc664f5c84a681f3358 100644 GIT binary patch delta 34 ocmaFMc8iTWpO=@50SM;ubZ_L2W#UxPFH0=aFE1~j+`{w{0GUJy`~Uy| delta 53 zcmcb`_Lhx1pO=@50SE$qxNqc+Ws))1&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+H%# H$n+8br`QqH diff --git a/gestion_conge/__pycache__/models.cpython-310.pyc b/gestion_conge/__pycache__/models.cpython-310.pyc index 4106b107da85c00ec9f6b075c30a8a55846fc795..8f3f2040926e38ebaf01445d2046e1fe8b988616 100644 GIT binary patch delta 35 pcmbQv)xyP{&&$ij00eV+x;Jt^W#UxTFH0=aFE20O%)`vh1OStd2(ADC delta 54 zcmZqSn$E?Y&&$ij00aR)+&6MRWsV0KQccbpQYW diff --git a/gestion_employe/__pycache__/__init__.cpython-310.pyc b/gestion_employe/__pycache__/__init__.cpython-310.pyc index 662a1501799f2866a8005bea244104414a67f875..d4b74982abe6268ee91db93b474955305ced4ea7 100644 GIT binary patch delta 32 mcmbQq*v816&&$ij00eV+x+ikmaBAw8B^K$ImzPgWHUj{0LkKhg delta 51 zcmZo;oXNxr=NA>FCYNO9=S>VS F0{~^z5DWkS diff --git a/gestion_employe/__pycache__/admin.cpython-310.pyc b/gestion_employe/__pycache__/admin.cpython-310.pyc index 363ddf70863937b8a8c82c4fa3ec4a237c67c475..a9c93d4c341672a70bfd41c8e36dea07b6b539d3 100644 GIT binary patch delta 35 pcmZo+{m8KEr1rRL}tXBK7XCg&Fwr6!kT=I3p8 IXVhW@0HH(>jQ{`u diff --git a/gestion_employe/__pycache__/forms.cpython-310.pyc b/gestion_employe/__pycache__/forms.cpython-310.pyc index 97052b4d1228b60aee89a2173afebd19609ffdf4..222847acbde9e47590590dd472736a7e204796bf 100644 GIT binary patch delta 35 pcmX>mx>=MvpO=@50SM;ubZ_L2VB%EMFH0=aFE20OT+igr0RWrX2}%F} delta 54 zcmdlidQ6l%pO=@50SE$qxNqc+V3M)a&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+K4L I!{p8Z0IqxyA^-pY diff --git a/gestion_employe/__pycache__/models.cpython-310.pyc b/gestion_employe/__pycache__/models.cpython-310.pyc index 0cae16081a7b7776f121767b93826ac8da41749a..8294db76352fff908d0c51be594ffa3d892885f2 100644 GIT binary patch delta 35 pcmeya{Y0BPpO=@50SM;ubZ_L|%gCv&UzS*;UtV6m`3a-22mrQm3V8qk delta 54 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 ToI^tr>K5v%UREjIShezh`Gk1X diff --git a/gestion_employe/templatetags/__pycache__/tags_personnaliser.cpython-310.pyc b/gestion_employe/templatetags/__pycache__/tags_personnaliser.cpython-310.pyc index 4b794287ccceaa905a75eedc1968a48a6e1be39b..53e7edd10b4ffdacd4275b65f4534f9d29ff9638 100644 GIT binary patch delta 35 pcmeysahHQTpO=@50SM;ubZ_L=VB&PpFH0=aFE20O?9Zgg1OTAX2@(JR delta 54 zcmcc1@qvRopO=@50SE$qxNqdvV3G;e&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+K3w I!=%Ur0Jb0y>Hq)$ diff --git a/gestion_employe/views.py b/gestion_employe/views.py index f1141c2..c9ded02 100644 --- a/gestion_employe/views.py +++ b/gestion_employe/views.py @@ -21,6 +21,9 @@ from .models import Affectation, Contrat, Employe, Formation @login_required def index(request): """Vue d'index""" + if not request.user.groups.filter(name="ressource_humaine").exists(): + return redirect('gestion_employe:mon-profil') + employes = Employe.objects.all().order_by('-user__date_joined') nombre_employes = Employe.objects.count() nombre_cps = Contrat.objects.filter(type_contrat='contrat_prestation').count() @@ -95,7 +98,7 @@ def affecter_employe_projet(request): elif total_affectation + temps_nouveau > 100: messages.warning( request, - f"Les pourcentages d'affectation de l'employé {employe.first_name} {employe.last_name} dépasse 100% sur les différents projets ({total_affectation + temps_nouveau}%)." + f"Les pourcentages d'affectation de l'employé {employe.user.first_name} {employe.user.last_name} dépasse 100% sur les différents projets ({total_affectation + temps_nouveau}%)." ) return redirect('gestion_employe:index') diff --git a/gestion_projet/__pycache__/__init__.cpython-310.pyc b/gestion_projet/__pycache__/__init__.cpython-310.pyc index 6f58d4174a2dc54ac28a6b815ca47e77dfe4244b..fc450d8850ab55baa26e2f4cacdeb1f560f159e4 100644 GIT binary patch delta 32 mcmbQi*viPA&&$ij00eV+x+ikmaBAq6B^K$ImzPgWHU$81_y{ln delta 51 zcmZo=oWaPQ&&$ij00aR)+$VC|$XM%Vxr=NA>FCYNO9=S>VS F1psAG5C{MO diff --git a/gestion_projet/__pycache__/admin.cpython-310.pyc b/gestion_projet/__pycache__/admin.cpython-310.pyc index 07787b7688e793fa498066bb871eec0a8ec684fa..961f9838022c437a048591ffde25319d74a85a32 100644 GIT binary patch delta 34 ocmX@fyp5SVpO=@50SM;ubZ_KlVdPZRFH0=aFE1~jtj#zN0EkiuumAu6 delta 53 zcmdnSe3F?vpO=@50SE$qxNqcUVU)4Z&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+H%F H!8i{9ih&S_ diff --git a/gestion_projet/__pycache__/forms.cpython-310.pyc b/gestion_projet/__pycache__/forms.cpython-310.pyc index a6a63c4b28d570acb1688e62df3f560a749f0c59..45f6f821d0fb34adbe8817ccc8e220a575f1d7d4 100644 GIT binary patch delta 35 pcmcbmd|a73pO=@50SM;ubZ_LYVBu8NFH0=aFE20OJfFpy7XYVf3CaKf delta 54 zcmX@Ed`p=-pO=@50SE$qxNqdHV3D!V&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+K50 I!(z<~0KtqAq5uE@ diff --git a/gestion_projet/__pycache__/models.cpython-310.pyc b/gestion_projet/__pycache__/models.cpython-310.pyc index 3b9356685506cda48ea9d28e69b4d99c0a289662..c61251e698a4a45b227ebeb013130f0434280267 100644 GIT binary patch delta 35 pcmexq{mhy>pO=@50SM;ubZ_K#X5v)SFH0=aFE20OoW;~H4FIwm3M~Kt delta 54 zcmaE6{nMH|pO=@50SE$qxNqckW|Fbg&&bbB)i2I3O3l$P&MeB%P0lYWN=+`w%+K2# I&eSgr0MKO;1poj5 diff --git a/gestion_projet/__pycache__/urls.cpython-310.pyc b/gestion_projet/__pycache__/urls.cpython-310.pyc index 0b16c0e8e57e23fc41666f3a56b6255e0d964fab..288ccfa0ed3c943ba72ba52977fd97813c94872f 100644 GIT binary patch delta 35 pcmdlhv`UCOpO=@50SM;ubZ_MT$wUzS*;UtV6mS%E{A5dfjj2}}S0 delta 54 zcmZ1_v{#5bpO=@50SE$qxNqeC$u48ApOK%Ns$ZO6l$xVooLQ8io19-%l$uDFDgn+F3HT# K+x(M7&;|hGXA;K% diff --git a/gestion_salle/__pycache__/__init__.cpython-310.pyc b/gestion_salle/__pycache__/__init__.cpython-310.pyc index d70727cc102093109d9a31961e25c8981b0cf049..97ed76c45d169ee3fb9210806ef6cd8dce8bce76 100644 GIT binary patch delta 32 mcmbQv*uu!2&&$ij00eV+x+ikmaH{Kxr=NA>FCYNO9=S>VS F0RUvo5Ci}K diff --git a/gestion_salle/__pycache__/admin.cpython-310.pyc b/gestion_salle/__pycache__/admin.cpython-310.pyc index b0a85f381e9655a5c95fd3ef73a0ecab80d0566a..5199f490db1258f6046e19c799bd9514e82f7344 100644 GIT binary patch delta 32 mcmX@WxR#MSpO=@50SM;ubWh~Y;8f8sODxhaFE5|iZwLT=GzicD delta 51 zcmZ3>cz}^RpO=@50SE$qxKHHHkTKWK$j?pHFU~JY&CxH;EXvSL&MzuTO)kmI&zo3d F2mpF?5U2nE diff --git a/gestion_salle/__pycache__/apps.cpython-310.pyc b/gestion_salle/__pycache__/apps.cpython-310.pyc index e1f3990d324ac6ddd65e10f8b7d340302efc3b05..6ffca1b320e3885f24e419691e7a58baf0d9a944 100644 GIT binary patch delta 33 ncmZo-e$T|6&&$ij00eV+x+ii!;Z)WyODxhaFE5|W%~%cqj4TNk delta 51 zcmaFQ)Wpo4&&$ij00aR)+$VBBkulTH$j?pHFU~JY&CxH;EXvSL&MzuTO)kmI&ztz8 F8~}}J5$pf} diff --git a/gestion_salle/__pycache__/forms.cpython-310.pyc b/gestion_salle/__pycache__/forms.cpython-310.pyc index 8d57e79cfe452474bd2998878c487941459a475a..9ebd88429971f53e5ef609c399e12a486a9a1aac 100644 GIT binary patch delta 35 pcmZ3&Gm(copO=@50SM;ubZ_K-!_29oUzS*;UtV6mS(rtT2>_TY2;l$# delta 53 zcmbQpvxJ8`pO=@50SE$qxNqcs!z^R2pOK%Ns$ZO6l$xVooLQ8io19-%l$upOK%Ns$ZO6l$xVooLQ8io19-%l$uA0L%dr&Hw-a