int nextBytes(byte[] bytes,int offset,int length) {
		if (length==0) return 0;
		if (offset<0||offset>=bytes.length||length+offset>bytes.length||length<0)
			throw new ArrayIndexOutOfBoundsException("byte["+bytes.length+"]; offset="+offset+"; length="+length);

		try {
			quota-=length*8;
			LOG.trace("nextBytes(byte["+length+"])");
			String response = get(FETCH+length,0);
			if (response==null) return 0;
			int end=-1,start=0;
			for (int i=0;i<length;i++) {
				start=end+1;
				end=response.indexOf('\t',start);
				try {
					bytes[i+offset]=Byte.parseByte(response.substring(start, end));
				} catch (Exception e) {
					LOG.error(e);
					return i;
				}
			}
			return length;
		} catch (Exception e) {
			logException(e);
			return 0;
		}
	}