Hi all,

the 72h time frame has passed and we have enough votes, with the tally
being:
Murray Altheim: +1 (*)
Brian Burch: +1
Dirk Frederickx: +1 (*)
Harry Metske: +1 (*)
Juan Pablo Santos: +1 (*)

(*) denoting PMC member

So, the vote passes, thanks to everyone participating on the vote!

I'll proceed with the next steps of the 2.11.0.M2 release between
tonight/tomorrow


best regards,
juan pablo

On Thu, Mar 7, 2019 at 11:57 PM Juan Pablo Santos Rodríguez <
juanpablo.san...@gmail.com> wrote:

> Hi Brian,
>
> glad you were able to get 2.11.0.M2 running, when you have a minute please
> do tell us
> what did you miss on the installation instructions so we can have them as
> clear and easy
> to follow as possible.
>
> best regards (and thank you for your vote :-) )
> juan pablo
>
>
> On Thu, Mar 7, 2019 at 8:06 AM Brian Burch <br...@pingtoo.com> wrote:
>
>> So, to answer my own question... it WAS because I neglected to run
>> Install.jsp after deploying the clean M2 war.
>>
>> After Install, stop tc, start tc, the web client was redirected to
>> Login.jsp. This time jspwiki.log showed that my custom properties had
>> been loaded via Context.xml and was being used. catalina.out no longer
>> had all the stack traces, either.
>>
>> I am currently using the default userdatabase.xml, but couldn't discover
>> the password for admin. I created my own account and was taken to the
>> Main page that I had not been able to access since moving from M1 to M2.
>> I had a nice friendly email and immediately took a backup of the updated
>> userdatabase.xml.
>>
>> I am happy to change my "+3/4" to "+1".
>>
>> However, the jspwiki wiki installation instructions needs some(!) work,
>> so I'll run through the entire deployment more carefully from the top
>> before creating any documentation JIRAs and updates.
>>
>> I'm so pleased to have it working. I've been waiting to work on this
>> upgrade for my plugin for at least a year, with it still running in
>> production with 2.10.3-git-32.
>>
>> Regards,
>>
>> Brian
>>
>> On 7/3/19 3:08 pm, Brian Burch wrote:
>> > On 5/3/19 8:55 am, Juan Pablo Santos Rodríguez wrote:
>> >> This is a release vote for Apache JSPWiki, version 2.11.0.M2. The vote
>> >> will
>> >> be open for at least 72 hours from now.
>> >>
>> >> It fixes the following issues:
>> >>
>> https://issues.apache.org/jira/secure/ReleaseNote.jspa?projectId=12310732&version=12343994
>> >>
>> >>
>> >> You can see a curated changelog at
>> >> https://jspwiki-wiki.apache.org/Wiki.jsp?page=NewIn2.11
>> >>
>> >> Note that we are voting upon the source (tag), binaries are provided
>> for
>> >> convenience.
>> >>
>> >> Everybody is encouraged to vote.
>> >>
>> >> Source and binary files:
>> >> https://dist.apache.org/repos/dist/dev/jspwiki/2.11.0.M2-rc1/
>> >>
>> >> Nexus staging repo:
>> >>
>> https://repository.apache.org/content/repositories/orgapachejspwiki-1010
>> >>
>> >> The tag to be voted upon:
>> >> https://github.com/apache/jspwiki/tree/2.11.0.M2-RC1
>> >>
>> >> JSPWiki's KEYS file containing PGP keys we use to sign the release:
>> >> https://www.apache.org/dist/jspwiki/KEYS
>> >>
>> >> *** Please download, test and vote:
>> >>
>> >> [ ] +1 Approve the release
>> >> [ ]  0 Don't mind
>> >> [ ] -1 Disapprove the release (please provide specific comments)
>> >
>> > + 3/4!!
>> >
>> >
>> > Firstly, M2 built and tested perfectly on unbuntu 18.10 X64 with
>> openjdk
>> > version 10.0.2, so well done!
>> >
>> >
>> > I hit several problems testing a fresh install of M1 on my new
>> > development server, but most of them were fairly trivial and Iintended
>> > to write some JIRA's when I've completed my own work and M2 is released.
>> >
>> > Unfortunately, I've hit one problem with M2, which I've been struggling
>> > over for the last 2 days. I hope it is a "user error" and I can vote
>> +1,
>> > so I thought it best to ask for help before the deadline.
>> >
>> > I had a vanilla M1 installation (pom.xml called it 2.11.0.M2-SNAPSHOT)
>> > that was my work-in-progress, but was subsequently pulled. I'd done
>> > quite a lot of tailoring for my PhotoCollection plugin, but hadn't
>> > finished the work. It installed with the "default" (aka Haddock)
>> > template and merged the jspwiki-custom.properties created by
>> Install.jsp
>> > with the properties I wanted for my own purposes, cloned from my
>> > production system.
>> >
>> > It appeared to be working OK and I successfully created a Main page, a
>> > LeftMenu, and a couple of others. I didn't like the dark theme and
>> > changed my own custom.properties to switch to the light theme.
>> Satisfied
>> > that I had a useful testbed, I got on with my plugin development...
>> >
>> > When the M2 release candidate (pom.xml calls it 2.11.0.M2) was cut last
>> > weekend, I quickly downloaded the source, built and ran the tests
>> (hence
>> > my +3/4 provisional vote).
>> >
>> > I was very confident of the new version, having read the changelog, so
>> I
>> > didn't bother deploying it under a new name. I wiped my M1 war, and so
>> > tomcat (8.5.30-1ubuntu1.4) automatically wiped the deployed webapp
>> > before I could put on my paranoid hat.
>> >
>> > Undeterred, I went through my customisation steps from my paper notes,
>> > but DID NOT run Install.jsp (in case that omission is relevant). I
>> > stopped tomcat, checked my custom properties, cleared tomcat's work
>> > directory (the previous jsp's java and class files), and restarted
>> tomcat.
>> >
>> > I won't mention all the confusing and unproductive things I've tried to
>> > resolve the problem since, but here are the things that seem most
>> > relevant today.
>> >
>> > 1. jspwiki.log does not report any problems, but I am suspicious
>> because
>> > M1 would always spew out dozens of these messages:-
>> >
>> > 2019-02-21 13:08:30,517 INFO util.PropertyReader -
>> jspwiki.custom.config
>> > defined, using /home/wiki/context/jspwiki-custom.properties as the
>> > custom properties file.
>> >
>> > However, M2 's log doesn't mention custom properties at all.
>> >
>> > 2. Despite the apparently good start of M2, I can't access any of the
>> > small set of wiki pages I had built in an external directory, so all
>> > their url's just get 404 status.
>> >
>> > 3. Both M1 and M2 are using THE SAME Context.xml to avoid some "war
>> > surgery" steps, so here is a copy which used to work last week:-
>> >
>> > brian@chenin:/etc/tomcat8-bb/Catalina/localhost$ cat PingTooTest.xml
>> > <?xml version="1.0" encoding="UTF-8"?>
>> > <!-- The contents of this file will be loaded for the jspWiki web
>> > application
>> > -->
>> > <Context>
>> >    <!--
>> >       Brian's version needs to follow symlinks to directories outside
>> the
>> >       tomcat webapp base.
>> >      -->
>> >    <Resources allowLinking="true"/>
>> >
>> >    <!--
>> >       try to load custom properties outside the deployed WAR
>> >      -->
>> >    <Parameter
>> >       name="jspwiki.custom.config"
>> >       value="/home/wiki/context/jspwiki-custom.properties"
>> >       override="false"
>> >     />
>> > </Context>
>> >
>> >
>> > 4. Unfortunately, while M1 ran OK, M2 is triggering a severe error in
>> > catalina.out:-
>> >
>> > log4j:WARN No appenders could be found for logger
>> > (org.apache.wiki.util.PropertyReader).
>> > log4j:WARN Please initialize the log4j system properly.
>> > log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig
>> for
>> > more info.
>> > 07-Mar-2019 12:25:06.345 SEVERE [localhost-startStop-1]
>> > org.apache.catalina.core.StandardContext.startInternal One or more
>> > Filters failed to start. Full details will be found in the appropriate
>> > container log file
>> > 07-Mar-2019 12:25:06.356 SEVERE [localhost-startStop-1]
>> > org.apache.catalina.core.StandardContext.startInternal Context
>> > [/PingTooTest] startup failed due to previous errors
>> > 07-Mar-2019 12:25:06.411 WARNING [localhost-startStop-1]
>> > org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads
>> > The web application [PingTooTest] appears to have started a thread
>> named
>> > [__DEFAULT__] but has failed to stop it. This is very likely to create
>> a
>> > memory leak. Stack trace of thread:
>> >   java.base@10.0.2/java.lang.Object.wait(Native Method)
>> >   java.base@10.0.2/java.lang.Object.wait(Object.java:328)
>> >   java.base@10.0.2/java.util.TimerThread.mainLoop(Timer.java:527)
>> >   java.base@10.0.2/java.util.TimerThread.run(Timer.java:506)
>> > 07-Mar-2019 12:25:06.416 WARNING [localhost-startStop-1]
>> > org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads
>> > The web application [PingTooTest] appears to have started a thread
>> named
>> > [Statistics Thread-__DEFAULT__-1] but has failed to stop it. This is
>> > very likely to create a memory leak. Stack trace of thread:
>> >   java.base@10.0.2/jdk.internal.misc.Unsafe.park(Native Method)
>> >
>> > java.base@10.0.2/java.util.concurrent.locks.LockSupport.parkNanos(LockSupport.java:234)
>>
>> >
>> >
>> > java.base@10.0.2/java.util.concurrent.locks.AbstractQueuedSynchronizer$ConditionObject.awaitNanos(AbstractQueuedSynchronizer.java:2117)
>>
>> >
>> >
>> > java.base@10.0.2/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:1182)
>>
>> >
>> >
>> > java.base@10.0.2/java.util.concurrent.ScheduledThreadPoolExecutor$DelayedWorkQueue.take(ScheduledThreadPoolExecutor.java:899)
>>
>> >
>> >
>> > java.base@10.0.2/java.util.concurrent.ThreadPoolExecutor.getTask(ThreadPoolExecutor.java:1061)
>>
>> >
>> >
>> > java.base@10.0.2/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1121)
>>
>> >
>> >
>> > java.base@10.0.2/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
>>
>> >
>> >   java.base@10.0.2/java.lang.Thread.run(Thread.java:844)
>> > 07-Mar-2019 12:25:06.419 WARNING [localhost-startStop-1]
>> > org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads
>> > The web application [PingTooTest] appears to have started a thread
>> named
>> > [JSPWiki Lucene Indexer] but has failed to stop it. This is very likely
>> > to create a memory leak. Stack trace of thread:
>> >   java.base@10.0.2
>> /java.util.zip.ZipFile$Source.initCEN(ZipFile.java:1503)
>> >   java.base@10.0.2
>> /java.util.zip.ZipFile$Source.<init>(ZipFile.java:1266)
>> >   java.base@10.0.2/java.util.zip.ZipFile$Source.get(ZipFile.java:1229)
>> >
>> > java.base@10.0.2/java.util.zip.ZipFile$CleanableResource.<init>(ZipFile.java:727)
>>
>> >
>> >
>> > java.base@10.0.2/java.util.zip.ZipFile$CleanableResource.get(ZipFile.java:845)
>>
>> >
>> >   java.base@10.0.2/java.util.zip.ZipFile.<init>(ZipFile.java:245)
>> >   java.base@10.0.2/java.util.zip.ZipFile.<init>(ZipFile.java:175)
>> >   java.base@10.0.2/java.util.jar.JarFile.<init>(JarFile.java:341)
>> >
>> > java.base@10.0.2/jdk.internal.reflect.GeneratedConstructorAccessor8.newInstance(Unknown
>>
>> > Source)
>> >
>> > java.base@10.0.2/jdk.internal.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:45)
>>
>> >
>> >
>> > java.base@10.0.2/java.lang.reflect.Constructor.newInstance(Constructor.java:488)
>>
>> >
>> >
>> >
>> org.apache.tomcat.util.compat.Jre9Compat.jarFileNewInstance(Jre9Compat.java:209)
>>
>> >
>> >
>> >
>> org.apache.tomcat.util.compat.JreCompat.jarFileNewInstance(JreCompat.java:181)
>>
>> >
>> >
>> >
>> org.apache.catalina.webresources.AbstractArchiveResourceSet.openJarFile(AbstractArchiveResourceSet.java:308)
>>
>> >
>> >
>> >
>> org.apache.catalina.webresources.AbstractSingleArchiveResourceSet.getArchiveEntry(AbstractSingleArchiveResourceSet.java:96)
>>
>> >
>> >
>> >
>> org.apache.catalina.webresources.AbstractArchiveResourceSet.getResource(AbstractArchiveResourceSet.java:257)
>>
>> >
>> >
>> >
>> org.apache.catalina.webresources.StandardRoot.getResourceInternal(StandardRoot.java:281)
>>
>> >
>> >   org.apache.catalina.webresources.Cache.getResource(Cache.java:62)
>> >
>> >
>> org.apache.catalina.webresources.StandardRoot.getResource(StandardRoot.java:216)
>>
>> >
>> >
>> >
>> org.apache.catalina.webresources.StandardRoot.getClassLoaderResource(StandardRoot.java:225)
>>
>> >
>> >
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2263)
>>
>> >
>> >
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:846)
>>
>> >
>> >
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1313)
>>
>> >
>> >
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1172)
>>
>> >
>> >
>> >
>> org.apache.lucene.codecs.compressing.CompressingStoredFieldsWriter.<clinit>(CompressingStoredFieldsWriter.java:70)
>>
>> >
>> >
>> >
>> org.apache.lucene.codecs.compressing.CompressingStoredFieldsFormat.fieldsWriter(CompressingStoredFieldsFormat.java:128)
>>
>> >
>> >
>> >
>> org.apache.lucene.codecs.lucene50.Lucene50StoredFieldsFormat.fieldsWriter(Lucene50StoredFieldsFormat.java:183)
>>
>> >
>> >
>> >
>> org.apache.lucene.index.StoredFieldsConsumer.initStoredFieldsWriter(StoredFieldsConsumer.java:39)
>>
>> >
>> >
>> >
>> org.apache.lucene.index.StoredFieldsConsumer.startDocument(StoredFieldsConsumer.java:46)
>>
>> >
>> >
>> >
>> org.apache.lucene.index.DefaultIndexingChain.startStoredFields(DefaultIndexingChain.java:355)
>>
>> >
>> >
>> >
>> org.apache.lucene.index.DefaultIndexingChain.processDocument(DefaultIndexingChain.java:391)
>>
>> >
>> >
>> >
>> org.apache.lucene.index.DocumentsWriterPerThread.updateDocument(DocumentsWriterPerThread.java:251)
>>
>> >
>> >
>> >
>> org.apache.lucene.index.DocumentsWriter.updateDocument(DocumentsWriter.java:494)
>>
>> >
>> >
>>  org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1616)
>> >   org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1235)
>> >
>> >
>> org.apache.wiki.search.LuceneSearchProvider.luceneIndexPage(LuceneSearchProvider.java:467)
>>
>> >
>> >
>> >
>> org.apache.wiki.search.LuceneSearchProvider.doFullLuceneReindex(LuceneSearchProvider.java:227)
>>
>> >
>> >
>> >
>> org.apache.wiki.search.LuceneSearchProvider$LuceneUpdater.startupTask(LuceneSearchProvider.java:736)
>>
>> >
>> >
>>  org.apache.wiki.WikiBackgroundThread.run(WikiBackgroundThread.java:111)
>> > 07-Mar-2019 12:25:06.425 WARNING [localhost-startStop-1]
>> > org.apache.catalina.loader.WebappClassLoaderBase.clearReferencesThreads
>> > The web application [PingTooTest] appears to have started a thread
>> named
>> > [WatchDog for 'PingTooWikiTest'] but has failed to stop it. This is
>> very
>> > likely to create a memory leak. Stack trace of thread:
>> >   java.base@10.0.2/java.lang.Thread.sleep(Native Method)
>> >
>>  org.apache.wiki.WikiBackgroundThread.run(WikiBackgroundThread.java:125)
>> > 07-Mar-2019 12:25:06.445 SEVERE [localhost-startStop-1]
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.checkThreadLocalMapForLeaks
>>
>> > The web application [PingTooTest] created a ThreadLocal with key of
>> type
>> > [java.lang.ThreadLocal] (value [java.lang.ThreadLocal@46d5f731]) and a
>> > value of type [org.apache.wiki.WikiSession] (value
>> > [org.apache.wiki.WikiSession@7e846f2c]) but failed to remove it when
>> the
>> > web application was stopped. Threads are going to be renewed over time
>> > to try and avoid a probable memory leak.
>> > 07-Mar-2019 12:25:06.487 INFO [JSPWiki Lucene Indexer]
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading
>>
>> > Illegal access: this web application instance has been stopped already.
>> > Could not load [org.apache.lucene.util.packed.PackedInts$ReaderImpl].
>> > The following stack trace is thrown for debugging purposes as well as
>> to
>> > attempt to terminate the thread which caused the illegal access.
>> >   java.lang.IllegalStateException: Illegal access: this web application
>> > instance has been stopped already. Could not load
>> > [org.apache.lucene.util.packed.PackedInts$ReaderImpl]. The following
>> > stack trace is thrown for debugging purposes as well as to attempt to
>> > terminate the thread which caused the illegal access.
>> >      at
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.checkStateForResourceLoading(WebappClassLoaderBase.java:1364)
>>
>> >
>> >      at
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.checkStateForClassLoading(WebappClassLoaderBase.java:1352)
>>
>> >
>> >      at
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1211)
>>
>> >
>> >      at
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1172)
>>
>> >
>> >      at java.base/java.lang.ClassLoader.defineClass1(Native Method)
>> >      at
>> java.base/java.lang.ClassLoader.defineClass(ClassLoader.java:1009)
>> >      at
>> >
>> java.base/java.security.SecureClassLoader.defineClass(SecureClassLoader.java:174)
>>
>> >
>> >      at
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.findClassInternal(WebappClassLoaderBase.java:2374)
>>
>> >
>> >      at
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.findClass(WebappClassLoaderBase.java:846)
>>
>> >
>> >      at
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1313)
>>
>> >
>> >      at
>> >
>> org.apache.catalina.loader.WebappClassLoaderBase.loadClass(WebappClassLoaderBase.java:1172)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.codecs.compressing.CompressingStoredFieldsWriter.<clinit>(CompressingStoredFieldsWriter.java:70)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.codecs.compressing.CompressingStoredFieldsFormat.fieldsWriter(CompressingStoredFieldsFormat.java:128)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.codecs.lucene50.Lucene50StoredFieldsFormat.fieldsWriter(Lucene50StoredFieldsFormat.java:183)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.index.StoredFieldsConsumer.initStoredFieldsWriter(StoredFieldsConsumer.java:39)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.index.StoredFieldsConsumer.startDocument(StoredFieldsConsumer.java:46)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.index.DefaultIndexingChain.startStoredFields(DefaultIndexingChain.java:355)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.index.DefaultIndexingChain.processDocument(DefaultIndexingChain.java:391)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.index.DocumentsWriterPerThread.updateDocument(DocumentsWriterPerThread.java:251)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.index.DocumentsWriter.updateDocument(DocumentsWriter.java:494)
>>
>> >
>> >      at
>> >
>> org.apache.lucene.index.IndexWriter.updateDocument(IndexWriter.java:1616)
>> >      at
>> > org.apache.lucene.index.IndexWriter.addDocument(IndexWriter.java:1235)
>> >      at
>> >
>> org.apache.wiki.search.LuceneSearchProvider.luceneIndexPage(LuceneSearchProvider.java:467)
>>
>> >
>> >      at
>> >
>> org.apache.wiki.search.LuceneSearchProvider.doFullLuceneReindex(LuceneSearchProvider.java:227)
>>
>> >
>> >      at
>> >
>> org.apache.wiki.search.LuceneSearchProvider$LuceneUpdater.startupTask(LuceneSearchProvider.java:736)
>>
>> >
>> >      at
>> > org.apache.wiki.WikiBackgroundThread.run(WikiBackgroundThread.java:111)
>> >
>> >
>> > ======> and so on.
>> >
>> >
>> > 5. However, don't get too excited about the initial log4j warnings,
>> > because here is an extract from the last log I captured from M1:-
>> >
>> > log4j:WARN No appenders could be found for logger
>> > (org.apache.wiki.util.PropertyReader).
>> > log4j:WARN Please initialize the log4j system properly.
>> > log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig
>> for
>> > more info.
>> > 21-Feb-2019 13:01:53.717 INFO [localhost-startStop-1]
>> > org.apache.catalina.startup.HostConfig.deployDescriptor Deployment of
>> > configuration descriptor
>> > [/etc/tomcat8-bb/Catalina/localhost/PingTooTest.xml] has finished in
>> > [6,517] ms
>> >
>> > [there were subsequent errors with jspwiki M1, but it started and did
>> > what I expected].
>> >
>> >
>> > 6. I am very suspicious about M2's lack of messages referring to my
>> > custom.properties. Dozens from M1 was not correct, but none at all from
>> > M2 makes me wonder whether they are even being used.
>> >
>> > a) Should I have run Install.jsp, even though I didn't need it to
>> > generate a file that was not as suitable as my own which worked with M1?
>> >
>> > b) I can't find the "full" jspwiki.properties file anywhere in the
>> > deployed webapp, but it is in the source tree. The only difference I
>> can
>> > see is in this snippet of comments:-
>> >
>> > #jspwiki.shortURLConstructor.prefix = wiki/
>> > #  This prefix must be in some elements of web.xml, too: in
>> > #  servlet-mapping of WikiServlet, in filter-mapping of WikiJSPFilter
>> >
>> > I have renamed my war file to be called PingTooTest.war (hence the
>> > Context.xml name matches it). Is this comment related to something
>> > clever that needs to be done by Install.jsp???
>> >
>> >
>> > I apologise for bothering everyone with this long email, but I'm stuck
>> > and don't know how to get past this problem. I hope someone will feel
>> > sorry enough for my plight and suggest what to do to resolve it.
>> >
>> > Thanks...
>> >
>> > Brian
>> >
>> > c) scratching my head a lot, I compared
>>
>>

Reply via email to