public Name replace(byte from, byte to) {
        byte[] names = table.names;
        int i = 0;
        while (i < len) {
            if (names[index + i] == from) {
                byte[] bs = new byte[len];
                System.arraycopy(names, index, bs, 0, i);
                bs[i] = to;
                i++;
                while (i < len) {
                    byte b = names[index + i];
                    bs[i] = b == from ? to : b;
                    i++;
                }
                return fromUtf(table, bs, 0, len);
            }
            i++;
        }
        return this;
    }