Dirk, FYI -- I just did a quick test with Tomcat 5.0.28. JSPWiki 3 will not load. I haven't dug into why yet, but perhaps it is related to your problem.
That said, 5.5 works fine. Andrew On Mon, Feb 22, 2010 at 3:19 PM, Dirk Frederickx <[email protected]> wrote: > Harry, > > Many thanks for the extra info. Now I an do some more research ;-) > > I'm running still TOMCAT 5.0.28, but so far had no problem with previous > v3.x versions. > > dirk > > > > On Sun, Feb 21, 2010 at 11:50 AM, Harry Metske <[email protected]>wrote: > >> I just did, also no problem, this is what I get (See below). >> >> If I start tomcat with : JAVA_OPTS=-verbose:class ./startup.sh >> The log shows that org.w3c.dom classes are loaded from >> /usr/lib/jvm/java-6-openjdk/jre/lib/rt.jar . >> >> Where do your org.w3c.dom classes come from ? >> This is tomcat 6.0.24, what version are you running ? >> >> regards, >> Harry >> >> >> mets...@gneisenau /usr/local/tomcat/webapps $ ls -l >> total 6496 >> drwxr-xr-x 10 metskem metskem 4096 2010-02-08 18:10 docs >> drwxr-xr-x 5 metskem metskem 4096 2010-02-08 18:10 examples >> drwxr-xr-x 5 metskem metskem 4096 2010-02-08 18:10 host-manager >> drwxr-xr-x 10 metskem metskem 4096 2010-02-08 18:28 JSPWiki-2.8 >> drwxr-xr-x 5 metskem metskem 4096 2010-02-08 18:10 manager >> drwxr-xr-x 3 metskem metskem 4096 2010-02-08 18:10 ROOT >> >> mets...@gneisenau /usr/local/tomcat/webapps $ cp >> /tmp/metskem/JSPWiki/install/JSPWiki.war . >> mets...@gneisenau /usr/local/tomcat/webapps $ >> Feb 21, 2010 11:28:28 AM org.apache.catalina.startup.HostConfig >> deployWAR INFO: Deploying web application archive JSPWiki.war >> >> ==> /tmp/jspwiki.log <== >> 2010-02-21 11:28:29,741 >> [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO >> net.sourceforge.stripes.config.BootstrapPropertyResolver - Class >> implementing/extending ActionBeanContext found via auto-discovery: >> org.apache.wiki.ui.stripes.WikiActionBeanContext >> 2010-02-21 11:28:29,742 >> [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO >> net.sourceforge.stripes.controller.DefaultActionBeanContextFactory - >> DefaultActionBeanContextFactory will use ActionBeanContext subclass >> org.apache.wiki.ui.stripes.WikiActionBeanContext >> 2010-02-21 11:28:29,943 >> [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO >> net.sourceforge.stripes.config.BootstrapPropertyResolver - Class >> implementing/extending LocalePicker found in web.xml: >> org.apache.wiki.ui.stripes.PreferencesLocalePicker >> 2010-02-21 11:28:30,833 >> [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO >> net.sourceforge.stripes.config.BootstrapPropertyResolver - Class >> implementing/extending ExceptionHandler found in web.xml: >> org.apache.wiki.ui.stripes.WikiExceptionHandler >> 2010-02-21 11:28:30,922 >> [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO >> net.sourceforge.stripes.config.BootstrapPropertyResolver - Class >> implementing/extending MultipartWrapper found in web.xml: >> net.sourceforge.stripes.controller.multipart.CommonsMultipartWrapper >> 2010-02-21 11:28:30,922 >> [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO >> net.sourceforge.stripes.controller.multipart.DefaultMultipartWrapperFactory >> - Using >> net.sourceforge.stripes.controller.multipart.CommonsMultipartWrapper as >> MultipartWrapper implementation. >> 2010-02-21 11:28:31,259 >> [ContainerBackgroundProcessor[StandardEngine[Catalina]]] INFO >> net.sourceforge.stripes.controller.StripesFilter - Stripes Initialization >> Complete. Version: 1.6-beta, Build: 1128:1193 >> 2010-02-21 11:29:04,258 [http-8080-2] INFO org.apache.wiki.WikiEngine - >> ******************************************* >> 2010-02-21 11:29:04,262 [http-8080-2] INFO org.apache.wiki.WikiEngine - >> JSPWiki 3.0.0-svn-207 starting. Whee! >> 2010-02-21 11:29:04,265 [http-8080-2] INFO org.apache.wiki.WikiEngine - >> Servlet container: Apache Tomcat/6.0.24 >> 2010-02-21 11:29:04,266 [http-8080-2] INFO org.apache.wiki.WikiEngine - >> JSPWiki working directory is '/usr/local/tomcat/temp/JSPWiki-6233000' >> 2010-02-21 11:29:04,301 [http-8080-2] INFO >> org.apache.wiki.url.StripesURLConstructor - StripesURLConstructor >> initialized. >> 2010-02-21 11:29:04,456 [http-8080-2] INFO >> org.apache.wiki.content.ContentManager - Unable to locate the repository >> from JNDI, attempting to locate from jspwiki.properties >> 2010-02-21 11:29:04,456 [http-8080-2] INFO >> org.apache.wiki.content.ContentManager - Trying repository priha >> 2010-02-21 11:29:04,471 [http-8080-2] INFO org.priha.core.RepositoryImpl - >> G'day, Matilda! Priha 0.7.0-alpha has been initialized. >> 2010-02-21 11:29:04,472 [http-8080-2] INFO org.priha.core.RepositoryImpl - >> Initializing providers... >> 2010-02-21 11:29:04,508 [http-8080-2] WARN >> net.sf.ehcache.config.ConfigurationFactory - No configuration found. >> Configuring ehcache from ehcache-failsafe.xml found in the classpath: >> >> jar:file:/usr/local/apache-tomcat-6.0.24/webapps/JSPWiki/WEB-INF/lib/ehcache-1.6.0.jar!/ehcache-failsafe.xml >> 2010-02-21 11:29:04,607 [http-8080-2] INFO org.priha.core.RepositoryImpl - >> Repository initialization took 135 ms. >> 2010-02-21 11:29:04,608 [http-8080-2] INFO org.priha.core.RepositoryImpl - >> Initializing SessionManager... >> >> ==> /usr/local/tomcat/logs/catalina.out <== >> org.apache.catalina.core.applicationcontextfac...@5f1ba8 >> Feb 21, 2010 11:29:04 AM org.priha.core.RepositoryImpl <init> >> INFO: G'day, Matilda! Priha 0.7.0-alpha has been initialized. >> Feb 21, 2010 11:29:04 AM org.priha.core.RepositoryImpl getProviderManager >> INFO: Initializing providers... >> Feb 21, 2010 11:29:04 AM net.sf.ehcache.config.ConfigurationFactory >> parseConfiguration >> WARNING: No configuration found. Configuring ehcache from >> ehcache-failsafe.xml found in the classpath: >> >> jar:file:/usr/local/apache-tomcat-6.0.24/webapps/JSPWiki/WEB-INF/lib/ehcache-1.6.0.jar!/ehcache-failsafe.xml >> Feb 21, 2010 11:29:04 AM org.priha.core.RepositoryImpl getProviderManager >> INFO: Repository initialization took 135 ms. >> Feb 21, 2010 11:29:04 AM org.priha.core.RepositoryImpl getSessionManager >> INFO: Initializing SessionManager... >> >> ==> /tmp/jspwiki.log <== >> 2010-02-21 11:29:04,929 [http-8080-2] INFO >> org.apache.wiki.content.ContentManager - ContentManager initialized! >> 2010-02-21 11:29:04,944 [http-8080-2] INFO >> org.apache.wiki.plugin.PluginManager - Registering plugins >> 2010-02-21 11:29:05,422 [http-8080-2] INFO >> org.apache.wiki.plugin.PageViewPlugin - initializing PageViewPlugin >> 2010-02-21 11:29:05,424 [http-8080-2] INFO >> org.apache.wiki.plugin.PageViewPlugin - initializing PageView Manager >> 2010-02-21 11:29:05,424 [http-8080-2] INFO >> org.apache.wiki.plugin.PageViewPlugin - loadCounters >> 2010-02-21 11:29:05,425 [http-8080-2] ERROR >> org.apache.wiki.plugin.PageViewPlugin - loadCounters: Can't load page >> counter store: /usr/local/tomcat/temp/JSPWiki-6233000/PageCount.txt (No >> such >> file or directory) , will create a new one >> 2010-02-21 11:29:05,425 [http-8080-2] INFO >> org.apache.wiki.plugin.PageViewPlugin - loadCounters: counters.size=0 >> 2010-02-21 11:29:05,425 [http-8080-2] INFO >> org.apache.wiki.plugin.PageViewPlugin$CounterSaveThread - Starting Counter >> Saver. >> 2010-02-21 11:29:05,486 [http-8080-2] INFO >> org.apache.wiki.diff.DifferenceManager - Using difference provider: >> TraditionalDiffProvider >> 2010-02-21 11:29:05,498 [http-8080-2] INFO org.apache.wiki.ui.EditorManager >> - Registering editor modules >> 2010-02-21 11:29:05,512 [http-8080-2] INFO >> org.apache.wiki.auth.authorize.WebContainerAuthorizer - Examining >> jndi:/localhost/JSPWiki/WEB-INF/web.xml >> 2010-02-21 11:29:05,552 [http-8080-2] INFO >> org.apache.wiki.auth.authorize.WebContainerAuthorizer - JSPWiki is using >> custom authentication. >> 2010-02-21 11:29:05,552 [http-8080-2] INFO >> org.apache.wiki.auth.authorize.WebContainerAuthorizer - Authorizer >> WebContainerAuthorizer initialized successfully. >> 2010-02-21 11:29:05,614 [http-8080-2] INFO >> org.apache.wiki.auth.AuthorizationManager - Initialized default security >> policy: /usr/local/tomcat/webapps/JSPWiki/WEB-INF/jspwiki.policy >> 2010-02-21 11:29:05,615 [http-8080-2] INFO >> org.apache.wiki.auth.authorize.GroupManager - Attempting to load group >> database class org.apache.wiki.auth.authorize.XMLGroupDatabase >> 2010-02-21 11:29:05,616 [http-8080-2] WARN >> org.apache.wiki.auth.authorize.XMLGroupDatabase - XML group database >> property jspwiki.xmlGroupDatabaseFile not found; trying >> /usr/local/tomcat/webapps/JSPWiki/WEB-INF/groupdatabase.xml >> 2010-02-21 11:29:05,616 [http-8080-2] INFO >> org.apache.wiki.auth.authorize.XMLGroupDatabase - XML group database at >> /usr/local/tomcat/webapps/JSPWiki/WEB-INF/groupdatabase.xml >> 2010-02-21 11:29:05,618 [http-8080-2] INFO >> org.apache.wiki.auth.authorize.GroupManager - Group database initialized. >> 2010-02-21 11:29:05,619 [http-8080-2] INFO >> org.apache.wiki.auth.authorize.GroupManager - Authorizer GroupManager >> initialized successfully; loaded 0 group(s). >> 2010-02-21 11:29:05,666 [http-8080-2] INFO >> org.apache.wiki.ui.admin.AdminBeanManager - >> com.sun.jmx.mbeanserver.JmxMBeanServer >> 2010-02-21 11:29:05,666 [http-8080-2] INFO >> org.apache.wiki.ui.admin.AdminBeanManager - DefaultDomain >> 2010-02-21 11:29:05,669 [http-8080-2] INFO >> org.apache.wiki.ui.admin.AdminBeanManager - Registered new admin bean Core >> bean >> 2010-02-21 11:29:05,670 [http-8080-2] INFO >> org.apache.wiki.ui.admin.AdminBeanManager - Registered new admin bean User >> administration >> 2010-02-21 11:29:05,670 [http-8080-2] INFO >> org.apache.wiki.ui.admin.AdminBeanManager - Registered new admin bean >> Search manager >> 2010-02-21 11:29:05,670 [http-8080-2] INFO >> org.apache.wiki.ui.admin.AdminBeanManager - Registered new admin bean >> Plugins >> 2010-02-21 11:29:05,671 [http-8080-2] INFO >> org.apache.wiki.ui.admin.AdminBeanManager - Registered new admin bean >> Plain >> editor >> 2010-02-21 11:29:05,672 [http-8080-2] INFO org.apache.wiki.WikiEngine - >> Registering filters >> 2010-02-21 11:29:05,917 [http-8080-2] INFO org.apache.wiki.WikiEngine - >> Cannot find property file for filters (this is okay, expected to find it >> as: >> '/WEB-INF/filters.xml') >> 2010-02-21 11:29:05,918 [http-8080-2] INFO >> org.apache.wiki.render.RenderingManager - Rendering content with >> org.apache.wiki.render.XHTMLRenderer. >> 2010-02-21 11:29:05,966 [http-8080-2] INFO >> org.apache.wiki.search.LuceneSearchProvider - Lucene enabled, cache will >> be >> in: /usr/local/tomcat/temp/JSPWiki-6233000/lucene >> 2010-02-21 11:29:05,967 [http-8080-2] INFO >> org.apache.wiki.search.LuceneSearchProvider$LuceneUpdater - Starting >> Lucene >> Indexer. >> 2010-02-21 11:29:05,968 [http-8080-2] INFO >> org.apache.wiki.util.WatchDog$WatchDogThread - Starting WatchDog. >> 2010-02-21 11:29:05,969 [http-8080-2] INFO >> org.apache.wiki.search.LuceneSearchProvider - Starting Lucene reindexing, >> this can take a couple minutes... >> 2010-02-21 11:29:06,341 [http-8080-2] INFO >> org.apache.wiki.search.LuceneSearchProvider - Full Lucene index finished >> in >> 372 milliseconds. >> 2010-02-21 11:29:06,341 [http-8080-2] INFO org.apache.wiki.WikiEngine - >> WikiEngine configured. >> 2010-02-21 11:29:06,341 [http-8080-2] INFO org.apache.wiki.WikiEngine - >> Root path for this Wiki is: '/usr/local/tomcat/webapps/JSPWiki/' >> 2010-02-21 11:29:06,389 [http-8080-2] INFO >> net.sourceforge.stripes.validation.expression.ExpressionValidator - >> Expression validation will be performed using: >> net.sourceforge.stripes.validation.expression.Jsp21ExpressionExecutor >> 2010-02-21 11:29:06,524 [http-8080-2] INFO org.apache.wiki.auth.UserManager >> - Attempting to load user database class >> org.apache.wiki.auth.user.XMLUserDatabase >> 2010-02-21 11:29:06,527 [http-8080-2] WARN >> org.apache.wiki.auth.user.AbstractUserDatabase - XML user database >> property >> jspwiki.xmlUserDatabaseFile not found; trying >> /usr/local/tomcat/webapps/JSPWiki/WEB-INF/userdatabase.xml >> 2010-02-21 11:29:06,527 [http-8080-2] INFO >> org.apache.wiki.auth.user.AbstractUserDatabase - XML user database at >> /usr/local/tomcat/webapps/JSPWiki/WEB-INF/userdatabase.xml >> 2010-02-21 11:29:06,529 [http-8080-2] INFO org.apache.wiki.auth.UserManager >> - UserDatabase initialized. >> >> ==> /usr/local/tomcat/logs/catalina.out <== >> Executing /jcr:root/pages/*/* >> LOC = Node[jspwiki:/], check= >> MATCH >> LOC = Node[jspwiki:/], check=pages >> MATCH >> LOC = Node[jspwiki:/pages], check=null >> LOC = Node[jspwiki:/pages/main], check=null >> + Root node >> + Select properties: * >> + PathQueryNode >> + LocationStepQueryNode: NodeTest= Descendants=false Index=NONE >> + LocationStepQueryNode: NodeTest=pages Descendants=false Index=NONE >> + LocationStepQueryNode: NodeTest=* Descendants=false Index=NONE >> + LocationStepQueryNode: NodeTest=* Descendants=false Index=NONE >> >> --- >> Node[jspwiki:/pages/main/main] >> Node[jspwiki:/pages/main/ll] >> >> ==> /tmp/jspwiki.log <== >> 2010-02-21 11:29:21,342 [Timer-0] INFO >> org.apache.wiki.search.LuceneSearchProvider$LuceneUpdater - Running Lucene >> Indexer. >> >> >> >> 2010/2/20 Dirk Frederickx <[email protected]> >> >> > Harry, >> > >> > Did you try a redeploy from WAR ? >> > >> > Falling back to a previous version (svn-191) runs perfectly next to >> v2.8. >> > Just a recent WAR deploy still breaks completely >> > >> > >> > dirk >> > >> > On Mon, Feb 8, 2010 at 6:32 PM, Harry Metske <[email protected]> >> > wrote: >> > >> > > running 2 wiki's in the same tomcat (2.8 and 3.0) should not be a >> problem >> > > (I >> > > just did, and they both initialize nicely) >> > > >> > > /Harry >> > > >> > > >> > > 2010/2/8 Dirk Frederickx <[email protected]> >> > > >> > > > Txs Harry, >> > > > >> > > > I will do some more investigation. >> > > > >> > > > Note: I am running also a v2.8.x JSPWiki in the same TOMCAT instance. >> > > Could >> > > > this cause any problem ? >> > > > >> > > > >> > > > dirk >> > > > >> > > > On Mon, Feb 8, 2010 at 7:55 AM, Harry Metske <[email protected] >> > >> > > > wrote: >> > > > >> > > > > Dirk, >> > > > > >> > > > > I can't think of anything else than that you are loading a version >> of >> > > > > org.w3c.dom.Node that does not have the getTextContent() method. >> > > > > Can you add the java parameter " -verbose:class" to see from which >> > jar >> > > it >> > > > > is >> > > > > loaded, maybe that gives a clue. >> > > > > >> > > > > regards, >> > > > > Harry >> > > > > >> > > > > 2010/2/7 Dirk Frederickx <[email protected]> >> > > > > >> > > > > > Guys, >> > > > > > >> > > > > > The latest check-ins on v3.0.0 seem to have broken the >> > deployability >> > > > from >> > > > > > WAR. >> > > > > > I'm kind a blocked to check in several pending fixes (mainly >> > > javascript >> > > > ) >> > > > > > to align with the latest template changes of Andrew. >> > > > > > >> > > > > > It seems the Content-Manager doesn't initialize properly. >> > > > > > >> > > > > > Any suggestions ? >> > > > > > >> > > > > > >> > > > > > 2010-01-23 19:29:15,648 [main] INFO org.priha.core.RepositoryImpl >> > - >> > > > > > Initializing SessionManager... >> > > > > > 2010-01-23 19:29:15,841 [main] INFO >> org.apache.wiki.util.ClassUtil >> > - >> > > > > > Failed >> > > > > > to invoke class org.apache.wiki.content.ContentManager >> > > > > > java.lang.NoSuchMethodError: >> > > > > > org.w3c.dom.Node.getTextContent()Ljava/lang/String; >> > > > > > 2010-01-23 19:29:15,843 [main] ERROR org.apache.wiki.WikiEngine >> - >> > > > > JSPWiki >> > > > > > could not start, due to an unknown exception while starting, >> > > stacktrace >> > > > > > follows: >> > > > > > org.apache.wiki.api.WikiException: Failed to invoke class >> > > > > > org.apache.wiki.content.ContentManager, reason: >> > > > > > java.lang.NoSuchMethodError: >> > > > > > org.w3c.dom.Node.getTextContent()Ljava/lang/String; >> > > > > > at >> > org.apache.wiki.util.ClassUtil.getMappedObject(ClassUtil.java:311) >> > > > > > at >> > org.apache.wiki.util.ClassUtil.getMappedObject(ClassUtil.java:204) >> > > > > > at org.apache.wiki.WikiEngine.initialize(WikiEngine.java:565) >> > > > > > at org.apache.wiki.WikiEngine.<init>(WikiEngine.java:429) >> > > > > > >> > > > > > >> > > > > > dirk >> > > > > > >> > > > > > >> > > > > > On Sun, Jan 24, 2010 at 12:06 PM, Harry Metske < >> > > [email protected] >> > > > > > >wrote: >> > > > > > >> > > > > > > could it be that there is an old version of org.w3c.dom.Node >> > > > somewhere >> > > > > > > else in your classpath ? >> > > > > > > >> > > > > > > /Harry >> > > > > > > >> > > > > > > 2010/1/23 Dirk Frederickx <[email protected]> >> > > > > > > >> > > > > > > > Harry, >> > > > > > > > >> > > > > > > > Txs for the quick reply. >> > > > > > > > But that's not the problem -- I have v3.0.0. runing quite >> some >> > > > time. >> > > > > > > > I just did a clean install from the war. >> > > > > > > > >> > > > > > > > I'm running java 1.5 >> > > > > > > > >> > > > > > > > java version "1.5.0_19" >> > > > > > > > Java(TM) 2 Runtime Environment, Standard Edition (build >> > > > > > 1.5.0_19-b02-306) >> > > > > > > > Java HotSpot(TM) Client VM (build 1.5.0_19-138, mixed mode, >> > > > sharing) >> > > > > > > > >> > > > > > > > >> > > > > > > > >> > > > > > > > dirk >> > > > > > > > >> > > > > > > > >> > > > > > > > On Sat, Jan 23, 2010 at 8:53 PM, Dirk Frederickx >> > > > > > > > <[email protected]>wrote: >> > > > > > > > >> > > > > > > > > Harry, >> > > > > > > > > >> > > > > > > > > Txs for the quick reply. >> > > > > > > > > But that's not the problem -- I have v3.0.0. runing quite >> > some >> > > > > time. >> > > > > > > > > I just tried a >> > > > > > > > > >> > > > > > > > > >> > > > > > > > > On Sat, Jan 23, 2010 at 8:28 PM, Harry Metske < >> > > > > > [email protected] >> > > > > > > > >wrote: >> > > > > > > > > >> > > > > > > > >> it looks like you are running with a JDK 1.4, while JDK5 >> is >> > > the >> > > > > > > minimum >> > > > > > > > >> requirement. >> > > > > > > > >> >> > > > > > > > >> regards, >> > > > > > > > >> Harry >> > > > > > > > >> >> > > > > > > > >> 2010/1/23 Dirk Frederickx <[email protected]> >> > > > > > > > >> >> > > > > > > > >> > I have difficulties in deploying a recent v3.0.0 >> version. >> > > > > > > > >> > The startup op JSPWiki fails with the below >> > > error/stack-trace. >> > > > > > > > >> > >> > > > > > > > >> > Any hint what could be wrong ? >> > > > > > > > >> > >> > > > > > > > >> > >> > > > > > > > >> > 2010-01-23 19:29:15,648 [main] INFO >> > > > > org.priha.core.RepositoryImpl >> > > > > > - >> > > > > > > > >> > Initializing SessionManager... >> > > > > > > > >> > 2010-01-23 19:29:15,841 [main] INFO >> > > > > org.apache.wiki.util.ClassUtil >> > > > > > > - >> > > > > > > > >> > Failed >> > > > > > > > >> > to invoke class org.apache.wiki.content.ContentManager >> > > > > > > > >> > java.lang.NoSuchMethodError: >> > > > > > > > >> > org.w3c.dom.Node.getTextContent()Ljava/lang/String; >> > > > > > > > >> > 2010-01-23 19:29:15,843 [main] ERROR >> > > > org.apache.wiki.WikiEngine >> > > > > - >> > > > > > > > >> JSPWiki >> > > > > > > > >> > could not start, due to an unknown exception while >> > starting, >> > > > > > > > stacktrace >> > > > > > > > >> > follows: >> > > > > > > > >> > org.apache.wiki.api.WikiException: Failed to invoke >> class >> > > > > > > > >> > org.apache.wiki.content.ContentManager, reason: >> > > > > > > > >> > java.lang.NoSuchMethodError: >> > > > > > > > >> > org.w3c.dom.Node.getTextContent()Ljava/lang/String; >> > > > > > > > >> > at >> > > > > > > >> > org.apache.wiki.util.ClassUtil.getMappedObject(ClassUtil.java:311) >> > > > > > > > >> > at >> > > > > > > >> > org.apache.wiki.util.ClassUtil.getMappedObject(ClassUtil.java:204) >> > > > > > > > >> > at >> > > org.apache.wiki.WikiEngine.initialize(WikiEngine.java:565) >> > > > > > > > >> > at >> org.apache.wiki.WikiEngine.<init>(WikiEngine.java:429) >> > > > > > > > >> > >> > > > > > > > >> > >> > > > > > > > >> > >> > > > > > > > >> > dirk >> > > > > > > > >> > >> > > > > > > > >> >> > > > > > > > > >> > > > > > > > > >> > > > > > > > >> > > > > > > >> > > > > > >> > > > > >> > > > >> > > >> > >> >
