Multiplication in Data Tree

Hello, I’m struggling with some multiplication between data trees:

I have a tree like this (the most simple version, there can be any amount of the 3 different metrics):

{0;0}
a0a
a0b
{0;1}
a1a
a1b
{0;2}
a2a
a2b
{1;0}
b0a
b0b
{1;1}
b1a
b1b
{1;2}
b2a
b2b

And I want to multiply it by this (the length of this will always match the length of the highest level in the prior tree)

{0}
x1
{1}
x2

Such that it results in

{0;0}
a0a * x1
a0b * x1
{0;1}
a1a * x1
a1b * x1
{0;2}
a2a * x1
a2b * x1
{1;0}
b0a * x2
b0b * x2
{1;1}
b1a * x2
b1b * x2
{1;2}
b2a * x2
b2b * x2

I’ve tried all the combinations of simplification/grafting that I can find… I used (inelegantly) DuplicateDataMatch for a similar problem elsewhere but haven’t managed to make that work in this instance.

Any help would be appreciated :slight_smile:
And sorry if my language is confusing, I haven’t got Grasshopper lingo down yet!

Sample internalised data:
ringhelp.gh (8.3 KB)

As I understand it I think you want to do this…

ringhelp_MG.gh (25.0 KB)

1 Like

Hello Charlotte,
Is this what you’re looking to achieve ?

Similar to @mattgaydon 's solution but with trim.
2018-12-17%2015_40_25-Grasshopper%20-%20ringhelp_

Thank you all!