match products rewritten back to slices&channels, finally marshall works as expected