@SuppressWarnings("unchecked")
	public CodeMapT<T> set(final int index, final T value) {
		final int i0 = index >>> 24;
		T[][] map1;

		if (i0 != 0) {
			if (map == null)
				map = (T[][][]) new Object[MAX_INDEX_ZERO][][];

			map1 = map[i0];
			if (map1 == null)
				map1 = map[i0] = (T[][]) new Object[MAX_INDEX_ONE][];
		} else
			map1 = map10;

		final int i1 = (index >>> 12) & 0xfff;
		T[] map2 = map1[i1];
		if (map2 == null)
			map2 = map1[i1] = (T[]) new Object[MAX_INDEX_TWO];

		map2[index & 0xfff] = value;
		return this;
	}