From jstewart@kdc-tvcom.com Tue, 2 Sep 1997 15:43:43 -0400 Date: Tue, 2 Sep 1997 15:43:43 -0400 From: jstewart@kdc-tvcom.com jstewart@kdc-tvcom.com Subject: Silence... any hope for a listserve archive? Hey Jammers... Did anyone find out if there is a jamming listserve "great posts of the past" archive? Just wondering, Joe From ericm@jeeves.net Thu, 04 Sep 1997 13:35:02 -0500 (cdt) Date: Thu, 04 Sep 1997 13:35:02 -0500 (cdt) From: ericm@jeeves.net ericm@jeeves.net Subject: maximum command length under NT Why is MAXCMD defined as 996 when running under NT? I'd like to be able to invoke some commands that are longer than this. Eric Merrill ericm@jeeves.net From laura@perforce.com Thu, 4 Sep 1997 12:39:09 -0700 (PDT) Date: Thu, 4 Sep 1997 12:39:09 -0700 (PDT) From: Laura Wingerd laura@perforce.com Subject: maximum command length under NT ericm@jeeves.net (Eric Merrill) asks: > > Why is MAXCMD defined as 996 when running under NT? I'd like to be able to > invoke some commands that are longer than this. Well, on NT you can't issue a command longer than about 996 bytes. However, Jam 2.10 also limits the length of an action on NT to 996 bytes, which is annoying. The upcoming Jam distribution will use separate limits for cmd line length and action block size. - --Laura - ------------------------------------------------------------------------ Laura Wingerd Perforce Software, Inc. wingerd@perforce.com From ames@cLOUDscAPE.com Thu, 4 Sep 1997 12:51:03 -0700 Date: Thu, 4 Sep 1997 12:51:03 -0700 From: Ames Carlson ames@cLOUDscAPE.com Subject: maximum command length under NT - ------ =_NextPart_000_01BCB931.34679170 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit I redefined it as 4096 and rebuilt, and it works fine for me. - -ames. - -----Original Message----- From: ericm@jeeves.net [SMTP:ericm@jeeves.net] Sent: Thursday, September 04, 1997 11:35 AM To: Email address Subject: maximum command length under NT Why is MAXCMD defined as 996 when running under NT? I'd like to be able to invoke some commands that are longer than this. Eric Merrill ericm@jeeves.net - ------ =_NextPart_000_01BCB931.34679170 Content-Type: application/ms-tnef Content-Transfer-Encoding: base64 eJ8+IgQTAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAEIgAcAGAAAAElQTS5NaWNy b3NvZnQgTWFpbC5Ob3RlADEIAQ2ABAACAAAAAgACAAEEkAYAuAEAAAEAAAAQAAAAAwAAMAIAAAAL AA8OAAAAAAIB/w8BAAAATAAAAAAAAACBKx+kvqMQGZ1uAN0BD1QCAAAAAEpBTU1JTkcgRGlzdHJp YnV0aW9uIExpc3QAU01UUABqYW1taW5nQHBlcmZvcmNlLmNvbQAeAAIwAQAAAAUAAABTTVRQAAAA AB4AAzABAAAAFQAAAGphbW1pbmdAcGVyZm9yY2UuY29tAAAAAAMAFQwBAAAAAwD+DwYAAAAeAAEw AQAAABwAAAAnSkFNTUlORyBEaXN0cmlidXRpb24gTGlzdCcAAgELMAEAAAAaAAAAU01UUDpKQU1N SU5HQFBFUkZPUkNFLkNPTQAAAAMAADkAAAAACwBAOgEAAAAeAPZfAQAAABoAAABKQU1NSU5HIERp c3RyaWJ1dGlvbiBMaXN0AAAAAgH3XwEAAABMAAAAAAAAAIErH6S+oxAZnW4A3QEPVAIAAAAASkFN TUlORyBEaXN0cmlidXRpb24gTGlzdABTTVRQAGphbW1pbmdAcGVyZm9yY2UuY29tAAMA/V8BAAAA AwD/XwAAAAACAfYPAQAAAAQAAAAAAAACSV0BBIABACQAAABSRTogbWF4aW11bSBjb21tYW5kIGxl bmd0aCB1bmRlciBOVACQDAEFgAMADgAAAM0HCQAEAAwAMwADAAQAJwEBIIADAA4AAADNBwkABAAM ADIALgAEAFEBAQmAAQAhAAAANjJFRjU1REM0MTI1RDExMTlBNTEwMDYwMDg0ODc1MTMA0QYBA5AG AFAFAAAhAAAACwACAAEAAAALACMAAAAAAAMAJgAAAAAACwApAAAAAAADAC4AAAAAAAMANgAAAAAA QAA5APDwKOBrubwBHgBwAAEAAAAkAAAAUkU6IG1heGltdW0gY29tbWFuZCBsZW5ndGggdW5kZXIg TlQAAgFxAAEAAAAWAAAAAby5a+Al3FXvYyVBEdGaUQBgCEh1EwAAHgAeDAEAAAADAAAATVMAAB4A HwwBAAAAEQAAAFdpbmRvd3MvbmF0L2FtZXMAAAAAAwAGEBuK7WwDAAcQSAEAAB4ACBABAAAAZQAA AElSRURFRklORURJVEFTNDA5NkFORFJFQlVJTFQsQU5ESVRXT1JLU0ZJTkVGT1JNRS1BTUVTLS0t LS1PUklHSU5BTE1FU1NBR0UtLS0tLUZST006RVJJQ01ASkVFVkVTTkVUU00AAAAAAgEJEAEAAAAu AgAAKgIAADMDAABMWkZ1UeIdx9MACgEKMzYB6CACpARkCQIAY2gKwHNldDAAIEx1Y2lkYSD3CFAA gAbwZQKDAFAD1AIAYHBycTIgBxMCgH0TCoAIyCA7CW8yNTXfAoAKgRDAAFALA2MAQQtgQG5nMTAz MwukMfA2IEkgCXEBEAuACYAUIGkFQGEEIDQwOU8XgABwGEAJcGJ1AxB01iwZAxhhdwWwawQgGAI3 GqAFsQeALgqiCoAtYc8HgRtlHDgLMGxpDnEWQVMBQBKAb3QFkHQRwSDqLR6iTwUQZwuAB0AF0OEH kHNhZ2Ueoxw2HgSHHdELEx4GaS0xNBjAcR1BMTgwAUAM0CJDYtQgRgNhOgyDYhCQBnHQY21Aagng dhwBGCCBBUBbU01UUDokbj5dHDUjcAZgAjAj11RodQhwcxDweRnABmAFMGUjBtAEkCAwNBnAMTmE OTcpsDE6MzUSwNJNJudUbyPXRQDAAxE4YWRkCXASQSb3dWIvJMAeQCPXAMB4B3B1bXogBaBtA4EY QBFwFrB0mGggdRkgKVFOVCBPFyFaHVQXJDgbdFdoeQMYUAQgTUFYQ01EniAX5hiRKdAXgHdoCfCf F7AvoAMAFrAvlz8gF5ASJy8RaWsa4HRvID8pQBiAAmA24ht0C4B2b7820RFQB4AupgQgL3BhGHH/ CXAvIAIgH9AFwDmBA6AvcLcEABwvHHZFJHEfcXIFEF5sCVAbgyRuO48KE0EAAUAgAAADABAQAAAA AAMAERAAAAAAAwCAEP////9AAAcwgAng1Wu5vAFAAAgwgAng1Wu5vAELAACACCAGAAAAAADAAAAA AAAARgAAAAADhQAAAAAAAAMAAoAIIAYAAAAAAMAAAAAAAABGAAAAABCFAAAAAAAAAwAFgAggBgAA AAAAwAAAAAAAAEYAAAAAUoUAALcNAAAeACWACCAGAAAAAADAAAAAAAAARgAAAABUhQAAAQAAAAQA AAA4LjAAAwAmgAggBgAAAAAAwAAAAAAAAEYAAAAAAYUAAAAAAAALAC+ACCAGAAAAAADAAAAAAAAA RgAAAAAOhQAAAAAAAAMAMIAIIAYAAAAAAMAAAAAAAABGAAAAABGFAAAAAAAAAwAygAggBgAAAAAA wAAAAAAAAEYAAAAAGIUAAAAAAAAeAEGACCAGAAAAAADAAAAAAAAARgAAAAA2hQAAAQAAAAEAAAAA AAAAHgBCgAggBgAAAAAAwAAAAAAAAEYAAAAAN4UAAAEAAAABAAAAAAAAAB4AQ4AIIAYAAAAAAMAA AAAAAABGAAAAADiFAAABAAAAAQAAAAAAAAAeAD0AAQAAAAUAAABSRTogAAAAAAMADTT9NwAAqxI= - ------ =_NextPart_000_01BCB931.34679170-- From ericm@jeeves.net Thu, 04 Sep 1997 15:16:27 -0500 (cdt) Date: Thu, 04 Sep 1997 15:16:27 -0500 (cdt) From: ericm@jeeves.net ericm@jeeves.net Subject: maximum command length under NT On Thu, 4 Sep 1997 12:39, Laura Wingerd writes: > Well, on NT you can't issue a command longer than about 996 bytes. > However, Jam 2.10 also limits the length of an action on NT to 996 > bytes, which is annoying. The upcoming Jam distribution will > use separate limits for cmd line length and action block size. It was my understanding that NT does not have a command length limitation. Win95 is 32k, though. I changed the MAXCMD definition to 10k, recompiled, and everything works fine so far. Eric Merrill ericm@jeeves.net From laura@perforce.com Thu, 4 Sep 1997 13:47:27 -0700 (PDT) Date: Thu, 4 Sep 1997 13:47:27 -0700 (PDT) From: Laura Wingerd laura@perforce.com Subject: maximum command length under NT > It was my understanding that NT does not have a command length limitation. > Win95 is 32k, though. Nah, really? Then why is it we're going around and around about how to use response files, etc., for NT when we could have just bumped MAXCMD? It certainly seems like somewhere back there there was an actual reason for that 996 limit... I seem to remember struggling with this at Sybase but the details elude me. - --Laura From psy@tnova.com Thu, 4 Sep 1997 16:21:14 -0500 Date: Thu, 4 Sep 1997 16:21:14 -0500 From: Paul Yadlowsky psy@tnova.com Subject: maximum command length under NT - ------ =_NextPart_000_01BCB94E.95B891A0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Have any of you jammers developed a jambase that'll handle large Java projects? - -Paul - ----------------------------------------- Paul Yadlowsky 8307 Summerwood Drive psy@tnova.com Austin, Texas (512) 338-0466 78759 - ------ =_NextPart_000_01BCB94E.95B891A0 Content-Type: application/ms-tnef Content-Transfer-Encoding: base64 eJ8+IhcVAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAEIgAcAGAAAAElQTS5NaWNy b3NvZnQgTWFpbC5Ob3RlADEIAQ2ABAACAAAAAgACAAEEkAYAWAMAAAIAAAAQAAAAAwAAMAMAAAAL AA8OAAAAAAIB/w8BAAAATAAAAAAAAACBKx+kvqMQGZ1uAN0BD1QCAAAAAEpBTU1JTkcgRGlzdHJp YnV0aW9uIExpc3QAU01UUABqYW1taW5nQHBlcmZvcmNlLmNvbQAeAAIwAQAAAAUAAABTTVRQAAAA AB4AAzABAAAAFQAAAGphbW1pbmdAcGVyZm9yY2UuY29tAAAAAAMAFQwBAAAAAwD+DwYAAAAeAAEw AQAAABwAAAAnSkFNTUlORyBEaXN0cmlidXRpb24gTGlzdCcAAgELMAEAAAAaAAAAU01UUDpKQU1N SU5HQFBFUkZPUkNFLkNPTQAAAAMAADkAAAAACwBAOgEAAAAeAPZfAQAAABoAAABKQU1NSU5HIERp c3RyaWJ1dGlvbiBMaXN0AAAAAgH3XwEAAABMAAAAAAAAAIErH6S+oxAZnW4A3QEPVAIAAAAASkFN TUlORyBEaXN0cmlidXRpb24gTGlzdABTTVRQAGphbW1pbmdAcGVyZm9yY2UuY29tAAMA/V8BAAAA AwD/XwAAAAACAfYPAQAAAAQAAAAAAAADEAAAAAMAADAEAAAACwAPDgEAAAACAf8PAQAAAEcAAAAA AAAAgSsfpL6jEBmdbgDdAQ9UAgAAAQBMYXVyYSBXaW5nZXJkAFNNVFAAbGF1cmFAY29tcHV0ZXIu cGVyZm9yY2UuY29tAAAeAAIwAQAAAAUAAABTTVRQAAAAAB4AAzABAAAAHAAAAGxhdXJhQGNvbXB1 dGVyLnBlcmZvcmNlLmNvbQADABUMAgAAAAMA/g8GAAAAHgABMAEAAAAOAAAATGF1cmEgV2luZ2Vy ZAAAAAIBCzABAAAAIQAAAFNNVFA6TEFVUkFAQ09NUFVURVIuUEVSRk9SQ0UuQ09NAAAAAAMAADkA AAAACwBAOgAAAAAeAPZfAQAAAA4AAABMYXVyYSBXaW5nZXJkAAAAAgH3XwEAAABHAAAAAAAAAIEr H6S+oxAZnW4A3QEPVAIAAAEATGF1cmEgV2luZ2VyZABTTVRQAGxhdXJhQGNvbXB1dGVyLnBlcmZv cmNlLmNvbQAAAwD9XwEAAAADAP9fAAAAAAIB9g8BAAAABAAAAAAAAATLtAEEgAEAJAAAAFJFOiBt YXhpbXVtIGNvbW1hbmQgbGVuZ3RoIHVuZGVyIE5UAJAMAQWAAwAOAAAAzQcJAAQAEAAVAA4ABAAY AQEggAMADgAAAM0HCQAEABAAFAADAAQADAEBCYABACEAAABDRUQyOEI0ODIyMjVEMTExQkY5MDAw MjBBRjE3NTM3MgD5BgEDkAYAqAQAACEAAAALAAIAAQAAAAsAIwAAAAAAAwAmAAAAAAALACkAAAAA AAMALgAAAAAAAwA2AAAAAABAADkAAHSGeXi5vAEeAHAAAQAAACQAAABSRTogbWF4aW11bSBjb21t YW5kIGxlbmd0aCB1bmRlciBOVAACAXEAAQAAABYAAAABvLl4eVZIi9LPJSIR0b+QACCvF1NyAAAe AB4MAQAAAAUAAABTTVRQAAAAAB4AHwwBAAAADgAAAHBzeUB0bm92YS5jb20AAAADAAYQC+pbmgMA BxC6AAAAHgAIEAEAAABlAAAASEFWRUFOWU9GWU9VSkFNTUVSU0RFVkVMT1BFREFKQU1CQVNFVEhB VExMSEFORExFTEFSR0VKQVZBUFJPSkVDVFM/LVBBVUwtLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0t LS0tLQAAAAACAQkQAQAAAIYBAACCAQAAtQIAAExaRnVJJNRsdwAKAQMB9yACpARkAgBjgmgKwHNl dDAgCFUPAoMAUAPUAgBwcnEyPw9pBxMCgxGhAwEPaVRhtmgDcQKDMxDrElZ9CoCJCMggOwlvMjU1 AoDZCoF1YwBQCwNjAEELYOBuZzEwMxTBAUAKsUEKgEhhdmUgAHB5ICBvZiB5CGAgauxhbQeAD7Ag AQAaoAkATnAJgBrAG3JiYQ/AIOJ0D5B0J2wJUBozD5CYbmRsGrALYHJnGrBOShqQHKARcG9qBZB0 DHM/GiQaJC1QYXWnHaUfyAswbm8D8GQfgI5sCrEZIQLRMSAtIy+PJD8kpB/KIJIgWWEeQHkiAHNr GvAnXyhvKQc4KDMwNwYAdRuid285BHAgRAUQGqAaJHBzWHlAdCHwHwAuBaBthykPLZ8uN0F1c3QL gDIsFABleB0AGiQoNRAxMikgGdA4LTA4NDY2Lj8yXzMINzgYNzU5IToS8nMxN7M0axTCMTYfxgNg dB9xCxokFiEAOEAAAAMAEBAAAAAAAwAREAAAAAADAIAQ/////0AABzBQog9PeLm8AUAACDBQog9P eLm8AQsAAIAIIAYAAAAAAMAAAAAAAABGAAAAAAOFAAAAAAAAAwACgAggBgAAAAAAwAAAAAAAAEYA AAAAEIUAAAAAAAADAAWACCAGAAAAAADAAAAAAAAARgAAAABShQAAtw0AAB4AJYAIIAYAAAAAAMAA AAAAAABGAAAAAFSFAAABAAAABAAAADguMAADACaACCAGAAAAAADAAAAAAAAARgAAAAABhQAAAAAA AAsAL4AIIAYAAAAAAMAAAAAAAABGAAAAAA6FAAAAAAAAAwAwgAggBgAAAAAAwAAAAAAAAEYAAAAA EYUAAAAAAAADADKACCAGAAAAAADAAAAAAAAARgAAAAAYhQAAAAAAAB4AQYAIIAYAAAAAAMAAAAAA AABGAAAAADaFAAABAAAAAQAAAAAAAAAeAEKACCAGAAAAAADAAAAAAAAARgAAAAA3hQAAAQAAAAEA AAAAAAAAHgBDgAggBgAAAAAAwAAAAAAAAEYAAAAAOIUAAAEAAAABAAAAAAAAAB4APQABAAAABQAA AFJFOiAAAAAAAwANNP03AAAF3A== - ------ =_NextPart_000_01BCB94E.95B891A0-- From ericm@jeeves.net Thu, 04 Sep 1997 17:39:37 -0500 (cdt) Date: Thu, 04 Sep 1997 17:39:37 -0500 (cdt) From: ericm@jeeves.net ericm@jeeves.net Subject: wildcards in dependency lists? I'd like to make a jamfile that looks like this: Library Whatever.a : Is there a way to do this within an individual Jamfile? Eric Merrill ericm@jeeves.net From jwm@eng.cccpp.com Thu, 04 Sep 1997 18:22:59 -0700 Date: Thu, 04 Sep 1997 18:22:59 -0700 From: Jeff McCarrell jwm@eng.cccpp.com Subject: maximum command length under NT At 01:47 PM 9/4/97 -0700, Laura Wingerd wrote: >> It was my understanding that NT does not have a command length limitation. >> Win95 is 32k, though. > >Nah, really? Then why is it we're going around and around about how >to use response files, etc., for NT when we could have just bumped MAXCMD? >It certainly seems like somewhere back there there was an actual reason for >that 996 limit... I seem to remember struggling with this at Sybase but >the details elude me. > >--Laura > Well, the 996 is certainly too low. The Hamilton C Shell prints out the following message when asked to make a list of every file on my C: drive to give to ls: mojave-> ls .../* csh(line 13): The argument list was too long. (The C shell has no limit, but the Windows NT kernel does impose a limit of 32,282 characters.) mojave-> I think the limit is certainly > 996 chars. - -- jeff From Thom_Wood@geoworks.com Thu, 04 Sep 1997 18:46:45 -0700 Date: Thu, 04 Sep 1997 18:46:45 -0700 From: Thom Wood Thom_Wood@geoworks.com Subject: maximum command length under NT i also try changing the command length, but latter i found a command the was cutoff in the middle of a path and that caused a lot of problems. note: i set the command length to 10240. At 01:47 PM 9/4/97 -0700, you wrote: >> It was my understanding that NT does not have a command length limitation. >> Win95 is 32k, though. > >Nah, really? Then why is it we're going around and around about how >to use response files, etc., for NT when we could have just bumped MAXCMD? >It certainly seems like somewhere back there there was an actual reason for >that 996 limit... I seem to remember struggling with this at Sybase but >the details elude me. > >--Laura > > From jwm@eng.cccpp.com Thu, 04 Sep 1997 18:47:07 -0700 Date: Thu, 04 Sep 1997 18:47:07 -0700 From: Jeff McCarrell jwm@eng.cccpp.com Subject: maximum command length under NT At 04:21 PM 9/4/97 -0500, Paul Yadlowsky wrote: > >Have any of you jammers developed a jambase that'll >handle large Java projects? > >-Paul > >----------------------------------------- > >Paul Yadlowsky 8307 Summerwood Drive >psy@tnova.com Austin, Texas >(512) 338-0466 78759 > well, I've built a jamfile that compiles java files into .jar files. I used it to build one of 5 components of a 5k line java project, just to prove to myself it could be done. The jamfile follows below. So, no, I don't have a jambase for a large java project. But I have no doubts that I could develop one. - -- jeff SUFCLASS default = .class ; # modelled on Objects rule ClassFiles { s = $(<) ; if $(SOURCE_GRIST) { s = $(<:G=$(SOURCE_GRIST)) ; } for i in $(s) { ClassFile $(i:S=$(SUFCLASS)) : $(i) ; } } # modelled on Object rule ClassFile { # locate object and search for source, if wanted Clean clean : $(<) ; LOCATE on $(<) = $(LOCATE_TARGET) ; SEARCH on $(>) = $(SEARCH_SOURCE) ; DEPENDS $(<) : $(>) ; # if source is not .c, generate .c with specific rule switch $(>:S) { case .java : Javac $(<) : $(>) ; case * : UserObject $(<) : $(>) ; } } rule Javac { DEPENDS $(<) : $(>) ; } actions Javac { javac $(>) } rule JarFile { DEPENDS $(<) : $(>) ; # jar files can contain .gifs and other files; look # for just the .java files j = ; for i in $(>) { switch $(i:S) { case .java : j += $(i) ; case * : JARMEMBERS += $(i) ; } } DEPENDS $(<) : $(j:S=$(SUFCLASS)) ; ClassFiles $(j) ; } actions JarFile { csh -c jar -cvf $(<) $(JARMEMBERS) *.class } jar = login.jar ; java_files = mgApp.java ImagePanel.java mgDBLogin.java mgDatabase.java mgLoginFailed.java mgEmailLauncher.java mgUserMenu.java ; media = CCCSmallLogo.gif CCClogo30.gif RussianFlag.gif USFlag.gif ; font_prop = mg-font.properties ; dest_dir = ..\\classes ; DEPENDS all : $(jar) ; JarFile $(jar) : $(java_files) $(media) $(font_prop) ; Install $(dest_dir) : $(jar) ; # MkDir $(dest_dir) ; From ianbarnard@compuserve.com Fri, 5 Sep 1997 03:38:42 -0400 Date: Fri, 5 Sep 1997 03:38:42 -0400 From: Ian Barnard ianbarnard@compuserve.com Subject: Jam binaries for win95 Can anyone point me at a jam binary for Win95? I don't have NT and don't seem to be able to build the jam distribution on win95 (OSR2) with VC++ 5.0 TIA Ian Barnard From jstewart@kdc-tvcom.com Fri, 5 Sep 1997 08:26:04 -0400 Date: Fri, 5 Sep 1997 08:26:04 -0400 From: jstewart@kdc-tvcom.com jstewart@kdc-tvcom.com Subject: Jam binaries for win95 A Win95/NT version of jam can be downloaded from the Web page: http://www.fu.is.saga-u.ac.jp/~colin/gcc-extra.html I have version 2.1 of jam compiled under the lcc-win32 compiler and once I get jam to compile itself (the LCC version, that is) I'll make it available. Is it kosher to post binaries to this list server? I can attach stuff to my (sucky) AOL webpage if not! - -Joe From psy@tnova.com Fri, 5 Sep 1997 08:22:38 -0500 Date: Fri, 5 Sep 1997 08:22:38 -0500 From: Paul Yadlowsky psy@tnova.com Subject: Java jamfile/jambase - ------ =_NextPart_000_01BCB9D4.DFC646D0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Thanks, Jeff. Others have mentioned that dealing with dependencies between classes can get pretty ugly with large java projects that are spread over multiple 'packages'. I appreciate your willingness to share. Thanks, - -Paul - ----------------------------------------- Paul Yadlowsky 8307 Summerwood Drive psy@tnova.com Austin, Texas (512) 338-0466 78759 - -----Original Message----- From: Jeff McCarrell [SMTP:jwm@eng.cccpp.com] Sent: Thursday, September 04, 1997 8:47 PM To: JAMMING Distribution List; 'JAMMING Distribution List' Cc: Laura Wingerd Subject: RE: maximum command length under NT At 04:21 PM 9/4/97 -0500, Paul Yadlowsky wrote: > >Have any of you jammers developed a jambase that'll >handle large Java projects? > >-Paul > >----------------------------------------- > >Paul Yadlowsky 8307 Summerwood Drive >psy@tnova.com Austin, Texas >(512) 338-0466 78759 > well, I've built a jamfile that compiles java files into .jar files. I used it to build one of 5 components of a 5k line java project, just to prove to myself it could be done. The jamfile follows below. So, no, I don't have a jambase for a large java project. But I have no doubts that I could develop one. - -- jeff SUFCLASS default = .class ; # modelled on Objects rule ClassFiles { s = $(<) ; if $(SOURCE_GRIST) { s = $(<:G=$(SOURCE_GRIST)) ; } for i in $(s) { ClassFile $(i:S=$(SUFCLASS)) : $(i) ; } } # modelled on Object rule ClassFile { # locate object and search for source, if wanted Clean clean : $(<) ; LOCATE on $(<) = $(LOCATE_TARGET) ; SEARCH on $(>) = $(SEARCH_SOURCE) ; DEPENDS $(<) : $(>) ; # if source is not .c, generate .c with specific rule switch $(>:S) { case .java : Javac $(<) : $(>) ; case * : UserObject $(<) : $(>) ; } } rule Javac { DEPENDS $(<) : $(>) ; } actions Javac { javac $(>) } rule JarFile { DEPENDS $(<) : $(>) ; # jar files can contain .gifs and other files; look # for just the .java files j = ; for i in $(>) { switch $(i:S) { case .java : j += $(i) ; case * : JARMEMBERS += $(i) ; } } DEPENDS $(<) : $(j:S=$(SUFCLASS)) ; ClassFiles $(j) ; } actions JarFile { csh -c jar -cvf $(<) $(JARMEMBERS) *.class } jar = login.jar ; java_files = mgApp.java ImagePanel.java mgDBLogin.java mgDatabase.java mgLoginFailed.java mgEmailLauncher.java mgUserMenu.java ; media = CCCSmallLogo.gif CCClogo30.gif RussianFlag.gif USFlag.gif ; font_prop = mg-font.properties ; dest_dir = ..\\classes ; DEPENDS all : $(jar) ; JarFile $(jar) : $(java_files) $(media) $(font_prop) ; Install $(dest_dir) : $(jar) ; # MkDir $(dest_dir) ; - ------ =_NextPart_000_01BCB9D4.DFC646D0 Content-Type: application/ms-tnef Content-Transfer-Encoding: base64 eJ8+IicNAQaQCAAEAAAAAAABAAEAAQeQBgAIAAAA5AQAAAAAAADoAAEIgAcAGAAAAElQTS5NaWNy b3NvZnQgTWFpbC5Ob3RlADEIAQ2ABAACAAAAAgACAAEEkAYAuAEAAAEAAAAQAAAAAwAAMAIAAAAL AA8OAAAAAAIB/w8BAAAATAAAAAAAAACBKx+kvqMQGZ1uAN0BD1QCAAAAAEpBTU1JTkcgRGlzdHJp YnV0aW9uIExpc3QAU01UUABqYW1taW5nQHBlcmZvcmNlLmNvbQAeAAIwAQAAAAUAAABTTVRQAAAA AB4AAzABAAAAFQAAAGphbW1pbmdAcGVyZm9yY2UuY29tAAAAAAMAFQwBAAAAAwD+DwYAAAAeAAEw AQAAABwAAAAnSkFNTUlORyBEaXN0cmlidXRpb24gTGlzdCcAAgELMAEAAAAaAAAAU01UUDpKQU1N SU5HQFBFUkZPUkNFLkNPTQAAAAMAADkAAAAACwBAOgEAAAAeAPZfAQAAABoAAABKQU1NSU5HIERp c3RyaWJ1dGlvbiBMaXN0AAAAAgH3XwEAAABMAAAAAAAAAIErH6S+oxAZnW4A3QEPVAIAAAAASkFN TUlORyBEaXN0cmlidXRpb24gTGlzdABTTVRQAGphbW1pbmdAcGVyZm9yY2UuY29tAAMA/V8BAAAA AwD/XwAAAAACAfYPAQAAAAQAAAAAAAACSV0BBIABABUAAABKYXZhIGphbWZpbGUvamFtYmFzZQB8 BwEFgAMADgAAAM0HCQAFAAgAFgAmAAUAKwEBIIADAA4AAADNBwkABQAIABMABgAFAAgBAQmAAQAh AAAANEM4NzczRjRGMDI1RDExMUJGOTEwMDIwQUYxNzUzNzIA8gYBA5AGAOgKAAAhAAAACwACAAEA AAALACMAAAAAAAMAJgAAAAAACwApAAAAAAADAC4AAAAAAAMANgAAAAAAQAA5AKBLj8f+ubwBHgBw AAEAAAAVAAAASmF2YSBqYW1maWxlL2phbWJhc2UAAAAAAgFxAAEAAAAWAAAAAby5/sdw9HOHTiXw EdG/kQAgrxdTcgAAHgAeDAEAAAAFAAAAU01UUAAAAAAeAB8MAQAAAA4AAABwc3lAdG5vdmEuY29t AAAAAwAGELoRj8UDAAcQzgcAAB4ACBABAAAAZQAAAFRIQU5LUyxKRUZGT1RIRVJTSEFWRU1FTlRJ T05FRFRIQVRERUFMSU5HV0lUSERFUEVOREVOQ0lFU0JFVFdFRU5DTEFTU0VTQ0FOR0VUUFJFVFRZ VUdMWVdJVEhMQVJHRUpBVkEAAAAAAgEJEAEAAADYBwAA1AcAAMwQAABMWkZ1KT2UHQMACgByY3Bn MTI1FjIA+Atgbg4QMDMznQH3IAKkBGQCAGNoCsDgc2V0MCAIVQKDAFDjA9QCAHBycQ5QEPgHE48C gxMhAwEQ6VRhaANxbQKDMxJrE9Z9CoAIyCA2OwlvDjA1AoAKgXVjewBQCwNjEkIBQAqxCoBUgREQ bmtzLCBKARHALiAgT3RoBJAEILEREHZlIAeAAjBpAiD1CYAgHHBhBUABAAdAC4C8ZyAD8BxwGxQB AHAJ8FkBAG5jCJAEIGIRUHe5CeEgYwtgBBAHkWMDkRpnEVAgEvARUHR5ILh1Z2wh0B6YC2ByIUCU IGoc4GEhcW9qBZBedAQgHcMKwB0AcyGBYY0doG8c8AXAbXVsHVCLC1AdACcKsGNrYSFArHMnHDEb FEkkYHAhgbcfsB3gHQB5CGEegWweQjMdgAQRdG8koBERZS7HGxQbGxsULVBhJYApqlMpqAswbm8D 8GQj4GzHCrEaoQLRMSAtLj8vT2cvtCmqK0IgWSTwCQB3PHNrIdAybzN/NBc4MyQwNwYAdW0HgHJ3 cm8EcCBEBRAc8BsUcLBzeUB0LQAjYC4FoI5tNB84rzlHQXVzHVBibhvQVGV4IKAbFCgSNQ4gKSAP YDgtMDg0NjY5Tz1vPhg3OBg3NTksShRyczE38z97FkIxNimmA2An0CPg9S4kTwUQZwuAB0AF0CjR fyZRMHtCVBsDCzFCVAIAafAtMTQ0AUAeQEZjDNBRRmNiIEYDYToMg2LnEXAb8gXQY0MKwAlwKHAA IFtTTVRQOmrod21ACfBnN2BKUCdg/TdiXSmlR5AGYAIwR/cbcOEIcHNkYXkb0AZgBTAeZQbQJUE8 IBvQMTk5kTVQODo0NVBQTUr3BFRvR/hBTU1JTpZHNhAEAHQFEGJ1HVJ0IExQYTsl8E/fUOYnqUr3 Q2NH90wrUHIjcJ5XHlEEkAsxSxZ1YiPCkUf3UkU6HRBheAdw/zWAIHADcAOBHaAl0A8gHHDnIeAf cQXATlREb0V7C8ObDlAbI0EFQDwgOjIuEMFOcCA5LzQvTfE8ENg1MDAb0DGNd0JSR/B1GyM+XpVI HOIAcCHQb/9IsCgBIzE1kgQgAQAc8AkA7x9QHaAjcGBxYiCgHQAdwn4nKHBelRuBMfAdACLkSv0j Wj9enCs5ZSdm32fvMGr/XvYxj2tPbF80vzXDGxQ2Kb4+Nt9w/3IPOg87FT47j/91v3bPPr9e5hsU IDAocBvQ/EknHPFQsAMQJFFgYkYw9yXRHcNwkXB7QQQgI0N7MvcEIAuAKREuI0AFwHyzKZX/JzBz gB2RHqApAnqCJQEdgP1f8jV7wx1xAjAEIGABI3C8NWtYAAuAIywqxWpzgU8pAiORHPEpEW15EUBs /0iwfuEFoCWAHaAgAB4AHXH/HDEbcCMieyQCEChwatEf8fNqwSmbU28b0C0AehGFEv4nBUAc02GY AhAFwCNwIu/6dCmVQlDAiGEc0y0AhRH/VeAj9icwhJRg9X+SKZtoUAcjMAERhztVRkNMQdxTUwyE AaAeAWYrUQVA3j19UCCDGHEpuSMdEARxtyhwHZFQ8U9V8zsVciWA9R0AQyCSRnwSKaUAACm0x5Fy BCCSMCQoPHTwkssHkWMGkJeRU09VUkMARV9HUklTVCmPlriWm3dCl2U6Rz2ZTduX2AySfZgPieJp fQGXkT5zmi+ghZFylZeXkWk6/lOccpC1nWFW8KKRnX8pw/+eVgySk0+UVpTve0GWP0eQ76aACQAh ACfRb1XzX7EdoC8RQArAEQCJ03MIYWNl+xvQmRF3AHAn0FU2lsiVkD8eICBirmKjwpfPkXJMT/BD QVRFlDKvI5eCsJTAX1RBUkdFmhCkKqUGAEWyQENIsPQ+sWQds3RfmWSvX5GBREVQ+EVORAXwryOj wrQxtZ//qiGZEawkfQAEIC0ABUBwgP8b0CFAHYBUoCfRcIAegyShvyeRRjC7IJVCuA8D4XSrsf+0 EaLAoD+hSSEAYgF9YSNhX0fzY9O7ILc/v04qwJVV/RFAcpR0wV+kfymqlUPBA/+pD7aft6ueWwDQ HVIEIMfPv5b1I0LBQrQwyp/HSHKoz//I78n/qZp9dyDzBaACMAtx/31QQ0AD0KsjQmAcgXykUWD5 CQBva6mLidOC5IWhwET/fLPNKpIhsrqfec5Xvr+9Sr+isdwK3I+/j8CV2kArl4IHpA3Crk/BUk1F TUL8RVIF8OH/3xWleqV50Z/8KGqizrK6lZjo0spvy3770C+W9WMpQC4guyB9cu+AvnaZIq9BryDk SHTwKpJU/+vvgrIKwZIwCQBDQX1jksUdI0JffLSSMJa5bWdB90qBI0KWuUkAwCFAK0AdgMZs9m72 EERCTPOV+D6vHeABoGHx+Z9n+UNGC3DzlAH7P2dFAMADEFRxH6CbHIH9D2fD8kOgbnX2bluSxQeA ZAcw9TxDAzBTd/dwKHD5QW/VggKM84FvuzUwA/1Sc4AN0A2wRgtgc0owBAxVUwbfAXcPol+vI5GO UJIw9hAtD6IuChK/ELAdUB/RksUO0HOQXwIg/fNCLimQDPEghpLL5/YDgf/otNQw0s3tpQ9WD0T0 tvBy7wID8HIJx9LNScwgT2BJQZ+vIAwmEXYPrtfgTWtSEC9YwBVKkssZ4QAZsAMAEBAAAAAAAwAR EAAAAAADAIAQ/////0AABzBA339J/rm8AUAACDBA339J/rm8AQsAAIAIIAYAAAAAAMAAAAAAAABG AAAAAAOFAAAAAAAAAwACgAggBgAAAAAAwAAAAAAAAEYAAAAAEIUAAAAAAAADAAWACCAGAAAAAADA AAAAAAAARgAAAABShQAAtw0AAB4AJYAIIAYAAAAAAMAAAAAAAABGAAAAAFSFAAABAAAABAAAADgu MAADACaACCAGAAAAAADAAAAAAAAARgAAAAABhQAAAAAAAAsAL4AIIAYAAAAAAMAAAAAAAABGAAAA AA6FAAAAAAAAAwAwgAggBgAAAAAAwAAAAAAAAEYAAAAAEYUAAAAAAAADADKACCAGAAAAAADAAAAA AAAARgAAAAAYhQAAAAAAAB4AQYAIIAYAAAAAAMAAAAAAAABGAAAAADaFAAABAAAAAQAAAAAAAAAe AEKACCAGAAAAAADAAAAAAAAARgAAAAA3hQAAAQAAAAEAAAAAAAAAHgBDgAggBgAAAAAAwAAAAAAA AEYAAAAAOIUAAAEAAAABAAAAAAAAAB4APQABAAAAAQAAAAAAAAADAA00/TcAACZl - ------ =_NextPart_000_01BCB9D4.DFC646D0-- From ianbarnard@compuserve.com Fri, 5 Sep 1997 09:38:29 -0400 Date: Fri, 5 Sep 1997 09:38:29 -0400 From: Ian Barnard ianbarnard@compuserve.com Subject: Jam binaries for win95 Thanks, I've tried the Ming binary, and it has two problems for me: 1: (minor but irritating) It is compiled with a gnu-win32 jambase rathe= r than MS/VC rules. 2: (more serious) it doesn't run multi-line commands through a batch file, so actions like Archive which need to use 'IF EXISTS $(<) SET ... ' don= 't work. At the moment I'm using it, but I'm having to use perl scripts to do some= things which I should be able to do if batch file execution worked. I don't know about binary posts, probably better to put your lcc-compiled= version on your AOL page. Thanks, Ian - ---------- A Win95/NT version of jam can be downloaded from the Web page: http://www.fu.is.saga-u.ac.jp/~colin/gcc-extra.html I have version 2.1 of jam compiled under the lcc-win32 compiler and once = I get jam to compile itself (the LCC version, that is) I'll make it available. Is it kosher to post binaries to this list server? I can attach stuff to = my (sucky) AOL webpage if not! - -Joe From wilf@cix.compulink.co.uk Fri, 5 Sep 97 07:33 BST-1 Date: Fri, 5 Sep 97 07:33 BST-1 From: Wilf Coles wilf@cix.compulink.co.uk Subject: maximum command length under NT In-Reply-To: <199709041939.MAA05730@computer.perforce.com> > bytes, which is annoying. The upcoming Jam distribution will > use separate limits for cmd line length and action block size. > > --Laura What news on upcoming Jam distribution, please? Cheers, Wilf Coles From carmen@sybase.com Fri, 05 Sep 1997 13:13:45 -0700 Date: Fri, 05 Sep 1997 13:13:45 -0700 From: Carmen Kelling carmen@sybase.com Subject: maximum command length under NT --WHERE FOUND IN NT? After all of this talk, I realize that this may resolve other prob's I am seeing on NT. Can someone please tell me where they find this value on the NT side (not SJAM)? Thanks, Carmen Laura Wingerd wrote: > > ericm@jeeves.net (Eric Merrill) asks: > > > > Why is MAXCMD defined as 996 when running under NT? I'd like to be able to > > invoke some commands that are longer than this. > > Well, on NT you can't issue a command longer than about 996 bytes. > However, Jam 2.10 also limits the length of an action on NT to 996 > bytes, which is annoying. The upcoming Jam distribution will > use separate limits for cmd line length and action block size. > > --Laura > > ------------------------------------------------------------------------ > Laura Wingerd > Perforce Software, Inc. > wingerd@perforce.com - -- _/ _/ _/ _/_/_/ _/_/_/ _/_/ _/ _/_/ _/ _/ _/ _/ _/ _/ | _/ _/ _/ _/ _/_/_/ _/_/_/ _/_/_/_/ Carmen W. Kelling - -*- -_/---_/---_/_/---_/-------_/---_/----_/-----_/--tel: 510-922-5425 | _/ _/ _/ _/ _/ _/ _/ _/ fax: 510-922-5710 | Quality Infrastructure/Tools Group to <-W.I.R.E.D. http://www-infra From laura@perforce.com Fri, 5 Sep 1997 16:32:47 -0700 (PDT) Date: Fri, 5 Sep 1997 16:32:47 -0700 (PDT) From: Laura Wingerd laura@perforce.com Subject: maximum command length under NT --WHERE FOUND IN NT? Hi there, que pasa? When I was in ISS, there was really a rock-hard limit of 996 bytes in the cmd.exe command line buffer. I don't have an NT machine at hand at the moment to fool around with, but Ames suggests that the 996 limit was 3.5 only, and 4.0 has a much larger limit (either 10K or 32K, according to what people are posting to the jamming mailing list). And I don't know where it would be documented, but you could probably determine the limit with a script that tries to invoke a long command. Good luck, - --L From laura@perforce.com Fri, 5 Sep 1997 16:49:28 -0700 (PDT) Date: Fri, 5 Sep 1997 16:49:28 -0700 (PDT) From: Laura Wingerd laura@perforce.com Subject: maximum command length under NT --WHERE FOUND IN NT? In case you're all wondering about the chummy vagueness of this message, I *meant* to send it to my buddy Carmen and Sybase... (I'm still learning how to use 'elm'.) - --Laura Laura Wingerd writes: > Hi there, que pasa? > > When I was in ISS, there was really a rock-hard limit of 996 bytes in the > cmd.exe command line buffer. > > I don't have an NT machine at hand at the moment to fool around with, but > Ames suggests that the 996 limit was 3.5 only, and 4.0 has a much larger > limit (either 10K or 32K, according to what people are posting to the > jamming mailing list). And I don't know where it would be documented, but > you could probably determine the limit with a script that tries to invoke > a long command. > > Good luck, > --L > From nwoods@cthulhu.engr.sgi.com Fri, 5 Sep 1997 17:06:15 -0700 (PDT) Date: Fri, 5 Sep 1997 17:06:15 -0700 (PDT) From: Nick Woods nwoods@cthulhu.engr.sgi.com Subject: Jam makefiles for Java... Has anyone done much work with Jam ad Java, and if so do you have any sample Jambase/Jamfile files you could send my way, or point me to. I am currently using GNU make for building Java projects, but thought I'd see if Jam could do the job, but I'm not sure if there are too many limitations, or if it can successfully handle all my needs. Any help would be much appreciated... Nick Woods nwoods@sgi.com From colin@bird.fu.is.saga-u.ac.jp Tue, 9 Sep 1997 17:46:23 +0900 Date: Tue, 9 Sep 1997 17:46:23 +0900 From: Colin Peters colin@bird.fu.is.saga-u.ac.jp Subject: Jam binaries for win95 Ian Barnard (ianbarnard@compuserve.com) writes: >Thanks, I've tried the Ming binary, and it has two problems for me: > > 1: (minor but irritating) It is compiled with a gnu-win32 jambase rather >than MS/VC rules. > 2: (more serious) it doesn't run multi-line commands through a batch >file, > so actions like Archive which need to use 'IF EXISTS $(<) SET ... ' don't > work. Not trying to make any excuses but... ok, I am making excuses. The Mingw32 version of Jam is a hack. It works for me, but I would really like to make many improvements. I just haven't had time. It seemed reasonable at the time to include a Mingw32 (or GNU-Win32) specific jambase rather than the generic one, assuming that those people who wanted a generic system would use the real Jam. Basically I wanted to have a simple Jambase for my own development purposes, and which might be appropriate for others using Mingw32. You can, of course, simply re-compile jam with the generic jambase from the normal distribution. The action execution code was considerably re-written, and not necessarily in the best way, just to get it to run. I didn't want the overhead of writing a batch file for every action, and I have no actions that need to be run as batch files, so I just threw together something that worked. It should be a relatively simple exercise to rewrite the execution module to output multi-line rules to a temporary batch file and execute that. One of the nice things about Jam is that you have the source code and it is easy to modify, so anything you don't like about it, you can change. Colin. - -- Colin Peters - Saga Univ. Dept. of Information Science - -- colin@bird.fu.is.saga-u.ac.jp - finger for PGP public key - -- http://www.fu.is.saga-u.ac.jp/~colin/index.html - -- http://www.geocities.com/Tokyo/Towers/6162/ From CowhamR@logica.com Tue, 9 Sep 1997 09:58:38 +0100 Date: Tue, 9 Sep 1997 09:58:38 +0100 From: "# Cowham, Robert Exchange CowhamR@logica.com Subject: Jam binaries for win95 I enclose a copy of jam built with MS C if that's of any use. Robert > ---------- > From: Ian Barnard[SMTP:ianbarnard@compuserve.com] > Reply To: JAMMING Distribution List > Sent: 05 September 1997 14:38 > To: 'JAMMING Distribution List' > Subject: RE: Jam binaries for win95 > > Thanks, I've tried the Ming binary, and it has two problems for me: > > 1: (minor but irritating) It is compiled with a gnu-win32 jambase > rather > than MS/VC rules. > 2: (more serious) it doesn't run multi-line commands through a batch > file, > so actions like Archive which need to use 'IF EXISTS $(<) SET ... ' > don't > work. > > At the moment I'm using it, but I'm having to use perl scripts to do > some > things which I should be able to do if batch file execution worked. > > I don't know about binary posts, probably better to put your > lcc-compiled > version on your AOL page. > > Thanks, Ian > ---------- > > A Win95/NT version of jam can be downloaded from the Web page: > > http://www.fu.is.saga-u.ac.jp/~colin/gcc-extra.html > > I have version 2.1 of jam compiled under the lcc-win32 compiler and > once I > get jam to compile itself (the LCC version, that is) I'll make it > available. > > Is it kosher to post binaries to this list server? I can attach stuff > to my > (sucky) AOL webpage if not! > > -Joe > > > begin 600 jam.zip M4$L#!!0````(`!9TZ"([0+G=.P0!``!0`@`'````:F%M+F5X9>PZ?714U9UW M/@)#''BC&RMJJ@&S"H*(@B[APTX\C$>1Z*L*6D46!70845B+%2V1X,LC&881 MV8J"1D6AE=V3;:G%W>`"&V@.B1IMU-C&T[C-NJE]SYVS9^QF95H&9G\?][[W M,DED_]US-O`^[OU]W-_7_=W?O6]J[GY6!(000;@*!2%:!/]%Q9G_ZN`:=_'; MX\2!,>]/:/$M?'_"'?%5WZ]8^^B:!Q^][^&*Y?<]\LB:=17WKZQX]+%'*E8] M4C'_UMLK'EZS8N6TL6-+*R4//2;$0E^)V'KKL1F*;Y\8YSO+%RP32WU"W.'C ML3Z`6P2NM=B.\KN?Y<8_]119MS-`]PCC.D_GP7_[_6*2^(:_5K_8_>UO0AC^ M;^K/_2+H&QD^;=W*]>O@^>:]/A8(=764X+\*(99->W3%?>ON$^)WHP7K'H+G M_8,91^'_-$83Y1,`5@?7(6@DAN"U3EO%B&^/$J0[\;O4/Q3OT96KURP'<(4@ M&XB)\)PV!.]Z\?]__Z?_%J4R1B9T^^([X^40?=:I'PMAM`63L5PJ%D[5Y)+5 MH51L/+V$4[&.&4T./3ZZJ%-94$"B=\UCE[:5BC-B0T\RQ![)*Q MD"U?4S6AU$W!I(]?D]4@7ZZ=5$P!$C[_>ND][_P2]`5EH8N$?$BI$DI%P[K5 MLD`U=6L/6X*(.MT_LM<=:*^M*%Y-@[17/OXI=BX12@CW7_SX)5%AO?H@ M0BO(G"A?*AI,U>3A/=Z$Q$(1#\3W8CN[6;:S7E;`K&LB,+M-,ANW%JMU7Q"R- MS%H>D,SZB%D?,>M'9IU(?+XB[HWW8'N,:OM&9@-(O%$1=\;SV%ZCVAT)_U!F'ZZ4 MS#J(60 M6^F]#0!3; MJU6[N<@YQ.R#%9)9,S%K)F;[X5W--2,3IND6UFF.E>G6F)>0)`0S)A7+PSRQ M0W+^"F@8M3FAU=?('DP2C]U'X^L)\$Y,4@XD`#R@JUE[^&7L#SN#!.6C$`%L M^[5"H0`CZ=9O;R!.KF1!3@0P#`GC4%NW"!K(;-7J+R11$)1GQGF'\24$RAOK M(1_5?\N+%Y(/PG/'FRX3S_IRO[:MU$>)*14MA]"UNQUREJ`3A&8)S#"`VF-Y M7,GMT?R.R;70$N+.(V_*"O;LP,>_A`@UD[E9J=WO&Y]I'IS;,)2S7S= M'1W"`1*=#*4,AE*&UI3Z)TB(#+RM(6Q+"+EP9"5V%K&S1JT%JTJ4L+.`?:V$ MD2\SI/?GKZJHD#ZQ/'H37_NG%&L6A)/]&.KWEAJLGP3LD_8AT=4_(^,Y*SQ_F41B-A9!2/$0/F7861'@EC MG\+8-A+&YC-*ND)A;!T)`\M9>Q[>9B'NPUT!H[9KM-9PN4`K=14JS9GG1T7E M^*BX`:XX7%O@:H;K`[BR<)T#<.U(R:S&:H$S!%*6B-\!?H'\]4^EY!%,7=;Z MZRD986**WX5Y=GZ3!.9TZQX&QI.1?0K*OI9E M7SY&RLZZ3I#BKT?QOWI1LD;8\"O-Q="34&L-OH`4O]F(9%B6VK]2:\?N.L7* M6!\5+YX(_(`CHQ6$L,0G8'".ZQ&(?F[6['N3-T$VXR0_2X%29<;&#@:UY;R08%!,IR\CG3QN"9,$9@H6+M& M$=^B3,T*#:T_RHL2P\;M-&+10KM*]>;:8]DV\BFO!?WV=<+) ME`#K`)A]BW`2*71U8M<<[O)S5Q=V>>H!7'-:J`KHAWK@*+]!/?"NJ@<\MJ'D MVN?_$S*V\U1)HK,UH::\;GWZ/4\^X)TBO+='Z9QH>(Z'U@_BB+%QD>(( M0E2SF?JAP&/.OQ@/!&-+#[\!E)E?5$R&,8(?T<(7<%W"`XG_6* M6Q@$]G-.N%B"`2T9`!S,PFW&1^2['<<63.FXY,-`UVWQ`:1YZSG)##)XYVQF MED=`D\-L^(B*RQXT]KN/2U]87`1*="ZV>"K,9-^@E6^OHB%U+NMTWN%8Y*;Y M%"81VIV'[;=QJFQ62U-PMA0(U,Y5N9IFJHKBKK@NJ$LK-Q37!>)I,NAHOVN# M#N86#P'(VODC3UCB$0PO4R%:#T)T0%._G&9[WBE5\P3,2>_FPD]7TU1180%* M^L?3<+C>3%#\@CR`%!LOWGN58*!L42;P%:M:!JHF*'JL3ZI4%"9\U-&F.O(J ML67).P/2.P/HG0$*BOI9L@>=>>HQZ3\ M+67V/X)DGD0N15D@'6S]/3C-O+:L MKEJD@S',[@G;P::"P;KO2FS%U@"CC%OYFRHB35S M,HH11=2+N738@P`'C+NM]A)LW`@X$(N8:6S\5E"@LC"JI;]-0N:.]@6-ENDP M,%!1Q-'MUY3O`*8+^'>:5XS#R-^>%S@HE^&X<7L(N+T.Y=U=&1<)OO4'.#>V9#AS3Q%$G M[K@;>.\-A(63YEJRREJB3E-H[\>`^NTV%=K;MW*($*8*E.D4*&'5G$G-B&K. M0HGFH5PPJ\Y6\E:53(7E1MN&@UAXPYSO3K#W"MZL$Z&I/97G$:X>,UKMJWU. MB2`G+B9L&$+#LPB)7.^G([8!,C&*Z>SZ^H7<]<&F"5;*R=("!"YH)A;]\1;4 M_6>L<;P;&Q\]HPS1F))S?,`['WY"G86Q.+IFXB>]UZ:3C?W695SQ&/,FL63R M^`&3J(V'=31N/1\#9<6(QR0\8#LIPVU,LRP$6EHV"L^B%W"9[#]=*+00%T1W M,Z8>HHR9-G,G"X6D.7`2%](P5P+JY&*\4/579`KFZUZTP2ND.1ZUPNPPQ3H_`[)L''>.&5$OX9P.V;T73_@/RN,@[C8ZS6\%%"=>//<]S`21\0?7G#P9`PJI81-M,!]%DGJ1Y"!@5E*FVB%0: M.QI]!8A]@BF#E"D-!=F#(GH)WMZ@1($,CJ.?QX.?Y1&R;FWC#T^LV0O36+,` M:H:E$/M)MUIO\F#]C<3ZK(0**O1R(8W<22*6.^#Z8BHZJJ3HSU_< M4?P7*`G:7\-,**11GG:S_R3^T`$71$N^L;VJ2%YMR[ M+$D\E&4O3.$XB,=T#>@C)?D:+. M*.QE%5('(74PTFSBB(WC^")Q2[D"39H])U"S#NX=V"Y[NS%8)@H/P:=>4(KN MBKB3>6M'2%@C-UX5NDT*60OFO$5X:&[;G@Z3AL?7>&E M>\!+=Y6VM=K;KM*V7368ST0/V+I*)X:;!C$\5^`,96._^;14%2$\;:LH>#03 MQU'F-V=2@QUGRL\U&$O\L86H>99?-X6'@J*HXQ0&;Q:9`3<;'8.JE M>.CE>%C@7( MN)&XQT"R*)6LE3>WGWJZ18Z97B6ZX4^["4 MW`')P[X))_3A?K8%'=+0I-8MXW(B-0Y;7IA%L`<9YEE6T8KQ#*ZEM_&751IQ M%>/%\PBH<@!%)_LK<,V.[68AC1M9@5@35#%=E':L&#O!J.V2102=D'8G8[N3 M-7N-VA[HQ;HD'>M)X>8ZO6A?LC1Y?9`_$#&D3T+V2XCE0"P):9&0K`/)2DBK MA.0<2$Y".@BB'8F]HLX\40_KS_SS"YS?$9UZGJ(E#E;/V,N(B?-$5G@1P)$E M.<48M71K`U=EJ9I(HX^V9G3^"/1-B'GE&>D7IHOH77-7RJ\/#%$P$6W5K,;=[CX!#KJ?8,416P4!UU1XX+'VYO/D$QJX6+L4B5#9'C41^A MO(DH%WE0=,W4%(J?4/`+*FX'8OT%/"'I1W6HF'BB488OGV)P"?('(AZ8$LL? M[0L$L-C+$G$?$??1&/.T^GO15C4A.A'II?UP+W"H$EACX&<\94T\[1JEI2N( M:R95$VZ??Y1.)64K>#0$9K,_)AFS[8)(EPK.R1"]GS1(&2T.,6:$9RCX"QYK M"K_23U&B.`\O&00'!FV-TF_NKU]\@/?D:>E!S_D!U+MCJ-Y%]Z4IR\'\?UIY M#);1$V1)W5K3*--W/_=(9Y(!N0X/A1MPCX5PGV;2MQ@B)_LM849: M@3F[XVM,N=8)7-WP7;?F-$B;9:`3[2MR)`.;^:U4."W726WZL\N(+*4S^2*O-]&?4L.8+?AQEKU0/#$W"Z83<03$$D7P^O^.0*+SB%-D`\-P'44$1;7U!67+LA3'$4YC MZI?I:CA_P7SBTHI:^1F;XXPRF-2W,:QI.!<*C7+<8$.R%A"7/_VF1@Q%ZA^!>SFA5 ML;Q6SZL8K\/W:B:>B@-5.I8A0Y$^PB^7D_",C[9$COXYH!U9&L)V5P<`@MUN5=+!*NT,QUCK?Q(YK\6,$(0)#3MBX@A-PN MX_/1@6-'SO M>L\US&-EI#5.KPE/D^ MWGY"AD;5[V6]Z%=0`RGY_3[DJRZ#]_\A[6F`I"K.?/.S,.!P,\B(([L[PX#)<:66)DK0.NZ2 M4JM"&4Q`=N^\73A148EN"=:-NIKWO(DWT3E8DXESWT]WOWZSP]Y='54]^[K[ MZZ^_[O[ZZZ_[^[JI7AG/L><'56(Q+LLY\K>"9T?9J9P(QL\`T49JN*JU1L'* M%I,LP*MF,R%O5N:;:9*45*B?W/3C;E0F13E!$1A[;BFZZ+.%DO(2E!?/=59R M*R*]R_ZMA5NEXFTR'QJ7RDGWF9BL(&PYKPIL9*SF.E*(&C<5.6.@$(1-Z;U> MA6&5G%$H,F3NC4J70>9<,B9W5A9?V1S;RI*Y@F._;*"%V88C;3CBREC>%,#1 M0->2:N8)17,23^BRFK.=/GY3N"DG[?PM2;WSVRSG MV#VL=K]=%7N\5^[Q-`^BJD5ZSX3%[$#O#+'A'TJ7N($CP/K9]5WC^+`"#"ZX M1%$G[VJWWF2(X2QDTV5H4($4[/DV`%GLJ5/I=1C71]4`0W*8LXQ.#]E24>, MC3ALEOTTZN*[UV(W-=>3KUW%?D/LG\B\C$T@HR)^V04L_4]KQ!8`C:#9??@K M-OFV@_E],E\W.C)7?"W@VQ5)@0%TE;!D$]$5R>[#"B?'\F@^4A60OP9;9%%, MEH0[3!YA>[OS:$2M$J4"R&`"V6^;S9KHI?+S?+J_-_TT5YLQG`FGL2:=/I)/ M%WK3+^?)'`LJ,UE2!6M*HSJY<*/[:'DH/<+CBE(=SY'S/2:!O#"=Z!)1.O?Z MX#>DLN7027#!=,'_9=AH\C!&*N!&*@5"M3.234=AE,MX$F)WBR$@.B;,8R:A M0Y/LOB(=L>1_@/-C.]9S$=43MO=B9(Z(E#'2)"*I7HC$1&091H(B\@!&_HLG MF/T\1AP1&<'(41%)]$'D-8YD`L[N.^EK87\KT71B>`ZP-7V"+`FDHQDC&2>'U@L!0"2D2`#-2!\P@*SZ@IVS-N);@A# MU$B-F8MD6\!?*W.[1'5?#:K72.SPN)&*-D2'8AH:AT86?T%*G4ILBY'!C?.A M4L,]2B(<:/DUJ1/A7JV`$=M"DE^4WC)=T&WOPOZ;02,5<:]C#+2E:(WUU%81 M("<2B9`WB'IV-8\1HL.=6,7SO!%J:2NYOX=EM,*N_I9S6:N@DTY+Z==R+N4Y MDQT]@[>RG#YH)O$\3MX`Y9P?=J*I#C MX9RXEE`Y)Q#!_JHWE6DT[$/8RK<$S%N0XOP8(KT]I1/_0\WWRIJK;2?AX$HG M-P(WPJQ2L<]:!9:3473KN7NND,-9<@M0&RH MH0)?A^T.S\FWG)N"N7?0GB*V/YPNQ3L\;QW2"A["\Y5VQ`9R$A=!9]KUAK$3 M$U3R9%6C0(NH1J=JJ-!G80<"!&#+O/EQB'5M&)V-"L>VK51D%(O,G]YA7$)X M^)QS#Y+=\#$(F$NH%;%-1-(ZT..RE!`4!0O3L*ZRWJ`LM3;Q4C^@R+7C]XM8 M^/-GO*[)ME-WQ;82'TS!B%O^DN`B_4&G%>_`=.\9"9OU+T( M][RB4NY=!+(W)CL,YZEKB*^J-)@,%(KE/U2CBE)V!W7"?F-,]VY#>D!Q1GHV M/Z03M\Y/7#N!]-QZ\LY-GO+_Z5QW]Y^`Z=%FU-4N^4X@/H27G>82XNQ<*NZV MH0A$GI*%9@49U(+Y\,80$;._`#^YDJ"#=/0# M[ON@Y3O_,@!(!B-H^3QD.;^(LI2%[QU8#O55^4$NSBK5.3*'IWH?E)6I.QWX MZSX08`:6WZZ6?F^A5*."/6>H3*ES3"$56Z476 M>Q4ZEJI#?!SV*OL823U7+]FAEU25>$5JD>U2.;""O7\G MZ*@6K"V]MX:4)_0BOYS@ZZ/#'CE/^9J_,@$EOZ67W#"VI!:%(A^="47FZ466 M3Z@=^IH6EW&)KLSF!HJT0Y9]'"O_:+:&R3@)IEI..80(?^9'^+1`N%U'^%S# MF/$O61H^>\TL''^]R'HL$G#>8Y&;=/B+$7[BN/#%9@U^(L)'QH7?J\._ M@PK^I''AM^CP_X#PD\>%7ZG#WQ_R,Z)B&`!@X"!,6#BHX#P(1W^SQ$^ M."[\6V=K\)\&:\7?,33`-N`G,="KP?%%*B!\2$?X8PU>,:V_@=?I\&N"/GG@ M8\$Y.N`R/^"8-0/@OSA+@T\0O+/NJZ)XS.EVJ"@>>[@+512//MUF%4UA]+2`WEXR>\DN9B)1A77_T\#M M_H'LA@-?B6WZP$!=YT"UN>>V;YB&_773^"Z$9R'T0_@<0M(RC;^`\)<0>B'L MA7`"*]`>!="X_6F<1Z$Q1"NA+`6P@X(;T`( MW&`:%T!8!>&'$`8@?`)AQ@K36`YA)835$!Z'\`J$,H3F&TUC(82K(7P/PI,0 MGH5P$,(PA-]".`ZA`=J2@'`VA`40%O;G.BNA@ZT#)X;GD)XFM4+0T2AOX/U@ M/MK+^=1CK#O%67=BSZ2-J'31^2:^/R$N``JUC_#=,00C*M4\4JUT-<^_(0A> M,?Z&P*_=X0;>S7].Q]A(UYYIFB)KTA"62`^3@EP^B9I[@=?>>HKMF!:[1S^K5NV'45,_WD&SAK=FPEB%S:PYL>43++I[ MQ0UOHS[WWE"*XF'8Z?SIO:$4I0NGP@)2YQA?.[=7-[IV(5GK;Z$9G&U_.DG[ M"W3+W8'?;'T@C79W(Y%.R3EC)_YQ\<`C$W4V4/$P<8A'8\5[YZGBT5B1!"I+ M1E3=7*T]PA-VMB@>[D?Y)EJS2$&*8DP1[XU/KPKSN;S;7=L!4<_&*_"2T4#< M?$S*;AVM=D:U+2PY)XX%IVL*:3POKG;&>9??+("0LG4S)&45R]D@#?L5]Y=$ M6:6VG8SS--GI7F=%J)O']HA.RAE>O?8>',SGZ/XQ.RSZST.YQ_UIV4638OF$ M'(A(;A(9Y?J0@ZHU[%/??A.);=7--UVP-LRFL0B[[_!`U*LVUQF%DMO$%)CL MU0\(ZG#N2:M&7U$V4I)'TE[L@&=OHM[7*7KI2Z:HOUKC::CFF_0<+6`]F22^ M3C!B.0MO1E1US(;HS9&_4+8[2@?E#U\BIL$Q]HR5RS2^[N+$9RHH427ZYB1]<;:_+[KY@K/E_#!"'Y/2 M!?7XC,ZT&2P4/3+/$/PN;4G`3G9_GBN,Y'](A[;@M/R15SU M6P9-1D[KEIG,&Y$[O^ MS!58.BZ(P6>1MJC63THP8R6RC>,@VX[(CMQ`R-P[O;YVXK9:!1#'KG%P M[$4<#PL/K7,2MRK`\PG^*0=D1B?KN M(*Q.(B>@BT;"%$9=2[1;^83\@2X<)3F:,U.YSI%+!F+;"/T`OT!%&2UC,Y@] MXK%N7F)'\)#P?K8N4!&\#JX7&949S?4S<.[D.HMZ3E'ES*W-<:,LVXF(%$L4 MT4LY?.P"76W0.#Y)/MM41,'BWAJ@U+!*)6W^JH#B".)_D8='J^YWD-U#F&G/.J%7%LQ5:]T%0"*H;8[TFP)?GXDX]M M3KPS(^4)O034\Q6-U*`BE?9<,T15(#8/XU3Y-EE!(I#MN;_XF(<%D?]Q,TQ* M>?Y!39S0AS<,(IN7MJFG:!S^4U!3*5E_*@T88Z927)A$>`Z]\(5O#N$K)SJK M5C2^KY^!#VCJ&8XVZ^IE\$PIZ#D%?:;X<]RYK/11/S3SJLU]Y5!2B]=7S9S0 M!^BPK^9"DZLFB,[DBPZ,=\Z,/W;BBYXW8STXN30=@C2?(@[8[J^3+*09QJ8] MP,!7.&@N"LT%(!SQ6TP:K2SZL* M:#C)1ES_R4"24)H?JZ'HZFDO^BKD7VV1!B&N$QPTB.V=!0-TFY`W`I_Z]3:B MOWT1/4Y![BX[\-NRV["ZN51=9`SX$@U\"8%;"/YE9WWP91KX,@*_$\%?9W!* M6MQ@PN]X]CZU]^']TXUJ',['Z2:V4[P\76@Y1RXPE,IR(614S?EBC<2I^":M MC.5@;`OK2^50;.M+>_G'D1:GN&%"6H+TFA&:#0UU[$X[R]IND4BA43!//3A>NFJ>2`.MLY0&3G> M5.-G'X%L7CJ/WIYQ?Z26U'FT#+)Q4,PUG(+5!N0:-@F3E-Z._+"?[N,)]7<> M:J9QM1"VX9.9@]B4BAR$>0$7W>,T;M.\M?8@PKOX$6CWH%[__?XRYQ,YR'PO MW@Z?._!+2*=I,F[9!Q#=+/FF-*N MH$H7*4[[S)"=1WWYH;_=*SFZ@*/T8`1SX7$S'HGUM*LX]F8!FY^B5P(B]$XA M/[M=(FZ%5M)'V!Y!L"_8".+A[N9->04?W[8=!'F;0/!!"G1&X7$3(BL3X"%# M,;NGT(P2,F4YYWQ3=".]&X:`]@_6F!*I<^\>K#\NO*5Q..JOP'-%"C'U%(VI M8RJCC]*1DP>8B?_/R/+"893F1#EW%2";(I&A7*%5XS)O;)"Q&XD)40ZZ<^@3 M9;"^M<-M[%$26B70RHYIH@KXBEGPPOH3.6'(^6HY@W_DPX-WJ[JG;L3/.JC0 MG:YS0SC6S6L9+H.H\07%#8(&E&));`P+P.K=4J!L%L$*S&"&S\5)U;U>F:^UC/;5Q%. MCUA*MB-87PN3Y>("T4=G.\`>)-3E7*]8SMD_E=M1RUE->Z%P[.D8XSO?,=YXG_8-9]@UQ3"B1<]X=$+SIX M<.1\OU4("2P+VTEQCX.T)W[+V'+,@*B;'\#3'_TO(!\VX^AFOE#P.,^1$4N4M+#DGP@^.I0>QB$3KS>.!-+###C,'7#1)]@6(.(8 MG]E\E7D8A^)5ESF>WU%&*[3S*Y54L-!5VCGPDRJ][0%,_20-.G3/AD\$^P'Z MM?SMGN>AO4_A4-W!N-8K7-R%YXDNA.\>_G9O9<\3GR+654R&A0^V?,0DCZ\^ MW\)50_MY,X1MS`3$/:2ON:+9!82E7L_+>YDP-._0RYEQ?I,$"71V48&P?)]$ MNUZ[PV`#*>']K3,NWA](O"6)UY)X2[5X<2O!+Z"(UUBVHKUB#Z)LI>1\V"1; M"&@(.7K/I36/R1`UY5LK^%NCM4;JFP`^$RGB!?A*3)S',>/&LX44:$^-_2>0 M;4#$[.*E\7@ZGN(S=E$$%Q26`?B(&&0'].PV/$'81MD/Z59/?2C?<`39L5AEB'2D3V MIH`D&Z;&MH_4VB$N/`BI:8F7FN?.9L8"(;Z\6M<XB-#/RT&N:JHV" MXV53$,)JXW.SQ3S43V&?TK8T_YM36,*TBS')#:/J[SS][P?9]H>;:"."BY[] M*'QGPD[[(6KX3LQ"-)VCO0%\Q'C4VH%)EG/Z09IPV)?BM,=R?G&%'!GH>]-R M%II>SY?-0,-V0E:F\T,20<[O>:M*=XA&^3].,>IT8&V2]BG(F47TAC6;(#XN MLP-K]%TZL9_"GKZ9WV$6';)"7A=#_@O@XZ,1UA\2EF,L%<+H=A$^_/8ON_3&\\1EF>+]=I-U&/%1C!'GMO85Y,( M)(Y:*.?Q5*$\7HI+=,VPS#=CM?G_!B\^XNXRPR)6RSZ$A/R^72/D><;4!X@2 MFP,\&>G]"3$3$D-F>`1*9=.)B+M6HC(#2`5ODLLF%`7&)PB47^YR_X#,U/M2 M@Z7C<:\EH($B==?KU*%*Y7Z,-_P;OQR[V/D>@J=4>PEKB].5M@X"4EQ8H4:&9V3D0FUOC\SV@DS*:>T1$PA825DP[AXACDN M;L+L_5F6#9!U`@J5MN(#/^KB)U6;JNZN7! M8GN_EI?0\V#"C+[OY27UO*3E'-/R:F_5K:UZ>1$]#SW%51Y(9.TM:]W>B?), MO8VSO%V(E0A-RB6Q'K3U9"XE#.\M%5-/;)'5D724+/JM_$E&?9@MD!U;(:PI MKH2^F[D&V3-)RN+OIEJV1#99(;K1$(/9S>?WT4%C"5_;]RQX-/I/+)>C3R_R M\%.1)CW1YA6]E(LRX_\CUP"1@+C%\M^T/0MX5-69=QY);I*),TA2XXH0-"B0 MZ-8-*B:D#D@^L`OU!@.BH(*K,F9MM9C4V)+E<3-`OW[7S?S-Q['O_K MO/[SG_^<(^96@.]"/JE.5785'9&G9_S]!-&KPRU+O-&3/=&B\RN709ZC\X$+ MMH\P%R'FHDM;+:E&6.>ZS8Y!E, ME$+B3!7OE8_B4`E5D3?%2QXK+[R]V[#'%KOD39'DE7K3EW+Z$D[_KY[TI3)] M.:2_6&*=*6M!.6>=- MR-W1@]U9J]%(3D\KX:D.OK%=\&JC;Y*)OOHTD^OB20".N,+EY$4?[C/`W,F- M,!CM()Q3$.>^;HG3@C3MF,3L7&/8CUPB!A9NQ$QE.>:P5(YK,U)IX04KJSM6 M*N*6I!`W:QQQI[,"TA4U^*\6_[JC=2Q.>%JI2;#7L^YHV!^>03"%7G$8XLV: MH8`E]IKIX;AP,&F+!NB@<,,1IQ!0O(^-4P!R+%K[6BO/'A9Y0`&J"GXU.P.&W<)U@W MHKMGZNA0,GA8.5ZS$!<7=)-T>;Z#*K59C1+/$X4Y#XMF\->R:,Z"H:8=XU&[ MH*(A^<$`?&V^(B#'918+Q_[0E\*G+)^C&$PF'2%#`QUM[(MH?X@N#!AX>P5( M4DDV9):,H86M'\:>4*ZO'>L("6P#&VS<@+QP'-=IDED80G3\768Z%OD\V/^) MV-`G0.ELIY%&=T<@LW,J[G]GMFE%EHP8B_($ND$V>P#TY0R=]K(/N16AL2BU M(K`\,`]$/L-YG'<4VDLDGWA*$+''!P7A&$N>;+'%6&J5AV2IW8+5;J4LY?AW M/')")?=;*7*;Q2>(QE8BC,\.2AC3$095B1A&_$%%"`M=AGFU);W6ZK/MREPI M##&G\1+P0!H!+5O22I)L@BEEO483E:M)RUBHJXDJ*#0?]).Y/NYL(C(P2(%. M1),E#^K%J[FB;(9PVGV]-#"0$E2?:]^C$QXHE@R<$B6/^3-2LMDO2&_3MN-% M`U!?1F;S503\4L;K4OQR.9\?:?%2-^X*=*(`@.OC=&\R*HL&+(O:`[(LBOP> MH%P[H0C(@R)7OOD4D-F\=1)@^Z6&,&34Y]FS=:YQZWV>E#$9GVWG<7Q]CGUS M#K',%36I2P'R^\N60B+]^VNR;$A)5W$DPY5`.RCZR^P^WF!E8Y0INB*-]H6C\UO73HHWW28 M!H&THU4PTR=7X-@N+(Z77Y/%41%4AAPJ)89-`GX_V@18/!Y^CTE^ MCQ&_5XO$>)X4:#X+@RGL$QM$P$M(P!Q%P)Z`Y%B4U*,![D.AI#\UK,=! M?2=V`C/=JS(58*9:C3SBL^4:RXB#IQO6%]A#?A6"2Z#\@PH\G_O[(G7:/3!5 M>XV?8.:%EF*V&3WGQTW&2$*];C^G(`E-1771=FJMP-/W.C1J]3"F]W$VYSJ? M#.D2(U\PZ?D-"`J0'U2[.0U MFP]K?'8]/`%S?^8G8*X?LY*S[1L4=F1#>-O5A)D.B#O;HH7]C]JB6C3MNRSM M_WN>N`OAJ^7+CR__5!\_?`.!8#`_/RL]*CM#02&\1?SW`O]GDAFM%_F?OH/Y!S%5- M$!T*Y6>V!+:O),F,;&X>P5D:]T\FS=\"F(/G#&@3:4/3QBC>9X#+.UW"S=Q] MH(E4.A+`L+E:3@'9JPSA%&`0@*+9(1_:0"A3?:,\.BPIM<.I*D+A0-M2/;?:()A;Z*ES0BFG6F@%KA.JXEO,1EV`52 M(_<>#\VVT2%<2N&M%J/4B>;P8@V9S]#F)!2H4!DM7I"Q=W3[6E\;/\SW>T3( M6CK:QB4UTJQ(D+,]1P]8[#9&4[BY9&[44PN<8?%^`MS(1!W[(/:9JUZ1?>8= M/%_&(6GUYL]Q;BP&`&TJI*M0Z7BBHYM-=9#@-L8N++S1NK`\0_MB.O(CW8@' M25:RF:..DWWO4DP64LMRJ&W@$8`O2#N<'$/>9D0=,1YXH->KQ1&ZR.7>L/=H MA--YVDL4I#0PI2%E%S48]0/EJ13*Q68"M8Y!84;7GV^I(.YE6ICP)I^;*;FX M-K"5#C6T4&DG7:`[S6JN*AVRMX39ZUC#_V;GS(Z;^9&Y@0!>.B07;M(#EO)@ M^V-A%F65S*P9Q:5T^3(4='JI5@*`ZPW[,B(7?45:>/V&3@[TM1-V\GME#LC* M+PH@E=Z%5XL#9H7P?I;%TK`'I88JSGILK=GK?`*J13L6W&592Z@>"Y#-D,FY M%A6])95*YQ)QJ!`ZU:B2R<4H%&F-NR2V:((>?B3$:E+4)BE=?EA&OY( MBY3)S)$;%;IT$K=^5_.@GI:&.IHT[*=F"=R'J*!53";DA\SF0QK;'E4ZQ"XK M=P,J=49P8F8K),+.KV2VTVSNU-C*Y&56HLM"=,<#*7*7<0ZI=QCNO"[4-F$A MHD6T`LY!)\R*'/\2$-KG^MF>?A%XF*'QQ(:P\+QH8X5L[C+W/91[R,A<*0M&MB.[D6<+4_NQ<"IEMSLUNMS23PB25PH[7`]5DW/936]X7M1 MX0<%N0^I+O24>_BUI7WNDB:(];(O,G#'>]`16*#F"/%()_D"`[_%Z-TJ(?GP M/@D_L4(<&<_<+4?&?Z0"QI\6#4?:O>>'M_51M[L7]FY>7GXHS)\"^0F?)C^LQ#DK3R:3L9E([.TO26)1O.D.+&Q28SGS M:!/@I2[JR`=ISS<5_+;SW%Y^Q`<83E`,&IU!CQ'K[*@2)?E$W^,X8G:JVH&" M/T^]L=TB.$.U24_&(YAQVX09?U.JNH/TC&BBC,U#OAM>)+ZE)P2NOI"#KOG= MP8#9/)@5WL;CXV"R-/Z[1Z+:(!32A?"_#KY/B&\>?%'EY>J?KE<'O6JC:'ML M/J25T!GH8K:_7V4*NM,L=LF8-U1S;BZ:`MDI51;N$.>)U*4K?/ MNOX@B1H;H5KZQ]3!N7$%@G15,&] MH#FS^YMW!_Q4!L'Z(*H9YD0[X,E!(F0?/4MVH);<>_]UMNV?`OKW__^@L^YW MBLTAO"N,_>@^.DNU3E+PZ><-I=WC3@*@M/NO7$HC(+X/5`$B)87J5`)9I$AY M%&5,Q<#]>B'C!.E?2<8JG7,Y'5+$QO&H7PZ@$>/Q]01FAL>]X7;X:]G4L','VJZFX M1(/]`S6+H&@D1Y].PR(D:LJ03ZS?\J MIF85PQ/B['Y>O*`J'MN.T4[-0#[E@=+ M%IRB;P&)M/>Y]2-"<=B'@/;\(&&-NQR)^M*!$?B/@0X[UV&(2F`5X+N;-K:3 M\`.N\C-5!0[)?$!53]M\#Q]T:4$689>H58O8Y1/U3ZP'"Z_N47E>]BCMV<.A MT_D1)V4?HBM5O<5#K[GUG.2P9+208SQ=FQG5@Q+JH(2*.KLS0T+%F3\.23`* MXKZ4V"Z6,7E%U12KX1?'Q=@3GKA'IXC>3)AUPY(RB/NR6%3.$>G%Q8A:KI*) M0D:,[QT!M:W8L#?,4E.`+]K,IGF[OQ*.

