} else if (value instanceof Integer) { out.writeByte(3); out.writeInt(((Integer) value).intValue());
	private void writeMap(DataOutputStream out, Map source) throws IOException {		if (source == null) {			out.writeInt(0);		} else {			out.writeInt(source.size());			Iterator iter = source.keySet().iterator();			while (iter.hasNext()) {				String key = (String) iter.next();				Object value = source.get(key);				writeStringOrNull(key, out);				if (value instanceof String) {					out.writeByte(0);					writeStringOrNull((String) value, out);				} else if (value instanceof String[]) {					out.writeByte(1);					writeList(out, (String[]) value);				} else if (value instanceof Boolean) {					out.writeByte(2);					out.writeBoolean(((Boolean) value).booleanValue());				}			}		}	}