public static ArrayList<Object> parseList(StringBuffer buf, int[] idx) {
		idx[0]++;
		ArrayList<Object> into = new ArrayList<Object>();
		while (true) {
			skipSpace(buf, idx);
			if (idx[0] >= buf.length()) {
				System.err.println("Unexpected end");
				return into;
			}
			if (buf.charAt(idx[0]) == ']') {
				idx[0]++;
				return into; // Done
			}
			if (buf.charAt(idx[0]) == ',') {
				idx[0]++;
				continue; // skip commas, don't check for errors
			}
			into.add(parseObject(buf, idx));
		}
	}