private ArrayList<String> compareOutput(String actOut, String expOut,
			String otherChannelOut, String channnelId, String otherChannelId) {
		ArrayList<String> extractedVariables = new ArrayList<String>();
		if (expOut.equals("-")) {
			if (actOut.length() < 1) {
				fail();
				print("expected some output on " + channnelId
						+ "out, no output found");
				if (otherChannelOut.length() > 0) {
					print("actual output on " + otherChannelId + "out:");
					print(otherChannelOut);
				}
			}
		} else {
			String[] splittedExpOut = expOut.split("<:>");
			boolean compareFailed = false;
			int i = 0;
			int ind = 0;
			while (!compareFailed && i < splittedExpOut.length) {
				int nextMatch = actOut.indexOf(splittedExpOut[i], ind);
	//			if (nextMatch < 0 || (i==0 && nextMatch>0)) {
				if (nextMatch < 0 ) {
					fail();
					compareFailed = true;
					print("expected output on " + channnelId + "out:");
					print(expOut);
					print("actual output on " + channnelId + "out:");
					print(actOut);
					if (otherChannelOut.length() > 0) {
						print("actual output on " + otherChannelId + "out:");
						print(otherChannelOut);
					}
				} else {
	//				if (nextMatch > ind) {
					if (nextMatch > ind && i>0) {
						extractedVariables.add(actOut.substring(ind, nextMatch));
					}
					ind = nextMatch + splittedExpOut[i].length();
				}
				i++;
			}
			
		}
		return extractedVariables;
	}