Categorial AX discrimination (multiple events in one trial)

Hi. I’m trying to set up a speech experiment called “categorial AX discrimination”. The following is the basic structure of the experiment.

A (a sound stimulus (e.g., “light”)) - ISI (e.g., 500 ms) - X (a sound stimulus (e.g., “right”)) - Response (either “d (different)” or “s” (same)) -ISI (e.g., 3000 ms (inter-trial-interval)

A sound stimulus (e.g., “light”) is made up of 16 different stimuli spoken by different speakers (i.e., light1, light2, … light 16).

A participant’s task is to renspond “same” when the two stimuli are the same word (e.g., “light1-light6”) or different (e.g., “light3-right2”), regardless of the speaker.

There are 10 blocks and one block has 16 trials, with four stimulus orders (i.e., “light-light”, “light-right”, “right-light”, “right-right”) being counterbalanced.

I created a program where one block consists of four events.
Audio1 - ISI (1500ms) -Audio2 (with a response) - ISI (3000 ms)

My question is whether and how I can make use of a stimulus list and randomize presentation of the stimuli for both Audio1 and Audio2. In this case, each of Audio1 and Audio2 uses a list of 32 stimuli (i.e, 16 “light”, and 16 “right” stimuli), and one stimulus is picked up when a trial is run.

When I tried to set up the program, I found that, when rendomization is turned on at the trial level, all the events (i.e., Audio1, ISI, Audio2, ISI) were randomized. “Except the first one”, and Except the last one" will not work in this case as the order of events should be held constant.

Please let me know if there are some clever way of creating a program, or if ther are some existing examples that I can refer to.

Thank you very much for your help.

Correction

I’m sorry. I found a grave mistake in my previous post.

9th line from the top;

I created a program where one trial (NOT BLOCK) consists of four events.
Audio1 - ISI (1500ms) -Audio2 (with a response) - ISI (3000 ms)