public final void makeroom(int nbefore, int nafter) {
		if (value != null) {
			LuaString s = value.strvalue();
			value = null;
			length = s.m_length;
			offset = nbefore;
			bytes = new byte[nbefore + length + nafter];
			System.arraycopy(s.m_bytes, s.m_offset, bytes, offset, length);
		} else if (offset + length + nafter > bytes.length || offset < nbefore) {
			int n = nbefore + length + nafter;
			int m = n < 32 ? 32 : n < length * 2 ? length * 2 : n;
			realloc(m, nbefore == 0 ? 0 : m - length - nafter);
		}
	}