This is a multi-part message in MIME format.
------=_NextPart_000_012A_01C92F05.1A0EA880
Content-Type: multipart/alternative;
boundary="----=_NextPart_001_012B_01C92F05.1A0EA880"
------=_NextPart_001_012B_01C92F05.1A0EA880
Content-Type: text/plain;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Saludos:
Adem=E1s de esas tres bases de datos empleo otra con una extensi=F3n =
diferente de "DBF" con extensi=F3n "SPI" que solo contiene un campo =
logico que es el miro para ver si existe una nueva versi=F3n de las =
bases de datos. De todas formas como veo que es de tu interes te adjunto =
las bases de datos que pides con datos para que veas como las uso.
Jos=E9 Ram=F3n Castro.=20
"Paco V." <
ssi@ono.com> escribi=F3 en el mensaje de noticias =
news:48f63141$[email=
1@ozsrv2.ozlan.local...]
1@ozsrv2.ozlan.local...[/email]
Solo te falta agregar las bases de datos DBNOMBRE, CAMPOS e INDICES, =
para dejarnos todo hecho.
Saludos:
Paco V=20
"Jos=E9 Ram=F3n Castro" <
jrcpoli@terra.es> escribi=F3 en el mensaje =
news:[email=
48f62ce6@ozsrv2.ozlan.local...]
48f62ce6@ozsrv2.ozlan.local...[/email]
Saludos:
Te adjunto al correo un prg que contiene codigo que puede ser de =
tu interes, pero esta escrito para trabajar con tres bases de datos que =
contiene:
DBNOMBRE :=3D Contiene los nombres de las bases de datos a =
utilizar en la aplicaci=F3n.
CAMPOS :=3D Contiene todos los campos y sus dimensiones y tipo =
de todas las bases de datos contenida en DBNOMBRE
INDICES :=3D Contiene todos los indices de las bases de datos =
contenidas en DBNOMBRE
Con estas tres bases de datos consigo, que al entrar en la =
aplicaci=F3n pueda revisar que todas las bases de datos existen y sus =
indices y reconstruir aquello que necesito, tambien lo empleo en las =
copias de las bases de datos en actualizaciones de las mismas, para ello =
creo un directorio al que copio las bases de datos en uso y luego creo =
las nuevas, en el directorio que corresponda y por ultimo copio los =
datos de la base de datos vieja que esta en el directorio creado a la =
base de datos nueva que est=E1 en el directorio de uso de la =
aplicaci=F3n.
Espero que este codigo te pueda servir para tus propositos, =
cualquier aclaraci=F3n quedo a tu disposici=F3n.
Jos=E9 Ram=F3n Castro.
"PILO" <
srmpilo@hotmail.com> escribi=F3 en el mensaje de noticias =
news:48f21772$[email=
1@ozsrv2.ozlan.local...]
1@ozsrv2.ozlan.local...[/email]
PRIVATE contadormio :=3D 0, CONTADOR :=3D 0, CONTAANIMAL :=3D =
0, CONTCAMBIO :=3D .F.
PRIVATE CCODIGO, creararchivo :=3D .f.
PRIVATE ARCHIVOA , ARCHIVO2 , ARCHIVO3 , ARCHIVO3A , ARCHIVO5, =
NOMBRES
localizo donde estoy trabajando
if curdrive() =3D "" // si esta en puesto de red
RCAMINO :=3D "" + CURDIR() + ""
SET PATH TO &RCAMINO.
else
RUNIDAD :=3D curDrive()+ ":"
RCAMINO :=3D RUNIDAD + "" + CURDIR() + ""
SET DEFA TO &RCAMINO.
SET PATH TO &RCAMINO.
end if
NOMBRES :=3D "NOMBRE DE LA BASEDEDATOS QUE QUIERO CREAR O =
ACTUALIZAR"
Compruebo si exite el archivo, sino exite lo copio
IF !FILE(ARCHIVO)
ORIGEN :=3D RCAMINO + "BASEDATO"+NOMBRES+".cdx"
DESTINO :=3D RCAMINO + NOMBRES+".cdx"
COPY FILE &ORIGEN. TO &DESTINO.
ORIGEN :=3D RCAMINO + "BASEDATO"+NOMBRES+".DBF"
DESTINO :=3D RCAMINO + NOMBRES+".DBF"
COPY FILE &ORIGEN. TO &DESTINO.
MsgSave( "Ha copiado la base de datos nueva "+ NOMBRES + " " =
+Time())
else
Hasta lo anterior bien, pero quiero hacer lo de abajo, per =
utilizando dataset en vez de
utilizar el use, y sobre todo que las bases de datos estaran con =
password en un futuro
alguien me puede ayudar un poco. gracias
archivo2 :=3D RCAMINO + "EXPLTMP" //creo una base de datos =
temporal para copiar la que tengo ahora
ARCHIVO3 :=3D RCAMINO + "EXPLTMP.DBF"
ARCHIVO5:=3D ARCHIVO3
IF FILE(ARCHIVO3)
ERASE (ARCHIVO5)
END IF
COPY FILE &ARCHIVO. TO &ARCHIVO3. //copio la base de datos =
en el archivo temporal
ERASE (ARCHIVO)
IF FILE(ARCHIVOA)
COPY FILE &ARCHIVOA. TO &ARCHIVO3A. =20
ERASE (ARCHIVOA)
END IF
ORIGEN :=3D RCAMINO + "BASEDATO"+NOMBRES+".cdx" //base =
maestra para la actualizacion
DESTINO :=3D RCAMINO + NOMBRES+".cdx"
COPY FILE &ORIGEN. TO &DESTINO.
ORIGEN :=3D RCAMINO + "BASEDATO"+NOMBRES+".DBF"
DESTINO :=3D RCAMINO + NOMBRES+".DBF"
COPY FILE &ORIGEN. TO &DESTINO. // copio la original para =
el trabajo
select 10
USE &NOMBRES. EXCLUSIVE
APPEND FROM &ARCHIVO2. // actualizo los datos de la =
temporal a la nueva,
en esta parte es lo que quiero hacer y me gustaria saber una ayuda =
de como hacerlo
con los dataset.=20
reindex
CLOSE 10
IF FILE(ARCHIVO3)
ERASE (ARCHIVO5)
END IF
END IF
Gracias de antemano al que me ayude.
------=_NextPart_001_012B_01C92F05.1A0EA880
Content-Type: text/html;
charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META http-equiv=3DContent-Type content=3D"text/html; =
charset=3Diso-8859-1">
<META content=3D"MSHTML 6.00.6001.18099" name=3DGENERATOR>
<STYLE></STYLE>
</HEAD>
<BODY bgColor=3D#ffffff>
<DIV><FONT face=3DArial size=3D2>Saludos:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂ Adem=E1s de esas =
tres bases de=20
datos empleo otra con una extensi=F3n diferente de "DBF" con extensi=F3n =
"SPI" que=20
solo contiene un campo logico que es el miro para ver si existeÂuna =
nueva=20
versi=F3n de las bases de datos. DeÂtodas formas como veo =
queÂes de tu=20
interes teÂadjunto las bases de datos que pides con datos para que =
veas=20
como las uso.</FONT></DIV>
<DIV>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Jos=E9 Ram=F3n =
Castro.</FONT>Â</DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV>"Paco V." <<A href=3D"mailto:
ssi@ono.com">
ssi@ono.com</A>> =
escribi=F3=20
en el mensaje de noticias <A=20
=
href=3D"news:48f63141$
1@ozsrv2.ozlan.local">news:48f63141$[email=
1@ozsrv2.ozlan.]
1@ozsrv2.ozlan.[/email]=
local</A>...</DIV>
<DIV><FONT face=3DArial size=3D2>Solo te falta agregar las bases de=20
datosÂDBNOMBRE, CAMPOSÂe INDICES,Âpara dejarnos=20
todoÂhecho.</FONT></DIV>
<DIV>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Saludos:</FONT></DIV>
<DIV>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Paco V</FONT>Â</DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV>"Jos=E9 Ram=F3n Castro" <<A=20
href=3D"mailto:
jrcpoli@terra.es">
jrcpoli@terra.es</A>> escribi=F3 =
en el=20
mensaje <A=20
=
href=3D"news:
48f62ce6@ozsrv2.ozlan.local">news:
48f62ce6@ozsrv2.ozlan.loca=
l</A>...</DIV>
<DIV><FONT face=3DArial size=3D2>Saludos:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂ Te adjunto al =
correo un prg=20
que contiene codigo que puede ser deÂtu interes, pero esta =
escrito para=20
trabajar con tres bases de datos que contiene:</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂ DBNOMBRE :=3D =
Contiene los=20
nombres de las bases de datos a utilizar en la =
aplicaci=F3n.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂ CAMPOSÂ:=3D =
Contiene=20
todos los campos y sus dimensiones y tipo de todas las bases de =
datos=20
contenida en DBNOMBRE</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂ INDICES :=3D =
Contiene todos=20
los indices de las bases de datos contenidas en =
DBNOMBRE</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂ Con estas tres =
bases de=20
datos consigo, que al entrar en la aplicaci=F3n pueda revisar que =
todas las=20
bases de datos existen y sus indices y reconstruir aquello que =
necesito,=20
tambien lo empleo en las copias de las bases de datos en =
actualizaciones de=20
las mismas, para ello creo un directorio al que copio las bases de =
datos en=20
uso y luego creo las nuevas, en el directorio que corresponda y por =
ultimo=20
copio los datos de la base de datos vieja que esta en el directorio =
creado a=20
la base de datos nueva que est=E1 en el directorio de uso de la=20
aplicaci=F3n.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂÂ Espero que este =
codigo te=20
pueda servir para tus propositos, cualquier aclaraci=F3n quedo =
aÂtu=20
disposici=F3n.</FONT></DIV>
<DIV><FONT face=3DArial size=3D2></FONT>Â</DIV>
<DIV><FONT face=3DArial size=3D2>Jos=E9 Ram=F3n Castro.</FONT></DIV>
<BLOCKQUOTE dir=3Dltr=20
style=3D"PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; =
BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
<DIV>"PILO" <<A=20
href=3D"mailto:
srmpilo@hotmail.com">
srmpilo@hotmail.com</A>> =
escribi=F3 en=20
el mensaje de noticias <A=20
=
href=3D"news:48f21772$
1@ozsrv2.ozlan.local">news:48f21772$[email=
1@ozsrv2.ozlan.]
1@ozsrv2.ozlan.[/email]=
local</A>...</DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂ PRIVATE contadormio =
:=3D 0,=20
CONTADOR :=3D 0, CONTAANIMAL :=3D 0, CONTCAMBIO :=3D =
..F.<BR>ÂÂ PRIVATE=20
CCODIGO, creararchivo :=3D .f.<BR>ÂÂ PRIVATE ARCHIVOA , =
ARCHIVO2 ,=20
ARCHIVO3 , ARCHIVO3A , ARCHIVO5, NOMBRES<BR><FONT =
color=3D#ff0000>localizo=20
donde estoy trabajando</FONT></FONT></DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂ if curdrive() =3D =
"" // si esta=20
en puesto de red<BR>ÂÂÂÂÂ RCAMINO :=3D =
"" +=20
CURDIR() + ""<BR>ÂÂÂÂÂ SET PATH TO=20
&RCAMINO.<BR>ÂÂ =
else<BR>ÂÂÂÂÂ=20
RUNIDAD :=3D curDrive()+ ":"<BR>ÂÂÂÂÂ =
RCAMINO :=3D=20
RUNIDAD + "" + CURDIR() + ""<BR>ÂÂÂÂÂ =
SET DEFA=20
TO &RCAMINO.<BR>ÂÂÂÂÂ SET PATH TO=20
&RCAMINO.<BR>ÂÂ end if</FONT></DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂ NOMBRES :=3D "NOMBRE =
DE LA=20
BASEDEDATOS QUE QUIERO CREAR O ACTUALIZAR"<BR><FONT=20
color=3D#ff0000>Compruebo si exite el archivo, sino exite lo=20
copio</FONT></FONT></DIV>
<DIV><FONT face=3DArial size=3D2>ÂÂ IF=20
!FILE(ARCHIVO)<BR>ÂÂÂÂÂ ORIGENÂ =
:=3DÂ=20
RCAMINO + =
"BASEDATO"+NOMBRES+".cdx"<BR>ÂÂÂÂÂ=20
DESTINO :=3DÂ RCAMINO +=20
NOMBRES+".cdx"<BR>ÂÂÂÂÂ COPY FILE =
&ORIGEN. TO=20
&DESTINO.<BR>ÂÂÂÂÂ ORIGENÂ =
:=3DÂ=20
RCAMINO + =
"BASEDATO"+NOMBRES+".DBF"<BR>ÂÂÂÂÂ=20
DESTINO :=3DÂ RCAMINO +=20
NOMBRES+".DBF"<BR>ÂÂÂÂÂ COPY FILE =
&ORIGEN. TO=20
&DESTINO.<BR>ÂÂÂÂÂ MsgSave( "Ha =
copiado la=20
base de datos nueva "+ NOMBRES + " " +Time())<BR>ÂÂ=20
else</FONT></DIV>
<DIV><FONT face=3DArial size=3D2><FONT color=3D#ff0000>Hasta lo =
anterior=20
bien,Âpero quiero hacer lo de abajo,Âper utilizando =
dataset=20
enÂvez de</FONT></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><FONT color=3D#ff0000>utilizar el =
use, y sobre=20
todo que las bases de datos estaran con passwordÂen un=20
futuro</FONT></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><FONT color=3D#ff0000>alguien me =
puede ayudar=20
un poco. gracias</FONT><BR>ÂÂÂÂÂ archivo2 =
:=3D=20
RCAMINO + "EXPLTMP" //<FONT color=3D#ff0000>creo una base =
deÂdatos=20
temporal para copiar la que tengo=20
ahora</FONT><BR>ÂÂÂÂÂ ARCHIVO3 :=3D =
RCAMINO +=20
"EXPLTMP.DBF"<BR>ÂÂÂÂÂ ARCHIVO5:=3D=20
ARCHIVO3<BR>ÂÂÂÂÂ IF=20
FILE(ARCHIVO3)<BR> ÂÂÂÂÂÂ ÂÂ =
ERASE=20
(ARCHIVO5)<BR>ÂÂÂÂÂ END=20
IF<BR>ÂÂÂÂÂ COPY FILE &ARCHIVO. TO=20
&ARCHIVO3. <FONT color=3D#ff0000>//copioÂla base de =
datosÂen=20
el archivo temporal</FONT><BR>ÂÂÂÂÂ ERASE =
(ARCHIVO)<BR>ÂÂÂÂÂ IF=20
FILE(ARCHIVOA)<BR> ÂÂÂÂÂÂ ÂÂ =
COPY=20
FILE &ARCHIVOA. TO &ARCHIVO3A.Â<FONT=20
=
color=3D#ff0000>Â</FONT><BR> ÂÂÂÂÂÂ &nbs=
p;Â=20
ERASE (ARCHIVOA)<BR>ÂÂÂÂÂ END=20
IF<BR>ÂÂÂÂÂ ORIGENÂ :=3DÂ =
RCAMINO +=20
"BASEDATO"+NOMBRES+".cdx" <FONT =
color=3D#ff0000>//baseÂmaestra para la=20
actualizacion</FONT><BR>ÂÂÂÂÂ DESTINO =
:=3DÂ=20
RCAMINO + NOMBRES+".cdx"<BR>ÂÂÂÂÂ COPY =
FILE=20
&ORIGEN. TO &DESTINO.<BR>ÂÂÂÂÂ=20
ORIGENÂ :=3DÂ RCAMINO +=20
"BASEDATO"+NOMBRES+".DBF"<BR>ÂÂÂÂÂ =
DESTINO=20
:=3DÂ RCAMINO + =
NOMBRES+".DBF"<BR>ÂÂÂÂÂ COPY=20
FILE &ORIGEN. TO &DESTINO. <FONT color=3D#ff0000>//=20
copioÂla original para el=20
trabajo</FONT><BR>ÂÂÂÂÂ select=20
10<BR>ÂÂÂÂÂ USE &NOMBRES.=20
EXCLUSIVE<BR>ÂÂÂÂÂ APPEND FROM=20
&ARCHIVO2. <FONT color=3D#ff0000>// actualizo los datos =
de la=20
temporal a la nueva,</FONT></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><FONT color=3D#ff0000>en esta =
parte es lo que=20
quiero hacer y me gustaria saber una ayuda de como=20
hacerlo</FONT></FONT></DIV>
<DIV><FONT face=3DArial size=3D2><FONT color=3D#ff0000>con los =
dataset.=20
</FONT><BR>ÂÂÂÂÂ=20
reindex<BR>ÂÂÂÂÂ CLOSE=20
10<BR>ÂÂÂÂÂ IF=20
FILE(ARCHIVO3)<BR> ÂÂÂÂÂÂ ÂÂ =
ERASE=20
(ARCHIVO5)<BR>ÂÂÂÂÂ END =
IF<BR>ÂÂ END=20
IF<BR><FONT color=3D#ff0000>Gracias de antemano al que me=20
=
ayude.</FONT></DIV></BLOCKQUOTE></BLOCKQUOTE></BLOCKQUOTE ></FONT></BODY><=
/HTML>
------=_NextPart_001_012B_01C92F05.1A0EA880--
------=_NextPart_000_012A_01C92F05.1A0EA880
Content-Type: application/x-zip-compressed;
name="Bases.zip"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="Bases.zip"
UEsDBBQAAAAIAMuLwjjcKVrkswYAAAAYAAAKAAAAQ0FNUE9TLmNkeO1YZ5QU 5Ras+kBEHHLOOTU5
s8SdnRm2FoeZYWaXK6gk9TMjqGNGQdusGDDnnBHMOSfMijmCOWcxI29mWYHz frxz3p8XgDqdzu3u
0+d01a263aiNaswvrPWwitiCzQJEkeotdG/uqFXQwNoarOTatUDDho1q166F OqXYgk0ZseikTDqH
BhsqEczcYgibCZqA1duqTCaR7ZVKTyrLJmbEyyb0xhZsTnCYUO3/aAasxgb/ 74tMP1h/2ADYQNgg
2GDYENhQ2DCUDodGQCOhEmgUNBoaA42FxkHjoVIoCpVBMSgOJaAJUDkkqAKa CG0HJaFJUAr6i2Vr
KTjRyTnVcqrttJVTHaetneo6pTErAz8ZPgufg6+Er4KfAm+YvT38VPhp8DvA 7wi/ExZORzgD4UyE
sxDORrgzwl0Q7orQVy+7I9wD4Z4I90K4N8J9EM5BuC/CuQjnIdwP4f4ID0CY R3ggwoMQHozwEMw7
FPnDUHY4NB86AjoSWgAthI6CjoZC6BjoWOg46HjoBOhE6CToZOgUaBF0KnQa dDp0BrQYOhM6Czob
Ogc6FzoPOh+6ALoQugi6GLoEuhS6DLocugK6EroKuhq6BroWug66HroB2Rth S2A3wZYiswyGeEWu
MpqKVaUqs1MLu2wumk6ms8mqskI5l0jl0rlsNpGN5mLRskSscBBNVSST0ZzD YhS5R6OiFjbwfzMy
t2DmrfC3wd8Ofwf8nfB3wd8Nfw/8vfD3wd8P/wD8g/APwT8M/wgmPwp7DPY4 7AnYk7DlsKdgT8Oe
gT0Lew72POwF2IuwbZy9hPIV0MvQK9Cr0GvQ69Ab0JvQW9Db0DvQu9B70Epo FfQ+9AH0IfQR9DH0
CfQp9Bn0OfQF9CX0FfQ19A30LfQdMt/DfoD9CPsJthr2M+wX2K+w32C/w/6A /QlbA/sLtrbw/mik
OVotWm3aVrQ6tK1pdWnbsFM9BtsyiDCoz6ABg4YMGjFozKAJg6YMmjFozqAF g5YMWjFozaANg7YM
2jFoz6ADg44MOjHozKALg64MujHozqAHg54MejHozSBg0IdBXwb9GPRnMICl A6lB1GBqCDWUGkYN
p0ZQI6kSahQ1mhpDjaXGUeOpUipKlRU6CcmiEuLpQRWpeMWUinhVNDkhES8w HkulYonCqUSsqIoa
vRB11s9/xXqnGhQU4YtfhDWX/V1bVhDL+gesq7GsODkkk4nyaDyaq6ktKgoq ky5LRgu31tRWAC0w
LZ0qXLS+tqaYQVvw34NDskhfkRr8uFH/x1gapxLUBKqcElVBTaS2o5LUJCrF 8jSVoSZTWSpHVVJV
1BTKqO2pqdQ0agdqR2onajo1g5pJzaJmUztTu1C7Up7ajdqd2oPak9qL2pva h5pD7UvNpeZR+1H7
UwdQeepA6iDqYJYfQh1KHUYdTs2njqCOpBZQCxk9ijqaCqljqGOp46jjqROo E6mTqJOpU6hF1Kks
PY11T2fkDEYWM3ImI2cxcjYj5zByLiPnMXI+MxfQLqRdRLuYdglnXkp/Gf3l LLuCupK6irqauoa6
lrqOup66gbqRWkLdRC2lllE3U7dQt1K3UbdTd1B3UndRd1P3UPdS91H3Uw9Q D1IPUQ9Tj1CPUo9R
j1NPcNiTLFnOkqdY8jRLnmHJsyx5jiXPs+QFRl+kXuKsFfTVrZYsdGo6FatM TMok05MSqVgmWpFL
5FK5qkSyMlpZaP6aLh0y+O8edphSzX2x/5dvxP/LnPkK/av0r9G/Tv8G/Zv0 b9G/Tf8O/bv079Gv
pF9F/z79B/Qf0n9E/zH9J/Sf0n9G/znnfsH8l8x/xfzXzH/D/LfMf8f898z/ wDyRcbBasNqwrWB1
YFvD6hZyAVYPti0sAqsPawBrCGsEawxrAmsKawZrDmsBawlrBWsNawNrC2sH aw/rAOsI6wTrDOsC
6wrrBusO6wHrCesF6w0LYH0KucDMT7TVtJ9pv9B+pf1G+532B+f+yfwa5rGJ oNpxK2PVI8A6IeSy
iWR64jp3dphetPlqD1iyEf+7YcEmOS3Vc6XbOkWc6js1cGro1MipsVMTp6ZO zZyaO7VwaunUyqm1
Uxuntk7tnNo7LcXk4qT1/4R16R2PVsYTuYryfxoOi3nvMKcY1dUx7Dfi/9/1 xg6utKNTJ6fOTl2c
ujp1c+ru1MOpp1Mvp95OgVMfp75O/Zz6Ow1wGug0yGmw0xBXPtRpmNNwpxFO I51KnEY5jXYa4zTW
aZzTeKdSp6hTmVPMKe6UcJrgVO70v+zM+I/gX/n/4HQ2XvzbM2jjIKhJgn8A UEsDBBQAAAAIAMuL
wjguNlY4IgsAAD4+AAAKAAAAQ0FNUE9TLkRiZn2b25KjuhWGe8+uSqVSyRPk hkcwYHfPXMogu5lg
cAHuzOwbnjVvFh1Av7V+yX2F/XlJS9I6aAn1n3//27frt7e3/739+03+/fHn 29sw3s6TXtvz5a2x
3/0z+oXna6Nu99Hzfwi+dPfxmf8heD8O140P9vM3wVvdbNhylv9XMT90v6i5 MH/bsxqGsSm+HyI0
PG56GlfzoSmOMTK/dyCBLrr5VKs2T61tkNGcQv3qP5kGq0OMPgNiDdeLbguv RkXKr03/OFtUS6m/
xkF5qZPQcL0/9Gz6Yg0/A4IakFKTapNSO2IptajJrJWeSkY3NVhSvZCqslL1 C6k6K3V8IXXMSp1e
SJ2yUu8vpN6zUh8s1XZqXm9qaj6HoiK0GU4CzebbplPFUHyw2dxVP5oupW0Y kcU4ZqeHQVrUl+6G
RVtGUq2eu+ugmm60hs1oNT0WaanV9uj6YtT0as5I9XqZyLAnfe3G0Bej0Bej 0BejV33dH6ZBGRzs
l6N7dEgNXd9vqBs6syK998odYVH856asGDXj0CSk+q5ZzcSLBjluBMRxIyCO GzGa9a+x2BosY9SM
/TgVQapRZ2vLyjfYqGkyH6xhx8gnESdVH2Jk88Ok+/GnCZWiwaZpH6PvqxRS Rp8vnUZm5bUbF6tx
nx76vKH3GPlJ2lJAjMzk6n3IFdC2KNp5Hjf4OU7GY72GHzGyK/yY5tE3yFJ6 l2I07Yg1tE450PTe
xlb1XavaojkeWA1jiKMY8uZ67Ta9dSXncPzq7JgZXZztOvmUAXhDjDQkwxYa rnq+K7uYfVFKdBmH
diyS6OpYEv0cv/Sg5w3pYTb+uxu21bFr7VLGyOq9qrO3jRjdVWefBAqbih1V MRo2/7foIyB2vYDY
9QT67O5G9WDzNrNvaDR5aHBPJh5uKKjhPgnEasRID+5Ta6NoJRr0ycY8AQXl b3cTXrel3N2NYxSQ
MJvjIUbGdB/LaH6gmpNAem4e7biaLlmqu+xPpUBtN+nG+hD3dR/PvfKofkLS HWRfY7veRzMFvVmv
GC2615fRu96PNFpveXQJCH2ZyDvayMHKq2s3qPW/+uwRT5T5iqUmk32N5Sya UDt0q8eYQ2h4cawl
DW9mnnrHMsobxn2ZNexmO/FFUg2Hi6QanqXVcCytBpkNZ9iAOI1KdJ0e93GT 2v0Xvmw8dpMCQq70
tcOeLBRtD4Ag5WgdS5lnEwPWX/ZHZVkl0O8UuqhmMSr+x/ryex2hxzy6jryb B0S+DERzKNGsbW+E
MIcC0czHyO6hTbLUfdmUiTl0+w1GbXftjLeWLkZlGqzyDVa5BivRIG3agfZQ aWK7onEhVwqEatT8
YEu+LFW9kqpIqlHL1RKfAhjZL2K0eSUCrEDW6bq+G70vA3GABUKAjREFWCAK sGm03iJEURSIoqiY
XrV0y6MNQ2ZkWtwmitHVJt80uu3+xWi2hU/ssPqXsl7ufLn+HiF7xmLFvIaE vIq7hoyuu4aMbruG
jOa0hr+TGo7nWU9fbg1OQkO32TALGezQFF3T730fNTdd5/cbMZq729kE1ZSU rfLUftoTkNzOlafD
7qRcmgHxaQ8Qu7m2sXFObHt2RCngeAiIM1FAnIkE2ksOuz8MiE6xgHhcO+JN 4ElI9fpqgPlE6K6n
ttuRbNAf8wm0x0PH0g0GxA2a0r3INOhYukGgfZgFlbdAVAYGRKt8DCjamW8G AITTg1iKy4qA5MFC
8REQ7+cDorICUs8FgtAwmI17imdjL1QLQs/HR1uoBIKbeyQ1NA469g5hyIM4 7y1LIDrvBaLzXiB2
ByCOAEDIywKRwwKJsv34A4iCA5Coiap3II4ALKXuuu+jvkSxf3yaDZF8q4No 0Cmueisl0GwsanV2
OjxP736M2QxlajZuerZIrjKdYwPROTZQdPg5R3NIR9xAdMQtpW5qmbo2JbUh ltqf18Um+jRq8miK
0Ra+3EHWuuRRk0eTRbvtcU4B2s3GUrfKAVEBDkQFOBAV4EBUgANxAQ4UmWiE uAAPiAvwNFpveXR5
RlyAB0QFeHqizFeEUIA/Iy7AgbgAB+ICnJU3jPtCAU4IBXhSDc/SajgWIy7A u6Htvrr2oXp6rwdE
cR4IcZ4QxXkg2vYA0dE9EGUHIGQHQuR6QJQCgEScj5FZ/a5BZAPyedlTmkME WJYKSEi5YL71Nkjl
EWC5QY+4wRBg/0pJzTtrUuOaV2PXjFSrezXY8txszITy1veMe42FQGLTHqOl 0zfzPvvLSBbf6wh9
mTOAxp20CxS2Pa2pVuIGRXZIo0aiPZibDJBFXoosytKikGjbi171MGWQ3WNL JN5/CTWs2DbkMkYm
iDZmP2e2uL1EONN2qO/cprDcsrl3S7vKMbJv9LpLUAOI3ByI3BxIuDkQb6SB +HweCMGBEIIDIREB
gPi4D4izORDFDSDyFCDvKX7IAlEEAKJABESBCIj8C4i8EohcD0i4nlwvfens yKzU6QmRYQMJh02j
hhAcNo9YCg5LCA5LCA4boSrvRJW46JJGs0R5J6roogtQ3kSrvM1XeeutoppI qMFXIIAo6wFR1gMK
qS0p5ZGUoqsdhLapihDdxACimxhAdLUDKO9EFd3fSCHbbNQg3d8AovsbQHx/ gxH3xfc3GHFfdH8D
iO4sAdGdpYxUlZWqX0jVWanjC6ljVur0QuqUlXp/IfWelfqIpfKhss6n0Tof Uup8SKlloj8B5W2+
zkeAOu8OdT7R15zoceBp/kwpo/2L+KE8ANH5IRDdIgCi4z4gupYARBcMYrRn ZTe9QHQFAoguGADR
RHGDE4/raQMz9T+bSsyhe5lmOuM5RDaPx0WvCYAW8z0tChAtChAtChAtChAt ChAtChAtChDNPBDN
PJCY+WFzqfhcdIgR6mWByGGB2GGBOJvbKTVlGl+QC4jfgAPhwCRcJHNubTY7 fBQMxEfBQBiyRLxp
B8KmXSAaF/flbSDqi47ugci/gCgQSamp2y/I1dzXNM7zOBmLYuT2sKbBJyna zwPxfh4IW6ykVEAp
KTVl+gqIpXB6ECN5egDEJQyQOFgA2sul1bRoy4r3GOFgIUKUboC48AmIqhsg Ud2UT+5AeRmIygog
KiuAqKwAimMvqzGNxqDUtFX0QNERQUCLmQVyIiCREI9PiLIeEDkREDkREDkR EDkREDsREK+XKbm3
K5PuOSQpIHl7tjpsh+H7O1+3zn5HFBCH5YDkmXkJKX4XEBAHcyAqzWLU+MtH 2xUjRr8J7VeM7r7p
ZzXoTgUQ3alIo1vcIN+pCIjvVATEFyfS6BqpQRcnMmhOq/Gb1OCQElB09ZdX uX34945ieukmRozc
v/I8DPYz729tF/xyHIh2lUC80wPia+H+Mdjh5piNlPq8+xrbvq+UaNVfqn+Y sTDakwMQxrVdJ8e4
gPwl9E2NxZ9d8pCBeNMOhCpAIq4CgCjoAcmgxxpO3Fdiq28de07ddQTiKytA HFI2Q5kp6AWESooR
GRsQhcoYXZ7jIVD0epGkECoF4ntfQPBlgcRbzqIGEr78dAWCF8X8Ui0ulcT7 3gjRDhaIanMgCilA
8sj04xiQ3G+8Q4pqByBKUkCUboDEQasYFw5as0hK0Y4IKNoRkRR2RDHiPVtA 5JWQov08EB34A9El
eaeV1akk2wAi2wAi2wAi2wCStvHjCMS2AYT/hbHJ96kvMhsgMhsgMhsgMhug yGyySEqR2QCx2TCy
n2IkzKY81AGx2QREZgNEZgOUN5sqbzZV3myqvNnwsTNQ3myqvNlUebPhtxVA ebPh9w5AebOpIrPJ
IimVN5sqbzZV3myqvNlUebOp8mZT5c2mYrP5P1BLAwQUAAAACABXdcI4oCDy LEEBAAAADAAADAAA
AERCTk9NQlJFLmNkeO2UW07CQBSG/0pFRRTE+x3e9BGM7z1zoamZzgwzrYm+ CK4Al+AO3YCJO8EC
RvZA+yUzOTm3nOSc/AixoF68Bn4CVJSCAPNVV+suO7XiBmZ/fAezGdBqtcOw hnoXFeuLYNqkzEk0
Vr4mxpUglIQOgsWfWyvd3fIW3gQb3qOiTNTQ+9f/L6z0P4DdQFQDCzHZxHsd n1v42AbbgbtF1MBo
F+MmRnuI92Fb6LYRHSDuID4EHWH7GLaLqIf4BONTsDM8noMuMLnE9Ar2GvYG U6wZr0aTz7jU3nif
S5WRd1KZJ8MUcUWaG80zmVplUqm5pcRLPzBOcEptXy8rMukzJWMS5B8GKvEZ CdNPtEieE5GTGkoh
HXGtuSxCkquc+SKp6C0oE9Inca4z96J57jwZZdw8oZhjMZNzRa3nxCQvDNKJ UuR/AVBLAwQUAAAA
CABXdcI4UlxZasIBAABXBwAADAAAAERCTk9NQlJFLkRiZp2UTU7lMAzHM4M0 msXMjgOUCyAB4gBu
YiAotaskRYINd+HkOP1K3qN5r5BN/0r8S23H9sXfP7+vlFIf6l4dr18XShF3 rcd30z4onfb+Hdn0
nnsONrKazi+Pzo31qCN7y9vn/1UDZJ2D0MhadQ+Ou3mvhYCiDpeGFjV6ONDO hgiGQx3yXuzCgUZq
0DUeHT+3SG+WHo8gpDBemfXBqkDiSci6COlETG5oS50NTkHs2Jcawx6I9OAD lJqi2J2GBor+NUkJ
xopFmbtKIkx6EtKlthDOuIdF9Cl5CbRasLRfhWhMdKExF8QZiApofihfd+8B jVSOLrVlOpM9S8a+
WDOAa9ZSyHvb0OL/TaHPt8ZseFtCYUAXd0B3JfQkX+lc8c7gNuTwEYxcu+od /bQYRkn2CkXs+uuR
2S4jmgKY9NChZ/EpR/U1plykpU6QjJd5zGxA89tgqtj1nebKmCKtQymGL9D1 GNo25IBS8y1anFua
kUNtsPTcOtCzln4UyzURtcedHmNpSJgZJ5/xAMPWn9bkZr1jsMQ8IcfA2Y/V sw7OzT+9McndWe+a
exKHwWDHq0AP3eDAL7mvQuyNhq6/+Ql0+x3oE1BLAwQUAAAACADRjsM4lx70 HoQCAAAAFAAACwAA
AElORElDRVMuY2R47ZfpVtRAEIW/DChuV3DfFXcQVMiwumeSAIOZZExmUHAB xX1/T1/AXx4fwHfA
zkyYgP/1HJm5P9LdN9WdrlO3qzp0A/vhtGl28dOig7aARRrqTrjbHV1GA2sZ flhra9Db29fd3cX2
ETrYwiiHXtn1E/a2GNNd6SSENsF5rMazXq368UAYVUrLXmlmcCipxQNR7Pnh shHIsD08MkgHWxgF
LjXyP33wnTz/74LdaA8S2ot64SWFV+g16sM6gPah/egg1iF0GB1BR9ExrOPo BIWT6BQ6jc6gfnQW
nUPn0QUKF9EldBm9gbfoHfqKBrCu0nMNriNTeEaRjYpoDI2jCTQJU2ga3UA3 6bmFbmPdQXfRPeSg
EnKRh3w0A7NoLvWv6pQTP+lvYtQOk7of1JxsOD01OTE+VrQDf9bxnCSzsZtt ypeTmuNFo02iaZvm
zYWyV3eChvGM7/mx42YLhs0mnRY2uHzQWtRzap6flGdbRD2sxYt/7Ch063Hi ZBuKgijuX3ehsd96
yXTzJf0wiVo+Fu049uN1b1yn5LtmmE92wnIQmNdNpsAFTOwbGvi1If5lmKdw HwWowrYQRVhV9AAr
RgmqoTpaQA/RI7QIS+gxeoKsVFbqQt1oG9qOetAOtBM9hWdoGa2g5/ACrSLa CEV7KQqdZGP0am4e
v1wBTaEmuVnsB9F8a15mFZUCx22pOzBCi0I3G9X8SjVTRBBV/HV+04mwLbpa 9z9vk1TNZgfSf8LM
PmfnUsFs8qJo2FXYQwf/G0z+T4PcCN63DefflP0raAgN/4XM/B4+oI/oEz2f 0Zc0V28lbD4yRdte
75ibletUqqP/tBqF5prf+ogpFq4pH/l57qCt8RtQSwMEFAAAAAgA0Y7DOBKf H32DBQAAMSwAAAsA
AABJTkRJQ0VTLkRiZrWaTZKrNhCAnUxVKovkDixnCi+CwOOZJRbCTykMLoRf JdmwyAVy5dzktSQE
koCxQKCV2gI+1C2pf/DLr7+8/Hc4HP4//Huw208vh0NZ3S5tdslBxPy336xr qjojZUvLDC7l8s/G
qLyfD8/dT/661/p4bo0/Soor2S3EO1njGWGYwO1z478H7EGKJmWBaJGQWlw8 LkGQNRV7zQn+lrbs
LSxaeWVYPm7yAreW5yYCSUROsmAeIYadm42IJeKfqkznEXLYtdmIBLRA6koK aVlWLQvFT9AJ1jUb
cdKVrJQeerFsxDuomdQpplUJCK50v+dPIM66mqXSfRk24oNbVwoz5na38wzi U0r8xYNA63s0QKQl
LYp+60l1DOYWo4vfXG+NhUCsAlMzbUVVJQ69WDYiHq0ov+dPIJKpfeFHsRGn 8aL1AwgETi8Eg3Kk
uZUkETitaxDCgsJxjekqBqwouJlxA0vEPS2qWzcnsVzDoPSZA8zCQsS6LXi/ TV39gussEvyN3tUg
77d0gWtwmgXCFSiqe3HZ55DQQ2mAUKoZ7+6FHtQRgXgsURMp8L4/w0bE+r5Y 6EHnzG0hkmv9uFc9
gktex+wE4qSfUQtDjVmEWDd1b24hdStV9L1XbTMgxubu+p5NIEr8qFk6vWj5 aODVNMTcLDgl8Gi5
hYj1MxX6bZl6TkKfxRcuyUtjNuLECG6U9ctWStsixtGg3/MnEGecNuRa1cIY 0L+2BV398Glzf0wc
IJ7zsGfxOT4GPQkS8Sib+u/ed9M+MIb+4iB5QlEWAhWkqdU0RN8bYiNiTeJe lGFKA79mIxJGbxc4
F4Ug+xv4i4yyJlXGjHRJ2Xl1aqHMTfgZ0YdqkweIVy6TWwg0XrR+gDFiHPz7 EgSixISpeyIlGWEz
xGjrA+cBUUrEIBm5XrjeBYK5O9WMosGtIhALMXas/hRAQCWKfqfZIy36YlE6 lXc/7ndSvypzvwWu
LdcRQ8bqgAj7jcma+vU7KeDGLM2OH8f4zUQ0GmJIYZwRcPVSRDLsi6cIbqbp 53+JONWEPeAJWfV0
Fs8fPo14F0mQi7lD16zcNvdZXttmdLMaCCAKyrhiIrn1dFu4avsJojERSF9R rmtmGSLW94Xryl+G
SMb+wg+gI5C0xdJ98TxxHsyNBq/H3HY3n6NDeZsjCnJNs+650bh64Jvs2Qi0 S5nFQMSDSxocq9fO
GyES+VApgdmJr5rGiFMNq/PPblD0vRk24t2uqoUrykNfI87bl7xsxEfvL4zy Y798QyI2UXinOM3c
ZmYjPoWiIJgyK5yGysJl+wUQpR50RHwzyx82/FxlIJAu8fNPfbWQjhRmw/uL KIDgGR3pg39aUohc
CyGovl9rFGLXYpEysJyFksyweYjLuCTNHjq6dhuBxI6W7mlAeGX3uYWI5QEy QjBSUyJAdcUY1GHc
m5pFQ273TlGDJJ/re4zYCKS/pMerW4giLbmaRymMGHHdw+6InRZtdSn6AmCk P3Z5djq5oiwEgsCl
lb90AeeKNPgLhEph1C/qJPKjaIghGhxmwSU/gIbYtSxvIN7lEb3lVxgbcd7l E4mB+Oi23uCS2jtU
xKrj6fjHsoBc3xf6wRdEu0SDBgLtEjYbiHj7aNBWVDK4pEFRS8Oa0Swa/fNk tH3A2fSIPW3RIfb8
Utwh9vxSPCSQw77YcncrxL7f9QxEvMtJq7K7HQ8QA4F2SScNRKzike2CHEBk aQN/y6NXqSglqcMc
VySn+Hg+JivPcmgmAnVSNBeZr8IaiLiTkPnnpdCvKgx/nsTp7d4V7pRkKerT +Y2fIpCUoh4h3Co7
voNfDVciGxMRd4gY+nMZq0528eg9oquqKWkPRSFdUWgXRSFdUUhISzUyhzAX bdJJ3BYb1cyD5gdQ
SwMEFAAAAAgA65u+OIVOliUyAAAARAAAAAoAAABJTklDSU8uc3BpZcpBCgAQ EEDRz6RsXMDCXaTU
lFjMAdz/FrLlL39PYigOqHi+BHRq07VNjXGXe0ii5wNQSwECFAAUAAAACADL i8I43Cla5LMGAAAA
GAAACgAAAAAAAAAAACAAAAAAAAAAQ0FNUE9TLmNkeFBLAQIUABQAAAAIAMuL wjguNlY4IgsAAD4+
AAAKAAAAAAAAAAAAIAAAANsGAABDQU1QT1MuRGJmUEsBAhQAFAAAAAgAV3XC OKAg8ixBAQAAAAwA
AAwAAAAAAAAAAAAgAAAAJRIAAERCTk9NQlJFLmNkeFBLAQIUABQAAAAIAFd1 wjhSXFlqwgEAAFcH
AAAMAAAAAAAAAAAAIAAAAJATAABEQk5PTUJSRS5EYmZQSwECFAAUAAAACADR jsM4lx70HoQCAAAA
FAAACwAAAAAAAAAAACAAAAB8FQAASU5ESUNFUy5jZHhQSwECFAAUAAAACADR jsM4Ep8ffYMFAAAx
LAAACwAAAAAAAAAAACAAAAApGAAASU5ESUNFUy5EYmZQSwECFAAUAAAACADr m744hU6WJTIAAABE
AAAACgAAAAAAAAAAACAAAADVHQAASU5JQ0lPLnNwaVBLBQYAAAAABwAHAI4B AAAvHgAAAAA=
------=_NextPart_000_012A_01C92F05.1A0EA880--
Attached files Bases.zip (8 KB)Â