From bb180c4886cc18cd33a7459301847145cb93c2c5 Mon Sep 17 00:00:00 2001 From: kounch Date: Tue, 4 May 2021 21:43:37 +0200 Subject: [PATCH] Manual 1.4.9 Actualizadas instrucciones de upgrzxd, etc. --- doc/English ZXDOS+ and gomaDOS+ Manual.adoc | 10 +++++----- doc/English ZXDOS+ and gomaDOS+ Manual.pdf | Bin 16856822 -> 16857258 bytes doc/Manual de ZXDOS+ y gomaDOS+.adoc | 10 +++++----- doc/Manual de ZXDOS+ y gomaDOS+.pdf | Bin 16934739 -> 16935191 bytes 4 files changed, 10 insertions(+), 10 deletions(-) diff --git a/doc/English ZXDOS+ and gomaDOS+ Manual.adoc b/doc/English ZXDOS+ and gomaDOS+ Manual.adoc index 197fd1f..c3f4daf 100644 --- a/doc/English ZXDOS+ and gomaDOS+ Manual.adoc +++ b/doc/English ZXDOS+ and gomaDOS+ Manual.adoc @@ -1,6 +1,6 @@ = ZXDOS+ and gomaDOS+ Manual :author: kounch -:revnumber: 1.4.8 +:revnumber: 1.4.9 :doctype: book :front-cover-image: image:img/portada.jpg[] :email: kounch@users.noreply.github.com @@ -1126,7 +1126,7 @@ The esxdos manager shows file and directory entries in the order stored in the i As explained in the installation part, there are a series of commands that are exclusive to ZXDOS+: - `back16m`: Dumps to a `FLASH.ZX1` file, in the root directory of the microSD card, the contents of a 16 Meg SPI Flash memory. It must be run while using a "root" mode ROM. After finishing, it is necessary to execute the command `.ls` so that the cache is written to the card -- `backzx2` or `backzxd`: Creates a `FLASH.ZX2` o `FLASH.ZXD` file, in the root directory of the microSD card, with the contents of a 32 Meg SPI Flash memory. It must be run while using a "root" mode ROM.After finishing its execution, you must execute the command `.ls` to finish recording the cache on the microSD card. If not, the length of the file will be wrongly set to 0 +- `backzx2` or `backzxd`: Creates a `FLASH_32.ZX2` o `FLASH_32.ZXD` file, in the root directory of the microSD card, with the contents of a 32 Meg SPI Flash memory. It must be run while using a "root" mode ROM.After finishing its execution, you must execute the command `.ls` to finish recording the cache on the microSD card. If not, the length of the file will be wrongly set to 0 - `corebios`: To upddate simultaneously ZX Spectrum core and BIOS - `dmaplayw`: Plays .WAV file, which has to be 8 bits, unsigned and sampled at 15625 Hz - `esprst`: Resets the WiFi ESP8266(ESP-12) module @@ -1139,7 +1139,7 @@ As explained in the installation part, there are a series of commands that are e - `romsback`: Dumps to a RomPack File named `ROMS.ZX1`, in the root directory of the microSD card, all ZX Spectrum core ROMS which are stored in SPI flash memory. It must be run while using a "root" mode ROM. Only works correctly on ZX-Uno and ZXDOS (do not use on ZXDOS+ or gomaDOS+). - `romsupgr`: Load from a RomPack filel named `ROMS.ZX1`, in the root directory of the microSD card, all ZX Spectrum core ROMS into SPI flash memory. It must be run while using a "root" mode ROM - `upgr16m`: Load the content of a `FLASH.ZX1` file, in the root directory of the microSD card, to a 16 Meg SPI Flash memory. It must be run while using a "root" mode ROM -- `upgrzx2` or `upgrzxd`: Write the content of a `FLASH.ZX2` o `FLASH.ZXD` file, in the root directory of the microSD card, to a 32 Meg SPI Flash memory. It must be run while using a "root" mode ROM. +- `upgrzx2` or `upgrzxd`: Write the content of a `FLASH_32.ZX2` or `FLASH_32.ZXD` file, in the root directory of the microSD card, to a 32 Meg SPI Flash memory. It must be run while using a "root" mode ROM. - `zxuc`: Utility to configure al options of BIOS, which also can be stored in the microSD in configuration files that can be loaded later - `zxunocfg`: Configuration utillity for certain features of ZX-Uno such as timings, contention, keyboard type, CPU speed, video type or vertical frequency @@ -1326,9 +1326,9 @@ If everything has been done correctly, when you turn on the ZXDOS+ you will see === Flash Memory -You also can update all the FPGA flash memory. At this moment, from the BIOS you can only use 16MiB image files. To use a 32MiB image, you must use <<#_esxdos,esxdos>> `UPGRZX2` or `UPGRZXD` command and a file named `FLASH.ZX2` or `FLASH.ZXD`. +You also can update all the FPGA flash memory. At this moment, from the BIOS you can only use 16MiB image files. To use a 32MiB image, you must use <<#_esxdos,esxdos>> `UPGRZX2` or `UPGRZXD` command and a file named `FLASH_32.ZX2` or `FLASH_32.ZXD`. -Copy the image file (16MiB) `FLASH.ZXD` to the root of the microSD card. +Copy the image file (16MiB) `FLASH.ZXD` or `FLASH.ZX2` to the root of the microSD card. Turn on the ZXDOS+ and press the `F2` key (`Caps Shift+1` on gomaDOS+) during boot to access the BIOS setup. Select the menu `Upgrade` and then choos the option __"Upgrade flash from SD"__. Press Enter, choose `Yes`, and press Enter again to start the Flash writing process. diff --git a/doc/English ZXDOS+ and gomaDOS+ Manual.pdf b/doc/English ZXDOS+ and gomaDOS+ Manual.pdf index ef8a07d35d0d34f9d093d5b98f377629d4f53144..b7b7b3f05eadeff13226fc96db0bdb69a869796a 100644 GIT binary patch delta 25864 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 Oglf|f{J$Yi-t_-GMMKyC delta 25972 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, * Tal y como se ha explicado en la parte de instalación, existe una serie de comandos que son exclusivos para ZXDOS+, y que se describen a continuación: - `back16m`: Copia a un fichero `FLASH.ZX1` en el directorio raíz de la tarjeta microSD el contenido de una memoria SPI Flash de 16 megas. Se debe ejecutar desde una ROM en modo "root". Tras terminar su ejecución hay que ejecutar el comando `.ls` para que se termine de grabar la cache en la tarjeta. -- `backzx2` o `backzxd`: Genera un fichero `FLASH.ZX2` o `FLASH.ZXD` en el directorio raíz de la tarjeta microSD el contenido de una memoria SPI Flash de 32 megas. Se debe ejecutar desde una ROM en modo "root". Cuando termine hay que ejecutar el comando `.ls` para que se termine de grabar la cache en la tarjeta microSD. Si no se hace, la longitud del archivo se quedará en 0 de forma errónea. +- `backzx2` o `backzxd`: Genera un fichero `FLASH_32.ZX2` o `FLASH_32.ZXD` en el directorio raíz de la tarjeta microSD el contenido de una memoria SPI Flash de 32 megas. Se debe ejecutar desde una ROM en modo "root". Cuando termine hay que ejecutar el comando `.ls` para que se termine de grabar la cache en la tarjeta microSD. Si no se hace, la longitud del archivo se quedará en 0 de forma errónea. - `corebios`: Para hacer una actualización conjunta del core de ZX Spectrum y de la BIOS. - `dmaplayw`: Reproduce un archivo de audio .WAV, que debe ser de 8 bits, sin signo y muestreado a 15625 Hz. - `esprst`: Resetea el módulo WiFi ESP8266(ESP-12). @@ -1143,7 +1143,7 @@ Tal y como se ha explicado en la parte de instalación, existe una serie de coma - `romsback`: Copia a un fichero RomPack, llamado `ROMS.ZX1`, en el directorio raíz de la tarjeta microSD todas las ROMS del core ZX Spectrum almacenadas en la memoria SPI Flash. Sólo funciona correctamente en ZX-Uno y ZXDOS (no utilizar en ZXDOS+ o gomaDOS+). Se debe ejecutar desde una ROM en modo "root". - `romsupgr`: Copia el contenido de un fichero RomPack, llamado `ROMS.ZX1`, en el directorio raíz de la tarjeta microSD con todas las ROMS para el core ZX Spectrum a la memoria SPI Flash. Se debe ejecutar desde una ROM en modo "root". - `upgr16m`: Copia el contenido de un fichero `FLASH.ZX1` en el directorio raíz de la tarjeta microSD a una memoria SPI Flash de 16 megas. Se debe ejecutar desde una ROM en modo "root". -- `upgrzx2` o `upgrzxd`: Copia el contenido de un fichero `FLASH.ZX2` o `FLASH.ZXD` a una memoria SPI Flash de 32 megas.Versión del comando upgrade exclusivo para memorias SPI Flash de 32 Megas. Se debe ejecutar desde una ROM en modo "root". +- `upgrzx2` o `upgrzxd`: Copia el contenido de un fichero `FLASH_32.ZX2` o `FLASH_32.ZXD` a una memoria SPI Flash de 32 megas.Versión del comando upgrade exclusivo para memorias SPI Flash de 32 Megas. Se debe ejecutar desde una ROM en modo "root". - `zxuc`: Configura todas las opciones de la BIOS, permitiendo grabar en la microSD las opciones seleccionadas en archivos de configuración que pueden posteriormente ser cargados. - `zxunocfg`: Configura determinados aspectos del funcionamiento del ZX-Uno como los timings, la contención, el tipo de teclado, la velocidad de la CPU, el tipo y frecuencia vertical del vídeo. @@ -1327,9 +1327,9 @@ Si todo se ha hecho correctamente, al encender el ZXDOS+ se verá cómo esxdos d === Memoria Flash -También es posible actualizar la memoria flash de la FPGA. Por el momento desde el menú de la BIOS sólo es posible utilizar imágenes de 16MiB. Para poder usar una imagen de 32MiB, se ha de usar el comando `UPGRZX2` o `UPGRZXD` de <<#_esxdos,esxdos>> y un fichero con el nombre `FLASH.ZX2` o `FLASH.ZXD`. +También es posible actualizar la memoria flash de la FPGA. Por el momento desde el menú de la BIOS sólo es posible utilizar imágenes de 16MiB. Para poder usar una imagen de 32MiB, se ha de usar el comando `UPGRZX2` o `UPGRZXD` de <<#_esxdos,esxdos>> y un fichero con el nombre `FLASH_32.ZX2` o `FLASH_32.ZXD`. -Copiar el archivo de imagen (de 16MiB) `FLASH.ZXD` en la raíz de la tarjeta microSD. +Copiar el archivo de imagen (de 16MiB) `FLASH.ZXD` o `FLASH.ZX2` en la raíz de la tarjeta microSD. Iniciar el ZXDOS+ con la tarjeta insertada y pulsar F2 (`Caps Shift+1` en gomaDOS+) para acceder a la configuración de BIOS. Seleccionar el menú `Upgrade` y elegir __"Upgrade flash from SD"__. En el diálogo que pregunta __"Load from SD"__ contestar __"Yes"__ a la pregunta __"Are you sure?"__. Se leerá el contenido del fichero `FLASH...`, . diff --git a/doc/Manual de ZXDOS+ y gomaDOS+.pdf b/doc/Manual de ZXDOS+ y gomaDOS+.pdf index 6c6d903c9964bca368d3f18cfa0bf8472975e94c..d27a891e2e71ffedfc65686a73f65cae30a2a622 100644 GIT binary patch delta 26698 zcmZvk3AkNVb;rLKl0d=~gbYmaMa6;0^Pc$}W)&2y;pSpM1`)7|ilWe}(Neig5>PBb zDZ5zVL91d16~~~0ineuX1=LFGP*E#ZMG1{qqlo>jbI1K(;rrGH{NEneUVBY@o%@Zi zUA0U2`c=DZ{_c{Zlcz~mr`feXe*EBn@=hneZ1yU!RcfOdiwLW`iq(9X~<&=P1V zv@5h5v^%uNmfdIeJoJ)q$%T8Z4d?%8+44=BF5MGa2JHns4%!>q2eQAdfL21QpnakJ zp#7l(paY@R(Bq+5XbtoP=!wvipo5?%Lr;O83Ox-v7+MQG9XbS>gPs9(pae>x49cMb zDxnIhp$0k>It)4-Is!TpItn@(dM5NN=-JRQ(6P{SpyxuzLB~VSgZ>D5KD2Jjrb|y) zv2CUdGv{tQDJ;8k^NO(g+K=wMW!W3LC-1r_olEl~yy}wfnsGW)li3X$mo9zQhNVeT&oxz5hc%aVFI+BvD~h=)t-{e)bPo*Y@6ufuzJ6Kv zI%$-a*<77eVfM1_0pa57wk=&;oRei)8g99~dz!S((z0#)VO!VMt?L$s?)LSs+=r!) z*OTSxT-_;hThIQ{cn@!1|DvdA-YEu6pLs?1%8Tv-?4&bM|C4&SuCWpClYx z)l}idx5I@GeX_ej8x-kWky?W-@OaN#yL*MzAM6%k^KO4w5+2&)H>WR;2h7rHE=@}t zFFum?h^1}Q8ML*bJIk`g;mp%cc&RKP?__hGq-a+dk9hA}x~FO5vK%(HA4$6=CLU z>t7vSw*7>&!!P$gYGt_Xo9pMcJZ1OZlMW2ae%)KRuz`8u_=9^VT>tI))0gLSS;vsU z4av*73dI(VdPWa!t>v`Wy=L3-ZNI%Ht?FzpZ)kPF+TOw8;>%BvQBt;CcB*PT%5Guy z>AhXU+du7wO7qTKR?w88R$qVO#}7ueu zXD&&T)J8h+`r9`y3O60nJ2dR^Nbk&LzIpOV;pR&>EDS$9d&BZ@@#<}h z!p(d9X7_M3=KSGRk{+C|}n<+naA+_bWHO87?FyJ%s-;fD)uxo&N^IP1MSY_9Bz-!z|x ztuOu6%FxYwFAsAy*u|@lS`u#j=%XvbZKphU->|so-8z$nXFmAYs&LIO)}IybD0_P> z?KE>)RVK3;L%yTCD)c|~=+5DcviF9t)1kcs!`8BQGo9K$UA%v9b@*b%@b5Xix9|0j z`~8xzzV2PPC{2;Rux9J}72$!pcliv5dDuOx!iQG(UJ-uY^j1w8>>c($w0G&KL3>f| z0GMuY@?pK}Y0&%1x_!glXPmnz?0R_bh6SB6thwO0mEq3AdmHV4?!AvYbpOY?OTr6} z=$&H7wP&BZDt!5f-l+?!CR}pwI?nt@S1$@jAK82Fa`b;z&7QY3>C|@UX=?T$T(E4z zVT;l%pDV)sNB-`t@UEkJ`-JHfQfeJv)-(**q)5S)YI70h>N@Y!5mSdI7WnIte-%dLeWQbSiWj zbUO4R=nUw^(3#L#(Am&Spg)FQ3cU=%1l~fxZZR3Hmbh73izbze4{8eGR%Bx(B)!`a1Lt=$p{LL*Ih# zgZ=~hPw3mwccAY=--G@O`aX0&^aJRJ(2t=1hJFk^0R05|ALysh&!C?}4?@3yehEDU zZG|3&{ukN?{R(;n`Ze@_&~Kpa&~KsNL61VehaQ9e@V1W}JM&p+<~v{L7wK%r{+WHv z>{9+!q-ovcg~ysiu_mcYhh;m!iaM8ed0v)Ti}fcHwvgcmBaGXV`axJu&kO!`&OOAV@cC@ovSo=tH$)}0*e~oMJB;V zL{-JdS=41m*w%^=Lm+$3pPY|FNh)C>81gMU&Kg$Z zu}aRJzIDtkbOB(~=SIe)$BJbRnZuxiUzEzRS4^> z>5LZBADZB-CTP*~L=UPerX8127G39=8Z+AEYB9lzT5d@nuu>BYW;u!Y?CPfDWC6Fq zu^LRdm1lXL$i&3P71<2*AODQ>H+Q7s{{%xHi3I0O)=`ZKmJ^`GeH$c6HbT34qAU6X z4=8WA$Radgi65}8GFf2J=_IM#9I&*M#en6?{-U4Y+GuAqunJcJrosi5sw)SU4OQ!y zt6+s&V1n}mXIlP`*iXZ1ESW>W1jFfz*@}afq#}f1S?1dnYPM-tO(~>)>wp3_es@)( z`n$j;s$&UOsPq?PJ=ExcRlZ%nQ>zs#vLaDG5DZ2L7r$3 zjsIizW7#T^)&k>HsUVTv)+<|}Y}Ek;b1Jwfn`+u%+582k-f^9AUNt759amX)0;XOQ z?MhX*V0EQ}UMGDVA{mf8{xDFOaHb|Vr7Wybgv#ogTPN2Tm4`ahIZ&9bLSp}8_M;Y@ zaMf5Wz3*UtCkTyOV3|a|o^iS^G2By&Vg43WcHy3O8rccQzRz_^S$agqI zi~4_Hl^zLLty;tI1GkiVd9CwN;wj1SIN1z*y!Ac zO0VkE5T{E9Ow&dbNYxP8i&PtyOTa;7jHt()X&6qUW5aL(XZM~qi!E3u^BWIXF!RKI z+Gyx)f7j5PHQ-mpEN(GzyA9Kj4vZ^3I*NhAV_0DuFv~cy4J{~gL0SQyJyxk~iR%#` zk74QswV0@P!>TDcYds?a)j?@739}7D=|{&1)(|oYmXo!S;~`KeQ{713uS;<}$PpG~ z3S~eZjKmkD9XB|>mWH7^v~P_k=`geenDKuorF5>DMjGN|i0jtm=yJCcFt?E^(J0FL zMw-&*Z$Y^-hM^gCF+}6anTlkoa)G-cAsyqTc!N4#(eF5ct4JOxyTHWX$FVGONoe3h zR*eKWV0b*SMs2aGy-nT!qtfj+hQSUZMBdMMii*k(2-;fy4RElA> z_<}8_0#{kiDq0M7zN)L(Cji5ph?SjTIhmPg$1Rw}&Si^9_|{_hy3<@3V6mgyVxr($ zY^2~up3wk|T`iJ>r2S&{8-`d%@-e`)FVDAV>3D%)c^tU(xk@-Fv3WHN+b5h!%Z6Y< z2W)U89ftaGnBx{Hu%bFbJ69z697ZUlJE?N+-TZ}5STJ)?zl}92`a$q*KtbafTR-ELR*2v{)HikO3Aub1f!m@)m1iPbBFx39F3Hy~W&s z#0POa#eis!IOzjc@xmcTM>vJt#9RP_V^MTLXUv|MAH(8|0P5dcP|5)oKJT$1wVi@L0CgGV!l@INB5S4cQj0c2R_cI_as2h;%;ds@S z5@*r)hOztFVpW`X$4HVo6k9^d3_OmZSO?ySoReXrm%yR7*|sB<9PPx~DYp#6bZ9%S z`-BS?L)m}?ezBG^4AZThn?_VH^`rz8lK}_gkYSu~a=e%quSRz+Q# z7L?0t7>NTNFy{@#V-Z`8gSg0gufUpE@Aj>s8CM;Uw;VSKX#-_H*+z-FY&;sucqFI9 z6G42b^61N@G*Isvn5sJK%vN-goZ172@%|KHSoC^)$w#gYIT1}CQ>9Hof%sXx%_CjY z5{xz^)>D~5J9G*WIKygL^s@mewvO2aruio(;flG5VRVwt-}emDB&yPj#%^@Hcf%wV z&&Xi$%a&mUN&ARzhG796MsbH>6HUT*qgk&vv~>a0|%ap5FULT8s=FieV2ZGmawt|Eo5 z10RC@kJ;bWLhE9vuyqUMv0TrSnkseItfax|4+4)!2bljy0Nas_tYN9$&uQPl0$o2K z?}mCyxJ&Mq@CvMc0OQr`C4{w!@tAeup|nm5E8&tP&FEWX^A8_pmG!y$hWrgj+>MLN z;xN+Sij}RhikX4C=@>-3++LRGSh*~|A>U=VNu-d$P6j*bxLcBC)4u4#>G1}~O4-dc z*d8?wkX~or8T}Cw1F2Oewe5@~OL`a?eeSckMWcc8J=YYiEZX`G$nxy1S;1JGXs#xsrAS zbdH0>Y4dj-X#(%LhVpfmotVp6XUc=3kkG`0@*ubN5-YA3lY22pT1*Q(*>R0U`5aS< zCu|ZzQ9Wu(QZ!DXo%dx3A-ocKymEs4t-O$#xsa=m+~6NalTCQ?NBnVZ@Iz= zGW8jCJ^%8fEy4W1M8b5_m&iHu3?YO~SVmZpUQP+>ZJ5%58)MUA&mS4M-MVc1-x{d^VB{ z?s^jPxd4OgxKrAM^)5!>lZH+uNd~HH<%=bDOqK1lU*5Xq$d$d^MCGF(Ds`CmPI2_iM{oH* z4zqB~oSDVpaY_X@!FdyAj~y4VY^npOZlCfThDiqWt+VB(k=#yj<{kSfHF2Cl;@o1; z)T$k;gW0m42^AkMt-`~?{9VVHH`(~f@Gsmkkk)jI=PAl99yRVb}Fq#on9=ASiNN zrGka5gd5NYhkV&DB}6s}1qs^MvYHO_Syy7=AqS@%7R>iVkqi@wgl#U0A$#l;7_qA} za9l{2RU?ZY%ZxcJW0vXFeL zUNydgbukx@xc)dvGrJ?^A>8CV4b2I6<`ymLqN|_S<_n3ve;;@h`asEFKo-P$jRwYuSt+0|bh=q$CHyzKJW-3S?IV?Oo#)`q%#b?*< zDl&)LNrPjr$7COHIgHPg1nX1p=2*jPo!bew*!hq=(oWg_fuo8$>x>vS%=sJ*1^EbT z?645CxcnTyQ{q%G-&VO>(tZjhyTjvfTGW1OVj|SpaMifsD#3P4DugK3vYJ1=w_xVU zeV1J%UFH-7$*oarHg?On;p(?rDY?|C*?pW6l%YW)?K8A+n1WH32TnR8Kv?IV%BUQi zzn8V|y%Uf9^VNyA3+Koqbk2HE%I5U2)upI(5;r=hfr8*DMPgTllDDC*pR&IVZ!&H` zlJhFY6oWhGl3U?i9fD$KdHA#-{uIXSFSo*_8>x8_OJVKgJL|SDnQN6g|M-iCrPbGr zN08Xp3)v8sxgGQN>m-q=!f^|yU3Ig4-03kYln0BRBn-&SI-QFWaT!`JPBhx2++zCt4vt7DPJQ zW9})GcJjqC&ZAW;$uWUZdN-V7WPbtOyBh~GDgzwfbujlN23F`*1amqU%!Oc-Zj)`8 z=)+bWg6UT=?1a~3k#sP8C*>Ajr}%c1FljqVJ!-MP1P(4N2GjC<7Gpmv;s$gk4+X$? z8QKp0HeU45{?d?&P1jIASYcv*QOdWIpFFU0=b_iNqcBiq!G4%XqY3+cTDc}RpvzW* zO`Ede(eb+Dj+4iW@s0k@6}iJLmKbhLA+bz(!lG|XH#OIvWKxt`8eobIOjKo&#$O?WdD#R-UA98DJw{bz)cn(VW5{a_Jf= zQ#|NAEikQtC(X@6z49VKv?Ei7VWlD8^XkNuGrG={_2_M;cF5gaet$<@LCe)>>X7K3 zOuU{98*!&fp@hCs(AfpCmM+i=J1nD1e1MJfonymlCUi>R2e;Hd<#(Ln*BT}lW7v*| z6%|EXCw&O9)P;nDl$-JKnY$QR3TG;)`jXD{wUI(IvEa-;DtZndEN zte0V^2h~fIq-ds%c9h)cV(il^hw+j zfqh=N<6qT){nRXJlm+HqSHY+HOPz@_TRi_~a?|A&ym+Q>Sr^B4r zMs^VGukFwalN&KKtZ+-6YdX7HQu~o5r+g4CO>*G-Qv;|Iqx#*V&#@v{*U(!#UYPyF zR9vg_;j?AWEq-2f&Doa4=jBT0B7Anog}qf}m9izbA;M$5kts`eYpTg;*}Pn~iO}MI zxk-3N6DMTN*`eCZvkQMfWx;akDo7{?XKn47)J^Qu%~&#wtx9mlR~0J3)Xn%w z2;6-;`KehpM><@Cd9ZPMa^mb*U9Api)tM^kl&?9n!0U!PV~R+e=S4swi^kbujm|n! zaqk=(9tE7&Y(J-<`oq5ZQ0d3zaOQ)TyiBwBOiOA(gvNgJQgr}75$YC0+QdmeRn2ZA z{4&Hi*)w)__%#N1?)GEJx)Ty`&iyAvvIERVqPQy>{PFX`WE+%)c$Io}PynvZ5X`;k vkd-EX8FP?qv-8@(?AWJ&UW!6XJ~pNx?GNWHn0ek(g5;$K9dvB>IZOW^H`GPy delta 26679 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