private static ExceptionData findMatchingException(Stacktrace currentStacktrace) {
		ExceptionData matchedException = null;
		for (ExceptionData exceptionData : exceptions) {
			boolean match = false;
			Stacktrace stacktrace = exceptionData.getStacktrace();
			int lineDiff  = Math.abs(currentStacktrace.getLines().size() - stacktrace.getLines().size());
			if (lineDiff == 0) {
				int differentLines = 0;
				List<String> currentLines = currentStacktrace.getLines();
				List<String> lines = stacktrace.getLines();
				match = true;
				for(int i = 0; i < lines.size(); i++) {
					if (!lines.get(i).equals(currentLines.get(i))) {
						differentLines++;
					}
					if (differentLines > DIFFERENT_STACKTRACE_LINES_THRESHOLD) {
						match = false;
						break;
					}
				}
			}
			if (match) {
				matchedException = exceptionData;
				break;
			}
		}
		return matchedException;
	}