Hi Yann, The ES connector is configured to accept only certain file extensions and mime types. It is possible that the FileNet crawl is discarding all documents because of that.
What you can do is turn on connector debugging - although I am not certain how complete it is at this point for the FileNet connector. For most connectors it logs all decisions that the connector makes about including or excluding documents, and why. Add this to your properties.xml file: <property name="org.apache.manifoldcf.connectors" value="DEBUG"/> ... and restart. The other thing you can try is to create a job that uses a null output connection, and then look in the Simple History to see whether indexing requests are made. That will at least confirm that filenet connector is working or not. Karl On Tue, Sep 10, 2013 at 10:30 AM, Yann Barraud <[email protected]>wrote: > Hi Karl & all, > > It seems w'ere crawling docs, but nothing is sent to ES, neither on FS > output if configured. Anyway I can see what is happening ? > > Thanks. > > > Cordialement, > Yann Barraud > > > 2013/9/9 Yann Barraud <[email protected]> > >> Hi Karl, >> >> I've just built Manifold. Now crawling is just fine. No docs visible in >> Elasticsearch though. I'll continue tomorrow PM. >> >> >> Cordialement, >> Yann Barraud >> >> >> 2013/9/9 Karl Wright <[email protected]> >> >>> If you can configure ant to use the local relay, fine - otherwise, you >>> can download the -lib package from here: >>> >>> http://www.apache.org/dyn/closer.cgi/manifoldcf/apache-manifoldcf-1.3-lib.zip >>> >>> You copy the unpacked contents of this into you ManifoldCF tree instead >>> of running ant make-core-deps. For example: >>> >>> cd trunk >>> mkdir lib >>> cd lib >>> xcopy /s <unpacked libs> . >>> >>> Then, you can run "ant build". >>> >>> Karl >>> >>> >>> On Mon, Sep 9, 2013 at 9:12 AM, Yann Barraud <[email protected]>wrote: >>> >>>> I'm behind a corp proxy, but I installed a local relay. 127.0.0.1:8080 >>>> >>>> >>>> Cordialement, >>>> Yann Barraud >>>> >>>> >>>> 2013/9/9 Karl Wright <[email protected]> >>>> >>>>> To clarify, if you want to build the distribution image you are >>>>> familiar with, please take the following steps: >>>>> >>>>> (1) svn co https://svn.apache.org/repos/asf/manifoldcf/trunk >>>>> (2) cd trunk >>>>> (3) ant make-core-deps >>>>> (4) ant build >>>>> (5) cd dist >>>>> >>>>> If you are behind a proxy or firewall, please let me know and I will >>>>> come up with an alternate strategy. >>>>> >>>>> Karl >>>>> >>>>> >>>>> >>>>> >>>>> On Mon, Sep 9, 2013 at 7:00 AM, Karl Wright <[email protected]>wrote: >>>>> >>>>>> Please use the ant build for this. >>>>>> >>>>>> Karl >>>>>> >>>>>> Sent from my Windows Phone >>>>>> ------------------------------ >>>>>> From: Yann Barraud >>>>>> Sent: 9/9/2013 6:51 AM >>>>>> To: user >>>>>> Subject: Re: FileNET integration : issues >>>>>> >>>>>> Hi Karl, >>>>>> >>>>>> Can't build because of missing jar : >>>>>> >>>>>> [INFO] >>>>>>> ------------------------------------------------------------------------ >>>>>>> [INFO] BUILD FAILURE >>>>>>> [INFO] >>>>>>> ------------------------------------------------------------------------ >>>>>>> [INFO] Total time: 9.315s >>>>>>> [INFO] Finished at: Mon Sep 09 12:49:23 CEST 2013 >>>>>>> [INFO] Final Memory: 20M/218M >>>>>>> [INFO] >>>>>>> ------------------------------------------------------------------------ >>>>>>> [ERROR] Failed to execute goal >>>>>>> org.apache.maven.plugins:maven-remote-resources-plugin:1.1:process >>>>>>> (default) on project mcf-agents: Failed to resolve dependencies for one >>>>>>> or >>>>>>> more projects in the reactor. Reason: Missing: >>>>>>> [ERROR] ---------- >>>>>>> [ERROR] 1) org.apache.manifoldcf:mcf-core:test-jar:tests:1.4-SNAPSHOT >>>>>>> [ERROR] >>>>>>> [ERROR] Try downloading the file manually from the project website. >>>>>>> [ERROR] >>>>>>> [ERROR] Then, install it using the command: >>>>>>> [ERROR] mvn install:install-file -DgroupId=org.apache.manifoldcf >>>>>>> -DartifactId=mcf-core -Dversion=1.4-SNAPSHOT -Dclassifier=tests >>>>>>> -Dpackaging=test-jar -Dfile=/path/to/file >>>>>>> [ERROR] >>>>>>> [ERROR] Alternatively, if you host your own repository you can >>>>>>> deploy the file there: >>>>>>> [ERROR] mvn deploy:deploy-file -DgroupId=org.apache.manifoldcf >>>>>>> -DartifactId=mcf-core -Dversion=1.4-SNAPSHOT -Dclassifier=tests >>>>>>> -Dpackaging=test-jar -Dfile=/path/to/file -Durl=[url] >>>>>>> -DrepositoryId=[id] >>>>>>> [ERROR] >>>>>>> [ERROR] Path to dependency: >>>>>>> [ERROR] 1) org.apache.manifoldcf:mcf-agents:jar:1.4-SNAPSHOT >>>>>>> [ERROR] 2) org.apache.manifoldcf:mcf-core:test-jar:tests:1.4-SNAPSHOT >>>>>>> [ERROR] >>>>>>> [ERROR] ---------- >>>>>>> [ERROR] 1 required artifact is missing. >>>>>>> [ERROR] >>>>>>> [ERROR] for artifact: >>>>>>> [ERROR] org.apache.manifoldcf:mcf-agents:jar:1.4-SNAPSHOT >>>>>>> [ERROR] >>>>>>> [ERROR] from the specified remote repositories: >>>>>>> [ERROR] apache.snapshots (http://repository.apache.org/snapshots, >>>>>>> releases=false, snapshots=true), >>>>>>> [ERROR] central (http://repo.maven.apache.org/maven2, >>>>>>> releases=true, snapshots=false) >>>>>>> [ERROR] -> [Help 1] >>>>>>> [ERROR] >>>>>>> [ERROR] To see the full stack trace of the errors, re-run Maven with >>>>>>> the -e switch. >>>>>>> [ERROR] Re-run Maven using the -X switch to enable full debug >>>>>>> logging. >>>>>>> [ERROR] >>>>>>> [ERROR] For more information about the errors and possible >>>>>>> solutions, please read the following articles: >>>>>>> [ERROR] [Help 1] >>>>>>> http://cwiki.apache.org/confluence/display/MAVEN/MojoExecutionException >>>>>>> [ERROR] >>>>>>> [ERROR] After correcting the problems, you can resume the build with >>>>>>> the command >>>>>>> [ERROR] mvn <goals> -rf :mcf-agents >>>>>>> >>>>>> >>>>>> >>>>>> >>>>>> Cordialement, >>>>>> Yann Barraud >>>>>> >>>>>> >>>>>> 2013/9/6 Yann Barraud <[email protected]> >>>>>> >>>>>>> Sorry, I wasn't available today. I'll check on monday. >>>>>>> Le 6 sept. 2013 19:31, "Karl Wright" <[email protected]> a écrit : >>>>>>> >>>>>>> Can you confirm that the filenet connector, when built against the >>>>>>>> stub, now works? I'd like to close the ticket if possible. >>>>>>>> >>>>>>>> Karl >>>>>>>> >>>>>>>> >>>>>>>> >>>>>>>> On Fri, Sep 6, 2013 at 2:06 AM, Karl Wright <[email protected]>wrote: >>>>>>>> >>>>>>>>> I just did an audit of all other places where interfaces may have >>>>>>>>> been used instead of classes, for FileNet, and found several >>>>>>>>> instances. I >>>>>>>>> have committed additional changes accordingly to trunk. >>>>>>>>> Karl >>>>>>>>> >>>>>>>>> >>>>>>>>> >>>>>>>>> On Thu, Sep 5, 2013 at 12:44 PM, Yann Barraud < >>>>>>>>> [email protected]> wrote: >>>>>>>>> >>>>>>>>>> Hi Karl, >>>>>>>>>> >>>>>>>>>> I just forwarded your mail to the team. I'll let you know if it >>>>>>>>>> gets better ASAP. >>>>>>>>>> >>>>>>>>>> Thanks for your support. >>>>>>>>>> >>>>>>>>>> Regards, >>>>>>>>>> Yann >>>>>>>>>> Hi Yann, >>>>>>>>>> >>>>>>>>>> Can you please check out and build >>>>>>>>>> https://svn.apache.org/repos/asf/manifoldcf/trunk , and try >>>>>>>>>> again? Let's see if I got everything right this time. >>>>>>>>>> >>>>>>>>>> Thanks, >>>>>>>>>> Karl >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> >>>>>>>>>> On Thu, Sep 5, 2013 at 11:13 AM, Yann Barraud < >>>>>>>>>> [email protected]> wrote: >>>>>>>>>> >>>>>>>>>>> Thanks a lot. >>>>>>>>>>> Le 5 sept. 2013 17:08, "Karl Wright" <[email protected]> a >>>>>>>>>>> écrit : >>>>>>>>>>> >>>>>>>>>>> Hi Yann, >>>>>>>>>>>> >>>>>>>>>>>> I've opened CONNECTORS-770 to track this issue. >>>>>>>>>>>> >>>>>>>>>>>> It appears that in Java1.7, the Java class loader knows the >>>>>>>>>>>> difference between an interface and a class, and enforces that. >>>>>>>>>>>> So when we >>>>>>>>>>>> went to Java 1.7 in the last release, some of our stub classes, >>>>>>>>>>>> which were >>>>>>>>>>>> coded as interfaces for convenience, no longer load. >>>>>>>>>>>> >>>>>>>>>>>> But luckily this is trivial to fix. I will be committing fixes >>>>>>>>>>>> to trunk for your particular problem shortly. >>>>>>>>>>>> >>>>>>>>>>>> Karl >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> On Thu, Sep 5, 2013 at 10:59 AM, Yann Barraud < >>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>> >>>>>>>>>>>>> Karl, >>>>>>>>>>>>> >>>>>>>>>>>>> This is 4.5.2. >>>>>>>>>>>>> >>>>>>>>>>>>> Hope it will work though. >>>>>>>>>>>>> >>>>>>>>>>>>> Yann >>>>>>>>>>>>> Le 5 sept. 2013 16:55, "Karl Wright" <[email protected]> a >>>>>>>>>>>>> écrit : >>>>>>>>>>>>> >>>>>>>>>>>>> Hi Yann, >>>>>>>>>>>>>> >>>>>>>>>>>>>> The problem is that the code is built against a stub, and the >>>>>>>>>>>>>> stub's class structure does not agree with the actual class >>>>>>>>>>>>>> structure in >>>>>>>>>>>>>> the FileNet API version you are using. The actual error you are >>>>>>>>>>>>>> getting is: >>>>>>>>>>>>>> >>>>>>>>>>>>>> "Error occurred in server thread; nested exception is: >>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: Found >>>>>>>>>>>>>> class com.filenet.api.constants.AccessType, but interface was >>>>>>>>>>>>>> expected" >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> This could be because I messed up creating the stubs, or it >>>>>>>>>>>>>> could be that you are using a later version of FileNet API than >>>>>>>>>>>>>> I was >>>>>>>>>>>>>> working with. What FileNet API version do you have? >>>>>>>>>>>>>> >>>>>>>>>>>>>> Thanks, >>>>>>>>>>>>>> Karl >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>>>> On Thu, Sep 5, 2013 at 10:49 AM, Yann Barraud < >>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>> >>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> W're getting a working connection. It's just rejecting the >>>>>>>>>>>>>>> docs apparently. >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> ERROR 2013-09-05 16:36:22,909 (Worker thread '10') - >>>>>>>>>>>>>>> Exception tossed: Repeated service interruptions - failure >>>>>>>>>>>>>>> getting document >>>>>>>>>>>>>>> version >>>>>>>>>>>>>>> org.apache.manifoldcf.core.interfaces.ManifoldCFException: >>>>>>>>>>>>>>> Repeated service interruptions - failure getting document >>>>>>>>>>>>>>> version >>>>>>>>>>>>>>> at >>>>>>>>>>>>>>> org.apache.manifoldcf.crawler.system.WorkerThread.run(WorkerThread.java:343) >>>>>>>>>>>>>>> WARN 2013-09-05 16:36:23,119 (Worker thread '17') - >>>>>>>>>>>>>>> Pre-ingest service interruption reported for job 1378388244044 >>>>>>>>>>>>>>> connection >>>>>>>>>>>>>>> 'FN_45_INT': Transient error connecting to filenet service: >>>>>>>>>>>>>>> Error occurred >>>>>>>>>>>>>>> in server thread; nested exception is: >>>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: >>>>>>>>>>>>>>> Found class com.filenet.api.constants.AccessType, but interface >>>>>>>>>>>>>>> was expected >>>>>>>>>>>>>>> WARN 2013-09-05 16:36:23,370 (Worker thread '13') - >>>>>>>>>>>>>>> Pre-ingest service interruption reported for job 1378388244044 >>>>>>>>>>>>>>> connection >>>>>>>>>>>>>>> 'FN_45_INT': Transient error connecting to filenet service: >>>>>>>>>>>>>>> Error occurred >>>>>>>>>>>>>>> in server thread; nested exception is: >>>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: >>>>>>>>>>>>>>> Found class com.filenet.api.constants.AccessType, but interface >>>>>>>>>>>>>>> was expected >>>>>>>>>>>>>>> WARN 2013-09-05 16:36:23,460 (Worker thread '11') - >>>>>>>>>>>>>>> Pre-ingest service interruption reported for job 1378388244044 >>>>>>>>>>>>>>> connection >>>>>>>>>>>>>>> 'FN_45_INT': Transient error connecting to filenet service: >>>>>>>>>>>>>>> Error occurred >>>>>>>>>>>>>>> in server thread; nested exception is: >>>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: >>>>>>>>>>>>>>> Found class com.filenet.api.constants.AccessType, but interface >>>>>>>>>>>>>>> was expected >>>>>>>>>>>>>>> WARN 2013-09-05 16:36:25,212 (Worker thread '12') - >>>>>>>>>>>>>>> Pre-ingest service interruption reported for job 1378388244044 >>>>>>>>>>>>>>> connection >>>>>>>>>>>>>>> 'FN_45_INT': Transient error connecting to filenet service: >>>>>>>>>>>>>>> Error occurred >>>>>>>>>>>>>>> in server thread; nested exception is: >>>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: >>>>>>>>>>>>>>> Found class com.filenet.api.constants.AccessType, but interface >>>>>>>>>>>>>>> was expected >>>>>>>>>>>>>>> WARN 2013-09-05 16:36:25,463 (Worker thread '18') - >>>>>>>>>>>>>>> Pre-ingest service interruption reported for job 1378388244044 >>>>>>>>>>>>>>> connection >>>>>>>>>>>>>>> 'FN_45_INT': Transient error connecting to filenet service: >>>>>>>>>>>>>>> Error occurred >>>>>>>>>>>>>>> in server thread; nested exception is: >>>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: >>>>>>>>>>>>>>> Found class com.filenet.api.constants.AccessType, but interface >>>>>>>>>>>>>>> was expected >>>>>>>>>>>>>>> WARN 2013-09-05 16:36:25,463 (Worker thread '15') - >>>>>>>>>>>>>>> Pre-ingest service interruption reported for job 1378388244044 >>>>>>>>>>>>>>> connection >>>>>>>>>>>>>>> 'FN_45_INT': Transient error connecting to filenet service: >>>>>>>>>>>>>>> Error occurred >>>>>>>>>>>>>>> in server thread; nested exception is: >>>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: >>>>>>>>>>>>>>> Found class com.filenet.api.constants.AccessType, but interface >>>>>>>>>>>>>>> was expected >>>>>>>>>>>>>>> WARN 2013-09-05 16:36:25,513 (Worker thread '16') - >>>>>>>>>>>>>>> Pre-ingest service interruption reported for job 1378388244044 >>>>>>>>>>>>>>> connection >>>>>>>>>>>>>>> 'FN_45_INT': Transient error connecting to filenet service: >>>>>>>>>>>>>>> Error occurred >>>>>>>>>>>>>>> in server thread; nested exception is: >>>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: >>>>>>>>>>>>>>> Found class com.filenet.api.constants.AccessType, but interface >>>>>>>>>>>>>>> was expected >>>>>>>>>>>>>>> WARN 2013-09-05 16:36:25,573 (Worker thread '14') - >>>>>>>>>>>>>>> Pre-ingest service interruption reported for job 1378388244044 >>>>>>>>>>>>>>> connection >>>>>>>>>>>>>>> 'FN_45_INT': Transient error connecting to filenet service: >>>>>>>>>>>>>>> Error occurred >>>>>>>>>>>>>>> in server thread; nested exception is: >>>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: >>>>>>>>>>>>>>> Found class com.filenet.api.constants.AccessType, but interface >>>>>>>>>>>>>>> was expected >>>>>>>>>>>>>>> WARN 2013-09-05 16:36:26,704 (Worker thread '1') - >>>>>>>>>>>>>>> Pre-ingest service interruption reported for job 1378388244044 >>>>>>>>>>>>>>> connection >>>>>>>>>>>>>>> 'FN_45_INT': Transient error connecting to filenet service: >>>>>>>>>>>>>>> Error occurred >>>>>>>>>>>>>>> in server thread; nested exception is: >>>>>>>>>>>>>>> java.lang.IncompatibleClassChangeError: >>>>>>>>>>>>>>> Found class com.filenet.api.constants.AccessType, but interface >>>>>>>>>>>>>>> was expected >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> Cordialement, >>>>>>>>>>>>>>> Yann Barraud >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>> 2013/9/5 Karl Wright <[email protected]> >>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Hi Yann, >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> First, you are clearly doing a crawl. But did you get >>>>>>>>>>>>>>>> "Connection working" when you view your FileNet connection? >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> If you did, please have a look at the ManifoldCF log >>>>>>>>>>>>>>>> output. There should be exceptions in there that would help >>>>>>>>>>>>>>>> us figure out >>>>>>>>>>>>>>>> what the issue may be. >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> Thanks, >>>>>>>>>>>>>>>> Karl >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> On Thu, Sep 5, 2013 at 10:08 AM, Yann Barraud < >>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Hi Karl, >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> It just works, thanks. >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Now getting "failure getting document version". Any tip ? >>>>>>>>>>>>>>>>> We did not choose the Version metadata. Might be somewhere in >>>>>>>>>>>>>>>>> the >>>>>>>>>>>>>>>>> confirguration ? >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> Cordialement, >>>>>>>>>>>>>>>>> Yann Barraud >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> 2013/9/5 Karl Wright <[email protected]> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Hi Yann, >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> First, the FileNet connector is one that requires a >>>>>>>>>>>>>>>>>> secondary connector-specific process to run. Please read the >>>>>>>>>>>>>>>>>> "how-to-build-and-deploy" page to familiarize yourself with >>>>>>>>>>>>>>>>>> the process. >>>>>>>>>>>>>>>>>> The FileNet API jars do NOT get copied to connector-lib or >>>>>>>>>>>>>>>>>> connector-lib-proprietary; they instead get copied into the >>>>>>>>>>>>>>>>>> filenet-server-process/lib-proprietary area. Read the >>>>>>>>>>>>>>>>>> README.TXT file in >>>>>>>>>>>>>>>>>> that area for details. You will need to copy ALL the jars >>>>>>>>>>>>>>>>>> that the filenet >>>>>>>>>>>>>>>>>> API requires into that place before the filenet server >>>>>>>>>>>>>>>>>> process can be >>>>>>>>>>>>>>>>>> started. >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> Karl >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> On Thu, Sep 5, 2013 at 6:04 AM, Yann Barraud < >>>>>>>>>>>>>>>>>> [email protected]> wrote: >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Hi, >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> I just deployed binary distribution of ManifoldCF on a >>>>>>>>>>>>>>>>>>> local VM & trying to have it running. >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> I'm facing 3 issues right now : >>>>>>>>>>>>>>>>>>> 1. "java.lang.NoClassDefFoundError: >>>>>>>>>>>>>>>>>>> org/apache/log4j/Priority" >>>>>>>>>>>>>>>>>>> 2. "java.lang.NoClassDefFoundError: Could not >>>>>>>>>>>>>>>>>>> initialize class >>>>>>>>>>>>>>>>>>> com.filenet.api.util.ConfigurationParameters" >>>>>>>>>>>>>>>>>>> 3. "java.util.MissingResourceException: Can't find >>>>>>>>>>>>>>>>>>> bundle for base name org.apache.manifoldcf.ui.i18n.common, >>>>>>>>>>>>>>>>>>> locale fr"(which is a minor warning I guess) >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Which are the jars I should deploy & where ? I have >>>>>>>>>>>>>>>>>>> Jace.jar placed in >>>>>>>>>>>>>>>>>>> - connector-lib-proprietary >>>>>>>>>>>>>>>>>>> - filenet-server-process >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> What do I miss ? >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Thanks ! >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>> Regards, >>>>>>>>>>>>>>>>>>> Yann Barraud >>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>> >>>>>>>>>>>>>>> >>>>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>> >>>>>>>>> >>>>>>>> >>>>>> >>>>> >>>> >>> >> >
