final IDocumentMatcher binaryMatcher = new ConditionalAnalyser(binaryGuesser, binaryAnalyser);
final IDocumentMatcher noticeMatcher = new ConditionalAnalyser(noteGuesser, noticeAnalyser);
final IDocumentMatcher archiveMatcher = new ConditionalAnalyser(archiveGuesser, archiveAnalyser);
final IDocumentMatcher[] matchers = {noticeMatcher, archiveMatcher, binaryMatcher};
final IDocumentMatcher specialDocumentMatcher = new DocumentMatcherMultiplexer(matchers);
final IDocumentMatcher documentMatcher = new MatchNegator(specialDocumentMatcher);
final ConditionalAnalyser result = new ConditionalAnalyser(documentMatcher, standardAnalyser);
return result;
}