IndexlessWrapper indexlessContainer = new IndexlessWrapper();
DataWrapper dataContainer = new DataWrapper();
Product p;
for (Tensor current : tensors) {
if (current instanceof Complex)
factor = factor.multiply((Complex) current);
else if (current instanceof Product) {
p = (Product) current;
indexlessContainer.add(p.indexlessData);
dataContainer.add(p.data, p.contentReference.getReferent(), p.indices);
factor = factor.multiply(p.factor);