From dc377b84d392ad10f193fe535d4ea0b338d74408 Mon Sep 17 00:00:00 2001 From: Jocelyn Fiat Date: Thu, 27 Sep 2018 21:57:16 +0200 Subject: [PATCH] Duplicated images to see expected images embedded in github markdown pages, and also in github web pages (jekyll on eiffelweb.org). --- .../basics/WSF_SERVICE_LAUNCHER_NINO.png | Bin 9523 -> 0 bytes docs/workbook/basics/basics.md | 9 +++------ .../images}/APPLICATION_EXECUTION.png | Bin .../{ => basics/images}/Launcher Hierarchy.png | Bin .../images}/WSF_SERVICE_LAUNCHER_CGI.png | Bin .../images}/WSF_SERVICE_LAUNCHER_FCGI.png | Bin .../images}/WSF_SERVICE_LAUNCHER_STANDALONE.png | Bin .../basics/images/APPLICATION_EXECUTION.png | Bin 0 -> 5971 bytes .../basics/images/Launcher Hierarchy.png | Bin 0 -> 16595 bytes .../basics/images/WSF_SERVICE_LAUNCHER_CGI.png | Bin 0 -> 9471 bytes .../basics/images/WSF_SERVICE_LAUNCHER_FCGI.png | Bin 0 -> 9552 bytes .../images/WSF_SERVICE_LAUNCHER_STANDALONE.png | Bin 0 -> 11031 bytes 12 files changed, 3 insertions(+), 6 deletions(-) delete mode 100644 docs/workbook/basics/WSF_SERVICE_LAUNCHER_NINO.png rename docs/workbook/basics/{ => basics/images}/APPLICATION_EXECUTION.png (100%) rename docs/workbook/basics/{ => basics/images}/Launcher Hierarchy.png (100%) rename docs/workbook/basics/{ => basics/images}/WSF_SERVICE_LAUNCHER_CGI.png (100%) rename docs/workbook/basics/{ => basics/images}/WSF_SERVICE_LAUNCHER_FCGI.png (100%) rename docs/workbook/basics/{ => basics/images}/WSF_SERVICE_LAUNCHER_STANDALONE.png (100%) create mode 100644 docs/workbook/basics/images/APPLICATION_EXECUTION.png create mode 100644 docs/workbook/basics/images/Launcher Hierarchy.png create mode 100644 docs/workbook/basics/images/WSF_SERVICE_LAUNCHER_CGI.png create mode 100644 docs/workbook/basics/images/WSF_SERVICE_LAUNCHER_FCGI.png create mode 100644 docs/workbook/basics/images/WSF_SERVICE_LAUNCHER_STANDALONE.png diff --git a/docs/workbook/basics/WSF_SERVICE_LAUNCHER_NINO.png b/docs/workbook/basics/WSF_SERVICE_LAUNCHER_NINO.png deleted file mode 100644 index ecca100efcd47b3cf630e6f526aa225dfce1052e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9523 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 -![Launcher Hierarchy](Launcher Hierarchy.png "Launcher Hierarchy") +![Launcher Hierarchy](images/Launcher Hierarchy.png "Launcher Hierarchy") **WS_LAUNCHABLE_SERVICE** inherit from **WS_SERVICE** class, which is a marker interface in EWF. And also provides a way to launch our application using different kind of connectors. The class **WSF_DEFAULT_SERVICE_I**, inherit from **WS_LAUNCHABLE_SERVICE** and has a formal generic that should conform to **WSF_SERVICE_LAUNCHER [WSF_EXECUTION]**. Below a [BON diagram](http://www.bon-method.com/index_normal.htm) showing one of the possible options. -![Standalone Launcher](../WSF_SERVICE_LAUNCHER_STANDALONE.png "Standalone Hierarchy")
-![Standalone Launcher](WSF_SERVICE_LAUNCHER_STANDALONE.png "Standalone Hierarchy") +![Standalone Launcher](images/WSF_SERVICE_LAUNCHER_STANDALONE.png "Standalone Hierarchy") Other connectors: @@ -114,8 +112,7 @@ The **APPLICATION_EXECUTION** class inherits from **WSF_EXECUTION** interface, In the **APPLICATION_EXECUTION** class class you will need to implement the **execute** feature, get data from the request *req* and write the response in *res*. -![Execution Hierarchy](../APPLICATION_EXECUTION.png "Application Execution ")
-![Execution Hierarchy](APPLICATION_EXECUTION.png "Application Execution ") +![Execution Hierarchy](images/APPLICATION_EXECUTION.png "Application Execution ") The WSF_EXECUTION instance, in this case ```APPLICATION_EXECUTION``` is created per request, with two main attributes request: ```WSF_REQUEST``` and response: ```WSF_RESPONSE```. diff --git a/docs/workbook/basics/APPLICATION_EXECUTION.png b/docs/workbook/basics/basics/images/APPLICATION_EXECUTION.png similarity index 100% rename from docs/workbook/basics/APPLICATION_EXECUTION.png rename to docs/workbook/basics/basics/images/APPLICATION_EXECUTION.png diff --git a/docs/workbook/basics/Launcher Hierarchy.png b/docs/workbook/basics/basics/images/Launcher Hierarchy.png similarity index 100% rename from docs/workbook/basics/Launcher Hierarchy.png rename to docs/workbook/basics/basics/images/Launcher Hierarchy.png diff --git a/docs/workbook/basics/WSF_SERVICE_LAUNCHER_CGI.png b/docs/workbook/basics/basics/images/WSF_SERVICE_LAUNCHER_CGI.png similarity index 100% rename from docs/workbook/basics/WSF_SERVICE_LAUNCHER_CGI.png rename to docs/workbook/basics/basics/images/WSF_SERVICE_LAUNCHER_CGI.png diff --git a/docs/workbook/basics/WSF_SERVICE_LAUNCHER_FCGI.png b/docs/workbook/basics/basics/images/WSF_SERVICE_LAUNCHER_FCGI.png similarity index 100% rename from docs/workbook/basics/WSF_SERVICE_LAUNCHER_FCGI.png rename to docs/workbook/basics/basics/images/WSF_SERVICE_LAUNCHER_FCGI.png diff --git a/docs/workbook/basics/WSF_SERVICE_LAUNCHER_STANDALONE.png b/docs/workbook/basics/basics/images/WSF_SERVICE_LAUNCHER_STANDALONE.png similarity index 100% rename from docs/workbook/basics/WSF_SERVICE_LAUNCHER_STANDALONE.png rename to docs/workbook/basics/basics/images/WSF_SERVICE_LAUNCHER_STANDALONE.png diff --git a/docs/workbook/basics/images/APPLICATION_EXECUTION.png b/docs/workbook/basics/images/APPLICATION_EXECUTION.png new file mode 100644 index 0000000000000000000000000000000000000000..270c78aa571825451c5620c5d424292dd348f7ac GIT binary patch literal 5971 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 literal 0 HcmV?d00001 diff --git a/docs/workbook/basics/images/Launcher Hierarchy.png b/docs/workbook/basics/images/Launcher Hierarchy.png new file mode 100644 index 0000000000000000000000000000000000000000..d7c047237a1a71b690c29fd31dea6d7f93f77991 GIT binary patch literal 16595 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 ONa2;LY=!ijkpBh`q`oQu literal 0 HcmV?d00001 diff --git a/docs/workbook/basics/images/WSF_SERVICE_LAUNCHER_CGI.png b/docs/workbook/basics/images/WSF_SERVICE_LAUNCHER_CGI.png new file mode 100644 index 0000000000000000000000000000000000000000..ba484064766681fff3b3cfb3fda0a16a9d58fa76 GIT binary patch literal 9471 zcmd7Ybx>Tvx*+hu2~L0@!6$*if|CSDa2R|b!7UJUumlTkK?VyMB)Gc=$l#U)cNv`E z?mjqga^Ke8ty^#FRqei4yMLTIRb5kE-Cuv_oc?~(VGuP1Vgfn>002O&2$t0Z05F8n z7X>~pxvylOT*qmph09snMiyVO{pSs>D)j~U=SE5PaYpmpcF;MO7(yB!y_hR zD}VQ)t+9gUL1`KH(@prK9y8rj*luw`&}L#a2HW?rF83S|KscxCM%|ncZ_8O6J7xW0eXktP1%;RW|C^`>vG|*ikRSoai@)O-{bYG221In4QT^=Ud{G1x?v4DqjA}N@ ze!j&j9NsVS0UYWFf9V-34~7Wo*YBQ) zI+S6;6zo|VDTlYO|#H zrR4Gm=H^U~=q)Zvy%UV~IhFQCe5$G86MER$Ip6C4Yr@CdotQqtyLjK(DE6nOez$4K>+fw7^LKh} zh(A<&G@tq$qJ6}hD&`BkNYhQ{WP9D*J+4{Y*f>|mwDtBN_s!ei#mjyBLq4az_L-S9 zJGt$PRL^*A#QLMY9+5BfT&xB1Vb{Z0$3BCl`B8||8g|HpZ-<)cb?f2XrBv!ww#@7X z^Rv`3zalZdyIWd%u9x}RbSb{~^@1G&TO0|!a}E$KSEQkSwsyF3+|sczpMY337RGqrEI6Sov1D81G4pAH zRx+VQ)31BQ=o0|LJAA0Y`GUEnZp)-{r0iWL1>kju)gP}q)M64#8EC)mVVaPr&#PvL zynj^LsPmqk{nAw4(Xq2$Pq|>YSYwFgJFIEHn9e>p#pXfe@@}^_4!>5uvl(uI2vf51 z2)o4@=6itrihNX}`AOGZh**&+@7=&HOY(RZ+y#Z_9wMboZaR<(*c=cAnPyYwVqFp{DN91=ZX z$t176il0+zZ4zK;{Nb&UD4tqit?3nYUxTalODK2p4d{?f<^wWQzLM zCff|e&UY#v-Sp9mw%A`phi-gQQ~k=+aMtK&{tHG)onc)?Q9iPly4HdF=mpWu9TMHP zF=JAHxs8P>e*eJaEQ)3Hc?fuc*eN%t6g&iE=6R}*jFx$P5 z))1SM$UR)qr?D!_#wx)hbPthTpm}I9Yb5U_2`Rkse1O0733nLB$ggnGhmp4|IW|or zwS)Lc`eu!X-UI=vm+OX2WC1+zNg4~_l6lh2=v$wGtHer)Fxk7+ZgFY+8&HEf(WJl@ zFHgTqw*4idySK^|V0GY_j#-^ZRj8LAkE#LH`Xk?)k_imQBuU;om#xgKs=bw^Rbo4r zM#wp5p^pmN<<8$^Wc2l@B1L2%b>+_#E%Wey+|SWAHI^}Pt=sGI9K?rSDB87bzBwrv zetY%X)X=DJ=@%-`ZLu`pj)~~! za>VCgJZy_K0(7p)KmO!qfip=oIrJj2A#xB@Zm6_UGTWhg-V4Qheh^=KkrzF1LW|@3 zh>oTGK)ZfI2}G*~`O*XI^wgVW5GXh{ea8gE->4uM;#xW}0teSXgT;6>QNn z0@9^v%uPpmrV$=kqmC(b4ofe4Kv87%M}lK1@ibT4vS&P+^ErG!o=N|{^{vh zn_IN)PV;t+=YsXandDoJmEtxpB>YdCdOYM>l#Z(cE@PT}qkgPeb!1#ZvD6021MWog zT1D!gg;c#&&Vfu-5ND*snfm@-O)k2oDvzHYx{>E6UU|jcm%(BZyi+iwzEyAWJHk2& zt`CHj17khH!vIJE5mDlH6PDP^!n@LWX^>ddNC<3?EHD(~-Qxo%vsqlm0)J~4g6W4}`GV?>(Zsg`nd~Htx$qOJ*VhgO3N;zg1!Ua`&P6rahcFlF5fHJjx=_!B*^ZR{< z;meme0QcB2PPIF#`F8*#_Gnd70o#Qv{h~cqX`t#I z7$*3Si6ojFveT>BCt`7bEs*nM7Sqs*LNzg^jj$2{KZQBHhd8KDIkH3-fh6 z5JEo2ScX6nB(NJu`G{Q5el(Fx{0o`?ZsX+kLOpf&vNLvk&WlKUyVqJ430}3t=%Gmc zJ}MH9=A0w5jC~{NM&}&sC(lYKJ0wO{?A9C+XHl>hy{3br0XY@Q%golTSGpX ziKK(Uf=KZ8>P}dRC*88=^Asi2OR^h!|7TEK0DVXMB?k}d zQwQ`Oi)w_!ZX9lyWM&f0`C^AHa-!m!Pe3YL1!R&OAo<-^GB#}j$$eT77CXn28@($e z-zPfmI&15(X}U`)C}MxIGu01mHIR!OAGOAb>x0Qm`hg8UYuYle-RH^Oe}OfmX8Cba zD`R9`Sm>S&;Wgp{ZbA%=;}c-4m_LWKrq@iCh)YwT#gd3G$4Jt=W8v4J52~E#%zqxm zo&VLaIhYI`X95H!di;-1tW`Qh!{4Oj7j^AK4I0l%6$wAIz}5gv54c(l5Zw;@_u#A| zTHkX3Xe7P0;(IiMNlx1q6YxzRAEZM`AIP@qLA-PiPjRX&Z*88!UbEcBB5^g{XFOq{UZD~Kr_t7{Or~;z*JUx7X0K9hWD4u*F5|! zC0{3d<428tu)`96d8keV7i6)ilMc}Ss=x4;3hMmm1#LC!873cD`|D{QMH*C$YSG*_F;hqDrP-ItI>q^7zuz#Hz*0@vh<^pYyA>MnmgiIN%O8oNswyH*R2W_(KBqp?1lu*OZ{eilX@+QpM_ zSW&G~^Su;}vTLRaB2zpx%Oeqyc)+5$l!OebKPxd;l7UVgeTe$jA?<=dJtad^!8YgzzpvZ%QfaoroNZ4)ttUUMO1o59Q)Q?AmbGJ4%E470hGaNJ8se_I_}a z>D|Iq)}K+@y=$?eDf%@x>?*7Ljo^81f}R59EV!SCIa((1V*in}e@$w1+9@}3lO zM{*Q`FSC}H6@}H2m<1)Z;kVUcIh%@czUR;Im^0Gq zAG*y6?z_R4?jlDTrzEJ} z==pqI6mmTK*5Te%1G5k_EB(~zxyA0yD;#iy*~?YS(jSfrJg1jbw<8}$aV72Xine)? zWEO0I9_szMGF|pbp6OGPr^o;@QY-tEbY*aRzlN=O$DeNJL4AoDGa7@*YT)kQHJVG+ zDpa+IP|HUjT|G`jewC(QYFT0qO}r_=TbWI_aEy6)ACoTOuL}hnjmx*_ARp_iT4I`@ ziu72XIf%UmGv|){DDKDRp)K0tm$wJ3$tO$ps1Utm6|UY-)uy0h4nSgCI$?ocNOPKw z^Zp4Jpa27fG1lb4uI6z`lA=XhS&R4_tkvD8V4lCtGf8gnq)eXN{Lnz)o@8T~iu$ag z>bs}U{R4qzig`ab_m~BxW|dS)aTN5a!b|Cu1|*;U#E7Fm`UZW2HLGRr`L|^L&`t_5 zAIwD3OZLDmCBw$?^0a~D*mw}9c1Abtl&tPunWFk2hMotY#`E?bO}#kXJ@j|_SJ)~b zTumgk{7fON9xrdg93)ns*>r=Kw~mz>t|qx89ICIQo8Q(Hpn1ZN=v5=_(4l?)EvTUB z1}ASKyN*TtRaMW>9!dvdSca9y#_tfJt_|WwTLSFIaZc$B#XsbN=VV@;74QBaR=sHu z6Hc!bB}7aRC4_~(GxSCYJw)Ge!Xt$Um7?4+pDNIy$%BprM?U#Mp1k%L*iE@S+dDqHcm0%J5 z@M299h_n8Kfqz_@;NOfjZdV00u1gkeeULGuq%OjF9;DDy^aFw1hSRLcB}=`kveoH9 zL?NM6G;3NCeitjP%6E4Q_m}F?POPMe-f{+6_A(@h|Nbyk;_mVNSwaE8|NhSOtEMd= z&JccoD2nAE6$W?fym(c^_40i)T*`@uq39(QEzX2^q^g<^`dQO3IQc*~fGA$nSA(j_ z%7=M`w)EKGq-4)8%Q}@ksrzQ_J3~eLR37G&Dx`PjI(!g#VxKDyM~K+@)`+;}ypSLm z)X~i8UJX*0Fi6p+Naan=a5I;OlP?orHCPpdZ6oHyqmactk*u*;BrWl=Q1VnAC))-z zH%YJN#4INB)aEOqc}UjxhOAlG5E@6zvKN}*WLtl}8hk3O$|(M4WewOM{t@9ojTWkf3G zQS#QMagrlV)|@Srkn2I@r`$3$UCJVbwxe$%p7 z5-Ur1fT^zEt;P3e$~i5@?K*>iS|-tch4+0(zkQV>(SLO(jncH85$xBy%LyB%pbbn{ z!&ts&hP_K&Yd#S}&Ahff%}@bt#_z}SWp!-At+G~6U2uo|D5LHnIKHkMvNC`>)(B!Cc{D4zdK=@r{2`Nxxd5 z){ox&2p?=xD0}yxpwovYtQF;jWuFCNSy^(G>&E|SPHZlCWQC`f*W$+7vt8t_aXn58 ztYW0Tzxv>gguk{)Ljz*i3h6k~^((Cpr#NlxJ*v9|Z@eGZeb3GxV;?*K*q?*Qe$SsGpX^Dx-PA#`W(jNg#QaON}AswRhWj`NL&g(%uzQ?3d%X}f~= zBftgkH+3MepnGGTC!=jU_Wc=7m@!uDg%G6h?CG}br?&GQK z_RHTnqYQ|~(*ituDLWBHJiJ_1ABg@#raCH&R*>_N^xu$JDrw=Dz3LAH77wz$R5q>bcdV z1r4afJD;@6%589$;FGJ)uiyyh@%f53@;SXo+K#joQ@j55zV@l3;B2=#Kk!nQaKxQd z+x(gJ6a9OOtmB=h%s~sZlGH9f-vgEYVE+qL@zy;R>CzNTZ!cj_Ip31pfWNwNk|2(g zC4{!lT$g!oxuN6OQ2W7E0H;~=Ji&39ad1%`A*7(R*^%*#LCCxQ{OH3mu1JI2)iwqH zTno%msXc#h<1{XcJNDsk1pL+9wXMwz4*$K@j(@F6+u)fsJ(MX{@lNz_K8Kp5@5=0@ z2!GS?iP7W0+>`i(d*HCs74Bi6-RHFi?Dt-NYxm^}*&j4Pa2oo%uHoD7-~;7WUxuH| zA`T_dQ?3U5Ek6PWcivwV9~3OF?+cbk?QJE3-w7tln%fbf+U4KlIa*PEa=S+ItJJ#U zMQ?T{Pv1q`)~aYTAZId{hx*?fv>x+>TsbV3>|hwtivHlYHJ}kSsRu4hoE3iiPdv-N z@qc(0*Pq*J9c{5XkBXbFxjB73iIhLDMP>yF^tG&mzD{&pxFEkw*$GQ<2uZ`Jk)xEZ z;<=xtOQbtIJn;H9sA{%f-pV#6m^ekMjzHhq`wA!lgWRKHEemrBGAPj~MwnVxkd2&6 zHCIAgmPU_i4NzF#Mys3mUDXD_(-Xakwj%5EsNS0yT9y7RAK%(>oV#=b7(HRzpt|Jj z>BC)DKE4tj{gy%Hw_ZX_C)|j8wG($Yv)Vw@tH~23ZQ3g0?VuUraSN9C$mrVo3n6fw zv;fLCZ3?xx6kIL&aC>^m@#=X|q!C_y!zmdCnUMn92_*$aA(fpA9jsNF?L^~NuQ?dv zMwdfOKFfkliq$4Ezt&zuEUtzzvPt>XC*arm9HBYJ;-QAU?2Q4pItehC>yr&cx zF4rD;N%ZGeF(~3((Du`?wM+AA-7iDkWf1RjuU3rH=b&43{*tH2KP?mCRkvIRgAQ6*V+WR*W7= zx?mUQgz)V=$#Bi?F9#AZyZT{xG<6*N#MiN(QoSR<}!=A@=(MQ^?L-}`1@QQS+4 zW9OQ!p`N8&JO&C$*;Y|jqRVLEyl z*sDR`DI$_lT-Db+i_7O1w2?~wq)ak4iU@UW{w!ZLWyQ!_PcekfgxNL)~w%Bjqng0ee;A!%r=pSIna!OTrCPVzDO{B zTZ&FM7Ffa8c8tSEVobWKb%0rjg(d8l+KK@W-JKdLh*1WkdtCem+~(cr-#(d z59E*fkYG#TWkw`p02KH?`YJ_$6@lpg6GJvBYqr7VDwP!qRH?2M@;f?xEs|=nI)yv< z0Ol#-%pNsc=%cH#cE$ZiqYCI;u}Ir)*h7e)@|}m$rqo=z+F2qN%2+$0Ha{?XE!wko zB%YK@7YW0T??rHZQPWzr`(?2a!78bRxLmG5-!}}nTUW?(aQlR=*T`G|n0P=dA1!4* zl4~So)IJ(BMo|*~JU%dMLFKeItLY)vr%Jke;+zLQ#&~2Vh~hZmuL6xEOdpSrzF%Qi z<|>wHU%fRWM*{dVQ6LlnndRp+7(E^7ROinO)lCC9~}Bes;CcZ{tE)e|DcxrYO^dDo|#F zMuZ+CUsI2T67|{58e8hCFo%i|by#{@+6?i=l}ZX^JX6gvzq1^-sEB|m-gK-mtd?!x zb>#0KH$^oKIv;!F@H>Nf-dorj=Y2M_#eSSfUHwpi39hJyQM5FQ7^{*rKLZLRHA21z zT&A1m5;)6DlJn?s&V4nuWYDk!^4I!{lb9|y8sKBhIK6fot!6&M{Q1GoK zO^s=B4Y&r$1R{ED+@Rxbx?SV+iIRj@0v6eDHdP_Hy5*MZ(!tEAbKENmyLI-)!X5|W zt!WmJ@M_t7Rb7n}KYs`3;m7yTeA^P2#4uurpnB!BjM0Y=vqyJX7hET2l#bq` z^9E$1B-MGy;(Q(6niIib^M|mGA5@}jBrgZio<`o)+S80f89ty&$05|V7VlX0OI}3L zp7oI^<*n!poz=GkAjlwd_~uoN*;4z>F=^hws}Vz&MB`@Nbp}R3#a-6nCoQ7NGzSC_nFPwKP?P`26DW|iHT*J+69yO zoFQK1&B5;YlqoWtID%37INcLL=bnY zK}n%%+h!D*$DyWWV2A=#o~9oDt-zcO7bx78Vwq2+nvl#$@CChdA=OBtO;=Kds5$^} z6ktr>1;c;tOad;Xp_pR-fU@MUKTEpCeJYDw|Io3cFWMAIj0^ujFYtLj|6iG1LNr750v_oYv9SWh;Wk3U9fYZRZqDaSt6}Hk1+5ItR^`P*Z=Uo z`KMcaBDqo-rUO`wG=|%7U$_FnS5(#?g=xBaJchIXi|_ zDe7$pZ(y!JjNuDT~KNt6jEDNdMftH)-gG~TMIW^gG>34zu1{_@i AG5`Po literal 0 HcmV?d00001 diff --git a/docs/workbook/basics/images/WSF_SERVICE_LAUNCHER_FCGI.png b/docs/workbook/basics/images/WSF_SERVICE_LAUNCHER_FCGI.png new file mode 100644 index 0000000000000000000000000000000000000000..b42d4b96eab5a19e8793c14ae5f032072c8bcc57 GIT binary patch literal 9552 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 E9||hX#sB~S literal 0 HcmV?d00001 diff --git a/docs/workbook/basics/images/WSF_SERVICE_LAUNCHER_STANDALONE.png b/docs/workbook/basics/images/WSF_SERVICE_LAUNCHER_STANDALONE.png new file mode 100644 index 0000000000000000000000000000000000000000..c3eea2fba11b660249e58c222fb078392a0fe750 GIT binary patch literal 11031 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 z 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