From 94535e80bac2a5ab230349c66a2fb191d7711e5d Mon Sep 17 00:00:00 2001 From: moblim Date: Sun, 6 Jun 2021 19:40:34 -0400 Subject: [PATCH 01/10] fdsa --- .vs/Effort-Task-3/v16/.suo | Bin 0 -> 47104 bytes .vs/ProjectSettings.json | 3 +++ .vs/VSWorkspaceState.json | 13 +++++++++++++ .vs/slnx.sqlite | Bin 0 -> 90112 bytes 4 files changed, 16 insertions(+) create mode 100644 .vs/Effort-Task-3/v16/.suo create mode 100644 .vs/ProjectSettings.json create mode 100644 .vs/VSWorkspaceState.json create mode 100644 .vs/slnx.sqlite diff --git a/.vs/Effort-Task-3/v16/.suo b/.vs/Effort-Task-3/v16/.suo new file mode 100644 index 0000000000000000000000000000000000000000..3115a218a275d32fbe5c95be918ccea1bee39e04 GIT binary patch literal 47104 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 literal 0 HcmV?d00001 diff --git a/.vs/ProjectSettings.json b/.vs/ProjectSettings.json new file mode 100644 index 0000000..f8b4888 --- /dev/null +++ b/.vs/ProjectSettings.json @@ -0,0 +1,3 @@ +{ + "CurrentProjectSetting": null +} \ No newline at end of file diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json new file mode 100644 index 0000000..3e7f9d1 --- /dev/null +++ b/.vs/VSWorkspaceState.json @@ -0,0 +1,13 @@ +{ + "ExpandedNodes": [ + "", + "\\src", + "\\src\\language", + "\\src\\lib", + "\\src\\lib\\markup", + "\\src\\timelines", + "\\src\\trials" + ], + "SelectedNode": "\\src\\timelines\\breakTrial.js", + "PreviewInSolutionExplorer": false +} \ No newline at end of file diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite new file mode 100644 index 0000000000000000000000000000000000000000..f88adb8c9b730367a514709aafcd290aae54b579 GIT binary patch literal 90112 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 Date: Mon, 7 Jun 2021 09:17:21 -0400 Subject: [PATCH 02/10] redo of changes, --- .vs/Effort-Task-3/v16/.suo | Bin 47104 -> 53248 bytes .vs/VSWorkspaceState.json | 3 ++- .vs/slnx.sqlite | Bin 90112 -> 90112 bytes .vs/slnx.sqlite~Stashed changes | Bin 0 -> 90112 bytes package-lock.json | 4 ++-- src/language/en_us.json | 22 +++++++++++----------- src/timelines/breakTrial.js | 4 ++-- src/timelines/taskBlock.js | 2 +- src/trials/breakScreen.js | 4 ++-- 9 files changed, 20 insertions(+), 19 deletions(-) create mode 100644 .vs/slnx.sqlite~Stashed changes diff --git a/.vs/Effort-Task-3/v16/.suo b/.vs/Effort-Task-3/v16/.suo index 3115a218a275d32fbe5c95be918ccea1bee39e04..5d5196352a7ffbfb925406602190698bee0a0b88 100644 GIT binary patch delta 6301 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 RnECyG)ciM8doZuX_+NA9*q;CZ delta 2721 zcmd^=e{54#6vunty0+WigR!mBbd-I{9_tZl9Tt=j8?(IM9y-|h$k$>H zbx9HN0ZmBFH0r1p&rw&#qqZ`*Vpf9sJuXWO%6(?Kkx|~31+fB512&KiEP#EvO@~|r zrUG8pXgRu%UGJOFBSKR-=x=q1JgUwqSuz)z2Y7)oll#D5bhZUytI_SX=of(d!D7(g z>M34=z5x^h_FszrVbBa#Qmwrrm*ZOn?J?j4{jCS0(ni~f!GD?;tFwjk!mDuO{1gDr zPs)-=aGrR-oS%DiJFjns%(+qk=YsRYx#@3p-Nl?ZumVSR=bTJQ#&IB;Z7$_dpNF~| zu*|#!d5^A>E4w~o47>v4tKg_UXxNWKKLJjH*TC!G4e%y71>OR0gAu@UhS8q^XLVge z|1NkBybsO+ zy-DUFqY{&E$}$Wsokrb`MtL?wqgHrKyhsy{hlmTDk_OdU9 zXSB$fF!E(J))$9qVn(wfDq)+IZofcX#jtasae*5CmQSEuHqnh~lfq2#yoj{VMBVuf zir`YUrg>&Q4P}lN&#w>#OCUCYM!+S@#YA3vxNa*1<6drr{En_~M!!XuJJE+h7uW{2 zgB{=*pnY#I5PBecZxcvPG7vbUQRv)kIz8V_rDGOaQTL}+0g*J4qTX%Z$L28+G zk#fuDrB1B8&6bBL#?EQH{7W9l$%3(sKgORsT13v^%qi^jXQR+)NxrwY$LI9~YEz%@ zhIb|9UUtz>Uz`#H^xas5E|%En8!Z>tfsYDLxe-e*J1_5Cw>9cqsE7(^C4j%5ybljS z`B|oJX9LHhjXPyQUuh1_G4ls8QZVE8>0b3;)6Khh7W4oPawmuYm3}K+^!Fl-y6Vj{ zF@-_{`EMEC9HC#XJVDtDf^==Wl~#|s zw2lP_Mbup{^MSb2=Y`!ZvhfG`<74A)6k6c}q|R2U^+}b~ORBOLv-p?7|N96s5>R@w0Nw=GP12f%nGhwyEar^6RK+WwYOLK=hXzOYW==>RrA*bLIHnu z&|AA^jn%Y|#Fkajj(|3~U6Lp==-2#xVWi^X6}U81j}Wf-{v~!a)MWuh0x2Q{h%=9B`OcqM&l$uzM)|-WV=aOH2*X|&8e~Z_a zKCkrL{K#tYH46JG8vM8XNY< cMl5`jl21*I$LC8u2C1j!Osvmxs~Adt2Y6(^*8l(j diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json index 3e7f9d1..ebefadb 100644 --- a/.vs/VSWorkspaceState.json +++ b/.vs/VSWorkspaceState.json @@ -2,12 +2,13 @@ "ExpandedNodes": [ "", "\\src", + "\\src\\config", "\\src\\language", "\\src\\lib", "\\src\\lib\\markup", "\\src\\timelines", "\\src\\trials" ], - "SelectedNode": "\\src\\timelines\\breakTrial.js", + "SelectedNode": "\\src\\trials\\breakScreen.js", "PreviewInSolutionExplorer": false } \ No newline at end of file diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite index f88adb8c9b730367a514709aafcd290aae54b579..d0f38119d3af79cb347bb3c46725347b1364c1ab 100644 GIT binary patch delta 2659 zcmZWqO>7ip7@ie7-3p;UcDujb-O}QsLesqhph!<749o(__bu9~?hE zvH54}{D{2&{?qDU)j2tv8o_5`MV9skx@6l@HI}s~v$EIO(ct5z;+@&hC45H8vXpWa z88!1IP@3dQF)B;LfLLyFIlT>wmt<)-V9X+>HDi=$tD*DHY?NoTGndL^pfr)CQ7|#- zIx$Ogl$MG_skYjsuE|oy)6mF`C0bMU5;a>DoV8rKf!^X*F#(e*hFMxP)?4)wSFre1 zTfOy$M{O$_zl^4g^dZDgX+xh%_Zh-Uo!`vW$KADU2 zXW(@5N|To*EKV_O-6|RDZOJFkV;YLVtZAy#vTC)Z899fupsX0G(w@S*r=y(tMT}q( zR`tjQdX8`+;sqa^)(o$|0*o!-KmoU;R@B@80vk9hOL3sJMpQRtAy1q^W?(bUlCANg zd083)GiIqZTT{VuN~AKswao%_mggh8kg?btW>r>i5VvuyKAex{)12c6^8-x=!ZWfo z2tjeTuCoada@w!{qPKW0U}#E~qJbb(XjbjIZ}U3ZluWX|#U^zMH-hTRHp|vBmTkHl zW9Wx@$mmHV05#em=T3g$BGwo^fm$%`m5MidW86XPHQp2gbL(|oU<1e7nj+-R-}y+B zi^x%TWPAtu~5A&wkD185l4RGs=r--Il^46Zb_D73?eU8+Gw z^omU?)CU@eunF#wxB;99Br=XejDW&?BzBN@+N4Fo-1!q$p)t%>G4!%p@x`OAxJ#a@ z*ITs*vU0;4S6AK|BAvk_XS=71!D*ryIAdVChtm>$66PZ)X+x9r;^nj&P; z-4Lh&tRTfJR!tLFY^2FCSyO?_EPQ-y7%{3*#WKB36If_hEB`_q9cp7Mqgvg~%o^2j zx;X*OI7yy!B-NY%1avmYk-j8Wv##n1Asa+ljVMCapOB?6jGbEo>*SiLIBsK&RB6Wf zZ((N&w<{dOM7-N|v!;c)fpefBuJxk-TrKqTqw;=1+?S2Q5SRYu>;799AsD5%5Au|P zGBXwKKimt2N?r0&ZfdrW%hpO9=%V$p|NUpbbSgbC zK7p=)T-fGXJ^T5|-5wYmS8^65KmGBzCyJ6YD0%ez_s+Smp2A!_d-TO;n+som_s##~ CiC5A9 delta 2660 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 and P", + "your_job": "Your job is to pop the balloons by pumping them up to a spike in order to win points!", "pop_balloon_earn_money": "The points earned from popping a balloon will be shown with a '+' sign in front of it (i.e. +1).", "points_to_bonus_conversion": "For every 20 points that you win in the game, you will get $1 at the end of the experiment.", - "cumulative_rewards": "You will be shown the total number of points earned at the end of each trial.", + "cumulative_rewards": "You will be shown the total number of points earned at the end of each trial. *Insert picture here*", "two_balloons": "There are 2 kinds of balloons:
GREEN and BLUE balloons.", - "blue_balloon_points": "BLUE balloons will pop after you pump 20 times and you may win 1 point.", + "blue_balloon_points": "BLUE balloons will always pop after you pump 20 times and you may win 1 point.", "green_balloon_points": "GREEN balloons may win you more points, but will require more pumps.", "green_balloon_pop_time": "GREEN balloons will always pop after 25 seconds.", "green_balloon_pump_bonus": "If you continue to pump the GREEN balloon after it hits the spike within the 25 seconds time limit, the bigger the balloon will get and the more bonus points you will earn.

If you pump the GREEN balloon and it does not reach the spike within the 25 seconds time limit, you will earn some of the points for pumping the balloon.

(Example: If the total possible points you can earn for a balloon is 2 points and you pump the balloon halfway to the spike, you will earn 1 point.)

", "green_balloon_variable_points_pumps": "For the GREEN balloon, the number of pumps needed and the number of points you could win can change on each round. The number of pumps and points are listed below the GREEN balloon.", "blue_balloon_constant_points_pumps": "For the BLUE balloon, the potential win will always stay the same (1 point),
and it will always require 20 pumps.", - "reward_prob_variable": "For some rounds, the chances that you will win points for either balloon are 50%
(even after popping the balloon).", - "reward_prob_certain": "In other rounds the chances of winning will be 100%.", - "prob_display_location": "The probability at which you will receive points for a trial will appear at the bottom of the screen.", + "reward_prob_variable": "For some rounds, the chances that you will win points for either balloon are 50%
(even after popping the balloon). ", + "reward_prob_certain": "In other rounds the chances of winning will be 100%.", + "prob_display_location": "The probability at which you will receive points for a trial will appear at the bottom of the screen.", "reward_prob_display_event": "The chances of winning points on that round, and the number of points possible to win, will be shown to you while you choose which balloon to inflate.", "pump_keys": "Press the Q key to pump the balloon on the left.
Press the P key to pump the balloon on the right.", "choice_locked_in": "Once you have chosen a balloon, you can only pump that balloon.", "ready": "The experiment will start now.
Press next when ready!", - "blue_practice_pump": "In the next trial, try popping the BLUE balloon:
To pump it, press the Q key with your left index finger to first choose the blue balloon and then to pump it.", - "green_practice_pump": "In the next trial, try popping the GREEN balloon:
To pump it, press the P key with your right index finger to first choose the green balloon and then to pump it.", + "blue_practice_pump": "In the next trial, try popping the BLUE balloon:
To pump it, press the Q key with your left index finger to first choose the blue balloon and then to pump it. Wait for the balloon to appear on screen before beginning to pump.", + "green_practice_pump": "In the next trial, try popping the GREEN balloon:
To pump it, press the P key with your right index finger to first choose the green balloon and then to pump it. Wait for the balloon to appear on screen before beginning to pump.", "wait_pump": "Wait for the balloon to appear on screen before beginning to pump.", - "missed_choice": "You will have 6 seconds to make your decision. If you do not respond in time, you will lose the opportunity to win points on that round and will move on to a new round." + "missed_choice": "You will have 6 seconds to make your decision. If you do not respond in time, you will lose the opportunity to win points on that round and will move on to a new round." }, "quiz": { "confirm_understanding": "To make sure you understand the task instructions, we will ask you some questions about how to perform the task.", @@ -103,7 +103,7 @@ "total": "Total:
" }, "break": { - "prompt": "You may now take a break.", + "prompt": "You may now take a break. You have completed Block ", "done": "Press any key to end your break and to resume the task." }, "questionnaires": { diff --git a/src/timelines/breakTrial.js b/src/timelines/breakTrial.js index cc2c34a..efbc0ba 100644 --- a/src/timelines/breakTrial.js +++ b/src/timelines/breakTrial.js @@ -3,10 +3,10 @@ import { lang } from '../config/main' import breakScreen from '../trials/breakScreen' import buildCountdown from '../trials/countdown' -const breakTrial = () => { +const breakTrial = (iBreak) => { let timeline = [ - breakScreen(), + breakScreen(iBreak), buildCountdown(lang.countdown.post_break_resume, 3) ] diff --git a/src/timelines/taskBlock.js b/src/timelines/taskBlock.js index f4fb97b..369c1cb 100644 --- a/src/timelines/taskBlock.js +++ b/src/timelines/taskBlock.js @@ -18,7 +18,7 @@ const taskBlock = (blockSettings) => { if (blockSettings.num_breaks > 0) { let breakInterval = Math.floor(timeline.length / (blockSettings.num_breaks + 1)) for (let iBreak = 1; iBreak < blockSettings.num_breaks + 1; iBreak++) { - timeline.splice(iBreak*breakInterval, 0, breakTrial()) + timeline.splice(iBreak*breakInterval, 0, breakTrial(iBreak)) } } diff --git a/src/trials/breakScreen.js b/src/trials/breakScreen.js index 4448ff6..4cb6cc3 100644 --- a/src/trials/breakScreen.js +++ b/src/trials/breakScreen.js @@ -1,11 +1,11 @@ import { lang } from "../config/main"; import { baseStimulus } from "../lib/markup/stimuli"; -const breakScreen = () => { +const breakScreen = (iBreak) => { let stimulus = baseStimulus( `
-

${lang.break.prompt} +

${lang.break.prompt}${iBreak} out of 3

`, true From 682f40c8804173581adfcc1ce00b8275b8b04aaf Mon Sep 17 00:00:00 2001 From: moblim Date: Mon, 7 Jun 2021 10:03:47 -0400 Subject: [PATCH 03/10] added .vs to .gitignore --- .gitignore | 2 +- .vs/Effort-Task-3/v16/.suo | Bin 53248 -> 58880 bytes .vs/slnx.sqlite | Bin 90112 -> 90112 bytes 3 files changed, 1 insertion(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index 12940b5..18d085c 100644 --- a/.gitignore +++ b/.gitignore @@ -16,7 +16,7 @@ .DS_Store .env* .env - +.vs npm-debug.log* yarn-debug.log* yarn-error.log* diff --git a/.vs/Effort-Task-3/v16/.suo b/.vs/Effort-Task-3/v16/.suo index 5d5196352a7ffbfb925406602190698bee0a0b88..86be07c07f7d6fa3f7c71bcff71a98b1bf9bc522 100644 GIT binary patch delta 2205 zcmd5-eN0q*Eiji3inXY`9`yvs%4ICvP{}JV|>E@>)b4q8Slswv|7O zd^=(Xg8ZA1KZ4ka2q1z8+VOMHXe`#WpcZLfuX$GHCL66hk8(RA2SE`!k-vcGLUbbz zAWVozvnR@R=rgr<)Z8@lAT^f)6Ddum2CrHY32IyxLX)&nqiJJA=_sc*nQYYj+cx<| z45%~Y{tw%oi#w!h{;Aypu2H+whjOVAZ=re|@iu~Vxj8VMUIiY5OVSzUnII1XHIYKD zUTgk>AZz(IS%r!JIHZwNK3xfPzXi%=e>dp!R0xLml*-fq+M1BSh zUm}R2t_DG#D;|}6D?8gN3U{*`~N-%79XNoHu4jwbLUOl&G;lo2GR<^=YjXi4e z@#LZ$CT)p53O%L(UygZ|TfSPh=>ok%Je?k{$rLwp9B_Ht1ZG9O5JA!8C=WqT9zI)~ zLt4(`Sv0TVwm$H+WRgs!zc9$Qo55_mB8*_bb#fx6>IY%b1O1{AzIBv>SRqC&J`If? zw7#AL$85O}wk+`$G|;ds+W^t0f!>m#Xi)?01;RzUblIuv%SBif=P=M_w&=8PMiJEgRLDe?S~P2^}jugn2ia;m_@0$ zZ*9eK_X78~W0aOWb{4fH%d^PUB&*&*l|_A;G`fOFQlgG&qE_FX6&J5>&iy@YbFvO zXyl^D-BQ1Ji9sOdfXUakNuRwkp++N&ym~ol+YQr4Xf2od6$yTB+bw-J)GK@Ti(BAV zSjYVInPJRGZ2sM6;LUcubZTrX2S2=AC>2ir$l%K14ES``2wP^Gq^^%5dYGFnRul$D t?kxuKt8A(I^f^QPlLei$;PkTi>GwJ4I1>cl=O@_*z|QQI3eNtN_9x9eP%Hod delta 2677 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 delta 2323 zcmZWp%WoS+99{$2I0Dfowd1#)N7JUHag&lqNuiL36Pv~+O2$N>peNC=4wv-{f_+s$RQ`hDN;_02bP@Vw{X zdCymg!1$x&a$x*$>s}@>?>x&42dCayn7+6$J9G3$=Gy6=r~folP3OwW(5Uy9Y{=5t zK%Z<=tdT55gl4zNrQomUfcJ1^@Rs)%t;tfx2Rs*E$wIdLRQqYR-IRUDYA5dC0J-rv8t;GRV#|x?99q+$OLVzs;d=WFrX(4Yhjs6v{atW20Wu0f*M2A4F`J4FG;*TFPQRYk98Zhe6{ zFV;>${p5!rLxr)9H;5HvX_zTbDAsKavl5Gbb#SSS&9XMvd#|GZnbkhfSjtO>>bO=ybqp6M%gA= zou0QX*Yl<^!&}C#z^=gPf}Dqi$PI7c*t+Az8}5@ATdhv^U{;nwt}t%AvxO76ngU^B=Rxrn!4%Hy3|A&O0p8u-v5~bu z$=)eeTcGK;;P$z%Tg5cc%XsYE%SSoF3&+RZ1)Za-{V+rFEHu&;1J~gFHjR^*vQNWOfRBAEsy=@}E@JOe$A{-m;5@-_B6MQn~ zU_Er#^KCTaA0~7(NQ!d?(lGrVHj*Nif|#zTA{I)@QiM6kotgApiC6`16mS)JH@d7K73i^ufkz*#E<fj0w!HHF18gKIC=*NNg(LlJC#g@~ z%q^}Ib6LI0fzU}N6yvt+iiX?t6E2-a!AO{Lx^qzCPt@a5^0L=1{06(QtoC|gIaj)# z&%OVUvno7dPu{r@Nn!^<|H?PU(ycUUSUE^x+xsvNs$03 lnni>?DYTvP{YLm+&(nW@?p2-mlWF$%({Dc Date: Mon, 7 Jun 2021 10:03:47 -0400 Subject: [PATCH 04/10] added .vs to .gitignore. Redo Pull request for Feat-instruction-break-test edits --- .gitignore | 2 +- .vs/Effort-Task-3/v16/.suo | Bin 53248 -> 65024 bytes .vs/slnx.sqlite | Bin 90112 -> 90112 bytes src/timelines/breakTrial.js | 14 +++++++------- src/timelines/taskBlock.js | 14 +++++++------- src/trials/breakScreen.js | 20 ++++++++++---------- 6 files changed, 25 insertions(+), 25 deletions(-) diff --git a/.gitignore b/.gitignore index 12940b5..18d085c 100644 --- a/.gitignore +++ b/.gitignore @@ -16,7 +16,7 @@ .DS_Store .env* .env - +.vs npm-debug.log* yarn-debug.log* yarn-error.log* diff --git a/.vs/Effort-Task-3/v16/.suo b/.vs/Effort-Task-3/v16/.suo index 5d5196352a7ffbfb925406602190698bee0a0b88..07b11b06ff69c7e82141589482ca6e2bbf24aec1 100644 GIT binary patch delta 6947 zcmeI02~bo=8pmJH#V|Y$ISjXeh@c!Z$fYql2wq483>uR~1sPD{2nGiayhbz|&nSGZ zr6gO6R}Ljc9itmf%%DanV>G%kF)@d6*X(XKF%pj~S&{wsn;CYDiNL@Dusg4j)ycA%io#_*JPHTA z7`(3VJ?4iNYdTfSM$!>~olM2(hHN3Lp(^=9>TtB7lMbqlja0pY!Yw!YRvt0I16fai z!30;pZTO`^UIX~ZK1dTlH{cE2L3iK}xNQK^KoATE*=ll2m)ilIPfqS z54i24Nb^B$-ZIus*V)5NBdwlU{IZR(dRnwet5<#d$|+IL$GvUkTmltQQeVF6c%;!% zJ~~Wcx8?Ty;;UiHb#zonHo>tX(pb>j-o{t959kZ-1AMM-NOgdYDzwT$$PA`7MS{YB zTy377jDBHh+^huUQZNNf1!aIg{xo0&(?L1lwlk1E25R%Pq3w=2A!XQ8G9U-sPRZzF zO`qL`4Xm~>vQ8YK=5L$Z^XF%OrYbQqRtV)3?$d(~$yIdJU+b#CI`OR~PQ3Y!Av^qjNUbBHmWSa4Y*VDP2*>r?!ABcgDS%`;Ws|H57%@B2@>%ana$mz#Lo0 zLAfGdQto#STQMC4?mGOci#JJ6w1fpwTYT2tJ(s9aJGLo*#Y*V`Z4>2!a>qo^b~Vve zk&9u=_sgRN-T2A;JWJdgBcKwC9QT89x&51{f8con<` zc-`wr-vLeFBp|h$cF`$hc;jiLXTV?V<+DiN1@D1#;C=7`I1es>kHE*^6Tt8P6zN6q zSMWD*348|r4*miD2|fq^0$+eH!DTL5UmRO~5 zd7ad=$c0S=jvL)RMBymFMIF6|irfvNfy01I(Yc}*D!BA@R$hyS2LwDo<`{EbaHi;i zHXc+u+fBi_B3BXTjmtLC_23*jD$|lF#H`wa=Hmi=+YLVD4kz`_ac5kz{hj-{=AA{Sy~q@~lo_Zk(pEBODrioxQQYzBG8Ig;wE6U8 zz9VqQNRS0afowopKa--8XP);98$J^m6Q}~Sz-%xF%mvk89+(dnfQ4WYFatwLX;GEY zG|4o5#<0ZxndCX{HM%*(zaZwqE_K9P@64_qs~fVj)g#OGGft{ppL zad*;ZjG-|Z@uZb0>N0)FY@;r79qBV;QLDDJWTvs-1V9pi5kHdv2*gGYC-YD*%ebuV zO16s9Ll;@h!^~`Ru7b{3{4M@bQ`wN|2v%hX@$m@lGljFCY0gb`)t)>2N&U0cYieDt zs`J<1crP%-?6N(zZ1n4m{7rKga=wUdh#>R+V3LjUrUPR=EMfVF8EqaL8qTECCO=e^ zBP<%RR}Bb@1-uj6Md1afXhwlAMasPB%)ajQc|rGt)A0WP$OR#?D5<|LEw!H^E-f`t z8<(UjHN^EVP0_|BCKl@w`nJZA0L#K*#l6mM#54tk-NhYHSw4N3x=q(

rj%DymU!c6LG^K^b^a#R z@6eLSMOO;WlFr&rA1XBPrIZdvTyR%gWYOu&E?hMvix{THYING*ppdWr?jb>pfdv;u zM^BPM=A(jNv^caUnNNCC@`h0~dfGxIzdeA$H@1JDEGqb6!J+MUDT(eZ9G!##$E1F3 zflR(Dfu#1Jm|rc*IR`P(Dar|TNtt4AtX&VM^&?YKzB^H2LOi z1?g9WbW_--jbF8uhi89FcD*O-HnFo>u<}U9EXJo53_>B$sFvOe?kA+5Z~&2apOArk zQ}bZbFEnq?m63H}6jdGzq>Cqvv@;F*g;J-JM60R93&)h&zOtyyVpGJS%>DO zlq5mgl8fR}OOlG>lKL6apn0YJs$*_F*hQdZjdB zg{b5ws-DuTr0kZc?|qH5Yr!CTX}v4ypGcsk%P%P<3AdE5*v3@+|6S$|tjPe!o4QP% zEQ=T1R{Qbf;Pb_J6j#gP)!FQ)?gsK$^Qe8!3mWU0-yPeMkIMG}ov(MJ1+Sd#e#Z{w z7EkkeQO;%^UD)MHYqmzy7f)-*F{JR#DsCmaD*`mLouqsevGkwWZD3$MP%)vrVlJ$ zkOeLkb5K{@yQ{g{{v-<+o^K}x;P<+q|3!4v2&#eQRYv0=p2e(o|EaH+`BuoRXZ(v= z-<)9GH-G1?K@=LBgt7Sl4L-|cR)=%fG@AOR2N_-q99SH@pgtkP)4J&K4+AFs!8fe( z%ArdKdmi+AcW1gsWXJ)2TEAmOod4Ij@qcXgok)Y5<7n5hJ$^c&pO7MGv07>P=97w2 znvg=emR{i{!eqRLQY?@Gxl;S`;DZEu;X=2USo0)ouBq%PN>81e)%9|IP&4m*{#su*?arxWIn+Fc`GT2P*GsqyggVsv!Jq^V)QFP-ZV%@T<uI|v=H@4pI)X9b}Ebl=So@JemzMU!gALiQ}yKC?K zu0y|1k8k#+3tPN@b7*IO{>`E9@Qwd#hbC)t!F`F)nS0Tk;lG&PxH_wM@DHfBK;s7V zks_QHS6t^0&+u!(d?~I?>?&6LTyah445Hr7pR)P))7w9yTN^DiTJjkUX^OB!wR|kM z)a*-RmYc_0WON`k*b;VPr~F=nVqRAd>IjN6gzv_=0(^BUM!27jkK8}78)AMm0^zJa W073T`43mz-!;#&2FR|Lfy#E3)e=(H+ delta 5208 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 diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite index d0f38119d3af79cb347bb3c46725347b1364c1ab..82144a656731cc5d6e664d802a17005c15b34986 100644 GIT binary patch delta 2671 zcmZWqOKcNI7#=rda00?fh~vjPb^-y~f}I!dR?x(8hzpL=P(*19VZ0tYi`To(&Tbx6 zr4aSl3)P;es;Wpx9H>y!oU71l&potO>kH?fS-i9i>2 zY)xkwn=(6dkDU+x?kjH1gm3ZRXc?oFr^u+4FM-lIp%kYW9RHcTmDbPOC@t*G)TH(hav4z;OmVDb};PC^cK z3wk$Ablo(KR^#;kk1@)Fg8S`8sw}8V-r`o8!EDP>ZOt^=y?(^;Wm7NRs27M;Z7(cw zlP6rZNR3{vYt?o>AI%O3K7X1W6u*DYD&jYAC3)NDWsw)BdSh2I*V>X#e!$aEO=eG1 zgO)YBEzRfxp9OW<)YSGAKEDzZ%+K=(HeuBUxj@fZL4;Chg44R$=&uCh*Z4pIx1?6o zy#Nv$xQdYiwAP5`r7Y!%_c=2~i(VyrXoK9X{J;%fW9(h71>;_+ zG)8YsIEcR^nnGZ18(o*!z{R$vNV)r0KI(H3J@1W75HBrxH-;@O^$Ew}bG%-N2@5F2 z(X-qD8b)=^piQLj3`U2+m97<~cI322HOPojaY%(Wfz3(Y1n)?!11A!RPVgb-fXbRk zd|Y(eqD8{I`IA=RF`lhz8fC506pwo1E<9DQw`vb$@MdFNJ$Y-0p)@~oj(55koF$4ys@hg#(_(S&gVt)}O#A0%PZu!1fExl)|^MMyfRJ{&($Aif>mW&J$_eu8o==5eDwbg1pxA z&EJ(mzc?yi7UX@|E({ClZ%y4-g%QG|^!7oXD2SP*3jdK_C=_+!#oW|PA(yF@1km3D zY=UmxDe78NJ>;o_l#iZf3w8JYynJB3nOFSP4j+W=2k+PN+1&i~oKPM-0CNc9vIbA2 z4HKTR9Gx-&k91>np$%?K3H2Tt(-2xp7Yv=R<*#BB+#C*KGzn-4Mzw)9BD6W^-_I)~ zj8R(#@5P*>%&HVcJ7I#rSEi!bTE&2TMGoP8UVXs^vg{OvIMxAA(NWLBtI!MILiih; zK?wf-6>T04alugvMJ;V1jMrml@OszT*-b)K z$#Cwa)t*ov5^5!Gs43!9RpDIq(B9fZC5{{_^@fltRsDBoXY3`H)$0HL=l4J6?$h0O zpYHx56*}@|dM(+ztK1ET`z?Kqz9^MW=-1EzxhXY%W$8z5cINv8Z+aCeheQ3ywy4Gm7GYN5Hapw*r>}T#K60J^#%oB)x{8dLr79>*3#BAM$^k$u zlVYu?2e4EXDF*>#7B;Opqe{9Boqy&NBBQ;5ZTVWdoeiAgrFSzREcTES|g+b(+x zDS1yr!<$z~lL7-~w}P`?%(c0<)J>j%NmRqEE*Tr$dg&Xy_%)k;`o5bz>qb+baMLv# zYfzgS05cyWKSD|g6r6AGWNU(|%yn)>b!M5iYEeTEdi{{& ztAZ|>|#PNzr-V0m^D0dfu1vhh*Y@)&T59& zUkN5J^ML|xakHYi0VEc^gp?G}+QigNS<2Jza%L(fxrBGdOO%i@24>8nOOH?iBeZXeG5#hl=Hdok)W5Sv5FCe#%)ZK@{T*kO}>n{NcsS8P^j<}KTFH^$IUiI9m4oB*y7fSh}! z=rvwr;w`QP<6f_OqcxG!GfKnVk!wsNeM58+CAj7ATvJYHov?8@*r(CK*hV{CQ>!bs;Px21Q+)!WH+UnO3V?J6b?(Z(Ln@cZgh` zA357ST?|eW$-@}~(?f!m#Btt=7NdSQC6qqKXZ`k?P0Ty58fM<$%j;gvilMi6dOrGU zllP0D$s@dShS$kFwlE|lvGidcwTX3Fu1;0_zo;*%aT#CT@_t^WWvYS-xGdBu~V;6sRWR9Kgy_->dW@KvZ&i`I3>SL6`c<<{5dA**&ph!Z{V6diCa z+zQ?BU4*~J8I+JPiiLP53WUK?vpN<(E|1)dAAR!j_g-}n#wXMtLggOU>g8|GzH*K~ S%0SOw{`%KXkCz|)u=PI$?nIsd diff --git a/src/timelines/breakTrial.js b/src/timelines/breakTrial.js index efbc0ba..41e07d3 100644 --- a/src/timelines/breakTrial.js +++ b/src/timelines/breakTrial.js @@ -5,15 +5,15 @@ import buildCountdown from '../trials/countdown' const breakTrial = (iBreak) => { - let timeline = [ - breakScreen(iBreak), - buildCountdown(lang.countdown.post_break_resume, 3) - ] + let timeline = [ + breakScreen(iBreak), + buildCountdown(lang.countdown.post_break_resume, 3) + ] return { - type: 'html_keyboard_response', - timeline: timeline - } + type: 'html_keyboard_response', + timeline: timeline + } } export default breakTrial diff --git a/src/timelines/taskBlock.js b/src/timelines/taskBlock.js index 369c1cb..4688566 100644 --- a/src/timelines/taskBlock.js +++ b/src/timelines/taskBlock.js @@ -3,26 +3,26 @@ import breakTrial from './breakTrial' import { generateStartingOpts } from '../lib/taskUtils' const taskBlock = (blockSettings) => { - // initialize block + // initialize block const startingOpts = generateStartingOpts(blockSettings) - const blockDetails = { - block_earnings: 0.0, + const blockDetails = { + block_earnings: 0.0, optimal_earnings: 0.0, continue_block: true } // timeline = loop through trials - let timeline = startingOpts.map( (opt) => taskTrial(blockSettings, blockDetails, opt)) + let timeline = startingOpts.map((opt) => taskTrial(blockSettings, blockDetails, opt)) if (blockSettings.num_breaks > 0) { let breakInterval = Math.floor(timeline.length / (blockSettings.num_breaks + 1)) for (let iBreak = 1; iBreak < blockSettings.num_breaks + 1; iBreak++) { - timeline.splice(iBreak*breakInterval, 0, breakTrial(iBreak)) - } + timeline.splice(iBreak * breakInterval, 0, breakTrial(iBreak)) + } } - return { + return { type: 'html_keyboard_response', timeline: timeline } diff --git a/src/trials/breakScreen.js b/src/trials/breakScreen.js index 4cb6cc3..e7723b1 100644 --- a/src/trials/breakScreen.js +++ b/src/trials/breakScreen.js @@ -2,21 +2,21 @@ import { lang } from "../config/main"; import { baseStimulus } from "../lib/markup/stimuli"; const breakScreen = (iBreak) => { - let stimulus = baseStimulus( - ` + let stimulus = baseStimulus( + `

${lang.break.prompt}${iBreak} out of 3

`, - true - ); + true + ); - return { - type: "html_keyboard_response", - stimulus: stimulus, - prompt: lang.break.done, - response_ends_trial: true, - }; + return { + type: "html_keyboard_response", + stimulus: stimulus, + prompt: lang.break.done, + response_ends_trial: true, + }; }; export default breakScreen; From af3b0a7cf8a450d67ae54900a77fcec9d1d6fd7e Mon Sep 17 00:00:00 2001 From: moblim Date: Mon, 19 Jul 2021 15:20:33 -0400 Subject: [PATCH 05/10] Added a new timeline for in lab studies, separate from the online version, will be adding new code to choice for RT logging --- .vs/Effort-Task-3/v16/.suo | Bin 58880 -> 71168 bytes .vs/VSWorkspaceState.json | 3 +- .vs/slnx.sqlite | Bin 90112 -> 90112 bytes src/config/experiment.js | 12 ++++---- src/config/main.js | 1 + src/config/trigger.js | 2 +- src/timelines/main.js | 2 +- src/timelines/taskTrial.js | 30 ++++++++++++++++---- src/trials/choice.js | 9 ++++-- src/trials/costBenefits.js | 55 ++++++++++++++++++++++++++++++++----- 10 files changed, 90 insertions(+), 24 deletions(-) diff --git a/.vs/Effort-Task-3/v16/.suo b/.vs/Effort-Task-3/v16/.suo index 86be07c07f7d6fa3f7c71bcff71a98b1bf9bc522..2f0d09493d1c780f945b5c1ac6b8c7e4c7cc8dcd 100644 GIT binary patch literal 71168 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 Y_sTb-k{$o8`qxw3UAO+xL{l*T4?aVt#Q*>R literal 58880 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 delta 3700 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 { // show condition fixation(300), rewardProbability(1000, blockSettings, opts, trialDetails), - frameSpike(700, blockSettings, opts, trialDetails), - costBenefits(1500, blockSettings, opts, trialDetails), - choice(5000, blockSettings, opts), + //frameSpike(700, blockSettings, opts, trialDetails), + //costBenefits(1500, blockSettings, opts, trialDetails), + choice(6000, blockSettings, opts, trialDetails), pressBalloon(25000, blockSettings, opts), fixation(500), rewardFeedback(1000, blockSettings, opts, trialDetails), @@ -36,11 +38,27 @@ const taskTrial = (blockSettings, blockDetails, opts) => { cumulativeReward(1000, blockSettings, blockDetails, opts, trialDetails), // end the trial trialEnd(500), - ]; + ]; + + let timeline_inlab = [ + // show condition + fixation(300), + rewardProbability(1000, blockSettings, opts, trialDetails), + frameSpike(700, blockSettings, opts, trialDetails), + costBenefits(1500, blockSettings, opts, trialDetails), + choice(5000, blockSettings, opts, trialDetails), + pressBalloon(25000, blockSettings, opts), + fixation(500), + rewardFeedback(1000, blockSettings, opts, trialDetails), + fixation(500), + cumulativeReward(1000, blockSettings, blockDetails, opts, trialDetails), + // end the trial + trialEnd(500), + ]; return { type: "html_keyboard_response", - timeline: timeline, + timeline: ONLINE ? timeline : timeline_inlab, }; }; -export default taskTrial; +export default taskTrial; \ No newline at end of file diff --git a/src/trials/choice.js b/src/trials/choice.js index 5640441..ba754bc 100644 --- a/src/trials/choice.js +++ b/src/trials/choice.js @@ -10,7 +10,7 @@ const canvasHTML = ` `; -const choice = (duration, blockSettings, opts) => { +const choice = (duration, blockSettings, opts, trialDetails) => { let stimulus = `
` + canvasHTML + @@ -133,7 +133,7 @@ const choice = (duration, blockSettings, opts) => { canvasSettings.balloonYpos, canvasSettings.balloonRadius ); - }; + }; canvasDraw(); var timer = setInterval(function () { @@ -180,6 +180,11 @@ const choice = (duration, blockSettings, opts) => { done(returnObj); } } + trialDetails.probability = probability; + trialDetails.effort = effort; + trialDetails.high_effort = high_effort; + trialDetails.value = value; + trialDetails.subtrial_type = "cost_benefits"; var keyboardListener = jsPsych.pluginAPI.getKeyboardResponse({ callback_function: after_response, diff --git a/src/trials/costBenefits.js b/src/trials/costBenefits.js index 4aef027..c02db05 100644 --- a/src/trials/costBenefits.js +++ b/src/trials/costBenefits.js @@ -1,5 +1,6 @@ // imports -import { eventCodes, canvasSize, canvasSettings } from "../config/main"; +import { jsPsych } from "jspsych-react"; +import { eventCodes, keys, canvasSize, canvasSettings } from "../config/main"; import { photodiodeGhostBox, pdSpotEncode } from "../lib/markup/photodiode"; import { removeCursor } from "../lib/utils"; import { addData } from "../lib/taskUtils"; @@ -27,6 +28,10 @@ const costBenefits = (duration, blockSettings, opts, trialDetails) => { let high_effort = blockSettings.is_practice ? blockSettings.high_effort : opts.high_effort; + let valid_keys = blockSettings.keys; + let get_reward = blockSettings.is_practice + ? blockSettings.get_reward + : opts.get_reward; return { type: "call_function", @@ -38,7 +43,8 @@ const costBenefits = (duration, blockSettings, opts, trialDetails) => { // set up canvas let canvas = document.querySelector("#jspsych-canvas"); - let ctx = canvas.getContext("2d"); + let ctx = canvas.getContext("2d"); + let timeWhenStarted = new Date().getTime(); const canvasDraw = () => { // transparent background @@ -114,11 +120,46 @@ const costBenefits = (duration, blockSettings, opts, trialDetails) => { ); }; - trialDetails.probability = probability; - trialDetails.effort = effort; - trialDetails.high_effort = high_effort; - trialDetails.value = value; - trialDetails.subtrial_type = "cost_benefits"; + /*canvasDraw(); + function after_response(info) { + //clearInterval(timer); + jsPsych.pluginAPI.cancelKeyboardResponse(keyboardListener); + if (info.key === keys["Q"]) { + // 1 key + var returnObj = { + key: info.key, + effort: effort[0], + value: value[0], + high_effort: high_effort[0], + get_reward: get_reward[0], + subtrial_type: "choice", + }; + done(returnObj); + } else if (info.key === keys["P"]) { + // 0 key + returnObj = { + key: info.key, + effort: effort[1], + value: value[1], + high_effort: high_effort[1], + get_reward: get_reward[1], + }; + done(returnObj); + } + } + trialDetails.probability = probability; + trialDetails.effort = effort; + trialDetails.high_effort = high_effort; + trialDetails.value = value; + trialDetails.subtrial_type = "cost_benefits"; + + var keyboardListener = jsPsych.pluginAPI.getKeyboardResponse({ + callback_function: after_response, + valid_responses: valid_keys, + rt_method: "date", + persist: true, + allow_held_key: false, + });*/ canvasDraw(); setTimeout(() => { From 630faccd3f199a4a5ac721be23aac6c64a0bc3ea Mon Sep 17 00:00:00 2001 From: moblim Date: Tue, 20 Jul 2021 15:16:00 -0400 Subject: [PATCH 06/10] added .vs to gitignore and changed experiment comment from /* to // to match repo --- .gitignore | 2 +- .vs/Effort-Task-3/v16/.suo | Bin 71168 -> 80384 bytes .vs/VSWorkspaceState.json | 2 +- .vs/slnx.sqlite | Bin 90112 -> 90112 bytes src/config/experiment.js | 12 ++++++------ 5 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.gitignore b/.gitignore index 18d085c..c2ebf49 100644 --- a/.gitignore +++ b/.gitignore @@ -16,7 +16,7 @@ .DS_Store .env* .env -.vs +*.vs npm-debug.log* yarn-debug.log* yarn-error.log* diff --git a/.vs/Effort-Task-3/v16/.suo b/.vs/Effort-Task-3/v16/.suo index 2f0d09493d1c780f945b5c1ac6b8c7e4c7cc8dcd..79b32d8913b6a87fbf617cef3806c49baf795946 100644 GIT binary patch delta 9002 zcmeI1d3;mXmB)Q$c>@`|f&t?NY_r(H+APV2fFxV8C1I^zRYEJv@@~o6ELjF56N1Sy z3D!wMwl+m+rwy2ngW8m)gct~uq-D~$pZSDIARB?nBq42*flioy3UjV(6Vo~~SqAwdM$8LI(ujUZk{XX_^STlJa?m9)$#$quDkf$a zN=i@i;mLMn&4|7d-bugr;x~BUIpyza5Lo8Q?GQlZ$X^Wq|xAcna@Tmb>t1?P2>zhpY+?9gKtq)9zFOJ z4?deZL60wC`A<{FaAr|KJ{<;43(&X&xf9um&^Kxq62f=C5U}t7@*wgMvIlt>c?5YB zc?`Mov>9$%x5EnPD$^q63J&iMf$W;<+Teh7qc$Nu*A3`V6=$bgXPNWX&+f z(M6UDmn#B{i?QHeyNwh^E*B>-!U9I9=5x{tmupmTJe~_d6BB&O(MUns8FJ8YGM1^r z_XS?9=Y-cY!U{&HVSF=P%V>K{^dMb-|J5$<^IC|>YpCv$@)_t+VwTH@t+uy;QAiAon8wfZT`NkL*T9kSh^x_OHpo9!Xs3 z7(RqQ1Btty{JXie-E;5C7Og9*4)~a;vy(u~@`mb1*5yqB2o=6>sYf$akwD%Uc1T zJMJUHc%+5r9R;D+f-v{^5-<*~VDb1ReEt@NxyNO7!992I!G1Cg41+6^I3=7(Gq48T zarC?w&zFJr`8muEd#5GhaIPXS>Yf+vVG?XOwl1{N9p8ncy_ydGmCC#h&&?zE|qx80zhPqPi}AYp=Q8y|GErq0(CTz48HD zlc(6&*xS=Cu*qtw`` z;kX)kQdNuBX*ATTy)utpohFyD zv#VNdxAQr*rY>iVxUW~t?QAgU73zWZUY}1Ba0%7r#r=X(TYrzk#I1C9T4Ww=k62mV zXcTDd?XLdL#$J!n%Igz(YIyQmsk%<@vhfu4z1_Zgn_S&tbqZQ_T{Yzcy?e<{p!!S5&8w+sgVoRMmpYDse}#w6ojWZ4=g*+QbTem(l1EYuhyL(g7dG z9kqdhB}z=mnL6C=SBlf0*3HyQ!XQEzSY-fbz)7M+vqks-Jl&TVijU7T9Ybt z7}=hgxHN_l<60e)74_QVgX7?EugyrNO>qrx-Ez$(4MOrD_u$rDB%j~%$o;pUAAaMI zer|GR*?3l;MUo|%T;|mw=`snVCb#_nbD{mi9O1$gM z62|3yZF`>x4>x>7FAv*y8cLMKcRh9Lv*w9^65Z|o!QP#p?0WMLPn>o=dZ**J75BMU zT&B@3>Hwoo(CZCCa99GVP7(CE6Bxbb&;#R;dW;Q$eTmTHQS=_zl2vd*<#Xn>&95{#P&qms;FEv z-N=qY*@~ihJ-X`Pm8JcUXPH0!?d{{wZ28%h^`KkE2~}Vu%*6rxjX>Cd#{W$qD3had zpKbxBz5iS)&gp~46uByYnIuw`F?}|2v6@LpYvi&fA@*S1Npej%gj6;7cFd^gR^3bf zT1R}Dc9^LzzMhVVjaXy?oxwZBr({@zUr z+WE&TK++#Sf0mdX-bzA8g0S0L4xAw!XkD4OA1RN9y#+f~!=GO?O6Vu9JcNEHq8~r&EMp5S~gjzXrN4PA){X+=w6bt3?#o>oV+H+i(h>DzOW=rSzz&lMev&k z)8O|H<|K;Bg+QOSb0=!#Cs)^O5@!VS*S8rqRKdm6<=zJSPp%kfZ=1!4U!x~CpW;W z6HIv7ds|d`kbUVm`|LT%8Ixb-aHF~R*jmsXCwmEaRrZQ-pbGV9*&?<0z!h=$k)o&)o~BHU}3ruG`r{Y7xW z_XbtBaCB5MC2Glm3>39(bp4`|&5Fluo@SbeY_Cz_VaMpmI>7-<{f+`$b_M>4Im#{J6jOR zm@SCFyU*ul-=xSf_iFmIU%k$aeM47zdiSKW=v_Z4c9!ba^E~sIrAtofB&Zpbj{h2 zJ@z(ALn`B<%AF`sXVIh7FG_IrMeXcPcxXrAp0sq51_w`RAh@*&7X0eN(1oHsyJJa4 z_yq#vJ2N7hS4PQ`<0lF91WO?JUJz_Y(qQ~N2lh>*!0z`t;CmCB@gqwPb~=YaVxaH9 z0@yT~2_Nsz0NHc+&FUl38(M<+wHI9asv5qf0>Y+DgbC%?b@SVBlGu z@;BefQVx6)Iu|C-z|m8=V0&K%kDs3dE&r~&&LV+{{n>cAjgjX@E6KN?%!xxQ!2d#a zM0aH@7S5bs4B>MRL+j<9NY49Rg#0|(m!G|7n3_Kxyz>E*Jido8$el3ngKS`)%ZBYc z3U1)@NWVc7X__7>jzjyCj2JXIqYZAPY=sAgD7&~NOaBvU>LlBqWWsPUWS9_xmpIv>CD9~b?2S(ON zW)#-`TPWwo`?gV_dywg$dF)$2_J1l8#<$r%1D$-URU!nr6DT?L{9OF zacHPVa`^(n8|jIt2P#w1c{^Qf4WdJ+6KEUi1S;v`kLPvjgiu}|ae^=AJs2iz zs4{IpQxF zNk{~uKq8UJh!RmDbSa}yMk6suEE0#rBU6wBWGa$~Ohb|guIO}BG)OX{MN*JdBn?R? zAWrmZC_HZxrMNI?7+r11lE}#{sCCPBq#Ke>ZpbtfdPQ?Z)PMGmn8Dz}IjOOI61Dyh z&D-M2TH;xgn}N<%R8Q#iGF*nHOV6N@Y18?Q8J!cDkN3pit63Cil2H{6&>k)%dW+Wd# zuWYWs1r4ApbB8?1IPyN!2E1(Ytz$!+tw!J31pb(vXwrYxNnY)xy7TMI0j&Q zIy#L#`!>wvTKiQFtR<3d@nTtEeV0GlnI)QS@p)n^=$~|2L{FrVgLEjEXIOh9oQX*} z(~+LyBjbQUnJJ>j_{eoIG&ns=1EF78&%VTfQMHC(=G*(UB(bKM?T++J8|l`1Un=_E zV_ExCaMl{u#PyK{)_%@`nBwIi-ynCS$KB`Al>=&a%^l(zO%oUTfZkrt<7p$mT*=jQ}?OW+R6{!aq@rH*!AESYVE92?))#k zvyF2OsI}e`axZ$F$vCb!sMZ#{-+jaNBMBT zCUJ!PV|tM7%7?Cf0_Zvu3n$CtVB57!$gEO=CO-h%B!FmtG>lzQ1(~`e`0S7bI_s)H zRwaY0D`oJ}$#j04bujle6>Pf^1UKHxg11(90#~Auq!;N7wbez6;_@0pb!~y67`jU) zyU-mvmM%Z~)Bv4jDoDB|gw;zD!vgsd8k05E1$hM(E{`m!Nk?lL%5X-C z*St5_N^L-Np^$&m1u9NC3v^{QMbNQ03hsXH)Us?73CNx@X`a8okMyr=(he2AKc89q z6OW|Hu3P3L9$38Dda1~fX~=RPqhpGh;_{-JJOgM>Cs-<2AXX*pY4(JpXQ%Gust5$M zdx7h@aI39aL!j$~H{|aLvuX@tHemLVf^O4b`%T&Ui(6eo>U~pAB=0(Y>kkdaH*ZCi z{_S}!9RSuXpBE7t`_{Ymi#9oLoVBcHT;Op-Zp8`Z>oOl*uIS{)mu&@G)3uZUe5 zr&23b(farz{dWrwA5)zz1P>I#4!;)ZH_=4T9W)KSP3VO~6E4*_AL_#qKcY(CE_9P( zg2JX?@+z!Ntp~2j7aE&H(A*@z7Z1az)6?Rj(^Lv=Ty&H|rAmdY*JV(>W6QV1=0Y49 zRQWL&QckA5oLOy$Pn!#`mH@Xm7++X3X_tJWheQxUzhgTj2TphH!8e^d=7h}KxIJQ^ zL8peM-5$_cj-mShF#m30ZX=+&kOrDt0^FiwVT~;WuAFcrDR8e%#aqQ+&w=n3$Gl{7~D<(#&GW!_)&I z-z%KGFtQ#C=VutL&t}!#fE?0F=ns#PG_;?s*$4I#_;s5n*m^ZjbqFYrq(a3W2auf$ zg?}7&0q%7h=ni9}pL6EG@x%?>8q1-33BJs3;;DaxR(jOs9x!-xDtvZnBv^(+Xz*wm z*bXN^#>KD7jBSbZ6aZWEJHvMqX~b=tFxr-uH|-YVGk7HQjBOrY&%vF263Zt9B!|?X zsq%#D*AAkWq5fP3WE}8>z`6-=tWo@wx5&x<>4cL+;ZymGvt z_Aj9=9h~49Pq);xm~-U@CM^GzRCn+6BHRAe`v#JryL298+};7rAB)XjdJqrj2yz9l zgBc_bbbCChJD$-hS+8GPNgkW!5j(s241tD)(;XIc(jT}CNS03l&Eim~?vOtIx%r<) znmHfhYvnqFiK)+G4)i2OFh)x8&hUaa`zp+*BqS3oeQoAKe^S=!XGcniS!+)$mg)EEB1Cp`0u+lW4G5q-kH&w=}VgJwhPFn z|7;BQH|T7OxoR9)X>PM8A`q&5&3*wyxLrn8x5@*^WfnX-+~AYI;MRC4X?J*PC)uAyMkC`UBdks#>XERluTEr3wWWT>w(Ms6c(==Qp;??&+R; z&%N*5GtWMI&3^Wp{fz)V`erbWk6t->k)b(^xx-u~ZREG)d+l5$8u`a%v=fB z#a|5>@>2ohsUUA$2yjkaDu}XF6gA_sz#KkW2?js4bqx0J8tfk&hztzv8ywj;G*Gz{ z_D81D*ix$X!YnF_PcoFn%$GLvL>Fa*6p|43h^4f+h7p;IJJN2y2D4eAQ@HlCCgL#LHSEYW$I45#hsxA00yzedstnVMXQo@%0HV0h{}uC$KGme^FZDbxA2U zvPYjIumOOHDujJp%oja-x6sB3J}8Y?yFe-XCgW})apPLYIWF^@no z7gUkY9}`qjY?>pGh63rlmal36CfJKsX*Gav1hJRpw<~l>}4vG1N0S30X=xMOQKsw1$QHCmxg3!nP&|Y}l0aG*EMf zSM#DeBWfC-HT9@wjhZ(1k3$NPSBp|H+ti$m6IcjPly#|UhCOI1g5i+hPy*1su z`ywf$A`{8hcQe2d> zR;_238Fmt5rBWlMHwL9K!%c*dR4@t&eLJAWB~8-HY93VgqH7r^QXKlcUP}3Ea{K!J zzm(0W!2bl?rN*BY$9bIxWEK|O2Dee*i_#)c9AHYZ168_vEd{NZuLm}QdgS!>f^1<% zcp9z0lK`cdgNU8h5F3VJo6L}=3Mka+hFJ|E&*nxcEoxu1NsyhA&L9#tQd=ERKPIgS zN;g8daBX*0L?~(@gt)um&6cHN(29j%tiTIatSd-hEbxm27_>H&84eKG&g!F*7k8?n zEb^KdTP?^eNa(KqJh6T_Q}x-YA@FzW=u9XMcO2#5tGZB@V05;avygjHU-~{%p)hw7IoAyMYkvtNrxxcFo zUWC^)QMV{LJMavsj%6iX$`(OORO)FpM+EK!NUpqq!af`LQp^H#MzdetscZ`r#e!hX z@Nt2~p}H|q1OJHhdWnmPVoQ$uIP-wH&HPHQGhb8Rkn5C>qG_)YoSpOxk+-S$$(t^o znj*iW-X*_ez+WI^Wp;B5-B($kU8T0rE}IXBmuhRXZNh;yLuLprtix$zabsleZY%h- z+Krz1-^hQlCF(rRTw?xa?p5fM8_a;M)rR3MAi-{P(QYtMKhE4|{$zfp&of_8Z;^+{ zpUAIhf(p9caXp|Vde-PI?Y7^fKcO!ebEU9tjDFHMTMC4`o#l4U$uphKv~$oIaM~Pq zsJP=7>Vo51dmDYv__!3s&sCxwN7^deS2pY<=t!bDEAE$D@JeK@x1UITSUEHst4v@1 H=!5?N#Ns8$ delta 2695 zcmZWrTWs4@7`B_nO;X#ZYnwP1r%AT8quQ3W-MY5BNR%Y)(o5DcKtf{eT*pn_T%6fX zFGE@fNIdZX7y%EJfEN(b#F)Yp0@eYV5Fl<7;vx+pp{d;q5}O1MXcNadIZndfj{fie zzyCkq|M?^rH|-ZU?Jow%ftUCgIdJ9d+kg!aU>jVeZSa!dXbmu}q8@uj zqU=QMInD?NUZF&#upnoQj{~#haGB>nvbFV(92n>u=nwY~9_i~pa_~@jJLC^f93_^T z?F85Y-+(gM0M9bbAP16QAE4MR_B-}6Yq00pG&@PB*a&l<`H8v0yvFFvDQ1}A=s)RS z>Fe|*+Mriyp*;2Qw>D~G>&=_#j1h^4S#;bbQ^X+Yq>S*BoleT}OEn=E_Z~$@Uxp$g zFkwZ?iAr9IE@?wJ%ez1kAqbT;Nlm8f5#wsy^9ZUBq$#2sCTY5$>MB-qw#>-|No!xk743r*(E+(~ z^1PMK9Wph8F`iAhRMs)M|+F$%JRBDsvwi4!wz1t^0r( zc2c9oVm+lNili~a4TRxIK7t5+`;f*(P1Z|l7FPG*YZ+%Iz4-HbdeUE&+t>U5rR>B7 z{)f;mHDOtb3%UTwER5fSwviVK@&Z&GVoIS6SGM<93R*E=H)@3RSkzndISVsFQ+WLZ zL3DHw4oXu+%(kN)vNeX>JL`3`czltD+wYfkfJwM;bx%<0s4Oa781RPBp4MT|L<(9E zL+xGY8Y^;vw_-sQ%L}3v>*OhdgXS<9v=*GXgF<6Rmo*#;1t?;F`&B6?37QmL z%jY0k`)IO0XG>U>GgrRM~FZqfX4S`!dYCELp(cdsaF zb|I&%Xw7&8=G zcecSrz}*x}^Euht7zfOB7)36Wb)4>J;iCw7ih`I$PnJ@^m~lB3h*v)g8X6s@O(kQA z)aeAy2)0thUKn1GRcJXym7;1XCt2$5cES5V*jQipbmN+U6B@NzGjGam8Wn>^@?^03 z9dx#!iwK$~=@zBe4h;pXqZwJ3GX>ZZm%5wH5gip|u{4jvJ{$aI%mQ;pvtP}|ToV$- zf>6y+I>V7j-KeC&r%11rxY$F)lH*PjxC?H9AK49Xo%w>^V0;YA_8R=mxI0AOV&0{H zb_vV`{T1^T{TUEgx3N02vk64X8#8Ont`=Jd3B4L*S*ML7D-PvdHXn)Z*#bW|moYqh zyV;Bx-E%kTzlkO0WfEKhe}R9??Aa~Q-vpEFwq_ea+FYO$4%A12JKzuS1N%JqlzEkY znEsyroTV7v^}6dWdxni0J;j6eug!mG#%wWU8)UnTi^V{w-C1h&It5^Nrkn%LfYavK zW@3&T%o~o)))w}b@nJDSE|(*1CtJ#USGVltt_w{h4SUlha#ve9yx!ACO>BerZiwZn I%OAY|A3}$iCIA2c diff --git a/src/config/experiment.js b/src/config/experiment.js index 28225ce..f29311b 100644 --- a/src/config/experiment.js +++ b/src/config/experiment.js @@ -16,11 +16,11 @@ exptBlock1.get_reward = [true, true, true, false]; exptBlock1.num_breaks = 3; // debug settings where there are only 2 trials in main task block -/*exptBlock1.probs = ["100%"]; -exptBlock1.counterbalance = true; -exptBlock1.value = [3]; -exptBlock1.effort = [5]; -exptBlock1.keys = ["q", "p", "m"]; -exptBlock1.get_reward = [true];*/ +//exptBlock1.probs = ["100%"]; +//exptBlock1.counterbalance = true; +//exptBlock1.value = [3]; +//exptBlock1.effort = [5]; +//exptBlock1.keys = ["q", "p", "m"]; +//exptBlock1.get_reward = [true]; export { exptBlock1 }; From e14220fa96ce492255c0770205f52674b638145d Mon Sep 17 00:00:00 2001 From: moblim Date: Thu, 22 Jul 2021 16:17:40 -0400 Subject: [PATCH 07/10] trying to push new changes to an exsisting PR --- .vs/Effort-Task-3/v16/.suo | Bin 80384 -> 72704 bytes .vs/VSWorkspaceState.json | 3 +- .vs/slnx.sqlite | Bin 90112 -> 90112 bytes src/trials/choice.js | 10 +- src/trials/costBenefits.js | 289 ++++++++++++++++++++----------------- 5 files changed, 166 insertions(+), 136 deletions(-) diff --git a/.vs/Effort-Task-3/v16/.suo b/.vs/Effort-Task-3/v16/.suo index 79b32d8913b6a87fbf617cef3806c49baf795946..5e5cc38da33b62a2682e796b34dfa3edcd38601e 100644 GIT binary patch delta 5412 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 KXU|XlzW)NjX#H6L diff --git a/.vs/VSWorkspaceState.json b/.vs/VSWorkspaceState.json index 18409f8..416168e 100644 --- a/.vs/VSWorkspaceState.json +++ b/.vs/VSWorkspaceState.json @@ -1,6 +1,7 @@ { "ExpandedNodes": [ "", + "\\.github", "\\public", "\\src", "\\src\\config", @@ -10,6 +11,6 @@ "\\src\\timelines", "\\src\\trials" ], - "SelectedNode": "\\public\\favicon.ico", + "SelectedNode": "\\src\\trials\\costBenefits.js", "PreviewInSolutionExplorer": false } \ No newline at end of file diff --git a/.vs/slnx.sqlite b/.vs/slnx.sqlite index 4140ba803f1152e7a2b7f130a48ca8c2c859de27..f619be41578bc1af55167308a825673c263a81d0 100644 GIT binary patch delta 2826 zcmZWrYitx%6rN?<>F&GB_W;Wg;4U~rTj|U6F^VgMLk}D}<)>{gh-4+v z^J1MI^1s0-BA-=9Mv@b2Uap33w(V0v>xsavFNy1B#ADIozz3y zYwV=$dJ&NA^{hchZ<-{+5HKxdlk$`hnN(L|lxLhI>R>9b3Q8Lnwir8)~>*-)X&Xx{oL{=_4Pd_shMkt zlEg|w(%n$aIIm;`B`&BcpEk@jhgxOW+}Dd*2)rVRQo4+s>mi9CY?0T*tdZ!#Q|S*k zazQk`tD7Xe78|_2lF8@h5$!Q^FGDeNadOPH4%PYAAzm%7$%ffr`!?L(yB2*;P>pn2 zP)bw!xtP1Cn|pPc@Md*j6_RY;OQj7wPZ`#*k%@#RsG6EcI5DehCAtY@g%6S$_N+h! z8nk6rlmyi|gDad}B(Vtg%8Fwqe4!J@2pg#?NetsU4H+Sfm(qEtzlkLXV$q}6Cz0f$ zloIy9xlOF616dj-0L&!S`IP?ICU>H^jW%?Lq%4h#X|s4CiH3^oR`F1-0!?U-Q@kXO!(G9gELG!5=MqzUGv;kXL`b{|jhf1uIlXQW8^={&Dw2ut zhRg1?Ow<4-<3h!)KwTqZQm(}bPhD{D$8L2=R+gSJv*fd{h4^M2W=|sL9gmqUd*Nv zyq1_Sew_C5C2c$$a`&{XWX7}dv|51)^w~K6{cCiQ#40$9e)a%oGxPt(gLv2Bp@vCB z$t{Ha2s`;~w7WMRjZCF5yrvq84!?_Bek?1_e;UAm!zl8SsA0H|g^wcaljD;a^km5r z&gmzH{JllL)6lLEHW=%P4sD5IM35qhr7%1$D$qExB1DvYRxrKa;DGmmX?t^k2D}9T3pT6ecnN9Rp%)9gjz_Z=- z0V>UovN8SOu&ePOW({a%u2Zi&ypAeRYyaE+qy2OHto==9#(tQ&V%Mm{?0@>H;W}#r z`&J=b?X(sC-1d7#J>#%?Eoj@-#t}V9_3+K3ic$T>j*g(+%30>DA22{j)T%1$A`ARR zg8KT=8+vQv4tEm%kM}G130wo;!~gZZ1Q)>>a0+}>XxaG^u#oymc};6&g_W>ajXw(@ zM`e`*I%v|?W&!uX4e%ZN8aU4!p*PUq(ihoUJ&>ERI15K}lS~5y(|As*!b_B$i}Ms( w4qRI9iO1`&*0)!~Z`fkDki%Bn^?^_Rh&64~ZO7Zl_~8Am@9ZzEKYo7pf6h9U6aWAK delta 2880 zcmZWrYitx%6rSz2)7_ofxqa<>x4T}9zIoa_*BUY9z*Ag-flzZ;@-Ca<0QZhaFRCCU(;_>&TKGn$D&dm+RQyU zO_mVdPy1BA=VgXZaY;1$CTAJHh+FApx?VH** zZfbAM-tfBuYw00krnrOvOW<3O1qwje3IGLv5!5l*#g^5;4I)NJnVK@c1(3A_+rLGI`#2_J;WD16Qg z>v31=-5m}e>fY8x5-x)Y9$!ji(#sXC5q&O05q)rC#I_afb8khwN=6Yiv%#iXFuZFE zx=v7yc$||8Q|jr6J+GU6(+c7B-QG?l*|L`k0h}8(YnaH135Amtd19ghv)Ve)Ngylq zz8-dNKpPbNOjYQItXNMHl@Ke*PwM54c1<%FV}*DIimfNq#s12C=gu}{PhN;|2SQPK znatga2P$!stgMYn2e7rE{-UBV#mAS!&05$@cBRvW)%FllM+@r=M(thOJ>bpv;c7%W zr)6HrNC~)oH5S9W7Ku2sFT+W5O{tu>^=x$mNvwsOlWa6GDGJ=Zc~||t1FXTo?g!ur z)!PH*`5wG$5K)R1_$fFM*n}vQ;p&Rjy25(QRfoWldecfOsi)kvdHLA=Jd`N}KYFg5 zgiwTu4DFW@I@E$7h)OLcOHs^NUV+LALbjSh;dMY)aD{qJyaF(YBY-XrZlW3|oc{de zqvE{Qo*?^hs-hYlb(R;rdd!DnDK@Ids=OrOfCkgBQ0)xjbd*Ct!c0CK?&=u~hf*x{CX>8A9|zFNVHA0mS8%zTfzK$!NkdPfM@|%QPCY*4>B+xWG`ttEY-gl9JTwx< z6+Q|&8iuEM37SxpxR8`da(SnWMr$qbKrpS&&)e(p9*-GXH@_!;Sqms5yL@?zSCyiJ zu(Hf4I;67%+6V3q#d(E~3y>1y+KROnp;KXIIx~sGE+aIzwn6Jr<6AbZqX>zjr_i48 zXw+dq>V`NO{>M_5w^%@sm@(ZlfWN?X@IA8t&RM^t7pyKT!`Q83R1GCFv&>$q%6ds{ z7;av3l{v$_WBt#1i)p8?Ti>NGSy*d7{f+ev`ZK^XLHZCCXGWL@)x*QKx@*?WppmJk zUb46>rJ&OMxA}_s3-hA+RqMR@i1oZ#p^h-O)f2;hqm_9+8!W3ZWp9rDR!mupE(3bp zYSe%BwAC|O0Et#wYOFNCTj0||$Pi^_qr;H91YR{VevN{6naXF>#)&1z68ITh1((2g z@Xz5_;4C-^PJj==2ibeStp9kg7L5Z>Y{Lq-U(PRI!V|y}^w%ZYmegw~=i)bgtRifBp5(Z~k5eZ?eH` gAcu{n%e|qakMF*snvS)Q{Wscf{^HF(c { jsPsych.pluginAPI.cancelKeyboardResponse(keyboardListener); if (info.key === keys["Q"]) { // 1 key + var timeWhenPressed = new Date().getTime(); + var rt = timeWhenPressed - timeWhenStarted; var returnObj = { + rt:rt, key: info.key, effort: effort[0], value: value[0], @@ -169,8 +172,11 @@ const choice = (duration, blockSettings, opts, trialDetails) => { }; done(returnObj); } else if (info.key === keys["P"]) { - // 0 key - returnObj = { + // 0 key + var timeWhenPressed = new Date().getTime(); + var rt = timeWhenPressed - timeWhenStarted; + var returnObj = { + rt: rt, key: info.key, effort: effort[1], value: value[1], diff --git a/src/trials/costBenefits.js b/src/trials/costBenefits.js index c02db05..a3d0bf5 100644 --- a/src/trials/costBenefits.js +++ b/src/trials/costBenefits.js @@ -13,159 +13,182 @@ const canvasHTML = `
`; const costBenefits = (duration, blockSettings, opts, trialDetails) => { - let stimulus = - `
` + - canvasHTML + - fixationHTML + - photodiodeGhostBox() + - `
`; + let stimulus = + `
` + + canvasHTML + + fixationHTML + + photodiodeGhostBox() + + `
`; - const startCode = eventCodes.costBenefitsStart; + const startCode = eventCodes.costBenefitsStart; - let probability = blockSettings.is_practice ? opts : opts.prob; - let value = blockSettings.is_practice ? blockSettings.value : opts.value; - let effort = blockSettings.is_practice ? blockSettings.effort : opts.effort; - let high_effort = blockSettings.is_practice - ? blockSettings.high_effort - : opts.high_effort; - let valid_keys = blockSettings.keys; - let get_reward = blockSettings.is_practice - ? blockSettings.get_reward - : opts.get_reward; + let probability = blockSettings.is_practice ? opts : opts.prob; + let value = blockSettings.is_practice ? blockSettings.value : opts.value; + let effort = blockSettings.is_practice ? blockSettings.effort : opts.effort; + let high_effort = blockSettings.is_practice + ? blockSettings.high_effort + : opts.high_effort; + let valid_keys = blockSettings.keys; + let get_reward = blockSettings.is_practice + ? blockSettings.get_reward + : opts.get_reward; - return { - type: "call_function", - async: true, - func: (done) => { - // add stimulus to the DOM - document.getElementById("jspsych-content").innerHTML = stimulus; - // $('#jspsych-content').addClass('task-container') + return { + type: "call_function", + async: true, + func: (done) => { + // add stimulus to the DOM + document.getElementById("jspsych-content").innerHTML = stimulus; + // $('#jspsych-content').addClass('task-container') - // set up canvas - let canvas = document.querySelector("#jspsych-canvas"); - let ctx = canvas.getContext("2d"); - let timeWhenStarted = new Date().getTime(); + // set up canvas + let canvas = document.querySelector("#jspsych-canvas"); + let ctx = canvas.getContext("2d"); + let timeWhenStarted = new Date().getTime(); - const canvasDraw = () => { - // transparent background - ctx.clearRect(0, 0, canvas.width, canvas.height); - var inflateBy; - var spikeHeight = [0, 0]; - for (let i = 0; i < 2; i++) { - if (high_effort[i]) { - inflateBy = canvasSettings.inflateByHE; - } else { - inflateBy = canvasSettings.inflateByNHE; - } + const canvasDraw = () => { + // transparent background + ctx.clearRect(0, 0, canvas.width, canvas.height); + var inflateBy; + var spikeHeight = [0, 0]; + for (let i = 0; i < 2; i++) { + if (high_effort[i]) { + inflateBy = canvasSettings.inflateByHE; + } else { + inflateBy = canvasSettings.inflateByNHE; + } - // how far should the spike be - var targetDist = 2 * inflateBy * (effort[i] - 1); - var balloonBaseHeight = - canvasSettings.balloonBaseHeight + 2 * canvasSettings.balloonRadius; - // distance of the spike from the top - spikeHeight[i] = effort[i] - ? canvasSettings.frameDimensions[1] - - balloonBaseHeight - - targetDist - - canvasSettings.spiketopHeight - : 0; - } + // how far should the spike be + var targetDist = 2 * inflateBy * (effort[i] - 1); + var balloonBaseHeight = + canvasSettings.balloonBaseHeight + 2 * canvasSettings.balloonRadius; + // distance of the spike from the top + spikeHeight[i] = effort[i] + ? canvasSettings.frameDimensions[1] - + balloonBaseHeight - + targetDist - + canvasSettings.spiketopHeight + : 0; + } + + drawText( + ctx, + `${probability}`, + canvasSettings.rewProbXpos, + canvasSettings.rewProbYpos, + "undefined" + ); - drawText( - ctx, - `${probability}`, - canvasSettings.rewProbXpos, - canvasSettings.rewProbYpos, - "undefined" - ); + // drawFrame(ctx, canvasSettings.frameDimensions[0], canvasSettings.frameDimensions[1], canvasSettings.frameXpos[0], canvasSettings.frameYpos, canvasSettings.frameLinecolor, false) + drawEffort( + ctx, + value[0], + effort[0], + canvasSettings.textXpos[0], + canvasSettings.textYpos, + high_effort[0] + ); + drawSpike( + ctx, + canvasSettings.spikeWidth, + spikeHeight[0], + canvasSettings.spikeXpos[0], + canvasSettings.spikeYpos, + canvasSettings.frameLinecolor, + canvasSettings.frameLinecolor, + false + ); - // drawFrame(ctx, canvasSettings.frameDimensions[0], canvasSettings.frameDimensions[1], canvasSettings.frameXpos[0], canvasSettings.frameYpos, canvasSettings.frameLinecolor, false) - drawEffort( - ctx, - value[0], - effort[0], - canvasSettings.textXpos[0], - canvasSettings.textYpos, - high_effort[0] - ); - drawSpike( - ctx, - canvasSettings.spikeWidth, - spikeHeight[0], - canvasSettings.spikeXpos[0], - canvasSettings.spikeYpos, - canvasSettings.frameLinecolor, - canvasSettings.frameLinecolor, - false - ); + // drawFrame(ctx, canvasSettings.frameDimensions[0], canvasSettings.frameDimensions[1], canvasSettings.frameXpos[1], canvasSettings.frameYpos, canvasSettings.frameLinecolor, false) + drawEffort( + ctx, + value[1], + effort[1], + canvasSettings.textXpos[1], + canvasSettings.textYpos, + high_effort[1] + ); + drawSpike( + ctx, + canvasSettings.spikeWidth, + spikeHeight[1], + canvasSettings.spikeXpos[1], + canvasSettings.spikeYpos, + canvasSettings.frameLinecolor, + canvasSettings.frameLinecolor, + false + ); + }; - // drawFrame(ctx, canvasSettings.frameDimensions[0], canvasSettings.frameDimensions[1], canvasSettings.frameXpos[1], canvasSettings.frameYpos, canvasSettings.frameLinecolor, false) - drawEffort( - ctx, - value[1], - effort[1], - canvasSettings.textXpos[1], - canvasSettings.textYpos, - high_effort[1] - ); - drawSpike( - ctx, - canvasSettings.spikeWidth, - spikeHeight[1], - canvasSettings.spikeXpos[1], - canvasSettings.spikeYpos, - canvasSettings.frameLinecolor, - canvasSettings.frameLinecolor, - false - ); - }; + canvasDraw(); + setTimeout(() => { + done(addData(trialDetails, blockSettings, opts)); + }, duration); + } + var timer = setInterval(function () { + var now = new Date().getTime(); + var percTimePassed = (now - timeWhenStarted) / 1000 / (duration / 1000); - /*canvasDraw(); - function after_response(info) { - //clearInterval(timer); + if (percTimePassed >= 1) { + jsPsych.pluginAPI.cancelKeyboardResponse(keyboardListener); + clearInterval(timer); + var returnObj = { + key: 0, + effort: 0, + value: 0, + high_effort: 0, + get_reward: 0, + subtrial_type: "choice", + }; + done(returnObj); + } + }, 50); + function after_response(info) { + clearInterval(timer); jsPsych.pluginAPI.cancelKeyboardResponse(keyboardListener); if (info.key === keys["Q"]) { - // 1 key - var returnObj = { - key: info.key, - effort: effort[0], - value: value[0], - high_effort: high_effort[0], - get_reward: get_reward[0], - subtrial_type: "choice", - }; - done(returnObj); + // 1 key + var timeWhenPressed = new Date().getTime(); + var rt = timeWhenPressed - timeWhenStarted; + var returnObj = { + rt: rt, + key: info.key, + effort: effort[0], + value: value[0], + high_effort: high_effort[0], + get_reward: get_reward[0], + subtrial_type: "choice", + }; + done(returnObj); } else if (info.key === keys["P"]) { - // 0 key - returnObj = { - key: info.key, - effort: effort[1], - value: value[1], - high_effort: high_effort[1], - get_reward: get_reward[1], - }; - done(returnObj); + // 0 key + var timeWhenPressed = new Date().getTime(); + var rt = timeWhenPressed - timeWhenStarted; + var returnObj = { + rt: rt, + key: info.key, + effort: effort[1], + value: value[1], + high_effort: high_effort[1], + get_reward: get_reward[1], + }; + done(returnObj); } - } - trialDetails.probability = probability; - trialDetails.effort = effort; - trialDetails.high_effort = high_effort; - trialDetails.value = value; - trialDetails.subtrial_type = "cost_benefits"; + } + trialDetails.probability = probability; + trialDetails.effort = effort; + trialDetails.high_effort = high_effort; + trialDetails.value = value; + trialDetails.subtrial_type = "cost_benefits"; - var keyboardListener = jsPsych.pluginAPI.getKeyboardResponse({ + var keyboardListener = jsPsych.pluginAPI.getKeyboardResponse({ callback_function: after_response, valid_responses: valid_keys, rt_method: "date", persist: true, allow_held_key: false, - });*/ - - canvasDraw(); - setTimeout(() => { - done(addData(trialDetails, blockSettings, opts)); - }, duration); - }, + }); +} on_load: () => { removeCursor("experiment"); pdSpotEncode(startCode); From 35631c555a0379506fe0a725b7d20383f616846b Mon Sep 17 00:00:00 2001 From: moblim Date: Mon, 26 Jul 2021 13:51:52 -0400 Subject: [PATCH 08/10] Test commit Ongoing work with costBenefits and taskTrial. checking Commit to see if connection to online repo is correct --- src/timelines/taskTrial.js | 3 + src/trials/choice.js | 13 +- src/trials/costBenefits.js | 283 ++++++++++++++++++----------------- src/trials/rewardFeedback.js | 4 +- 4 files changed, 155 insertions(+), 148 deletions(-) diff --git a/src/timelines/taskTrial.js b/src/timelines/taskTrial.js index 8e7a744..166444f 100644 --- a/src/timelines/taskTrial.js +++ b/src/timelines/taskTrial.js @@ -6,6 +6,7 @@ import frameSpike from "../trials/frameSpike"; import choice from "../trials/choice"; import costBenefits from "../trials/costBenefits"; import { ONLINE } from "../config/main"; +import { addData } from "../lib/taskUtils"; import pressBalloon from "../trials/pressBalloon"; import rewardFeedback from "../trials/rewardFeedback"; import cumulativeReward from "../trials/cumulativeReward"; @@ -46,6 +47,8 @@ const taskTrial = (blockSettings, blockDetails, opts) => { rewardProbability(1000, blockSettings, opts, trialDetails), frameSpike(700, blockSettings, opts, trialDetails), costBenefits(1500, blockSettings, opts, trialDetails), + console.log("trial details:", trialDetails), + addData(trialDetails, blockSettings, opts), choice(5000, blockSettings, opts, trialDetails), pressBalloon(25000, blockSettings, opts), fixation(500), diff --git a/src/trials/choice.js b/src/trials/choice.js index 683379f..5d7705a 100644 --- a/src/trials/choice.js +++ b/src/trials/choice.js @@ -172,16 +172,17 @@ const choice = (duration, blockSettings, opts, trialDetails) => { }; done(returnObj); } else if (info.key === keys["P"]) { - // 0 key - var timeWhenPressed = new Date().getTime(); - var rt = timeWhenPressed - timeWhenStarted; - var returnObj = { - rt: rt, + // 0 key + var timeWhenPressed = new Date().getTime(); + var rt = timeWhenPressed - timeWhenStarted; + var returnObj = { + rt:rt, key: info.key, effort: effort[1], value: value[1], high_effort: high_effort[1], get_reward: get_reward[1], + subtrial_type: "choice", }; done(returnObj); } @@ -190,7 +191,7 @@ const choice = (duration, blockSettings, opts, trialDetails) => { trialDetails.effort = effort; trialDetails.high_effort = high_effort; trialDetails.value = value; - trialDetails.subtrial_type = "cost_benefits"; + trialDetails.subtrial_type = "choice"; var keyboardListener = jsPsych.pluginAPI.getKeyboardResponse({ callback_function: after_response, diff --git a/src/trials/costBenefits.js b/src/trials/costBenefits.js index a3d0bf5..a446e69 100644 --- a/src/trials/costBenefits.js +++ b/src/trials/costBenefits.js @@ -22,173 +22,174 @@ const costBenefits = (duration, blockSettings, opts, trialDetails) => { const startCode = eventCodes.costBenefitsStart; - let probability = blockSettings.is_practice ? opts : opts.prob; - let value = blockSettings.is_practice ? blockSettings.value : opts.value; - let effort = blockSettings.is_practice ? blockSettings.effort : opts.effort; - let high_effort = blockSettings.is_practice - ? blockSettings.high_effort - : opts.high_effort; - let valid_keys = blockSettings.keys; - let get_reward = blockSettings.is_practice - ? blockSettings.get_reward - : opts.get_reward; + let probability = blockSettings.is_practice ? opts : opts.prob; + let value = blockSettings.is_practice ? blockSettings.value : opts.value; + let effort = blockSettings.is_practice ? blockSettings.effort : opts.effort; + let high_effort = blockSettings.is_practice + ? blockSettings.high_effort + : opts.high_effort; + let valid_keys = blockSettings.keys; + let get_reward = blockSettings.is_practice + ? blockSettings.get_reward + : opts.get_reward; - return { - type: "call_function", - async: true, - func: (done) => { - // add stimulus to the DOM - document.getElementById("jspsych-content").innerHTML = stimulus; - // $('#jspsych-content').addClass('task-container') + return { + type: "call_function", + async: true, + func: (done) => { + // add stimulus to the DOM + document.getElementById("jspsych-content").innerHTML = stimulus; + // $('#jspsych-content').addClass('task-container') - // set up canvas - let canvas = document.querySelector("#jspsych-canvas"); - let ctx = canvas.getContext("2d"); - let timeWhenStarted = new Date().getTime(); + // set up canvas + let canvas = document.querySelector("#jspsych-canvas"); + let ctx = canvas.getContext("2d"); + let timeWhenStarted = new Date().getTime(); - const canvasDraw = () => { - // transparent background - ctx.clearRect(0, 0, canvas.width, canvas.height); - var inflateBy; - var spikeHeight = [0, 0]; - for (let i = 0; i < 2; i++) { - if (high_effort[i]) { - inflateBy = canvasSettings.inflateByHE; - } else { - inflateBy = canvasSettings.inflateByNHE; - } - - // how far should the spike be - var targetDist = 2 * inflateBy * (effort[i] - 1); - var balloonBaseHeight = - canvasSettings.balloonBaseHeight + 2 * canvasSettings.balloonRadius; - // distance of the spike from the top - spikeHeight[i] = effort[i] - ? canvasSettings.frameDimensions[1] - - balloonBaseHeight - - targetDist - - canvasSettings.spiketopHeight - : 0; + const canvasDraw = () => { + // transparent background + ctx.clearRect(0, 0, canvas.width, canvas.height); + var inflateBy; + var spikeHeight = [0, 0]; + for (let i = 0; i < 2; i++) { + if (high_effort[i]) { + inflateBy = canvasSettings.inflateByHE; + } else { + inflateBy = canvasSettings.inflateByNHE; } - drawText( - ctx, - `${probability}`, - canvasSettings.rewProbXpos, - canvasSettings.rewProbYpos, - "undefined" - ); + // how far should the spike be + var targetDist = 2 * inflateBy * (effort[i] - 1); + var balloonBaseHeight = + canvasSettings.balloonBaseHeight + 2 * canvasSettings.balloonRadius; + // distance of the spike from the top + spikeHeight[i] = effort[i] + ? canvasSettings.frameDimensions[1] - + balloonBaseHeight - + targetDist - + canvasSettings.spiketopHeight + : 0; + } - // drawFrame(ctx, canvasSettings.frameDimensions[0], canvasSettings.frameDimensions[1], canvasSettings.frameXpos[0], canvasSettings.frameYpos, canvasSettings.frameLinecolor, false) - drawEffort( - ctx, - value[0], - effort[0], - canvasSettings.textXpos[0], - canvasSettings.textYpos, - high_effort[0] - ); - drawSpike( - ctx, - canvasSettings.spikeWidth, - spikeHeight[0], - canvasSettings.spikeXpos[0], - canvasSettings.spikeYpos, - canvasSettings.frameLinecolor, - canvasSettings.frameLinecolor, - false - ); + drawText( + ctx, + `${probability}`, + canvasSettings.rewProbXpos, + canvasSettings.rewProbYpos, + "undefined" + ); - // drawFrame(ctx, canvasSettings.frameDimensions[0], canvasSettings.frameDimensions[1], canvasSettings.frameXpos[1], canvasSettings.frameYpos, canvasSettings.frameLinecolor, false) - drawEffort( - ctx, - value[1], - effort[1], - canvasSettings.textXpos[1], - canvasSettings.textYpos, - high_effort[1] - ); - drawSpike( - ctx, - canvasSettings.spikeWidth, - spikeHeight[1], - canvasSettings.spikeXpos[1], - canvasSettings.spikeYpos, - canvasSettings.frameLinecolor, - canvasSettings.frameLinecolor, - false - ); - }; + // drawFrame(ctx, canvasSettings.frameDimensions[0], canvasSettings.frameDimensions[1], canvasSettings.frameXpos[0], canvasSettings.frameYpos, canvasSettings.frameLinecolor, false) + drawEffort( + ctx, + value[0], + effort[0], + canvasSettings.textXpos[0], + canvasSettings.textYpos, + high_effort[0] + ); + drawSpike( + ctx, + canvasSettings.spikeWidth, + spikeHeight[0], + canvasSettings.spikeXpos[0], + canvasSettings.spikeYpos, + canvasSettings.frameLinecolor, + canvasSettings.frameLinecolor, + false + ); - canvasDraw(); - setTimeout(() => { - done(addData(trialDetails, blockSettings, opts)); - }, duration); - } - var timer = setInterval(function () { - var now = new Date().getTime(); - var percTimePassed = (now - timeWhenStarted) / 1000 / (duration / 1000); + // drawFrame(ctx, canvasSettings.frameDimensions[0], canvasSettings.frameDimensions[1], canvasSettings.frameXpos[1], canvasSettings.frameYpos, canvasSettings.frameLinecolor, false) + drawEffort( + ctx, + value[1], + effort[1], + canvasSettings.textXpos[1], + canvasSettings.textYpos, + high_effort[1] + ); + drawSpike( + ctx, + canvasSettings.spikeWidth, + spikeHeight[1], + canvasSettings.spikeXpos[1], + canvasSettings.spikeYpos, + canvasSettings.frameLinecolor, + canvasSettings.frameLinecolor, + false + ); + }; + trialDetails.probability = probability; + trialDetails.effort = effort; + trialDetails.high_effort = high_effort; + trialDetails.value = value; + trialDetails.subtrial_type = "costBenefits"; - if (percTimePassed >= 1) { - jsPsych.pluginAPI.cancelKeyboardResponse(keyboardListener); - clearInterval(timer); - var returnObj = { - key: 0, - effort: 0, - value: 0, - high_effort: 0, - get_reward: 0, - subtrial_type: "choice", - }; - done(returnObj); - } - }, 50); - function after_response(info) { - clearInterval(timer); - jsPsych.pluginAPI.cancelKeyboardResponse(keyboardListener); - if (info.key === keys["Q"]) { - // 1 key - var timeWhenPressed = new Date().getTime(); - var rt = timeWhenPressed - timeWhenStarted; + canvasDraw(); + setTimeout(() => { + //done(addData(trialDetails, blockSettings, opts)); + }, duration); + /*var timer = setInterval(function () { + var now = new Date().getTime(); + var percTimePassed = (now - timeWhenStarted) / 1000 / (duration / 1000); + + if (percTimePassed >= 1) { + jsPsych.pluginAPI.cancelKeyboardResponse(keyboardListener); + clearInterval(timer); var returnObj = { - rt: rt, - key: info.key, - effort: effort[0], - value: value[0], - high_effort: high_effort[0], - get_reward: get_reward[0], - subtrial_type: "choice", + key: 0, + effort: 0, + value: 0, + high_effort: 0, + get_reward: 0, + subtrial_type: "costBenefits", }; done(returnObj); + } + }, 50);*/ + function after_response(info) { + //clearInterval(timer); + jsPsych.pluginAPI.cancelKeyboardResponse(keyboardListener); + if (info.key === keys["Q"]) { + // 1 key + var timeWhenPressed = new Date().getTime(); + var rt = timeWhenPressed - timeWhenStarted; + var returnObj = { + rt:rt, + key: info.key, + effort: effort[0], + value: value[0], + high_effort: high_effort[0], + get_reward: get_reward[0], + subtrial_type: "costBenefits", + }; + done(returnObj); } else if (info.key === keys["P"]) { // 0 key var timeWhenPressed = new Date().getTime(); var rt = timeWhenPressed - timeWhenStarted; var returnObj = { - rt: rt, - key: info.key, - effort: effort[1], - value: value[1], - high_effort: high_effort[1], - get_reward: get_reward[1], + rt: rt, + key: info.key, + effort: effort[1], + value: value[1], + high_effort: high_effort[1], + get_reward: get_reward[1], + subtrial_type: "costBenefits" }; done(returnObj); } - } - trialDetails.probability = probability; - trialDetails.effort = effort; - trialDetails.high_effort = high_effort; - trialDetails.value = value; - trialDetails.subtrial_type = "cost_benefits"; + } - var keyboardListener = jsPsych.pluginAPI.getKeyboardResponse({ + var keyboardListener = jsPsych.pluginAPI.getKeyboardResponse({ callback_function: after_response, valid_responses: valid_keys, rt_method: "date", persist: true, allow_held_key: false, - }); -} + }); + + }, on_load: () => { removeCursor("experiment"); pdSpotEncode(startCode); diff --git a/src/trials/rewardFeedback.js b/src/trials/rewardFeedback.js index c9cb428..6260e73 100644 --- a/src/trials/rewardFeedback.js +++ b/src/trials/rewardFeedback.js @@ -15,7 +15,9 @@ const rewardFeedback = (duration, blockSettings, opts, trialDetails) => { let rewards = jsPsych.data.get().select("value").values; let last = rewards[rewards.length - 1]; let stimulus; - if (last) { + console.log("last:", last); + console.log("rewards:", rewards); + if (last) { stimulus = `

+${last.reward.toFixed(2)}

` + photodiodeGhostBox() + From d3b003da66254e2a3b829cc3511ac8f2e79eff5e Mon Sep 17 00:00:00 2001 From: moblim Date: Tue, 27 Jul 2021 16:05:30 -0400 Subject: [PATCH 09/10] RT update Added keystroke logging to costBenefits , reverted changes made in taskTrial. edited out redundant variables in Choice. --- .vs/Effort-Task-3/v16/.suo | Bin 72704 -> 80384 bytes .vs/slnx.sqlite | Bin 90112 -> 90112 bytes src/timelines/taskTrial.js | 2 -- src/trials/choice.js | 6 +++--- src/trials/costBenefits.js | 28 ++++++++++++---------------- 5 files changed, 15 insertions(+), 21 deletions(-) diff --git a/.vs/Effort-Task-3/v16/.suo b/.vs/Effort-Task-3/v16/.suo index 5e5cc38da33b62a2682e796b34dfa3edcd38601e..325f3d98c79acf5320ab912c67473018ad8b96f2 100644 GIT binary patch delta 10736 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 Zd#eZbese7xQY1nBKvGt4QGMkE|2M|;@jCzj delta 9838 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 { rewardProbability(1000, blockSettings, opts, trialDetails), frameSpike(700, blockSettings, opts, trialDetails), costBenefits(1500, blockSettings, opts, trialDetails), - console.log("trial details:", trialDetails), - addData(trialDetails, blockSettings, opts), choice(5000, blockSettings, opts, trialDetails), pressBalloon(25000, blockSettings, opts), fixation(500), diff --git a/src/trials/choice.js b/src/trials/choice.js index 5d7705a..8851022 100644 --- a/src/trials/choice.js +++ b/src/trials/choice.js @@ -173,9 +173,9 @@ const choice = (duration, blockSettings, opts, trialDetails) => { done(returnObj); } else if (info.key === keys["P"]) { // 0 key - var timeWhenPressed = new Date().getTime(); - var rt = timeWhenPressed - timeWhenStarted; - var returnObj = { + timeWhenPressed = new Date().getTime(); + rt = timeWhenPressed - timeWhenStarted; + returnObj = { rt:rt, key: info.key, effort: effort[1], diff --git a/src/trials/costBenefits.js b/src/trials/costBenefits.js index a446e69..d6dff62 100644 --- a/src/trials/costBenefits.js +++ b/src/trials/costBenefits.js @@ -32,11 +32,16 @@ const costBenefits = (duration, blockSettings, opts, trialDetails) => { let get_reward = blockSettings.is_practice ? blockSettings.get_reward : opts.get_reward; - return { type: "call_function", async: true, func: (done) => { + trialDetails.probability = probability; + trialDetails.effort = effort; + trialDetails.high_effort = high_effort; + trialDetails.value = value; + trialDetails.subtrial_type = "costBenefits"; + addData(trialDetails, blockSettings, opts); // add stimulus to the DOM document.getElementById("jspsych-content").innerHTML = stimulus; // $('#jspsych-content').addClass('task-container') @@ -119,17 +124,8 @@ const costBenefits = (duration, blockSettings, opts, trialDetails) => { false ); }; - trialDetails.probability = probability; - trialDetails.effort = effort; - trialDetails.high_effort = high_effort; - trialDetails.value = value; - trialDetails.subtrial_type = "costBenefits"; - canvasDraw(); - setTimeout(() => { - //done(addData(trialDetails, blockSettings, opts)); - }, duration); - /*var timer = setInterval(function () { + var timer = setInterval(function () { var now = new Date().getTime(); var percTimePassed = (now - timeWhenStarted) / 1000 / (duration / 1000); @@ -146,9 +142,9 @@ const costBenefits = (duration, blockSettings, opts, trialDetails) => { }; done(returnObj); } - }, 50);*/ + }, 50); function after_response(info) { - //clearInterval(timer); + clearInterval(timer); jsPsych.pluginAPI.cancelKeyboardResponse(keyboardListener); if (info.key === keys["Q"]) { // 1 key @@ -166,9 +162,9 @@ const costBenefits = (duration, blockSettings, opts, trialDetails) => { done(returnObj); } else if (info.key === keys["P"]) { // 0 key - var timeWhenPressed = new Date().getTime(); - var rt = timeWhenPressed - timeWhenStarted; - var returnObj = { + timeWhenPressed = new Date().getTime(); + rt = timeWhenPressed - timeWhenStarted; + returnObj = { rt: rt, key: info.key, effort: effort[1], From 1ef8d51e1429b909f52b3f7b54456a84ff25cbfc Mon Sep 17 00:00:00 2001 From: moblim Date: Wed, 28 Jul 2021 10:30:12 -0400 Subject: [PATCH 10/10] Adding to gitignore These files always create conflicts but are temp files that change with every instance of visual studio. Adding these to gitignore so that we can avoid superfluous conflicts --- .gitignore | 3 +++ .vs/Effort-Task-3/v16/.suo | Bin 80384 -> 79360 bytes .vs/VSWorkspaceState.json | 2 +- .vs/slnx.sqlite | Bin 90112 -> 90112 bytes 4 files changed, 4 insertions(+), 1 deletion(-) diff --git a/.gitignore b/.gitignore index c2ebf49..9df9658 100644 --- a/.gitignore +++ b/.gitignore @@ -22,3 +22,6 @@ yarn-debug.log* yarn-error.log* psiturkit/*_turk +.vs/VSWorkspaceState.json +.vs/slnx.sqlite +.vs/Effort-Task-3/v16/.suo diff --git a/.vs/Effort-Task-3/v16/.suo b/.vs/Effort-Task-3/v16/.suo index 325f3d98c79acf5320ab912c67473018ad8b96f2..de1ddc10e360b26c8770d4e245500fdf826bc37d 100644 GIT binary patch delta 3469 zcmd5;eNa?Y6o2=zyDYj3h=Q;Pg21}!uD$(6{9wh!?^H&b%1;(pL_tt@ZBRiL9nC2w z;~iJZF%>jt%F5)GIi>jwQ7lLCpK?l?X{xcAn$iiU92Gj3-M21|HPd9-o%!v#@7%BR zJLlYU*ViNS{Um#tgBvALiLnfm$S_O?A1tneB3m0T1B&DffG!)8X z$#8JXcdD{*LOo&&f@dqEZ>;@Ou7e4$99BOpY)49+Qjw_3u%Ctqr%vfn>XhD41hu3H zC8bXLlsc6Xb=r?Y-GkKW8Q84-zd`Ouo?$3;>JvI3QRjl+MwA%{=#-Tb-9YB!Q7sm>DBG(0^SL9K=>noOZb?S0H9K+h19pdIlg;io&n8Nq>f`h1$`&=Zh~O0;*I z3^vY~4QE*ndS-Btsa?WrwZshRY!WzzTIAJ8_6S_j&VjSqldW+wKF6t|9BD>NT)~@D zsFbcvfP9XMw5GDW&8ebSNH<{e+%6SOA}Pjn0eJ0=&Ag1{2sxw9k+x?p64@d=7`hf0 z3Yq$Agf}^5G>O2qdnjDfB+2vf<0@=0eX1t(PNpI5TVrnI$JP)JY#2KqX6p1pk52WM zKG+fRfxHSg8Y|p3M6zv@8cBNo+nU_T{@>#Irt6Mvvaa1cq`SzwzB{?|q-CX|C9z@+ z(^N1N#L12@i=XA%EG!GGDev!DoKSwO^cB*U*GZI-VQf?__;Cb58+_BDfwWyk^6{%Y zL<9A^8q_=Rj?!Bag(ac_)c%nW`+*|SY+jyUR#v^vyCl@ZCDm21$ghp9tL5}u?Q~bA z$6bLdv%u%qMr>x{G3LWT^gH-@)8r(D9vAdBc;{VKlU&r$ni}%6uT%y#^XI4u)zA_l zjqs&1C576m(9e?$4T97gJL0@#eX!++{1h zo_^PO`q?GAZhp2@JYM@w?-a~nF4otZ^4#8VW!ElFUH8ZxD8f{K671idu5j6kIfEN^ zw#1JMgu~!;d0k7))=+e$UVn6IH*vJ_%~y5rw#yEKu4dn4%ZcRtjVqqK`uT)(YsJ30 zTOXHSdA~YiJM|@X-)z?d01^Mw10lGyr$&6vI()EP}Sy~!BR)u8vR zaQbuUMNEO?cDo+^?)X1Og>s7={_pu?{X_ggi#mUER&$q}jQke$icTW1@1O+kkL>8V*OX7 zF{n*|14q*!hEIWG4g1J|xkC3#V9*$t?D<>qqaeeS$4?dK%(8`&^{kAM!2q)bL%XQB5DKEGnALQu88M-*=nXAYNhP&`YZ#b*s2?l|Xz hg3~(q`P`3eD#Pzjl^%L8<7TR$p(9tA()r2iKLC5uqLTms delta 2489 zcmcJRe{54#6vy9v>)Q%@-S5${pWP^9lnvW$j16%t+e8_#wJ-?|5X)AWWBf4IIdE}B z2#K&n_Aamp24giOihD{7mp*@!Be0J z%mw6;(a#1BO`k>L94Ie|2V#`<^9M;qgPHK?>r--c*`&#OawuV)uu;M&5jmQl zlCxE_<)NqKl!9D<4GWYUJ!S=DN=`mVkK0>gzLK~SliLh(GUWL{PmBw4C8z;nV|L(5~s^qqauV3x+*agI!Rz7zT7h zeg*V^8K4(z1KYt4uoJur{2(4K8tv2MH_#skyEXky^aCKE>H2ua1VID|Oi+`jZ(y_a zTSx<5f@34lZJQu>l0NKxEhJxLG7X|rp`J6VU5!}$|1kuQq*tn?Io~HJwcX5m)-%F_ zxuViK%11>PcZw$Ux7Ko|+B0skV4*1O!Q%UIAldI2_H_XAL7)tK^3pkk!{7)w3P!lM zHj@H#7A!&FCJUoGrr#sl1^2hMJ+>UT&sfjR*2P%g%$u#}d78BvavJ2tildodbU3B+ z2(pXsaB)Nj)-O)p zur@rRq_8qR{!zLW6PtuZ0uvq|II>e@&ZM>1ro%6ccv4sqU;i+dhsVqKiHA8#S+h*< z5#1SmS&44yZN97Qa%^Y*xkI69QRJen(G+{hy)Btsw$9{!n>%)@w6Z>zM{I6>ao%Dc zC=MtcNEkV&`sf2xe@7d$Fnaf<8O%Jg&dKfhHkn>>yV2p#Z#Prvn+g!gms!X;#EOg8 zjU{GS=6TD@{l3rcb)4C^?|?u1*0)O$|-fCDM?han&lDT{%Id_r%ghoh(fU`2&P!^iEAThYyqHsawl3dh z@9Vw(js9&rT?`Q;mfrjPr^?2=w{yk*f!{Ax zT~&YW&X7_KbE~SG7CiafRWo?Q!D(~63#%8_Rc-QBbagKDRaDn_yDDnEo17JOURPK3 z=2|Cy>m*@_|9EZ@w;f*1@0@#@hXbAJ@gbiS+@BFt#NaWJdoS2j+u=JbbRv+b295@p zax%=r$Ld+H8ael9Je4G0pLTapAy>u delta 68 zcmV-K0K5Nyzy*N71&|v7l93!k0g|y`p$`)ervL^F0{{=`55Eip49X0r3>>o|AomIc a3>*OXvkw~$0R({v1_gs49Je4G0pLTubQ0nK