@SuppressWarnings("unchecked") private void preprocessRoute( BaseRoute routeToWrite, NavigationFormat format, boolean duplicateFirstPosition, ParserCallback parserCallback) { if (format instanceof NmnFormat) routeToWrite.removeDuplicates(); if (format instanceof NmnFormat && duplicateFirstPosition) routeToWrite.add(0, ((NmnFormat) format).getDuplicateFirstPosition(routeToWrite)); if (format instanceof CoPilotFormat && duplicateFirstPosition) routeToWrite.add(0, ((CoPilotFormat) format).getDuplicateFirstPosition(routeToWrite)); if (format instanceof TcxFormat) routeToWrite.ensureIncreasingTime(); if (parserCallback != null) parserCallback.preprocess(routeToWrite, format); }