Do we need the "iter" in "trans_iter_shape"?
Actually, isn't this variable a duplicate of "res_shape"?