/********************** * Sopajsshuffle Test * **********************/ import { core, data, sound, util, visual, hardware } from './lib/psychojs-2022.2.0.js'; const { PsychoJS } = core; const { TrialHandler, MultiStairHandler } = data; const { Scheduler } = util; //some handy aliases as in the psychopy scripts; const { abs, sin, cos, PI: pi, sqrt } = Math; const { round } = util; // store info about the experiment session: let expName = 'SopaJsShuffle'; // from the Builder filename that created this script let expInfo = { 'participant': '', 'session': '001', 'age': '', 'gender': '', }; // Start code blocks for 'Before Experiment' // init psychoJS: const psychoJS = new PsychoJS({ debug: true }); // open window: psychoJS.openWindow({ fullscr: true, color: new util.Color([0,0,0]), units: 'height', waitBlanking: true }); // schedule the experiment: psychoJS.schedule(psychoJS.gui.DlgFromDict({ dictionary: expInfo, title: expName })); const flowScheduler = new Scheduler(psychoJS); const dialogCancelScheduler = new Scheduler(psychoJS); psychoJS.scheduleCondition(function() { return (psychoJS.gui.dialogComponent.button === 'OK'); }, flowScheduler, dialogCancelScheduler); // flowScheduler gets run if the participants presses OK flowScheduler.add(updateInfo); // add timeStamp flowScheduler.add(experimentInit); const trials_2LoopScheduler = new Scheduler(psychoJS); flowScheduler.add(trials_2LoopBegin(trials_2LoopScheduler)); flowScheduler.add(trials_2LoopScheduler); flowScheduler.add(trials_2LoopEnd); const trialsLoopScheduler = new Scheduler(psychoJS); flowScheduler.add(trialsLoopBegin(trialsLoopScheduler)); flowScheduler.add(trialsLoopScheduler); flowScheduler.add(trialsLoopEnd); flowScheduler.add(ByeByeRoutineBegin()); flowScheduler.add(ByeByeRoutineEachFrame()); flowScheduler.add(ByeByeRoutineEnd()); flowScheduler.add(quitPsychoJS, '', true); // quit if user presses Cancel in dialog box: dialogCancelScheduler.add(quitPsychoJS, '', false); psychoJS.start({ expName: expName, expInfo: expInfo, resources: [ {'name': 'images/130_06_03.jpg', 'path': 'images/130_06_03.jpg'}, {'name': 'images/81.jpg', 'path': 'images/81.jpg'}, {'name': 'images/117_08_03.jpg', 'path': 'images/117_08_03.jpg'}, {'name': 'images/172.jpg', 'path': 'images/172.jpg'}, {'name': 'images/181_08_03.jpg', 'path': 'images/181_08_03.jpg'}, {'name': 'images/10_08_03.jpg', 'path': 'images/10_08_03.jpg'}, {'name': 'images/195.jpg', 'path': 'images/195.jpg'}, {'name': 'images/185_06_03.jpg', 'path': 'images/185_06_03.jpg'}, {'name': 'images/57.jpg', 'path': 'images/57.jpg'}, {'name': 'images/91_07_03.jpg', 'path': 'images/91_07_03.jpg'}, {'name': 'images/111_08_03.jpg', 'path': 'images/111_08_03.jpg'}, {'name': 'images/116.jpg', 'path': 'images/116.jpg'}, {'name': 'Instructions/Slide12.JPG', 'path': 'Instructions/Slide12.JPG'}, {'name': 'images/136.jpg', 'path': 'images/136.jpg'}, {'name': 'images/125_07_03.jpg', 'path': 'images/125_07_03.jpg'}, {'name': 'images/151_08_03.jpg', 'path': 'images/151_08_03.jpg'}, {'name': 'images/66_06_03.jpg', 'path': 'images/66_06_03.jpg'}, {'name': 'images/101_06_03.jpg', 'path': 'images/101_06_03.jpg'}, {'name': 'images/187_06_03.jpg', 'path': 'images/187_06_03.jpg'}, {'name': 'images/152_06_03.jpg', 'path': 'images/152_06_03.jpg'}, {'name': 'images/27_06_03.jpg', 'path': 'images/27_06_03.jpg'}, {'name': 'Instructions/Slide8.JPG', 'path': 'Instructions/Slide8.JPG'}, {'name': 'images/44_07_03.jpg', 'path': 'images/44_07_03.jpg'}, {'name': 'images/116_06_03.jpg', 'path': 'images/116_06_03.jpg'}, {'name': 'images/14.jpg', 'path': 'images/14.jpg'}, {'name': 'images/110.jpg', 'path': 'images/110.jpg'}, {'name': 'images/38_07_03.jpg', 'path': 'images/38_07_03.jpg'}, {'name': 'images/44.jpg', 'path': 'images/44.jpg'}, {'name': 'images/162_06_03.jpg', 'path': 'images/162_06_03.jpg'}, {'name': 'images/137_06_03.jpg', 'path': 'images/137_06_03.jpg'}, {'name': 'images/163_08_03.jpg', 'path': 'images/163_08_03.jpg'}, {'name': 'images/30_08_03.jpg', 'path': 'images/30_08_03.jpg'}, {'name': 'images/180_08_03.jpg', 'path': 'images/180_08_03.jpg'}, {'name': 'images/15_07_03.jpg', 'path': 'images/15_07_03.jpg'}, {'name': 'images/74_07_03.jpg', 'path': 'images/74_07_03.jpg'}, {'name': 'images/92_07_03.jpg', 'path': 'images/92_07_03.jpg'}, {'name': 'images/53_06_03.jpg', 'path': 'images/53_06_03.jpg'}, {'name': 'images/101_08_03.jpg', 'path': 'images/101_08_03.jpg'}, {'name': 'images/144_08_03.jpg', 'path': 'images/144_08_03.jpg'}, {'name': 'images/19_06_03.jpg', 'path': 'images/19_06_03.jpg'}, {'name': 'images/168.jpg', 'path': 'images/168.jpg'}, {'name': 'images/197_07_03.jpg', 'path': 'images/197_07_03.jpg'}, {'name': 'images/146_07_03.jpg', 'path': 'images/146_07_03.jpg'}, {'name': 'images/90_08_03.jpg', 'path': 'images/90_08_03.jpg'}, {'name': 'images/67_07_03.jpg', 'path': 'images/67_07_03.jpg'}, {'name': 'images/82_08_03.jpg', 'path': 'images/82_08_03.jpg'}, {'name': 'images/94_08_03.jpg', 'path': 'images/94_08_03.jpg'}, {'name': 'images/157_07_03.jpg', 'path': 'images/157_07_03.jpg'}, {'name': 'Instructions/Slide2.JPG', 'path': 'Instructions/Slide2.JPG'}, {'name': 'images/17_06_03.jpg', 'path': 'images/17_06_03.jpg'}, {'name': 'images/107.jpg', 'path': 'images/107.jpg'}, {'name': 'images/145.jpg', 'path': 'images/145.jpg'}, {'name': 'images/113_08_03.jpg', 'path': 'images/113_08_03.jpg'}, {'name': 'images/65_08_03.jpg', 'path': 'images/65_08_03.jpg'}, {'name': 'images/2.jpg', 'path': 'images/2.jpg'}, {'name': 'images/48_08_03.jpg', 'path': 'images/48_08_03.jpg'}, {'name': 'images/110_06_03.jpg', 'path': 'images/110_06_03.jpg'}, {'name': 'images/135_08_03.jpg', 'path': 'images/135_08_03.jpg'}, {'name': 'images/139_08_03.jpg', 'path': 'images/139_08_03.jpg'}, {'name': 'images/126_07_03.jpg', 'path': 'images/126_07_03.jpg'}, {'name': 'images/124_08_03.jpg', 'path': 'images/124_08_03.jpg'}, {'name': 'images/167_07_03.jpg', 'path': 'images/167_07_03.jpg'}, {'name': 'images/99_06_03.jpg', 'path': 'images/99_06_03.jpg'}, {'name': 'images/157.jpg', 'path': 'images/157.jpg'}, {'name': 'images/102.jpg', 'path': 'images/102.jpg'}, {'name': 'images/119_07_03.jpg', 'path': 'images/119_07_03.jpg'}, {'name': 'images/181_06_03.jpg', 'path': 'images/181_06_03.jpg'}, {'name': 'images/70_08_03.jpg', 'path': 'images/70_08_03.jpg'}, {'name': 'images/153.jpg', 'path': 'images/153.jpg'}, {'name': 'images/179.jpg', 'path': 'images/179.jpg'}, {'name': 'Instructions/Slide7.JPG', 'path': 'Instructions/Slide7.JPG'}, {'name': 'images/52_07_03.jpg', 'path': 'images/52_07_03.jpg'}, {'name': 'images/167.jpg', 'path': 'images/167.jpg'}, {'name': 'images/102_06_03.jpg', 'path': 'images/102_06_03.jpg'}, {'name': 'images/100_08_03.jpg', 'path': 'images/100_08_03.jpg'}, {'name': 'images/195_06_03.jpg', 'path': 'images/195_06_03.jpg'}, {'name': 'images/82_07_03.jpg', 'path': 'images/82_07_03.jpg'}, {'name': 'images/75_06_03.jpg', 'path': 'images/75_06_03.jpg'}, {'name': 'images/37_08_03.jpg', 'path': 'images/37_08_03.jpg'}, {'name': 'images/91.jpg', 'path': 'images/91.jpg'}, {'name': 'images/126_06_03.jpg', 'path': 'images/126_06_03.jpg'}, {'name': 'images/157_06_03.jpg', 'path': 'images/157_06_03.jpg'}, {'name': 'images/100_07_03.jpg', 'path': 'images/100_07_03.jpg'}, {'name': 'images/168_06_03.jpg', 'path': 'images/168_06_03.jpg'}, {'name': 'images/7_08_03.jpg', 'path': 'images/7_08_03.jpg'}, {'name': 'images/22_06_03.jpg', 'path': 'images/22_06_03.jpg'}, {'name': 'images/95_06_03.jpg', 'path': 'images/95_06_03.jpg'}, {'name': 'images/94_07_03.jpg', 'path': 'images/94_07_03.jpg'}, {'name': 'Instructions/Slide1.JPG', 'path': 'Instructions/Slide1.JPG'}, {'name': 'images/97.jpg', 'path': 'images/97.jpg'}, {'name': 'images/36_08_03.jpg', 'path': 'images/36_08_03.jpg'}, {'name': 'images/52_06_03.jpg', 'path': 'images/52_06_03.jpg'}, {'name': 'images/64_07_03.jpg', 'path': 'images/64_07_03.jpg'}, {'name': 'images/182.jpg', 'path': 'images/182.jpg'}, {'name': 'images/173.jpg', 'path': 'images/173.jpg'}, {'name': 'images/107_08_03.jpg', 'path': 'images/107_08_03.jpg'}, {'name': 'images/159_06_03.jpg', 'path': 'images/159_06_03.jpg'}, {'name': 'images/28_06_03.jpg', 'path': 'images/28_06_03.jpg'}, {'name': 'images/134_06_03.jpg', 'path': 'images/134_06_03.jpg'}, {'name': 'images/115_07_03.jpg', 'path': 'images/115_07_03.jpg'}, {'name': 'images/53_07_03.jpg', 'path': 'images/53_07_03.jpg'}, {'name': 'images/90.jpg', 'path': 'images/90.jpg'}, {'name': 'images/51.jpg', 'path': 'images/51.jpg'}, {'name': 'images/161.jpg', 'path': 'images/161.jpg'}, {'name': 'images/109_06_03.jpg', 'path': 'images/109_06_03.jpg'}, {'name': 'images/47_06_03.jpg', 'path': 'images/47_06_03.jpg'}, {'name': 'images/132_07_03.jpg', 'path': 'images/132_07_03.jpg'}, {'name': 'images/96_06_03.jpg', 'path': 'images/96_06_03.jpg'}, {'name': 'images/184_06_03.jpg', 'path': 'images/184_06_03.jpg'}, {'name': 'images/109.jpg', 'path': 'images/109.jpg'}, {'name': 'images/165.jpg', 'path': 'images/165.jpg'}, {'name': 'images/19_07_03.jpg', 'path': 'images/19_07_03.jpg'}, {'name': 'images/142.jpg', 'path': 'images/142.jpg'}, {'name': 'images/60_06_03.jpg', 'path': 'images/60_06_03.jpg'}, {'name': 'images/156_08_03.jpg', 'path': 'images/156_08_03.jpg'}, {'name': 'images/54_06_03.jpg', 'path': 'images/54_06_03.jpg'}, {'name': 'images/73_07_03.jpg', 'path': 'images/73_07_03.jpg'}, {'name': 'images/90_06_03.jpg', 'path': 'images/90_06_03.jpg'}, {'name': 'images/174_08_03.jpg', 'path': 'images/174_08_03.jpg'}, {'name': 'images/35_06_03.jpg', 'path': 'images/35_06_03.jpg'}, {'name': 'images/86_06_03.jpg', 'path': 'images/86_06_03.jpg'}, {'name': 'images/189_08_03.jpg', 'path': 'images/189_08_03.jpg'}, {'name': 'images/169_08_03.jpg', 'path': 'images/169_08_03.jpg'}, {'name': 'images/151.jpg', 'path': 'images/151.jpg'}, {'name': 'images/34_07_03.jpg', 'path': 'images/34_07_03.jpg'}, {'name': 'images/167_08_03.jpg', 'path': 'images/167_08_03.jpg'}, {'name': 'images/180_07_03.jpg', 'path': 'images/180_07_03.jpg'}, {'name': 'Instructions/Slide11.JPG', 'path': 'Instructions/Slide11.JPG'}, {'name': 'Instructions/Slide14.JPG', 'path': 'Instructions/Slide14.JPG'}, {'name': 'images/37_06_03.jpg', 'path': 'images/37_06_03.jpg'}, {'name': 'images/16.jpg', 'path': 'images/16.jpg'}, {'name': 'images/184.jpg', 'path': 'images/184.jpg'}, {'name': 'images/25_08_03.jpg', 'path': 'images/25_08_03.jpg'}, {'name': 'images/24_06_03.jpg', 'path': 'images/24_06_03.jpg'}, {'name': 'images/75.jpg', 'path': 'images/75.jpg'}, {'name': 'images/102_07_03.jpg', 'path': 'images/102_07_03.jpg'}, {'name': 'images/138_06_03.jpg', 'path': 'images/138_06_03.jpg'}, {'name': 'images/154_07_03.jpg', 'path': 'images/154_07_03.jpg'}, {'name': 'images/60_07_03.jpg', 'path': 'images/60_07_03.jpg'}, {'name': 'images/134_07_03.jpg', 'path': 'images/134_07_03.jpg'}, {'name': 'images/61_08_03.jpg', 'path': 'images/61_08_03.jpg'}, {'name': 'images/52_08_03.jpg', 'path': 'images/52_08_03.jpg'}, {'name': 'images/141_08_03.jpg', 'path': 'images/141_08_03.jpg'}, {'name': 'images/45_06_03.jpg', 'path': 'images/45_06_03.jpg'}, {'name': 'images/127_07_03.jpg', 'path': 'images/127_07_03.jpg'}, {'name': 'images/146_06_03.jpg', 'path': 'images/146_06_03.jpg'}, {'name': 'images/61_06_03.jpg', 'path': 'images/61_06_03.jpg'}, {'name': 'images/119_08_03.jpg', 'path': 'images/119_08_03.jpg'}, {'name': 'images/176_07_03.jpg', 'path': 'images/176_07_03.jpg'}, {'name': 'images/73_08_03.jpg', 'path': 'images/73_08_03.jpg'}, {'name': 'images/143_07_03.jpg', 'path': 'images/143_07_03.jpg'}, {'name': 'images/69_08_03.jpg', 'path': 'images/69_08_03.jpg'}, {'name': 'images/77_07_03.jpg', 'path': 'images/77_07_03.jpg'}, {'name': 'images/56_07_03.jpg', 'path': 'images/56_07_03.jpg'}, {'name': 'images/93_06_03.jpg', 'path': 'images/93_06_03.jpg'}, {'name': 'images/76_06_03.jpg', 'path': 'images/76_06_03.jpg'}, {'name': 'images/69.jpg', 'path': 'images/69.jpg'}, {'name': 'images/13_06_03.jpg', 'path': 'images/13_06_03.jpg'}, {'name': 'images/63_08_03.jpg', 'path': 'images/63_08_03.jpg'}, {'name': 'images/105_08_03.jpg', 'path': 'images/105_08_03.jpg'}, {'name': 'images/166_06_03.jpg', 'path': 'images/166_06_03.jpg'}, {'name': 'images/116_08_03.jpg', 'path': 'images/116_08_03.jpg'}, {'name': 'images/65.jpg', 'path': 'images/65.jpg'}, {'name': 'images/4_06_03.jpg', 'path': 'images/4_06_03.jpg'}, {'name': 'images/142_08_03.jpg', 'path': 'images/142_08_03.jpg'}, {'name': 'images/177.jpg', 'path': 'images/177.jpg'}, {'name': 'images/135_06_03.jpg', 'path': 'images/135_06_03.jpg'}, {'name': 'images/81_08_03.jpg', 'path': 'images/81_08_03.jpg'}, {'name': 'images/39_06_03.jpg', 'path': 'images/39_06_03.jpg'}, {'name': 'images/140.jpg', 'path': 'images/140.jpg'}, {'name': 'images/61.jpg', 'path': 'images/61.jpg'}, {'name': 'images/71_06_03.jpg', 'path': 'images/71_06_03.jpg'}, {'name': 'images/192.jpg', 'path': 'images/192.jpg'}, {'name': 'images/10.jpg', 'path': 'images/10.jpg'}, {'name': 'images/118.jpg', 'path': 'images/118.jpg'}, {'name': 'images/92_08_03.jpg', 'path': 'images/92_08_03.jpg'}, {'name': 'images/188_08_03.jpg', 'path': 'images/188_08_03.jpg'}, {'name': 'images/49_07_03.jpg', 'path': 'images/49_07_03.jpg'}, {'name': 'images/57_06_03.jpg', 'path': 'images/57_06_03.jpg'}, {'name': 'images/32.jpg', 'path': 'images/32.jpg'}, {'name': 'images/196_06_03.jpg', 'path': 'images/196_06_03.jpg'}, {'name': 'images/129_06_03.jpg', 'path': 'images/129_06_03.jpg'}, {'name': 'images/4_07_03.jpg', 'path': 'images/4_07_03.jpg'}, {'name': 'images/127.jpg', 'path': 'images/127.jpg'}, {'name': 'images/27_07_03.jpg', 'path': 'images/27_07_03.jpg'}, {'name': 'images/183.jpg', 'path': 'images/183.jpg'}, {'name': 'images/187_07_03.jpg', 'path': 'images/187_07_03.jpg'}, {'name': 'images/137_07_03.jpg', 'path': 'images/137_07_03.jpg'}, {'name': 'images/171.jpg', 'path': 'images/171.jpg'}, {'name': 'images/51_08_03.jpg', 'path': 'images/51_08_03.jpg'}, {'name': 'Instructions/Slide3.JPG', 'path': 'Instructions/Slide3.JPG'}, {'name': 'images/152_07_03.jpg', 'path': 'images/152_07_03.jpg'}, {'name': 'images/180.jpg', 'path': 'images/180.jpg'}, {'name': 'images/145_08_03.jpg', 'path': 'images/145_08_03.jpg'}, {'name': 'images/49_08_03.jpg', 'path': 'images/49_08_03.jpg'}, {'name': 'images/59.jpg', 'path': 'images/59.jpg'}, {'name': 'images/144_06_03.jpg', 'path': 'images/144_06_03.jpg'}, {'name': 'images/176_06_03.jpg', 'path': 'images/176_06_03.jpg'}, {'name': 'images/87_06_03.jpg', 'path': 'images/87_06_03.jpg'}, {'name': 'images/141_06_03.jpg', 'path': 'images/141_06_03.jpg'}, {'name': 'images/134_08_03.jpg', 'path': 'images/134_08_03.jpg'}, {'name': 'images/189_07_03.jpg', 'path': 'images/189_07_03.jpg'}, {'name': 'images/3_06_03.jpg', 'path': 'images/3_06_03.jpg'}, {'name': 'images/39_07_03.jpg', 'path': 'images/39_07_03.jpg'}, {'name': 'images/45.jpg', 'path': 'images/45.jpg'}, {'name': 'images/103_07_03.jpg', 'path': 'images/103_07_03.jpg'}, {'name': 'images/125.jpg', 'path': 'images/125.jpg'}, {'name': 'images/179_07_03.jpg', 'path': 'images/179_07_03.jpg'}, {'name': 'images/26_07_03.jpg', 'path': 'images/26_07_03.jpg'}, {'name': 'images/98_08_03.jpg', 'path': 'images/98_08_03.jpg'}, {'name': 'images/63_07_03.jpg', 'path': 'images/63_07_03.jpg'}, {'name': 'images/74.jpg', 'path': 'images/74.jpg'}, {'name': 'images/31_08_03.jpg', 'path': 'images/31_08_03.jpg'}, {'name': 'images/105_06_03.jpg', 'path': 'images/105_06_03.jpg'}, {'name': 'images/172_08_03.jpg', 'path': 'images/172_08_03.jpg'}, {'name': 'images/186_07_03.jpg', 'path': 'images/186_07_03.jpg'}, {'name': 'images/86_07_03.jpg', 'path': 'images/86_07_03.jpg'}, {'name': 'images/173_07_03.jpg', 'path': 'images/173_07_03.jpg'}, {'name': 'images/16_08_03.jpg', 'path': 'images/16_08_03.jpg'}, {'name': 'images/9.jpg', 'path': 'images/9.jpg'}, {'name': 'images/155_06_03.jpg', 'path': 'images/155_06_03.jpg'}, {'name': 'images/190_06_03.jpg', 'path': 'images/190_06_03.jpg'}, {'name': 'images/191_07_03.jpg', 'path': 'images/191_07_03.jpg'}, {'name': 'images/161_08_03.jpg', 'path': 'images/161_08_03.jpg'}, {'name': 'images/42_08_03.jpg', 'path': 'images/42_08_03.jpg'}, {'name': 'images/1_08_03.jpg', 'path': 'images/1_08_03.jpg'}, {'name': 'images/80_07_03.jpg', 'path': 'images/80_07_03.jpg'}, {'name': 'images/174_06_03.jpg', 'path': 'images/174_06_03.jpg'}, {'name': 'images/164_08_03.jpg', 'path': 'images/164_08_03.jpg'}, {'name': 'images/5_08_03.jpg', 'path': 'images/5_08_03.jpg'}, {'name': 'images/24_07_03.jpg', 'path': 'images/24_07_03.jpg'}, {'name': 'images/40_08_03.jpg', 'path': 'images/40_08_03.jpg'}, {'name': 'images/163.jpg', 'path': 'images/163.jpg'}, {'name': 'images/158_08_03.jpg', 'path': 'images/158_08_03.jpg'}, {'name': 'images/175_08_03.jpg', 'path': 'images/175_08_03.jpg'}, {'name': 'images/4.jpg', 'path': 'images/4.jpg'}, {'name': 'images/48.jpg', 'path': 'images/48.jpg'}, {'name': 'images/111.jpg', 'path': 'images/111.jpg'}, {'name': 'images/62_07_03.jpg', 'path': 'images/62_07_03.jpg'}, {'name': 'images/63.jpg', 'path': 'images/63.jpg'}, {'name': 'images/95.jpg', 'path': 'images/95.jpg'}, {'name': 'images/183_06_03.jpg', 'path': 'images/183_06_03.jpg'}, {'name': 'images/45_08_03.jpg', 'path': 'images/45_08_03.jpg'}, {'name': 'images/142_06_03.jpg', 'path': 'images/142_06_03.jpg'}, {'name': 'images/123_06_03.jpg', 'path': 'images/123_06_03.jpg'}, {'name': 'images/146_08_03.jpg', 'path': 'images/146_08_03.jpg'}, {'name': 'images/156_06_03.jpg', 'path': 'images/156_06_03.jpg'}, {'name': 'images/41_06_03.jpg', 'path': 'images/41_06_03.jpg'}, {'name': 'images/150.jpg', 'path': 'images/150.jpg'}, {'name': 'images/160_06_03.jpg', 'path': 'images/160_06_03.jpg'}, {'name': 'images/117.jpg', 'path': 'images/117.jpg'}, {'name': 'images/188_06_03.jpg', 'path': 'images/188_06_03.jpg'}, {'name': 'images/197.jpg', 'path': 'images/197.jpg'}, {'name': 'images/171_07_03.jpg', 'path': 'images/171_07_03.jpg'}, {'name': 'images/93_08_03.jpg', 'path': 'images/93_08_03.jpg'}, {'name': 'images/22.jpg', 'path': 'images/22.jpg'}, {'name': 'images/173_08_03.jpg', 'path': 'images/173_08_03.jpg'}, {'name': 'images/133.jpg', 'path': 'images/133.jpg'}, {'name': 'images/166_07_03.jpg', 'path': 'images/166_07_03.jpg'}, {'name': 'images/103_08_03.jpg', 'path': 'images/103_08_03.jpg'}, {'name': 'images/178.jpg', 'path': 'images/178.jpg'}, {'name': 'images/70_07_03.jpg', 'path': 'images/70_07_03.jpg'}, {'name': 'images/178_08_03.jpg', 'path': 'images/178_08_03.jpg'}, {'name': 'images/93.jpg', 'path': 'images/93.jpg'}, {'name': 'images/160_07_03.jpg', 'path': 'images/160_07_03.jpg'}, {'name': 'images/78_08_03.jpg', 'path': 'images/78_08_03.jpg'}, {'name': 'images/168_07_03.jpg', 'path': 'images/168_07_03.jpg'}, {'name': 'images/7_06_03.jpg', 'path': 'images/7_06_03.jpg'}, {'name': 'images/34.jpg', 'path': 'images/34.jpg'}, {'name': 'images/29_08_03.jpg', 'path': 'images/29_08_03.jpg'}, {'name': 'images/160.jpg', 'path': 'images/160.jpg'}, {'name': 'images/118_06_03.jpg', 'path': 'images/118_06_03.jpg'}, {'name': 'images/46.jpg', 'path': 'images/46.jpg'}, {'name': 'images/80.jpg', 'path': 'images/80.jpg'}, {'name': 'images/64_06_03.jpg', 'path': 'images/64_06_03.jpg'}, {'name': 'images/49_06_03.jpg', 'path': 'images/49_06_03.jpg'}, {'name': 'images/69_07_03.jpg', 'path': 'images/69_07_03.jpg'}, {'name': 'images/28_07_03.jpg', 'path': 'images/28_07_03.jpg'}, {'name': 'images/90_07_03.jpg', 'path': 'images/90_07_03.jpg'}, {'name': 'images/84_08_03.jpg', 'path': 'images/84_08_03.jpg'}, {'name': 'images/41_07_03.jpg', 'path': 'images/41_07_03.jpg'}, {'name': 'images/1_06_03.jpg', 'path': 'images/1_06_03.jpg'}, {'name': 'images/88_07_03.jpg', 'path': 'images/88_07_03.jpg'}, {'name': 'images/158_06_03.jpg', 'path': 'images/158_06_03.jpg'}, {'name': 'images/31.jpg', 'path': 'images/31.jpg'}, {'name': 'images/98_06_03.jpg', 'path': 'images/98_06_03.jpg'}, {'name': 'images/156_07_03.jpg', 'path': 'images/156_07_03.jpg'}, {'name': 'images/186_06_03.jpg', 'path': 'images/186_06_03.jpg'}, {'name': 'images/65_06_03.jpg', 'path': 'images/65_06_03.jpg'}, {'name': 'images/154_08_03.jpg', 'path': 'images/154_08_03.jpg'}, {'name': 'images/82.jpg', 'path': 'images/82.jpg'}, {'name': 'images/191_06_03.jpg', 'path': 'images/191_06_03.jpg'}, {'name': 'images/147_06_03.jpg', 'path': 'images/147_06_03.jpg'}, {'name': 'images/106_08_03.jpg', 'path': 'images/106_08_03.jpg'}, {'name': 'images/158.jpg', 'path': 'images/158.jpg'}, {'name': 'images/120_06_03.jpg', 'path': 'images/120_06_03.jpg'}, {'name': 'images/122_08_03.jpg', 'path': 'images/122_08_03.jpg'}, {'name': 'images/115_06_03.jpg', 'path': 'images/115_06_03.jpg'}, {'name': 'images/115_08_03.jpg', 'path': 'images/115_08_03.jpg'}, {'name': 'images/144_07_03.jpg', 'path': 'images/144_07_03.jpg'}, {'name': 'images/26_08_03.jpg', 'path': 'images/26_08_03.jpg'}, {'name': 'images/131_08_03.jpg', 'path': 'images/131_08_03.jpg'}, {'name': 'images/71_08_03.jpg', 'path': 'images/71_08_03.jpg'}, {'name': 'images/162_07_03.jpg', 'path': 'images/162_07_03.jpg'}, {'name': 'images/33_08_03.jpg', 'path': 'images/33_08_03.jpg'}, {'name': 'images/28_08_03.jpg', 'path': 'images/28_08_03.jpg'}, {'name': 'images/153_07_03.jpg', 'path': 'images/153_07_03.jpg'}, {'name': 'images/46_06_03.jpg', 'path': 'images/46_06_03.jpg'}, {'name': 'images/43_06_03.jpg', 'path': 'images/43_06_03.jpg'}, {'name': 'images/138_08_03.jpg', 'path': 'images/138_08_03.jpg'}, {'name': 'Instructions/Slide6.JPG', 'path': 'Instructions/Slide6.JPG'}, {'name': 'images/136_08_03.jpg', 'path': 'images/136_08_03.jpg'}, {'name': 'images/123_07_03.jpg', 'path': 'images/123_07_03.jpg'}, {'name': 'images/133_06_03.jpg', 'path': 'images/133_06_03.jpg'}, {'name': 'images/190_07_03.jpg', 'path': 'images/190_07_03.jpg'}, {'name': 'images/33_06_03.jpg', 'path': 'images/33_06_03.jpg'}, {'name': 'images/107_06_03.jpg', 'path': 'images/107_06_03.jpg'}, {'name': 'images/107_07_03.jpg', 'path': 'images/107_07_03.jpg'}, {'name': 'images/120.jpg', 'path': 'images/120.jpg'}, {'name': 'images/119.jpg', 'path': 'images/119.jpg'}, {'name': 'images/102_08_03.jpg', 'path': 'images/102_08_03.jpg'}, {'name': 'images/149_08_03.jpg', 'path': 'images/149_08_03.jpg'}, {'name': 'images/6_08_03.jpg', 'path': 'images/6_08_03.jpg'}, {'name': 'images/25.jpg', 'path': 'images/25.jpg'}, {'name': 'images/152.jpg', 'path': 'images/152.jpg'}, {'name': 'images/159_07_03.jpg', 'path': 'images/159_07_03.jpg'}, {'name': 'images/26_06_03.jpg', 'path': 'images/26_06_03.jpg'}, {'name': 'images/58_06_03.jpg', 'path': 'images/58_06_03.jpg'}, {'name': 'images/43.jpg', 'path': 'images/43.jpg'}, {'name': 'images/127_08_03.jpg', 'path': 'images/127_08_03.jpg'}, {'name': 'images/147_08_03.jpg', 'path': 'images/147_08_03.jpg'}, {'name': 'images/58_07_03.jpg', 'path': 'images/58_07_03.jpg'}, {'name': 'images/21_08_03.jpg', 'path': 'images/21_08_03.jpg'}, {'name': 'images/12_07_03.jpg', 'path': 'images/12_07_03.jpg'}, {'name': 'images/148_07_03.jpg', 'path': 'images/148_07_03.jpg'}, {'name': 'images/66_08_03.jpg', 'path': 'images/66_08_03.jpg'}, {'name': 'images/149_07_03.jpg', 'path': 'images/149_07_03.jpg'}, {'name': 'images/133_07_03.jpg', 'path': 'images/133_07_03.jpg'}, {'name': 'images/8.jpg', 'path': 'images/8.jpg'}, {'name': 'images/61_07_03.jpg', 'path': 'images/61_07_03.jpg'}, {'name': 'images/97_08_03.jpg', 'path': 'images/97_08_03.jpg'}, {'name': 'images/25_06_03.jpg', 'path': 'images/25_06_03.jpg'}, {'name': 'images/150_07_03.jpg', 'path': 'images/150_07_03.jpg'}, {'name': 'images/170_08_03.jpg', 'path': 'images/170_08_03.jpg'}, {'name': 'images/3_08_03.jpg', 'path': 'images/3_08_03.jpg'}, {'name': 'images/195_08_03.jpg', 'path': 'images/195_08_03.jpg'}, {'name': 'images/5.jpg', 'path': 'images/5.jpg'}, {'name': 'images/97_07_03.jpg', 'path': 'images/97_07_03.jpg'}, {'name': 'images/185_08_03.jpg', 'path': 'images/185_08_03.jpg'}, {'name': 'images/126_08_03.jpg', 'path': 'images/126_08_03.jpg'}, {'name': 'images/59_07_03.jpg', 'path': 'images/59_07_03.jpg'}, {'name': 'images/35.jpg', 'path': 'images/35.jpg'}, {'name': 'images/104_06_03.jpg', 'path': 'images/104_06_03.jpg'}, {'name': 'images/189_06_03.jpg', 'path': 'images/189_06_03.jpg'}, {'name': 'images/55.jpg', 'path': 'images/55.jpg'}, {'name': 'images/143.jpg', 'path': 'images/143.jpg'}, {'name': 'images/98.jpg', 'path': 'images/98.jpg'}, {'name': 'images/126.jpg', 'path': 'images/126.jpg'}, {'name': 'images/148.jpg', 'path': 'images/148.jpg'}, {'name': 'images/155.jpg', 'path': 'images/155.jpg'}, {'name': 'images/48_07_03.jpg', 'path': 'images/48_07_03.jpg'}, {'name': 'images/183_08_03.jpg', 'path': 'images/183_08_03.jpg'}, {'name': 'images/91_08_03.jpg', 'path': 'images/91_08_03.jpg'}, {'name': 'images/18_06_03.jpg', 'path': 'images/18_06_03.jpg'}, {'name': 'images/159_08_03.jpg', 'path': 'images/159_08_03.jpg'}, {'name': 'images/170_07_03.jpg', 'path': 'images/170_07_03.jpg'}, {'name': 'images/18_07_03.jpg', 'path': 'images/18_07_03.jpg'}, {'name': 'images/147.jpg', 'path': 'images/147.jpg'}, {'name': 'images/85_06_03.jpg', 'path': 'images/85_06_03.jpg'}, {'name': 'images/129_08_03.jpg', 'path': 'images/129_08_03.jpg'}, {'name': 'images/135_07_03.jpg', 'path': 'images/135_07_03.jpg'}, {'name': 'images/103.jpg', 'path': 'images/103.jpg'}, {'name': 'images/77.jpg', 'path': 'images/77.jpg'}, {'name': 'images/197_06_03.jpg', 'path': 'images/197_06_03.jpg'}, {'name': 'images/115.jpg', 'path': 'images/115.jpg'}, {'name': 'images/75_08_03.jpg', 'path': 'images/75_08_03.jpg'}, {'name': 'images/123.jpg', 'path': 'images/123.jpg'}, {'name': 'images/84.jpg', 'path': 'images/84.jpg'}, {'name': 'images/193.jpg', 'path': 'images/193.jpg'}, {'name': 'images/54.jpg', 'path': 'images/54.jpg'}, {'name': 'images/36.jpg', 'path': 'images/36.jpg'}, {'name': 'images/92_06_03.jpg', 'path': 'images/92_06_03.jpg'}, {'name': 'images/64_08_03.jpg', 'path': 'images/64_08_03.jpg'}, {'name': 'images/143_06_03.jpg', 'path': 'images/143_06_03.jpg'}, {'name': 'images/17.jpg', 'path': 'images/17.jpg'}, {'name': 'images/41_08_03.jpg', 'path': 'images/41_08_03.jpg'}, {'name': 'images/8_06_03.jpg', 'path': 'images/8_06_03.jpg'}, {'name': 'images/111_07_03.jpg', 'path': 'images/111_07_03.jpg'}, {'name': 'images/97_06_03.jpg', 'path': 'images/97_06_03.jpg'}, {'name': 'images/57_07_03.jpg', 'path': 'images/57_07_03.jpg'}, {'name': 'images/105_07_03.jpg', 'path': 'images/105_07_03.jpg'}, {'name': 'images/193_07_03.jpg', 'path': 'images/193_07_03.jpg'}, {'name': 'Instructions/Slide5.JPG', 'path': 'Instructions/Slide5.JPG'}, {'name': 'images/99.jpg', 'path': 'images/99.jpg'}, {'name': 'images/13.jpg', 'path': 'images/13.jpg'}, {'name': 'images/198_08_03.jpg', 'path': 'images/198_08_03.jpg'}, {'name': 'images/12_06_03.jpg', 'path': 'images/12_06_03.jpg'}, {'name': 'images/46_08_03.jpg', 'path': 'images/46_08_03.jpg'}, {'name': 'images/105.jpg', 'path': 'images/105.jpg'}, {'name': 'images/179_06_03.jpg', 'path': 'images/179_06_03.jpg'}, {'name': 'images/175.jpg', 'path': 'images/175.jpg'}, {'name': 'images/194_08_03.jpg', 'path': 'images/194_08_03.jpg'}, {'name': 'images/9_07_03.jpg', 'path': 'images/9_07_03.jpg'}, {'name': 'images/98_07_03.jpg', 'path': 'images/98_07_03.jpg'}, {'name': 'images/20.jpg', 'path': 'images/20.jpg'}, {'name': 'images/79_06_03.jpg', 'path': 'images/79_06_03.jpg'}, {'name': 'images/30_07_03.jpg', 'path': 'images/30_07_03.jpg'}, {'name': 'images/64.jpg', 'path': 'images/64.jpg'}, {'name': 'images/58_08_03.jpg', 'path': 'images/58_08_03.jpg'}, {'name': 'images/87.jpg', 'path': 'images/87.jpg'}, {'name': 'images/63_06_03.jpg', 'path': 'images/63_06_03.jpg'}, {'name': 'images/96.jpg', 'path': 'images/96.jpg'}, {'name': 'images/41.jpg', 'path': 'images/41.jpg'}, {'name': 'images/144.jpg', 'path': 'images/144.jpg'}, {'name': 'images/186_08_03.jpg', 'path': 'images/186_08_03.jpg'}, {'name': 'images/42.jpg', 'path': 'images/42.jpg'}, {'name': 'images/106_06_03.jpg', 'path': 'images/106_06_03.jpg'}, {'name': 'images/199_08_03.jpg', 'path': 'images/199_08_03.jpg'}, {'name': 'images/62_08_03.jpg', 'path': 'images/62_08_03.jpg'}, {'name': 'images/188_07_03.jpg', 'path': 'images/188_07_03.jpg'}, {'name': 'images/113.jpg', 'path': 'images/113.jpg'}, {'name': 'images/187_08_03.jpg', 'path': 'images/187_08_03.jpg'}, {'name': 'images/110_08_03.jpg', 'path': 'images/110_08_03.jpg'}, {'name': 'images/87_08_03.jpg', 'path': 'images/87_08_03.jpg'}, {'name': 'images/68.jpg', 'path': 'images/68.jpg'}, {'name': 'images/149_06_03.jpg', 'path': 'images/149_06_03.jpg'}, {'name': 'images/76_08_03.jpg', 'path': 'images/76_08_03.jpg'}, {'name': 'images/139.jpg', 'path': 'images/139.jpg'}, {'name': 'images/172_06_03.jpg', 'path': 'images/172_06_03.jpg'}, {'name': 'images/14_06_03.jpg', 'path': 'images/14_06_03.jpg'}, {'name': 'images/78_06_03.jpg', 'path': 'images/78_06_03.jpg'}, {'name': 'images/27.jpg', 'path': 'images/27.jpg'}, {'name': 'images/83_08_03.jpg', 'path': 'images/83_08_03.jpg'}, {'name': 'images/191_08_03.jpg', 'path': 'images/191_08_03.jpg'}, {'name': 'images/190.jpg', 'path': 'images/190.jpg'}, {'name': 'images/44_06_03.jpg', 'path': 'images/44_06_03.jpg'}, {'name': 'images/114_07_03.jpg', 'path': 'images/114_07_03.jpg'}, {'name': 'images/22_08_03.jpg', 'path': 'images/22_08_03.jpg'}, {'name': 'images/159.jpg', 'path': 'images/159.jpg'}, {'name': 'images/36_07_03.jpg', 'path': 'images/36_07_03.jpg'}, {'name': 'images/40.jpg', 'path': 'images/40.jpg'}, {'name': 'images/15_06_03.jpg', 'path': 'images/15_06_03.jpg'}, {'name': 'images/50_06_03.jpg', 'path': 'images/50_06_03.jpg'}, {'name': 'images/85_07_03.jpg', 'path': 'images/85_07_03.jpg'}, {'name': 'images/161_07_03.jpg', 'path': 'images/161_07_03.jpg'}, {'name': 'images/18_08_03.jpg', 'path': 'images/18_08_03.jpg'}, {'name': 'images/50_08_03.jpg', 'path': 'images/50_08_03.jpg'}, {'name': 'images/132_08_03.jpg', 'path': 'images/132_08_03.jpg'}, {'name': 'images/56_08_03.jpg', 'path': 'images/56_08_03.jpg'}, {'name': 'images/163_06_03.jpg', 'path': 'images/163_06_03.jpg'}, {'name': 'images/38.jpg', 'path': 'images/38.jpg'}, {'name': 'images/88.jpg', 'path': 'images/88.jpg'}, {'name': 'images/51_07_03.jpg', 'path': 'images/51_07_03.jpg'}, {'name': 'images/25_07_03.jpg', 'path': 'images/25_07_03.jpg'}, {'name': 'images/2_08_03.jpg', 'path': 'images/2_08_03.jpg'}, {'name': 'images/10_07_03.jpg', 'path': 'images/10_07_03.jpg'}, {'name': 'images/81_06_03.jpg', 'path': 'images/81_06_03.jpg'}, {'name': 'images/124_07_03.jpg', 'path': 'images/124_07_03.jpg'}, {'name': 'images/59_06_03.jpg', 'path': 'images/59_06_03.jpg'}, {'name': 'images/20_07_03.jpg', 'path': 'images/20_07_03.jpg'}, {'name': 'images/84_06_03.jpg', 'path': 'images/84_06_03.jpg'}, {'name': 'images/54_08_03.jpg', 'path': 'images/54_08_03.jpg'}, {'name': 'images/182_06_03.jpg', 'path': 'images/182_06_03.jpg'}, {'name': 'images/32_08_03.jpg', 'path': 'images/32_08_03.jpg'}, {'name': 'images/194.jpg', 'path': 'images/194.jpg'}, {'name': 'images/21_06_03.jpg', 'path': 'images/21_06_03.jpg'}, {'name': 'images/28.jpg', 'path': 'images/28.jpg'}, {'name': 'images/70_06_03.jpg', 'path': 'images/70_06_03.jpg'}, {'name': 'images/184_07_03.jpg', 'path': 'images/184_07_03.jpg'}, {'name': 'images/108.jpg', 'path': 'images/108.jpg'}, {'name': 'images/106_07_03.jpg', 'path': 'images/106_07_03.jpg'}, {'name': 'images/169_07_03.jpg', 'path': 'images/169_07_03.jpg'}, {'name': 'images/58.jpg', 'path': 'images/58.jpg'}, {'name': 'images/196_07_03.jpg', 'path': 'images/196_07_03.jpg'}, {'name': 'images/138_07_03.jpg', 'path': 'images/138_07_03.jpg'}, {'name': 'images/65_07_03.jpg', 'path': 'images/65_07_03.jpg'}, {'name': 'images/155_08_03.jpg', 'path': 'images/155_08_03.jpg'}, {'name': 'images/84_07_03.jpg', 'path': 'images/84_07_03.jpg'}, {'name': 'images/110_07_03.jpg', 'path': 'images/110_07_03.jpg'}, {'name': 'images/100.jpg', 'path': 'images/100.jpg'}, {'name': 'images/35_07_03.jpg', 'path': 'images/35_07_03.jpg'}, {'name': 'images/108_06_03.jpg', 'path': 'images/108_06_03.jpg'}, {'name': 'images/5_06_03.jpg', 'path': 'images/5_06_03.jpg'}, {'name': 'images/4_08_03.jpg', 'path': 'images/4_08_03.jpg'}, {'name': 'images/81_07_03.jpg', 'path': 'images/81_07_03.jpg'}, {'name': 'images/103_06_03.jpg', 'path': 'images/103_06_03.jpg'}, {'name': 'images/130_08_03.jpg', 'path': 'images/130_08_03.jpg'}, {'name': 'images/156.jpg', 'path': 'images/156.jpg'}, {'name': 'images/6_07_03.jpg', 'path': 'images/6_07_03.jpg'}, {'name': 'images/34_08_03.jpg', 'path': 'images/34_08_03.jpg'}, {'name': 'images/170_06_03.jpg', 'path': 'images/170_06_03.jpg'}, {'name': 'images/154.jpg', 'path': 'images/154.jpg'}, {'name': 'images/14_08_03.jpg', 'path': 'images/14_08_03.jpg'}, {'name': 'images/11.jpg', 'path': 'images/11.jpg'}, {'name': 'images/1_07_03.jpg', 'path': 'images/1_07_03.jpg'}, {'name': 'images/31_06_03.jpg', 'path': 'images/31_06_03.jpg'}, {'name': 'images/104_07_03.jpg', 'path': 'images/104_07_03.jpg'}, {'name': 'images/86_08_03.jpg', 'path': 'images/86_08_03.jpg'}, {'name': 'images/199_06_03.jpg', 'path': 'images/199_06_03.jpg'}, {'name': 'images/200_07_03.jpg', 'path': 'images/200_07_03.jpg'}, {'name': 'images/34_06_03.jpg', 'path': 'images/34_06_03.jpg'}, {'name': 'images/30.jpg', 'path': 'images/30.jpg'}, {'name': 'images/53_08_03.jpg', 'path': 'images/53_08_03.jpg'}, {'name': 'images/198.jpg', 'path': 'images/198.jpg'}, {'name': 'images/185_07_03.jpg', 'path': 'images/185_07_03.jpg'}, {'name': 'images/114_08_03.jpg', 'path': 'images/114_08_03.jpg'}, {'name': 'images/193_06_03.jpg', 'path': 'images/193_06_03.jpg'}, {'name': 'images/141.jpg', 'path': 'images/141.jpg'}, {'name': 'images/160_08_03.jpg', 'path': 'images/160_08_03.jpg'}, {'name': 'images/165_07_03.jpg', 'path': 'images/165_07_03.jpg'}, {'name': 'images/66_07_03.jpg', 'path': 'images/66_07_03.jpg'}, {'name': 'images/21_07_03.jpg', 'path': 'images/21_07_03.jpg'}, {'name': 'images/24_08_03.jpg', 'path': 'images/24_08_03.jpg'}, {'name': 'images/71_07_03.jpg', 'path': 'images/71_07_03.jpg'}, {'name': 'images/120_07_03.jpg', 'path': 'images/120_07_03.jpg'}, {'name': 'images/46_07_03.jpg', 'path': 'images/46_07_03.jpg'}, {'name': 'images/62.jpg', 'path': 'images/62.jpg'}, {'name': 'images/122.jpg', 'path': 'images/122.jpg'}, {'name': 'images/11_06_03.jpg', 'path': 'images/11_06_03.jpg'}, {'name': 'images/20_08_03.jpg', 'path': 'images/20_08_03.jpg'}, {'name': 'images/197_08_03.jpg', 'path': 'images/197_08_03.jpg'}, {'name': 'images/184_08_03.jpg', 'path': 'images/184_08_03.jpg'}, {'name': 'images/23_07_03.jpg', 'path': 'images/23_07_03.jpg'}, {'name': 'images/68_07_03.jpg', 'path': 'images/68_07_03.jpg'}, {'name': 'images/155_07_03.jpg', 'path': 'images/155_07_03.jpg'}, {'name': 'images/118_08_03.jpg', 'path': 'images/118_08_03.jpg'}, {'name': 'images/139_06_03.jpg', 'path': 'images/139_06_03.jpg'}, {'name': 'images/19_08_03.jpg', 'path': 'images/19_08_03.jpg'}, {'name': 'images/1.jpg', 'path': 'images/1.jpg'}, {'name': 'images/178_07_03.jpg', 'path': 'images/178_07_03.jpg'}, {'name': 'images/121.jpg', 'path': 'images/121.jpg'}, {'name': 'images/192_08_03.jpg', 'path': 'images/192_08_03.jpg'}, {'name': 'images/176_08_03.jpg', 'path': 'images/176_08_03.jpg'}, {'name': 'images/33_07_03.jpg', 'path': 'images/33_07_03.jpg'}, {'name': 'images/16_07_03.jpg', 'path': 'images/16_07_03.jpg'}, {'name': 'images/56_06_03.jpg', 'path': 'images/56_06_03.jpg'}, {'name': 'images/70.jpg', 'path': 'images/70.jpg'}, {'name': 'images/177_07_03.jpg', 'path': 'images/177_07_03.jpg'}, {'name': 'images/111_06_03.jpg', 'path': 'images/111_06_03.jpg'}, {'name': 'images/198_06_03.jpg', 'path': 'images/198_06_03.jpg'}, {'name': 'Instructions/Slide4.JPG', 'path': 'Instructions/Slide4.JPG'}, {'name': 'images/21.jpg', 'path': 'images/21.jpg'}, {'name': 'images/72_07_03.jpg', 'path': 'images/72_07_03.jpg'}, {'name': 'images/112.jpg', 'path': 'images/112.jpg'}, {'name': 'images/136_07_03.jpg', 'path': 'images/136_07_03.jpg'}, {'name': 'images/148_08_03.jpg', 'path': 'images/148_08_03.jpg'}, {'name': 'images/76.jpg', 'path': 'images/76.jpg'}, {'name': 'images/135.jpg', 'path': 'images/135.jpg'}, {'name': 'images/2_07_03.jpg', 'path': 'images/2_07_03.jpg'}, {'name': 'images/131_06_03.jpg', 'path': 'images/131_06_03.jpg'}, {'name': 'images/174_07_03.jpg', 'path': 'images/174_07_03.jpg'}, {'name': 'images/148_06_03.jpg', 'path': 'images/148_06_03.jpg'}, {'name': 'images/35_08_03.jpg', 'path': 'images/35_08_03.jpg'}, {'name': 'images/30_06_03.jpg', 'path': 'images/30_06_03.jpg'}, {'name': 'images/95_08_03.jpg', 'path': 'images/95_08_03.jpg'}, {'name': 'images/183_07_03.jpg', 'path': 'images/183_07_03.jpg'}, {'name': 'images/13_08_03.jpg', 'path': 'images/13_08_03.jpg'}, {'name': 'images/113_07_03.jpg', 'path': 'images/113_07_03.jpg'}, {'name': 'images/140_07_03.jpg', 'path': 'images/140_07_03.jpg'}, {'name': 'images/79.jpg', 'path': 'images/79.jpg'}, {'name': 'images/86.jpg', 'path': 'images/86.jpg'}, {'name': 'images/83_06_03.jpg', 'path': 'images/83_06_03.jpg'}, {'name': 'images/93_07_03.jpg', 'path': 'images/93_07_03.jpg'}, {'name': 'images/47_07_03.jpg', 'path': 'images/47_07_03.jpg'}, {'name': 'images/120_08_03.jpg', 'path': 'images/120_08_03.jpg'}, {'name': 'images/23.jpg', 'path': 'images/23.jpg'}, {'name': 'images/100_06_03.jpg', 'path': 'images/100_06_03.jpg'}, {'name': 'images/136_06_03.jpg', 'path': 'images/136_06_03.jpg'}, {'name': 'images/10_06_03.jpg', 'path': 'images/10_06_03.jpg'}, {'name': 'images/19.jpg', 'path': 'images/19.jpg'}, {'name': 'images/26.jpg', 'path': 'images/26.jpg'}, {'name': 'images/7_07_03.jpg', 'path': 'images/7_07_03.jpg'}, {'name': 'images/79_08_03.jpg', 'path': 'images/79_08_03.jpg'}, {'name': 'images/117_07_03.jpg', 'path': 'images/117_07_03.jpg'}, {'name': 'images/88_08_03.jpg', 'path': 'images/88_08_03.jpg'}, {'name': 'images/14_07_03.jpg', 'path': 'images/14_07_03.jpg'}, {'name': 'images/78_07_03.jpg', 'path': 'images/78_07_03.jpg'}, {'name': 'images/192_06_03.jpg', 'path': 'images/192_06_03.jpg'}, {'name': 'images/153_06_03.jpg', 'path': 'images/153_06_03.jpg'}, {'name': 'images/5_07_03.jpg', 'path': 'images/5_07_03.jpg'}, {'name': 'images/36_06_03.jpg', 'path': 'images/36_06_03.jpg'}, {'name': 'images/176.jpg', 'path': 'images/176.jpg'}, {'name': 'images/175_07_03.jpg', 'path': 'images/175_07_03.jpg'}, {'name': 'images/17_07_03.jpg', 'path': 'images/17_07_03.jpg'}, {'name': 'images/37.jpg', 'path': 'images/37.jpg'}, {'name': 'images/137.jpg', 'path': 'images/137.jpg'}, {'name': 'images/33.jpg', 'path': 'images/33.jpg'}, {'name': 'Instructions/Slide10.JPG', 'path': 'Instructions/Slide10.JPG'}, {'name': 'images/116_07_03.jpg', 'path': 'images/116_07_03.jpg'}, {'name': 'images/18.jpg', 'path': 'images/18.jpg'}, {'name': 'images/73_06_03.jpg', 'path': 'images/73_06_03.jpg'}, {'name': 'images/72.jpg', 'path': 'images/72.jpg'}, {'name': 'images/43_07_03.jpg', 'path': 'images/43_07_03.jpg'}, {'name': 'images/48_06_03.jpg', 'path': 'images/48_06_03.jpg'}, {'name': 'images/7.jpg', 'path': 'images/7.jpg'}, {'name': 'images/164_07_03.jpg', 'path': 'images/164_07_03.jpg'}, {'name': 'images/80_08_03.jpg', 'path': 'images/80_08_03.jpg'}, {'name': 'images/82_06_03.jpg', 'path': 'images/82_06_03.jpg'}, {'name': 'images/122_06_03.jpg', 'path': 'images/122_06_03.jpg'}, {'name': 'images/12_08_03.jpg', 'path': 'images/12_08_03.jpg'}, {'name': 'images/194_06_03.jpg', 'path': 'images/194_06_03.jpg'}, {'name': 'images/143_08_03.jpg', 'path': 'images/143_08_03.jpg'}, {'name': 'images/121_07_03.jpg', 'path': 'images/121_07_03.jpg'}, {'name': 'images/53.jpg', 'path': 'images/53.jpg'}, {'name': 'images/91_06_03.jpg', 'path': 'images/91_06_03.jpg'}, {'name': 'images/182_07_03.jpg', 'path': 'images/182_07_03.jpg'}, {'name': 'images/114.jpg', 'path': 'images/114.jpg'}, {'name': 'images/171_08_03.jpg', 'path': 'images/171_08_03.jpg'}, {'name': 'images/150_08_03.jpg', 'path': 'images/150_08_03.jpg'}, {'name': 'images/78.jpg', 'path': 'images/78.jpg'}, {'name': 'images/76_07_03.jpg', 'path': 'images/76_07_03.jpg'}, {'name': 'images/3.jpg', 'path': 'images/3.jpg'}, {'name': 'images/68_06_03.jpg', 'path': 'images/68_06_03.jpg'}, {'name': 'images/6.jpg', 'path': 'images/6.jpg'}, {'name': 'images/43_08_03.jpg', 'path': 'images/43_08_03.jpg'}, {'name': 'images/94_06_03.jpg', 'path': 'images/94_06_03.jpg'}, {'name': 'images/117_06_03.jpg', 'path': 'images/117_06_03.jpg'}, {'name': 'images/124_06_03.jpg', 'path': 'images/124_06_03.jpg'}, {'name': 'images/164_06_03.jpg', 'path': 'images/164_06_03.jpg'}, {'name': 'images/39.jpg', 'path': 'images/39.jpg'}, {'name': 'images/188.jpg', 'path': 'images/188.jpg'}, {'name': 'images/130_07_03.jpg', 'path': 'images/130_07_03.jpg'}, {'name': 'images/92.jpg', 'path': 'images/92.jpg'}, {'name': 'images/83.jpg', 'path': 'images/83.jpg'}, {'name': 'images/88_06_03.jpg', 'path': 'images/88_06_03.jpg'}, {'name': 'images/47.jpg', 'path': 'images/47.jpg'}, {'name': 'images/149.jpg', 'path': 'images/149.jpg'}, {'name': 'images/38_06_03.jpg', 'path': 'images/38_06_03.jpg'}, {'name': 'images/112_08_03.jpg', 'path': 'images/112_08_03.jpg'}, {'name': 'images/158_07_03.jpg', 'path': 'images/158_07_03.jpg'}, {'name': 'images/125_08_03.jpg', 'path': 'images/125_08_03.jpg'}, {'name': 'images/50_07_03.jpg', 'path': 'images/50_07_03.jpg'}, {'name': 'images/163_07_03.jpg', 'path': 'images/163_07_03.jpg'}, {'name': 'images/192_07_03.jpg', 'path': 'images/192_07_03.jpg'}, {'name': 'images/85.jpg', 'path': 'images/85.jpg'}, {'name': 'images/151_06_03.jpg', 'path': 'images/151_06_03.jpg'}, {'name': 'images/200.jpg', 'path': 'images/200.jpg'}, {'name': 'images/22_07_03.jpg', 'path': 'images/22_07_03.jpg'}, {'name': 'images/67_06_03.jpg', 'path': 'images/67_06_03.jpg'}, {'name': 'images/165_06_03.jpg', 'path': 'images/165_06_03.jpg'}, {'name': 'images/29_07_03.jpg', 'path': 'images/29_07_03.jpg'}, {'name': 'images/167_06_03.jpg', 'path': 'images/167_06_03.jpg'}, {'name': 'images/174.jpg', 'path': 'images/174.jpg'}, {'name': 'images/129_07_03.jpg', 'path': 'images/129_07_03.jpg'}, {'name': 'images/108_07_03.jpg', 'path': 'images/108_07_03.jpg'}, {'name': 'images/15_08_03.jpg', 'path': 'images/15_08_03.jpg'}, {'name': 'images/67_08_03.jpg', 'path': 'images/67_08_03.jpg'}, {'name': 'images/193_08_03.jpg', 'path': 'images/193_08_03.jpg'}, {'name': 'images/73.jpg', 'path': 'images/73.jpg'}, {'name': 'images/128_08_03.jpg', 'path': 'images/128_08_03.jpg'}, {'name': 'images/119_06_03.jpg', 'path': 'images/119_06_03.jpg'}, {'name': 'images/123_08_03.jpg', 'path': 'images/123_08_03.jpg'}, {'name': 'images/165_08_03.jpg', 'path': 'images/165_08_03.jpg'}, {'name': 'images/72_08_03.jpg', 'path': 'images/72_08_03.jpg'}, {'name': 'images/164.jpg', 'path': 'images/164.jpg'}, {'name': 'images/173_06_03.jpg', 'path': 'images/173_06_03.jpg'}, {'name': 'images/89.jpg', 'path': 'images/89.jpg'}, {'name': 'images/29.jpg', 'path': 'images/29.jpg'}, {'name': 'images/131_07_03.jpg', 'path': 'images/131_07_03.jpg'}, {'name': 'images/177_08_03.jpg', 'path': 'images/177_08_03.jpg'}, {'name': 'images/71.jpg', 'path': 'images/71.jpg'}, {'name': 'images/146.jpg', 'path': 'images/146.jpg'}, {'name': 'images/47_08_03.jpg', 'path': 'images/47_08_03.jpg'}, {'name': 'images/171_06_03.jpg', 'path': 'images/171_06_03.jpg'}, {'name': 'images/23_06_03.jpg', 'path': 'images/23_06_03.jpg'}, {'name': 'images/95_07_03.jpg', 'path': 'images/95_07_03.jpg'}, {'name': 'images/139_07_03.jpg', 'path': 'images/139_07_03.jpg'}, {'name': 'images/177_06_03.jpg', 'path': 'images/177_06_03.jpg'}, {'name': 'images/23_08_03.jpg', 'path': 'images/23_08_03.jpg'}, {'name': 'images/112_07_03.jpg', 'path': 'images/112_07_03.jpg'}, {'name': 'images/96_08_03.jpg', 'path': 'images/96_08_03.jpg'}, {'name': 'images/85_08_03.jpg', 'path': 'images/85_08_03.jpg'}, {'name': 'images/17_08_03.jpg', 'path': 'images/17_08_03.jpg'}, {'name': 'images/45_07_03.jpg', 'path': 'images/45_07_03.jpg'}, {'name': 'images/122_07_03.jpg', 'path': 'images/122_07_03.jpg'}, {'name': 'Instructions/Slide13.JPG', 'path': 'Instructions/Slide13.JPG'}, {'name': 'images/145_06_03.jpg', 'path': 'images/145_06_03.jpg'}, {'name': 'images/199.jpg', 'path': 'images/199.jpg'}, {'name': 'images/161_06_03.jpg', 'path': 'images/161_06_03.jpg'}, {'name': 'images/51_06_03.jpg', 'path': 'images/51_06_03.jpg'}, {'name': 'images/199_07_03.jpg', 'path': 'images/199_07_03.jpg'}, {'name': 'images/8_08_03.jpg', 'path': 'images/8_08_03.jpg'}, {'name': 'images/186.jpg', 'path': 'images/186.jpg'}, {'name': 'images/147_07_03.jpg', 'path': 'images/147_07_03.jpg'}, {'name': 'images/182_08_03.jpg', 'path': 'images/182_08_03.jpg'}, {'name': 'images/181.jpg', 'path': 'images/181.jpg'}, {'name': 'images/89_08_03.jpg', 'path': 'images/89_08_03.jpg'}, {'name': 'images/187.jpg', 'path': 'images/187.jpg'}, {'name': 'images/60_08_03.jpg', 'path': 'images/60_08_03.jpg'}, {'name': 'images/124.jpg', 'path': 'images/124.jpg'}, {'name': 'images/170.jpg', 'path': 'images/170.jpg'}, {'name': 'images/44_08_03.jpg', 'path': 'images/44_08_03.jpg'}, {'name': 'images/99_07_03.jpg', 'path': 'images/99_07_03.jpg'}, {'name': 'images/60.jpg', 'path': 'images/60.jpg'}, {'name': 'images/121_08_03.jpg', 'path': 'images/121_08_03.jpg'}, {'name': 'images/185.jpg', 'path': 'images/185.jpg'}, {'name': 'images/131.jpg', 'path': 'images/131.jpg'}, {'name': 'images/168_08_03.jpg', 'path': 'images/168_08_03.jpg'}, {'name': 'images/32_07_03.jpg', 'path': 'images/32_07_03.jpg'}, {'name': 'images/145_07_03.jpg', 'path': 'images/145_07_03.jpg'}, {'name': 'images/196_08_03.jpg', 'path': 'images/196_08_03.jpg'}, {'name': 'images/169_06_03.jpg', 'path': 'images/169_06_03.jpg'}, {'name': 'images/77_08_03.jpg', 'path': 'images/77_08_03.jpg'}, {'name': 'images/11_07_03.jpg', 'path': 'images/11_07_03.jpg'}, {'name': 'images/6_06_03.jpg', 'path': 'images/6_06_03.jpg'}, {'name': 'images/74_06_03.jpg', 'path': 'images/74_06_03.jpg'}, {'name': 'images/200_06_03.jpg', 'path': 'images/200_06_03.jpg'}, {'name': 'images/3_07_03.jpg', 'path': 'images/3_07_03.jpg'}, {'name': 'images/39_08_03.jpg', 'path': 'images/39_08_03.jpg'}, {'name': 'images/74_08_03.jpg', 'path': 'images/74_08_03.jpg'}, {'name': 'images/8_07_03.jpg', 'path': 'images/8_07_03.jpg'}, {'name': 'images/57_08_03.jpg', 'path': 'images/57_08_03.jpg'}, {'name': 'images/55_06_03.jpg', 'path': 'images/55_06_03.jpg'}, {'name': 'images/140_06_03.jpg', 'path': 'images/140_06_03.jpg'}, {'name': 'images/68_08_03.jpg', 'path': 'images/68_08_03.jpg'}, {'name': 'images/104.jpg', 'path': 'images/104.jpg'}, {'name': 'images/104_08_03.jpg', 'path': 'images/104_08_03.jpg'}, {'name': 'images/40_06_03.jpg', 'path': 'images/40_06_03.jpg'}, {'name': 'images/101_07_03.jpg', 'path': 'images/101_07_03.jpg'}, {'name': 'images/101.jpg', 'path': 'images/101.jpg'}, {'name': 'images/50.jpg', 'path': 'images/50.jpg'}, {'name': 'images/114_06_03.jpg', 'path': 'images/114_06_03.jpg'}, {'name': 'images/49.jpg', 'path': 'images/49.jpg'}, {'name': 'images/80_06_03.jpg', 'path': 'images/80_06_03.jpg'}, {'name': 'images/178_06_03.jpg', 'path': 'images/178_06_03.jpg'}, {'name': 'images/180_06_03.jpg', 'path': 'images/180_06_03.jpg'}, {'name': 'images/128.jpg', 'path': 'images/128.jpg'}, {'name': 'images/198_07_03.jpg', 'path': 'images/198_07_03.jpg'}, {'name': 'images/42_07_03.jpg', 'path': 'images/42_07_03.jpg'}, {'name': 'images/106.jpg', 'path': 'images/106.jpg'}, {'name': 'images/166_08_03.jpg', 'path': 'images/166_08_03.jpg'}, {'name': 'images/162.jpg', 'path': 'images/162.jpg'}, {'name': 'images/79_07_03.jpg', 'path': 'images/79_07_03.jpg'}, {'name': 'images/87_07_03.jpg', 'path': 'images/87_07_03.jpg'}, {'name': 'images/38_08_03.jpg', 'path': 'images/38_08_03.jpg'}, {'name': 'images/130.jpg', 'path': 'images/130.jpg'}, {'name': 'images/141_07_03.jpg', 'path': 'images/141_07_03.jpg'}, {'name': 'images/179_08_03.jpg', 'path': 'images/179_08_03.jpg'}, {'name': 'images/9_06_03.jpg', 'path': 'images/9_06_03.jpg'}, {'name': 'images/137_08_03.jpg', 'path': 'images/137_08_03.jpg'}, {'name': 'images/166.jpg', 'path': 'images/166.jpg'}, {'name': 'images/24.jpg', 'path': 'images/24.jpg'}, {'name': 'images/54_07_03.jpg', 'path': 'images/54_07_03.jpg'}, {'name': 'images/67.jpg', 'path': 'images/67.jpg'}, {'name': 'images/20_06_03.jpg', 'path': 'images/20_06_03.jpg'}, {'name': 'images/121_06_03.jpg', 'path': 'images/121_06_03.jpg'}, {'name': 'images/109_08_03.jpg', 'path': 'images/109_08_03.jpg'}, {'name': 'images/32_06_03.jpg', 'path': 'images/32_06_03.jpg'}, {'name': 'images/200_08_03.jpg', 'path': 'images/200_08_03.jpg'}, {'name': 'images/55_08_03.jpg', 'path': 'images/55_08_03.jpg'}, {'name': 'images/113_06_03.jpg', 'path': 'images/113_06_03.jpg'}, {'name': 'images/152_08_03.jpg', 'path': 'images/152_08_03.jpg'}, {'name': 'images/96_07_03.jpg', 'path': 'images/96_07_03.jpg'}, {'name': 'images/134.jpg', 'path': 'images/134.jpg'}, {'name': 'images/52.jpg', 'path': 'images/52.jpg'}, {'name': 'images/128_06_03.jpg', 'path': 'images/128_06_03.jpg'}, {'name': 'images/83_07_03.jpg', 'path': 'images/83_07_03.jpg'}, {'name': 'images/150_06_03.jpg', 'path': 'images/150_06_03.jpg'}, {'name': 'images/157_08_03.jpg', 'path': 'images/157_08_03.jpg'}, {'name': 'images/142_07_03.jpg', 'path': 'images/142_07_03.jpg'}, {'name': 'images/181_07_03.jpg', 'path': 'images/181_07_03.jpg'}, {'name': 'images/133_08_03.jpg', 'path': 'images/133_08_03.jpg'}, {'name': 'images/162_08_03.jpg', 'path': 'images/162_08_03.jpg'}, {'name': 'images/189.jpg', 'path': 'images/189.jpg'}, {'name': 'images/15.jpg', 'path': 'images/15.jpg'}, {'name': 'images/89_07_03.jpg', 'path': 'images/89_07_03.jpg'}, {'name': 'images/55_07_03.jpg', 'path': 'images/55_07_03.jpg'}, {'name': 'images/195_07_03.jpg', 'path': 'images/195_07_03.jpg'}, {'name': 'images/75_07_03.jpg', 'path': 'images/75_07_03.jpg'}, {'name': 'images/191.jpg', 'path': 'images/191.jpg'}, {'name': 'images/112_06_03.jpg', 'path': 'images/112_06_03.jpg'}, {'name': 'images/9_08_03.jpg', 'path': 'images/9_08_03.jpg'}, {'name': 'images/94.jpg', 'path': 'images/94.jpg'}, {'name': 'images/172_07_03.jpg', 'path': 'images/172_07_03.jpg'}, {'name': 'images/42_06_03.jpg', 'path': 'images/42_06_03.jpg'}, {'name': 'images/12.jpg', 'path': 'images/12.jpg'}, {'name': 'images/196.jpg', 'path': 'images/196.jpg'}, {'name': 'Instructions/Slide9.JPG', 'path': 'Instructions/Slide9.JPG'}, {'name': 'images/138.jpg', 'path': 'images/138.jpg'}, {'name': 'images/11_08_03.jpg', 'path': 'images/11_08_03.jpg'}, {'name': 'images/56.jpg', 'path': 'images/56.jpg'}, {'name': 'images/59_08_03.jpg', 'path': 'images/59_08_03.jpg'}, {'name': 'images/153_08_03.jpg', 'path': 'images/153_08_03.jpg'}, {'name': 'images/2_06_03.jpg', 'path': 'images/2_06_03.jpg'}, {'name': 'images/125_06_03.jpg', 'path': 'images/125_06_03.jpg'}, {'name': 'images/31_07_03.jpg', 'path': 'images/31_07_03.jpg'}, {'name': 'images/194_07_03.jpg', 'path': 'images/194_07_03.jpg'}, {'name': 'images/118_07_03.jpg', 'path': 'images/118_07_03.jpg'}, {'name': 'images/127_06_03.jpg', 'path': 'images/127_06_03.jpg'}, {'name': 'images/13_07_03.jpg', 'path': 'images/13_07_03.jpg'}, {'name': 'images/69_06_03.jpg', 'path': 'images/69_06_03.jpg'}, {'name': 'images/16_06_03.jpg', 'path': 'images/16_06_03.jpg'}, {'name': 'images/72_06_03.jpg', 'path': 'images/72_06_03.jpg'}, {'name': 'images/129.jpg', 'path': 'images/129.jpg'}, {'name': 'images/154_06_03.jpg', 'path': 'images/154_06_03.jpg'}, {'name': 'images/66.jpg', 'path': 'images/66.jpg'}, {'name': 'images/29_06_03.jpg', 'path': 'images/29_06_03.jpg'}, {'name': 'images/77_06_03.jpg', 'path': 'images/77_06_03.jpg'}, {'name': 'images/169.jpg', 'path': 'images/169.jpg'}, {'name': 'images/128_07_03.jpg', 'path': 'images/128_07_03.jpg'}, {'name': 'images/190_08_03.jpg', 'path': 'images/190_08_03.jpg'}, {'name': 'images/175_06_03.jpg', 'path': 'images/175_06_03.jpg'}, {'name': 'images/89_06_03.jpg', 'path': 'images/89_06_03.jpg'}, {'name': 'images/132_06_03.jpg', 'path': 'images/132_06_03.jpg'}, {'name': 'images/40_07_03.jpg', 'path': 'images/40_07_03.jpg'}, {'name': 'images/37_07_03.jpg', 'path': 'images/37_07_03.jpg'}, {'name': 'images/140_08_03.jpg', 'path': 'images/140_08_03.jpg'}, {'name': 'images/151_07_03.jpg', 'path': 'images/151_07_03.jpg'}, {'name': 'images/27_08_03.jpg', 'path': 'images/27_08_03.jpg'}, {'name': 'images/108_08_03.jpg', 'path': 'images/108_08_03.jpg'}, {'name': 'images/99_08_03.jpg', 'path': 'images/99_08_03.jpg'}, {'name': 'images/132.jpg', 'path': 'images/132.jpg'}, {'name': 'images/109_07_03.jpg', 'path': 'images/109_07_03.jpg'}, {'name': 'images/62_06_03.jpg', 'path': 'images/62_06_03.jpg'} ] }); psychoJS.experimentLogger.setLevel(core.Logger.ServerLevel.EXP); var currentLoop; var frameDur; async function updateInfo() { currentLoop = psychoJS.experiment; // right now there are no loops expInfo['date'] = util.MonotonicClock.getDateStr(); // add a simple timestamp expInfo['expName'] = expName; expInfo['psychopyVersion'] = '2022.2.0'; expInfo['OS'] = window.navigator.platform; psychoJS.experiment.dataFileName = (("." + "/") + `data/${expInfo["participant"]}_${expName}_${expInfo["date"]}`); // store frame rate of monitor if we can measure it successfully expInfo['frameRate'] = psychoJS.window.getActualFrameRate(); if (typeof expInfo['frameRate'] !== 'undefined') frameDur = 1.0 / Math.round(expInfo['frameRate']); else frameDur = 1.0 / 60.0; // couldn't get a reliable measure so guess // add info from the URL: util.addInfoFromUrl(expInfo); psychoJS.setRedirectUrls('https://docs.google.com/forms/d/e/1FAIpQLSfAlCul5jYBqk4v9qshnfPq-6QiziEsC6daEuxpY43A7_ZcFQ/viewform?usp=sf_link', ''); return Scheduler.Event.NEXT; } var instructClock; var instructionImage; var key_resp_6; var slideN; var maxslideN; var minslideN; var trialClock; var image; var key_resp; var text; var imagearray; var A; var B; var C; var D; var distortion; var stims; var blankClock; var text_2; var BreakClock; var key_resp_5; var text_4; var ByeByeClock; var text_3; var key_resp_4; var globalClock; var routineTimer; async function experimentInit() { // Initialize components for Routine "instruct" instructClock = new util.Clock(); instructionImage = new visual.ImageStim({ win : psychoJS.window, name : 'instructionImage', units : 'pix', image : undefined, mask : undefined, ori : 0.0, pos : [0, 0], size : [1600, 1067], color : new util.Color([1,1,1]), opacity : undefined, flipHoriz : false, flipVert : false, texRes : 128.0, interpolate : true, depth : 0.0 }); key_resp_6 = new core.Keyboard({psychoJS: psychoJS, clock: new util.Clock(), waitForStart: true}); // Run 'Begin Experiment' code from code_2 slideN = 1; maxslideN = 14; minslideN = 1; // Initialize components for Routine "trial" trialClock = new util.Clock(); image = new visual.ImageStim({ win : psychoJS.window, name : 'image', units : 'pix', image : undefined, mask : undefined, ori : 0.0, pos : [0, 0], size : [1600, 1067], color : new util.Color([1,1,1]), opacity : undefined, flipHoriz : false, flipVert : false, texRes : 128.0, interpolate : true, depth : 0.0 }); key_resp = new core.Keyboard({psychoJS: psychoJS, clock: new util.Clock(), waitForStart: true}); text = new visual.TextStim({ win: psychoJS.window, name: 'text', text: '1: Bad 2: Poor 3: Fair 4: Good 5: Excellent', font: 'Open Sans', units: undefined, pos: [0, (- 0.46)], height: 0.04, wrapWidth: undefined, ori: 0.0, languageStyle: 'LTR', color: new util.Color('white'), opacity: undefined, depth: -2.0 }); // in "Begin Experiment" // function for generating a sequence function range(start, end) { return Array(end - start + 1).fill().map((_, idx) => start + idx) } // function for shuffling function shuffle(array) { var copy = [], n = array.length, i; // While there remain elements to shuffle… while (n) { // Pick a remaining element… i = Math.floor(Math.random() * array.length); // If not already shuffled, move it to the new array. if (i in array) { copy.push(array[i]); delete array[i]; n--; } } return copy; } // generate image array imagearray = range(1, 200) // generate distortion array A = Array(50).fill('.jpg') B = Array(50).fill('_06_03.jpg') C = Array(50).fill('_07_03.jpg') D = Array(50).fill('_08_03.jpg') distortion = A.concat(B).concat(C).concat(D) // shuffle both imagearray = shuffle(imagearray) distortion = shuffle(distortion) // merge both arrays element by element to get the final stim array stims = [imagearray , distortion ].reduce((a, b) => a.map((v, i) => v + b[i])) // Initialize components for Routine "blank" blankClock = new util.Clock(); text_2 = new visual.TextStim({ win: psychoJS.window, name: 'text_2', text: '', font: 'Open Sans', units: undefined, pos: [0, 0], height: 0.1, wrapWidth: undefined, ori: 0.0, languageStyle: 'LTR', color: new util.Color('white'), opacity: undefined, depth: 0.0 }); // Initialize components for Routine "Break" BreakClock = new util.Clock(); key_resp_5 = new core.Keyboard({psychoJS: psychoJS, clock: new util.Clock(), waitForStart: true}); text_4 = new visual.TextStim({ win: psychoJS.window, name: 'text_4', text: 'Break. Rest your eyes, if necessary.\n\nPress space to continue.', font: 'Open Sans', units: undefined, pos: [0, 0], height: 0.05, wrapWidth: undefined, ori: 0.0, languageStyle: 'LTR', color: new util.Color('white'), opacity: undefined, depth: -1.0 }); // Initialize components for Routine "ByeBye" ByeByeClock = new util.Clock(); text_3 = new visual.TextStim({ win: psychoJS.window, name: 'text_3', text: 'Thank you for participating.\nPress space and wait for a confirmation that all is saved correctly.\n\nA survey should open briefly. If not, please find the link in the prolific description.\n\nAfter the survey, you will receive your completion code.', font: 'Open Sans', units: undefined, pos: [0, 0], height: 0.05, wrapWidth: undefined, ori: 0.0, languageStyle: 'LTR', color: new util.Color('white'), opacity: undefined, depth: 0.0 }); key_resp_4 = new core.Keyboard({psychoJS: psychoJS, clock: new util.Clock(), waitForStart: true}); // Create some handy timers globalClock = new util.Clock(); // to track the time since experiment started routineTimer = new util.CountdownTimer(); // to track time remaining of each (non-slip) routine return Scheduler.Event.NEXT; } var trials_2; function trials_2LoopBegin(trials_2LoopScheduler, snapshot) { return async function() { TrialHandler.fromSnapshot(snapshot); // update internal variables (.thisN etc) of the loop // set up handler to look after randomisation of conditions etc trials_2 = new TrialHandler({ psychoJS: psychoJS, nReps: 500, method: TrialHandler.Method.RANDOM, extraInfo: expInfo, originPath: undefined, trialList: undefined, seed: undefined, name: 'trials_2' }); psychoJS.experiment.addLoop(trials_2); // add the loop to the experiment currentLoop = trials_2; // we're now the current loop // Schedule all the trials in the trialList: for (const thisTrial_2 of trials_2) { snapshot = trials_2.getSnapshot(); trials_2LoopScheduler.add(importConditions(snapshot)); trials_2LoopScheduler.add(instructRoutineBegin(snapshot)); trials_2LoopScheduler.add(instructRoutineEachFrame()); trials_2LoopScheduler.add(instructRoutineEnd(snapshot)); trials_2LoopScheduler.add(trials_2LoopEndIteration(trials_2LoopScheduler, snapshot)); } return Scheduler.Event.NEXT; } } async function trials_2LoopEnd() { // terminate loop psychoJS.experiment.removeLoop(trials_2); // update the current loop from the ExperimentHandler if (psychoJS.experiment._unfinishedLoops.length>0) currentLoop = psychoJS.experiment._unfinishedLoops.at(-1); else currentLoop = psychoJS.experiment; // so we use addData from the experiment return Scheduler.Event.NEXT; } function trials_2LoopEndIteration(scheduler, snapshot) { // ------Prepare for next entry------ return async function () { if (typeof snapshot !== 'undefined') { // ------Check if user ended loop early------ if (snapshot.finished) { // Check for and save orphaned data if (psychoJS.experiment.isEntryEmpty()) { psychoJS.experiment.nextEntry(snapshot); } scheduler.stop(); } else { psychoJS.experiment.nextEntry(snapshot); } return Scheduler.Event.NEXT; } }; } var trials; function trialsLoopBegin(trialsLoopScheduler, snapshot) { return async function() { TrialHandler.fromSnapshot(snapshot); // update internal variables (.thisN etc) of the loop // set up handler to look after randomisation of conditions etc trials = new TrialHandler({ psychoJS: psychoJS, nReps: 220, method: TrialHandler.Method.RANDOM, extraInfo: expInfo, originPath: undefined, trialList: undefined, seed: undefined, name: 'trials' }); psychoJS.experiment.addLoop(trials); // add the loop to the experiment currentLoop = trials; // we're now the current loop // Schedule all the trials in the trialList: for (const thisTrial of trials) { snapshot = trials.getSnapshot(); trialsLoopScheduler.add(importConditions(snapshot)); trialsLoopScheduler.add(trialRoutineBegin(snapshot)); trialsLoopScheduler.add(trialRoutineEachFrame()); trialsLoopScheduler.add(trialRoutineEnd(snapshot)); trialsLoopScheduler.add(blankRoutineBegin(snapshot)); trialsLoopScheduler.add(blankRoutineEachFrame()); trialsLoopScheduler.add(blankRoutineEnd(snapshot)); trialsLoopScheduler.add(BreakRoutineBegin(snapshot)); trialsLoopScheduler.add(BreakRoutineEachFrame()); trialsLoopScheduler.add(BreakRoutineEnd(snapshot)); trialsLoopScheduler.add(trialsLoopEndIteration(trialsLoopScheduler, snapshot)); } return Scheduler.Event.NEXT; } } async function trialsLoopEnd() { // terminate loop psychoJS.experiment.removeLoop(trials); // update the current loop from the ExperimentHandler if (psychoJS.experiment._unfinishedLoops.length>0) currentLoop = psychoJS.experiment._unfinishedLoops.at(-1); else currentLoop = psychoJS.experiment; // so we use addData from the experiment return Scheduler.Event.NEXT; } function trialsLoopEndIteration(scheduler, snapshot) { // ------Prepare for next entry------ return async function () { if (typeof snapshot !== 'undefined') { // ------Check if user ended loop early------ if (snapshot.finished) { // Check for and save orphaned data if (psychoJS.experiment.isEntryEmpty()) { psychoJS.experiment.nextEntry(snapshot); } scheduler.stop(); } else { psychoJS.experiment.nextEntry(snapshot); } return Scheduler.Event.NEXT; } }; } var t; var frameN; var continueRoutine; var _key_resp_6_allKeys; var instructComponents; function instructRoutineBegin(snapshot) { return async function () { TrialHandler.fromSnapshot(snapshot); // ensure that .thisN vals are up to date //--- Prepare to start Routine 'instruct' --- t = 0; instructClock.reset(); // clock frameN = -1; continueRoutine = true; // until we're told otherwise // update component parameters for each repeat instructionImage.setImage((("Instructions/Slide" + slideN.toString()) + ".JPG")); key_resp_6.keys = undefined; key_resp_6.rt = undefined; _key_resp_6_allKeys = []; // keep track of which components have finished instructComponents = []; instructComponents.push(instructionImage); instructComponents.push(key_resp_6); for (const thisComponent of instructComponents) if ('status' in thisComponent) thisComponent.status = PsychoJS.Status.NOT_STARTED; return Scheduler.Event.NEXT; } } function instructRoutineEachFrame() { return async function () { //--- Loop for each frame of Routine 'instruct' --- // get current time t = instructClock.getTime(); frameN = frameN + 1;// number of completed frames (so 0 is the first frame) // update/draw components on each frame // *instructionImage* updates if (t >= 0.0 && instructionImage.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later instructionImage.tStart = t; // (not accounting for frame time here) instructionImage.frameNStart = frameN; // exact frame index instructionImage.setAutoDraw(true); } // *key_resp_6* updates if (t >= 0.0 && key_resp_6.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later key_resp_6.tStart = t; // (not accounting for frame time here) key_resp_6.frameNStart = frameN; // exact frame index // keyboard checking is just starting psychoJS.window.callOnFlip(function() { key_resp_6.clock.reset(); }); // t=0 on next screen flip psychoJS.window.callOnFlip(function() { key_resp_6.start(); }); // start on screen flip psychoJS.window.callOnFlip(function() { key_resp_6.clearEvents(); }); } if (key_resp_6.status === PsychoJS.Status.STARTED) { let theseKeys = key_resp_6.getKeys({keyList: ['left', 'right', 'space'], waitRelease: false}); _key_resp_6_allKeys = _key_resp_6_allKeys.concat(theseKeys); if (_key_resp_6_allKeys.length > 0) { key_resp_6.keys = _key_resp_6_allKeys[_key_resp_6_allKeys.length - 1].name; // just the last key pressed key_resp_6.rt = _key_resp_6_allKeys[_key_resp_6_allKeys.length - 1].rt; // a response ends the routine continueRoutine = false; } } // check for quit (typically the Esc key) if (psychoJS.experiment.experimentEnded || psychoJS.eventManager.getKeys({keyList:['escape']}).length > 0) { return quitPsychoJS('The [Escape] key was pressed. Goodbye!', false); } // check if the Routine should terminate if (!continueRoutine) { // a component has requested a forced-end of Routine return Scheduler.Event.NEXT; } continueRoutine = false; // reverts to True if at least one component still running for (const thisComponent of instructComponents) if ('status' in thisComponent && thisComponent.status !== PsychoJS.Status.FINISHED) { continueRoutine = true; break; } // refresh the screen if continuing if (continueRoutine) { return Scheduler.Event.FLIP_REPEAT; } else { return Scheduler.Event.NEXT; } }; } function instructRoutineEnd(snapshot) { return async function () { //--- Ending Routine 'instruct' --- for (const thisComponent of instructComponents) { if (typeof thisComponent.setAutoDraw === 'function') { thisComponent.setAutoDraw(false); } } key_resp_6.stop(); // Run 'End Routine' code from code_2 if ((key_resp_6.keys === "left")) { slideN -= 1; } else { if ((key_resp_6.keys === "right")) { slideN += 1; } else { if ((key_resp_6.keys === "space")) { if ((slideN === maxslideN)) { trials_2.finished = true; } } } } if ((slideN > maxslideN)) { slideN = maxslideN; } if ((slideN < minslideN)) { slideN = minslideN; } // the Routine "instruct" was not non-slip safe, so reset the non-slip timer routineTimer.reset(); // Routines running outside a loop should always advance the datafile row if (currentLoop === psychoJS.experiment) { psychoJS.experiment.nextEntry(snapshot); } return Scheduler.Event.NEXT; } } var _key_resp_allKeys; var trialComponents; function trialRoutineBegin(snapshot) { return async function () { TrialHandler.fromSnapshot(snapshot); // ensure that .thisN vals are up to date //--- Prepare to start Routine 'trial' --- t = 0; trialClock.reset(); // clock frameN = -1; continueRoutine = true; // until we're told otherwise // update component parameters for each repeat image.setImage(("images/" + stims[trials.thisN].toString())); key_resp.keys = undefined; key_resp.rt = undefined; _key_resp_allKeys = []; // keep track of which components have finished trialComponents = []; trialComponents.push(image); trialComponents.push(key_resp); trialComponents.push(text); for (const thisComponent of trialComponents) if ('status' in thisComponent) thisComponent.status = PsychoJS.Status.NOT_STARTED; return Scheduler.Event.NEXT; } } function trialRoutineEachFrame() { return async function () { //--- Loop for each frame of Routine 'trial' --- // get current time t = trialClock.getTime(); frameN = frameN + 1;// number of completed frames (so 0 is the first frame) // update/draw components on each frame // *image* updates if (t >= 0.0 && image.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later image.tStart = t; // (not accounting for frame time here) image.frameNStart = frameN; // exact frame index image.setAutoDraw(true); } // *key_resp* updates if (t >= 0.0 && key_resp.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later key_resp.tStart = t; // (not accounting for frame time here) key_resp.frameNStart = frameN; // exact frame index // keyboard checking is just starting psychoJS.window.callOnFlip(function() { key_resp.clock.reset(); }); // t=0 on next screen flip psychoJS.window.callOnFlip(function() { key_resp.start(); }); // start on screen flip psychoJS.window.callOnFlip(function() { key_resp.clearEvents(); }); } if (key_resp.status === PsychoJS.Status.STARTED) { let theseKeys = key_resp.getKeys({keyList: ['1', '2', '3', '4', '5'], waitRelease: false}); _key_resp_allKeys = _key_resp_allKeys.concat(theseKeys); if (_key_resp_allKeys.length > 0) { key_resp.keys = _key_resp_allKeys[_key_resp_allKeys.length - 1].name; // just the last key pressed key_resp.rt = _key_resp_allKeys[_key_resp_allKeys.length - 1].rt; // a response ends the routine continueRoutine = false; } } // *text* updates if (t >= 0.0 && text.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later text.tStart = t; // (not accounting for frame time here) text.frameNStart = frameN; // exact frame index text.setAutoDraw(true); } // check for quit (typically the Esc key) if (psychoJS.experiment.experimentEnded || psychoJS.eventManager.getKeys({keyList:['escape']}).length > 0) { return quitPsychoJS('The [Escape] key was pressed. Goodbye!', false); } // check if the Routine should terminate if (!continueRoutine) { // a component has requested a forced-end of Routine return Scheduler.Event.NEXT; } continueRoutine = false; // reverts to True if at least one component still running for (const thisComponent of trialComponents) if ('status' in thisComponent && thisComponent.status !== PsychoJS.Status.FINISHED) { continueRoutine = true; break; } // refresh the screen if continuing if (continueRoutine) { return Scheduler.Event.FLIP_REPEAT; } else { return Scheduler.Event.NEXT; } }; } function trialRoutineEnd(snapshot) { return async function () { //--- Ending Routine 'trial' --- for (const thisComponent of trialComponents) { if (typeof thisComponent.setAutoDraw === 'function') { thisComponent.setAutoDraw(false); } } // update the trial handler if (currentLoop instanceof MultiStairHandler) { currentLoop.addResponse(key_resp.corr, level); } psychoJS.experiment.addData('key_resp.keys', key_resp.keys); if (typeof key_resp.keys !== 'undefined') { // we had a response psychoJS.experiment.addData('key_resp.rt', key_resp.rt); routineTimer.reset(); } key_resp.stop(); // the Routine "trial" was not non-slip safe, so reset the non-slip timer routineTimer.reset(); // Routines running outside a loop should always advance the datafile row if (currentLoop === psychoJS.experiment) { psychoJS.experiment.nextEntry(snapshot); } return Scheduler.Event.NEXT; } } var blankComponents; function blankRoutineBegin(snapshot) { return async function () { TrialHandler.fromSnapshot(snapshot); // ensure that .thisN vals are up to date //--- Prepare to start Routine 'blank' --- t = 0; blankClock.reset(); // clock frameN = -1; continueRoutine = true; // until we're told otherwise routineTimer.add(0.200000); // update component parameters for each repeat // keep track of which components have finished blankComponents = []; blankComponents.push(text_2); for (const thisComponent of blankComponents) if ('status' in thisComponent) thisComponent.status = PsychoJS.Status.NOT_STARTED; return Scheduler.Event.NEXT; } } var frameRemains; function blankRoutineEachFrame() { return async function () { //--- Loop for each frame of Routine 'blank' --- // get current time t = blankClock.getTime(); frameN = frameN + 1;// number of completed frames (so 0 is the first frame) // update/draw components on each frame // *text_2* updates if (t >= 0.0 && text_2.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later text_2.tStart = t; // (not accounting for frame time here) text_2.frameNStart = frameN; // exact frame index text_2.setAutoDraw(true); } frameRemains = 0.0 + 0.2 - psychoJS.window.monitorFramePeriod * 0.75; // most of one frame period left if (text_2.status === PsychoJS.Status.STARTED && t >= frameRemains) { text_2.setAutoDraw(false); } // check for quit (typically the Esc key) if (psychoJS.experiment.experimentEnded || psychoJS.eventManager.getKeys({keyList:['escape']}).length > 0) { return quitPsychoJS('The [Escape] key was pressed. Goodbye!', false); } // check if the Routine should terminate if (!continueRoutine) { // a component has requested a forced-end of Routine return Scheduler.Event.NEXT; } continueRoutine = false; // reverts to True if at least one component still running for (const thisComponent of blankComponents) if ('status' in thisComponent && thisComponent.status !== PsychoJS.Status.FINISHED) { continueRoutine = true; break; } // refresh the screen if continuing if (continueRoutine && routineTimer.getTime() > 0) { return Scheduler.Event.FLIP_REPEAT; } else { return Scheduler.Event.NEXT; } }; } function blankRoutineEnd(snapshot) { return async function () { //--- Ending Routine 'blank' --- for (const thisComponent of blankComponents) { if (typeof thisComponent.setAutoDraw === 'function') { thisComponent.setAutoDraw(false); } } // Routines running outside a loop should always advance the datafile row if (currentLoop === psychoJS.experiment) { psychoJS.experiment.nextEntry(snapshot); } return Scheduler.Event.NEXT; } } var _key_resp_5_allKeys; var BreakComponents; function BreakRoutineBegin(snapshot) { return async function () { TrialHandler.fromSnapshot(snapshot); // ensure that .thisN vals are up to date //--- Prepare to start Routine 'Break' --- t = 0; BreakClock.reset(); // clock frameN = -1; continueRoutine = true; // until we're told otherwise // update component parameters for each repeat key_resp_5.keys = undefined; key_resp_5.rt = undefined; _key_resp_5_allKeys = []; // Run 'Begin Routine' code from code if ((((trials.thisRepN % 24) !== 0) || (trials.thisRepN === 0))) { continueRoutine = false; } // keep track of which components have finished BreakComponents = []; BreakComponents.push(key_resp_5); BreakComponents.push(text_4); for (const thisComponent of BreakComponents) if ('status' in thisComponent) thisComponent.status = PsychoJS.Status.NOT_STARTED; return Scheduler.Event.NEXT; } } function BreakRoutineEachFrame() { return async function () { //--- Loop for each frame of Routine 'Break' --- // get current time t = BreakClock.getTime(); frameN = frameN + 1;// number of completed frames (so 0 is the first frame) // update/draw components on each frame // *key_resp_5* updates if (t >= 0.0 && key_resp_5.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later key_resp_5.tStart = t; // (not accounting for frame time here) key_resp_5.frameNStart = frameN; // exact frame index // keyboard checking is just starting psychoJS.window.callOnFlip(function() { key_resp_5.clock.reset(); }); // t=0 on next screen flip psychoJS.window.callOnFlip(function() { key_resp_5.start(); }); // start on screen flip psychoJS.window.callOnFlip(function() { key_resp_5.clearEvents(); }); } if (key_resp_5.status === PsychoJS.Status.STARTED) { let theseKeys = key_resp_5.getKeys({keyList: ['space'], waitRelease: false}); _key_resp_5_allKeys = _key_resp_5_allKeys.concat(theseKeys); if (_key_resp_5_allKeys.length > 0) { key_resp_5.keys = _key_resp_5_allKeys[_key_resp_5_allKeys.length - 1].name; // just the last key pressed key_resp_5.rt = _key_resp_5_allKeys[_key_resp_5_allKeys.length - 1].rt; // a response ends the routine continueRoutine = false; } } // *text_4* updates if (t >= 0.0 && text_4.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later text_4.tStart = t; // (not accounting for frame time here) text_4.frameNStart = frameN; // exact frame index text_4.setAutoDraw(true); } // check for quit (typically the Esc key) if (psychoJS.experiment.experimentEnded || psychoJS.eventManager.getKeys({keyList:['escape']}).length > 0) { return quitPsychoJS('The [Escape] key was pressed. Goodbye!', false); } // check if the Routine should terminate if (!continueRoutine) { // a component has requested a forced-end of Routine return Scheduler.Event.NEXT; } continueRoutine = false; // reverts to True if at least one component still running for (const thisComponent of BreakComponents) if ('status' in thisComponent && thisComponent.status !== PsychoJS.Status.FINISHED) { continueRoutine = true; break; } // refresh the screen if continuing if (continueRoutine) { return Scheduler.Event.FLIP_REPEAT; } else { return Scheduler.Event.NEXT; } }; } function BreakRoutineEnd(snapshot) { return async function () { //--- Ending Routine 'Break' --- for (const thisComponent of BreakComponents) { if (typeof thisComponent.setAutoDraw === 'function') { thisComponent.setAutoDraw(false); } } key_resp_5.stop(); // the Routine "Break" was not non-slip safe, so reset the non-slip timer routineTimer.reset(); // Routines running outside a loop should always advance the datafile row if (currentLoop === psychoJS.experiment) { psychoJS.experiment.nextEntry(snapshot); } return Scheduler.Event.NEXT; } } var _key_resp_4_allKeys; var ByeByeComponents; function ByeByeRoutineBegin(snapshot) { return async function () { TrialHandler.fromSnapshot(snapshot); // ensure that .thisN vals are up to date //--- Prepare to start Routine 'ByeBye' --- t = 0; ByeByeClock.reset(); // clock frameN = -1; continueRoutine = true; // until we're told otherwise // update component parameters for each repeat key_resp_4.keys = undefined; key_resp_4.rt = undefined; _key_resp_4_allKeys = []; // keep track of which components have finished ByeByeComponents = []; ByeByeComponents.push(text_3); ByeByeComponents.push(key_resp_4); for (const thisComponent of ByeByeComponents) if ('status' in thisComponent) thisComponent.status = PsychoJS.Status.NOT_STARTED; return Scheduler.Event.NEXT; } } function ByeByeRoutineEachFrame() { return async function () { //--- Loop for each frame of Routine 'ByeBye' --- // get current time t = ByeByeClock.getTime(); frameN = frameN + 1;// number of completed frames (so 0 is the first frame) // update/draw components on each frame // *text_3* updates if (t >= 0.0 && text_3.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later text_3.tStart = t; // (not accounting for frame time here) text_3.frameNStart = frameN; // exact frame index text_3.setAutoDraw(true); } // *key_resp_4* updates if (t >= 0.0 && key_resp_4.status === PsychoJS.Status.NOT_STARTED) { // keep track of start time/frame for later key_resp_4.tStart = t; // (not accounting for frame time here) key_resp_4.frameNStart = frameN; // exact frame index // keyboard checking is just starting psychoJS.window.callOnFlip(function() { key_resp_4.clock.reset(); }); // t=0 on next screen flip psychoJS.window.callOnFlip(function() { key_resp_4.start(); }); // start on screen flip psychoJS.window.callOnFlip(function() { key_resp_4.clearEvents(); }); } if (key_resp_4.status === PsychoJS.Status.STARTED) { let theseKeys = key_resp_4.getKeys({keyList: ['space'], waitRelease: false}); _key_resp_4_allKeys = _key_resp_4_allKeys.concat(theseKeys); if (_key_resp_4_allKeys.length > 0) { key_resp_4.keys = _key_resp_4_allKeys[_key_resp_4_allKeys.length - 1].name; // just the last key pressed key_resp_4.rt = _key_resp_4_allKeys[_key_resp_4_allKeys.length - 1].rt; // a response ends the routine continueRoutine = false; } } // check for quit (typically the Esc key) if (psychoJS.experiment.experimentEnded || psychoJS.eventManager.getKeys({keyList:['escape']}).length > 0) { return quitPsychoJS('The [Escape] key was pressed. Goodbye!', false); } // check if the Routine should terminate if (!continueRoutine) { // a component has requested a forced-end of Routine return Scheduler.Event.NEXT; } continueRoutine = false; // reverts to True if at least one component still running for (const thisComponent of ByeByeComponents) if ('status' in thisComponent && thisComponent.status !== PsychoJS.Status.FINISHED) { continueRoutine = true; break; } // refresh the screen if continuing if (continueRoutine) { return Scheduler.Event.FLIP_REPEAT; } else { return Scheduler.Event.NEXT; } }; } function ByeByeRoutineEnd(snapshot) { return async function () { //--- Ending Routine 'ByeBye' --- for (const thisComponent of ByeByeComponents) { if (typeof thisComponent.setAutoDraw === 'function') { thisComponent.setAutoDraw(false); } } key_resp_4.stop(); // the Routine "ByeBye" was not non-slip safe, so reset the non-slip timer routineTimer.reset(); // Routines running outside a loop should always advance the datafile row if (currentLoop === psychoJS.experiment) { psychoJS.experiment.nextEntry(snapshot); } return Scheduler.Event.NEXT; } } function importConditions(currentLoop) { return async function () { psychoJS.importAttributes(currentLoop.getCurrentTrial()); return Scheduler.Event.NEXT; }; } async function quitPsychoJS(message, isCompleted) { // Check for and save orphaned data if (psychoJS.experiment.isEntryEmpty()) { psychoJS.experiment.nextEntry(); } psychoJS.window.close(); psychoJS.quit({message: message, isCompleted: isCompleted}); return Scheduler.Event.QUIT; }