I have a trials, which using larger stimuli list but I want to present only few of them, randomly selected and in random order…

In details: I have trial which contains given sequence of events - e.g. ABC, and each events contains a list of stimli from A1 to A10, B1 - B10 and so on. Another trial contains different order of events e.g. BCA, but again each event contain a list of stimuli.

Now, I would like to randomly pick up only 2 from 10 possible trials in each order (so, only 2 from the order ABC, and 2 form BCA) and present it randomly within a block… is it possible?

What I did for now is to create a block which contain a two trials (ABC and BCA) and made a macro to randomly select 4 trials, but I’m unable to make it counterbalanced (what SL does is selecting 4 trails from 20 possible ABC/BCA, but not 2 from ABC and 2 from BCA)… Another way I invented was to create two blocks separetly for ABC and BCA, but then the trials are not presented in random order (so first it goes with two trials randomly chosen from ABC and then 2 from BCA)

Is there any other way to do it?