code: public static void main(final String[] args) {
          Switch about = new Switch("a", "about", "display about message");
          Switch help = new Switch("h", "help", "display help message");
          FileArgument firstFastqFile = new FileArgument("1", "first-fastq-file", "first FASTQ input file", true);
          FileArgument secondFastqFile = new FileArgument("2", "second-fastq-file", "second FASTQ input file", true);
          FileArgument pairedFile = new FileArgument("p", "paired-file", "output interleaved paired FASTQ file", true);
          FileArgument unpairedFile = new FileArgument("u", "unpaired-file", "output unpaired FASTQ file", true);
  
          ArgumentList arguments = new ArgumentList(about, help, firstFastqFile, secondFastqFile, pairedFile, unpairedFile);
          CommandLine commandLine = new CommandLine(args);
  
          InterleaveFastq interleaveFastq = null;
          try {
              CommandLineParser.parse(commandLine, arguments);
              if (about.wasFound()) {
                  About.about(System.out);
                  System.exit(0);
              }
              if (help.wasFound()) {
                  Usage.usage(USAGE, null, commandLine, arguments, System.out);
                  System.exit(0);
              }
              interleaveFastq = new InterleaveFastq(firstFastqFile.getValue(), secondFastqFile.getValue(), pairedFile.getValue(), unpairedFile.getValue());
          }
          catch (CommandLineParseException e) {
              if (about.wasFound()) {
                  About.about(System.out);
                  System.exit(0);
              }
              if (help.wasFound()) {
                  Usage.usage(USAGE, null, commandLine, arguments, System.out);
                  System.exit(0);
              }
              Usage.usage(USAGE, e, commandLine, arguments, System.err);
              System.exit(-1);
          }
          try {
              System.exit(interleaveFastq.call());
          }
          catch (Exception e) {
              e.printStackTrace();
              System.exit(1);
          }
      }
docs: Main.
  
  @param args command line args