Eclipse Community Forums
Forum Search:

Search      Help    Register    Login    Home
Home » Eclipse Projects » Buckminster » Building Products with Buckminster/Hudson
Building Products with Buckminster/Hudson [message #523371] Fri, 26 March 2010 04:37 Go to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
Hello

I wrote a blog about building products with Buckminster and Hudson.

May be of interest:
http://swissdev.blogspot.com/2010/03/building-products-with. html

greets
Flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #523381 is a reply to message #523371] Fri, 26 March 2010 05:11 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
Hi Flavio,

that's great, there can never be enough blogs, thanks for sharing it :)

By the way, just in case you didn't know, for cross platform builds you
can also use a matrix project like described here:
http://wiki.eclipse.org/Building_an_RCP_application_with_hud son_(Buckminster)#Building_for_multiple_platforms

Also check out the new version of the plugin, there is a few cool new
features (like automatic provisioning of buckminster) in version 0.9.5.
And by next week it will finally support master/slave scenarios and also
automatic update of your buckminster installations.
http://wiki.hudson-ci.org/display/HUDSON/Buckminster+PlugIn

In your blog you wrote:
"I just finished setting up our Buckminster/Hudson build server. Due to
lack of documentation it was a real struggle, sharing some of my
experience may help other developers."

Would you mind elaborating what issues you had, what documentation is
missing and what should be better/easier in your opinion? I'm always
interested in how to make life easier for the users.


Best regards,
Johannes
Re: Building Products with Buckminster/Hudson [message #523472 is a reply to message #523371] Fri, 26 March 2010 10:54 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
Hey Johannes

Thanks for this additional information. I tried the multiple platform builds, for my project it generates a bit too much output (for my taste Smile ). Since the normal freestyle job works as well with my configurations.

About the documentation, I had some trouble finding information about JUnit tests on the net. I will blog about that next week.

Another point I didn't find information about, are the environment variables of Buckminster/PDE. For example it was pure luck that I found out how to pass the qualifier (qualifier.replacement.*=${version}).

I know that there is the bucky book, but I prefer using Google to find tutorials/examples/snippets of other users. I'm mostly a lot faster this way then reading a whole book. What I meant was "documentation" through the community. That was the reason why I thought I expand this documentation Smile.

BTW, I think Buckminster and Hudson is a great setup. We used TeamCity before and that was a mess! Just being able to use target definitions, product configurations and JUnit launches makes life so much easier and the whole system maintainable!!

greets
Flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #523644 is a reply to message #523371] Sat, 27 March 2010 19:38 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
Hey Johannes

Just tested the new "automatic provisioning" feature.
I get the following exception:
ERROR: Cannot run program "sh" (in directory "C:\Programme\Hudson\buckminster-headless-3.6\buckminster"): CreateProcess error=2, Das System kann die angegebene Datei nicht finden

I'm running Hudson on a windows machine.

Should I file a Bug?

greets
flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #523666 is a reply to message #523644] Sun, 28 March 2010 04:06 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
Hi Flavio,

I don't have a Windows around so it's always a bit difficult for me to
make sure something works on windows. I went along the lines of Hudson's
generic 'Run a Command Installer' in the best hope this would work in
Windows environments.

As far as I know you are supposed to configure the Shell on Windows
Systems in the hudson configuration if you do not have an sh.exe in your
system path.
You can just install cygwin and enter the path to the cygwin binaries in
the hudson configuration.
This is I think necessary for many Hudson features, like the above
stated generic 'run a command' installer, the 'execute shell' build step
and so on...

Best regards,
Johannes
Re: Building Products with Buckminster/Hudson [message #523668 is a reply to message #523371] Sun, 28 March 2010 09:31 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
Hi Johannes

Yes I think cygwin would solve this.

I have some jobs that use windows commands. There is a build step "Windows Batch Datei ausführen" (sorry my user interface is in German), which then runs windows commands. The shell command are probably similar or even the same for the windows command step.
Maybe this is an option? I think this would be more user friendly?

If you would like, I could test it for you if you send me a patch?

Otherwise I will just install cygwin.

greets
Flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #523674 is a reply to message #523668] Sun, 28 March 2010 05:48 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
>
> I have some jobs that use windows commands. There is a build step
> "Windows Batch Datei ausführen" (sorry my user interface is in German),
> which then runs windows commands. The shell command are probably similar
> or even the same for the windows command step.

Don't worry, I got it, I'm german as well :)

> Maybe this is an option? I think this would be more user friendly?
>
> If you would like, I could test it for you if you send me a patch?
>

Thank you for the offer. I can probably do this without the shellscript
if I merge everything into a single invocation. I need a few minutes to
apply the necessary changes and attach you the hpi (you can install that
from the advanced section in the 'manage plugins' page).

Best regards,
Johannes
Re: Building Products with Buckminster/Hudson [message #523687 is a reply to message #523674] Sun, 28 March 2010 13:11 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
Hi again,

sorry, I won't be able to do this today. For some reason the json file
for the automatic provision gets no longer downloaded. I need to
investigate that first. I'll write again once I have a chance to build a
hpi with the sh fix.
Re: Building Products with Buckminster/Hudson [message #523702 is a reply to message #523371] Sun, 28 March 2010 18:13 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
No problem, I'm not in a hurry Smile

Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #523703 is a reply to message #523371] Sun, 28 March 2010 18:14 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
No problem, I'm not in a hurry Smile

Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #524356 is a reply to message #523703] Wed, 31 March 2010 11:46 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
This is a multi-part message in MIME format.
--------------000009050007000303050808
Content-Type: text/plain; charset=UTF-8; format=flowed
Content-Transfer-Encoding: 8bit

Flavio Donzé schrieb:
> No problem, I'm not in a hurry :)

Hi Flavio,

sorry for the delay. I finally had a chance now to make the necessary
changes.
Everything is a single command line invocation now, so it's not longer
necessary to wrap it in a shell script.
I'll attach a custom built buckminster.hpi. You should be able to
install it by uploading it in this form:
http://YOURHUDSON:8080/pluginManager/advanced

If you have a chance and are still willing to test, please give it a try
and let me know if it works in a windows environment.
Please try both the installation and the update functionality.
Once we have this working on Windows I will release version 1.0.1 to
include the fix

Thanks a lot and best regards,
Johannes


--------------000009050007000303050808
Content-Type: application/octet-stream;
name="buckminster.hpi"
Content-Transfer-Encoding: base64
Content-Disposition: attachment;
filename="buckminster.hpi"

UEsDBAoAAAAAAOmLfzwAAAAAAAAAAAAAAAAJAAAATUVUQS1JTkYvUEsDBAoA AAAIAOiLfzzu
+cYMUAEAADMCAAAUAAAATUVUQS1JTkYvTUFOSUZFU1QuTUZ1UU1vwjAMvVfq f8hx09QvOpDW
0+hAKmgwpMKuU9aa1pAmVZJ2sF+/FDY+pu3k+Nl+78WeUY5rUNp5BalQ8IgE rm9bQ5mV2II8
wwsGu0aRn4JtPUmgGnIn3kdkWNOsBDKjLXDbihtk+oBvBBzT3Jnm24574Ppv wcC2xjsNvGN2
5rSCiLw32bZCrnRHndaQ4RozqruGJWpmOiZcQyGNpCLjjGGtgMTnIUIVoYbF SJkEOUka2yK5
EsbPpKoZVMD1Fd+V4q+W069998G9d9L5cJEmL0vjrBRS/2X5WfDiG48v8ZVk ESm1riPP+8At
umXTmXIydIUsvBxVzejeS1aj9GXuXYzeLVhTTIz7LuK/lshNLbE1W3H80AsD r+cHPvH7URg4
Zvm3tpUc9S7OG/Z7J9YRtMBEbYoRmYqScm7Wu9KfWESb5hAqiuzx+HZzc03b +gJQSwMECgAA
AAAA6It/PAAAAAAAAAAAAAAAAAgAAABXRUItSU5GL1BLAwQKAAAAAADoi388 AAAAAAAAAAAA
AAAAEAAAAFdFQi1JTkYvY2xhc3Nlcy9QSwMECgAAAAAA6It/PAAAAAAAAAAA AAAAABkAAABX
RUItSU5GL2NsYXNzZXMvTUVUQS1JTkYvUEsDBAoAAAAAAOiLfzwAAAAAAAAA AAAAAAAlAAAA
V0VCLUlORi9jbGFzc2VzL01FVEEtSU5GL2Fubm90YXRpb25zL1BLAwQKAAAA AADoi388AAAA
AAAAAAAAAAAAFwAAAFdFQi1JTkYvY2xhc3Nlcy9odWRzb24vUEsDBAoAAAAA AOiLfzwAAAAA
AAAAAAAAAAAfAAAAV0VCLUlORi9jbGFzc2VzL2h1ZHNvbi9wbHVnaW5zL1BL AwQKAAAAAADo
i388AAAAAAAAAAAAAAAAKwAAAFdFQi1JTkYvY2xhc3Nlcy9odWRzb24vcGx1 Z2lucy9idWNr
bWluc3Rlci9QSwMECgAAAAAA6It/PAAAAAAAAAAAAAAAADMAAABXRUItSU5G L2NsYXNzZXMv
aHVkc29uL3BsdWdpbnMvYnVja21pbnN0ZXIvY29tbWFuZC9QSwMECgAAAAAA 6It/PAAAAAAA
AAAAAAAAADAAAABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVj a21pbnN0ZXIv
dXRpbC9QSwMECgAAAAAA6It/PAAAAAAAAAAAAAAAADMAAABXRUItSU5GL2Ns YXNzZXMvaHVk
c29uL3BsdWdpbnMvYnVja21pbnN0ZXIvaW5zdGFsbC9QSwMECgAAAAAA6It/ PAAAAAAAAAAA
AAAAAEUAAABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVja21p bnN0ZXIvRWNs
aXBzZUJ1Y2ttaW5zdGVyQnVpbGRlci9QSwMECgAAAAAA6It/PAAAAAAAAAAA AAAAAFQAAABX
RUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVja21pbnN0ZXIvRWNs aXBzZUJ1Y2tt
aW5zdGVyQnVpbGRlci9EZXNjcmlwdG9ySW1wbC9QSwMECgAAAAAA6It/PAAA AAAAAAAAAAAA
ADoAAABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVja21pbnN0 ZXIvdGFyZ2V0
UGxhdGZvcm0vUEsDBAoAAAAAAOiLfzwAAAAAAAAAAAAAAABSAAAAV0VCLUlO Ri9jbGFzc2Vz
L2h1ZHNvbi9wbHVnaW5zL2J1Y2ttaW5zdGVyL3RhcmdldFBsYXRmb3JtL1Rh cmdldFBsYXRm
b3JtUHVibGlzaGVyL1BLAwQKAAAAAADoi388AAAAAAAAAAAAAAAAYQAAAFdF Qi1JTkYvY2xh
c3Nlcy9odWRzb24vcGx1Z2lucy9idWNrbWluc3Rlci90YXJnZXRQbGF0Zm9y bS9UYXJnZXRQ
bGF0Zm9ybVB1Ymxpc2hlci9EZXNjcmlwdG9ySW1wbC9QSwMECgAAAAAA6It/ PAAAAAAAAAAA
AAAAAEMAAABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVja21p bnN0ZXIvQnVj
a21pbnN0ZXJJbnN0YWxsYXRpb24vUEsDBAoAAAAAAOiLfzwAAAAAAAAAAAAA AABYAAAAV0VC
LUlORi9jbGFzc2VzL2h1ZHNvbi9wbHVnaW5zL2J1Y2ttaW5zdGVyL0J1Y2tt aW5zdGVySW5z
dGFsbGF0aW9uL0J1Y2ttaW5zdGVySW5zdGFsbGVyL1BLAwQKAAAACADoi388 gXrX0LYAAAAW
AQAAIQAAAGhlbHAtdGFyZ2V0UGxhdGZvcm1QdWJsaXNoZXIuaHRtbHWQMW7E MAwE69wrtlNn
f0Bxlx8kD2Bk+iREkQSKOuN+H8opUgVgsQTB3cH6PT22G+DbdnvBW1EWaGQ0 0gitl96TcNAq
T9tIEWpRSqVfNyW5s6Jl0qPKN5514KSi85ckxPRgUNnRxmdOPS4W8tEH5TzN UocN/RtAcC2P
u0l3mdh+MOkQdn8/C96NozcO6Ui8/5KbrbAxzXgj8YQofLy6s69um9xnla/e KLBfaVuAWcFq
Hfh1FvIDUEsDBAoAAAAIAOiLfzx9bkKAowAAAN4AAAAWAAAAaGVscC1nbG9i YWxQYXJhbXMu
aHRtbE2PvQrCQBCEe59iXsCEBASRmM7CLmCTdpPbcAt3l3A/ifj0XrTQZmCG WXa+RsnaHoBm
2RXo/LyKYkTNMJTcqNljk6hBSkmU2ZFBiORjWrCQJ8uRfShwo1H/AgQ9J6Mw MNhlzwriQHC8
wYjj4vOsKQff3ie4+e9SApbvCIVjb5+nqrYgt5v+0rG3D3nxtarPOfWMFHKP AhRPlEzcUcrM
0pQ72BtQSwMECgAAAAgA6It/PN+ZjQbYAAAAcwEAABkAAABoZWxwLWN1c3Rv bVdvcmtzcGFj
ZS5odG1sXVBJbsMwDDwnr5hbE6CxP2Dk0J76DEqibdWKaWhJ4N9XdGHA7YkQ OaNZOuef9zPQ
LffzCZ8jzQMjj4yXxCktZBnSwxQ7PfycMkdcbo4yXZsK30injxWOeyohb0S9 wvnINktc/7Nf
PgQYRuKKlo0QRTLqPxWpz28xB/GKedDECGIpIHKSULKXGZTAlFadi6TkTeCm a01UR189Vimw
exqfVC/7eXg/mnlLB6HdmI1MmR3oN83gnzxjoTyqxUvkQLmudu9/WtKFKT44 zXBtAGhH7bL1
q6Nrte0fUEsDBAoAAAAIAOiLfzy6fECZqwAAAP8AAAATAAAAaGVscC11cGRh dGVfZGUuaHRt
bE2PQW7DMBADz80r+ILkA0YPAZIPFEjOikU728jrYrVyPpdbP1ZLSAFfFjws h2QXZfncAd1P
vR+4UhVRmImTaHamVHREeLgsQnNIdjzFIo6lf0ztxRCKz1Nwyf0dy2z4ZuTU eMciKVZ7CUly
JezxNafkVCgLcWbwYsxYaMPva7wFQ6YonrTI/y68UYeQUkZNXEUjtYQLLaw4 36De1m0rqg80
bZ7usI7tDnX5H1BLAwQKAAAACADoi388wr4+mNMAAABfAQAAFgAAAGhlbHAt Y3VzdG9tT3V0
cHV0Lmh0bWyNkL9qAzEMxufkKb6hQ7LcvcARaEOnDikJpbPtkxM37umw5RxH 6bvXui6FUqgW
8YlPP/3p+nDbrYFu3K1XwP5ihjNBLgQuMhZBHxI54TSDPWxx1/cwZKGEzQ/R fJubxCzbpoIW
3OphRk/elCj/Ik4hRlhCpupn3H28Ho5Pp+f7/eNn+3sYutYmnfKSdeGQtU/C cEbwmLlgMsPC
cYmM/HGTEZgqvadE1R3ZGQk8oGI3iWIVN1KGNk+crnk0jnRvLdgSYo83tlvU 0Kvbcfmlpq7V
z34BUEsDBAoAAAAIAOiLfzwK1b7IhgAAAKkAAAAeAAAAaGVscC1nbG9iYWxF Y2xpcHNlSG9t
ZV9kZS5odG1sNY5BCsIwFETX9hRzAGkWupLQRUHEneAJUv8vfPgkIUlb8Gzu vJippasZhsfw
LMncNYCNXXO48cAeT2FQzcfoCO8p4fpSiZlx97k4VVckeDh/BFVy/H7SH+8n UcLMaWFPXLBw
WuccVFtrhlT/e5YchfUCE2IxvP3ueWrPe934amWqljWr4w9QSwMECgAAAAgA 6It/PHLbEVb3
AAAAcAEAABkAAABoZWxwLWN1c3RvbU91dHB1dF9kZS5odG1sbZAxTsNAEEXr 5BS/oEga+wJW
pAApgCIRkaBeZwd7lPXY2h0nUhC34SZcjFkrCAqqlVZf77/5lefTag5Uw2o+ AzYscOIpUsJ2
1GFUvFC8EB9a4YTz12cbSLCox8OxY0lKseinXBH7XpeFQa4o4EFgJOzViC56 mvIhjNLgzNHD
u4TbX9B/haZz8/66fX7a79Z3m4/yb69SN5hsQ4EaLaqyjtfee6Zk/sZpXVDT PTqRKTm4lBRn
MhnJbE8d9kxo2erNj36uF+zenM9fGl1DYnfNFpGCUz7hMnZYx5pYU21ZUzVQ PoWDx2Nfp2WR
NfIU5TCNm5+qzFN/A1BLAwQKAAAACADoi388daBrONEAAABVAQAAFAAAAGhl bHAtY3VzdG9t
VGVtcC5odG1sjZC/asMwEMbn5Cm+IUOy2C9gAm3o1CGloXSW5FNyjaIzkhxj St+9Ok+ldKjg
EN/x3e/+dD3f92ugG/brFXC4mHgmlEsNug3oOZErkmaIhx3d9cYxF0rY/hCN WpskUnZNhSyo
1eOMnrwZQ/kHbeIQYAmZqluw+Xw/vj6fXh4OT1/t70boWpu0w1vWQTlrVeF4 BnvMMmIycaG4
RKb8uYspMFV6T4mqN4gzhSWiQreJQhV3UoKWTpKueTCOdGZN2JFDjw+xO9Sn +7bDckH9ulbv
+Q1QSwMECgAAAAgA6It/PAF7a4niAAAAgAEAABcAAABoZWxwLWN1c3RvbUNv bW1hbmQuaHRt
bHWQMXLDMAwE6/gV16XJWB/QuE+TKh+AKMhGTJEcErKt3weQlUmasGGBw94d +lFupwPQl9Ph
Be+pKdOIPKEVDjKtks7QC2NYwnUWH1eEPM+UxoZRKgeNKyRtoq882DBNcl4q qeT0Zsw1LwiU
QLFlLI1BUH7oJJFtidQ3lAz9r8+x74bq8T5NUEgvns/FLVQpig0lDZWjud4M m3/ivDbcc722
QoGPRnjWtPeRdbentP428rCczJxHK7VzPC6oMoGGbPi7xIiUFQM/YfzgsKiv TBthv501/ZvQ
7buyHdu/vvPTfwNQSwMECgAAAAgA6It/PGa8LmwiAQAA1AEAABwAAABoZWxw LXByb2plY3RD
b21tYW5kc19kZS5odG1sbVG9TsMwEJ7bp/g2L1W6o6hSWZCAAVEEElsSX5uj sR2d7VTl2dh4
Mc5BUAkx+P/7O19tedosgXos8wI31JLHjglWxz3HpDsS3AXnGm9DROPnp+vc HR17fRc0Oe4/
P3pRZgzDUC0XeDqPHLue5EQcCS0psE+FqSfFg9gr85G4J0zBw0RKD0J7s4IR UpmJDLK3MCPJ
PogzlwzFYNepH/+EfSNL8RcA9rM+PGXCK/FAVb1uZaO8rXckx+wPV3gh/81W 7D82mEp6b9Xi
xGKhBk1OwTWpVAbHaTZxGCUoOZ1h2sunVCGPOVUSQjJQ32Nw40CJFbiCbWIs IXXFM8k7cdd7
jn8FkioYlMq20hKn2JIU6Hx1G9oIZR5ShdLAtXawXpd2fgFQSwMECgAAAAgA 6It/PIQa/l/A
AAAA7gAAABYAAABoZWxwLWpvYlZNQXJnc19kZS5odG1sVU9BbsJADDyHV/jQ K8m9SpFoQVRt
ERFR4bywZrG6caJdbyKB+E3fkA/kY9206oHTjD2ekSfX1M4mAHkzmySwwgMy lISAxAgf5AWh
IoFL8MO3XCwdz/HgbbeGuTOhQpY4Kk4hml+D9jXDZ2UwsPGtcqQONupfQ88c sUXXIWsU6NDp
uAis/6kKJ4N26L2kMeoZyTeE9jHyv8+S6UKUMyiFVXKqXVUoOT89XPeb7XtZ zF+Wt+xeH51Z
81tthDwbi/4AUEsDBAoAAAAIAOiLfzz5aW6j/QAAAKEBAAAcAAAAaGVscC1j dXN0b21Xb3Jr
c3BhY2VfZGUuaHRtbH1RMW7DMAyck1dwSwK09geMDAU6JFOBDJkVi7GJSJQh UQ6Q9+QN+YA/
FtFFiyztRIi8O92RjaVxuwRohu1yAZ/EyGDYYiz1GOIlDaZFQOIk6Fxprt+t EbOpCvqbs9gx
FDwcpPBMtD/YzB1Qknn2kduLn/vxRZUsslBqe/AkoFIW/cvcYipMchb24ZQg e1i50BoHEVNw
WSjwClJQd2dTVK6E4KdH56g8blkFO0xinCBXTX2Ks90jMsOhQC1hQo38a3fE ON01PL8VsWj/
8W40tFe9MTDset1bh9fp3utv8HU2FjDeMHcC64jOCI3F09/xNpVuoKmH+Rpa mlpv8wRQSwME
CgAAAAgA6It/PPWoG7DKAAAAIgEAACQAAABoZWxwLXRhcmdldFBsYXRmb3Jt UHVibGlzaGVy
X2RlLmh0bWxVUDFqw0AQrJNXTKdO+sBFEDCkNSSkP/nmpAXpYvZOMvg9eUMq d/pY9mICSbML
O8PszLggW/8IuHOdDy8cmPAqRLB9jD7guoKSuOCdeqWcpiQZPiH4jGBEwzfq /hUjU5kNZwrE
m9eRBcfZl/ihCwyb9s+5tKhvDsLM/E/xl4D9Nvyo6IWSWX+jOc/rKCk3WFO4 XyJ9WZV2+iPS
4kA1byPHmoP3AJILlGZENjO7wHlMyvjUXHLX9M86UEoeqFXEdb5vax2d9eG6 Ws43UEsDBAoA
AAAIAOiLfzwWDGW+bgAAAJEAAAAbAAAAaGVscC1nbG9iYWxFY2xpcHNlSG9t ZS5odG1sNY4x
DsJADARr8op9QVxAhU7peIhDLJ0lc2clDoHfkwNS7RajnU2TPocOSD50p1sJ mRFZ4BwZUb9d
7qa+CLQswWYcWgvedcXGJRo0rmoTNo3cJxrnNvTih5tcQdWD/gNHnvvLUX/4 bqddn6h9+QBQ
SwMECgAAAAgA6It/PE8StagJAQAAmQEAABoAAABoZWxwLWN1c3RvbUNvbW1h bmRfZGUuaHRt
bE2RMW7DMAxFZ+cUPEBhX8AIkKDI0C4F0gvIEW0TlqlApNMg5+kZOnXzxUrJ QzoIAvSp/9+X
Wk+3/Q6gve53FRxY1KmCJ4TjcplmsgNM8B7n2bGPYkrCSYEYvJ2/xc407mlY klOKDEj8WDS5
Adn8pvWHGRnO5ueWy5hlhE+8q3eKBI4H7EzPeXk9c5B1XL+D1m3TpYz2anEf vfMl9+lAopAw
WPgNHssMh9QhqXSYkCzPo1gRCj6jSm0+W9Hq5EKQwkVbfMxXijEc4x0yVl9m /jGR4W7dYHQ2
8AIS4QuTL2UrsxEEXpJ1lQH79TcENZ23ByiywAmNJqC1CE4EuYZM1VzLL+St bfKf/AFQSwME
CgAAAAgA6It/PEMGbhKaAAAA2QAAABAAAABoZWxwLXVwZGF0ZS5odG1sVY9B DoMwDATP5RX7
gAo+gHrvvR9wEiMiQoJiB9rf11FPvVjrtTyrnUM8HwMwH33e8FygaxT4lf3m yhumyWs8STnc
4Zrf9phFueKKKYGalp00ekrpA2GqfsVSKtoR7EWGGxzbzmCyi2sxBdSWR7x6 zI+RpKBDjYHM
FxYmbZXFTC1/mZQDDFl5LyejOCmJ1URmGXuLyWrMU+/0BVBLAwQKAAAACADo i388VYezE6kA
AADhAAAAGQAAAGhlbHAtZ2xvYmFsUGFyYW1zX2RlLmh0bWxVj00OgjAQhfee Yg6gEEhMjKls
3ZKQKHFX6As00kqGFgzn8SZezNaVbiZvfr95Qum52BCJMUaiMxpYqjRo9dP7 5dZBtz2ocpKd
H6mULA0cmKRNfrIFrMKe8tz2BG2DvkEPsN407EOtg2PAJl+ISBsurpoV3cPs 39EOXfxgS0ts
72rz3Ge5CaI+lmBT6RWnLD8YksNElwd3skGAO5rBC6yCiwiRBjsijd4+UEsD BAoAAAAIAOiL
fzwCDHg08gAAAGoBAAAXAAAAaGVscC1jdXN0b21UZW1wX2RlLmh0bWxlkEFO wzAQRdftKf6C
RbtxLhBVKtAFsKAiCNZOPSSjOpPIdhqpiNtwEy7GOCpCgpUl6+v9N790fNos gXLYLBfAjgVW
HAWKeKZuwAuFM/GhFY6Yvj5bT4JVPR6OHUtMFEzSlAl9n9ZGARcMcCdQCqqk NBsczWnvR2kw
cXBwNuL6F/O/TEWu3l8fnx6q/fZm91H87VTNhjw1yZRFHS6tt0xRzZXTWp9U 9WhF5uRgY0yY
SFUksx11qJjQsparHf3cLdi/WZe/UrANiV61WAXyNvEJ57HDNtTEKdaaVVUF 5UPYO9z3dVyb
rJGHKIZ51vyURR75G1BLAwQKAAAACADoi388+WiHJQQBAACyAQAAHwAAAGhl bHAtcHVibGlz
aFRhcmdldFBsYXRmb3JtLmh0bWxlkTFuwzAMRfec4m9dguQCQYFunXoHWqIc NrIkiLSD3L6U
03TpIgoU+f4XeYmyvR+AS/Pzo4erbKywK2NaJUcY9ZkNLZOl2hdQiWjrlEWv EMNaIve9fPbG
gkILn16ciCTZaXfJGRODQmBVmTIj9brsbZ9r1Fpw56nRzDv+u07DATldPeNG wm2RouZKT1N+
baDuj4NlFcqZgz2pBDdnqAnksr9e+d9P9HT48uA1j+PLxY25qYNNEgVTeN2u PzRJkWuZR3yl
cp19Bq6dIOrNzY7+YpCER10Ra3kzFHbtOgB/2PHJe10918ln0KG0MaLoDdoo 8HFvD1QcAa2n
sZ6z7+dyHsv6AVBLAwQKAAAACADoi38813DKi7QAAADjAAAAEwAAAGhlbHAt am9iVk1Bcmdz
Lmh0bWxVT0FqwzAQPCevmEMP7SH2vTiGkARKS6lpwD1vonUqWEtCWqcpIX+v 1Jxy2tkZZmen
MfbUzoEmtPMZtk45giA2KfwAMsaq9Y4Er/07KB4THqc0kcgvQvSBo1pOTxWy +WUyybt842Sj
dyM7RU/R0l444UAOe8aU2ICcwY8VKQSfQ17ZVCX9TGMQfs7w9s5ssdGcydoJ 6eDj2JF+Lx8u
Xx+fb7tutd5e63u9OOvw36eMpi7t/gBQSwMECgAAAAgA6It/PL4fL7P2AAAA lwEAABkAAABo
ZWxwLXByb2plY3RDb21tYW5kcy5odG1sbVG7boQwEKxzXzGdm4jrT+i6tFGK 5AMMLGJzxmvZ
C4i/zxpxUYrUO6+daQde7xegTffLC96iUoZOhMBFISN6mWcfh4JdFmw+Krql f8wcy4EUJMqj
5LmB0T/3xL0PYTcJLuC4SlipwKPITHCF9CPT6F7hMpV6czBxuFPE/do1pvZV yJiRNgsTCQYA
+X56Ypr22uUa+l2UbuDxiLgcpFPvCQUrNg4BflGZvZ4hO6qAFEhpsLtOlZnF yLpjoJEjK0s0
i+rt/jzeyKJp0SaLqLNnvSIJRy21EY+BM/Uqef+P5KyXo+Jv6bBJfpTke2rq Blcbob3WRX4A
UEsDBAoAAAAIAOiLfzzTOenvxwAAAAgBAAAbAAAAV0VCLUlORi9jbGFzc2Vz L2luZGV4Lmpl
bGx5RY/PSsQwEMbveYrPvezFJnepPQiCgsLC7gvMNmMzmk1LMm3o2xsR8TTw /ZnfTH/XdQa4
BCnYhCvaXAt76IzMyXOGBsYS10kSohTFQhNb00pnSSOjMvycjtriFOOOQBuD 0q5B0gS/J7rJ
iMCZ7xFZjwWfa9vSIChK2ryXy/ubhem6wfRetuHvnlODviZIUp4yKRf0hJD5 4/EQVJcH52qt
lscoS2E758ld1/HrJqkoZ3cYnn8dPP2rvaMBVEC4rhLbd9b07of5DVBLAwQK AAAACADoi388
AAAAAAIAAAAAAAAALgAAAFdFQi1JTkYvY2xhc3Nlcy9NRVRBLUlORi9leHBv c2VkLnN0YXBs
ZXItYmVhbnMDAFBLAwQKAAAACADoi3886wleQVIBAACnCAAANQAAAFdFQi1J TkYvY2xhc3Nl
cy9NRVRBLUlORi9hbm5vdGF0aW9ucy9odWRzb24uRXh0ZW5zaW9u7ZW/SkMx FMZPtRUtLir4
BAoupotbQei/oXCrpS0Obum9x9vU3CQm59bSwSfyJXwZN1dnc61opSpSXISb ISSHk+/7fsmQ
+ycoOQtHComN+YQzhzOjZ0wkRrI+2ppSmjhh1JKYoCKYj8IaFC9hU7gO0khH AWyFkjt3xhMk
2A0ypYrkKq70yQoVVwMoJ5gM0WYdN3AHhQA2Jlym6Aj25v0pCVkZWMQON9Wp AYLaKI2cVszI
NBbKsWEaXid+QWhZ/WPd9jOXkpPQ6qCJLrTCkLZtj2A8284rV6bO3tS3H55P jw/Hj+tZjHKo
E8Mt9ycI9heiNN7rPo25LWbcU5eFB5/tYoVsy3W0S4Ezg9KS3V9cxdfKOUgO koPkIDnIiiDE
bYzU9SZX2iZs8GnbTYdSuBH6v6XcbPUbvXZ3cN77xuXkB5dWKIVxuMBQT4WM fif839/BvABQ
SwMECgAAAAgA6It/PPckqvilGQAA3D0AAEsAAABXRUItSU5GL2NsYXNzZXMv aHVkc29uL3Bs
dWdpbnMvYnVja21pbnN0ZXIvY29tbWFuZC9Db21tYW5kTGluZUJ1aWxkZXIu Y2xhc3PNWw18
U+XVP+c2yb1JbymkVImiVEBo06aVCgUDIlBAqqUg5UMEP9I2tIE0qUmKgIqb w4055zY3p6jo
xnTMffpFAJmo+8BNp5Ntzm1ON+d0c5vbdJubbu94/+e5NzdpG1DRve9+/Prc 83yd53yf8zz5
8ei/799PRJO0+T46iad46UZukmaqNNOkOU2asDTTpZkhzek6z/SRj6fofIaP Z/FsH/XwHGma
fTyX5/nI5Pmy8EyZXeDjFj7Lx2dzqzQLfbSe22RikUCLDT6nlJdwu3SWys5l Ai0XaIXB5+q8
UvrnSbPKx6v5/FK+gC/U+SIfTeCI4Oko5U7u8uG8qDRrpOk2uEe+MYPX+mg5 r5NO3OBeoTIh
naQ0fQZfLCMpg9PSzxjcb/B6gy+R3gYhYqPBm6RzqcGXyfdyaTb7+Ap+n8Hv F9xXSvMBg7cY
fJVMftDgDxm81eAP+/hq/og01/j4o3ytNB8TYj9u8Cdk03XS+aTOn5KDmmXk ekEMPj/NNxj0
ppB2o87bdL7JRxfwFINvlu8t0mz30fk8X1bcKvK7rZQ/w5+VZofOn5Ph8wy+ XVDeYfDnpb/T
4C94cc6dsvuLBn/Jx1/mr0jzVUHwNWnu0vluUdI9Bt9r8H0G7zI4a/Bunff4 6HIYCO/l+0vp
Bm4XaJ80X/fSIX5Amv1ebuAHDX5IFtxm8MMGf0MO/KZw+TVpviXi+bbBB6Tz iHS+Y/B35fuo
oH9MKFsnzfdK+XG+TecndP4+kxlLpDOReDySiSUTTJNbe/q70slEQ1+8vxtT DR39net6ZU00
1TAnD7cU7JrOZHQme3sjia40k791bWR9pCEeSXQ3tGdSsUS3zMeT3a3R9dE4 0/BIV1dMtkXi
iyOpSC+2VFhnrkim1qX7Ip3RJclkhmmYhSiWbJgfi0eBpKw/HU05i4BU+kuj vX1MPgEX9Wf6
+rGxXDrNFkGylckzI5aIZWYy7ao+Gv6GcvR/OVKznMnVnOwCH+WtsUS0rb+3 A3xHOoQzf2uy
MxJfHknFpG8PujI9MYh16pF4tRXWYMtJEM/pj8W7oimRdIeAzY5Oz3LE1gs6 4g2zO9KZVKQz
o3ZMHzinxlpjOCQBXDUWP/2ZWLxBBoFc742m05Fu0OmTuTmxxNxYCuqWzrwN 0c7+jMWFWxHB
NPpIZ4tp2WcNWTmQEqbSzhyvaVjJ8KGUlaztWiciHYDlrLlnY8rXl0r2RVOZ WDQtashvXRjp
w7SZs//FkUwP04gcCjE/GcKSYwZqamNfTltVR+BvRjA4E3vHD6J1xlArkWVT BtJVZFXxfb55
GzqjfWLqaZ2f1Pmgzj9g8rbHuhORTH8KNHYcyQAUke/ECA5Dvr87milwW0uU M49segMVUVNE
7j1vTfrRSK3YUeVgoGVAOG2qrjm6gFqalwUMbmR1TbGoKotancBagd7sIbF1 +CWpWCY6IBqO
qx5C+2A5IuS0vNWqtyso4BqJmN+eiaTAp6IrCiD9DnSr/LMIjd5L8tngsnei 58Na4VGzKLqY
G8lELKs9451ZbRHdxv5TZlvkLEnJZy1fuLggxI2tfhvi5xj+WqCGvpxSYYX5 9H5WssPJ8KuK
nevps6eHdceTHQiOC3PrvWvze1cPJuW9VZwPipMiQiWhcdVH0M2ijrXRTskT LdXvWvYOLhPH
W4XLWxPgCO49ICCv/OiGPoSGQuVPqT4cviOTVZqK9sXhjL3RBBKsJ63GkfD7 IhnYBsJhoABL
Ktod3dCw2JpSZUEk09kjJjR01UJrCqtWvSVp70YWFWtiia55F/fHEskNrZH+ hEWPscbJRlps
PKJZwYEtoD6SSQppwwsr6QXJ3qg4hgr6SrO6nQCg4yH2PDjQSjas6ExFI5mo nRfaO1OxPgj1
miMWsDYFxfIKSo3pQwP6gBDThnbQ0NJIet2RajkXNJ7U+YdwoyWA0jGIYiOM uiWBDc3xSDot
9jT/6Gken0crx0VSKSjgzFXvGcJ4NAGEpbH8Aqbp70LE0HMmmYwrjbsSqmiv KCJl1Jq4ETEd
fwRxw/Dk4I0Kl5kDLTt0oVKFYPUOq2R3fKbAnPPVvJnKsTykem2PihaNNVFV 52HSvSaWkuqY
zytWdQ4pjMVQxw3Ed5ji7jP/RYZ7uPrT8rhlfV1ocw538/8j3cVjbqH/jbAJ iHbNd1Q4/23G
wyMqTOTx0n8N60fLw9tU/AhVIy8Z4CVrq9+jIDPI24rmHV+qIHh61kU3YiXc UkaXLWkFNZv/
M9QUlUdRCsuViJYl7JNAUrCwBmlOwgY71d2l6PaStDDkWR+J94twjym+VUJv sYkZb9NgFxUn
6e1tL0p3mWK7xWF60btxiaIn6Hbs1flH6NhezNT8LtRtIwHyue/GavJofO3J /lRn1Lo9Hjv0
xahe+DLpDn7KpG10k0k30y0mbZfmVmk+K80OaT4nze10C7JiXiezU6nIRutR xix88tP5xyY/
zT8x+afS/Iyf0fnnJj9Lj8tZz5l0G33G5F/wL3V+3uRf8Qs6/9rkF/klk3/D vzX5Zf6dyb/n
P5j8Cv9RciZw6/wnk//Mr5r8Gv9F0PzV5L/x6yb/nR5nWrG0J1rVmUysiXWD 864qpLiqsZee
cvnYqr5kLJFJV2WS6E9Cv6M/U5VIVkWd9yqA4CBdXzU3uibSH89Au2q1HDoW xeHg0t/kf4AP
foMe1/lNk//J/9L5f0z+Nx9CPMrLZkEk3YMACEo1MjXWNF0rMTUXOvQzesak R+g7Jv2QYDu+
UAglRVzeAkx6QrjRQu2m5tY8Jj1JBwveqOozGzImEBkm/Z7+YNL3ZLF72dL5 oWmm5tV8EFVo
bSRl0l9lwgxF+vrisU77RaM6mequj3bGY33paH2BNdV39nbFYRL1PdFIVzya lloihEQKu3ia
fmJqpYLrhNDcwi1Jde+pTyWTmdMhZZN+Sy+jJhq4KIO7WcGSF+klkx6lx3TN NLUyRfkqX9n5
taY2TCs3teEyYoTO7d0wZVJjL0QZOvfc8OJoqrc9til6+qTGab0mfV/WDB98 BvL/UNpQGq4e
v/rS6vrgGTWrL9e1Eabm1ypMelUbqWuVpnYMTEc7VhtlagF+FfX+ikVLzm5f PLt5nqkdpx1v
aqO1Ewbo3nJ7UztRG6NrVaZ2EpSgjeXXIZpCy29LZuYn+3EVyb3Lwe0OU98x 1bQlqyba/j2x
qiuWgnUh1Ff1RNJVHdFoomqNoKqKJXDeOG28qZ0Mw9MmaBNNrVqr0bWgqdUK G3VaCHF+UNoG
YYUKj1p3o/q4fTm60NTqteORDECDPVeVm6uCDRUlokHpKEeoqZ2iTRLKGiHs Ag3o2qmmNlmb
YmpNQupU2DHEOQ3iHFyFwsm105BjQut7xei7pIE6SwvimgylhjgWkoGuhU1t OqKSNgMN+9ll
aqcLNJIbTW2mRKph9XaIru9OJfuBmOsEXczUzpCFY7VZJo/hKvGU/lx+bFlm crU22+STeYK4
ZsFwHYfEm+eYWrM2V9fmIckMSE+4fh/Vsz3TiQpPIppByRRfk0z1RrtQPRTY UEXOxloWFYye
mLeslgTOSPX3ZaKFpjf3vag8mGa/61QEHVfLk81xh38Zsx5UCn4kqqgu9lLr i3Skk3GIfJP8
0JBBldUCw8q9sooIMTI9l4/sPvIzcFteUVnkHSL3mrQ4lZQIz1SVP3sgqfYK HDD6SPOomIAO
Fm69ABf5WaJywBiMAjFLTKG8sz+ViiYy+ZHAYAS5qekWW23qrlo5eJV9W9Vh TtaKOdXv9O5V
hOxhOHBeYn0slUxYb0Wh6reDAluWR1JpQQB6BiAYXz14UfGDB94HYFCRrq5B 2rSf5mpwA/aC
ztzvU4515H+QzD3W5UaKm4QgmaeKA2W/QDtcHvcjiWQCWTVu2ZNSQUTejASy Xo+skJ+JboBD
Wz+ZzYdTR8Qs1tjAaUXMcFURXopVngO9aMAvNvAJxIGkJJdidu5wvRj9zAop kcWM/EPeLsH9
CBGh4M798gUpjKiuGbRyQBDEgLwN92dmx+MA4tFEt4gIsoMLujt7lJufXJSw oZ7uVhU808TD
PhwO1pf8ijPbCg92Cmx85z/hWGrPPWG706igMsWJqCn6NO4C0JszgaHvpTAT ZII+VZCHDq+i
og+tpxaub+6JpNqRuaOJzmiRXfmH1yGULMw917rk0RQ82tmxsrql+OMw6upM BJI6O7pRXp0v
7o/E0y3diWQq2hxJRw8TUuEtJd2SFCcUc9FiD+q6/QiNvHVYRt9CAAMJHzEk 3iHMW09Flnl4
orZ3e1ApR0UWR1BJ0Rc6I5Nstx/LXXEVl/zVRV57jJj92owb9ID5gldo/9BR yARlWBviiLxJ
qs/AHxQd2fnS8iNdekVM2BIDXhLtTYr3lKWj8lsNkIm8UAI1I3VVNx+Jp4oB YlugOtbPZMpP
EqKhYwenG2uZnZIQsiFUV1ol6UFm5ZDsry6SHk476lIDrObfYlA9yZN/P2yw PxUXELr1OqIY
HMisx9RRA8YGvG4EDvdkslyhzbTakc4FXuVX02KL6SS6EX9EXtLksg1Ik/u2 +m63v7faX1yQ
1fezdn+H/f2c/b1dfUcS0x30ebQ70XsS4158G4O7iYO1u0gL1u2ikmBoF7mC AdcucgcD7l3k
CQY8u0gPBvRdZAQDxi7y3q1wfgFtkHxom8hFU4FrGg2j06iCwhSg6TSGZtDJ dDrV0kyaRGfQ
nVi52jqRvkhfIlKQcMYKEt40BQl3JQoS/lwKEs7cChLePAoS7nQFCX8G8HyZ voKd4E6bj9UG
EZ+yj3wrd1NpW3AfmStrs1SWpWFZKs/S8N00Yhf5MVSRpZFhV8B1gE4IuPZQ ZZaOqcvSsTJU
C2BUlgICP0LlIf9xe+l4jVbspAsDriyNDrsFbcDtP243nRD2yNiJ28gfCniy NCa3dLK/KqwH
dPcDdNLKElkytn2lS77j2vfQ+LBeF9D30slY6qDfRxNWqqN308SwO+AGkdV7 qUajYCjg3k3B
YK18asOeYK0aqAv5Q9bOUDBL9Tbob7ABocZm2hoJ3kfeA1QmnyydchOVQsmC Z1LoLsizROk2
RaPRLoQU26iKFlMNnUP11A6tLqUFdC5mVuLf+XQRXUC9dCH1U4S2UJS20hpo phu66KFdmPkm
JegJ6qOn6GJ6jtL0Eq2nP9El9CZt5BLaxJV0OU+gK7ie3q9sZA1saiuF6KtK uxfRMvoarNsN
TAvoLkAe0WrOggDdTfeIBQG6l+6DBRlcjXOz4KKGddpNe2BB38TuvXQ/sDxH S2gffR1YHsD2
KrEzhWM/cFg7H8SYtf4hrH8YqwyMfANj36JvK8s/gL9H6DtoxY+uBX6x1rrB Qi0Ta/M3ZunU
uwQKykTdbposA46Uh6m9W2kEXU3H0zVKAlUWPsdL6nI8AhIuNEX7Mcpb6mza rbmHMGbR+F2M
PUqP2b7egK+scYMG7S7HfT1q8BPqUNNaYB/K8lhUZHPJ4M3XF938RNHNrsGb txXd/P2im92D
N28vslmTFzArAlCXrZfhtUH4xBSRvL8pS1PvdmTvUxLcQeWw17zchztyH64s hRWUl7vpjIi0
H1b0aAXW8QP8/ZB+ZFPxFL4St2bX+adZvleHeHuaDfrDOWB6Dphhe2htaDed HnbVBVzWQJ7s
sRLYgNyL3kiQegJcbQKcpAGmMBVOMAtuIOxMtg522JntmNFs5SCagoSxEuzz gVQJto5bqPX7
nfUPOusfwuxQtn+Mv6fpJzbbV+ErOMZBcx7LKTx2pLmP/FmaeZe4g0eUMtgX 9sAX7kcG+XqB
TsY5TIxzmBg3xBfGOQSPO6x2foq/n9EzFpn8ACKMZKSDtf4zXCo8B0HSLAnL ltRr/bPz43Py
47Co5izNbQv552VpfthV0uSudAdc+3dQdcBV6YbTnwl2b6WRtUHVF0atnVvc vPPQj7H0Jqqs
9S/IHdPi4D1LAv4BmoWkonB7Spr0Sj3gAe66gKdSd3CPCqquoA4btQHDxq8D /w/y1rIENkIQ
xCiEsFMgiGkQxSyEsLMRwlYiiK0F3IdQsR4efwU8bytc6Fo40SdhyLfAkHfC lHfBNh6Ghh9F
/0mILxemmxGmf07PqjDpRWiVJHwbkr2M6ehNpl/QL1WyPugo8KCyPVaQpcBp iAPPq5Q/C7Ho
V9jhAgXN9IJK+Xn1HlRWmNtZXL2/xt+LSDFWaN6qZonCsDXdskJdWeFIydpi if6zkbfFHHMD
YpZ6LURqjw8yzmdhnL+ABz6vZGDRFXZ4CyuOuCBMhBWlbFP3G/z9ll4uQp1h UWcMoq61CHXG
4al7EdT9BtS9fFTU/Q5/v6c/WNTxKGhBNLfZv3APtbWFkMIWhVXVsngbrQ24 AJxz4NBrdRa0
l5agSj30AsN41YC/PUtLt1GVUF7nb99LyzQctRw1V5ZWoA4Ju3fSSGezNRl2 1wZcJRgIuLN0
buvOQ5+qzXPYCJqJXgFNf6QyFBCV9Gc6kV6FBb4Gu/4LiszXaRW9QXH6J22k /6HLmJUUZmLH
KdSCnVYBudmRx2ZgukXJYbNtiR7aAMx/xollKFZeBWZXgbQ2D0iwf8HfX+Ev lrRqbWltt8pH
KzyszNJ5rbX+VUj4C1HMrb6Jxu+j81fuowtQkV7ovyhLEcnHamEkSx27qfNB rOtqQy2HC4pI
ey+tYbhHrUC4ND5EPRIdshTzr83Sum1ULh27tLtr56GDhfjjwAp0vXnkjjAn SNRjP43gChrF
I2kMqrBZfAzN42Opk4+jPh6NiqzKEWAn4vHfEJHdqPoaIei/q6p8uy3KEahb /qEy5SgE/jcA
aTQPFeKbqgrLCdAa+eeg5OGlf0FZKhq7GoF1OGTbZNfsIoAcMwlwcQ8ls9Sn QDCUi5wXQ7yW
UGw5hD17KJWltNTcB1Cno7jGTfhWWmYNl+ylfjG39WEjYNSFpNAHoPR2iVT6 6Ehh71WFvdcq
7H0Bl3+DdWDAFfA5tT2GNzrDHmdskwNd6kCX5Sp7xU/Y2EeXA9gc9ga8MIIr 9tL71Kw16Av4
MPh+axDQleHSQOn+JrOkqayyrNLcQcsDpZVljeFhAW9g2H30AWthSVN5Zbn0 tyBX1Ad89llq
pLK88T66CpLzfzAnPtmypRzZ4vEtZWjvdDWVBrx76UOwPDNg2pY3RSBlecvD ZZWl22hEwAjg
DhXBaaU7qSJg+LdKLze689AjEIXh6Aecf3gQ53KO770/Jx8qJNER7hRenki1 qOlP5RpYd5AW
wE1XcIh6cNe4mBtoMyr/q3gSXceNdAufSndyE93LU+kBnkaP8Gl0kMP0DE+n X/MMeoVPpzd4
Jmt8Bg9jYOPZPJWbeR7P5bX49mFsPZ/JG3kB38gtvJ3P5ju4lb/Ei/lePof3 81J+jJfxU7yc
n+MV/DyfqxGv1Ny8Sivj1VoFX6QdzxFtAndpp3JUed5r8KcelFxyhzHgWePV TchL19Gx6ibk
A31NKtmWg7v59G/WaBi8uYNL2EWlHKDz2Y1ZE958Hrz2WSrjG1EbSdgr4ytx kxNPNjVyxn6X
GxMvZA/L7Vogw6qDAXlZVc2AStmEvL1aCDf3LDz3VK2Ey1SMmMWv8zB1S1/A f+RyzOqQ4RIe
ziPAxyuQjh9xxwtZTuaRgHy8ETKvRPwpVdEiCGwW3gcBKRyIS7q9c5SzcxRK kCL3M/Dt5eP4
ePsl4BLgAD98Ti6qIFYMjCpXi1sUiyqegotzWLejCuKDRBXjcFEFDm1FFQD5 qIKORBWfiio+
K6qUosTLRRV3oDQfVdxOVHFL9LLHNjnQpc4t/sr926lMksNHhJZxmLsst0pm ZeYahvl8NOcl
9soxWHmtcwZGPyarPp7He4BOUuhvpQCWfsJBuoeuy8F5h0vg6kq8FmJfB4eL w+F6YQQJqC4J
h7tY/m8gHC4Nh8vA4frhcOvhcJfA4TbC4TZB+ZfC4S6Dw11OL/AVUPT7YMIf 4DK+io/lD3IN
b+VpfDXP4Y9wG39UOccmKDXnHF7HOXyOc5SKynMmDMg2YUC2CQOyTFig0cj/ MDpeoIzZDQ5O
VMbsAR8jlDHr4MarjNkoeDrATj7B2fkgdqpVMFejqGmeCGMfg8RqVQ0zMSt3 uU22PS6U+I/y
7pNtQcl9+5vcJU2eSk+leweNxjXC0xjWQwHdifdbPAjbL4SsUJovFqqcYgEV VZ0kxgjulVut
qPnzOpQEn3J1Zel6AB15HaqnPL6eDP40yoIbKIhQ0YTvDL6JzuObKcK30Dq+ lfr5Nqf+DyK0
nISgo+OOUa2CjguFwjgVdNw0GjKSoONB8BmmAoyb5tJEp3zYJL/Cq0psE49F GGDIIqWChIaS
IsbjMFZSUP/LqlFYZc2Nwpwl0/GQ6ckI91ZV/W+MSyW21pZpa3AvfZppYZ0t nfl1tnBuaBsi
uYmFkqu1JFerEiY+tgCf2nlod21tToa1A2SobuZ8O2R4B43lz8N2dtKZ/AVq 4ztpFX8ZRd1X
nJJqFipYSyZBqrdlMhYSn6i4LqdWNSZ8r+VqJDCxpQ4lHXZkYq0fpWp/WRXE 15JJLWRSh1Sn
3lFgjSXqoTbpyASuvbBu/8ySJlel64QddFZdpatRAiMqBYl6+5v0kiaj0qjU 5ULrqTQaw97a
gNeqIAaJZIsBK3x6iwttdqhgCt6J+W4I5h7UmvfCqO6j+byLFjJuCeifh/GL eC+YuN8xrhmo
TOuRnb2oVifDuBohtFpqUMalQ2R1yrgMGkPTVeZzo2hvV0aooYpcrNaVUAUq Vlknhpa0w4EB
HVuC1JD1RVyTWQp8P3Ye4r0A5T/h7kV14P1fUEsDBAoAAAAIAOiLfzzR3NkC Mw0AAIAhAABZ
AAAAV0VCLUlORi9jbGFzc2VzL2h1ZHNvbi9wbHVnaW5zL2J1Y2ttaW5zdGVy L0VjbGlwc2VC
dWNrbWluc3RlckJ1aWxkZXIkRGVzY3JpcHRvckltcGwuY2xhc3OtWAl8HFUZ /3/ZTWZ3M03S
TZM2Pbf35tzeLUlom6QNpCbpkR60RWSSTJNpNjvbmd2QgOCFJ+CBJ1VB8KgH alFIL6mgWBRv
URQV8Ea5DxEFpX5vdnayu9kkPfjll/fevve97333MQ+8dvwkgKXUJOFrPlyE r0s47EUz7pDw
DTF/08fDnT7chWEJR8R8VMIxH/JxXMIJHybheD6+hbvFcDIf38Y9YrjXBy++ 48N3cVLCfRK+
50MpTglU9/vwffxAQD8ghh9KaPHgynz8CD+W8BMf5uCnYviZBz+X8AsfHsQv ffgVHhKbv/bg
NxIe9iGI4+L3b8Xqdx78XsyPePCogHzMgz/48Ef8yYM/e/AXQchfffgbHvfg 74KAfwgunxAM
POlDLp4Sw9NieEYMzwrynvPBhecFTS9IeFHCP314Cf+S8LK4/28J/5HwCmFa Z7yrr1+LmDHV
aOFRCYeVmKZHTMLKva298W5Tj4Si4XgPg4RSYEON2e/VESZp6XiWjotnY1dY i5pqBo68ei2i
xdYSXMHynQR3k96tEgpbtYjaHu/vVI3tSmeYd/ytepcS3qkYmvhtb7pjvRq/ W7BBNbsMLRrT
jZb+aJggt0QiqtEUVkxT5fONZ0BWCpeNcS3crRoL0rEyrf4eNbZdMXjcwvTv 041+Ru4Plrfu
VwaUUDymhUOtmhljSG803hnWzF7VIDSN93osDV0oHfuWJBKB0VD3qYYa6VLP B+O2JBLGmN9t
8deZEOX0JM5+VkA4tGHkjEFztAWEKSlstvBLCguGzwocVk3BPGFWEpMFmYLI lo0UNfT9ahdD
zk5/s6HTjBlKV2xL4pxBPTYoi7lotJB9jkj4vDTdPoaiSRvZPx459cnDmGL2 maERgWeThrCE
MS+s5T/Ckgwq68fnUFzZMdaV81CuwOvt0HoiSixusAx2jbLR1+uVIj7JiCbL g+XnEAdmMKIx
Ig3jXD0BzrFjlLdLjwyoRkztJjSfjRDGQim49nfrTb1qV5/NysV6Pwu5J9iq Gz2hPr3XjPep
Ib4SDTOejsS8TT0QV9lsx4cxo8yuWleeZrPNLPWdSljrTvKUqxqGboiYaPET ViI9jMLQIj18
6DLUA4QFZ0KLADajhIVnRBS/O6CE48xpvprKd0GCCk0PNWtWtPBtHOxSo5bm JLwq4b+EknSB
7eRgwcccCwaSq6RId5gcuPX+fiXCCmsPju8/o/mfQHLuqBLrJUxOQgmKt/AW H80b96n6igqh
+G3jE2RBnTVR87bFIzGtX92pmVqnoMdQ+lU2u4ZIRI8lPSC7QhtE8BMJKmJz kR1sa1w1hhy8
Imizt23QzGhYGWpXhBKnJCNEujEJ79mn9VhBZN2Z2XdEjYXMfaH9gt9NHZvb N3daqirfQyCd
y5CxACS8xlnI9tZWtUfpGsoIAk3Bs44rWVKzW4ATVpxbOClWR78iwv5Zxzu3 YhicVN1hNcIT
tXAGcyJVBt9D58/3OUe6/Ih6hbVpFR7bz88E0nOnXWaJNC/yygYlpnDlppkN 0WhY60ok7ynB
FKu06jnLkKT9eqdI8cKTM88JyzL36isnTsMrR7008S1BygxzvLy1ZnzVjSV5 UQlf8vrIOms5
N7hEDEsJtVlU0hFTo2MWPEmlCZH5OvS40aWKGMq13Jh1dI2QKzvcudTgMlrZ ObDs7GUo42Kw
U9WcnePI2IQ3yERokyhHJhe5CTPHswKZcimPw8KIuzUYhjIkfI5pRxtHrTMv tNr1MUotiSSZ
POSVyUf5EskyTaICmQqpSKbJ5JeomMNH9sKU0HDe7YdMU6hExo34sESlMk2l aTKV0XSZZtBM
iWbJNJvmsOumlgFCcQGZ5lIBu8j2XjUgEm/gqiVXB7p11QxwYguog1a7UDTi dgnblWieTPNp
gUQLZcRokUyLBZZScVlLXFUC3ZrBoLoxRJiambeStkNBXC9TOVVwhElyL1Ml ricE0yjhwBtT
tAijtaFG0MtURdVcJy2vWSFRjUwhWmL9Wklose0nYNcwSeIGRG6vCTTFDdZd LDwU0CM8MIKa
wQBXNbxaGVAMNWDGo1FdhHtGu5SWSbRcphXEiAu5HgikmLVMq9Am4wa8X0h1 tUxrBF8XiKFW
DHViqMdOcXqhTGtpHQfObF7LvVmaLTcbqtoRG+KSI2HMEq2XqQG3ssqScApL dDDUZk1Jk8en
cfP4dn2mPTUhMFH8SfoW21XLZqew5HgjdgdDXC0OhDkEdiRmB0CiRq5rx2ji FogSLAXXpIzf
2bKO+DYR1hUuSovTsF5s/eBEmWyErEQ5NZgRgBNgdQm4hnCYG2jx8WB+lpdG lywF6TtsgEo3
E1KSejmlzPJodnfOTpPW+KV07f7Ru5xWexWzXR2MWR9jGJE7Yv1Irw3thzj1 ilCR0fvPCZZP
0P3PGOeY679RX1i2jXz26JqgGyh/HXpaluqIZJr0cJgRJ1J5HsucFUeoCrZm A6nbm10bblO7
UrUkyulIiulWfuAIFMwGn2WP+4OJ6wCOvoKdZIVPWBTM1oZkqfBLsgGysedZ 4dlMhtcYW0Ko
TTVNpUcV3qLwk3n77MUFWXBk4y7b+9PHbo24rs7KxbjNVL5mbhjJDYXC2zpN PRyPWX2eUGM0
qoresvqMJJRSpMb0xBaXTnofB6DgBJQUZeLiiom1Z8TMXZqgJKvk9yQ+qXRw Z71LN/rMqCIs
v3jkrZSOtTBjiz11IEGAuk0V9cyAvb0sy0t79kzUKpvKgPjEGmwR5iAxUYlO UawSjb+PV04n
703aH5uMV+2PxoYSHr03y9vnszMSFwVZnk4t0i3KXsKFo0Pp2MVxFi8rzLjN iuBexDTFVzSO
T82G3s/OMEZGwVI04yIAOWgUhSevGkUpyXMB/3MhyFVsO692MgTxPLOiGHQE ORWuu+G6C24x
596FvIphSHdYeDbzWIpcHh+BhIdQiIcxFY9iBh7DFt6VE3iwFdt5JuywcPMb 1AcXfLx3w1F4
iuEdhq/1BPJ3H4HcVnUCk3hRcAyFOdhVeQxFTFb1MUwm3ITLeOEn3ANvrbvM PYzi2tyy3GFM
qc0ry7NB1oiVBVNSK5VJ96L0Jswtk+5Baa2nzCMuTa31lnlPQa4q8yYeOXT6 vkOnb6k6zAS5
LKZqLZE8wSQ+CT+eQgBPow7PsMCexZvwHHrwPCJ4AVfgRbwZL+GdeBnvwSu4 Dq9ajO/jmxEW
xS5cAg9DFWA39sDLdxdhLy5lYbVgHd6Iy5DHOJt5/3IWYx2rQEEn3FiMbuvU JURki8+Hd6CL
9zkx4iqovMrhd8C0uWwcPYwjAdXrQGkMtd9SVh/vhdFvKzkEspSTW3En8g47 2swTm9xbjGgv
19FeBLp9+Q5+MofnDnH5FDaJ6eTNaKwQiyOY1sqz+xSmiIn35UqxOIqyXRWV rM/pBDaoY5iR
wzqamWpYDDWig9ksJVAuCsmDaeTDYpKxhArQTIVop8kWiaVMxjSsQtSSCxNk E7vPJj9xdsDi
1YBpG99aZiqPIT5W6Z91DLN58wTm7K4+gkDCqOYexEz/PGFZ7rsxf7eruuMo FoifR7HwsABY
JAAWjwEgcJ1AkE24XMCyt1T6q3gYhnjBxl4zxuWjCI0oYy07FGgmvDQLxTQb M2gO5lAANTQX
K2ge6mk+1tMCbKaF2EGLMMTdxNVUzs1DBW6kKktC29j+5qAEMcSZ6/XO6mpn xXKwpSZWA2yt
ZK0GMcR0eNn+rmQ4F4rZsq5ia3fzXWEoObgGb2HYtyblasG7eV7oyLXav2QY Sw/CX+1fZi28
/uWj2PSLS7SU2VzGLC7HXFptkV6RQOYQt9AhbqFD3Ey8zSIunaS3M6lui6Sr eBZYSlj8K9qr
74cknq6ucrNmVo7YWoIEtgtax2Q0YBI1ppBQ4pBQYvknWSshlRyWXxGuZf93 OTaXgHoXrwRR
bp6vsT3w3RwjgEkiur7X8qj3WeN1uN72q2rbKV3+VZkuuSnFJV2OS3K/Zcu+ jXdFtMhne1td
UVl1BGtud1D4hLfSFrhpq4UmkAB12Mp3JJuPD+CDDJ0k/UO85p7afuRxdkkP z1tFrK48eQQX
tFW2V59c5Xatyi3JLXHfhjXVJbnLavNOwLW7LG8YtWKoE0O9GC48irVHsK5W qiqTEpH32lw6
dPr+lMg7XXgm7YKPLkGAdrN970ELrzfTpY49r2fFfwQfZWICKGdL/TjfkdGE T3Ayc7E+1nEW
OMjkF6Oeo+hBy8a3OsxutZIelwacDD/pRFHZ2TngRMxP8R73kTbzrbaECyo5 LVYdw3oXh6+G
TD11pQi4wHmzwBFwAW7JEDDhM7jVfuNynkVgnV6MRrbYpoOYVIwNYnUTJPch uF23O5JKvKc5
cVDILvnedNyGz/L5iE2Knc/xKsHZ59ltvoBDttk126/6KipFNGYDGknvBYIT irBn6OwZB1Je
8zmv+ViiLaCiBpbWF21ONtrSktgWh7ExQ0x4MEVMkoNIwpdsMUn4coaYXDbp X0HCrr/KwV44
bg6TT2wWZQzzP5xG2f8BUEsDBAoAAAAIAOiLfzzKjkjN4QEAAGEDAABMAAAA V0VCLUlORi9j
bGFzc2VzL2h1ZHNvbi9wbHVnaW5zL2J1Y2ttaW5zdGVyL3V0aWwvUmVhZERl bGVnYXRpbmdU
ZXh0RmlsZS5jbGFzc51TTW/TQBB9G5u6SZ2UNkmhH5S2KVISEBYXhATiwoeE ZAGiIYfenGRJ
tzh25Q+UvwJ/gEsPIBUqceAIEj+q6lvHLaXKicPOzryZfW9mZP85+fETwD3c KsLCSolmtYgZ
rGnvhjbrFm5a2BCwI+kNnkpfDr1ECiy5e+kgDgMnTZTvdOQ4ea58+VBg5pEK VPJYwGlOL5mO
troC5pNwQOp5VwXyZTrqyajj9Xwii27Y9/yuFykd56CZ7KlY4MEZ34GfDlUQ O720/35EJ5HR
ROPN38ZVMLzQqjnyVMBLTyZQa7bcfe+D5/heMHR2kojFLCo9G/flQaLCILaw yfnkWMUJhY1m
a5fpnTCN+lIzCqxOl7qraW1soWGjhG0bsyjaWMI1G4uoCtz/vwnY8rRVClSz MVTovHh13jzH
fJclK+5ZNt/CQvNfpNXFJj8Bi9+FQEH3Ss+gX8Icrc2oQ9zgXWnfPoI4RqF9 5xuMr0QKKGs8
y5b5tkI7TwtsTF4wugpk3gKZReZpjQJ9boO3VnjNSOfW20cwfqGur+8wP2Ju 4l350j6muaRY
JWcNy6hnivaEIVes8ZhE6jxcfT7J21ynoWl/Y5as5qE2n1A+17TMzzCNw0ti K/pnIcnaBbFG
LiZwPatePgVQSwMECgAAAAgA6It/PN6Itk8+BAAAZwsAAGwAAABXRUItSU5G L2NsYXNzZXMv
aHVkc29uL3BsdWdpbnMvYnVja21pbnN0ZXIvQnVja21pbnN0ZXJJbnN0YWxs YXRpb24kQnVj
a21pbnN0ZXJJbnN0YWxsZXIkRGVzY3JpcHRvckltcGwuY2xhc3O1Vm1PG0cQ fhYbDh8HTgyh
QElLW9MaKFyANGkCIeU1IXWhjQlNSt+O88YsvRfr7pyGj/0z7Zd+SKUqQY0U 9Vul/qiqs+cz
PrBBEAVL3r3dnXnmmdnZ2f33v79eAZgEV5HG9XZ8quCGgpsqujCrIolbKj7E nGxuq/gM8woW
VSxjJQUVd1TcxaqCewryDG2zwhHBHEMiN7LJkFx0i5whnRcOX6vY29zbMLYt msnkXdOwNg1P
yHE0mQx2hK/gC4aehYr5ky0cP+DeKrWGZXGPQVt1HO4tWobvc5+ha4n7pifK geut2mWL4WF+
p1L0XUcvW5USaevbdRi9EdIIhOtkm5nKHkaeIVslHiwJv2wZe2uGTWR7ciP5 XeOJoVuGU9IL
gSecEslpwp8vly1hVl3qycWEQuIzI98wtAeua23slUniYoMAQ+/h6JBcFKHp o8KzYzWXJaKv
b1Ab925mjuBSBVFyjKDiEcK1BkKngJCUM6bHjYAvuT87lmsUJR8F6+RwfIZh nMISwdm095Ze
Wy5w74kweTYuTtzSFNeaNZqhXc3UAlsJhKXnhR+QGCsy9OUdHuj+Y31Xot8r rK+tb+9yUy6r
y09NXpZsKX++VPAVQ0cMleFuA+hRt2u8VjzXfuBZ9VSI4YTR/OWUeodTaPZN pWbIQS24Fc/k
K0L6NniM+oR0mKH/fsUJhM03hS/Ih3nHcYNwXca6xmr5acAdX+62hgu4yDAW IQ09Jr+Glk1L
lH0+4XqlIcMpDi1aLunZItiZMF2bYersztFpPZ/Dmp1kgIb7GJSuFDRs4IGG TXyt4KGGRxhV
QOm8cYJxUUVuRoIC2ISDnJY5xTBw/KKCLQ3f4jsN3+MHBT9qMLDNsHk+UVBg Mlx9nUxluPOG
KCmgUzty6mrA0B0eUeHqq+sHB5ph8sznlKFVlhWybufO60poLP7ywkuQXYbb uSarZyqLirxu
jICO7wBVrmPr3qV6TVt0iaUZnesUt8vBXjUlb7x2ptNF1Nwy3fOBu8AN2pxb uePYNV58sZkD
D7QYHSI+u3XSfp1Ml9Au1OMx73nGHiG2GX41DsO5rUYCTa6a4VOlG5Xdk/aT HlNd9JaSv1Yw
WVKpzdBIp57J2dEXYH/QRwu6qW2TkyyNHsjaFQrgEgaoZ3gbg5HyeKScyLQ8 O6KaiakmDlQv
4x2SkqoF6luo7xzrRuJXKMnfkEz8HgrXQfpCkN6qYAQiv97FEK2/d2BAzrxP Xx+EJLL0QhxG
LuJ4nUahzEskH42OPkfrC7QdZXs5xrbzgO0IRomOBClGbLNSfx/Kc7Tnx/6B so/UM3JA3UfH
31D/hLaPzjp2hkyDXUEHm0SaTaGbTcccykZ2OtCPMXxM9sZpJMlORI5M0qj6 NYXpsL+KTyLO
16jvo/9NKISXwFtI0Q73ElY/PYvX8BGNdXyOK9Snqe9PpiSb8KdiAUtI/Q9Q SwMECgAAAAgA
6It/PJHWAcCmAQAAzgMAAE8AAABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3Bs dWdpbnMvYnVj
a21pbnN0ZXIvaW5zdGFsbC9CdWNrbWluc3Rlckluc3RhbGxhYmxlLmNsYXNz rVNdTxNBFD23
3XZt2VIpKgqCUkuCfXDTR4PRKKSEZOMDUF58mraTMjKdaWZ3Mf1ZPhgTEvwB /ijj3VJAEkJM
w8PcO+fOuefe+fr95+wXgBYaZRSw7GOlBA/Pfaz6eOFjnbD8Ke2dDJWJE+n2 2AqtRVfLSMUJ
IdgzRrptLeJYxoTyvhzZWCXWjX3UCX5biiR1konuckVlxN0v0XHaj60JRzod sHjYva4Sqosy
4e2VG9dFtgiVK+FxZz8i1KKv4lSEWphBeJA4ZQZMyqmUUHynjEreE/Kbr48I 3rbtc2PVSBn5
OR12pTvM1DMF2xP6SDiV4WnQS44V9701e9vcRvnApq4n2ypTXLmd9iZrP8AC aoSd+zijAAEq
hLcza/l4RWhN0xNrdRzu2G9GW9FvOzvsOD0lS9f4J40wdwMdzr6Zu17gx9ll rx7nxn9tDuv8
Mwr8WfKg7Ex5RphHdeIfTj1lN8d2kdEH5HgGVJo/Qc38OXI/kP/OgRwesZ1n IbCghwcs9wSP
GQUXCYyWJrynE/uMGUCdmUUePkoc89iWUGY/x76ANbxE6S9QSwMECgAAAAgA 6It/PJD+8RRH
AQAAwAIAAFoAAABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVj a21pbnN0ZXIv
aW5zdGFsbC9CdWNrbWluc3Rlckluc3RhbGxhYmxlJFJlcG9zaXRvcnkuY2xh c3OtUk1LAzEQ
fenXtutqP/y2J8GDenDxKIqglUKhKFjpxVN2G9vUNFuyWcGf5Unw4A/wR4mz 20IvnqyXN/Mm
mZmXmXx9f3wCOEXTRR6bDrYd7DDkE6MYGt0xf+G+4nro96yRenjOUH4S3CZG xA52GZz2jDF4
Ha2FaSkexyJmuHnsjpJBHGl/qpKh1LEfJOHzhBwrjJ8arpR/vYh1ZiEeKHEw L0rdShdSS3tJ
ig6P+gyFVjSgXtWu1OI2mQTCPKQJqdQo5KrPjUz5PFiwI0lS3HsxjWJpI/PK 0F5C1qIOKXN7
UWJC0ZZpp+bvGSfp/DyswHOwRzP5j9YMtcVW7oKxCC3D1dKzZjj7cw3sI0e/ B4Q0dBTJo83B
zSxLn0+4SszPOFA8fgd7yxLWCEtZsI4qoTe7gBoa2fl6hhuokG2Q52ALZWI5 snVUfgBQSwME
CgAAAAgA6It/PFdmHZ0aAQAAAwIAAFcAAABXRUItSU5GL2NsYXNzZXMvaHVk c29uL3BsdWdp
bnMvYnVja21pbnN0ZXIvaW5zdGFsbC9CdWNrbWluc3Rlckluc3RhbGxhYmxl JEZlYXR1cmUu
Y2xhc3OlUU1Lw0AQfZumiY3R1vpx8SR4UA8uHkURNFAoBD1Uet8kS7p1u5FN 4v/yJHjwB/ij
xEkM9OJJWXgz8+bNx+5+fr1/ALjAQYAednzs+thjcFTGMI6X4kVwLUzOZ5VV Jr9i8K6VUdUN
Q+/kdM7gRkUmGYaxMvK+XiXSPopEy6a4SIWeC6uauCPdaqFKBn8iRVVbIsKp MdJGWpSlpEQU
L+qsLAx/1nWuTMmTOn1akVNJyxsjtOZ3a276QzXNj7uetGIwK2qbyolqRh7+ Lj9vrhbCg+9j
n+H233MZRuvXekiWMq0YLv/cFkdw6EMARsdFv/NoX8INingbA/2zN7BXchwM CL2WDBG02Aqw
ie02P2xxhC2yAeUcjEkz+AZQSwMECgAAAAgA6It/PKZ04dwuAQAAhgIAAGoA AABXRUItSU5G
L2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVja21pbnN0ZXIvaW5zdGFsbC9C dWNrbWluc3Rl
ckluc3RhbGxhYmxlJEJ1Y2ttaW5zdGVySW5zdGFsbGFibGVMaXN0LmNsYXNz tVJNS8NAEH3b
pI2J0daqtehJ8KA9GDxKiwcLQiHowZKLp026tFu3m5IP/5cHEQT9Af4ocZIW 9FAvBRmYj7eP
mTfMfn69fQC4QNtBFbsW9myY2LfQsnDA4IZ59DiTOs1EkjL0HvxJPkpj7c1V PibY+/XuFYEr
5V3/YIMFxEMlugy1ntQyu2IwTs8CBrMfjwRD3Zda3OazUCTDgsjQ9OOIq4An sqiXoJlNJEk4
XN3dl2lGcgdai6SveJoK4gbrqz35ewwt4tzHeRKJG1kIO1pNPZ/yJ+5iAzbD 5do6XNRgMQz/
YxGGRqHRU1yPvbtwKqIMx3T9Kn0IRkaTlxktQd6hqosKZcBW5xWsY7yj8gLj mYAKNsk7FIEW
NWnDpcxdkMkaJWen9E3USy4dlapt2N9QSwMECgAAAAgA6It/PNnMB49yDAAA Zx0AAF0AAABX
RUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVja21pbnN0ZXIvQnVj a21pbnN0ZXJJ
bnN0YWxsYXRpb24kQnVja21pbnN0ZXJJbnN0YWxsZXIuY2xhc3PFWQl4FOUZ fv9kd2d3MwkQ
CLCAsEDUHIRVWhA2QMthJDZyQwSrddidJAO7O9vZWQ6ttYfUVq1Ha1U8KVaw ahUqJiAVb2w9
a0uttdrWqtVaz6q1VQt9/9nNZpMsQYTn6cOTmf/4/u96v+Of5dF9d+8GcLwI +TETV/owA1fJ
0QYvrvbjGlzr58p1Cq6Xkxu82CjnPy7BJtzoxU/8uAmb5coWP27GT+XoFvm4 VU5v8+JnCm73
YxDu8EHBVh++hm1y+nMv7pST7V7c5UMK7XKxw4sdUshOBXfL9y4Fv/BjDO7w 4h4Fu+XSvX7c
h/v9eAAPSg0eUvCwgj1y5xE/avFLP2rwKwWP+hHCHXLymB+P4wn5eLIET+HX 8vF0CX6D3/qx
F7/z4xn83o9n8Qf5eE4+/igfzyt4wYs/Sa3+7Mc0XKngRQV/FRg0Mx1ZFTcS KVu3GvnUYjHd
ElAbEwndmhXTUik9peAlgbLZeipiGUnbtBrjyZiAJ52MarYuIJZzMtVIGPZ0 gcFVTSu11Voo
piVaQ4tsy0i01i+vXirgmmVGSdyvyUjoc9PxFbq1WFsR40p5kxnRYks1y5Dz 7KLLbjNSAo1N
beloykyEkrF0K5UMrejSNtRbc802zERlIYvqBYqMqBTWSzuBwMJ0wjbi+lIj ZVD6jETCtB1W
1KCmybRaQ6vMtlR6lR4ityS5hWZrtjbTTCeis0hkW+kIvUJGA1uMRHR+OhZb kpxtWLpcXSdQ
WdVpRYMR0+drdlt9da8VmmyZpi0woMCW/8S1ET2Z1chrpJZkPV9cVU3fD0zq VotpxfOdIHBm
TqptmrFUaDGf+RT1ndtx4hILzeWzx9JiLbWqyaAbGQkFNR5gZN0bbdA1O23p KYmv4+C0bcRC
p2hJUnkjZjyuJaLc7J+3KTlzt1Rfq0fStkS92aDaZV3zJQljrYwEKi4w6iDW kDDhBNjAAnbR
UzGzVWB4HwZSUcl6jhknk7K8OCOSZC7HAvV9xWPWG4XiktZQwODukb4u2Rnt Dd2dNrV3kOYR
LNLtAgTT+Y+h1sPBBQkFhq6xDFvP999s3daMGCE6p+rQ4qJXWByGh2SZUFoy oaTgZU6ycSUw
67OzrcwykSGiWValwOzTjgy3mJ4gN9Eoa0ulTGA9aSp4hfm6kKOUkUn/hsMQ 1sWH8k46HLW7
cRL0aDAvNBoTpLbSSVuP5ioNyXy5/GaN7BVJM9NGLOokToWla9HOUptXC6b1 Lnx9VpielUOJ
66mU1kplPVKC7EtDM0SGSTtbWnRLjy50dqRRlFictlgrvC0FyxETh2RjP0Uq 0fRFRmsiG3v2
4Zjx2XM5Wxn1RU7XFVh42JnZo/jKdPPZmtWq206NE/xrOcJCClonBfsXmWkr ostzAiMO0MrH
y8MqGvE3FSdhjorT8GWBkrywV/CqitfwdxWv402BKZ85QVS8BfbSfnknxq/Q bBXLsFzB2yre
wbtMmlltemQVrQiy4QbzOAUzLZlXpX+qeE/qex7WK3hfxQf4l4pLcZmKJL6q 4kP8m7eQ8QU6
55ADJJi0/z8qPsK5Ki7AAhUf4xOC5VdxIdZwUKdivlz+L/YJuJcsbqibrGI/ NzCy7wxXhZAm
D+hCbI6WamPMCmw6+7hzgkYqGDdSKWoyPriY17FgC8EKRswEW0UiFbTb9KCR kBcPB6vgmjYj
0hbsTL1gm7ZaD2oxmbjrgit0PRHM2cyRbQbzPU3+etaFwTVGLBbkDYyHglok krYyi3abmbaD
dqce43mb6DJv3oqVvG2pokgUK8KlCjf2KcKjCkV4VeETfvbewnWDha1zozGR TNv0vK7FM3uq
KBEqvS9K5aOsl6eYvKroJyX1V8UAUa6KgWKQIipUMVgMUcVQEVDEMFUMFyMU cZQqRopRigiq
YrQYq4hKVRwtjlHFsaJKFdWiRhW1IsDLS06ZeTmYWPRmZW5QQUunbxN0IB1p p1NBxoIYp4g6
9oYjdE8WOLrbPWu2uSYRM7Vog2XGl1ixPLqlR0hiZc/vihmH3ZvZ4Y9Eo2Rj K/AxI4tXvx5V
j3kXaWOy0nuFThS4Opex6OZJVQTjuSRvQWBiVXXTp4Kisvsl06OvZd1lPQkc sGqz7FN8k9na
KsdDqqpzTXU+Fc7mQH1eNOYtsysn5SzGuJzYh5ezl/5QNnTlV1+2nrH8RcjJ 1jP53tnerqk6
jJvjQRr0QbtY95tHde/PlIEZlbMyO3W+6P+ocwEl+TnI4FStzgg2ZFvxaMmk nmBo1hUMzQPf
6vg5lFkSGFTVm5AUbuczQuDYApwLJ46HZujyiNs2lyzkxbl/J+eEboe4Qq5q /pzhxlDN5Fim
Qdr6Wjt0SuZi2OA0H7JtyQ6mFNDktKaefaKA2dIaNkiT0Vl9YD91pkKztNty vtnZKbqnUF4b
IUFNVcGNwt4Z2EWcvdXKVa+UIfOnW8frhMbPgLLsVLMhPVSwXrHF+1LpFans gYqqxoLml3a7
lTKYtGi0B8dO75GjK2WclfkBorHbUef2UExDBSYXONo3FNklNtpemcCKmcnA Ji2diLTJKjK+
qs/syO510td3Ve0uFp6YM2TpnW+ZkUXSk3J5VFWv45V5BGQ1vI9tOicSl792 hKp63bgPwtaT
sqOm9F34kGzrwaU4uYbIHdfHr04HOOhaacqfYEYUipCuujDh0Bu/wPGH3Mow GjMwE+A9tkhe
/jlSOG7EyZx/ibMFfBfzXVJT2wFRM+IuFG3jtAhNfJY5W+fDje/Cj+/hFM6C GXLMxTzAGfHe
TJZyJAUUYSHHHq4s4tuFxViSFTXJUYK8xdacBI9z8mKH8+DMbo5zEZaimfun OnRFmEbZQn5J
8Cn5hSCc0+6a7Si6rQfLHzgs1QxBlqWQXz4ZZcTNXC3h2uaa2nF1HSgOuwKu clc73GF3TTs8
90EJewLudng3IBpwl/vkjsKBQ+INeLlzNUoCikMxk0f8GzC5bidK2JjVdpTW BNxkWxb2BTwB
17i6gG8H+oX9NRy5Av4O9Jcjd8DTgQEB99YMzQ6Uh5UMhdKTgpoWO9adjHI+ r4IPGzi6GsNx
DcbiWozD9ZiIG3AiNpLuRjruJpyJLYjjFqzBrfgmbufH1J24BHfxZDspOhwP nUUfnckoOR1n
kGccg/AVzv3kdyo0clHIdR5WcOSV3sqBsxkRRB3vboaOFge6zWhFG/X04ToY POGihpdjJUdu
6nkhViFGdC7BEEeGQmmZcMrIT+Tkm5SfoTJJlQ9/kfz8yyFYjH7c21hXPtDB bRcGLetABXFz
bcdgoqXsnuQtnuSr8FV4N0ELKBW+CWE/fe3fjiHtGNoc8JQHnDcXhoVLAiW7 J6nFk0orSivU
TagNlFSUTgiXkWh4hjhQth0j8s+dVyq27N97no/P6yVU7TiqfGQ7Rm0h7ooM ntHNAeXebfTS
elxGTwSzEdqAAXzupkfv4+h+jMcDmIIHmakPEYWH6c09tPIRrOP8XO6vx2M8 /xQ5PI4r8ATR
fpJIP+3gtwn9eWY4LKSZrnNwAlYT7xLuTcBacpCftSGivA6llLMAZ+Pr9O5Q eno1eSs4iohJ
Oi+10x06H2X48A1GjCK9m0N8o4OzcEYS5yJnJNEtdkYSXRf5XEUsJeIDiOG3 8G1i14lgkBgW
yU96npAI7uWqj3vP78IYIjd2bm0GSaaik15V5ZVhd8DtugdHLyuWa8e049hF O1AVdo8LuHei
ugjNdVt3oWbZLtQukwTjykd2gHk3PuwWYY8IK7sQIufjmLGE4/hlYc8ezMkg OmEDBgW8AQ9P
fW4nPk9WW/a/EFD2YHTAuxMTBfNpSF1AkZNJxWjuYuQJK1v23/kpKeu6MvcM RjTwF3roRWL2
EjF4GSPwCnF6FfV4jb55ncXyDfruTZa4t5hfbzMn3iE677L0vke/vs+s/QC3 4UPm8UeMmY8Z
C5/gGezDc9jvREMLsR3BbPoOkXZLz+bQe95BSjijDHpe7CU+Z1C7/oyr0518 XcxCfz7/3Jyt
p9QFRGg5qS7gSKFG65jFF/FkPFuuMzwS5JHZ+z5X8vP1YqcqX8K/SxnBDuqs PS7uA1Nrx7Xj
hHZMlsBN4Thc1476dkyd5K5wb8CoXZi2LJvS5dOZbhVE8AtMsQ588d5tOa+W kxuEB8OEF6OE
D/VCdTwxPSMjZ//UXPROzUXvVHaJTPROdSqSC8MwBj+kJW7HQjVLL+uQq4Bd l/PvR87oCszm
ewL3ZxDhWYzqEzlqQAAp+s2G/E9NBefw/Q924zf4fhbPiDEY8D9QSwMECgAA AAgA6It/PLc7
mJihAAAALgEAAFkAAABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMv YnVja21pbnN0
ZXIvRWNsaXBzZUJ1Y2ttaW5zdGVyQnVpbGRlci9jb25maWdfZGUucHJvcGVy dGllc32MvQ7C
MAyE9z6FXyQDbYXEnxhAZckSBau1mjhRfhh4eoIitXRhse/O37nNerbEMWGQ cChbGaMSORbt
etkcoGl/O2c3loEvNJtGiWsKTeesVfyM4lSFi81xuEjYhTFb5BRFsYvDppsU jyjhjtZL6CmI
r4IBwxtJT0wRFHsVI/LCXnPyOVW66v/8w4U5eqVRLGqFbjqQL8/2ZFBUA71K SPABUEsDBAoA
AAAIAOiLfzzFLpSDDwAAAA0AAABuAAAAV0VCLUlORi9jbGFzc2VzL2h1ZHNv bi9wbHVnaW5z
L2J1Y2ttaW5zdGVyL0VjbGlwc2VCdWNrbWluc3RlckJ1aWxkZXIvRGVzY3Jp cHRvckltcGwv
ZG9DaGVja1VzZXJDb21tYW5kLnN0YXBsZXIrKMrPSk0u0SlLzClNBQBQSwME CgAAAAgA6It/
PKqdpoGqAwAA4QwAAFEAAABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdp bnMvYnVja21p
bnN0ZXIvRWNsaXBzZUJ1Y2ttaW5zdGVyQnVpbGRlci9jb25maWcuamVsbHm9 V9tu2zgQfXa+
Yip00QRYW++GFaDbZLFdpNuiSZpnWhrJdClSIKlcUOTfO7zIlh3FsbNFnyKS M2fOOTMSndly
ukQhHuC+FtJMl1nil9NcaUziprHdrrGsEai7g6LbL7DkchUvsiQVfJ4K9qBa 2+3auLtoC6Nk
t1vG3VLpOjk9Api9GY/pD8DVghsI3EyueWOB1q3BAigWGtTjRqsl5hZyJUte tZpZruTkyGdf
IkIl1JyJScBwSQwqlKiZgIKbvDWG4oHNieRGoQkhjMcdmXKK0uoHsNwKzJLz XPDGIPyjahK8
QNFkydsfWil7/fXiMW1EW3GZztv8e82lsahTF9NxjdkuebKwtUhCnZ5sgA8a mUUDTILFewsl
R1GAXTALZqHuDD0i3DLRIqjSLxJcwyZApcgd+zCJeDcLlGDaec2txeJP4Bbu uBAwR2iYcYZa
5WGo5xpNo2TBZeVcNVa3uXVuM81qJDEBs0+6nDqSc3UfeGabXNLTo9EsjRbG tNmWo29//PHX
2i74SH+YEL6Zj0ksZFD4TgsinCUGrSWKYy4bN1+SuK3qTngv/z86iRCBrWrc dnAvS5LT4zMs
WSvsySwNR500Cl9OaWbOWb6gcJ0lDjch87A2jnOBYViUnvSa3SdvHlelvehY O0jBwoG4pImn
n3naMsdJhbaPcnziAwirF/7oPA14K7rpim/0LA2V/Bx3LXCLIxhuwhXTVBu+ UF33Nr7Ge+sh
OoRN97fstM2wmZsQe3homwEHrzZQ+h7G8P/r4AtDfKEquMBbFK9xUajK58bU 0Vp3nFsuS5U8
GSSvnZvLuH38zoW9OyEGH+kBeqO+qfwpPmqt9B4FfJyvcO6eXga+Y1qS7D2g Y6QHvwnPL8MX
OG/3AfdxHvrMPfWAwyTs7v5A6z+oumayoGk9+EboUsN18Csugzwi/tabIFwD jNhuDfOaTWxS
ryf0inbyj6kb7raALbOH3L4MPwf+5oJe6e7aoV8GOoId0AT6EWBVHfP6LVhr cldb1LRRY1jP
9TpklyRDnXeDG0W9L24dQAGf/RiaZOUqiycrVqOh8VswWSHcKP3dNCzHQ8Yw OLBK7XswGvUs
WDuwin2mpdf9mJ4Jo9GWD6MdWj63lr6McMb14WJC7h5KQuAOGSFglwbaGv4i BBlXWDevE+Ey
95DgwnYIcMfP03fLp9T//fYJ3uuqrengoC/aUs2/faJMM8h74NvgPybPfRm+ +MNd3rvV+v1w
q/hauUX8v+b0J1BLAwQKAAAACADoi388P2wT3X0AAACWAAAATAAAAFdFQi1J TkYvY2xhc3Nl
cy9odWRzb24vcGx1Z2lucy9idWNrbWluc3Rlci9FY2xpcHNlQnVja21pbnN0 ZXJCdWlsZGVy
LnN0YXBsZXIlzD0LwjAQgOG9vyLgmiGtiFpwKm5+QQvORzxLMZcLl4u/3xK3 Z3h5N2OJ5gpi
uoNp9/3u2G+dGc7jZDrXusZzzCrFK8tpWQkhgC4cb0BoPRNBfGUbeL7gF4NN IEDZKsiM+ljT
NwvVtmSUCSlV3IumopXD/1H9ZPnkBB6bH1BLAwQKAAAACADoi388v56UhNoC AAA0BwAAbgAA
AFdFQi1JTkYvY2xhc3Nlcy9odWRzb24vcGx1Z2lucy9idWNrbWluc3Rlci9C dWNrbWluc3Rl
ckluc3RhbGxhdGlvbiRCdWNrbWluc3Rlckluc3RhbGxlciREZXNjcmlwdG9y SW1wbCQxLmNs
YXNztVXrThNREP4OtF26XUq5oxZFqNiWywIqXkBRKJeaogkQIv5btidlcbvb 7AV5LP2hNZL4
AD6Ucc62CIWCMbFNenZmdma+78yZOfvz1/cfAGbxOopOZGTEkRXLhIRJCVMy pqGKZaYDszLC
mJMRwgMJD2XE8EjCvIQnDBHvwHBTMxIWGPqWff1D2bBcjzt5WjXT5A6Dkrcs 7qyYmutyV8Ii
QzzHXd0xKp7t5MsVk+Fd4cAvuralVky/RAnU/bNM6uWsmmfYVqoZWqoxM5GK LBqW4b1gKKdb
BVI41I401dSskrrtOYZVWsjsMoRW7CJn6CoYFn/jl/e5s6Ptm2TpKdi6Zu5q jiH0ujEk6sgA
hvctopmapWq0Hc8IApcIM8RK3MtpnrZmCDpD6cwpDd8zTHWHH3viDTnKfqWo ebzmN3CVl+K7
3Hl7xB3HEFWQt23f0etBySt2MS1oUcVWLd20XaK1yb0Du6jgOV4o6EK/ggEs KRjBXWq2ZsCE
G2zNsFWhSnip4BWWFawgx5AWnFZsy+OW11DVc/L0ISUVOKtiWWOYv+Y0Auwt rhVz3OQl2oNV
OmUiotepsVt1lhI2GDL17GXqNFPN2R8t09aK29w5MnSeOtVrDaacVyXkGdb/ EzeG3dbskjpV
dzj1WuNOps568+8bp1bsTzcf0N6GJBuBUpuDgJClE9bgRayamxgD8tuybS9n UAES5Ha+8ej9
WLrR0pxD9wUvYVPTzYequVVEJK8rB8Pcvx8PzVgnfQvoPkokxOSR1Eb/AQzS DTVE0hLp7fSM
ZSe+gGUnq2j7HDjdoDUCcZMN42YQIgJjuIVhIJBu4w7ZmBjjejKTIkSy8WwV 7YUThPZOEN77
hshXSD0dVUSrkDdPENubIBzl0x+cuIhiowizMSTZeIA3UstUxwsTxijGCCcJ GSmSBO17QYZx
3KdnCL1Io4ekUZITeIZuRMmWQB9hdKL2i+MxniL6G1BLAwQKAAAACADoi388 cWrWG0cFAABx
DQAASAAAAFdFQi1JTkYvY2xhc3Nlcy9odWRzb24vcGx1Z2lucy9idWNrbWlu c3Rlci9CdWNr
bWluc3Rlckluc3RhbGxhdGlvbi5jbGFzc7VWW1cbVRT+TjJhIB0oAkXTK5da Q4BOqdUqQSrX
FptSLJQWWq1DchqmTGbGuSAs/4Pv+gd86YOuZWEtu5bP6o9yuc/JJCRpCgtc vpyzZ5999uXb
lzN///P7HwDGsJtEDxbboOC+WJZUfJmk/YFYlpNYwUNBrSbxCI8FtSaWdRVP ktDwtBVfif1r
sTxrxTfi0BDLhoq8ioIKruI5Q890mN8qmbYfcG+BVsOyuMegLdg292Ysw/e5 r6LI0DHL/bxn
uoHjLZRci0Hd5p5vOjZDV+6FsW3olmEX9eXAM+1ilqHFNTyj5BMxYdpmMMnw JP2m3H/hhIFp
6TnTD7JDqwzKjFPgDKdzps0Xw9IG91aMDYsL75y8Ya0anim+I6YSbJrk243c ZljwHVt3rbBI
IOgbB2jobyJjBBQvxabYRkko2XTElnQ9x+VeYHLS2NnoG0NvvQO7bsWJaw2y ExVvAsexfH2F
1qWy6t2JzGR2knS1LZtF2whCj65//3/heaQfAu/Ug9AOzBJfNX2TopmybSeQ +BAImZzjFfUt
Z9MPt7hO0LlUVPqsERjTTmgXZkgo8MI8lZIIqciDpahWetJDzWopSSKrlWrr eO54c/a26Tl2
idsBw3y64i+xCWY/O3SytJ7itWo7G7VSyZPpRVlmharNEn1buuBm61krhr8l 0OTUSCf1SLGl
te4mxhjilkN9ee4Qq4Tc3E6euzItKjZVmNSPfIfOCex4emidgdEQ6CiDbjr6 vGkJ1a3Cvd1Z
kyZBO9/h+TAQFfvIFPAffD+0zR3qobfDX3apJlnLLs+bz808mYjtXGPInRRG 3zK2uS/l63SO
Mfz1ZvXWoXqkcxMnydVk9hDXTqiR0rfshF6ei6wwnH+L5FWRPA2X8ELDeVzQ cBEXGK4f36SG
LYxpsDCmoqTBhqPBxbcqPA0+AmGiT0OIbXofagtGHHxH7VNjQrB2NHyOKRrJ NfyrGwbp+RA3
NNzEJwwXDs0VQ99RyWI4+3bcGW4fH4XLzV/EqRNoanwyuyuoLdyv9iXDxYOJ t2CTCi90A16o
Ebh5jEFf/yiqNDgX5VslqDvyueqo71Y5EFzDLjBcaWKn6TxuFyO75tG7lK42 prRfjntDzIjo
DTx3yDF5EDhloqsy/2vfTy3wDJuyG/B5hxIxfeyZ0SSCM81CJcAG0/WjsJkU +uk3qgcxnEEv
rTHRdPTHFhN9R3srmGgUxEkO+IFkW2jvyQyPpBL7YJnRV4hlUsorxH8lfhwD tHaRFDBBdz9D
OybRjVsYJM5k+S4u431AUlfIBpPUB0TFJCXsxyUlPFAklcYQEsgQrUXyaQwT Z0R6OoqrtLfQ
iU47/YnQ/yaT/uq0C/lE5jfEf5HCA5EoMC2dKitMRE7RpGl6OdZ4eb7pZRoF 0eVHUGU8g6+h
rGX2kBimpWUPqlAmvKHP1j207SPZqPoLqbq3fL0K1iA+wsfSIxo1dCaMPCMj Aqr+ihFKyx5O
HW1iSZroK1+umujHpxiX5/3IUv5ilD9xI0aZu0V8mn9RdH9GdbAkgsq9hrY2 vI/2e4IY6erY
x+nF0T10/oRE/KXgjXa9Q7xxpUyL8/FESpESp1IJ2n+EqvwMJf6y6ucAVQ/w kLBdRQehmcJj
8neN+OuU7Sfk59OamlqKYkjgrqwkmguU3mnMkLYUATZLVJzuDWCOKIVu91IG Z5DonKKc3Y6i
Gpf1TxFnhvfQ1YjZ9Zq0tFQxa8EdkRbScxMLUVrmyJZAVpXp6G6uqAy+WlWk kqIy+CpVQCP4
8ajU7yIn93sUlmi0GN6lcN5DG87Sfg5t/wJQSwMECgAAAAgA6It/PF8MzwBP AAAATwAAAEoA
AABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVja21pbnN0ZXIv QnVja21pbnN0
ZXJJbnN0YWxsYXRpb24uc3RhcGxlclMOT01R8E0sUjA2VDA0tzIytTI1U3B2 DQ5RMDIwNOBK
zs8rLikqTS7JL7LNS8xN1cnIBxJlqUXFmfl5OgWJRYm5xToFRfkFqUUlmanF XABQSwMECgAA
AAgA6It/PNljiDhEAAAARAAAAEYAAABXRUItSU5GL2NsYXNzZXMvaHVkc29u L3BsdWdpbnMv
YnVja21pbnN0ZXIvRWNsaXBzZUluc3RhbGxhdGlvbi5zdGFwbGVyUw4uzVPw TSxSMLJQMDS3
MrW0MjZQcHYNDlEwMjA04ErOzysuKSpNLskvss1LzE3VKUstKs7Mz9PJyAdy ChKLEnOLuQBQ
SwMECgAAAAgA6It/PN47azNSAwAAqQgAAFcAAABXRUItSU5GL2NsYXNzZXMv aHVkc29uL3Bs
dWdpbnMvYnVja21pbnN0ZXIvQnVja21pbnN0ZXJJbnN0YWxsYXRpb24kRGVz Y3JpcHRvcklt
cGwuY2xhc3OlVVtPE0EU/oZWlq5bKAVFxQsCarm54A2lgEK5WK2YCCFRH3Qp Yxnc7jZ7MWLi
g/9IX5BoYnz2RxnPLFu6tqCxNuk5M7Pf+c7Zc5n98fPLNwATWFHRgatt0BVM qIjhuoobuKni
FiYV3JF6SoWCrBTTCgZVtGNGilkFdxXcY2idFpbwZhlimaF1hnjO3uQMHQVh 8RW/vMGdNWPD
pJN0wS4a5rrhCLkPD+PelnAZ2he4W3RExbOdfLliMmh5y+JOzjRcl9PzXGHL 33RtS6+YfklY
rr7hF1+XaeFxR5+vrfMkDdM0PGFbg79zZslLiXsLwq2Yxs6KUSbv3Zmhwrbx xtBNwyrpq54j
rBLhuiWOvzJ80wsJuUNBpKto3xOmXhCuR9jEqihZhuc7RDfRAJgeqQbu2bbp 6mskDyizs2Sf
Il/RqMnPZGboeRPvK8ncBrLbmaa4ZCWT4neqm01GNVALoSELNW8tb8cZ+v6G ZOiPZOdI0Goj
otYN0828hqyVumr7TpEvCdm5Z49AXpUdwHD6iW95oszXhSuo0+csy/aqiUxX A1h863HLlfQa
UuhkOB4hVTDHsNxE3zeec4ea+rBj6XZeQU7DAhYVLGlYxn0FeZq4PzheLJqi 4vII4bwvzE3u
1I2chgd4qKGAPg2P0K/hohQX0Mcw99/zzND7hxozXPt3DwwnM433wTPZnSdq c52zKXPFsJRJ
lyAm92xLjjvDYJTg8cY2AbOH3BpdYXBluitN/X6woepX7wKrSA3WQ7fJITCy vtFMbchpcK1V
MzS/s7ZTITej0YiDCzdb57dmQ757ieSI9FE6et2jn1L12+lbI38KmOx3kmna 6aQZ6WPDn8E+
0aIFXSRbg8OX6Cap7QNwAqdI03ThTGg8FhrH0i0f60x5xDR2YNqLs4SSppOI B8+SXxF7ymKf
Ed/DsXqS7QhJMiQ5F2DO0xn1chjHFJ1ITGoPrV1QdtH2XcpEPZ8b4UuFfB/k YIQ8eUK3kO6M
8ozsQq0lRg0A78j8fUB2ct8gJJOrAQyCpeaI9lJIOxPSJoZHvuP4LrT6PL+I UCUOqBK4jCsB
1QVkGsq1i2T96704pFzxMGFDGA70CEZD/BjpHvqfofq0Y5zcJ2g1jmukFdym /elfUEsDBAoA
AAAIAOiLfzwZZskS1wsAACgcAABKAAAAV0VCLUlORi9jbGFzc2VzL2h1ZHNv bi9wbHVnaW5z
L2J1Y2ttaW5zdGVyL0VjbGlwc2VCdWNrbWluc3RlckJ1aWxkZXIuY2xhc3PN WXl4VNUV/91k
9jwCBBIcFgkBZDJJGEARDYiFABINiySAiG19zLwkD2ZzFkStrW3VbnbXKrZW XHGhCmoGEcWl
LVZbu7m0ta3V1q62dt8X+jtvXiaZyRA1+n3tH3Puefedc+7Z73nfPPmfBw4B mKuO9+F07PKi
HTcIuFHATQJuFnCLgFsF7BZwm4DbfQR3+HAn9vhwEr7gwV2yc7c87BWCfT6c hnuE4F7B7qtC
H3JV2I/7BRxw4wEfjpF37TjowYNVeAiHfHgYjwh4VPge8+GL+JJgXxaqwwIe F6avuPGEDzOx
y4MnZf2qB1/z4ClBv+7GN4TumwK+JeDbAp4W8IwPzXhWwHNy2nc8+K4P38Pz lmZufF8efuDB
D314AT+Ss1/04SX8WMBPBLws4Kc+/Aw/d+MXPizFLz34lRuv+PBr/MaNV8XO XW781o3fKVQv
M9LhlJnMJFLtsWRUQWuPx41UW1RPp420whgzns7o0aieMRPx1XrMUKjp2Kpv 10NRPd4T6syk
zHjPQgVPOBGL6fEIWTzRRE+Hsd2gMFdST+kx7tVk9FSPkVlLOd2JVCwvyJNN G6kuI5ZU8Am6
JptJZjMKVfLQlpenMEqeNiZS29JJPUwu37LlnW3r2td2rVmnsLyjNxtJJ+Kh ZDTbQ1VDW7Lh
bTHR2UiFloejZjJtLB3YWpo1oxEjNaPYaKrvX5eNZ8yYscFMm1uixpJ4PJGx TBbd+89YviNj
xNPcJINrkRk3M4sVbgkMdcf/207jBgVHWyJC743uMOPG6mxsCz2v01IxLxHW oxv0lCnP9qYj
02vS9BNH5F66J9iRSPWEtiV609ltRogZlIySY5me0ZcmsvFIGx2bSWXDDACJ q5kZtrCVCUmM
8YHGcjlWRbq2Qpp5JZ/s9BpDfH1xmghxRyERfWa604ga4YzBjKotE7LGs2m0 mTFidBE52wdl
Pd1AfYZxxCAPDOajxhVpU+GEkfE69FRqhsL8zSNkjxpxsqt2amHOyPtjfaHe RtlP/SVXbT8X
qm4sN7qKapbFNrwbiks8VMy9zug2UkY8bFA1b6r/QaHtLZE4Ph/QbMaMhtrJ qecTy500UnnV
OwL958RYBtHQki3MPz2csTJ2Yf+7Dj0bD/cygYuJLaIOkyqxM1qZ4kpbWcMW ZtqnsXGaRTkz
hrxmt2lEBjK2OlPiUF84FrFrRmHBcJ6wu2vIFiZFPFBso7YIOnDOmEHeELUl G5KpRJiU/Wes
5SO3FSNQO6gYlu8IG0k7gZyWVIXJw3lOur3tNObMED/Ka9tvQwQVe1WhrrgP XZDs70UzSsxZ
NLR6F5O/fhg9FwWDQuLtNHvieiabotS1w2WERf+Gs6IqaYa3LTO69WyUJbUu MCz9yKranYhG
8penlz4wo3kPuWNGOq33yJW6iH00fzFVBqTt+zoT2VTYWGEK3bFHbdmzxaUa NuM6DauwWsMa
AWsFnClgnYBOAV0C1gvYICCKmBu/1/AHRDT8EX+SLhrvTmjolY0/4y8aNuIs DX/F3zT8Xfb+
gX+68S8Nl+DfbvxHwxGWjlKqQmHJm24FGq7GNeyZqxP1g2ys70okovWDPVnf q6frtxhGvD6c
iHebPcyIyGy3qtSUQzndyqUpt/Joyqt8mqpSmluN0lS1Gq2pMWqsBkPM2IEL NFUDFsiE0nQs
lPTktJFJstnVF2u/Vs/0ntKgqXFqPEuwgT8eUyui5o+oBWjoFo16BGQFbBdw voDNqk7D5WqC
po5Rfta/zcwcMVrr3WqipiapyewYpSZoaorsK9Icq6mpappGPae71QxNzVTH aWqWCmiqUQU1
1aSa3apFU7Ml9uPKtBJNhcS0TV29Rn3avoNfIzoNF825uMGKEcewfJy6ZWxo rs+mqRzfz+V7
i12PTCtSf82WrTzBreZoaq6ax/vlLZgPeYWPRAqvJZsto6e3pUOF7XlvvPRZ 40yg/HTk4s3e
k+m1Kpy3u8s4L6tH0yVjTd4PVluaRM6jiCXXgkDjCCcM0cj+IhgyLMjY3D/E Db6Hqot32PWL
qAbd3TVDd3kkc2K1sSNj2S4TW9x6KJ4XbdMVJh69//J6M1IpEdlYbhjMb5kJ 3pNmPLMxJbc8
BdYWCWQtcXYSWaPD2RT7T2Zgxz8wKhUT9/vNGsZrS6lkWyjowjxFJFCGoHir i8n1Zq+ViUe/
Cu3xPL7dTCXiMRqp0BJ4PRqQhZd5WoJOc4oErAiUEo30OrS+AaQWXHoyacjg 2nL0eA5t0TKg
ZBKd9jDXFxiJFv/7T7vTX9dwW34KGVKh3vx3U49k8YRASSXwUEOPLexv9MXb Mm/LUzR+lE8s
quq0KFgxJbOVdDUL5RQls2knb0yrkKYOlEg/7YxBBFRFo8KDvvvGDTDI0CPZ QaJJw8hgM0me
z8yZExjC+FpnOzjAs9WFAqV+fC1GfkBEEvLh1fq6aukoUpxpQenNAZvtwb5q 0CPV3JowGZRx
Vmg5ZJsXGpFV/SNjfnzJsJGG7L0VbOA6xbq6beTkMtHcXOayGUqFaWjH6QB8 qJHBkliNzJbW
utZez7TXdfbaaa9d9rreXjdYq18GSnCgIO7iejbX0Vw34xxU4O18epmrj+tJ wf1QwaY+VASb
+1AZbOmDI+h39MEZ9Dv74Ar6XX1wB/3uPniCfk8fvEG/tw++feStwDsIZ6OK cBkcWA4vVqAa
p2EcVlKHdkylXTNxBprQgbm0bQG1eyepu/Nn41zogIWJ3crCxPIKCxPbKy1M rHdYmNjvtDDx
gMvCxAduCxMveCxM/OAt2L+Fq0IYEUKxfh5XOc0TzKEqB21vwRqXtd9laanl aWwtlcy0Nn/I
5ncG70NlKfNZg5idBebusszOUuZzyjL3lGX2lTKfW5a5t8B8hs3sJ7PjMGpk yWHUTvqB2N6a
6gGB1ZbnIxhLq+uo/IBgf0Gwia224FPIJTHz0p+jm3IYs6dEs62WgLo8USHs Xmyzwq7kE8kW
tZM0EuAF92BsDjUdTYdOqVw8ZfKNmNU0ZV6rg4pWHEatn3qPE5xn7YTL79h7 aaXafeR5NWBB
nSUmzjWBZpxHz8Uxn7O/KHIC39XRkjjfOZg7s5EkBb8EmakppClBQyMyxMQL CwoWZ8vGwV0a
hwvKxmF7WWZPKfPFZZnPL8vsLWV+b1lmfofZzJeRWkxaaHl3/AHUKnQ0HUCd ouNnEZmg8AiO
WUXZrsMY15yzcsVlednZvHf3kecGebjGqsnLWOWX06MfxMm4wjq+nkdMxQRc iIssT7bQk++y
VFpYUOlivDvfiSo66XV2EDVTarHV4Xc8jonBlv2YmMerW2omHcDkCmys3ON3 3I8pORzbksNU
edtEpD6HaUyLHBpanYTTW11+an68nzrPOIymg5i5aT+Oq5mVQ8Da41rTKCAo O06CHJpanQfR
vMnv8IuI0fy18DebvxB/c/ibux/zWt1+t5x4fKun5QBO4Pg9P4cT/Z4DWMA7 yuv32m4MCGb5
8aRWX57S78vhZJuplejuI8/QtQtZKYtyOMXvyWExBZ+aw9tETg5LroXbsRuO yj2tjhbJ9bZ+
F1gVNI1fwkvRwE9jWSutYHQznYErmQdX0Z3XMDg7GYLPMhifQwOuxxzswiLc QPob2ZxvYqu8
mUG4lU+7cSduQw634wncgWf59CL24BXchVdxt3JjL0+5V03AfWo6+qwAX4pR pKvDe1i98h9P
CJcwwF641GhmoJTUUjyN91mteiWewvuZCC6elCbnZSy3O9kPLscH4KH0aibO h+Cl/Gp8GB+R
lFIz+zsEsSvwUUkdYh/Dx8V6Yp/AJ2n1p+yOkpf2aWn8Fv2VpL/KStLP8Hc1 fZHP/X3UQVpC
m/SNVfn2srrlMDwth66FU+2tWSY55XwIyzdVCknnJkdL5Tz2mc77saLV0eR3 5IPAzYEaaLDu
m4MU/CAz/SHU4hDd/jAmMfwn4lGciscKHYdHF1pfm2UExxMsZqBWW3WyANey C1WSN8DAyY3n
YfCus9WfboUeqDqI05jSK+/F2H1WKQ1U/xMk+byl2vW8cKVAK3gZt7Pv+/ES XlD1GPtfUEsD
BAoAAAAIAOiLfzzqTOktFAIAADIEAABEAAAAV0VCLUlORi9jbGFzc2VzL2h1 ZHNvbi9wbHVn
aW5zL2J1Y2ttaW5zdGVyL0VjbGlwc2VJbnN0YWxsYXRpb24uY2xhc3OdUsFu 00AQfZs4MUkN
LWmBphRKKdDEhRokbkVI0IJARAVRlPvGWSXbOLuRve6ZTwKJCIkDH8BHIWa3 KUXBF7jMvN2Z
N+/t2D9+fvsO4BG26/CxUUMVt2zYtOG2DVs+7vi4y+ApPhYMjc4xP+FRwtUg OjKpVIM9qg21
rfknIs2kVgzVCU/5OCPwRCppnjK8af1N/L+bdpcE93WfBBc7UonDfNwT6Qfe S5w9HfOky1Np
z7NLzwwleXnYGeb9TKtokuQDqbKol8ejMQEj0uhFnMhJJl7TiScJN/QMeljz fa6MHIuuzCSN
eqaUNq5G48KOTgfRSA+zfCQiok0SmnPADX+uc9XfpyaT5rHRKQ2qDYR5N9vJ SqtdtESfWg7d
ji165TZaJ9Q9W2r9SOdpLF5K+6bVAsO7dir1HYhJKmJuRJ/h6h9S5/d7AS7i XoALqAWo27Bg
Q4Aaw+6/bYlh6Vzhbe9YxIah3Gp3sUm/j09/l4eGFSLUsFouL8xy4HIFjPxc QgmLdPpIuUJ5
LfwKFu5MUQofTFEO70/hhU1vispnqpawZHtIA7hGGqs0qUkz1rCM64TWcZkq j08nkdIy4JB1
whyyHkoOWVdlh6wfDyuEq9R1hTKtkOYz5yyibLmV8Asqn36bqLrLDScYnDbM BOk7FZJL8+St
QnKzkFyeJ28XktcKyd48eaeAXKYN2q513HBbO9vHTeAXUEsDBAoAAAAIAOiL fzyKuXG5qAEA
AOwDAABXAAAAV0VCLUlORi9jbGFzc2VzL2h1ZHNvbi9wbHVnaW5zL2J1Y2tt aW5zdGVyL3Rh
cmdldFBsYXRmb3JtL1RhcmdldFBsYXRmb3JtUmVmZXJlbmNlLmNsYXNzpZHL TsMwEEWv09K0
aXiX9xs2pQgi1iAkhMSqAgSIvRvcNpAmKHH4LpBASCz4AD4KMXYjHiFdsZkZ j+/1nJHfP17f
AOxi3UIJixUMYUmFZRVWTKyaWGMoBrwnGCaaN/yeOz4POs6FjLygs0d3d1x2 GcrtxPdPtKy0
7wWePGAo1DevSHAUXlN3tOkF4iTptUR0yVu+fi50uX/FI0+d02ZRdr2Y4ajZ Ta7jMHDu/KTj
BbHTStzbHhVSRI7kUUfIM5/Ldhj1nMtfx3PRFpEIXEFsVeoff3HV6pt5C1Tj n6Kp+l+N2sKk
p/oKM/6q1Fi9ver1K+siTCJXHHtqmcUBaDtqhI0qbBsWyjZMFSooMxz+e2+G se8NTls3wpVY
o98s0T8XYKhZVBlqnM6WziaY4qE4TCeHMqM81HgBe9SyEYol3axglKLdF2AM 45TpNzH5x/wE
4yFjruWaa5hKzQekNpS6sfUM43u0pbsz5JnVL0z3VekLqlJ7qMHTuSCFLMhK LshMPkghC7JO
no0BIGYKMpsLUsyCNHJB5vJBilmQbfLsDACppCDz2rPwCVBLAwQKAAAACADo i38894l3mRgB
AAAXAgAAWQAAAFdFQi1JTkYvY2xhc3Nlcy9odWRzb24vcGx1Z2lucy9idWNr bWluc3Rlci90
YXJnZXRQbGF0Zm9ybS9Ob1RhcmdldFBsYXRmb3JtUmVmZXJlbmNlLmNsYXNz rVHBSsNAEJ1p
0qbG1mrsWfDWCrp4VgQpegpBbOl9k27T1WRXNpt+l54ED36AHyVOYhAVCh7c w8y8t++9Hdi3
95dXADiFoQ8u7HZhz4PAg32EzrlU0l4gOKPxHMGd6IVAGIRSiajMY2FmPM6I CUKd8GzOjaxw
Q7p2JQuEq3BVLgqt2ENWplIVLC6T+5wGKwyz3KTC3mTcLrXJWaRnP4hbsRRG qEScIXjERzyn
4OFoHN7xNWcZVymbWiNVSgJ/qkuTiGtZPX6wMeqksvagDR1aMdKKxJN/2BDh 8u8pGzLgEBz6
geq0AKsVqXqEGHWk3j56Bnyqr7tUOzXpwxbV3qeA0DZ1JNxvzMeN2Qlaj7+s /W9W58u6U6sG
H1BLAwQKAAAACADoi388K0or1eYEAAC3CwAAZgAAAFdFQi1JTkYvY2xhc3Nl cy9odWRzb24v
cGx1Z2lucy9idWNrbWluc3Rlci90YXJnZXRQbGF0Zm9ybS9UYXJnZXRQbGF0 Zm9ybVB1Ymxp
c2hlciREZXNjcmlwdG9ySW1wbC5jbGFzc61WW1cTVxT+DgkMhhAUxAtqm1Js QxBHbe0NpI1c
KjZCJBStvTmZHJJDJjPjzBmUn9L+AV/6oC/2srq6uvrQh7YP/UVd3WdmiBAI 1FVZi9lnztln
729/+zL545+ffgFwGbUUBvCRhkIK1zGrYa4X8xoW+vAxbmhYTOEmPkmhiFsp LGG5F6UUMrit
YUVDmaFnWthCzjAkcuNrDMlZp8oZBorC5ktBs8K9VaNi0c5g0TENa83whHqP N5OyLnyGzBz3
TU+40vEWm67FkF60be7NWobvczpfKdaDqu/YumsFNWH7eiUwG01aSO7p0vBq XJYsQ647XlNf
3fVaCiqW8OvcG9vtYop8CL/gupYwIyjHc8UNY9PQLcOu6aHnqfF7DNqGU1nd cknh2J5zhhO7
gyK9OLAr7crTE9sxNIkgSy9UfOkZpix5zgY35dQMWTtSFjXbkIFHBq7ugXO4 BYU3Q8HPCd+1
jK0loxnGNb7DUll6wq6Rrz6bP1wkAg3bJKW1XNHxanrDqftBg+u07VpEbTmS K/xBwH05VbS5
1P11fUOBuFleXlquhJ7Ht4FJw2/4eotzcpPw+AOGsf9inaFXZWzOkAbDqU6+ GFLzj0zuSuHY
voZPGY5Wndk6NxsFT4p14oPqZSl3MFV7CWmFEEhh6QuEY82wRNVQbsin5kY3 GV452DJD96Zh
BWG978N610NfFVJsYkFYvGTIOh2MHmh2Op+fmdJwhzrh4MhCxReObnQlsKVo 8jXhi4qC5FHl
UGsVbNuRoZLfKYcFKh9f9ZQdB7K/2u2Ae1stu6r8qExvcMtVFDDcfTnlF1ES NXpF9aFi/NEl
9bjMML27Sq8HwqqWJXefD4bpTnWsmjNVdgLP5BHgsx2mzEVFfRpHcYzh3C5U Cx7nZblF7EaZ
0nA3jc8wwnBmW8+gZD3Sb4WitF1vFwueWRebPGvY1awb+aF1dt60hOvzbAQk u42EofC/R6WG
e2l8ji9ovO3Ph4Yv0/gKX2u4n4aBigYzjSrU1Ird7vJapzxPyg6E1WXTSuN1 jDGUXvaQZ8ge
lnIN6wzn96kfdTimOqU1bRj6296HwkYTjr64vGN3oG1u04SiL43vq9lONbng OZSl0cPrneZh
RdhVVegM1/Z+nTq3w3PN1tA8e9DUIITEZtlp8juO1/BdQ30ShnLj+8ypgbYt htOb0SjhK5zS
QZU6Jzyy6XhbDJdyLzyLRjqfUh87DZrAuUNMnOyQTvqpk6FfOupPA1NNSs9B etNJMpLd+e/B
ntKiC0P07Ak3n+I4PdORAoZxiiRFjRHSUpfvk+wiOTKErolnSHyL/iEk1eob aMnHSCa+o9PE
DovPQosnoluxRbU6g7N0fq7lTe28QqtXQ0RZWr2G0RjyZAw5Mdj9pA3wzzsA J1qAqcNiwEXa
TZDMTAyh58KP0BL4Fb3tVn4LrWQjzRbIDM7jjfA8gzeRoxvjtE7STp7+J3CB 1sqHTydJksPE
w5Glyd/RN3nhGVKP0fMD+p60+EiFHPxJvP4VustHl1ruhinOi6G7YUrSJdLu prRdxhW6/5wn
pfUWrbahvB0zdhXvkOzvoq13Qw7eC5/v70Niuj38v/eSeLRAJH4Qkzgfk6jl Jyiw/vbrT3ew
p7XC0TAVs6dhuo29RAz6GmZC+SFOkhykVYZsnqCCy2MVazj9L1BLAwQKAAAA CADoi388+Iu4
NzIAAAA/AAAAZgAAAFdFQi1JTkYvY2xhc3Nlcy9odWRzb24vcGx1Z2lucy9i dWNrbWluc3Rl
ci90YXJnZXRQbGF0Zm9ybS9UYXJnZXRQbGF0Zm9ybVB1Ymxpc2hlci9jb25m aWdfZGUucHJv
cGVydGllcwtILMmIUSjJj1EISSxKTy2JUQjISSxJyy/KtQ1IS0xRqCotgsrA JRS4/BJzU21B
hAIAUEsDBAoAAAAIAOiLfzzFLpSDDwAAAA0AAAB5AAAAV0VCLUlORi9jbGFz c2VzL2h1ZHNv
bi9wbHVnaW5zL2J1Y2ttaW5zdGVyL3RhcmdldFBsYXRmb3JtL1RhcmdldFBs YXRmb3JtUHVi
bGlzaGVyL0Rlc2NyaXB0b3JJbXBsL2RvQ2hlY2tBcnRpZmFjdHMuc3RhcGxl cisoys9KTS7R
KUvMKU0FAFBLAwQKAAAACADoi388/8I7HLMDAACYBgAAXgAAAFdFQi1JTkYv Y2xhc3Nlcy9o
dWRzb24vcGx1Z2lucy9idWNrbWluc3Rlci90YXJnZXRQbGF0Zm9ybS9UYXJn ZXRQbGF0Zm9y
bVB1Ymxpc2hlci9jb25maWcuamVsbHmFVGFvozgQ/Xz8ill0J+1KJKxO9+Wq thJJSGOVQARk
e/3ogAluDY6waRud+t9vhpB2czrppIjIzzPvvRmPff1lMnHyWsCa5RDJQrRG OM5cH46d3NcW
vhbf4Pfv3/+Y4OdPD7K+hbUsOm2OxorGeMDaYurBva5N/yzgnr/yfV/U0nE2 omukMVK3IA3U
ohO7I+w73lpRelB1QoCuoKh5txceWA28PcJBdAYT9M5y2cp2DxwK9OJgpK2R xujKvvJOYHAJ
3BhdSI58UOqib0RruSW9Siph4KvFstxszHC/DSKl4MqRLdDeeQtepa11b6ET xnayIA4PZFuo
viQP520lGzkqUPrQIOMgaW+wAvLpQaNLWdG/GMo69DslTe1BKYl611sEDYFD pz2qw9cdGKGU
gwwSfQ+1frobYsj6gRpqxxYZQl5r3VxWIo1T9V2LkmLIKTW2bFB8EoUlhMIr rZR+pdIK3ZaS
KjJXzjAGfKdfxFDL6fxbbdHqyQIdwOHzVMctU3OlYCfGhqGubB2CzuV0JG8s HrzkCg66G/T+
XeYU9VchZMkyfwjSEFgGmzT5wRbhAtwgw7XrwQPLV8k2B4xIgzh/hGQJQfwI 9yxeeBD+tUnD
LIMkddh6E7EQMRbPo+2CxXcww7w4wSFnOOpImidAgiMVCzMiW4fpfIXLYMYi lj96zpLlMXEu
kxQC2ARpzubbKEhhs003SRai/AJpYxYvU1QJ12GcT1EVMQh/4AKyVRBFJOUE W3Sfkj+YJ5vH
lN2tclgl0SJEcBais2AWhScpLGoeBWztwSJYB3fhkJUgS+pQ2MkdPKxCgkgv wN88Z0lMZcyT
OE9x6WGVaf6R+sCy0IMgZRk1ZJkma8+hdmJGMpBgXhyeWKjVcHEiGELrbRZ+ EMIiDCLkwuOJ
L45v6kwmt45z/XT1hJN9hLdG4Yg93bjD8qrQeCFH0NgzijNyUKI7b5RnvBSV bD/i1Y3rK7nz
FT/ipTyjdkTrvsTbcUarEa1017i3zi/X1RU+Et0RrLRK3Li//v3bhtua7kVO 75CFjeKWot9d
fEWEQg8c57XihTUuPmLqQEmd1nabRu/+QfV72fq7vnhuZIsvYudTzMQOZGcu kpjWtlFkAQBN
WPFmd/oNfPLkj6b+21/MG/Fp5pKY9v6Pc9jj5QtvC1HScgAuVD7YkRZfwKRV RxdOoUNwUYvi
eaQeQcV3Am+4wicYO2QtL+rJoRMvUvfGvUXbuGNnvVQlsb1f+0PCKH9hzv/Z 3bU/DsztP1BL
AwQKAAAACADoi388jORHTI4LAAB2GQAAVwAAAFdFQi1JTkYvY2xhc3Nlcy9o dWRzb24vcGx1
Z2lucy9idWNrbWluc3Rlci90YXJnZXRQbGF0Zm9ybS9UYXJnZXRQbGF0Zm9y bVB1Ymxpc2hl
ci5jbGFzc61YCXgU5Rl+/7DZSSZDIIRruZHDTUhYEURJUMyJqyFJkwAFbXGy GTZDJrvrzCwm
llZbe9d6trZgrdYLW9GKxwJiNdoKxd73Ye/7PuxhT/X9ZzfHbpbUig8P8x/z ne93zLd59sXH
ngCwSmxQ0YybitGED6h8fFDFzfiQig9jbwn24ZZifAS3qvgobpOP2xV8rAh3 qFBxp3zcJWnu
ltT3qNiPeyXNx1WU4xMK7pPrAfm4X14/ICV9UuXjQUl/UL54SMHDKh7Bo/Im pWIuDik4rGIh
jsjHYwqOqjhNHh7Hp+TuiSI8Kdch+fopef20ik/jdmnLZ+TjGRXHcLwIn5UE J6RDz8odmT+H
zyv4gly/WIIv4csl+Aq+Kh9fU7EaX1fwDRXr8E3p/rcUfFtefkfBdxV8T8UG /EDFc/ihgh+p
qMcRidaPFfxEwU8V/EygtNFwIraZcON2uD9hCWjhWMywGyzdcQxHINBV17Gx qWtHe0tdV3Nb
x6YdjeGOpoauto5tAtNadum79ZClx6KhTtc2Y9FagckN8Zjj6jF3i24lDRK5 uh013HZLd3fG
7f5WvZ+XamNTZ0NHuJ1yBDpaepM9TjwWSljJqBlzQt3JSF8/N65hh7K5Q11Z x/Zkt2U6vYa9
NNsLmhHoSMZcs9/YYjpmt2XUxWJxV3dN2ibtzihsGnCNmMNLMvjXmzHTPU+g JjjerfE328df
VWwR8DXEe+jflBYzZrQm+7sNu0uneqkzHtGtLbptynPm0uf2mrSn4dQBoAPF uu2aO/WIS4lF
xkDESvbIAKokNRy3LWYNCojtApUtcTsa6ov3Osk+I8RQJSyqadRdvT6ejPV4 4bOTEUJJoUrC
sKUigZbgsJX9dNEK1XWTjNrqk6bVUzv8rkVPxiLSnmxij6jFpEPMrdoKWjGp 34kKFFxOC8uG
aZtNy2jX3V4ZDdtwkpZLiwnTjDTWZjwUbmsaiBgJNx2ywm4pVmDeRJYRDCtj 1BhVI3bK1xm7
xgnKtpo295gkKh2xRtrL65nZoR1MDId30QR2ra+sPI+86og/joKfM4idZjSm u0mb7O0TIe7x
/9+oz2HuZGdQh7HTsI1YhPoiJ9HXbsd3GRG3tuJVp+mIEgn3zqRlySjL5EpL FlgwsWbiYo/a
+erLZawdM8ZBkW5N04MV+dradC/XGo2EEeuhhMGNtp6gCxv+B2bZb3PYvY7h 79epY0Bg/git
dxHa5C2jECieBTJN104EQFPEMhOOUT96VZ/mk1UV707jPbZzt3VnFBSYS+ln +k3SNa1QmMx6
ug/4PeUs1qlj3svU8vI/y8lRiwvjl3tlVRhNg7VgYjSYG5mEoJ5gjp71+ZXI GipaT5fTvXtS
UEKqdsaTdsSQ5cmaPknHXCnla+jALzRswkUafok9Cn6l4df4jYLfavidPP9e wx/wRwV/0vBn
PK/gLxr+ir9p+Dte4KdybCNgY8jOPSn7Hxr+iX9p+Df+o+G/UuCLGl4ipxCi QBOThI/fipzu
Rz5RqAm/UDRRJIo1oeJ5TZQITROTRakmpoipAuV5OqIiyjQxTZRrYrqkmyFm CtSdcqlIN67X
xCy2YszKLYxMailitiYC2KOJOWIuCUOamCdP86WnC8RCRSzSxGK8oInTxBJF LNXEMuyh5zkm
aGI5GeAiqYjTNREUFczHfGHXRKVYoYgqTVSLlYpUdwZRFqvEmZpYLdYIrHk1 BaKJs8RaTZwt
zhFYnK8W+WncaUaTtjdHaGKdqBGYO0HRKoLZefpEOb909CyHopGDzIH1mjhX MKfbX+vpSEMr
2k4hNUbksmdlZLi60+eE6jIDSJ0d6TV3y/cL8jkfGWw0IpZuewSjGRWOUbOd TLhGz0hKsw+8
smlMlr1GG+tGZ6CpuVTsYpYRi8ovD/tEmJ+ALOs3GY6jR+XINDfXkR2t8XBs eKCac/JvLFsd
XYhzrchjdsXI4NDOs7vVNl2vK5dnCezIDD5Kc124ZXNHkxx/8hDU5hqSNR3w g+kY7rCo2cG8
EiRmU8Zi1ijHm6nBitwBZ0kw+yb/6Ovv7+N85HjgctQopuSWeDQqUZkVzPGd bIbeT9FLx0Fd
19FwQXhLuHUjd13h5rqGrs4x7W4Mtzc/8GQxS2bkgzuTElvjdp+T0OXkUB6s yDNrFlKzhGxZ
3piNpy/LgcPDMRJPDHYYkaTt0IuuuJwjxrHKnJOwDMdl1qg5OaEt2tza2VVX 38Lol5lOveEy
U9rspsuSuiVlnyyghH1+ntxlU4r0NsvhXmB5cPynP+/AU75bt8we/naoi7nS g00skhz27LzO
Zi/JGLiZH3DOGz2mk7D0wTFfK4HVwbxzfbZrXVQ7OsIS6UXjHGzWaV5PVzxz wWAk0lmiR/q6
bC/ws4N5a0/KU1go6clv3kSTHD1i5Jo5u6aJ/XpCNjOB6leEyOgMVuTGh9tR iTNW4kxZMLrj
diYjEbYijsmZUp4+Lk2S8tfP1Ny7TDV3O3Er6Wamn0I3vrkjPKaqY4Yb4k3t 8PSSORMH2eHT
Y7kzvMvuTBd4hzQQYe83voR2XBKnyWrTdHWWxSmy3xltIh4o3p8XhmEaO0uW Zt8QLjMzhBKg
YEX+4XTa+Ft60as7rcYARfhi3pI92I9MvdLKTHTknwaCeYwqG/dTQaAp+Nr8 HPIbsqidnBY2
XJiZPtrOj2WMLszJxVpiu9GOJxO1uel7ir9Uxv32Y6VM1nt6xs4rVcEJ5/kx sw3ZsRhNaOYM
uRGTMAcX4iLuWwAUYCX/cwLnPiAnE963c+/n+rrM2oFO0nTx1AsfCrmWVq6o mn8IojLgexQF
Bz05m+U9pQNroOAsTMZabPFOHge24vWAt9vmaZe77dwVeLuLcYnHW+rZ4hux 4Q1cBd6IHXxL
C8QJvivi3YnKFCal4NuHmdWHUXgE/gJsXfEQlBSKfAdWpFBc4zsKdVvAN63k ELQaX8CXwuSt
1UdQKnAYU1KYSqKymsJA4XEU+g4ECtMCp9X4A/6jKCfjIUxPYcY+nE/CmQ9h Vgqz96KyWtId
RiCtcZhtTo0SUI5Bqw4oOabsx0KphEbO4zPNPN+jSWGB74DvAAGoJ/D3YS7B 3++tkzwwdzFQ
QANUNGI6wzeXAZyPMJYwfGcQpLWEqp5AXcBAbWKQ2gjQdnL2EfYBAvpOgncD obuZ4N0GHfeg
G/dS6n0wcD924mFE8QxMHIflBeoSFJO+FJdStkKpl5Knm8HbTusi3PnJNQc9 5JYBPTES0BOU
FfUCeoIJYnoBPUE9ffRjCbVa6GfQYrzVMlQ7Eecuwb2P62WwvQRyuOePDz5l qj1Nbh/X7qNY
uO0QFm2qqnwEBSksrjqK03ixhFFZmsKyacv5SL9alsLpKQT5ouIYVoySVaRA 3LmpSqFasqxM
07ZW8RSqenAkfRfQb9CGIloxFbuxCpfjHFxBLN9MNK70UKqkVRcTgd1ESSZs 9wgO3aQeoPVF
RGyQXAXcvwl7Mv6EIDzvC6Wtoyr93uXVnug0PIUZgYJK35JmFg/wVuPdUCW9 OKO1+hhUmr7q
OHwHD+PMcqxOYY1M8SM4S0Cm2xGsFdiLG+XubIEhrJZ5ncI5Mk/TVEWBogyV KXekqikOFD+F
dXuxOVA8hHU1akBNoeYYmqUub881hdq9WBPwP4X1e7FAyjx3COfVlDAsG7at CLDYzk+hbj/K
Mhf+zMVLN+1/aZfsFOnkvhDT+HwP/X8vyvA+nq5hcl+L9biOKX89U/YGJtWN TJub8G6m8PW0
cx//3YtbmMC34gjuwOO4C0/ibg+7K4jPPibvlbgKJeS6CG/F21g6OxiMq/F2 pnYLE+4dLIoi
yh/EuyhVobarGDRpxXLKl29lag+NhHSI1g14URmijdcwZn485gV3Eq29E++n lNHUTt9c63Wo
62hxOvBLvIIASo6ingnZ8DAaD3rhHQ2/7AE3eClxI+sbBEP2hCbWYAAb8By+ j+KXAVBLAwQK
AAAACADoi388S2G8/F0AAABcAAAAWQAAAFdFQi1JTkYvY2xhc3Nlcy9odWRz b24vcGx1Z2lu
cy9idWNrbWluc3Rlci90YXJnZXRQbGF0Zm9ybS9UYXJnZXRQbGF0Zm9ybVB1 Ymxpc2hlci5z
dGFwbGVyUw4uzVPwTSxSMLJQMDS3MrW0MjZQcHYNDlEwMjA04ErOzysuKSpN Lskvsk0sKslM
S0wuKdZJrUjOKU1JLdbJSSxJLS7xz8up1ClJLEpPLQkAiqTlF+X6JeamcgEA UEsDBAoAAAAI
AOiLfzzp8Vc1vgIAAD4FAABEAAAAV0VCLUlORi9jbGFzc2VzL2h1ZHNvbi9w bHVnaW5zL2J1
Y2ttaW5zdGVyL1Byb2Nlc3NTdHJlYW1Mb2dnZXIuY2xhc3OVVFtT00AU/pYW 0obIrVAKgoLc
2nIJF/EGAoKgzEQEYZjpY0hDiaRJJ00c/xHPzEgZZfTRB3+KP0I9m/QCQ3TG yczJ7jl7zvd9
u2f3x68v3wDMYVtEB8bjaMcEN2kBGQFZEZOYEtGMaRFRzHAjt2IWcyLmsSDg oQgJi9w8EvBY
wBMGoeTYml4uMySU9+oHVTZVqyDvBs4lhphplF3d0h2GAeXEy5dtSy7aed2U 1z3DzCvVKK1s
WTYsw11hmE+HVPpXbuaQIbpBAYZ2xbD0Ha94pDsH6pFJni7F1lTzUHUMPq86 o+6JQZRna1VL
plcwrLJ85GmnRRq4ulND3ncdXS0qdqHgs4w4nkU2zTEZVeoJuBq2vP1286Om l1zDtrgayspz
1an6gnXv+Fh39Pw7PxKsKXumyzk2BBOeYRUoKu7bnqPpWwYnnAphM8OTJPRg UEInuiQk0M2Q
DIdj6KsTtUqeGxQKYgKeSniGJV5rmZvnElawKmBNwgusC9iQ8BKbdMQhWiVs YVXCK7xmmPm/
7WToaOg+OOE7xtB56+wZ2gq6e401Q286o4TIoV1LpUMD/LgSjVD1CLg3xmF5 1zB016rePIj+
v7ceQ5yo1dRcZ7VLyQ1WiRC3f3doZlI/9aRvA/vkXDuYUWeXglRVOz1wVE2/ IfU6WuYQw3Sl
O+ieN9FHneGPqDn8P4EhSbaXZjmaR+jfnr0Ey05eoCk7dYHIub8wRbaLXgBQ QpRS4pTSRt4+
8gwFaejHXcAfcRjmjzgQhxnAYBXmK70ovM7eFaK5KzTnsp/QVEHLJYRLxJTJ CuK5N9+RIHfk
M0SGqQpaz37/PMPwTt03XcEdck/XHRW0nRNAEjI9TlKV8APEyA6Qdwj3aR9k jFN0BAsYxQbG
sIsJX0CWCC0QwXu0ikvZq0pJYokyh336i1RtxJcy6m/I2B9QSwMECgAAAAgA 6It/PMiRtVn0
AAAAowEAAFcAAABXRUItSU5GL2NsYXNzZXMvaHVkc29uL3BsdWdpbnMvYnVj a21pbnN0ZXIv
QnVja21pbnN0ZXJJbnN0YWxsYXRpb24vY29uZ
Re: Building Products with Buckminster/Hudson [message #524385 is a reply to message #524356] Wed, 31 March 2010 14:20 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
Hey Johannes

I can't download the attachment, should there be a link somewhere?
Tried to copy the base64 string into a file, didn't work. Tried to decode the base64 string, still no success.
Am I missing something Smile

Could you alternatively send me the file per email fdo$$scodi.ch
where $$ would be the @.

greets
flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #524389 is a reply to message #524385] Wed, 31 March 2010 09:54 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
Ah, I see :)
You are using the Eclipse Forum I guess?
I'm using the newsgroup and write with thunderbird and I think the board
software can't handle attachments properly.
I sent you the file by mail now.

Best regards,
Johannes
Re: Building Products with Buckminster/Hudson [message #524400 is a reply to message #523371] Wed, 31 March 2010 15:40 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
yes I'm using the eclipse forum Smile

ok I installed and run a job. this is the error I'm getting:

Unpacking http://download.eclipse.org/tools/buckminster/products/direc tor_latest.zip to C:/Programme/Hudson/buckminster on Hudson
[buckminster] $ director\director -d /C:/Programme/Hudson/buckminster/buckminster -p Buckminster -r "http://download.eclipse.org/tools/buckminster/headless-3.6, http://download.eclipse.org/tools/buckminster/headless-3.6/, http://download.cloudsmith.com/buckminster/external-3.6" -installIU "org.eclipse.equinox.p2.director.feature.feature.group, org.eclipse.buckminster.psf.feature.feature.group, org.eclipse.buckminster.emma.headless.feature.feature.group, org.eclipse.buckminster.pde.headless.feature.feature.group, org.eclipse.buckminster.subclipse.headless.feature.feature.g roup, org.eclipse.buckminster.maven.headless.feature.feature.group , org.eclipse.buckminster.cmdline.product, org.eclipse.buckminster.core.headless.feature.feature.group, org.eclipse.buckminster.git.headless.feature.feature.group, org.eclipse.buckminster.cvs.headless.feature.feature.group"
ERROR: Cannot run program "director\director" (in directory "C:\Programme\Hudson\buckminster"): CreateProcess error=2, Das System kann die angegebene Datei nicht finden


On the file system the director exists: C:\Programme\Hudson\buckminster\director containing the director.bat.
I guess the problem is the damn windows path separator \ .
maybe first change into the directory and then launch the director?

greets
flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #524401 is a reply to message #524389] Wed, 31 March 2010 15:47 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
oh and don't hesitate sending me an update of the hpi file. If you want to.
greets
flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #524410 is a reply to message #524400] Wed, 31 March 2010 16:17 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
Flavio Donzé schrieb:

> ERROR: Cannot run program "director\director" (in directory
> "C:\Programme\Hudson\buckminster"): CreateProcess error=2, Das System
> kann die angegebene Datei nicht finden
>
>
> On the file system the director exists:
> C:\Programme\Hudson\buckminster\director containing the director.bat.
> I guess the problem is the damn windows path separator \ .
> maybe first change into the directory and then launch the director?
>


Hmm, crap :)
The problem is, I cannot just change into directory because that won't
work on linux ('.' is usually not in the path...).
Does something like C:\Programme\Hudson\buckminster\director>./director
work on windows? If so, I could probably change the directory and start
the command with ./director because that'd work on linux.

Best regards,
Johannes
Re: Building Products with Buckminster/Hudson [message #524417 is a reply to message #524410] Wed, 31 March 2010 16:36 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
C:\Programme\Hudson\buckminster\director>./director does not work.

The strange thing, being in the directory C:\Programme\Hudson\buckminster
and running director\director starts the director? Using the windows CMD.

The whole command works as well:
director\director -d /C:/Programme/Hudson/buckminster/buckminster -p Buckminster -r "http://download.eclipse.org/tools/buckminster/headless-3.6, http://download.eclipse.org/tools/buckminster/headless-3.6/, http://download.cloudsmith.com/buckminster/external-3.6" -installIU "org.eclipse.equinox.p2.director.feature.feature.group, org.eclipse.buckminster.psf.feature.feature.group, org.eclipse.buckminster.emma.headless.feature.feature.group, org.eclipse.buckminster.pde.headless.feature.feature.group, org.eclipse.buckminster.subclipse.headless.feature.feature.g roup, org.eclipse.buckminster.maven.headless.feature.feature.group , org.eclipse.buckminster.cmdline.product, org.eclipse.buckminster.core.headless.feature.feature.group, org.eclipse.buckminster.git.headless.feature.feature.group, org.eclipse.buckminster.cvs.headless.feature.feature.group"


How do you run the command? [buckminster] $ looks a lot like linux.
Not the native shell?

greets
flavio



Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #524431 is a reply to message #524417] Wed, 31 March 2010 12:50 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
Flavio Donzé schrieb:
> C:\Programme\Hudson\buckminster\director>./director does not work.
>

Too bad.

> The strange thing, being in the directory C:\Programme\Hudson\buckminster
> and running director\director starts the director? Using the windows CMD.
>

yeah, that's odd, especially since I paid attention to use the correct
separator for the OS, I had hoped this would work.

>
>
> How do you run the command? [buckminster] $ looks a lot like linux.
> Not the native shell?
>

I run it with a hudson class that's very similar to a ProcessBuilder
(the hudson counterpart enables remoting i.e Master/Slave) where
director\director is the first argument. Maybe I can try
director\director.bat on a Windows system.
I'll send you another hpi with that fix. If that doesn't work then I
need to think of something else...

Thanks again and best regards,
Johannes
Re: Building Products with Buckminster/Hudson [message #524435 is a reply to message #524431] Wed, 31 March 2010 18:05 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
I'm getting the same error, only with .bat now:

Unpacking http://download.eclipse.org/tools/buckminster/products/direc tor_latest.zip to C:/Programme/Hudson/buckminster/ on Hudson
[] $ director\director.bat -d /C:/Programme/Hudson/buckminster/buckminster -p Buckminster -r "http://download.eclipse.org/tools/buckminster/headless-3.6, http://download.eclipse.org/tools/buckminster/headless-3.6/, http://download.cloudsmith.com/buckminster/external-3.6" -installIU "org.eclipse.equinox.p2.director.feature.feature.group, org.eclipse.buckminster.psf.feature.feature.group, org.eclipse.buckminster.emma.headless.feature.feature.group, org.eclipse.buckminster.pde.headless.feature.feature.group, org.eclipse.buckminster.subclipse.headless.feature.feature.g roup, org.eclipse.buckminster.maven.headless.feature.feature.group , org.eclipse.buckminster.cmdline.product, org.eclipse.buckminster.core.headless.feature.feature.group, org.eclipse.buckminster.git.headless.feature.feature.group, org.eclipse.buckminster.cvs.headless.feature.feature.group" ERROR: Cannot run program "director\director.bat" (in directory "C:\Programme\Hudson\buckminster"): CreateProcess error=2, Das System kann die angegebene Datei nicht finden

What I meant with changing the directory, first run:
cd director
and then run the command.
or somehow else change the current working directory to the director directory?

cheers
flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #524751 is a reply to message #524435] Fri, 02 April 2010 01:10 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
Hi Flavio,

I installed Windows on a virtual box and configured it as a hudson slave
to finally have my own testing environment for that.
Everything seems to work fine now on both the Linux host and the Windows
slave (no cygwin installed). I've just released version 1.0.1 that
contains the fixes. I hope it works better for you now.
The new version will show up as usual with a few days delay in your
update center.

Thank you for all the help.

Best regards,
Johannes
Re: Building Products with Buckminster/Hudson [message #524968 is a reply to message #524751] Sun, 04 April 2010 19:17 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
Hey Johannes

I just updated to version 1.0.1.
With my previous configuration I now get the following error:

C:\Programme\Hudson\buckminster\buckminster\buckminster import '=C:/Programme/Hudson/workspace/jobs/scodi.server.integratio n/workspace/source/scodi-server/features/ch.scodi.server.sit e/site.cquery' -vmargs -Dbuckminster.output.root=C:\Programme\Hudson\workspace\jobs \scodi.server.integration\workspace\buckminster.output -Dbuckminster.temp.root=C:\Programme\Hudson\workspace\jobs\s codi.server.integration\workspace\buckminster.temp

Do you think this is because of a wrong configuration? Or does the buckminster plugin causes this?

greets
Flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #525000 is a reply to message #524968] Mon, 05 April 2010 00:16 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
Hi Flavio,

Flavio Donzé schrieb:
> Hey Johannes
>
> I just updated to version 1.0.1.
> With my previous configuration I now get the following error:
>
> C:\Programme\Hudson\buckminster\buckminster\buckminster import
> '=C:/Programme/Hudson/workspace/jobs/scodi.server.integratio
> n/workspace/source/scodi-server/features/ch.scodi.server.sit
> e/site.cquery' -vmargs
> -Dbuckminster.output.root=C:\Programme\Hudson\workspace\jobs
> \scodi.server.integration\workspace\buckminster.output
> -Dbuckminster.temp.root=C:\Programme\Hudson\workspace\jobs\s
> codi.server.integration\workspace\buckminster.temp
>


Sorry, but where's the error?
Re: Building Products with Buckminster/Hudson [message #525261 is a reply to message #525000] Mon, 05 April 2010 13:35 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
Uhh sorry, it was pretty late Smile

[workspace] $ C:\Programme\Hudson\buckminster\buckminster\buckminster.bat -data C:\Programme\Hudson\workspace\jobs\scodi.server.integration\ workspace --loglevel warning -S C:\Programme\Hudson\workspace\jobs\scodi.server.integration\ workspace\commands.txt -vmargs -Dbuckminster.output.root=C:\Programme\Hudson\workspace\jobs \scodi.server.integration\workspace\buckminster.output -Dbuckminster.temp.root=C:\Programme\Hudson\workspace\jobs\s codi.server.integration\workspace\buckminster.temp -Xmx1024m
java.lang.NoClassDefFoundError: C:\Programme\Hudson\workspace\jobs\scodi/server/integration\ workspace\buckminster/output
Caused by: java.lang.ClassNotFoundException: C:\Programme\Hudson\workspace\jobs\scodi.server.integration\ workspace\buckminster.output
at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301 )
at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
Could not find the main class: C:\Programme\Hudson\workspace\jobs\scodi.server.integration\ workspace\buckminster.output. Program will exit.

greets
Flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #525291 is a reply to message #525261] Tue, 06 April 2010 02:34 Go to previous messageGo to next message
Thomas Hallgren is currently offline Thomas Hallgren
Messages: 3214
Registered: July 2009
Senior Member
Hi Flavio,
That sounds like a quoting problem. Forgive me for saying so but the Windows cmd is completely brain dead. Store this
script in a foo.bat

@echo off
echo %%*: %*
echo %%1: %1
echo %%2: %2

Then try it from the command line with:

foo a=b

and

foo "a=b"

and you will see what I mean. Without quotes, the a=b argument is split in two and '=' is forgotten. But only almost.
The %* still contains it. Weird to say the least...

I think you should join the discussion on https://bugs.eclipse.org/bugs/show_bug.cgi?id=287575

Regards,
Thomas Hallgren


On 04/05/2010 07:35 PM, Flavio Donzé wrote:
> Uhh sorry, it was pretty late :)
>
> [workspace] $
> C:\Programme\Hudson\buckminster\buckminster\buckminster.bat -data
> C:\Programme\Hudson\workspace\jobs\scodi.server.integration\ workspace
> --loglevel warning -S
> C:\Programme\Hudson\workspace\jobs\scodi.server.integration\
> workspace\commands.txt -vmargs
> -Dbuckminster.output.root=C:\Programme\Hudson\workspace\jobs
> \scodi.server.integration\workspace\buckminster.output
> -Dbuckminster.temp.root=C:\Programme\Hudson\workspace\jobs\s
> codi.server.integration\workspace\buckminster.temp -Xmx1024m
> java.lang.NoClassDefFoundError:
> C:\Programme\Hudson\workspace\jobs\scodi/server/integration\
> workspace\buckminster/output
> Caused by: java.lang.ClassNotFoundException:
> C:\Programme\Hudson\workspace\jobs\scodi.server.integration\
> workspace\buckminster.output
> at java.net.URLClassLoader$1.run(URLClassLoader.java:202)
> at java.security.AccessController.doPrivileged(Native Method)
> at java.net.URLClassLoader.findClass(URLClassLoader.java:190)
> at java.lang.ClassLoader.loadClass(ClassLoader.java:307)
> at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:301 )
> at java.lang.ClassLoader.loadClass(ClassLoader.java:248)
> Could not find the main class:
> C:\Programme\Hudson\workspace\jobs\scodi.server.integration\
> workspace\buckminster.output. Program will exit.
>
> greets
> Flavio
Re: Building Products with Buckminster/Hudson [message #525347 is a reply to message #525291] Tue, 06 April 2010 06:05 Go to previous messageGo to next message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
Hey Thomas and Johannes

I don't think it is a quoting problem.
I did some testing with the simple "listcommands" command and get the same error using the cmd on my server machine:

buckminster listcommands -vmargs -Dbuckminster.output.root=C:/temp
buckminster listcommands -vmargs -Dbuckminster.output.root="C:/temp"
buckminster listcommands -vmargs -Dbuckminster.output.root='C:/temp'

Always the same result
NoClassDefFoundError: C:/temp

Or did you mean, the buckminster.bat is broken and has quoting problems?

greets
Flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Re: Building Products with Buckminster/Hudson [message #525362 is a reply to message #525347] Tue, 06 April 2010 02:18 Go to previous messageGo to next message
Thomas Hallgren is currently offline Thomas Hallgren
Messages: 3214
Registered: July 2009
Senior Member
On 04/06/2010 12:05 PM, Flavio Donzé wrote:
> Hey Thomas and Johannes
>
> I don't think it is a quoting problem.
> I did some testing with the simple "listcommands" command and get the
> same error using the cmd on my server machine:
>
> buckminster listcommands -vmargs -Dbuckminster.output.root=C:/temp
> buckminster listcommands -vmargs -Dbuckminster.output.root="C:/temp"
> buckminster listcommands -vmargs -Dbuckminster.output.root='C:/temp'
>
> Always the same result
> NoClassDefFoundError: C:/temp
>
> Or did you mean, the buckminster.bat is broken and has quoting problems?
>
You need to qoute like this:

buckminster listcommands -vmargs "-Dbuckminster.output.root=C:/temp"

since it's the '=' that causes the problem

- thomas
Re: Building Products with Buckminster/Hudson [message #525561 is a reply to message #525362] Tue, 06 April 2010 12:46 Go to previous messageGo to next message
Johannes Utzig is currently offline Johannes Utzig
Messages: 329
Registered: July 2009
Senior Member
Hi,

I had a further look why it worked on my windows test slave but not in
your configuration.
The reason was actually quite simple:
My test slave had spaces in its path. That caused the process builder to
quote all these arguments automatically and that's why they didn't get
destroyed by the windows shell interpreter.
I reverted some changes now. The plugin uses the equinox launcher jar
again instead of calling the buckminster.bat. That way the arguments no
longer get split up at the '=' and hopefully everything works now.
Please update to 1.0.2 when it's available in the update center and let
me know if it works for you.

Best regards and sorry for the trouble,
Johannes
Re: Building Products with Buckminster/Hudson [message #525843 is a reply to message #525561] Wed, 07 April 2010 20:16 Go to previous message
Flavio Donze is currently offline Flavio Donze
Messages: 157
Registered: July 2009
Location: Switzerland
Senior Member
Hey Johannes

The buckminster plugin works again! Thanks a lot for all the promt fixes and release!

greets
Flavio


Organisations- und Prozessdokumentation Software
Qualität Management QMS :: Information Management IMS
http://www.scodi.ch
Previous Topic:Properly importing jars
Next Topic:Eclipse RCP plugins automated version number increment
Goto Forum:
  


Current Time: Tue Jul 29 00:37:21 EDT 2014

Powered by FUDForum. Page generated in 0.05012 seconds