The list of words and answers is built before the exercise is ran to prevent list generation logic from interfering with application timing. The algorithm first figures out a max condition count for the condition balancer. Count is determined by diving the conditions list length by the trials amount for the experiment. It then rounds that to the next highest even number. Then the algorithm creates a balancer based on conditions specified in Advanced Settings to keep conditions balanced during list generation. The algorithm then loops to create the list. If the conditions are set to be random in Advanced Settings on each loop a condition is randomly selected then the balancer is checked to make sure the condition is not used more than the max condition count. If it is not used more than the max count the condition is added to the list. The cards are then randomized and the loop continues until trial length has been met. If the conditions are not set to random the algorithm adds conditions to the list in the order specified in the cogTK doc. The balancer is checked on each loop to make sure the condition is not used more than the max condition count. The cards are then randomized and the loop continues until trial length has been met. Once the list has been generated the algorithm returns and the experiment begins.