\CKZ73-)X MQ>V%2^)76:K1R'*=JJ4$M<9'(",%`!O4T=I'O\3K;S#5XR@4&".)1]&Z&1!J^_ MG-121:JS+BDC%P<%37P^ZU/8![P@MN0\B_/7?4B%QHY$L;T8?:^(;@M2R72A M>PCV)G@>$,O6L&?V4IJ.0WATYP5!&=$:'WP/#WKM?T\>DFZKIP'QI`3V$WQ) MN]>:R#?LS[D)M\:/(3=\0R0))_U>ZV,DU6/,PGSMZY3P1U\HL9%20>2=*VQU M:[X6R)\JD(K9TQ7G>0(T;K5T/AYSTW!-*.3%F2J29'CKW^*<:9_-#)[KUI($ M1D-%$0*78G;J%9[50KNF.&>9"C\G'+^(7JB0N&_@$J->/T^]:I0;BXW6_S,A M_LM%L_'D.-'V_B2M%'T/M89JX.\W.0M2M9;@_'L,+_ M;(0K_*,^EQ!N#P,8O5%$_]`GN(-&91$0U31F4,X!9@&[_/!KU![P>F1>MI$L ME6C"05ND,.P"R58OLC7-S9S!+_NA7F*METFD$[.I5_*'6UJHW$Y`3`PT"IJ& MF_0*\L,_NH?A1A(:OEH\S4X@(ISZ1375N&4"Z(\GJ9&TQ,T9#7;0\;,B&?PH+V/F5)I1"P%&H8L?HNH&0\Y@G=J:* M[1>Q&SVQ93D0A?1AEM^S#HUM("KI';= M@C?9.[M1C,VC=/Y:RU8,>1Q^7D&@F2:1RW%OU)R@&/MZU":DNG=)J>ZF((VJ M1Z]XBBU!&0^+99'X$>SQ]QVAG4G4+5L4A)N$XGVTP4B\&O;EWQ!Y\+Y;NMP0 M[SP0:.T]-"QX;VTLUMR+$5`)K4/$WSY-XZE?R)#W+=Q-MB%=OAY^B]O<2K1$ MO8\4WXP9:S)2_"K6'/GRRPG)WU0T$?F?OOM5Y-^.5%@%X\A_A2HO7FU%[:S0 MS69_R5M%G(1+F,8,.(N2V'?WJ>(Y)I[&$7;=5Q*V`0G[)#2.L&E:BESO%,1X MJQ'5GYVZJ#]XL7LK79B8H(NNY9H,=`>360=SE^1`OC%(@A=ET0,/`W&TY,C, M.BAATUVC02\\P^SQ.SNI:G9@%#:%+Z; M!%E-'KZ;%-]-DN^F%+Z;/'R?^4!&OI]\0_#M17!*OH?:!-\R%?'=)/AV:P<= M?Q359,W`N\'X"8?$.QD(4)*8I'DK3X`7W]R`H.8%&12.[@PHRML_Y-HRVVWD M:*8VNB9H^R=,XA)TPXNG);9.'M\2<0\HM41\2&F)G)FM,;SKC0M!;K`C$?_S M_4K$DV0#6L`.Y")7A!R*=;;@"!=89E3P06]^S=-+E7`XBL`*QG=.Y]/*C%@_ M]E8+R3@1\II&F)0#5,N#*?U3(8O$01.F6:.33PCVM+A!M;Z:AG[#7G\:JU)R M(K^59FH#HE?MH@VZ)3@3M=$1M,H7WH(C=WTP-C*=9ZAVT+`3;"%!\N=QK':. M&WN'&SN58W5/;*V*)?,P8ZRR<`,-[>T59S6.B%=0],3E\H-40_<4"/K%3I=5 MG+J,HT6JA+B__65I/Q7Q72U9=$>1C(]WD10-WEMLV!7/4\WEO[4VB(`;(DR8TX;$- MANT/L?9%AR=`<>`UGEM<&F]RDR(.^].04*ILN9VF!&G:1<(;,.S19UF9F4V> M7^DA$#OP9'#A2)`'D"4,U6;U$"DKY'M23TZ2[4/4)SVR0W:/+3A1 M@3YNKNCCT#@8BYPCC&]T;"WV14=\JH'`W#>C2X8N+<^E/B&748![J8"+CC*Q M0H(KO&7ND2!QCZZ#- MQSL;_,F>6&33?"VFPX^=S1.B6!!#-`PA1]!#^D%K86D03\8U[+]A8:4M*(IX MGV&?GC'>K-X$-/JN7F$UE(:N:3QM1;)HSFX@+EGTS=VX\6K#.;SQRMQ06JA9 MJTN+MY_=!$&-EYO5Q>T@[X92J[H0'LR/@U44LGZREUF%#.BCG`(>@-/-KK#Y'X-5%^_]ZP7:W:=;7?M1??CD M$ID^O*(]>/\"+.1DT5P0R@T>BJ!U(8A(_+.&;P&;P<224MVH76$'*3=4YX9B M"X.@'D"XO92#;T"V/%#G(51BU:HK#6*&8;RP0&N<9_DK?8T7YG4VG%>YUM=U;GV_W1@U;G M\`$43$-AFW\!`''F0X;^X0.XDM3PS*V6WSR`L-^!T#<1]AL`>[^YW__A#J^\ M@9X0%D?\G89%%9UMP,4UUN?FR>#Z"X;?-X\'&O2RM[?G++JR\:1U>'^_'MB/ M?Q'X>]/\4V"_XV_(_O1YR)H-:;X-:2#[C=1D#GK@!Z^!%-_<5*DUE%DG<7TN M6=;YR0O#;U]9NZS>;U?1\G\L>.?\_V7O?^"CJNZ\>OY_S.9_S.9_S]]+IA[NX@RL[':(J],;LI=^,B,[4/&%GQ%[ZD6,' MAE&3+"GYT^#$WL_@B>F:!9[8K[E#G9\>UWDC$_%8E\]HZ:J4-U&T$(;AUDN MX+<=JMNNX/<'E/='@NX03ZU$C0@_Q[@4>!QX&E` M,`;]T[&_>H/&WUZ[49#F/D.4[*4_SY(\>BW/4)9[Z<^SU`^AU:%]'S82!T1S M^3B57H">43\X``\UO6=[4KF^R'C`*,YW'3;OG82#QYCC,0Z05^;A;;^3\XQ) M(^PFG=L/A^_WJ*YYGHD)E(I<9-Z7(YK'B_A*Z3ATQ#Z7F%>M3%I8?!&_.?B(,3C%"BZ5M793=4W2 M<)5\F803N<=[6GS5RM4%6DY5K;H*Y7Z6FU4^G?3KZAJE[W:F#KF2NZQ;[SKA MFZ*>CRO_>!_CG@&*0%,\5C0R*)]RI8.=3[4&1Z$FV9K#0I8I5(RP+HI82Q:$ M)U?'OIJV+4Z.8Z;N<)-L?.#V`GOL.M);0[](.S/T^E[RN5BP5N<48P]2O0XB MX[$">[0P6&*?Y9W#Z@Z/Y#9+@*J,I*ZSS`'%&4\'8.K8U27Q(#\J;7B=VKU& M+J01HS^GT.(>]^3YUHTNEH?Y_Z3_2$=5R*=ILU"EID?%ZX:B\])?$T_V'Q/+ M5-7ZWNS3-?+HR&^MU;-/R]'/^ZY>W2&/R!-I+QDN&"ZY/O2Y+OC2?IXV!LW: M]Y:@T_5)"0OI1WR%?G22J>_W2,4I'=E0MXYXG7^( M[T)/PRD.3F_`*1).KWK_;D,=H]B3=Q7Q\/,9_[E"/VI]@-\V\":Y>AQ51TOB M[@*[N0Q_3."3"8YT8?5.%"ZUW*$\=YO:G?K`UIYY%!U&MCSFPP,:J&V4.B7V M/:+[U'Z6N8;4[\2(@?<3NEP0F\-?I0\CF-#JGB7.&$X0.PZCI_E7Q@1%SKV" ML'>C4/9_1XW*,`MG6*;&L&OSZG;PZD;.JSD!7CWL\\9X'K[J-7D>_LQK M\#Q,S#&KZ=\P-#>W_Y38,'C]2C6+][T1[NM=XT:6CZQ3(/8ROU@O^E;G10_54-T2KZ1)*0P4;`.^:VFM"L M(AW*!Y>9.>^]+NT4'_`.S6=ZH,QUU@26&HJ\/X,:N*5(ONRZG(*.[7(2M#@Y MI+VG#J9WQ+0:*Y1_4=.QJ,-F2N-+KK/48UH]!=\7BCQM^2<0<8//.RZ_X/*E M2%$3IUDEK0_7>"3P#J6(*2ZR*J"K7-FVI1"B"BA9JQ3KNIS;:W)=_O).@VO4 M)H\R'=)WF539]M0`45"V\Z8G2D?:2(TW]/.T4T,G52WG"&BY$DW+U0:T7&U` MR]$`P"#'$56JKF/7-94K/J:/$X)RH`Y_-M-A1O:>-IQV#"\10T@%&FW=[)$P M'3A->>NIO%]#>;TSEU=?H2SX=-KRZO]KRJNG\EK^\O+VG:<;')$HRONHO1C/ M4"".,E]<,3.7?+(B?87;0RY%[YJT;K/0WN&-HVSOL`,_S$):'["0(%!]1RC- MT6`?_8P^YA"?/HPZG-0R+?(>.ZV/C5,[%;PQK-OE3FX#R(UU*#H]Z]S=^4:\ M)SB4#]6)AGS2ZW:'\A85K->>`S>FP]SY9J22ZLZW MECQ%8V"I>2HCGSS"&+G[2,Y44S.$6W4!/D[K80[V`!?-?BY6AG+1K#HQ+L*T MHH5C/Q?C'@9B9KY`-?Y>%[$:VN&"LV?_?$'*].C1&/:L%$ITS6N=XWI M(:'2;V%DO2N\6B_'I[TMGB\6YL/G0?_:]37\S3TH_*U9G#(A? MU17R:NMO[Y!?`^-@,))8O69X2;XJ2^:/_L]0D2_MV(J5OFU&T;AJ%6S[D74; M@AC(XB,@15UMS;RZU2R/&48R)RU?IR]`3S#!E\KEDWSX_-%W??;_F3B>(^S: MB#^U0`F0#C3)D4WNJ*$B_>!*NAR>LMC%W=0WV"I#&'9K?JY+YJVWR[^:>!T) M)[T(0_=%Z`Z5793+`.6".'#UQ__,\*'ADDI2'2/)];[1]8%1(VP84:X"DX`" MG&!T%>F;W"OU0T6ZP96Z*VIB\K#FKKD,%1D&5QH"_J5KB,*%4^ESO6]P?>"G MDK+<]=&36CR,=VBB7_EED2`\<1Q]&_L>Y)FW`R(6/EX8CRA`MS1LR:5+C?"4 M8Z6G$CPYF)L#3S:X'3Q[7:[P1`[>GJC$'W\RJGU$,P15\OL#OIU^"[76GK!& M3);SC<7033VS9>K6=+GNV=Y9%>/"TQW6ZNA.AJ@)J@#AL;8 MB,8?-N$GH\0^1\IJVOL8>T&+DY8T[?T[]25:6M"T]]OJ2Z04U[1WE_IB ME$QRW"!>O$6LA_+%U2+19ZE9NB;UHKGX68$]ZERG?)3K(8KH9C%DG3M2SC6Z MBXQRKDE>9787F=REI(AMY<&JZ@Y248G!+G?Y?TEKJ\KKWGN@91ZU7Q"X^7!, MU+MU&_J.4,FGC.=I/F_@HF3&D&>8=PT;1JN5Y8+&P"BF`3>,7BR*R1%O8`/Y M?:O5VM$QQ;`!`VLPE[=WM;[3?'*163[J?,O@O*27LO[5!":(R^4BDWQ+TNF! M,SONJG"PI#QW,C67.8JNK,B\SRG.=9W]S%UD]LYRE9IMSU/6B`3>C(\7L3GP M\/K&*'@6IY4[\]U4:6>JTGQNV'<9-UOWPB)?E_8>S1GL-?\-6&U.!$XS'55)\TM4S[A7XDC@;LMWWL+&'+C/KTXOTQYP^\AT5#2RKJ#%XPK,[,I MX=[O>XV4L#R*=$0C&3$DGGYJ:+Z:P@G5DGD\@CVAA_=>QUUCMT=S1UH":#7N MI4>'\@_\$R)/$*WH(A<%!VF-51X)]8YNO5$9Y.?BGJ$]R6G#(S37IZ/6F77SV`GSE,?EEU]EW76_=.C)ID)W"+C@9CU*I:=XV4K#1(KZIPJ(S0,TF8`A22U&9WQ* M8=Y0=-[=+XEMQ>)B=4;A?9=B[)I7(U\>^:W)\";]6`UO>J^O`^UB-`]]7[%T M<=THA3LG1Z>]Q&8=V&Q#VL_]$PWB6?F!*PA[^]U>\09T6W@TXU'O/>J?.^!3 M!WSFH"Y$@,JRZ3NRU.EVQ?:=H^<4^C.@8^[=YY..RD<&=/);,ML@-TKVG[D& M\O,U=&JOT=AZ8LS`^W2K%`6M*W5X;QN*+*(Y7G$A1K&+N+_DE5\CWS+7;PUB M#`\`WR4/2A^1T*#+&^4=ASB/HO)K%-6NY'T>M0T>#TJ?KMO`!YYL7+M*_'<^ MM(W4AK;S76/JT/8W&-HF8VA[BSJT-?.AK33FOMX;W_]-!OR1`/^./:N97\KZ:_R_C8V@>=0&A'(>R=; M_*7EWW=HB9:NH%>_OVT:E1L5]E[+TP=Q3#<57JAK>((IP77R[];3>#J[%U3I MQ0CEVR"9]T9'V8?PC,W$!U]<#_P#"H(9J#0A:R;KSUQ6KOQ#3?"DHVHO=S)[ MEJE;*9(/,U!RBT,QL\]4&OW6,\^1W32NCN^-;`DHUG75)TJNJU?%SE9?M2^N MEQO@L31%YL![#T_1*%_UWBUG4_J^7[DF(VF)BRQT6IEF$^;>V;Y?.92_8Q\: M-3+]##/6A`1$1"$Q02*1-#WJ-M'\+1$1/(R)%M0Y=K^^0#]84;BB%4R-1T2G/UG)&/3H9P+@GT<%A?W,"X+XLR&P*H'Q%44==>X`.[*& M(J$N%CIWZ`7I3T6P'!IV*$=8^D;/VL>]4^3)"B\),NB)TJ M',F,IU1!BI`+$[P:%'\G3J8X[KL!YO>6B))M7I`BW#)D)C">*"Z;PBR4N* M8E-^==#/=2'*X;@ZGX_!44:V\#=T$0AM(9''8:/!0/,\Q@PTO-TJS_8L>X&T M_\6"I4:=V.7RZ<0(ET\OW=BJ5YIY'R`K,(9K^7.F(MY2HZSA+PZNG:E[Y9R1 M%:\^[;T:Y7]S-8X6?5V548MSD!5GA(ISO;\X=Z,X+67*DYP4LK.O"^XP9K&^ ME9;FXE%5L66M0CF*T_\4G[P\'=XCSG,HGY8'RL&*$57G;$@U?B:/:J6HFZX4 M&X+7DZP9$50`JAS+-Y)(K_$2[&,E0/-`&3P)K`1RH6`8O9ACU%GZ]7K6AR6" MV&0H-W9(=."8I9\^I(P0>LO`+_E3L7C34$Y$5K08.ZC/6X44*#2)R%A!?$0T MS=.U"HZR4.Z+&^2U5Z+.+TY&2`GKIRQ?":W")%\V$VO3J4 M=\M"JY9<48IX9*!#SIZ"&XQ#IHLC3DL_NY"XUQXOB'.H),X5T5*$\YC1:W"^ M=9GFK09-\@1BQAK&H<<3,LBH2U$KJ:8$J*;K'7(5,8*M`K?J9..- M-+DW&"*XR#26[>R1UG(JR\"\BP7QX.C-SE[[=:`6.7CO&XN*63E48+\.!1PL MN"'"NS@3M$OFH"`W42VBX_$YE%6?,2.0>8I&BIHIVA,L7Z=OF7NO0P8>9$#\ MR2%>Z`=-27P"+Y88H;$SP.YK-I2PU61N_[']`96T[)@#^X]=F^4/YCJ?`*V) MC"I(1F@6F)ESJ5438TZ\B*;_L,(WT1L-;_J:FW#WF8DQ`5[2]?C-P:^Y+_O` M$WJTS#H M3WU$6^")O\LAUCJ[UD._`;_L84";`.V MFK[3)&ZFJ5[OW=D"_';.%INS!007:[RV;!A_Y+(QF^Z.%9=ZYV0+D7C(RJ;H MXJK/0TX"9>B]@YZ,&F$)$1IA"7["$HA8\!<_/V75$+LW!XE-G+B]P)XU\((4 M\5,>((?\YO25$*]T0A_M:C$B&JP>,1)O.@ICHS`FYF?RSID8(Y.(^0J"5?&0 M,B-+3;HMF/[XZ>AG73D-9>U5D*8$UHV70;9RRAURRBZTGC)N]2E2@M9!OKPZ M7#$DC,)V>Y0WNMNK>,>AA7Y\FM"0(+2*ER`1KDF#!/DR53E?TM4HN\NY_3T> MHCE95U8EC)PU0&CC!VOUQJ%1>S&LP5C+P',HR<51Z*#_8*PC7EOZ_T6@&UQ; M?37*$^Q;OV;YM.NR3[JC+YL*[V)AZ&^-\A^3;,@30APTRW6MNK$"^_6"HT:Y M[5-UQZ243&W]1FEA18W2RWH]$_4[\VN4]FD2H2T7-8J=9Z^&*YHFG)/II=B) M,=I&+)JA-ZC30,S1'P1&S$&G2@RFVE6C@?V M9`T,TL#T?D&*;R8!5?[Y5ZR,[BA_@G*4N\A4YXX\2/[NHGAW$=]=U%=JUL]% MYS,:M$]0^\?V+[$Y03'Y8E&,55Q>K9SV^GQ]36;?^[3IAT29R!ZGD^;">!&[ M@(%--UK%6=7*?OX9.W^R?>>+J9?MMSMH6.7KMU?BMUKK-FJ&XJOZS^"-#C]` M-$B5(.^UC;Q=_DVYUITQ/O,MVI1W$C^ME_;D2./>] M[$2D<[G4$[^L8]>PNEXVGEO*?DWG%C':[Y+NPOBL04^6>,LL-K9:QNK>XJ&I MUHG3B`*W5'Z%`QZ0MR?6Z2DI.X%BI)[[+9']WKDW!)Z8W9]8PBS5EAQXS^+Y M*;Q9TKB+OJ^EZDO\F[6J@G\YILC2`.GD\O%@ER=4UQ$D^CRHW8RUBV'7J$- M63^(8A/;;7HV%AVZP<>3G!J03K"0MN#^:K"A^/XSEH%)^CP?(O"1`$G3J.ME MF_=5U\M6[\]!&P30.\[*EN^ZM-SRS9\:>=G:%%:V1/Q,C*6:R.SDH:&R36RX MS#AHZ2]$!,6H7E[BH9&N\B,'UX:3`SZ+YQXCDPU:BQ?.+>(O5/&"<]3F>CD' M,=:2=J0*J$)_]%-J&.=J#$)8MC]!O>QT?>83]?*O_=6W/HK)0@*RYF19^D\: MV,S:K+V[[V0&5#P:0KS,>$V9/DB;2)K0[L5HU[A>'L6[=`$63OR(3W>.=M'X MT]9%J?I%7"$7&P>.B6GHRI"%>+V6EN7Y])$/=!"P^'/?-+!RL>J$,W/K-M`9 M]#NUG::31`P?]IVKXC%RF/WSO=OD M9V.\&IFTAVH998%-B.Y=]E,3;XP%4?R7W16E!KH>G<.\5&JI>MY0"HQEZ(ZN MXS:4N-1/0VPD8ZS-70GC_XCQW#>$`+7>DY3ZG?3TN$I@&N_[M>CB?&4T@AA! MIIP-\;^#=&S>`N7[Y/KC8;AXD\*B7*?LBN!Y^L/'*G2')2EE5#'RI*PT*V,) M=)M-V)G82_,1"4+WK60.@&LVZ(*3E$SBQ&O@"+B%NDCV6C5O\B$7U6J,=C78 M$WWXDRP,O+<]BMDQ7H/K]Q-LND&RX"=18$LA3+>!VAJ]P,7JA=4#PSOG\'!1 M+)RX#KG09LGD[Q#%-$-`Y2#K!$)HJRDO#EA+F8Z0LY@WX_,X% MJC,ZHA1I#J\,>'U):Y1!DQ"TSVTEVU.F#$&T:;X,,375X$UFHQ^TZ5TA;9K: M6.X\27& MT*N-:EK'VT9JTG@2WB;&:!A"=2,E!&E>&B]"];;:E+5,/5M#_9:1*IQ?5NY0 M'N;>JJ%DGQ@C4WO:I%*5&!Z63[&5#_AVE-*9#L]*'Y,GV@(2VR0+KE&]HTPI M8XO&IH'A'05D!,N[65K(D6]T8:-S2!E$(1E)#AR3GO?>%)IIO*.LIEQY3:?2 M1W19^@_"\INVF%_EX<[]/0+L>N5LCO#HFSG".BM'.%UN+\- MO`=\`GP&+(:[$!&AB^#_]!&&B`BC9Y7PKXA3!;\O`W5OJ>&,U_Q')F.0F6C8 M-8`XKZJX`J3_-D?H>CM'^%L\_P:_;ZJ_7N`F^*4!T7A^%+]_1^^_1YY6G55O M#?PST!^C-4)[CXPRF4S66?08/=MLM<98YUBMEE#[CY8!Y3QCL3O/V'.=K*=] M:H,F.9JO]4=[Y]!\47F9\L(\S0RG`;$4-#DT%Y!EEDVO$ MZ#;)N5=&_>^TWI$[*9==<9T+V7\7%+Z)(L@QCV_"X.J82+,'1H?O).]1(YDA M/77[T_%6@5GCK3I?W&,8A#U!1V#4[>J*36`]NX6=BX%^V?T4K?^.\J34^*[L M`TORV.GC*JGMT.-WT@=+Y>S'$;)9L-%MVT(.QC>^7\FG!\Y8^FTZ?F;8RGQT M,+!_Q:;3D6#?58HLE;BRZ1<*=#R"'@BN[">9TZKQB"=5)V]V>$96A5Z]D/2-O^+C!EW MNVF\R$S=MR=KL>LSZ_:(P956KV%PC;5P\.^M:*Y]G]'8O_O)-;H.[PC@HTQT`?:-4Z)#`VWXMCS$RFZEG;`4S MXO:@%)P1HB7L.)):I&H6F&2L54W-P:-E+'\:%2&94+XGZ$E-YC8Y4BXU5K?2 M97"1JT]*9#ML")+3S,/;8N19?9>8(+[)%SNIW;W8]Y9P@1GUYJ23;E/?'ZAS&_D4 MW67TE/,/;*X-+2]ID)(?N60V'*5X0U:AS#HF"&-])$8?.A^V7I!N\$404US9 M]-V5\OLCOS,/ ME=QKA=X;R1SM6N:\Y!.7I!T;>O1>RB_SI:T+*ASR-RFRX06'YAH?I>H$HH@HR#%[U/I;V7=C&CP[2CY/.GRSY>QM/]NRGI9FPS[7Q:OC^# M%<0RL!2UP_0%6A+IX@PF/&)$1JE9:I?O4=7!.>4?+_M\I",>(KMK%QL)F:\; M_#*I1";G[NAGJ,DEO;2^SOV`<4/B6JOLI%#KV%+MZ'HWRR^Q]EZK>QM]1F`: M%[G:+'_J><#:=XD)5L0S]+,R\^<[K`>I(:<7W&>5(O"^\Q/Y#ZU&<)J)N#R> M='CDK-G!I1[%]\61VC/\@%XS7[`,_(#JJ-0LGT,,U?7GVY.I,N6ZJU3. M>"KG^#)_[AXP0L;&!B;QUS>89QW[.I.4WE?=K&'W^5A-Q_HI$F>MY&Z]'R(3 M_@CE1:Q$X]IAED]RPD;>-AL.#ZXUN4M-B;5SK!ZS`9P#KTR+UAIYB`WK//U6 MQBQ5QZ@_7)XARQ6T<`ZE4&RLDM/E#S)/;DOS#))2\RQ;,7A]YH?=43KK(H?1 M:U;/$7N*T6J2)M>/O&OT]$=!7;$E',//G1D"!I/G/,ONXM$S/Z2]3187C76& M5@O]QZ04SVK=3]A0-0,V?FX^Q;B4^7KWTLS/I"CYG'NMT6M-^BCSE]MND,]Y M(]/.#+UF\'H2M.1>ZWK&FZT2'Y1)]ZRDU]VI%#>$P,$J(4D9^1U(C"`2>:QF MDV>M*?/RUAR6Z@1+=5L:)V[!#,0M8!3%!2C*_&S;<"@K_SQJ6/M/&ZY..P4= M$%M#ZQU50]=EOMA]#VHEENT+NWK7R<'920>I&M>/^,Q"992U+ND`J_>KYK'^ M2"9#K,-&>ELE3]9L=K;M!XR6S[8U>))OS/R@.\9)!V\B"C,_Z/HD\P.I='"V M')EY>MOBS/'NN]2P'VR-31MVWY<>)47EK*0AP"7TJ"@"WS7G87OH0-1=)_VY M"Y615I9SB(%#JI??X9(1%U@">X\:]V$^E1M!,[ELS'&89G/1/XR<-<@WR`J9 MY$,%271_3?]S.IH6D_?;Z6HOMVBW9;XOQ7!F]QVAU$?WV<285GVK4*X<^RV? MV:4DP4*#Z6*NT6GI'Q0"'9F\QYZ*2/)H4C][0/-U[178QG5[D&/W+4.&_"RV MPA-3M'(P:J4\3B.!I!&V)-#["S+C6X6D23@FTBH;FR:O*9/U;/09:RKWQ3W) M^\1L8I8.XX;,\>UN;P8"QZ(_W\V*XZB29Y67^8/.\Q.)0#1<]P86JZQL4&X9 MH,^;L'Y37$D_$=+M@?4A1+.NKPLLY_DY1!X.)>F>T$GW@"?CEFR]6!!MI)V9 MG`G.]!O#&!V\;D"3I"'K!H'4;.N3QJ:/-&412PWCUS_5-0ZE4J=.#EGZ5Y"P M.$P#IRS]2\CUTPC)HEZLR]?!-XRZ/M5))G6%=E1>+BQE9U*M[AAZ9QTEI6%&:>Y'<$U;EXE?2QG7R%W M(?M_",(P[;ND5UHD\'9F[PIRZB.G]=E_$^343TX/9/]MD-,`.=V;[0ER^CHY MV;._%>1$*M([-_O;Y!3-G6@'WUYZ<+2:?*#3HO&[T#,=U?R_K@T[KLOV\M)76)2;M,XEWRD4FA_)- M?@\UGV+O:S)/L..VC`I50?CGUZD^7>?-;M:MH$%76_X=?_%JJJD:&):5P,*R MF;9P)T_D\U6$67)^/)N:X"N#5E7>+?UO4E$?-/>]I6X!SJ?ASN),1?Y%EUX^ M(;\H'Z;3)9FT12WI#Q]]5S[*#I@LRC?JKM-5VF//_3WB9[39X[=MQJ!I;H7R MC^PV.1*T@5V"P!>KY4]$L_R)_$+2J0EHSZ0_4DNL=L@/6LN4Y,O:NHW8DZ30 M:G?F6'<1-:VD4ZX'S;:D%Q#%[B\1+;2R(2`U=#X@%=>N1ME\O'''#PSO9"4D M01YXSS)PFX\9GHE!*2#E*:G.E-N4L+#O:3-@177:&7Y]%B@7?.LSH,`K1W/9O>,OP,':&E_T-. M<#]="H*474J2:W+5MILUY37D?/)2#LTST<2@U6+5N\6U:51 M=;%YUUTIA&,UZXZ)G#' MW_N>]_F\%BUJ)*(B5"X5>,#":\;6_*2.3?PD.,K+E.^?)7&PRB<&3FV/#K`2 MX>QIQ_BZ&&RO3O,&=[%QG=OD1M=?G.!VT+4!UP`L( M8%<9\WP3Q?RIC<80]XC(@//4>ROB=;WTBZF^3*6LVWL#CF&]G8_2\I, MUJ$=W3S@,(MS7"/&E1EL1_G.<]YDOLE]V4'O@E:;\NN?L-;"X[F-S_`'V?@, M(NOE"VG#`Q?%.!I[%[$C!Y'NHH3Q(K;)7;U@!/*XU[24.CHVA5""GG">O'P_ MK0>WZIK/=^<*K;I6P?=+=E(`PQ;!NX2"D.<%YNF+>YKWDWP3E-<:Q'66SA.4 M/"TCIZ`[3AXX)47RHY`RS>&A_FB6IHS57T59N>^76F0UFD[J2?/!TJBU)V;^ M!E%O3EW*=NC8V*9:&^VC:9V%D?M!FG^@O8OW5;7JE7MNY>LQ%U#\%`I=18&K M$5:GA@7!L41!&4T!V^BL"!6#KC18H;)T?,K851T/BG8KQH,[K*2%OV[I7X!B M[\NQ#-Q(OSKQ)E7CDJ_5TN]DC^"\J\E\%6YI[[F.ZE$;KK,?X*\:5EVJE>[@ M2[JB25W.C:E1DOVWKLRJ5I:PVSF,",Z4K:2>M\B![5<47SQP!A6]8T$%=0DU MRG47N=6E>/-=1VT0^B*S:GZ,'FPFUOI\XGQY7/YYX+S`+K+\/,87+^885>.M M1C&S;R>8A\C@+34-ZKSS61,G@ZD"N7S_$S673*\XAQL5=+"#C>IH]PS[3@F] MA=/@MT>A#`>.L?FNO8_>S:8&Z&J&O;OP3%(16T9W!7TCG0I.!V4C*8&=HRY% M/ZK61XV\G`[)5[GN$\1J.3OY*9JTD=E-"OC/YZ#;AGR_4F5#V7^0U^YI:*P, M'JZJPA^*NJY6P35FK%#2,GD'<9\@'5!'$8&M<],]^?M7$W7QLX]2R:19U-]. MO'78*E1,O"6?)M^)!GNL@3^]97AE';Q"Y&MO+"JG>F`8C7$-Z,M^CI5';8OL MG#1-YP6:8VHK][X0Y!TW'-(D8[0C62PQR*_M"C[53=;\);ZC5Y8XRWZ]8DFI0G66`=H=!D?7:DZ59>ZF1HC>E%9\$ MUE!!9;6C=599H*%*VD$QCY$^CB8XE+D_]E>-WY,2H+:;6H'HNC)_VR7;)9ZE M'$\52+M>JH1RH3B"L-CPOHV8_ M%C0_4,+.B7Y(O?K`L,?A$V.<:`@Q1?*G#PSXI(_P(AF3/M2NDX*^MZM;4M/[ M/FBC%5]?D>51VIO3YR.+UO(ML@B@;K/DY'\Z?@^L\S9[CGI0)=)U6;]#5Z@4 MHVEX8GT>XZ^0>P%M.UCI,_S"=?:*)W:79UFY)_:K(V_K\0":2CRQ/W*WV9,- ME?9B-P9S\'@0/NY:NXV6C.%KB#L-8\;SM-[95]6+&`[:N'8K[<.QN;+?H(UM MXO4>-E+:FZVJ0C'2L/SL_8FC/]?3G^OHCYW^Q.HP#$\,ST8M MPY".!JX[KFLULKL%[`YEV3.\+''^LH!NK33$X[D>\X^H:X1AG.41BT]XOTI= MJ.O<7:Y+J[?5TX8)1TPN;9A(QL]5T.1U:(5X6'>/=+\G5^],7R;=Z^;T()G$ M\;"-,]Y;$"_6&W\5:AZP>^?0.V#W&O'W>F(_ MM$Q>HCK)Q5=HE9OQQ4F[@*2;_)S.JA"CL_+%2)8'I6SW>Z4=,]N&CKJI9)?: MQ46N2YO%.->E1^C:#=2E0WF/7V[IC?'1N_(_^!7?\FD,2[+03U,;73B+F9]@ MS6;7I?AM%K;MA[/F6 MMA111)QG1=D1036M`]L2LZ!8S]&6*$^OO=-U.46:#:_.%+Q]U M37EG5BBE?5?7(_T=$8?6!Z2"7SYRUX^Y)$QS^3'WVQ[&X*9(>BY$`>:"SN MNMQ(]ZD42KT\CC06U;B2U]$?3%K)P9[(L:B4E9PS-["0DJ'(:^$!1_P!@^F[ M:6;ZK#RO62I]WH,^FA&$?C9Q4X&3=SN4JEJ[79',4NJDZ2?$*'98#J'3*"MV MC$6ADZ;CUK"=SI5$LB9A:V#E2K$,T!5@U-1UY_Y3KZ8%?9U@&5B`D.?H'B+6 MWEG8]?ZPM3QLB+@L0Q;>QJ/4`P4]T9FR0HG/IB72,#Z+D2!M^AB8//OH> M36\](M%5.(G.]/72'%)%Z_%G':F%1-79TL]V?..%'(=,SDLI4@ORG"^(F\AU MR.K\=+U80Y[IE?;YW9&#E?8"+YF4\S$>+<#;_"%@!5RWW35T>.C%8<7@?"MJ MG!0;_ET]C%#V`SJPP'[JK*D@RX%4"KI_R=2B-WYH).T4(@R6()43B'9`1X%B M'1IQ`YO5$;R3;F3^1@1K7RA4E*J8D&PR4]H5RME(K1[18F:SRN;6`Y>7OXGT M"Y:/WX@+HYFMC0V]-%1@=-P-]H$`RZ'A5]X>."QNXSJKE?:B"F)E8!?<8*W] M1KX#;BY/.#V2[0"Y%8GO)4GTE-AO]+#="N7*GA6"T`2#Q0X92GRY) M3345B\M5\N`-[+;^E>=RJ1_D0GD=+TPFBF?I_Y;1+Y._,;#R%!,7-EOZ?VY@ M/M>QK1-B=!/=+'?N63B.Z81S/S201"99!L@F*)7F.8H&U)E<:X6=AJK2!NZW0W)R7>\0TY^6UXF)4/5T]PFJJ M1Z2M[[8.ZB^2U;+=RZ*8?D*]B?=ZGLQ'1M:*[#U"0/$EHL;_3<<*B(YDH$>G M)BE]26ORUF8G60+*PA_R5C\WN-4O)#^2@3]P^:9-3,LL3XX81\X:*VA')AI- MNK+"J)6>;DH/T24_?VHF7<*O+"9B.J0%KLOI%L\W0O,P\#W4=&_(,N]7-9/E M&1T/E0X'^F"IH#42RY-'=89C)">(E(X0!98G#[,TX&0X"D?:6Y5^W6&Z@D0- MLLQ!%EJ.HTQ9^9'/QS*K1&:!KE=:ZLD_09KN.SIXSH4GK]-9I5(D!?+>JM:_ M05/1<]0*^COF8E([\,&KK`.?AT>++E!*;>-:ZL1K5,IS'PG^FGK37_FKZ:=3 M+`KAZ[8#,^KH=9RGT>#I]C4C[QJ\I1[C\YZL0F*2-R^\VAO(N\AK MG5XK7!!C%GEZ,QEGIF?(0_IPA@SH@QERFT]EB*B?>),(+F([[G($7FSJ17XM MJ"U62E5;:Z(@7DHSO#:VAR9X"2N:J:]];*3[.' M*A\W,%B72E>+,_+H%K/,4:DI[1B[TVKHI8L%Q5!+=TX7Z6]Y)%C" MKY]MF(U_QHC(V;.C9IMFSYXU>W:T.CY1);)ZQUR:V&\U5BO_\'UUE*'))'E` M+K_*!1RCOPVCKM^_Z2FZ1",Z&O_)N<9B=ZZQQRS/]>3IW#I4JWZT3%G*^ZLI MYY'8+1BT,'=:G0HMOV<\_,L MA^8$W^K)&"^=')K##=K(HJ'Y0R.#D4,O%O4/2Q^%'HF@]54Z&&IA8=/U8F0> M7J4/Y<-Y,$#$=/*S#NFS&C$D*50]+\B''W"N2)4BZ:_XZ5`,BQHMZ1X8,N7E M#$;W'Y,N:GF\]C[5X!OQQ)I?-;''&(2[P4"TKWUS!M"X=1*.[ M3Q-02*8]:$'"0]?C*-]=P08Q)LTWVJ5>>^K,7KM4W5\FILG93V["L+O-'@^F M)LA1+B6%]4AL=6KBM.&%@8L[]6G'(%8#O`/PTDI,K%QLE*VP9:R9`LT^V6FF M:=)3I*MQR%$\OI)"^_349'@BAA':T;*:7VXL_\QU?XH4Y5FM&RL44@8N[ICK M*=,-Z0=U\HM#;`PR>",G5'?3J8G7#2<-OY1OSH%D'*0_[AN;Y!QCDSO/J(4A M6L<,1TGS"J)A3%>8*Z\T.]-3Q1RYSOC@PQ$39\9T*;FNRPV]UQTBJUP>_<[$ M54''?N37X1$-C^@I'L*7=/SZN2"!".7?F!XY[Q67$:>&RE+]6K-TP.O+=C-7,_P=VU89N\U3AP)!8:^LXU8BS.9)RR_._#@W$;65F[X9;DBLZ42LZ;% M`NO+EG[ZM!FM;)RD7[T8XSIJ\\_@C[J.ZO#RKVS=8G:ULMO&>@=O!+_.J2A> M+@5=U22V[L.L/&Z20+&-.I^'Y&KSQ<-?E]+D4BM?C+CD$V/E$==;M_(]*/SJ M(H_QZ%".T?[UK*]+L_I>%)"#N]K@#$E74=$FD3SQ2-&*8J.F5EAJ)0: MY3F>7)T[DO8?;QAE(N0Z>\$U;)NE$NY?#U>+4?',ODUY_,RM->T,T5UM]63E M>(SE0[MOS=F6*^0/SLT=VAU?@T?79<-@F:'W]V,Z&^0/?W-!`T2:AAQC@HV: M9:DI!]KO(>:P@CD8R:$ZX#`GI^QYTBD.)3<0[:A<%/N="9]K^+IQPOKND^@:P[Y%2Z*M!"J)3+;^;%!V-&8O7/VE9W;-R1%T,PL;0WP M``ZECR]%R1?4>5E+/QUZJU9F):J&@:6_'@Y[:6J6^IU%))7*@UHL>:QNO(@V M(/,+8JJ5I9I/M3)VIYJ$'"G.X?DF15`ZWDC^]@R=)"-22-110O?\@5/;9QE. MNN>[VNRF+.:M>H'ES].KX2@[T@=KCJ!WVG?"_-G^P,D6DC] M>8KB*3!%L6SB(4`4'RT)VOE6U_"MM$8FCXT7);3I:/.&E7TEM326WS./D+JB M!)K+]]MUI#3X3JZM%?)A^<6PV[^&"HX:[3HQO5RY/9ZQ&+;2\:>FNVO('M@, M%-BK-!IPY.^0GP)2Z6RE2:G[)VX=TFI&=.M-RIM\?0)C6?BZEQ,!X^RB!31= M(7-LZ\*T8\^2B`Z6&EUCIG$Z9>OS#59_MI="LOVBF6/;WF:S_;ZXTZ"K"$P5RJJ?'V'>5#JAY$N[KC3A$3QG+*;?MZW]JW)7'5\.4 MG^QA-*&$N9Y!1E>AX.)$91[=:DL[-EAL=`V;QG,8,6,YGT7+54+?84;,B6UO MNUXP\D1[#W@C9?:4]AX,D`)Y-BFM94-1^W3BXGTF:7:9=JY:O%5^`09+Z+*J M;/"87W3KAJX?+#,6KG2-&C/?[WTN[:)\\ZN(X\GZA&K#D$TA7??[I(J#%T', MP,6QE<8^<8ZGR$=W\7U"MO@)G\/W"COE+2;Z3W*+-[-U5O<26K2+=*XQYGCC MZ+BV%8\F;S1S,.*OL\AUU=#[-WNI%.#PB:?R!+YH4A!J_UMK+/_./NYP=MM< M=!WJ]T"\$8=H*XE\,^WU3SM%OO=GL&^$=-VA?B/DY5-<($X,G!+GRY]B[!)B M&`RV9X%LCC/'@R+T#S6:Z/ROY?ZM&OT_4%;DN.WIO42\) MC"]3'/_(J65[)L:-]%DK`36CW?WWE+;.QC^24T4+>]A(V4D6>4RLUQNSB@S21'\W$A%V4\ZT>-Z MH]4'>;7)_:#)G6]T?\7\I76!#TFH_VB_4AQ=Q,893\.7&YTKLL',D$MU#"=I M(/-[C_$_J7MU*(7?\?F>H$O97.J";G3K+&7XAYS?*92>_`)M>A4WA%PUA?): MX9PM9IRDK MA]*$M,8CZ)DSR\@O5)YFAP=]OZ:&W8EUZ"@9!K2:?A;ROI>NH',O[T21:!P' M54`.4%5F#_M6!`E'M;*!5R>&4+$C9_70[&:'LN(Q_Z(QRF%2GGV**TDU*M_P MX#'^/4Q1Y99`_&)W-MUD5_<$W63'OX5#_R!KL;0?/%8=IQ?8XZM.?Q)D M7,\$<#8M<;O@9W3KG?*9M7KEL'X MG"+GIS9Q%NSF6![Q+QG)\@K>HB-)*';JE_XQX5]JIH5<]Y7*T45%>)'O$1IVB=>8"/A&P9\HME3K7.N6"`9 MY3]Z]6EG7#[=3;Z)-T?>T\F_6`VM-)?34ILC_\*G@X/TP=!\%'@-50[1`A;, M$G,'SD"!#(NW!3,JDSZ,1 M]$[%]2[PQ2D(P?:RJ.YL2TC0QC=7-@MM&?AG>*",\WR_Y((8"$)GP^4)<9YK M3-]$NUTFM(?WDR9:A9&KNE:ZQ`?27=/*]I;01@6VFR:W2MGP/]7I(5!P-WE7 M500'0\N=7:&!B MUT`$UMX*V/WDI/^U\S5&6DRQ*G5X0`D[CZM;+@P<0-B/1 MTD]7L;N&:3[7FOUX&KK-/]`V*@>Z\8^?4G?1Y".'YP>7LE,YI.0_^MZ_079B M=99OT"?7/*+]QO0"^XUB\E"1CNX+3#N&9CAGZ$3FR:ZY3C<3PUP,?8ITF2/= M'Z`>:??'JTSO.P?)UY23389"UX=5;E8"934OT;E_%Z;D2Z-+3^PJ3U85%<)C M3O?2Q"EWFZ]T7 M5")^GN.:-'8]JV5+F[^?H"U>-(P=.6N4]^0>8P%8A.Y$"5!.T346]\'X]@(;G>A9EPE>ZL)R=BFF_A%58QGX4Z3C+'*Y(EX,AV M/(VJ\I+R),U^3<[C-R:9[;07P#-Y>RX[O#F7;;^GZR-&#\[CS_3W++Q_#YP' M_@C\&A",87?%Z`W':]*&63UIM?3$8QHKZAA7&#LX(U@!6S]3,MA\`L2Y.O_N MU+7YJ:G^CR!679'7F^5"TT0.,UXL`[3SG7T-T>HNO.(IG'3G7Y&[S?(C)K), MZCWFK:[>;QD%L;"ZRO,5JZ_R6\;U&Y#"[&$QK2<+H2J4DQ=YY_85:W6%$CG! MYE,1K54G%WS+I+CA(!N_Y`E+_N6=R\;C'@3^':U.$J\U5>AC+'$ M3.N9LV9L5;&IDD5R;H)#SHUW*'O50*KELI>N9Z4M1#'0`8M=V4Z\ZJ2%S737 MK/J]<>/>U&7,:J9O&E)S4**X.S&L[SQ]M#?MV$%JH!7R;OL!'?ND1H95G(UA M0FXVQ>WZ,"/V9Q3`DT#7.(%Q%(I?#:NS]-?Y7P0I1B7!TK\*KGV?$AV6_CX= MNUJ!3A$R6\,AIY"1`;WY"Y`]_Y!M6Z[@>8[Y/T/VW4??;?KNDY[]S$%S#UA! MKDM96^\(=6XUL%L&VLR]S0E(JTJQLR]`F@\)E#(TRC.1:K+A]M1)>8(Y4"!R M7"._R!4F_S+$\U>VY@I?*(;\DR?3\L*B3,@G&1&:8R!*L]6F$Q"O^57D\]&3 MM`W'H6R[TS]KUW>$Z@<-G(9*@AC#AHYR)\8J9%U][(NC\91\0?Y;RI3=/1XR.Q2`9-\H75)F1+/SP[0 MOD':,D^'GO\/5R#VUA4.Y9D[^?0-.PWM$=@6`WMP=8WHRQ3[_PCNK&*"%)-Y MM$F.2T>9C@>]AHH\N M7D9?%J!YFHRYXFVN$5-.WR6Z!;#K@NO3Z[IN=GUJWQ;/YVYH.#@J&U\H00QV MQ>YHWZ>TW;/KNKY/7\3OMMD\'$V"CP9NS]-*Z,JF7@5M08HC82*RJAU*-;L< MUL3GR\WDD9-VK,GR(X=OZ,6+?=P<7CUDZC\F132EG?*6-XV\;; M,N.HN^J:AX=_P,.V64V&N#UX\";!Y7^1UP(\/$Y>-\#KG\G+VN3Z-+J6^H=,%6F))H-,_9,>126SI M_RZURUI[/)K?8M;'*$^Y`P/16-A$@0\/J?;N(0KFC90OTQ9Q-@M74UTEIP@_ MS$._E#G6=1O2FE6CW##$[7DMA06!%$#G'3S0QSPS[6K!PL^T.)HQ[C]>09D1 MH3`8OL6^A6L*MK_]\E=3)5VOKCS&5E4KQB1_4$HAEJS2.O)_EB8@AE8+\F=@ M9>I0%#AYNO]OB<-B?'JD9!I:J4LOTHGS/2MU-)"?(T]ZC>F18B0=JI5.T)]X MVA;1OXM%B2RBA-E?Z?O,2EE?Y[Q/YSKANYW?!-YWGI@&9@G5:1<=C-&^..,/ MF7UQ@[/7'K%"FL>_Y^50-OXM-XXZA]&:^XX864<&0XP^5-9WF2R1K0UIPX.] M]LBA\<%:>]1%)Q,,_\?!V`$)FC/P5-HC':UZ?DBB55_.9CH=RO#/*?W@SXFI MGP\S#9789]'GPPPCY$J?@(NA3\"9//DV%DX-?IS-KQTB187Q9]J99UGG>A?& M>L6>`38CJG3?SE9L^U<;Q5FN%TR92M?'7NMX(;O.)>FND<\,'O%F@3KC%M>H MS778N++O4YIM['K&?]<&B>(=W]0F9?,\"3]E:SUL;E:=F'4;,H]NO5V;+`Z> MGQUT?":G];';C3(O;'M'GACY?43P=GCU?N),?C]Q][9KW4WLRKK;)U5I)F+V MP#'1[+H$R7!=THLV;PJ=^:YHO>B+,Z$VO0OXZR?JZW7\]6/UU4BOH[-*ICB.HYWOD8 M?%_T1N/O)U[Z[)Q*($@;-Z;ZN.:Z%G5L+E.EYN;@!;F@LT$ZT2`+H]-%5]<( M@O\=-&(,K&S=X_.Q:0WY:7LL'*KXG+KE&W>A(D,_6L(RNECP(EVX3(N+K;J* M:N4;WV764H*+G?2T]/]6H&M#X;'EN\RL98XO$YL>M2?0W1#GDI2!]W8TDI%) M-\48Z5H4)PV8JI5HU3R;9-=<9BK;]?(+_*M\U?M)%K=:>89?(N+PQ9E_R,8B-YVAS4YQ M@?A!'RA6[:YJY0D>G4^.0#E8_:>TP]\#G`_X!.0)]D$F6P_J8I^\/>QZ6ZO" M0>(LZ:*31M?9G*#V@CYDX)@423ML:`J&?3U12FJBK]#YA*W\NFYX\7SO0KZC MT"GF0;XSA^*0^I/C:"^-NK='<+0*Y6Q,7-:J@\:RE:DG7]1I(9'NCZ/Q>2!- M+9>P^;"*:IKBG#TLT>H9W:ED33LU\2$[267&[RO>7/DH:WR5W#@Y>>[DF9-_ M.'EZ]C'IXXF/Y`L3#>@RZ`J8V(G?&TYVS+8M7L6((L.ZA0_#T,4\;!LJ-E=[K0P!26W5$ZW/4W^&-5\S(CKSG(R[35 ME`3:;ZK$$`EO^#5/O#YQVO6Z$'8`[,_X'EKZLEQA5R?^M`&U0#'P5_\>&N7R M!;^'=@)1YBS/%4S`))[/,KK^2[^'1EF&?`^MFA_ZI5T-_-K;[SGYLD(1#7MB M7*5FD[IYP#L7+T9/42R\X$0SJ6PO0^@)>M=YFRO[U>6:27*'_Y`L_V%3G]8? M:BNJ%)`EU&;/@3XJH'-5517*O_#=H++BO<=_CI;_L/BQ/+Z9QV=S(H2&<9 ML+!)2SK[[N9CGI+``;X2=/UTR&6`C)/,3S"0H]+XD[BJVQ'CGYQA+I^1BR'( MQ<.OH2RA[#]^BM_U'B@+>%(.39"@[PZ-!<-I`1E5"\0;AARZ_E/BO*'9Z:9M MQA4GN^-]N#I@W$#.)LA0/!@XY&TJ%J:X5,WP*AP2@-10O*\5I`54"B1721EG,H:W:P M@68L&VCF\1>Z6E8C]OB?<[[0R#8\L'ME^I/U;*DCOC6[7/GG^:K0TSCE.GAD MPEJW],_2TXA%I[MI6(ZA!<.)TTP,8^AC3M*<,FW_-5],S*:_@F7@"8&M$24( MHO\3V3I@]8^F$S,<91]EVI M<=:CJ?FP.`^I<9JGC=/LCR,OI_A);>PFFOBJR]0;YR]C:5/87:6Y9;OR&"4*.>DIOI'(EGE>[V$4>%+RX>TE>AO/9(V%@P\!1"HMK_ MU\BLMN@&X\6LIQ=)O*-0MN$19C)1V>2H(6-\5K9X1W\CA? MH8"RI3CM3X[[YQ.8\H>J)081H=F[+%9[H MP9/R4A^O&B73RV^3:SZ]F:[TKV7:P-)/!\3VDM/(67U3QLVW--#E.CGC$908 MZ3I/K-O-CN"*L7N3&U@P^,-5QUR;7-E=#7GL_N%L)WNX8R_])D6H@</73CS@AQ'CT.F%='2C='' MH-2+=2L>T$ESH-)=A_71QZ1WTH:]$3<-NTXS]4!7<>^E&/)G#F7UPXQ[0>)< MIKA[>.ONO(=S\"8:HTR_ZX`105+?:H#<5\$DB2&*72\8RI0??HM))ROY6(Z! MIF52I"BV@FWP5BE/\'KS&)T>L]-C/#9RUO@$,7RH4,A*$DU9J;U161D[#87> M]Q%QA5156*5T(@HX3K&":@C>J;UT@UC&SBA:#DW=_A&+<3MBW,2W\1IEKGE4*'`JHUV,;4:6"54.91W_PYF]AUXL=5_<&5M-G M"3:,LLVDI;$9,22JDCDCAH37TB^R"B0)Q`L-`2%EG21<4E':<-/>'201]-"K M/7Q->^BAAU;:E[]7U-RV:@\DJ'3%!UU"]Z=3\4>E'C^8GDX&60F, MK)7D?Y<6*U%[N$-[L`?(LFEN"_"`LK/G6UC2WN[/DTQP7(VT6U32O&GJM19Z M?NM#J[&,/JZF_%Y@]')/N2A6]8]HC::/KPG*&/??VPOV>ZH3,B(>)?G7[TC* MB""GG;=RE][K^?OV>_G[CB7,'-K`OO[*G79V\2"]K?Q]NYF_[^#U7612]8?1 M;2@R!IXCY>44*N-N)NQN]I=LS9H%]YN M\.]_,7,;PZQC-L8`W5H@OT9K)/0IRUGRLI^2#O5&X8'N+RCRE/E&/M6CA7F2 M1^@3!S]EFS9/>/KO7KC'Y_O.Q&D/!KK$X!/Z--,*FN"4C3]]C.=B_.D)/&1>V+'`]7Z4]^:+(P8B92H= M!M&>2MM`=%*Q3$<'&3^(0;%HRM\V5-K3Z=($8[DGUHF7+#=K,A[CM_&.\#GK MZSP)W][@B3U-7:,[CE@VRM-Y])KI&)@Z1ER/\1_1>^;0;0W&5Y[8Q73;]GE] MC-="[1T1OAAZ\B;T96LNO=:^%+\O"[?>S1IP"S]+\C MT$>C^H>E>3*[WT6,8`=+V?=#M`F&ZU6OJ";+CX:;W'PV`?YTUP([CL8/HVW4 MSNPMR60/O2E,!.B+D#ER'(U3'&5R#/F45;?.\AO3TAP>O&N.5/C^&F=\D$4_PE#,IQ;367*2^P3I*91 M[4`1N:MW1O#Y5KI?UG79)TIL7:#(O$\GF?8YQ:9]>FF3:X=)H(M_[OF0=_*1 M&44F::YKAQ$EXNM)ZT9SW)$7B\PY<)E,-Y79)2U&X?X MMGUYE&T8U68J@Q0X[0__Q]=Z[72;9*1#H6$'7YDRRA]._/+V"S0E'W6IN=KU"%3]]H]^$8%_I\$SY'F;+'Q]FA^3?Q!:V+AW5BQ$': M+G/QL%$TN(Z:+AXVT:_QXF$K_>HO'K;1KXXN*XN($023D':LB5T-;!8$?G.L M.`^_L'O%N?B%JVCU7A=#IHG7'$/#<"_B&01_/#R*T0BII^OM*`B>*`ABT.5E M]&2<"7J#![8YS'C5Z3\[C):W`>-[/@\&'D(88817X&\M-3HD;ZTM=Q=LZC M5:^TN(,FSM3]N_(8?3[$]QW7V[<^=:OA\,ADA#PICWTG[7`27>I)/W?1I)CU ME=].O#*0<%!43=^5+I]A^UR/\2!9O?-?RI6RE'GM\%>1SYL87I0)X>XX]?^:U#-E64*=]FXT%S:<]-GJP?P]Z(K9&C M6G6N#S`4W:9Z/:R$9T?KK71ND-2RNNYE\VP75B,O9/P3VN`1G'O2X=M'Z6\2 MS1,P'6$EHE^G02Z^3*__N,6GS;OS)N; M%JOH-IWKJF$["_8,V?5)+WNR#J0-?_0]V;](S&6G<\)>4Z;Y5'*KY3C1+7 M&`Y7H;@T9)9'@JOW64;N43IN]\K;\F^>LMUU]*=$P<0I=Z4]=K#$GI!VBFV: ME7]^.]HW+:P/'7WE@R%XN!^Y,OM3&AR^\O9J/$NGGV%36+\D>7&-40>?=,)U MV)0!/NR,E/7N2&\DOWG2]0>CZWWCJH=_QQE@USHVDHA")=/12-W+6VG=9-\SG4J2,M#/\ M)J!?7=66CV:#7[WV9>?FZ=@B'/R^=Y7MADB'/YN^.4>7").7AZZ8*U.^POVS M/&QVQB2OH5.P_^9%7;[<891?2%IIRAS=<0/%2SOC4*IYACQ!VNN1^>N= MI4E>FMQ"LE8D&XL0>*0DJ\I8>+K!02Z6,.M?*O4+8:Z6'F-F>*5]36PC1T[ M'D5PSGY-7F.=78OJO)0CQ:&JZ;P0 MB2W;91?-=M!=LDF1Y..^D=>FNE^.Y+G9=&\>.RT*FA(838$-$[N:7.^S*D6?"A!W'B:J1SQ5+)M-Z7:R1-->T8\5,:'ZYGTR)3 MM-GQX[1YQ'6>=H+3X<@-O+OU+R^@%IL'&]@%<'-IX\VA&TDQQC]Q`&X']S6P M^V/&(Y[&PZ,--'J+&:*?Y^,HCCN&`KCC]C<$SRA0JA5-LB.RNDG^8TU3W^\O M[*QJ&GG?2-><.)OZWA:<:7*O-+JCJ'`(HLM*.^,U-AWR[1QY:S;;`/'"B!(W M\KO9LX_.?LF]9&*$,G*O,4H+FTKE*/FTO,;81\MY3L.Q$>^MAN'9K[FC)D99 MH#JC>*9I]A^1!;\GGNA7SZ>G^>0Y`\>VJ]W63YRW?B,*^F_BLGQBY&T3C/O8 M;R>=\"3`"'YLY.U(/!H'B@2ZBSUJXG7#BWV7G&EOZ7J3<_K.T8/Z>K/_51AX M6]<["Z_TX(U@9\5_XBS3"4^4D&!3/D]4XHELZ813'N,Z#.)'SD9-G#8<'?`] M3^,"*>)Y&A7P#R?4&?=2Z`S#]ACHVSSUI?>C!]QQQ7AD[TG&OW^>Y5!`.41^ MYQ`-4GYBG0.%[4.70<>+1]QQ#GA2YCD\\T-TBHV9]F=&SAHI>Z+MZA-9]VHC M`C`'0PCXC#R1#L>#]&<\8BW^TC]-/\LC\@G7L+[)M4*0/DD:&9G4!?:TL&,? M&'+9!XLM/SZ1^4OQ.L3/U>4B!6G4J\JQ MYN]*DGEVV".3^FL\E'O;_S]-I3TX:?F2O0 M2CG,K-0"TD?LR]69DZ(][9BGSB>/RJ_0:OW;;+6>??8SO>071G06ES$P_HT\ MWJIK^LIP1%.$D8T.FM+8I\6;',H_'V/=>!OU3,?!G@TN`X;/;7IQ@'? MCG3(X3E*^G>!\XN>9&6HT+C/*LT:U,N%@MO@G36F%\8-5.CH_R& MI>6H&)[BB-%3D&XDRS6"'11#VM8QG9#+/SJ$YK1&HFV0\31%GD;??J(OJJ7N;.*H3)]:AP==@]RJJW&SO0`U='.DG1K!:3F%Q,WW"UFA MG!W*9PW<,CDCS:]2'*<#,KA>K0W75;UD;A64CSPMYH/:EN>HWOVDW)]6UE^["HVAVU2-@AS:, MUCC0&H-0#FCM!WT/&X+&PY9^Y1"9(K3X<&O?53+1METOKP@^Y/4AS8=#2;SE M%NWQ/$A7$K%(*Z)Z"(D)8Y1?&&D7SSHR`JJ5E,W\UBIFO;EUTHRQS?[8)BTV M77TP\)Z8*O^"TTG'Q_X4H>BFZ-[/9)ZT3+L^,P=\\ES+`)U=SCOW3WPJF6W5 MODG9>=SG>X)>IFS)9>?(M`,=U&129!;+@.&-\_YL\9:@W%E870D[U&]U9F$$ M_PJ-@I@S?5;:F96>+>7#_,:S@:627J,3[W;NU*^0DIT[#=G2':[QP)0T!9LX MZ2G(,,HQ+(D"2D*7+3Z?Q#<2IAK$H*W4I#XIN,YG&,N^"MYL7<&*K7,H&S?Y MF:\6;N;ZVJ!66&\]BY.J5IAEX.!5YL`2M%PSP=`JY`G.;"'Q?;^9P;5X$NV; MI/&^$.<_&0^Q/)5S?6-Z6QZMG!TF"@?>&\OS"5`=\ERQD=J&O)QXF80:-1`7 M/Y6/\GW31PTG^`H625=F8*_QC#F'A`#)+Q@IJO3"P"G10CEGS)6,R#=;-OV(,?<;9T->T\^*IVX<3O!9#@U[E[%/UJ2=8?'OI/BWKDP_ M+?[14:&\V8+Z.PU:E%^T,)K21\77V4+).KY[(C!_0[//BD5@X_+@+KCO/&W2 M@@K9P^[,KQDX(]95*//9_#DM?=O0LW$AL/@%(X:)0]\1BCGJ'*4OHEH':^UF M!XV0/!B6H,N:NP)_YBVFSDLH8]LJ*WQQM!/5:V6'ID)V6EKZZ?[>G&QRLWQ3 MII:^VTY7#0RY7M&N_(] MNLCRA-'>_1$=)C]BVW!,K42JVXH,MN%OZZ:I&_Y*7C0.S:7IK**APVEG[,XA MMO$JF\;J4H3S[9W>Z&PA!\_SG2\Z!^>Z+I/ALI!<(N@/GUU<%[2K/-B!=K"- M:G<5L4XHH:9*FENA8#Q%5:0U"G2F=`.ES:'\[_5JR]&\7)?IA/H9T>0:M;A^ M>\$;\1-2T)J>AJ_EFV8^,T";\^/YCO]R91M;LS7SK0AT<77FS72,O;M#_HAT M`X9#8$M\=16-7_^>@EI1!=%$`\U.>(NKE=_];?`^C'MAXQ7"Y#9FCG;I97[0 MD'8U'ZU2E0H7"F[8TB1$-2=`7;>GKRM7A'Y*S\VV6XCE7S3AS[[-$O;>0,16 M./BGYEKI8W.)/_1_L<8J2';MU/U-%U;_>YU.]7!#03_T?Z M":JI1GD%NO_+.0YEW3K\SAX69]4XE#?1NW_YRW7'@A2$Z[R)V:_LJW:P&FC& MSIYY031G*I))FRBCY8.76$_,E@;XQ2+J3+JT!7T^#35M537*+7IU#PG;Z&1C MFJ!5J%(G[:NTV[.U788WN?@WVYV]D3[P^6=(M5C+,]ANIDE]U9D=&$+205G'M[Y M@6M%?!;:*8VN2+4U]EWS"MEL'S9'RSY%; MDXL^,^(F19OY0M>;?R(+;94GCA*K4?[GAT%-.H3+K0)G,YY\X?5GY9R8Y:^T ML.VBP1.MQP/ZK)IM5S)#Q0^+9CK*+$:ZQO0/2!^C3Y[#CC:;DCX4Z90C.O M;%>*&.\I,CI:=;*I3/FNW]'@*S+!75Z#+E6VEBMRB(]<:G*-F:KEE31WULF] M0I:8:/$!>>KE2?D!8]^[(,LI?SCRP:U]M`3L''G_5L.P6^\QTCU7PNSQ.G>> M4O=5=:AI1=+,/ MN^$;24]((G)#2'LVLRD86TW3\Z4Y](E5.Y_\5;=)JI\=0A/9PN;FR0RF[UY6 MNW6TF[*,9KF5>UG!C`\65BO)/C[9B=>R:N4'?(:S6HF#L^70:A\-TP2NTNG; M5C2`C0T$WZE.V)^1_IZME-W9Y/K`BLSD%T'\.:M\>N1M*Y7(:QTY:YW]BKO: MZ(X<.":^=K%HEE.:V[2F6OD^G]@E!_&#)O>.Z'!]YSI?65&-W-G%1355GC9[ M5IJO"6;\/#+E`1N0"B0#R]*.T0`=3^E``EUX3R.EH<@LFVC.FB6:LJ)%8U8, MW77@';JER'5IMN6;#K#-9_<<;,P5G)>7]EJU$*Z3SUV<+UO:(//^V-PGZYJ M]?X@M+BC^I#B_D#/B^O@Q=T M0>2%DW'GM)+2FZEN[PI$ MI2OHV=59YRHX573#OX^[Y)(?J9!S]^I"I(>EO$`WG:S$^.,8>'K)7+A38?K> M4D2WMP3?3Y' MK"#LC*"Z.?@\+45,26RDYIJ)%5#4%UW/V9V@A;:$%K%5+Y615F+D/'^9O0F, M7=ZX$.YY(UF`4M>E:,L`?;A5IODVNN72G6KI/ZE*9OS6>&>OO2*BERXTKEA- M[8"FD>(UP>475:QF-VM85D/F8BD(NZWG0W3<:VER%@9,%EG2[UW2#-E$@3:> M&J#V\)(L2$8\]N`QE?8']]I[.8-VT&7>['OSWL(^WP&OS[>=7-*92QK(%:'= MUSIJRI3;373QN6AO0'9-M"6U'5U?*]FVMS2E74P[U93F2SOFG4=!LA`DBX)D M(4@6*Z\4&PB$]-F"L3<=7LL$,;[I>=_.9TD6*`SS9DMP-[C85^CGA<8DRIIF M0]^#N.8F=ZJ[6-_D[HEV.VB'A/I9M\K175?J3'WTN7A\Q]9_!,(UCT#^C<=?CR)/P M/14LO=`;)(+ND@CZG/QT_PR&72M!.Z% M\NVDZ?C(L97Z%*\1?VU-`\U$!)T@1;$DQ.47"^SY.=+BO:>WY0K/T!]/ MC=%OGNB;Y"\9F]Q?-@ZMBAQ\`+08(L\U0+J(LA5J>L.,*%"S2(XY0>?\3X0E M$JW=5XOH$><6Z@.4!,4\2C&/7C.F%V7<.XP@S](?SYI`.%V3_&6$^Y)QJ#QR ML(R321\3!'MS1I1XRX\O-,DC32.*R?+C$YYE7?*8)_:B9YG#\N.3GF4'Y,,C M;QL-)YK<])D"XPE/[#"+]C8-FK,,?VS5];W_\;S\ZZ"\;ARY:D6H^9;GQ\@: M0?N?.$W6&VS;`G:'@ID.F=WHN[\KMJE(G8>GQ?1M.C;,`Z=+=$WN>\4E2(". MO!@N#%S<><>?KD,*Z[H:MR/B4)Q`4U]L,WP3;-4;B8P;:>_!U?NU#0/_]C$S M`5=+%P;.;+]QXDS?;VF^;(>5^Q[GO@]*%SP=QB+YUP,7=VR&\J,%Z.1\60^K M%A9VN8FV;Y29B/PRY4L?!TQ:I82_T*(T^_%&&^N,S-#,HT94A_$(/(CP-CDB\J_:DAZT^DU MH'L8K#.,%:0;V<5A&@<0;8XS,U6*H#@7@5.,8V.%0BH_X4),Y*R+$-0X:OM, M8/9]8DV37!I-MU!5VI719.XVR8?Q$]^4-D+F+6M[K-GUO8T_-+G@,FB3>;='AF'_YL&FBSQXJZ?)[,[7]D@MJT1GJ7 M'T?&$"S""3'4':39NJ8,A-IZ']*=[Y/2THY1LW11VY/H0UPW4CN\Q>>3S%1] MMS"N>N?2SRW>:/R]T6O$W_D4:IYO9]==ZF"/R*1S'NOI'D-G70IEQ$>#X+U: MIS+%ZDQGQUGL=`="@A311*RWL:>1_2ZI%>Z_2Q`2A79! M$MKPWR*65F*[U-;&'X5(^A]28Q4,D4*DWFHL+"QD=L/R5,%!`6R)Z8ZU42;A MWM34&@=4A%(JE]L]C2TT/V]I:VK_23?'K&U(ZVML>MC4A9UOWP]UB(S%_ M5?O6^K:6!A2O\2LJK=V=]:"AK;%)M*$\#8U;6U!JHCE6^P.YC$+7-7^E?:.;0$F MYM4C[X:&KL;N;L'1V+6EI;N[A7&AO875`^7=V-XA/=3,^20$UQN*T-G15=_5 M`C9+[4&US?BZN;FEK<$&TC8C<;""Y<5JHZ&Q>W-72R<*(Q3V-&ZV-75T;:D7 M_33E=CV$HG2+P;(26F9;1Y>?:N)AIR0NZ9!$_&B)K((P=G5)G1!)6Y,FJYOK MV]J"TE))\[\SVI!R$.N%-5KM,D'O)`Z)).:(XY?#L'].^C@&?H?IHQC.KJ+&>E'J:G2`>E[A#Q:6EQ:6I-T=G$AC4FHJ?1:I2VH76]!L6&8V M08B!8JDL65-1P5WH5:A85;HRZ%4H6+,Z=U5IP*7\GM2[TV.B4ZB.-C&QA@BV MB"T0O*\UVIH;ZSMY/`IW+X5K#ZMTJB!4Q+:6H(B,*8%X]\P8KUMLN$:\Y12O M$^RP;6WI$B5HGY#:8@$IW+(9TZ_K:(>LBTO0+O%C$ZF(_O279H26F[5"M-SN MCC:M203"JCQJ[.E$]4-NB#/!?*4P]X:%V0(MU2(V=T'=,*47'GYFOJB1&NK% M>@2/B:[?U$[-H(W$\J&N^BUH71"V]E!^I6;,F%YC.SC8T4Y*!,$I;/J,835M MTZWQ-_5N"MO4UH'LVA^R=7:TM(LL*ER@D'G^JULV=W5T=T!/5K=T4U7E)R79 MRE4!+6G9!$U`34:()IE3G0N)';=%1SMXH:A+%!8O7BQD::5DG8+$M=)]\*ME MXB]42.VK.]HKI<::QH;*9JFHJZ6"=9H/U+<7-6Y:7=^5V]FUNO[A!Z3V!Z2V M7.FABL;.-9O%THZM!8V;*7[EEP5A9:-84M\MYD*GM9:6XI_:XJI2V']%O`?BN8^Q?Y M=^"E'/^S\WC@.?A?$\2@C0O/"MO";LCH%G0;#7X5:$O<4M]C6]BP*#HTWGWX MUWOM/T)NV[;ZAZ$HM#J$NB]Z)5)85XK^J$V/-^8DV5HR"WLI">*]7NA(2H MLG"U8TUY;OF7@LK:T@1;""R@9V)#"Z>+/:/MU;>I[AJ+MM5WM4.:5T"0H1;0 MC8O=U,-W26C[8/'"[NB@,*H(:KY:&ME`$O[<#W0WB@)%U/*G=Z3'_"E2O65WA*,P7\E<7 M+"Y<6RA`A76W=4"!4??-+.O;F&HA/&ZFSLI$_!5Y97I!7L5HM&Z-CR5TLG\WU[0$#FRO:V[+JNS8WWQ?M]Z=7 M=-&:&MZ(OPO;&ABX'4R6$]DIW6(7_3";+QIY)!))K'_H_V:ND)-X^Z+F^N[F MQ9MG+5V\=)G-EKC(9KMGR=VI2]+95SBA@UE,=+@-2>Q_&[J7!_'[X");"QC8 MG<3\DRB19-O")AH6=;>(#X.>XH+RBGP8`O@MKT*?!ENQ`2,P1CZ130,#U:VI M0VIO6*$6IDLSY0-=#+MT@?\)_*LV`7Y:ZN+BRO6+6F-/ONQ4L%@48Z#2M:5S2MZ%XAKJAOWXKP MT1*9.BML$`C;.IC"9%EVV]9K?2-$,)K1E%)O8__R))(%I*2%2+8U;H7]W-($ MX[7Q8513HVVSU-4%0W(Q14QIZ&'Q*AI%"@!N;9(PDD.<-A*-'EMB:DK&HL4\ MCR8>EL;I\&EIQW@83QU-M@?JMVRJ[VY$L)16-8S4;I,Z>1+=S8V@1[6.R$QJ M5REH>YC3T,YI+^AHOQ.CYLTTI,#HM!'#3`D#=R)+(N.#Q*:>C3.Z>;SNGNR' M5=JW8D3+!@QP2K9U;$6%M3!Q"S*Q*5**J)5A$^-43X`_&(BT=".G%+$CA4P= MGL=63INCBZQK(@5)L^$VBDV50JV*!C%J/8`3MA3;EOJO-"8N7029;Y!Z%MML ML$$7+\T@?QHP5JLI+.Q>C/_)5Q#R.SH?[FIYJ%FT+`5X$KP+)_ MSA76`KW`;N`HP!W@5N`(D/)DK%`!.H!_8!>P&]@'[@2/` M:>`*$/O=7"$=J`1Z@-W`?N``,_P)= M`-0"/0)U``U`(BL`!HX`AP%S@)7@-CO@_=`#E`+]`"[@?W`"4`!A!^`/F`9 M4`(T`_W`X\`!X&G@-'`!L/X[T@.*@8V`$]@##`,*$'L@5T@%E@'%0`G@!!X' MG@/.`I-`PE/@!U`+B,`N8#]P`#@*O`-<`>P_!#^`8J`6V`@\"CP)#`-O`!\# MYO]`OD`QL!'8#1P`3@`7`-/3H`FH!-8"&X$&X$G@.'`">!5X!U``TW^B7H%E M0`G0##B!QX`#P%'@'4#X$!C(/8@9`Y(!)*!`F`MT`GL`O8#1X"SP!4*^PS"`05`+2`"CP)/`@>!$\!Y MP/@L>`AD`@5B@40@&2@&&H!^8`_P.#`,G`7BGP,? M@<>`(\#'0/I/X09L!!J`7N``\#0P#!P!3@!G@7<`X1!H`TQ`+!`/V($LH!-P M`OW`8\`>X#AP%G@'2'@>_`3L0"JP#,@!U@*[@,>!)X&#P'/`>4`81GY`%I`# M%``.H!)H`_J!_.`$>!T\`;@/$P M>`BD`CE``5`+B,`>X''@`/`T,`R\"IP&/@:$4>0%Q`+)@`/8"/0#3P)'``4X M#PA'D!=@!>Q`%I`#5`)K@69@$-@//`<,`Q>`^!>0)M``#`+[@*/`>>`"<`40 MQE!NP`HD`(E`#E``U`*#P./`T\`)X#QP`3".HTZ!6"`9J`1Z@5W`<>`=0`&$ MHP@+F`$KD`#8@`+`">P#%/(_!G_`#B0"64`#,`@<`)X#AH'CP&G@`O`Q8'X1 M,@DX@#:@%W`"!X#3@`*`YX![`?1SY`,]`#]`*[@<>`_<`! M8!@X#7P,F'\&.00<0!O0"SB!)X%]P'/`,'`",+^,]@64``Z@`6@&^H$#P-/` M4>`XH`"Q/T>=`,)\`O0`3V`(\#!X!7 M@=.`\23J"D@`;$`6T`RT`3U`+[`;>`YX%3@-*,!YBG,*]`"I0`G@`#8"O2@52@!'``G8`3 MZ`<>`_8`^X"G@8/`$>`$H`#G`>LO03^0!10#)4`/,`@\"CP)[`,.`J\"DX#Y M5X@')`+I0!90";0!NX']P#!P!#@-O`$HP'G`=!IT`^E`%I`#E``.H`?H!0:! MQX$#P!'@#>`\,`E<`!18`_P.'``>!HX"#P' M'`=.`&\`'P,)KZ,=`4[@,6`/\#1P$!@&C@`G@%>!"\#'@.D,:`&2@4I@+;`1 M:`#Z@7W`?N``<`&(?0,T`XE`,=`#[`:>!EX%/@;B?XWR`)5`)[`/>``A+`XX M#PB_17Z`"3`#"8`-2`;2@2R@&*@$VH!.8!!X%'@,V`,\#1P'/@9BWT%<(`O( M`1Q`)=``]`"]P*/`+F`_<`!X%3@-?`Q,`K&_0QI`.I`%U`(;@4Y`!'8!!X#C MP'G`]GOD`?0"NX`G@8/`4>`X15F!!,`&9`$Y0"6P%N@$1&`0>!38 M`QP`G@8^!B8!DX+X@`U(![*`8J`$J`4V`H\"NX#'@2>!IX$3P"1@/H?Z`98! MZ!C0/@#X@%6(`%(!'*``J`-Z`3Z@4'@!/`J@$GL!O8!^P'C@+'@1/`6>`=8!*X`IC?@WP#"4`RD`KD``5`);`6 M$('=P`'@:>`X<`)0@//`!6`2N`)8WP>-0"*0`Q0`Q4`ML!$0@1Y@#_`X<`!X M&C@"O`HHP'E`^`#E!F*!>"`56`84`+7`1J`3$(%>P`D,`H\!>X#]P`'@.#`) M7`&$"Z`/B`7B@60@%:@%-@(]P"Y@/W``>!HX"AP'W@`N`,*'B`LL`QQ`,]`+ M#`)/`ON`_<`P<`0X`;P*G`4N`,(?42[`"L0"B4`RL`Q(!]8"M!38`SP.O`&)]`!H`" MH!C8"#0`(M`#[`/V`P>`@\!SP''@!&"ZB/B`%4@`;,!:H!9H`SJ!7L`)'`"> M!@X")X!7@=@)\`1(!)*!`J`86`O4`IV`"/0#@\#CP)/`">!5X"SP#O`Q,`D8 M)Y$>D`"D`LN`$L`!-`#-P&[@,6`_<``X`;P*O`,HP!5`N`1>`EE`#E`,E``; M@0:@!^@%G,`N8#=P$'@..`V\`=@_1;F`="`+*`$<0!O0"3B!?N`@\!QP%#@. MO`&`X:!T\`;@`*`S8`[P#*,!Y0/`A3R`56`:L!7H!)_`HL`MX#A@&C@,G@%@A M3X@'$H%D0`1Z@-W`8\!9X!U``:X`@BY/L`.)0!:0`Y0`#J`?&`0>`_8`KP*G M@8^!20JKSQ,*@&)@+5`+;`0>!78!>X#'@0/`T\`1X"CP!G`6F`2N`%9#GA`+ MV(%$(!W(`DH`!]`/#`*[@<>`?`8>`(<`40(D`+$`ND`LN`C4`#T`\,`ON!`\`[@$+A(Q$>*`$< MP$:@(9*^$H1\@$'@4>!IX"!P'#@!G`X#]P!7`-@OA@'0@!R@`FH$V8!@X M`IP&W@"$:-`&Q`+Q0#*0"A0`Q4`_,`@\!NP!C@)G@8\!\VSP!2@`BH%FH`WH M`7J!QX`3P#N``DP"5X!X,\H,=`(BT`\,`H\!>X#CP`G@"B#$(`\@%D@%'$`G M(`(]P!Y@&%`HW!R4&6@`!H']P''@`I!@05R@'S@(/`>\8^$[.-=4%%65E-BR M;?;$-16+Z`^MD;"'ZL+R16'.@=>`IRTSL'[/7>C]$?S97-_=:,M=M=:V8E;) MJM('2U;E5=@:&IOJ::-BMBVE;5-W`XO,PA6LK**`Y;FE"!<4;,$"6Z:MO+!D M37YN92'>:46'9\GCK2I?-6,\+>UBQ\QITYQ^:45E+I@0[L'BKJZN^")DL3BE M^>77R.[:^3DJKT4J#U-62F%F2H:'JS3C.PCW"Z)DU*Y#HMK:633R1_/Q@]\V;R34_ MOZ@D=V5%L$=*F2USUNVVKTHMC2)+,S\I*=C?GIB?SUH5W'GD:\2EAC5M9-7O M3R50NB:7+8\2KQC;P.HA!>85K*HA#4_FS95M;@RVE9TN; M+:6#$Y:WJK1@54B8)9LZ.D2J4!8@E(];MG%."M/RLKVC^^'NSGJQ62WS%^%E M>-RB->65*//4`C->YDU+#]CO12NG3:/U;G3\Z6A M8S/;?#W.8GE65!;0TOS,!>.+\MU+ M.CNZ6WHXH5_*#:TAK0#D'L[D$+]5)873^6V?(C.L6?.V'T):/6-O;DT(:^NW M?86GDULQ13YFDC?2(6P+G"9T87+SD%_FILK-%VGK/*PC)&PG"UN\>DU!B'/S ME@[>'0H%:RK]/K.R;8O)%6[ASLR]<&TA$BH,3NG>I4MY.L1OYAGPNV?9,M5O MJJPWW7MOB-^TY0X7%G)4]7>PLZJ_;2F;IY?YMD95EJ9I5X&Z437K%]5QY,_< M%FEY<.,CO"PE(<5O8W(P31L,T+.EGH=Y,"S(EJ\TM'3Q-%=7AWALM:4T,8\U MCLI5JX.]4M8P]ZEMLZN^72UW>:C@='')09R*XA#W;E6!E8=DT+5%R[NB,$32 MNAM5.:LH+BPI*2[,+2@L#_)>5QJXK"RKZXGCS@OB;O@1#W#M4=XA[LSC5(56E!81%5>+!/BF2K M"](]P;$>KN?M=3I]E=(0B!.NKQY>+-:K77U8'UA:24;O(\!,NNE:[3U,/W1T M/LS=_V_H@3]+EE&MR+BT$IT(;(FNQLXVVBC/=XAWUY56DES_1;+;T-AF6]*T MY*NJ+,TDO^&R5UL[DUSY;;3I9&M3J]\O3+[HI!GW8]6*']F#_B=/8/C\?E^2_5L6COX+DCM[(X))#&L=I: MM>33Z(7@4,'JX9HV36C[6UU1G<]W^D]?+].>Q%AZCVU3BSAM/1&Q2]H[VCH> M4DW6\/Z^+=A[FCI94F"K75"SJK16TZ%?P"X-9^U_1?_'XJI\8W536[L%?SJTZF]('JF685B;4[(,%8EH]OR2@YZ?*1.DU MVNIT,J&--\-E@=,9:HMNJ>_>DI9^SY\G'].UU;]()N@H(WE-)P\SU)>?16HE MUS=LK>]L2;M;$P$A/``)2*A\!/Q")62J_U<:N]H;VWCB1-`7EH72*>KA<\L# M/3,96+NJTK:F'1U7,CH1T::JG60;3S^9SC+2(^VBMA:&C^UVV]>^FNV? MBPG3!]LZ.X/TRY^A$[9M;O,G,)U>(,+":?BKZ/7,&?KYX+)'?U%]7KVZ0JW[ M<#V,ILC;SI\_)D<[6Z+9L=R_O#!,C@.3A6&-;MUZE?]3V^.Z%,UO&OL\<=N* M1E9UT]CG\.MB?M.-MV<>2__%?4+F5!W1Q>\AR)Q&9\-MBMYH%%G8\JI25%A( M/6U65="UQZ-3&='8I=F8X3I'5;C3R%I#X^;-=CXG]W#=GQAS=K3]A?HI>.U# MFP-E<]%K'(7$!=L*FRJ&07/12[I%]"7978UM]3V-#77U[=TMZ1D!N??/1Z/? ML_7VAO0AJRMH6CNTIC4;A?RFEP+R6[7:P:(&?.DJ"BWRZHKRD!;4M3E`SP.Y MJTE,@[T?J-_";@!@8>!/YWHJ0OWI<"B?$44%87!065A>2HU\P^WK9MG6WZ56 M#'M>EU6[8'WBXKL6K:M=<-_ZQ7?9%X3%RU^3QZ*NH\#YF]>O6].Q?IVC<_VZ M+SV\GMQJ%U#LV@7^J$%Q5ZW.75G(8]>*"'L[_]'R9R_K`OD'LM?._+)3/2O4 MTS3\5@IB&XF`7T1"PLX4<@798J'OZH91V5C?;I/:M;DU MEBD_HSR]'SN:F\O/39'<:/39$[,6@1![XGV\8:GSIG36EWDED:Y6'6F1KZ** MYNC\#GZ98.GG26U?466>39+96E@`.G;70C=W4"ZJ/[MGPY[8LJ(@F_+A-+3P M!#699VGF;_;3S-.L8QW&3/1KC2N$?G_?J-$?VEFRMJ4M!:GM*G_SZJWAB1-- MR)U2K"C,+<\OKJM84U6>7TCIDM()I,_?*'%_=V6[XPX\U36KZ3/]M:HTWT\H M=7>0P>S$!2S8NJ7K%]F2V=/=*7AUIN MP;1U=(E=]>U:_G MQK>*[,5BCZB6@4<)9\>4-%=MJ7](TP%:FBVVCI!TJ3YX+=>%U,GGX6U0W]:M M]6T=+&@+TJ4JQ*"J0+6#MM:W28W)L*(QUJ8SL:S11H>VB8Z0-E&96[ZR4..7 MVF=V!#I+2OP!"<8"FQP0M:LZR$9(9B=BZQOH>"JI@,;VS2V-W7YY^G].!M2* M>D1K/UDK*C1^\@$C;[]:.Z&XJGNH-W)&17\&N]NKF00/*A?)D_D$>6L30\O,$HD/:0/.TM&1-5YZ9 MB_*Y]9LJ8R'*D>H\I(_[W+V[6I>AX:.U-CZMJ9`9V%,2'10N>']`B-RQP@0W M=AZ./%*:&[K8J*,Q,&:WV:C-%+75/\0OY@+CNFP2S2NTV]9L:FW<+(;)_7U^ ML0T>/_CY,I6MT_'"GMC,G/C@5.--:/NX[W.T#U7`HD-M[`[HM`9UW(;?[(!\ MV6R\O`7U8CU=#,!NC&)YA]L,#W6K35U;8'C%^I+$+<(L?S!&S9IO$&<8O0S9,]V M,='B>71O1KA@D9V!EN[-FV:@Y=K4J/'OLJV811=PV1;+CD/"VDEP'Y$?-B$0G.]T8W.UB&H;""I#4/VIYK8ZZ\="(OG1HNT[:=I0N&HX+6[(6%`M5!YK'2'EI*JTA8\'`N.ZL'JD?-0)W&"Y M"[59>[_2YIJDM:D'Y8IKHM\X=:KKHL][O_2 MIKJT!<5K5]W:_:&VU&MN2_URWV"CE89VOVX(Y7_#BO*I4UHLWE]2%VRC9_1? M6-_^2?4PG5;2V*/)ZTSCX\\[;I_)3@WDQ2?BM?S4UZ*NCBW<_.H.REJS%-;D M/:"-R0*!`G-.P>D&)31%=J\]7\+3:PNU44I6Y?&-5WPN M-W3N(]A^U<+1+"Z%:PL*I^K0MA4%`?T9PNNV1>Q/(I)?D5>Q:";K0DW+GJ@M MS@7-.P3JM&U*GS8=G?YPP=DBPG1CW>`XB=3R_32V^.DBA,N%Q@-&,U]@8PJ^ MJQ$5&42I:L)X;PAJVB^*O3QJ)M MH3LTNT-3MX7T(4'S2URF.@+Y,XL[6I7I]J_0!)HFQMI8C_C7H>I,9F='"_[P M=P?"A]@CY%?4TE[?9@MM2\'U1F'6=+4\%`@6D.=0O9,U;?\UXQPE)5RB;6:/ M#BJW&"CW7\GN#]@]4YJ>4%I82!O**OQ]?5+VM`']=*_F-C!O2RWMGU>YS*A; MPA+1^*[-)VEVW[7T"OE5,$.4[OJS^1D1K"09/U&\VS@;HS5],$4GJX958!XB M:PH_P\=1,]FUT]F-TXU=9AI;D8B$)QK$-RUQ?UEX6PF433U_$RR=]VER&9B[ M#F])H/LK!2U=H4ZA]AX+$#R?I/*U8$TE6VL@K4NN*6Q#S*+IYM4#WK:0\T$L MZ:6!>M/NX0VX!&AGJW5!==RMM@5'L/[C6]-";:CN`(_X6`<#*ANW1#(#;K6U M06Y:^5F:W>J*2OH[A/?:1$I(._F_.X_U M_]J_I*2I66EQ-\\40/7O[(3K=`'4N1E$5Q<&9\RC+8P^ZE<7 M;];"P)0/<@NG'ZIHUE1.!>9L9E6$%9RS*=\&[C?;&K=L:FR@NVHKRDH"96)S M.+,J2![#HB)BQZ:.MFDC\[@/7[,L7Z*S&=,51LN;YG^JNAN[N+Z9PK%I=%+^ M9IKZ#;%EKKF&.L5("-E?T*V9(H'\@O-*2E(S$Z;V+9\[OY`U^]`,P_)#`_[+ M\@KHS&OF$V;_M-BT>;NS@K[:64%(HEC9N#A]CM4RA.KR>N]LT^F8: MRP9M(0SM<]63[5I\)F.Y:QV(2\GFMG4VUT_;=JISUZIA2*%,:;A3^D=UJ*'E MX[^O/RP."UOQW_M?9MS?4<%7C#\W;];D3<<VQ+)*T$#N,W+/X:)Z[L?WE/#U;]\/M(MHXOX=V`I6G`94(!@O>TGG\LL2[A[:HJ"ZE]7N>;!PM(*+F>! MN,&5S2N6A=;X$C*'R/QS2TKJPBS_L$@AOI\SCK]OL@7O])A:3R'Z41U7A>Z* MXXZAFB+8C?6BV1I?@V0QQ/8(S2@^Y?8\6XN;'1UES?S;Z(M*FQL9V=T&`FH=98*&6B MH5N3'=4MR&;(6I<6F"_CX;H7H8JI%UD4/-=:>[X\\P;4_CI MQM#;HX-MH]"YU,\_3ZLR)"B%X+E:U7=I>`9^?E:U-S0VM;3_5\TKLO,D83.& M_C,FBZ:QLP+C"#\_F4POT-:4_L(V6=%_#Q4[3)6L7:M;P^:M&-?H1-#)\4IGC\L M/:"^ZL0`':'Y3=?/U[78ZAHTWMSFSU'E?5T#2YG-!+(TX1$\-Q+P]P?A=+9, MI5,-6\=7_=0H0;*U/;@L=0VA_*IO:%#[W'#ZNRFS8/JUME#7'49[]/3GH@+S M)8%U"77.$*-FFYI,H"*87VWMNKMJ:]?/Z.^/21J5^:W7RA/@#_`J(>/\?T* M/UA_U3VDU1N>0A@X8QEXN+J'%MU&)?'+1T!F'IK:QH(Z&HWV@-S[UZ1(;D*V MM8:5,Z1,3(:T^NK@]DL(S>%R!5JU]+AL+&ZVK9B%J)SAVOC=+S=!7C-MN)W: M7CK\90\I?W['EBT=@;T)3/0I$F,V&T?YW[@*N6]1L#T?HEN"C#__"(5%"+@' MLIPB#E-I*V]L<]`U4M$A]8+_^8FWNC;-R`G8G'5=P;41DE\=C;'4J,'CC#H^ M]JIK"XZCR6Q=%_?4SLHQ_M";7W,\PN)H]E=V4$K!_6N(?Q=O9&UA=16DA_GB M5G10G3!3+J1]L,812)?3/IV<<9KY1A*USEB<8.D*UQUA89A=P$@(JZN9X@57 M0DCYI':5O4&TL6,1!:JX:2^W!=I\N'LM_MEX?']R0>*D!E2?\BK"CF5,1_.4 M-KQ=H^USW%NG?K_))G8\U"C2=XTZ6QHW-VYI1"6IR^P:WW/+U5V722DLM^@0 M'MJ",J![WZ)G2M^?JA">KMJ[35\W6CKLPU/L,VF?F]XIZ6IIY7;[PS(^^T^S MI:S2)FI2.J9)(ZBH[`;$4<5/WB?-MZ+@_Y#IXD]\Q>G,_D M1.RJ[[0MX'# M/SR?+^,S:SQX:%B,=?QA^4Y-=4OFM&D'FJ&_9;*OI]/V:#:>B-9DH'RUQK+@ M^,%[);4PE$U(6YDFWZ!C96IC&,$7W6V;-I;^HBMDWW9 M<($Z\\VOXD,O@$2T,.#[D@WK;E^Q?@F"MS?VB.2)?TLVW'Y[L).6%OG>:+2?5UQ-^>_$6\2K7[.OI_'G$WUWKP^1 M44U.>?\4=K&!$&1#AMVS]A?V+R&-^HO(:TJC&C5(;`/BFE(2+)^AWB5%G,PE MT_>YUY"%)3/(PM04EU1V_CGR$"((2SHD<<47TT[6!T#O*OBC/D03K=SG; M:8J]SDY3BHOJLOWMGM=+@-B%6I"%T_,UU$Y>LKK-MJ33MF2K;K8WKR[Q":5M;_HOH.3CU0^?_?UKW_.JN0NO]SQV;3\W\&YF=/W\+^ M!+]G8O8,J?TE_"UJS/YB[/7S-V#3!NS?8/>_INW*CJD%66/!X?X<6S7<7KM6 M^I_7_OFOL&6FHRM4M@-STI]?IP7F*6"G^2_C\O.+F)<<8-R,.FM)QZ9637B" M[K`)+P]K)\AR\^;@"%-;B[K>N*HT7Y7!Z!G:":75TQ.2V-36,EUJ,\LM:71: M5%K2V=4A9L\\?OO",DW,S+PKP,[,NZ;0X4])$R!^2L-?1ZCF)GMW(WUY/G$! MD;1@D6UQXU>[%],.6$1LI]7+)9N[&K75K.@_G7[0Z?;SO[:;7ZFL1DY3CLX M$Z;7!>RLBBH3'9V-[4NV=;6@ECHZQ>XF]2H`=AZY4]VK'.:]@&6:LH#Y;6[K MZ`[X33^.8F==@O.K[Z3-Z#-F&)Y?LBV0X[7R"YR;">MHA#\_;QLR#<]3[;.6 M-/;XNZF0$8(_P27X0ZW,WVNQ&^V3P[HNDO,%=]YIAR"(4O>="VR+V^DNT04+ MURY-9?^6@@82=U[/VKP#;[0H2TM3F$R%G`V:N<^=D7XM-`FO1K'?C61XFF*$ M]$WU7PFY@R4WKXA?P!;:DO*T(4ETF)P&]VUJZVY0)\ZGR+2V1S-::S^;H2T; MH3`W-W9WUW6TMSVLFB?M'6TM[8W\UKWZKH;LK?4]U$SNXR?OV\+;)=_7R6G@ M"=I68$"^P"XVMC5N[MA2)W4W=JU85[^I>_WFSDXD1MNS-]-N\A`2@K9N7H,& MI,#*&TH'7*?CPY^P;3Z'#:-M?8G6=$V0#1/HFK1Z"39DPFCY7',ST=/.N?Q9 MOS?JVCS+8Y0%+C9` M,/YYFT7:]IT@&M0X8$\@#M^^5;(J[]IQ5N<&Y;.:'4WAGT8)BZ/::?YM=;11 M;,I>.S4PA<])O'T1?7^CL[YKUM+%&;;$O,;_'WM7`M]4E:_/;2DM%&A9A);- M4!HH94O2M%F:K1N+=*,M.PBAN:61-"E9RB(R;*(S+,JF^$0$9%-`7`!Y#@.H MP,.9"JBH/!1$!441Q>T)PW+G^]][DZ:TC*/O]][[O1G.Z9?O+/^S_\_)O2?G MWGHG8TF=WDNATO37J/L;TFA*,$&@SPC82%BN4=N"M<1GM&B;W<;&P+9B4;!- M6!QL4]8<-C[,QL)2200.4DPN,Q+NID@7+::.AI],LU#ID?5L,`VE;B+&=E&<,S,$I`CY1R+'$N0N@7+9>7,Q4HATRN4M@8C M_?G-&'Q^>9.QGVY2V,/"@\(UA%%HL2#<;"7\>+-&N(*X:*%&Z"VT$Z2T*0*[ MQ?210Y*%N#"+'A!^$LL@DRYDA:6[2\B&KZ_0KT%>C/472@6-8!32Q;C1(8F? M;HX2QHL^JGV%,%C(0;VDNDLFOY'F:$3EHAE<6RH9GIT,"ND$J" MU;(\-H`YF(D50NN*D3*!%:!T&WR3V4`VB`UF][`A+)_E(*?A0"\V"I#L4.34 MBY6QD?CL(\ZDT6P,7'W96'Q.1.[CP/TPJU2881IVKYBJ#[-C-MP'5#`GYAVM M"JF,Q^BAL!6277AFO&-4=8"ZZE7&8GR,5Q/&N-%,E44ZX]Y-IRB0CO M@9`8KBMW-R22Q=R2$4<29=#R1"X+:Z@`(TD(0A(0E!"$ILA#$$VLF$*G?++"4\-[*UR>J:(&NNCW%HM"Z5.8Q&MW.!BNB!A+S&8Q0#R0 M`"B`%$`%Z`$3D`OD)TK_=[<,/!9P`"[`Z7;Z*;S*/MGIGH3Z^.T373QC;GXJ M3Q7RXQ:/XOV>0'DE[V!53MPZ0M#CYUHPY&&A&'_(X# MCUOA]/MX%^V+-)8';8D$\Z"$S6]3EM]9Q?\6.0IS>*AQ]!2!HA+P>^2&^J2V M5Z/G>'2)QODBUAB8$&QQ\VV"PER7C$Q]M\#&E8P@=5I6] MS1F5B<*GT[:@>..>@M)0/)4]V%UC=SD=&HN2 MQ?_P*I5<2/^1.Q@$OY>?Q$^K%ILYT8FUP1.07FA9;2\7\PO5):67>,[43RL$ M>1AKX+\O@/M>C!#:S%)[HXJ\E[JPW!-P.103>06FNG\ZHW6'3ILK4JV]Z=DI MJ3UCQM$_IYS$U\]WS#CR.]U^WDO[C0&ON$Y9>Z="8UQ8-L6GP"II_?%[,>+4 MZV/E-F)!LE?Q?EK@RCU>;Z!:W.'R>B8A&'E401%PSR]'H!NX"?@%`\X M&KP7'`,^`&X&/@AN#CX"C@77@EN`CX-;@D^`6X%/@N/`9\'QX`O@UN#+X#;@ M*^"V=#&CR&;MP"W`=X'CP>W![<`=P)W!"1RM$=GX_L>U'[@C6`7N!-:".X-M MX"[@0>"NX&+PW>"18`5'[['+9MTX>NXL&UE,.61(&4+;;_#+^Z3BF%,>TC,+-#>DO3H*DQ<] M=C_<,V%SX?X' M:)$(EQ/K(BX:=2GJY)/JUA22PS=BL.B\H@&0DY]"FUY%K]00OUB"RP+YY'R3 ME+XD-IF?/M7C=8A"TD%7Z?R]G[YSY"\OZ0%$^EV1?E*K"[_5'VZV=?&V8C_D$; M3*OXI8[Z%S"T7/:3.;`*\VA579SMB(U-D$$F?FEVB+GP=3:>-3#!_<';F0A6 M?Z_PCKEC?JLYN],F\JWZEE^=Q4R`:*"C:WMFBPB:7['%>,?<,7?,/YFY,__O MF#OF7]L$KP?.XN+AK"^+'0&V`:N!V8`+*`9,0`K0#F#`1U[(`CN!+<`JX&%@ M)N`"Q@+Y@`E(`6*`'Z=DL>-3)-D#X"WD!F8#U8`#*`-LLDRRS/'@Z[B..0O4 M`CNKI?#>VF8>UF8>WF8 MFTX*1#/I'G81^VU&T:QO2]I\(Z@&9#6*6PW]ZD&%*J*6)S:(O&-^T7`13<0A MW(`!G#!W^MQNMU'B.4^?O4YLFS5;Y"V0?^V94\\H6.-FCGQVP";S MKG]0/DOFW9`_MO[<^H[L_/H+Z\?<5MXV:YWH&@K%'WKJWE,*-O[4?:7? M/7GF[%7&U+.DE'2_N:T&`\\&D=,G@CN"O_5FL$W@GN#-X$7@:>":8]J!=X!G@L6#JQ)%@NNX8Y*_3 MZV3,Y\Y`'Z`=0/HKVH^DNC:5Y6\O+WTDGNHI+RWXAQ=\WQ;G_O?07 MTK-92D;8?:P@U+N4;B45*XSL'>9(.DSXJ M@-^Q7V\:[!NMC;"%W$>BZMQ_C0FY;:M;A-S%;\2%W,D_M@FZ9S^VJGW0K=B[ M+U%R-]G_9J]_J[-<_CL MHB]GOSGPU>5;LO8^.'E83\/BGZO/SLS>>WK)F:M/7;LXZ[FA.>L^K_FL]OM> M_>?/Z9&;$M_AN2O/QW]VZ.!?Y<,VRT<*X39?7 M*0Z4;5RDL[]]8^'HA2>5XWY_]<-)SZV\\D//_>N/C#L]VYW_YI./*_X043+A MH#)`37^K]JU:R5RS3C$W_^"9:OJX8AWMR/RX:/'C[C;S?K*^\6X?/O'3D1U> M>?L[Z_&X[O,'=AJX[=#F;ZRV3;N=KAU1?](MN&A-,^_-GG'^O17[W__"^OJ- M&T?M\UM/K=UZSMH_?\PG!0?WK5CY^9O690=+,P.Y;[7;]V\[K&] MZXO'5EB3NQ_^=.^KF6K[PAE6^[!1K\UZL71FFS^.MW[P3?_%3?_"N:[G6 M9.O&+PT;>W[UNRVIU@>VK3NWUS%SP/'3PRSE]S>M[5XV=9ZP=(YYZ5^-B3/* ME3GJ`]M,W7[_MG[NP,?WL!L?9'[T\,B83B]>^&S!ILC,P_/SLJ-W/Q'0?=C/ MF#:E\SO=/]1\,_C1T89-#^T[,.+4QKF;UN_2?%KY4NO-)4_GCGHEOH]R\+F^ M&=JBTN>/3E8^,JK)A@-G7G_@VH7#7==\\?#H$4M-^XOG)244#N$GWICWR(ZF M*QYH?:[OF:>/OG.DR>E-)_\OMOWOF/]AD_)"W8!:P!-@$[`&.`">`KX&F+T7IWEGJ=O M<UW2_[OTXNIJ@-/M&.#T^OST(`0NZA:( M(87\-#G@`=&?0T^,X3N?PLJ<57R9IW2ZS\]7D9NQFK!P>M^G*^AE`SG4@URC M/6Y^L)L>0K1+!Q^T%!.6R8]BC2FQE.>S8FNE`S'Y3C=J,H12#.>]/C%]`HHR+9:.8Z#?N1+>[J`@QKXA:;%U$&8JEB,^S2758;+8_[F\ MS^_U3&=.T2?%XXHI8KC3ZP^@9VAXA@=]TL"QFH@1])2>6,20B&'N2K$9CKQI MY;QX3`018DU2Q3X3?R27*LN<$2.<#CZGTNXM\Q0$7'YG]G04U[>^'"[!G^5" ML66>8!*VD,O/*;!72Y+(;5&X'ZGNHGRH_[(<#J_8AS>H_04>1\`E]W46[28, M<`5\E53[[$!%A7B"I3WUHB21XPG0H9]>4IT<\A"QGI+?CGZH)L7(8I]P)7[7 M,/=4.EAQK:X"(B25C+JOCQWC=/K<=.A`:FFOBQV5ASQ!A&X0FT\Q0CV M:>,IT.KUHN854Z78:G)GY>#F)H;J6Y170.YO12T(N,27),IU.QXV.W.=7JB6 MQSL=X#C*%1Z%H_!#5J(:4)U76X?'X@BRWA M\CUVA_PP$=)^$=3/+#\23PSX>=JB,LEZ*D\%A%2+VEG"2PHX)*^D,"\_3=// MX7(U^B5UQ_QZ$R_NH;$G54;U/>I*]4/JQ]6[U"?4Y]01FFX:M:9(X];,TJS6 M_%'S%\V7FIBTA+2,M&%I?%H@;7G:OK2C:5^GQ6H[:0W:[;I:G@-)H/- MD&L89,@W%!M&&!R&>8;5AF\-UPT=C%N->XSO&T]G1ION,8TR+3!-,W>U&"T% ME@F6%99UE@.6_Z0#3`K&]H)VJ]Y0G5']K+JN:J/NK8[6M-/TUTS5S$S;FJ;2 M#M7>JYVN_8-VBW:[ME9[4GM>>U%[17M=VRT]*WU\^N3TA>E;T_^2?CF]0T;/ MC+2,[(PI&;LSSF?TT&ETE;IINOFZ)W5;=0=0WS.Z2[JKNLYZF[Y(?Z_>H:_6 MU^@WZT_HO]`G&)2&'$.)89S!;=AI.&)XS]#:V,MXP?BM\0?CS\9K1L$8F;G8 MM,*TRK3:M-:TP;3%M(T.8JFD\UB5ZH!ZB3HI;916E?Y$^H[T`^G%NKFZY2CS MDBY&_Y"^H_$UTQ%3K>FXZ83II.DCTUE*9&/L)&BNIBW:-T6[2KM5^WGZYHR# M&;UT13JG;JEN#6J]1W=(]X[N8]W7J/=@_7#]&/T$?95^O7Z+_H;>:]B.>OYH MJ#'.,SYJ')LYQ#3,--[D-%69?*:IIH=,*TW;3?M,!TUOH[SO36W-B>9D9J\PSS//-2\WKS"^;3YA/F2^:KYJ;6Q(L72V]+5J+U3+%,L>R MR/*4Y5G++LL^RT'+GRV?6,Y;_LMRP]+*JK!JK4.LQ=9YUD76)ZP[K*]8#UE/ M6$];O[+2ALMQW&-'J.)4W55]5.FJ;%6^JDPU4>53S58M4SVEVJ1Z6?4GU6'5 M,=59U26,>(2ZK;JS6J_.4P]5CU9/5D]3+U`O5:]6;U2_I#Z@/J8^J3ZOCM(D M:O[6OOE'U57=6?PEOJ0O2B)&=-!BI98H-JCG]SWWGGO/)8J1*+$D18O*1*K$ MH,6*2C,D8L6(2B-:JL020Q*BJ!B)P08=JL1B1$5%1<5(E5228@8KM42Q)978 M[H?+ZO3'S*PU:V;-K.7[Y_W)O>?[W?NS][V/X[`1"]FY[#)V-:MDM[/U[#ZV MC;W%]K+?L7$VC<_FQ_`,;OA"7LS+^+6\GC?Q+;R;]_%=?)Q'Q4R1+H0(1+XH M$I>+:E$GUHMV\9+8+3X2GXC#Y!QY,O;I+/EMN40NE]?)VV439KE#]LKWY'X9 M4U]54BU4%ZI2M5+=J3:IK:I==:H7U)OJ736NON(OT^?T.P/. MH#/D#&/FH\Z8,^Y,.!$=U3&=H!-UDD[6*3I5I^ETG:&)%OIT?:9>BDVNTW?I M>_6#^F']A'Y9OZ[WZ!$=Y/W?7N/=AOSSO+.\];ZE5@ M<]XTOS')_E'!CF!7,!X<;D^V"^QK]DW[6SLCG!MB00LCD3I\?9NLQN1>(&^0 M#\E7J4,O$M/5X6J+VH.[GU!?=^8Z9SDK<9=USEW.`\Z_.D\YS^%>]CH?X`ZF MZ4/TN,YR][LQ;S[^\DJOVKO=N]MK]F:81)-DDDV*235IYBISO;G?O&1VF7WF M3^9KON?/#)*#)X*7@U\%'P0Q>XK=:#^(>T9I)!+_H7(M-NEYCL=!)TF;[9#MF/[93PD/"(\*AP09@?EH2KPTWA_>&C M\?NKC$2&\744G4-=>BI]FNZDP_0)]BPVZQ,VBQ_+-;^._Y@W\H=YB>@2:]4& M3+Y3O:*BSDS,^AKG=N<>S'&[\XJS&W<;U3/TT=K59T"I=^DFO47WZMWZ]UJ[ MB]S+,(>;W-^[AWI'>\=.GO_MWCIOC_>N]UMOG_>1M]\[X$TQT\P,,],<9HXP M1YEU9H]YU_P6Y_&1V6\.F"G^-'^&/],_S#_"/\H_QG_$_X7_@O\G/SE(">8& M/+#!XN#WE0$?0'E]C'[!Y[1?P^8?JC^#J;G$N^2WI(.CT9BKN(7DUK MZ!JZC;Y`7Z&[Z/LTQF8S`@H4LA5L%6MDV]GKT-#9?S"_BJWD=5-4#"B2( MXR9]ZV;QK/A07(;S?T-.R&\J"I6X*E#SU.EJ`?2R2)VCSE/_K+ZKEJI+,9DK MU0/J5;4)KK;3>1..O`<[\AN?]R?'OQ3\)W@UF!M<%_P4-`>=`>O!F\$H\$?@D-LDGW4/F[?L%>&U>%[ MX408:?ST6>NA))6XY'[R&'9W&'3Y*A4T!VZ]G?Z*[@/S*,MBY[`X-1+IQ->1\,CUY#ER#!SN#);'-K(6=@.OY2_P-_A>?I`X'?Q;+GXB&L0F M\9#8)J;*P^71,E5R:6267(CK6R9+Y`I<9:U<)U^3(_)C>9BZ5=VO6M4!-=V9 MJXT^32_0N?H[NEP?[":Y1X-W+K@]WST+S+X$U%OIKH)#W.G>[6YV.]TN,+#' M[77'W0/N#&^6-\];[!5X;=#F=)MH3[0;P\?B7H^+'XQG"G(.N8ZL(6WD/7(Z MO8+>2)OH6W0!O/H2=CGVZ`ZVA>7R/)[/"_@:OI%OY8_R'?PM/L;KP+T&T8@= M>D4<+D^0WW#2G0R'.,+YT1=\\11]EKX*K*[0E?HFO5K7PNW6Z@WZ'GVV>Q[\ M[7)<_9GIL-TFU?,`!QNS,SP4_PT.,I"$/)FO\;^ MQ#;;[?8IVPVW.V"GA@GAD:$3^N&I879X=[@C_$-<,[V?SFYFR9`,?.P0P^PC]D4_C7DI?N0E#)$EKA3O(6D,D4>ACMS MY)OR?>E`%]>K6U2SVJY&,)EDYPQG$6A_G?.1\R?G8'VD'M5_U)OAT=*[``[1 MZ-WO;?.V>Z>:'+/63/43?.UG^TO]4G^Y_W-_1M`9=$$%/4%O<))U[7Q[@3T? M[E8=OASNC%\_AM.-KPWD7OCV2GH]->Q)=HN\5W;(0]5_1*+/^?,99S2V.E-G MZ6R=@SW*T_FZ``Y7I(OU#O=C-^(=X:5XS+/P]VM`E1HDDCN]C=X]WE9DP)>] M/F^7]T-396K,&O.(>=P\;5XP[T`38R;FYR`;/N'O]J/!]X.RX*[@8OM]N]IN MP5S>L4%8%[\/&%<7ODK8#:R0W\+OY\_S7W(/)WP%P^;K1ILBL-!$_AAE"G[-H M.KV5/D`7L1^P!]G/V#/\17ZL6":N%5O%BV*G&!'+90T\YFRU"^R_%,K$ M!+M]!:BW(7P^?IZ)4R8S]S3DL8V$4X,F\"UZ(7V5ODT_I@>Q*E:'[/\!FV"I M_"3LLX7KW\U_@:O\0,3D5:!MO9P#?[E//:6F.89N\;=Z&YW^]Q][B?N*=CI$J_)>]C[-5SQ).CT8O,#W6KKPD?"^#]7Q/\_9"8Y'/GR M%&+((G(WO/-M,DHB="9=2*^BS>@SP_3W-,I\=C[R8@7;P#K8#K:;O>A\/NE]/58E6(%-BG9C@G.M29YRQPECE?04J;[5[@GN"=Y!EO(;+.$N\' M7B4XW^6]X[V/+A$!W6<;8-)YX=7A'7"FA\.7L$_C8?Q%F,`YQ,B)9#$I(^IF-:`>@$B2)609N9*L(->3'Y$&TD1:0*\WR1B91K.P0YN1 MB'KHZ_0W]&!V`F-L,5O&KF37X!1_S-8B%0VQK_`D](U3N,-/Y3G\/'2.5;R& M-TQR[5[O:6^V?[P_UQ?PZ]"?#X];[&^`0G<$SP4[@U\'[P([-LN?! M-8KL3^T&VX0=?P14>L:^A+F_90>1=B=L$K1[:G@1?'U5^`3ZU91XM(F00>@MMA)L\3#^AL]"3YB+1Y+%\S+R0%;%G6"^+\EGH[ZO0B![D7;B^ M??QKR!.5D]2]3.X"EV:IG6I0'>.7.[^T3W(R\4>7X8. MG&`<,]]<:6XS&^#?>\S[9L*<"\W^W'_>_PCI+#7`7A9.F7R'.IO<@+ZPA>PE MJ=2')M>@T<7=Q6>G(16L8M?Q=_,$DD@BE5,B\=<="2295#J?T:L7-.KW!KQ!;P@-?\0;A1.->Q-09M3$3,*_ M:R3I)@.N*^#[OLDT628;',XU>2;?%,"+BTRQ*8&&RTRYJ3"5X%LU"%=KZDR] M:8"G-9EFTV):39MI1Q;I-%W((SVFU_29?J2203-DAL'`45!P'"<9\:/@2H*? MZ"?YR5!/*O)*.O1#)K?(]S/]++`_Q\_U\_Q\OP"**O*+_1)D@3*_W*_P*_TJ MOQKZJOVKYQ2M?IO?[G?XG7[77SV%&/*'_1%_U!]#MIZ`_J)!+$@($H.D(-XG M4H.T(#WX6];D!GE!/ORY,"@*BH.2H!34+D?;J`RJ@NJ@)JB%;]<'#?^02;U! M'YK)0#`8#`7#P0CR^QB:YP3T$+4QFX!\F623;8I-M6DVW6988H75UK>9T$JV MS;&Y-L_FVP);"-44VQ);:LMLN:T`=ZMLM:VQM;;.UML&VP@]-=L6L+C-MML. MVVF[D/9Z;*_ML_UV`.H:LL-VQ(["8<>ALT@8#6/(@8EA4I@%!SV!*VAFUA>]@1=H9=87?8$_:&?7#P@7`P'`J'PY%P%-XT'F\LZ&A@6_Q' M!R1*8B2^P4G8W!0TF#223C(((8)HXI-,DH5$FD-R21YR:0$I)$6D&`PH)66D M'!FUDE21:E)#:N$/]7"W1OA;,QRN%1[73CI()^DBW>B`O:2/]),!,DB&T(U& M0-`Q,HZ.%*%1&J,)-)$FT62:0E-I&A)+!B7H3AIJSH1'9J-%Y=(\FD\+:"$M MHL7(PZ6TC);3"EI)JV@U>F4M.%0/W3>B#S33%MI*VV@[[:"=M(MVPU][P>E^ M.D`'Z1!X/4)'Z1@=IQ,TPJ(LQA)8(DMBR2R%I;(TELXRT$L%TV!Z)APNF^6P MW"_X7#$K8:6LC)6#]I5(,-6LAM4BQ]2S!OAU$VM&IVIE;:P=2:"3=;%NL+"7 M];%^-@`F#K%A-L)&V1@;1^J)\"@R0@)/A,RM-X.L_@A`NNN<\S>1:R M0P[_K-,4\B+X?PD:9!DOYQ6\DE?Q:M"@%KFI'DQH1+YHYBV\E;2)?%(A"422*18DH%66B7%3`V:M$M:@1M>*S?M4DFD6+:!5MHEUTB$[1);J_ M0/Y!,22&D3I'Q=CD<]6(C,J83)"),DDFRQ0TS329+C,D0;+6TI>9:)W9,@>I M*$_FRP+TSR)9C`9:*LMDN:Q`[JZ2U4BPM;(.2;$!O;E)-LL6V2K;Y'_%[R,J MJF(J026J))6L4E2J2E/I*D,1)916G],@5^6I?%6`'%:DBE6)*E5EJEQ5J$I5 MI:J_P(I&U83&U8(VW(:>WJ$Z59?J5CVJ%^FM'\EF4`VI8?2Q436FQM6$BCA1 M)^8D.(E.$AI:BI/JI/VEEVK'=S*=+"?;R7%RG3PG_W_Y>=\_[F$ENE27H=_' M6W*5KM8UDSVY7C?H1MVDFW6+;M5MNEUWZ$[=I;N1TGMUG^[7`WI0#^EA/8+N M.:;']82.N%$WYB:XB6Z2F^RFN*ENFION9KA_^[P_S\UW"]#`B]QBM\0M=`+-S/?5>`UITD]?LM7BM7AO::(?7B33>[?5X7R:!+Y/`_\DDT/AI3_G_ MFP/BSQBF3OZ&]N][S6=.4XR9E6->U9A5/>;4C!FU8S[=F$T_YC*,F8QC'C', M(AES2,<,-,X_&V>?CW,OQIF7X[SQAU*G3KX3^#QOQ(G_*>$&0;?R23>..W'; M?W[^9&JDXK]Q_E\\ER9POPW,[P+O^\#Z(7!^#(R/@N])8'L:N/X9T^,,BWSY M^?+SY>?+S__0Y\]02P$",@L4````"``6=.@B.T"YW3L$`0``4`(`!P`````` I`````"``_X$`````:F%M+F5X95!+!08``````0`!`#4```!@!`$````= ` end From CowhamR@logica.com Tue, 9 Sep 1997 09:59:43 +0100 Date: Tue, 9 Sep 1997 09:59:43 +0100 From: "# Cowham, Robert Exchange CowhamR@logica.com Subject: Jam binaries for win95 - sorry! Oops - I meant my last post to go direct via email. Sorry! Robert From ianbarnard@compuserve.com Tue, 9 Sep 1997 08:29:09 -0400 Date: Tue, 9 Sep 1997 08:29:09 -0400 From: Ian Barnard ianbarnard@compuserve.com Subject: Jam binaries for win95 Colin Peters wrote: > Not trying to make any excuses but... ok, I am making excuses. Hey, no excuses needed; you modified Jam for Mingw32, I'm looking for something different. Thanks to you for Mingw32. > One of the nice things about Jam is that you have the source code and = it > is easy to modify, so anything you don't like about it, you can change= =2E This is my real problem: I can't rebuild on win95 with VC5.0. Actually I can build jam0.exe, but when it runs to build jambase.c and jam.exe it usually locks my DOS box, and certainly does some strange things on the way. I guess there's some difference between win32 on 95 a= nd NT, when using the spawnvp() call to execute the actions, which causes th= e problem. I can build jam.exe manually, but it does the same sort of thin= g when it runs for real. The exe's seem to work OK until asked to execute some actions. Ian From ianbarnard@compuserve.com Wed, 10 Sep 1997 10:14:14 -0400 Date: Wed, 10 Sep 1997 10:14:14 -0400 From: Ian Barnard ianbarnard@compuserve.com Subject: Jam binaries for win95 This is a MIME-encapsulated message - --680dd765-29e4-11d1-9d79-00805fea3c3d Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: quoted-printable Content-Disposition: inline Well, I got it to work.... Attached is my execunix.c, hacked from Colin Peters execnt.c with the addition of multi-line commands going into batch files. Doesn't have multiprocess building, but it's a lot better than nothing. There seems to be three problems running the vanilla 2.1.plus on win95: 1. Multiple process command execution using spawnvp only works sometimes,= even with the default jobs=3D1. The problem seems to be getting the exit= code status, I think. I gave up trying to work out why it failed and reverted to Colin's execnt.c for single-process operation, because it was= simpler to add batch file creation to. 2. On win95, when a batch file is executed using command.com, it cleverly= always returns exit code 0. Doh. Is there a good reason for this? My execunix.c adds lines to the batch file created to initially remove a fla= g file if present, and then after all the commands executed to create the flag file if ERRORLEVEL is not 0. execcmd() then checks for the existenc= e of the flag file to deduce the exit code of the batch file. Painful. 3. On the vanilla build the commands passed to spawnvp include trailing \r's, which makes MS VC (at least) give lots of warnings. Other notes: 4. The vanilla build method is pretty horrible, relying on a distributed jambase.c, but replacing it during the second half of the build with an automatically generated one. Gets very confusing when you've got problem= s with building because you need to keep copying the original jambase.c to restart from scratch. 5. I had to change del /f/q in the original jambase and jambase.c to rm,= and use rm from unix95_7 (unix command line utilities for win32) because win95 del doesn't have the /f option and returns not-zero exit code if th= e file doesn't exist. Ian Barnard << EXECUNIX.C >> = - --680dd765-29e4-11d1-9d79-00805fea3c3d Content-Type: application/octet-stream; name="EXECUNIX.C" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="EXECUNIX.C" LyoNCiAqIENvcHlyaWdodCAxOTkzLCAxOTk1IENocmlzdG9waGVyIFNlaXdhbGQuDQogKg0KICog VGhpcyBmaWxlIGlzIHBhcnQgb2YgSmFtIC0gc2VlIGphbS5jIGZvciBDb3B5cmlnaHQgaW5mb3Jt YXRpb24uDQogKi8NCg0KIyBpbmNsdWRlICJqYW0uaCINCiMgaW5jbHVkZSAiZXhlY2NtZC5oIg0K IyBpbmNsdWRlICJsaXN0cy5oIg0KDQojaW5jbHVkZSA8d2luZG93cy5oPg0KDQovKg0KICogZXhl Y3VuaXguYyAtIGV4ZWN1dGUgYSBzaGVsbCBzY3JpcHQgb24gVU5JWA0KICoNCiAqIDA1LzA0Lzk0 IChzZWl3YWxkKSAtIGFzeW5jIG11bHRpcHJvY2VzcyBpbnRlcmZhY2U7IG5vb3Agb24gTlQNCiAq IDEwLzE1Lzk2IChwZXRlcnMpICAtIEFkZGVkIHdoaXRlc3BhY2Ugc3RyaXBwaW5nIHRvIGV4ZWNj bWQuDQogKiAwMy8yMC85NyAocGV0ZXJzKSAgLSBVc2luZyB0aGlzIG9sZGVyIHZlcnNpb24gaW4g dGhlIDIuMS5wbHVzIGRlcml2ZWQNCiAqICAgICAgICAgICAgICAgICAgICAgIE1pbmd3MzIgdmVy c2lvbiBvZiBqYW0uDQogKiAwOS8xMC85NyAoYmFybmFyZCkgLSBVc2luZyBDb2xpbiBQZXRlcnMg bWluZ3czMiB2ZXJzaW9uLCB3aXRoIGFkZGl0aW9ucw0KICogICAgICAgICAgICAgICAgICAgICAg Zm9yIG11bHRpLWxpbmUgcHJvY2Vzc2luZyB0aHJvdWdoIGJhdGNoIGZpbGUNCiAqICAgICAgICAg ICAgICAgICAgICAgIGZvciB3aW45NSwgd2l0aCBib2RneSBoYWNrcyB0byBnZXQgZXJyb3JsZXZl bA0KICogICAgICAgICAgICAgICAgICAgICAgb3V0IG9mIGNvbW1hbmQuY29tLiAgTm8gbXVsdGkt cHJvY2VzcyBvcGVyYXRpb24uDQogKi8NCg0Kc3RhdGljIGludCBpbnRyID0gMDsNCnN0YXRpYyBj aGFyICp0ZW1wZmlsZTsJLyogbmFtZSBmb3IgdGVtcG9yYXJ5IGJhdGNoIGZpbGVzICovDQpzdGF0 aWMgY2hhciAqdGVtcGZsYWduYW1lOwkvKiBjcmVhdGVkIHRvIGluZGljYXRlIGJhdGNoIGZpbGUg ZmFpbHVyZSAqLw0Kc3RhdGljIGNoYXIgKmNvbXNwZWM7DQoNCnZvaWQgb25pbnRyKCBpbnQgKTsN Cg0Kdm9pZA0Kb25pbnRyKCBkaXNwICkNCmludCBkaXNwOw0Kew0KCWludHIrKzsNCglwcmludGYo ICIuLi5pbnRlcnJ1cHRlZFxuIiApOw0KfQ0KCQ0KLyoNCiAqIFRoZSB3aG9sZSBmdW5jdGlvbiB3 YXMgcmV3cml0dGVuIG9uIE5vdiA1LCAxOTk2IGJ5IENvbGluIFBldGVycy4NCiAqIGNvbGluQGJp cmQuZnUuaXMuc2FnYS11LmFjLmpwDQogKi8NCnZvaWQNCmV4ZWNjbWQoIHN0cmluZywgZnVuYywg Y2xvc3VyZSwgc2hlbGwgKQ0KY2hhciAqc3RyaW5nOw0Kdm9pZCAoKmZ1bmMpKCk7DQp2b2lkICpj bG9zdXJlOw0KTElTVCAqc2hlbGw7DQp7DQoJaW50CQkJc3RhdHVzLCByc3RhdDsNCglpbnQJCQlt dWx0aWxpbmUgPSBGQUxTRTsNCgljaGFyKgkJCXN6Q21kOw0KCWNoYXIqCQkJc3pMaW5lOw0KCWNo YXIqCQkJc3pFbmQ7DQoJY2hhcioJCQlzek5leHRMaW5lOw0KCVBST0NFU1NfSU5GT1JNQVRJT04J UHJvY2Vzc0luZm9ybWF0aW9uOw0KCUhBTkRMRQkJCWhQcm9jOw0KCVNUQVJUVVBJTkZPCQlTdGFy dHVwSW5mbzsNCgl2b2lkCQkJKCppc3RhdCkoaW50KTsNCglGSUxFKgkJCWJhdGZpbGUgPSBOVUxM Ow0KCQ0KCXN0YXR1cyA9IDA7DQoJcnN0YXQgPSBFWEVDX0NNRF9PSzsNCg0KCW1lbXNldCAoJlN0 YXJ0dXBJbmZvLCAwLCBzaXplb2YoU3RhcnR1cEluZm8pKTsNCglTdGFydHVwSW5mby5jYiA9IHNp emVvZihTdGFydHVwSW5mbyk7DQoJU3RhcnR1cEluZm8uZHdGbGFncyA9IFNUQVJURl9GT1JDRU9G RkZFRURCQUNLOw0KDQoJaWYgKCAhY29tc3BlYyAmJiAhKCBjb21zcGVjID0gZ2V0ZW52KCAiQ09N U1BFQyIgKSApICkNCgkJew0KCQlwZXJyb3IoICJObyBjb21zcGVjXG4iICk7DQoJCWV4aXQoIDEg KTsNCgkJfQ0KDQoJaWYoICF0ZW1wZmlsZSB8fCAhdGVtcGZsYWduYW1lICkNCgl7DQoJICAgIGNo YXIgKnRlbXBkaXI7DQoNCgkgICAgaWYoICEoIHRlbXBkaXIgPSBnZXRlbnYoICJURU1QIiApICkg JiYNCgkJISggdGVtcGRpciA9IGdldGVudiggIlRNUCIgKSApICkNCgkJICAgIHRlbXBkaXIgPSAi XFx0ZW1wIjsNCg0KCSAgICB0ZW1wZmlsZSA9IG1hbGxvYyggc3RybGVuKCB0ZW1wZGlyICkgKyAx NCApOw0KCQl0ZW1wZmxhZ25hbWUgPSBtYWxsb2MoIHN0cmxlbiggdGVtcGRpciApICsgMTQgKTsN CgkJDQoJICAgIHNwcmludGYoIHRlbXBmaWxlLCAiJXNcXGphbXRtcC5iYXQiLCB0ZW1wZGlyICk7 DQoJICAgIHNwcmludGYoIHRlbXBmbGFnbmFtZSwgIiVzXFxqYW1mbGFnLnRtcCIsIHRlbXBkaXIg KTsNCgl9DQoNCgkvKiBNYWtlIGEgY29weSBvZiB0aGUgc3RyaW5nIGZvciBvdXJzZWx2ZXMuICov DQoJaWYgKChzekNtZCA9IChjaGFyKikgbWFsbG9jIChzdHJsZW4oc3RyaW5nKSArIDEpKSA9PSBO VUxMKQ0KCXsNCgkJcHJpbnRmICgiT3V0IG9mIG1lbW9yeSBmb3IgY29tbWFuZCBidWZmZXIuXG4i KTsNCgkJcnN0YXQgPSBFWEVDX0NNRF9GQUlMOw0KCX0NCgllbHNlDQoJew0KCQlzdHJjcHkgKHN6 Q21kLCBzdHJpbmcpOw0KDQoJCXN6TGluZSA9IHN6Q21kOw0KDQoJCXdoaWxlIChzekxpbmUgJiYg KnN6TGluZSAhPSAnXDAnKQ0KCQl7DQoJCQkvKiBTdHJpcHMgbGVhZGluZyB3aGl0ZXNwYWNlLCBp bmNsdWRpbmcgbmV3bGluZXMuICovDQoJCQl3aGlsZSAoaXNzcGFjZSgqc3pMaW5lKSkNCgkJCQlz ekxpbmUrKzsNCg0KCQkJLyogRmluZCB0aGUgZW5kIG9mIHRoZSBjdXJyZW50IGxpbmUgKi8NCgkJ CXN6RW5kID0gc3RyY2hyKHN6TGluZSwgJ1xuJyk7DQoJCQlpZiAoc3pFbmQpDQoJCQl7DQoJCQkJ c3pOZXh0TGluZSA9IHN6RW5kICsgMTsNCgkJCQl3aGlsZSAoc3pFbmQgPiBzekxpbmUgJiYgaXNz cGFjZSgqKHN6RW5kLTEpKSkNCgkJCQl7DQoJCQkJCXN6RW5kLS07DQoJCQkJfQ0KCQkJCSpzekVu ZCA9ICdcMCc7DQoJCQl9DQoJCQllbHNlDQoJCQl7DQoJCQkJc3pOZXh0TGluZSA9IDA7DQoJCQl9 DQoNCgkJCS8qIElmIHRoZXJlIGlzIGFueXRoaW5nIGxlZnQgb24gdGhlIGxpbmUgdGhlbg0KCQkJ ICogZXhlY3V0ZSBpdCBhcyBhIGNvbW1hbmQgbGluZS4gKi8NCgkJCWlmIChzekxpbmUgJiYgKnN6 TGluZSAhPSAnXDAnKQ0KCQkJew0KCQkJCS8qIGlmIGFscmVhZHkgbXVsdGktbGluZSwgb3IgdGhl cmUgaXMgc29tZSBtb3JlLCBzdGFydCBvciBhZGQgdG8gYSBiYXRjaCBmaWxlICovDQoJCQkJaWYg KCBtdWx0aWxpbmUgfHwgKCBzek5leHRMaW5lICYmICpzek5leHRMaW5lICkgKQ0KCQkJCXsNCgkJ CQkJbXVsdGlsaW5lID0gVFJVRTsNCgkJCQkJaWYgKCAhYmF0ZmlsZSApDQoJCQkJCQl7DQoJCQkJ CQkvKiBjcmVhdGUgYW5kIGluaXRpYWxpc2UgdGhlIGJhdGNoIGZpbGUgKi8NCgkJCQkJCWJhdGZp bGUgPSBmb3BlbiggdGVtcGZpbGUsInciICk7DQoJCQkJCQlpZiAoICFiYXRmaWxlICkNCgkJCQkJ CQl7DQoJCQkJCQkJcHJpbnRmKCAiRmFpbGVkIHRvIGNyZWF0ZSBiYXRjaCBmaWxlICVzXG4iLCB0 ZW1wZmlsZSApOw0KCQkJCQkJCXJzdGF0ID0gRVhFQ19DTURfRkFJTDsNCgkJCQkJCQlicmVhazsN CgkJCQkJCQl9DQoJCQkJCQlpZiAoREVCVUdfRVhFQ0NNRCkNCgkJCQkJCQlwcmludGYoICJDcmVh dGVkIGJhdGNoIGZpbGVcbiIgKTsNCgkJCQkJCS8qDQoJCQkJCQkgKiBUaGUgZmlyc3QgcGFydCBv ZiB0aGUgYm9kZ2UtaGFjayBmb3INCgkJCQkJCSAqIGJhdGNoIGZpbGUgcHJvY2Vzc2luZyBpcyB0 byBtYWtlIHN1cmUNCgkJCQkJCSAqIHRoYXQgdGhlIGZsYWcgZmlsZSBkb2VzIG5vdCBleGlzdA0K CQkJCQkJICovDQoJCQkJCQlmcHJpbnRmKCBiYXRmaWxlLCJkZWwgJXNcbiIsIHRlbXBmbGFnbmFt ZSApOw0KCQkJCQkJfQ0KCQkJCQkvKiBhZGQgdGhlIGNvbW1hbmQgdG8gdGhlIGJhdGNoIGZpbGUg Ki8NCgkJCQkJZnByaW50ZiggYmF0ZmlsZSwgIiVzXG4iLCBzekxpbmUgKTsNCgkJCQkJaWYgKERF QlVHX0VYRUNDTUQpDQoJCQkJCQlwcmludGYoICJXcml0dGVuIDwlcz4gdG8gYmF0Y2ggZmlsZVxu Iiwgc3pMaW5lICk7DQoJCQkJfQ0KCQkJCWVsc2UNCgkJCQl7DQoJCQkJCWlzdGF0ID0gc2lnbmFs KCBTSUdJTlQsIG9uaW50ciApOw0KCQ0KCQkJCQlpZiAoREVCVUdfRVhFQ0NNRCkNCgkJCQkJCXBy aW50ZiAoIkV4ZWN1dGluZzogXCIlc1wiXG4iLCBzekxpbmUpOw0KCQ0KCQkJCQlpZiAoQ3JlYXRl UHJvY2VzcygNCgkJCQkJCU5VTEwsDQoJCQkJCQlzekxpbmUsDQoJCQkJCQlOVUxMLA0KCQkJCQkJ TlVMTCwNCgkJCQkJCUZBTFNFLA0KCQkJCQkJMCwNCgkJCQkJCU5VTEwsDQoJCQkJCQlOVUxMLA0K CQkJCQkJJlN0YXJ0dXBJbmZvLA0KCQkJCQkJJlByb2Nlc3NJbmZvcm1hdGlvbikNCgkJCQkJICAg KQ0KCQkJCQl7DQoJCQkJCQloUHJvYyA9IFByb2Nlc3NJbmZvcm1hdGlvbi5oUHJvY2VzczsNCgkN CgkJCQkJCUNsb3NlSGFuZGxlKA0KCQkJCQkJICAgIFByb2Nlc3NJbmZvcm1hdGlvbi5oVGhyZWFk KTsNCgkNCgkJCQkJCWlmIChXYWl0Rm9yU2luZ2xlT2JqZWN0KGhQcm9jLElORklOSVRFKQ0KCQkJ CQkJICAgICE9IFdBSVRfRkFJTEVEICYmICFpbnRyKQ0KCQkJCQkJew0KCQkJCQkJCUdldEV4aXRD b2RlUHJvY2VzcyhoUHJvYywNCgkJCQkJCQkJKERXT1JEKikgJnN0YXR1cyk7DQoJCQkJCQl9DQoJ CQkJCQllbHNlIGlmICghaW50cikNCgkJCQkJCXsNCgkJCQkJCQkvKiBXYWl0IGZhaWxlZCAqLw0K CQkJCQkJCXN0YXR1cyA9IC0xOw0KCQkJCQkJfQ0KCQ0KCQkJCQkJQ2xvc2VIYW5kbGUoaFByb2Mp Ow0KCQkJCQl9DQoJCQkJCWVsc2UNCgkJCQkJew0KCQkJCQkJLyogQ3JlYXRlUHJvY2VzcyBmYWls ZWQgKi8NCgkJCQkJCXN0YXR1cyA9IC0xOw0KCQkJCQl9DQoJDQoJCQkJCS8qIFJlc3RvcmUgdGhl IHNpZ25hbCBoYW5kbGVyICovDQoJCQkJCXNpZ25hbCggU0lHSU5ULCBpc3RhdCApOw0KCQ0KCQkJ CQlpZiAoc3RhdHVzKQ0KCQkJCQl7DQoJCQkJCQlwcmludGYgKCJGYWlsZWQ6IFwiJXNcIlxuIiwN CgkJCQkJCQlzekxpbmUpOw0KCQkJCQkJYnJlYWs7DQoJCQkJCX0NCgkJCQkJZWxzZSBpZiAoaW50 cikNCgkJCQkJew0KCQkJCQkJcHJpbnRmICgiSW50ZXJydXB0ZWQ6IFwiJXNcIlxuIiwNCgkJCQkJ CQlzekxpbmUpOw0KCQkJCQkJYnJlYWs7DQoJCQkJCX0NCgkJCQl9DQoJCQl9DQoNCgkJCXN6TGlu ZSA9IHN6TmV4dExpbmU7DQoJCX0NCg0KCQlpZiAoIG11bHRpbGluZSApDQoJCXsNCgkJLyogYnVp bGQgYW5kIGV4ZWN1dGUgYSBjb21tYW5kIGxpbmUgbGlrZSAiJUNPTVNQRUMlIC9DIHRlbXBmaWxl IiAqLw0KCQkJRklMRSAqZmxhZ2ZpbGUgPSBOVUxMOw0KCQkJY2hhciBjb21saW5lWyAxMjggXTsN CgkJCS8qDQoJCQkqIFRoZSBmaW5hbCBib2RnZSBpcyB0byBhZGQgdG8gdGhlIGVuZCBvZiB0aGUg YmF0Y2ggZmlsZQ0KCQkJKiBhIGNoZWNrIGZvciBlcnJvcmxldmVsDQoJCQkqIHdoaWNoIGNyZWF0 ZXMgYSBmbGFnIGZpbGUgaWYgZXJyb3JsZXZlbCA+IDANCgkJCSovDQoJCQlmcHJpbnRmKCBiYXRm aWxlLCJpZiBub3QgZXJyb3JsZXZlbCAxIGdvdG8gZW5kXG5lY2hvIGdhcmJhZ2UgPiVzXG46ZW5k XG4iLCB0ZW1wZmxhZ25hbWUgKTsNCgkJCWZjbG9zZSggYmF0ZmlsZSApOw0KCQkJLyogY3JlYXRl IHRoZSBjb21tYW5kICovDQoJCQlzcHJpbnRmKCBjb21saW5lLCAiJXMgL0MgJXMiLCBjb21zcGVj LCB0ZW1wZmlsZSApOw0KCQkJDQoJCQlpZiAoREVCVUdfRVhFQ0NNRCkNCgkJCQlwcmludGYgKCJF eGVjdXRpbmcgYmF0Y2g6IFwiJXNcIlxuIiwgY29tbGluZSk7DQoNCgkJCWlzdGF0ID0gc2lnbmFs KCBTSUdJTlQsIG9uaW50ciApOw0KCQkJaWYgKENyZWF0ZVByb2Nlc3MoDQoJCQkJTlVMTCwNCgkJ CQljb21saW5lLA0KCQkJCU5VTEwsDQoJCQkJTlVMTCwNCgkJCQlGQUxTRSwNCgkJCQkwLA0KCQkJ CU5VTEwsDQoJCQkJTlVMTCwNCgkJCQkmU3RhcnR1cEluZm8sDQoJCQkJJlByb2Nlc3NJbmZvcm1h dGlvbikNCgkJCSAgICkNCgkJCXsNCgkJCQloUHJvYyA9IFByb2Nlc3NJbmZvcm1hdGlvbi5oUHJv Y2VzczsNCg0KCQkJCUNsb3NlSGFuZGxlKA0KCQkJCSAgICBQcm9jZXNzSW5mb3JtYXRpb24uaFRo cmVhZCk7DQoNCgkJCQlpZiAoV2FpdEZvclNpbmdsZU9iamVjdChoUHJvYyxJTkZJTklURSkNCgkJ CQkgICAgIT0gV0FJVF9GQUlMRUQgJiYgIWludHIpDQoJCQkJew0KCQkJCQlHZXRFeGl0Q29kZVBy b2Nlc3MoaFByb2MsDQoJCQkJCQkoRFdPUkQqKSAmc3RhdHVzKTsNCgkJCQl9DQoJCQkJZWxzZSBp ZiAoIWludHIpDQoJCQkJew0KCQkJCQkvKiBXYWl0IGZhaWxlZCAqLw0KCQkJCQlzdGF0dXMgPSAt MTsNCgkJCQl9DQoNCgkJCQlDbG9zZUhhbmRsZShoUHJvYyk7DQoJCQl9DQoJCQllbHNlDQoJCQl7 DQoJCQkJLyogQ3JlYXRlUHJvY2VzcyBmYWlsZWQgKi8NCgkJCQlzdGF0dXMgPSAtMTsNCgkJCX0N Cg0KCQkJLyogUmVzdG9yZSB0aGUgc2lnbmFsIGhhbmRsZXIgKi8NCgkJCXNpZ25hbCggU0lHSU5U LCBpc3RhdCApOw0KDQoJCQlpZiAoc3RhdHVzKQ0KCQkJew0KCQkJCXByaW50ZiAoIkZhaWxlZDog XCIlc1wiXG4iLA0KCQkJCQljb21saW5lKTsNCgkJCX0NCgkJCWVsc2UgaWYgKGludHIpDQoJCQl7 DQoJCQkJcHJpbnRmICgiSW50ZXJydXB0ZWQ6IFwiJXNcIlxuIiwNCgkJCQkJY29tbGluZSk7DQoJ CQl9DQoJCQkNCgkJCWlmIChERUJVR19FWEVDQ01EKQ0KCQkJCXByaW50ZiggIkJhdGNoIGZpbGUg cmV0dXJuZWQgJWRcbiIsIHN0YXR1cyApOw0KCQkJCQ0KCQkJaWYgKCBmbGFnZmlsZSA9IGZvcGVu KCB0ZW1wZmxhZ25hbWUsInIiICkgKQ0KCQkJCXsNCgkJCQlmY2xvc2UoIGZsYWdmaWxlICk7DQoJ CQkJc3RhdHVzID0gMTsNCgkJCQlpZiAoREVCVUdfRVhFQ0NNRCkNCgkJCQkJcHJpbnRmKCAiRmxh ZyBmaWxlIHJldHVybmVkICVkXG4iLCBzdGF0dXMgKTsNCgkJCQl9DQoJCX0NCg0KCQlmcmVlIChz ekNtZCk7DQoNCgkJaWYgKGludHIpDQoJCXsNCgkJICAgIHJzdGF0ID0gRVhFQ19DTURfSU5UUjsN CgkJfQ0KCQllbHNlIGlmIChzdGF0dXMgIT0gMCkNCgkJew0KCQkgICAgcnN0YXQgPSBFWEVDX0NN RF9GQUlMOw0KCQl9DQoJfQ0KDQoJKCpmdW5jKSggY2xvc3VyZSwgcnN0YXQgKTsNCn0NCg0KaW50 IA0KZXhlY3dhaXQoKQ0Kew0KCXJldHVybiAwOw0KfQ0KDQo= - --680dd765-29e4-11d1-9d79-00805fea3c3d-- From aah@acm.org Wed, 17 Sep 1997 15:27:00 -0500 Date: Wed, 17 Sep 1997 15:27:00 -0500 From: Andrew Houghton aah@acm.org Subject: Java jambase? Has anyone put together a set of rules for Java? I'd rather not go through the effort of creating a good general purpose Jambase for Java, since I'm still lost in the syntax... Thanks, Andrew From jstewart@kdc-tvcom.com Fri, 19 Sep 1997 12:11:43 -0400 Date: Fri, 19 Sep 1997 12:11:43 -0400 From: jstewart@kdc-tvcom.com jstewart@kdc-tvcom.com Subject: Java jambase? This jambase was posted here a few weeks ago, I'm barely a jam user, and not a java user at all, so I can't help at all on this one... Gee a list serve archive would be neat to have... # ----------cut here--------------- # SUFCLASS default = .class ; # modelled on Objects rule ClassFiles { s = $(<) ; if $(SOURCE_GRIST) { s = $(<:G=$(SOURCE_GRIST)) ; } for i in $(s) { ClassFile $(i:S=$(SUFCLASS)) : $(i) ; } } # modelled on Object rule ClassFile { # locate object and search for source, if wanted Clean clean : $(<) ; LOCATE on $(<) = $(LOCATE_TARGET) ; SEARCH on $(>) = $(SEARCH_SOURCE) ; DEPENDS $(<) : $(>) ; # if source is not .c, generate .c with specific rule switch $(>:S) { case .java : Javac $(<) : $(>) ; case * : UserObject $(<) : $(>) ; } } rule Javac { DEPENDS $(<) : $(>) ; } actions Javac { javac $(>) } rule JarFile { DEPENDS $(<) : $(>) ; # jar files can contain .gifs and other files; look # for just the .java files j = ; for i in $(>) { switch $(i:S) { case .java : j += $(i) ; case * : JARMEMBERS += $(i) ; } } DEPENDS $(<) : $(j:S=$(SUFCLASS)) ; ClassFiles $(j) ; } actions JarFile { csh -c jar -cvf $(<) $(JARMEMBERS) *.class } jar = login.jar ; java_files = mgApp.java ImagePanel.java mgDBLogin.java mgDatabase.java mgLoginFailed.java mgEmailLauncher.java mgUserMenu.java ; media = CCCSmallLogo.gif CCClogo30.gif RussianFlag.gif USFlag.gif ; font_prop = mg-font.properties ; dest_dir = ..\\classes ; DEPENDS all : $(jar) ; JarFile $(jar) : $(java_files) $(media) $(font_prop) ; Install $(dest_dir) : $(jar) ; # MkDir $(dest_dir) ; From aah@acm.org Fri, 19 Sep 1997 17:09:50 -0500 Date: Fri, 19 Sep 1997 17:09:50 -0500 From: Andrew Houghton aah@acm.org Subject: jam question Quick question regarding jam dependencies.. using GNU make I can do the following: .java.class: $(JC) $< V%.java : %.java $(VCC) -d . $(VCCFLAGS) $* I'm curious if I can have something like the above, which can pattern match rules based on filenames. As far as I can tell, the answer is no.. Thanks, Andrew From 47277275@13391.com Mon, 22 Sep 97 15:00:15 EST Date: Mon, 22 Sep 97 15:00:15 EST From: 47277275@13391.com 47277275@13391.com Subject: Free Submission to 620 Search Engines Now when you sign up for web hosting with http://www.VirtualServing.com you get free use of The Central Registry to submit your site to over 620 search engines.* http://www.VirtualServing.com provides high speed virtual website hosting services for $40.00 per month including the following: - - Automatic site retrieval and conversion to our servers for new customers (in most cases) - - Microsoft Front Page Server extensions - - Support for Active Server Pages & Microsoft Visual InterDev - - Free use of The Central Registry to submit your site to over 620 search engines* - - Comprehensive monthly web site statistics - - Choice of primary server country - - Unlimited bandwidth usage - - 5 inbound E-Mail boxes with E-Mail forwarding & autoresponders - - FTP access with one username and password - - Microsoft Access 97 - - Microsoft SQL Server 6.5 - - Microsoft Index Server - - Microsoft Transaction Server - - Microsoft Distributed Transaction Coordinator - - Microsoft Certificate Server - Coming with MS Internet Information Server 4.0 in October 1997 - - Ability to Administer your web site over the web - Coming with MS IIS 4.0 in October 1997 - - CGI program support - - Complete daily backups - - One DNS mapping for your domain name - - Access to raw history files - - ISAPI support - - 20 MB of disk storage This is a limited time offer so come to http://www.VirtualServing.com and sign up today! Thank you. * Clients must prepay the first six months of service to qualify for one time free use of The Central Registry From mallwitz@intershop.de Tue, 23 Sep 1997 17:31:53 +0200 Date: Tue, 23 Sep 1997 17:31:53 +0200 From: Christian Mallwitz mallwitz@intershop.de Subject: probs building jam on NT with MSVC++ 5.0 Hi folks, I have problems building jam on NT with MSVC++ 5.0. After modifying the Makefile and starting nmake I get cl /nologo /Fejam0 -I d:\Tools\DevStudio\VC/include -DNT *.c d:\Tools\DevStudio\VC/lib/kernel32.lib d:\Tools\DevStudio\VC/lib/libc.lib (*.c files are compiled and linked to jam0.exe) Afterwards jam0 is executed which shows the following error: jam0 -f Jambase install Compiler is Microsoft Visual C++ don't know how to make install ...can't find 1 target(s)... MSVCNT is set correctly with: set MSVCNT=d:\Tools\DevStudio\VC I tried to build jam on LINUX. There it build without any modification from scratch ... Any ideas ? Christian - -- Christian Mallwitz INTERSHOP Communications GmbH pgp: 02 30 7E 1A 7A C1 5C 16 2B 4D 53 A9 1B 05 F7 DD From archer@parallax.com Tue, 23 Sep 1997 11:23:03 -0700 Date: Tue, 23 Sep 1997 11:23:03 -0700 From: Archer Sully archer@parallax.com Subject: probs building jam on NT with MSVC++ 5.0 Christian Mallwitz wrote: > > Hi folks, > > I have problems building jam on NT with MSVC++ 5.0. After modifying > the > Makefile and starting nmake I get > I also had problems building Jam on 5.0. To be brief, I found other, ahem, "features" of 5.0 that prevented me from migrating my project to it at all, so I didn't pursue it. It does work fine with MSVC++ 4.0 on NT 4.0. - -- archer From mallwitz@intershop.de Tue, 23 Sep 1997 20:39:44 +0200 Date: Tue, 23 Sep 1997 20:39:44 +0200 From: Christian Mallwitz mallwitz@intershop.de Subject: probs building jam on NT with MSVC++ 5.0 Archer Sully wrote: > > I also had problems building Jam on 5.0. To be brief, I found > other, ahem, "features" of 5.0 that prevented me from migrating > my project to it at all, so I didn't pursue it. It does work fine > with MSVC++ 4.0 on NT 4.0. I tried to compile it with VC++ 4.0. Exactly the same result ... Christian - -- Christian Mallwitz INTERSHOP Communications GmbH pgp: 02 30 7E 1A 7A C1 5C 16 2B 4D 53 A9 1B 05 F7 DD From val@stellacore.com Tue, 23 Sep 1997 12:47:57 -0600 Date: Tue, 23 Sep 1997 12:47:57 -0600 From: Valient Gough val@stellacore.com Subject: probs building jam on NT with MSVC++ 5.0 Christian Mallwitz wrote: > Archer Sully wrote: > > > > I also had problems building Jam on 5.0. To be brief, I found > > other, ahem, "features" of 5.0 that prevented me from migrating > > my project to it at all, so I didn't pursue it. It does work fine > > with MSVC++ 4.0 on NT 4.0. > > I tried to compile it with VC++ 4.0. Exactly the same result ... > Christian Hmm.. sorry, I must have deleted the original message. I've been using Jam with VC++ 4.0/4.2/5.0, without problems... I'm using the 2.1 bundle though, not the 2.1plus - I've avoided upgrading because I heard that the new one builds the Jambase file directly into the program, and because of various build problems under NT (trying to get all the librarys correct, not really a jam problem), I prefer to by able to edit the Jambase rules on the fly. Val From jstewart@kdc-tvcom.com Tue, 23 Sep 1997 14:55:27 -0400 Date: Tue, 23 Sep 1997 14:55:27 -0400 From: jstewart@kdc-tvcom.com jstewart@kdc-tvcom.com Subject: probs building jam on NT with MSVC++ 5.0 > Christian Mallwitz wrote: > > I'm using the 2.1 bundle though, not the 2.1plus - I've avoided > upgrading because I heard that the new one builds the Jambase file > directly into the program, and because of various build problems under > NT (trying to get all the librarys correct, not really a jam problem), I > prefer to by able to edit the Jambase rules on the fly. > > Val This concerned me a first too, but remember that you can always use "jam - -fjambase" to point to a different jambase. - -Joe From mallwitz@intershop.de Tue, 23 Sep 1997 21:06:48 +0200 Date: Tue, 23 Sep 1997 21:06:48 +0200 From: Christian Mallwitz mallwitz@intershop.de Subject: probs building jam on NT with MSVC++ 5.0 Valient Gough wrote: > > Hmm.. sorry, I must have deleted the original message. I've been using > Jam with VC++ 4.0/4.2/5.0, without problems... Hi folks, I have included a trace of what I do. If you see anything wrong please tell me. (Note: MSVC++ is working correctly on all of my other projects) Christian ( ... unpacking jam-2.1.0 ... ) ( ... editing Makefile ... ) [d:\java\jam-2.1.0] set MSVCNT=d:\Tools\DevStudio\VC [d:\java\jam-2.1.0] d:\Tools\DevStudio\VC\bin\VCVARS32.BAT Setting environment for using Microsoft Visual C++ tools. [d:\java\jam-2.1.0] nmake Microsoft (R) Program Maintenance-Dienstprogramm: Version 1.62.7022 Copyright (C) Microsoft Corp 1988-1997. Alle Rechte vorbehalten. cl /nologo /Fejam0 -I d:\Tools\DevStudio\VC/include -DNT *.c d:\Tools\D evStudio\VC/lib/kernel32.lib d:\Tools\DevStudio\VC/lib/libc.lib command.c compile.c execnt.c execnt.c(38) : warning C4113: 'void (__cdecl *)(void)' weicht in der Parameterli ste von 'void (__cdecl *)(int )' ab execnt.c(40) : warning C4113: 'void (__cdecl *)(void)' weicht in der Parameterli ste von 'void (__cdecl *)(int )' ab execunix.c execvms.c expand.c filent.c fileunix.c filevms.c glob.c hash.c headers.c jam.c jamgram.c lists.c make.c make1.c newstr.c option.c parse.c regexp.c rules.c scan.c search.c timestamp.c variable.c Generieren von Code... jam0 -f Jambase install Compiler is Microsoft Visual C++ don't know how to make install ...can't find 1 target(s)... [d:\java\jam-2.1.0] - -- Christian Mallwitz INTERSHOP Communications GmbH pgp: 02 30 7E 1A 7A C1 5C 16 2B 4D 53 A9 1B 05 F7 DD From val@stellacore.com Tue, 23 Sep 1997 13:39:58 -0600 Date: Tue, 23 Sep 1997 13:39:58 -0600 From: Valient Gough val@stellacore.com Subject: probs building jam on NT with MSVC++ 5.0 Christian Mallwitz wrote: > Hi folks, > I have included a trace of what I do. If you see anything wrong please > tell me. > (Note: MSVC++ is working correctly on all of my other projects) > Christian > [build log] > jam0 -f Jambase install > Compiler is Microsoft Visual C++ > don't know how to make install > ...can't find 1 target(s)... In the Jamfile for Jam, it says: # # On UNIX, we install this stuff for easy use. # On VMS, one must define a symbol: jam :== $jam.exe -f jambase # On NT, you're on your own. # So, it looks like it's working fine. I just edited jam.h, and told it where to look for Jambase (and enlarged the MAXCMD length). Then, after building, copy the Jambase to wherever you told it to look, and copy the exe program to someplace in your path.... Val From mallwitz@intershop.de Tue, 23 Sep 1997 21:52:05 +0200 Date: Tue, 23 Sep 1997 21:52:05 +0200 From: Christian Mallwitz mallwitz@intershop.de Subject: probs building jam on NT with MSVC++ 5.0 Valient Gough wrote: > > Christian Mallwitz wrote: > > > Hi folks, > > I have included a trace of what I do. If you see anything wrong > please > > tell me. > > (Note: MSVC++ is working correctly on all of my other projects) > > Christian > > > > [build log] > > > jam0 -f Jambase install Hi folks, Jambase is used here (not Jamfile). > > Compiler is Microsoft Visual C++ > > don't know how to make install > > ...can't find 1 target(s)... > > In the Jamfile for Jam, it says: > > # > # On UNIX, we install this stuff for easy use. > # On VMS, one must define a symbol: jam :== $jam.exe -f jambase > # On NT, you're on your own. > # > > So, it looks like it's working fine. > I just edited jam.h, and told it where to look for Jambase (and enlarged the > MAXCMD length). Then, after building, copy the Jambase to wherever you told > it to look, and copy the exe program to someplace in your path.... You mean I should just compile everything together into jam.exe ? Is the installation step only needed on UNIX ? Is this the only thing I need (apart from the standard Jambase) ? Thanks so far :-) Christian - -- Christian Mallwitz INTERSHOP Communications GmbH pgp: 02 30 7E 1A 7A C1 5C 16 2B 4D 53 A9 1B 05 F7 DD From val@stellacore.com Tue, 23 Sep 1997 13:57:01 -0600 Date: Tue, 23 Sep 1997 13:57:01 -0600 From: Valient Gough val@stellacore.com Subject: probs building jam on NT with MSVC++ 5.0 Christian Mallwitz wrote: > You mean I should just compile everything together into jam.exe ? > Is the installation step only needed on UNIX ? > Is this the only thing I need (apart from the standard Jambase) ? It's been a while since I've installed Jam, but I think that's all you need, the executable and the Jambase file. I guess if you're using the 2.1.plus stuff, you don't even need the Jambase file.. I think jam.exe was already created on your system, correct? You're just missing the installation step, (maybe you need to copy jam0.exe to jam.exe)... Val From uwannags@swdqnx.ppp.de Wed Sep 24 06:31:00 1997 Date: Wed Sep 24 06:31:00 1997 From: Uwe Wannags uwannags@swdqnx.ppp.de Subject: Unsubscribe In-Reply-To: <34281B0E.182A40C1@stellacore.com>; from "Valient Gough" at Sep 23, 97 1:39 pm X-Mailer: ELM [version 2.3 PL11] unsubscribe - -- ******* QNX4 IAT DEMO READY FOR YOUR DOWNLOAD at: http://www.swd.de ****** Echtzeit 09.-11.09.97-Wiesbaden, Rhein-Main-Hallen, Halle 8, Stand 131/132 ************************************************************************** _/_/_/ _/ _/ _/_/_/ QNX + EMPRESS Distribution _/ _/ _/ _/ _/ _/ SWD(SW Datentechnik GmbH), Germany _/_/_/ _/ _/_/ _/ _/ _/ Raiffeisenstr 2-4 D-25451 Quickborn _/ _/_/ _/_/ _/ _/ Uwe Wannags uwannags@swdqnx.ppp.de _/_/_/ _/ _/ _/_/_/ Voice/fax/bbs +49(0)4106-6109-0/40/81 QNX Distribution since 1986 mailto:info@swdqnx.ppp.de http://www.swd.de Area:Germany*Switzerland*Austria*Poland*Russia+rest of former Soviet Union ************************************************************************** From ianbarnard@compuserve.com Mon, 29 Sep 1997 12:38:35 -0400 Date: Mon, 29 Sep 1997 12:38:35 -0400 From: Ian Barnard ianbarnard@compuserve.com Subject: probs building jam on NT with MSVC++ 5.0 You wrote: =2E.. Afterwards jam0 is executed which shows the following error: jam0 -f Jambase install Compiler is Microsoft Visual C++ don't know how to make install =2E..can't find 1 target(s)... =2E.. I've built 2.1.plus-ish using win95 and VC5.0, my version of the makefile= just runs ./jam0, no -f Jambase, no install. AFAIK this bit of my makefil= e is vanilla - unodified. Ian Barnard Racal Communications Systems Ltd