private void print(Object result) throws IOException {
		if (result instanceof Iterable) {
			for (Object e : ((Iterable) result)) {
				print(e);
			}
		} else if (result instanceof Map) {
			for (Map.Entry<?, ?> entry : ((Map<?, ?>) result).entrySet()) {
				writeLine(entry.getKey() + "\t" + entry.getValue());
			}
		} else {
			writeLine(String.valueOf(result));
		}
	}