public static void main(String[] args) {
		try {
			initParameters(args);
			
			File file = new File(filePath);
			Input input = InputReader.readInput(file);
			
			List<Cluster> clusters = DBScan.run(input.getTimeSeries(), eps, minNrOfNeighbours);
			
			runPlotPrintingThread(input, clusters);
			runClusterPlotScriptBuilderThread(input, clusters);
			runErrorbarsPrintingThread(input, clusters);
			runClusterErrorbarsScriptBuilderThread(input, clusters);
		} catch (InterruptedException e) {
			e.printStackTrace();
		} catch (InputException e) {
			System.out.println(e.getMessage());
		} catch (InputMismatchException e) {
			printHelpMessage();
		} catch (ExecutionException e) {
			printErrorMessage();
		}
	}