private void writeArray(List<Byte> ret, Object[] val) throws EncodingException, NotImplementedException
	{
		writeInt(ret, (val.length << 1) | 1);
		ret.add((byte)0x01);
		for (Object obj : val)
			encode(ret, obj);
	}