for (i = 0; i < currentData.length; ++i)
if (Arrays.binarySearch(dataBijection, i) < 0)
builder.put(currentData[i]);
builder.put(cp.getFactor().divide(fromFactor));
current = builder.build();
if (!(current instanceof Product))
break;
cp = (Product) current;
}
iterator.set(current);