Just to see if sub-events worked as expected and if you could have repeat for each instance within a repeat for each instance within a repeat for each instance, I created the following scenario.
We have 3 groups.
Objects (or Tools or O) - There are 3 instances of them.
People (or Humans or P) - There are 2 instances of them.
Animals (or Pets or A) - There are 4 instances of them.
Per this code, when we hit space the following happens. I am neating it so, we can see it better.
O1, P1 - A1, A2, A3, A4
O1, P2 - A5, A6, A7, A8
O2, P3 - A9, A10, A11, A12
O2, P4 - A13, A14, A15, A16
O3, P5 - A17, A18, A19, A20
O3, P6 - A21, A22, A23, A24
Looking at this, basically, the way the repeats execute seem logical.
It starts with Object (top-most) and then goes inward to Pet (middle) and then to Animals (bottom-most) - resolves all of Animals as it is the inner most and then goes back up one level to Pet (which has sub-set of animal again).
So essentially we are expecting.
Object to execute 3 times.
People to execute 3x2 = 6 times.
Animal to execute 3x2x4 = 24 times.