1. Safeguard Power Analysis (Perugini et al. 2014) für Effektstärken aus Bem’s (2011) Originalstudie und der Metaanalyse von Bem et al. (2015)

  2. Danach mache ich noch eine reguläre Power Analyse mit dem lower end of the CI aus der Metaanalyse von Bem et al. (2015). Bin gespannt öp du etwa aufs selbe gekommen bist.

  3. Zum Schluss gibt es noch eine Power Analyse zu unserer Studie mit Abbildungen, die die Power unserer Studie zeigen unter Annahme verschiedener Populations-Effektstärken)

1. Safeguard Power Analysis

Es sind immer one-tailed tests. Daher bin ich mir nicht sicher, ob man die safeguard power analyse anwenden kann. Und es sind auch keine unabhängigen Stichproben (ist das wichtig für die Analyse?). Anyways, habe das mal ausgerechnet…

1.1 Bem (2011)

Psi Effekte

Priming I: “The retroactive procedure also yielded the predicted psi effect: With a 1,500-ms cutoff criterion and the inverse transformation, participants were 15.0 ms faster on congruent trials than on incongruent trials,t(96)=2.55,p=.006,d=0.25.” (p. 413)

d=.25, n = 97, power = .8

     Lower_d   N_required          SSR 
   0.1283492 1504.0000000    7.7525773 

Priming II: “The retroactive procedure also yielded the predicted psieffect again: With a 1,500-ms cutoff criterion and the inverse transformation, participants were 16.5 ms faster on congruent trials than on incongruent trials,t(98)=2.03,p=.023,d=0.20.” (p. 414)

d=0.20, n = 99, power = 0.8

      Lower_d    N_required           SSR 
   0.07982076 3884.00000000   19.61616162 

Recall I: “The results show that practicing a set of words after the recall test does, in fact, reach back in time to facilitate the recall of those words: The mean DR% for the total sample was 2.27%, t(99)=1.92,p=.029,d=0.19” (p.419)

d=0.19, n = 100, power = 0.8

      Lower_d    N_required           SSR 
   0.07046632 4982.00000000   24.91000000 

Recall II: ” The mean DR% score was 4.21%,t(49)=2.96,p=.002,d=0.42” (p.420)

d=0.42, n = 50, power = 0.8

    Lower_d  N_required         SSR 
  0.2487251 402.0000000   4.0200000 

Stimulus Seeking

Retroactive Priming I & II: No correlations with stimulus seeking.

Free recall I: “stimulus seeking was significantly correlated with psi performance (DR%):r=.22,p=.014.” (p. 419)

Free recall II: “In this replication, however, stimulus seeking was no longer significantly correlated with psi performance (r=.10,p=.25)” (p. 420)

Also nehmen wir die Werte von Free recall I: r = .22, n = 100, Power = 0.8

    Lower_r  N_required         SSR 
  0.1373292 326.0000000   3.2600000 

1.2 Metaanalyse Bem et al. (2015)

Effect sizes from Table 2

Priming: N = 1154, d = 0.11, power = 0.8

      Lower_d    N_required           SSR 
   0.07492442 4408.00000000    1.90987868 

Recall: N = 4601, d = 0.04, power = 0.8

       Lower_d     N_required            SSR 
    0.02245005 49070.00000000     5.33253641 

2. Regular power analysis

Regular power analysis with lower level of the 95% CI in Table 2 from Bem et al. (2015)

Priming: d=0.03


     Paired t test power calculation 

              n = 6870.861
              d = 0.03
      sig.level = 0.05
          power = 0.8
    alternative = greater

NOTE: n is number of *pairs*

Reall: d=0.01 (instead of -0.01, wiu negativs vorzeichen geit nid)


     Paired t test power calculation 

              n = 61826.93
              d = 0.01
      sig.level = 0.05
          power = 0.8
    alternative = greater

NOTE: n is number of *pairs*

3. Power calculation for our own study

Sample size calculations use an estimate of the unknown population effect size. What happens to power if the population effect size is different than what we estimated. That information is conveyed in the graph below. An examination of this output might cause you to adjust your sample size. (gstohle vo https://dstanley4.github.io/psyc4780bookdown/sample-size-analysis-for-nhst.html)

Experiment 1

N = 727

Experiment 2

N = 1414

Experiment 3

N = 1395

LS0tDQp0aXRsZTogIlBvd2VyIEFuYWx5c2lzIg0Kb3V0cHV0Og0KICBodG1sX25vdGVib29rOiBkZWZhdWx0DQotLS0NCg0KMS4gU2FmZWd1YXJkIFBvd2VyIEFuYWx5c2lzIChQZXJ1Z2luaSBldCBhbC4gMjAxNCkgZsO8ciBFZmZla3RzdMOkcmtlbiBhdXMgQmVtJ3MgKDIwMTEpIE9yaWdpbmFsc3R1ZGllIHVuZCBkZXIgTWV0YWFuYWx5c2Ugdm9uIEJlbSBldCBhbC4gKDIwMTUpDQoNCjIuIERhbmFjaCBtYWNoZSBpY2ggbm9jaCBlaW5lIHJlZ3Vsw6RyZSBQb3dlciBBbmFseXNlIG1pdCBkZW0gbG93ZXIgZW5kIG9mIHRoZSBDSSBhdXMgZGVyIE1ldGFhbmFseXNlIHZvbiBCZW0gZXQgYWwuICgyMDE1KS4gQmluIGdlc3Bhbm50IMO2cCBkdSBldHdhIGF1ZnMgc2VsYmUgZ2Vrb21tZW4gYmlzdC4NCg0KMy4gWnVtIFNjaGx1c3MgZ2lidCBlcyBub2NoIGVpbmUgUG93ZXIgQW5hbHlzZSB6dSB1bnNlcmVyIFN0dWRpZSBtaXQgQWJiaWxkdW5nZW4sIGRpZSBkaWUgUG93ZXIgdW5zZXJlciBTdHVkaWUgemVpZ2VuIHVudGVyIEFubmFobWUgdmVyc2NoaWVkZW5lciBQb3B1bGF0aW9ucy1FZmZla3RzdMOkcmtlbikNCg0KDQpgYGB7ciBpbnN0YWxsIHBhY2thZ2VzLCBldmFsPUZBTFNFLCBpbmNsdWRlPUZBTFNFfQ0Kb3B0aW9ucyhzY2lwZW49OTk5OTkpICMgZGlzYWJsZSBzY2llbnRpZmljIG5vdGF0aW9uIA0KaW5zdGFsbC5wYWNrYWdlcygicHdyIikNCmluc3RhbGwucGFja2FnZXMoIk1CRVNTIikNCmluc3RhbGwucGFja2FnZXMoInBzeWNoIikNCmluc3RhbGwucGFja2FnZXMoInJlbW90ZXMiKQ0KcmVtb3Rlczo6aW5zdGFsbF9naXRodWIoIkdpdWxpb0Nvc3RhbnRpbmkvc2FmZWd1YXJkcG93ZXIiKQ0KYGBgDQoNCmBgYHtyIGxvYWQgcGFja2FnZSwgaW5jbHVkZT1GQUxTRX0NCmxpYnJhcnkoc2FmZWd1YXJkcG93ZXIpDQpsaWJyYXJ5KHRpZHl2ZXJzZSkNCmBgYA0KIyAxLiBTYWZlZ3VhcmQgUG93ZXIgQW5hbHlzaXMNCg0KRXMgc2luZCBpbW1lciBvbmUtdGFpbGVkIHRlc3RzLiBEYWhlciBiaW4gaWNoIG1pciBuaWNodCBzaWNoZXIsIG9iIG1hbiBkaWUgc2FmZWd1YXJkIHBvd2VyIGFuYWx5c2UgYW53ZW5kZW4ga2Fubi4gVW5kIGVzIHNpbmQgYXVjaCBrZWluZSB1bmFiaMOkbmdpZ2VuIFN0aWNocHJvYmVuIChpc3QgZGFzIHdpY2h0aWcgZsO8ciBkaWUgQW5hbHlzZT8pLiBBbnl3YXlzLCBoYWJlIGRhcyBtYWwgYXVzZ2VyZWNobmV0Li4uDQoNCg0KIyMgMS4xIEJlbSAoMjAxMSkNCg0KIyMjIFBzaSBFZmZla3RlDQoNCioqUHJpbWluZyBJOioqDQoiVGhlIHJldHJvYWN0aXZlIHByb2NlZHVyZSBhbHNvIHlpZWxkZWQgdGhlIHByZWRpY3RlZCBwc2kgZWZmZWN0OiBXaXRoIGEgMSw1MDAtbXMgY3V0b2ZmIGNyaXRlcmlvbiBhbmQgdGhlIGludmVyc2UgdHJhbnNmb3JtYXRpb24sIHBhcnRpY2lwYW50cyB3ZXJlIDE1LjAgbXMgZmFzdGVyIG9uIGNvbmdydWVudCB0cmlhbHMgdGhhbiBvbiBpbmNvbmdydWVudCB0cmlhbHMsdCg5Nik9Mi41NSxwPS4wMDYsZD0wLjI1LiIgKHAuIDQxMykNCg0KZD0uMjUsIG4gPSA5NywgcG93ZXIgPSAuOA0KYGBge3IgUHNpIGVmZmVjdCBQcmltaW5nIEksIGVjaG89RkFMU0V9DQpzYWZlZ3VhcmQuZChkPTAuMjUsIG4uMSA9IDk3LCBuLjIgPSA5Nywgc2lnLmxldmVsID0gMC4wNSwgcG93ZXIgPSAwLjgpDQpgYGANCioqUHJpbWluZyBJSToqKg0KIlRoZSByZXRyb2FjdGl2ZSBwcm9jZWR1cmUgYWxzbyB5aWVsZGVkIHRoZSBwcmVkaWN0ZWQgcHNpZWZmZWN0IGFnYWluOiBXaXRoIGEgMSw1MDAtbXMgY3V0b2ZmIGNyaXRlcmlvbiBhbmQgdGhlIGludmVyc2UgdHJhbnNmb3JtYXRpb24sIHBhcnRpY2lwYW50cyB3ZXJlIDE2LjUgbXMgZmFzdGVyIG9uIGNvbmdydWVudCB0cmlhbHMgdGhhbiBvbiBpbmNvbmdydWVudCB0cmlhbHMsdCg5OCk9Mi4wMyxwPS4wMjMsZD0wLjIwLiAiIChwLiA0MTQpDQoNCmQ9MC4yMCwgbiA9IDk5LCBwb3dlciA9IDAuOA0KYGBge3IgUHNpIGVmZmVjdCBQcmltaW5nIElJLCBlY2hvPUZBTFNFfQ0Kc2FmZWd1YXJkLmQoZD0wLjIwLCBuLjEgPSA5OSwgbi4yID0gOTksIHNpZy5sZXZlbCA9IDAuMDUsIHBvd2VyID0gMC44KQ0KYGBgDQoNCioqUmVjYWxsIEk6KioNCiJUaGUgcmVzdWx0cyBzaG93IHRoYXQgcHJhY3RpY2luZyBhIHNldCBvZiB3b3JkcyBhZnRlciB0aGUgcmVjYWxsIHRlc3QgZG9lcywgaW4gZmFjdCwgcmVhY2ggYmFjayBpbiB0aW1lIHRvIGZhY2lsaXRhdGUgdGhlIHJlY2FsbCBvZiB0aG9zZSB3b3JkczogVGhlIG1lYW4gRFIlIGZvciB0aGUgdG90YWwgc2FtcGxlIHdhcyAyLjI3JSwgdCg5OSk9MS45MixwPS4wMjksZD0wLjE5IiAocC40MTkpDQoNCmQ9MC4xOSwgbiA9IDEwMCwgcG93ZXIgPSAwLjgNCmBgYHtyIFBzaSBlZmZlY3QgUmVjYWxsIEksIGVjaG89RkFMU0V9DQpzYWZlZ3VhcmQuZChkPTAuMTksIG4uMSA9IDEwMCwgbi4yID0gMTAwLCBzaWcubGV2ZWwgPSAwLjA1LCBwb3dlciA9IDAuOCkNCmBgYA0KDQoqKlJlY2FsbCBJSToqKg0KIiBUaGUgbWVhbiBEUiUgc2NvcmUgd2FzIDQuMjElLHQoNDkpPTIuOTYscD0uMDAyLGQ9MC40MiIgKHAuNDIwKQ0KDQpkPTAuNDIsIG4gPSA1MCwgcG93ZXIgPSAwLjgNCmBgYHtyIFBzaSBlZmZlY3QgUmVjYWxsIElJLCBlY2hvPUZBTFNFfQ0Kc2FmZWd1YXJkLmQoZD0wLjQyLCBuLjEgPSA1MCwgbi4yID0gNTAsIHNpZy5sZXZlbCA9IDAuMDUsIHBvd2VyID0gMC44KQ0KYGBgDQoNCiMjIyBTdGltdWx1cyBTZWVraW5nDQoNCioqUmV0cm9hY3RpdmUgUHJpbWluZyBJICYgSUk6KioNCk5vIGNvcnJlbGF0aW9ucyB3aXRoIHN0aW11bHVzIHNlZWtpbmcuDQoNCioqRnJlZSByZWNhbGwgSToqKg0KInN0aW11bHVzIHNlZWtpbmcgd2FzIHNpZ25pZmljYW50bHkgY29ycmVsYXRlZCB3aXRoIHBzaSBwZXJmb3JtYW5jZSAoRFIlKTpyPS4yMixwPS4wMTQuIiAocC4gNDE5KQ0KDQoqKkZyZWUgcmVjYWxsIElJOioqDQoiSW4gdGhpcyByZXBsaWNhdGlvbiwgaG93ZXZlciwgc3RpbXVsdXMgc2Vla2luZyB3YXMgbm8gbG9uZ2VyIHNpZ25pZmljYW50bHkgY29ycmVsYXRlZCB3aXRoIHBzaSBwZXJmb3JtYW5jZSAocj0uMTAscD0uMjUpIiAocC4gNDIwKQ0KDQpBbHNvIG5laG1lbiB3aXIgZGllIFdlcnRlIHZvbiBGcmVlIHJlY2FsbCBJOiByID0gLjIyLCBuID0gMTAwLCBQb3dlciA9IDAuOA0KDQpgYGB7ciBjb3JyZWxhdGlvbiB3aXRoIHN0aW11bHVzIHNlZWtpbmcsIGVjaG89RkFMU0V9DQpzYWZlZ3VhcmQucihyID0gLjIyLCBuID0gMTAwLCBzaWcubGV2ZWwgPSAuMDUsIHBvd2VyID0gLjgpDQpgYGANCg0KIyMgMS4yIE1ldGFhbmFseXNlIEJlbSBldCBhbC4gKDIwMTUpDQoNCkVmZmVjdCBzaXplcyBmcm9tIFRhYmxlIDINCg0KKipQcmltaW5nOioqIE4gPSAxMTU0LCBkID0gMC4xMSwgcG93ZXIgPSAwLjgNCg0KYGBge3IgUHJpbWluZyBQU0kgZWZmZWN0LCBlY2hvPUZBTFNFfQ0Kc2FmZWd1YXJkLmQoZD0wLjExLCBuLjEgPSAxMTU0LCBuLjIgPSAxMTU0LCBzaWcubGV2ZWwgPSAwLjA1LCBwb3dlciA9IDAuOCkNCmBgYA0KDQoqKlJlY2FsbDoqKiBOID0gNDYwMSwgZCA9IDAuMDQsIHBvd2VyID0gMC44DQpgYGB7ciBSZWNhbGwgUFNJIGVmZmVjdCwgZWNobz1GQUxTRX0NCnNhZmVndWFyZC5kKGQ9MC4wNCwgbi4xID0gNDYwMSwgbi4yID0gNDYwMSwgc2lnLmxldmVsID0gMC4wNSwgcG93ZXIgPSAwLjgpDQpgYGANCg0KDQoNCg0KIyAyLiBSZWd1bGFyIHBvd2VyIGFuYWx5c2lzDQoNClJlZ3VsYXIgcG93ZXIgYW5hbHlzaXMgd2l0aCBsb3dlciBsZXZlbCBvZiB0aGUgOTUlIENJIGluIFRhYmxlIDIgZnJvbSBCZW0gZXQgYWwuICgyMDE1KQ0KDQoqKlByaW1pbmc6ICoqIGQ9MC4wMw0KYGBge3IgUHJpbWluZyBsb3dlciBDSSwgZWNobz1GQUxTRX0NCnB3cl9vdXQgPC0gcHdyLnQudGVzdChkID0gMC4wMywgDQogICAgICAgICAgICAgICAgICAgICAgcG93ZXIgPSAuODAsDQogICAgICAgICAgICAgICAgICAgICAgdHlwZSA9ICJwYWlyZWQiLA0KICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0aXZlID0gImdyZWF0ZXIiKQ0KcHdyX291dA0KcGxvdChwd3Jfb3V0KQ0KYGBgDQoNCg0KDQoqKlJlYWxsOioqIGQ9MC4wMSAoaW5zdGVhZCBvZiAtMC4wMSwgKndpdSBuZWdhdGl2cyB2b3J6ZWljaGVuIGdlaXQgbmlkKikNCmBgYHtyIFJlY2FsbCBsb3dlciBDSSwgZWNobz1GQUxTRX0NCnB3cl9vdXQgPC0gcHdyLnQudGVzdChkID0gMC4wMSwgDQogICAgICAgICAgICAgICAgICAgICAgcG93ZXIgPSAuODAsDQogICAgICAgICAgICAgICAgICAgICAgdHlwZSA9ICJwYWlyZWQiLA0KICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0aXZlID0gImdyZWF0ZXIiKQ0KcHdyX291dA0KDQpwbG90KHB3cl9vdXQpDQpgYGANCg0KIyAzLiBQb3dlciBjYWxjdWxhdGlvbiBmb3Igb3VyIG93biBzdHVkeQ0KDQpTYW1wbGUgc2l6ZSBjYWxjdWxhdGlvbnMgdXNlIGFuIGVzdGltYXRlIG9mIHRoZSB1bmtub3duIHBvcHVsYXRpb24gZWZmZWN0IHNpemUuIFdoYXQgaGFwcGVucyB0byBwb3dlciBpZiB0aGUgcG9wdWxhdGlvbiBlZmZlY3Qgc2l6ZSBpcyBkaWZmZXJlbnQgdGhhbiB3aGF0IHdlIGVzdGltYXRlZC4gVGhhdCBpbmZvcm1hdGlvbiBpcyBjb252ZXllZCBpbiB0aGUgZ3JhcGggYmVsb3cuIEFuIGV4YW1pbmF0aW9uIG9mIHRoaXMgb3V0cHV0IG1pZ2h0IGNhdXNlIHlvdSB0byBhZGp1c3QgeW91ciBzYW1wbGUgc2l6ZS4gKCpnc3RvaGxlIHZvKiBodHRwczovL2RzdGFubGV5NC5naXRodWIuaW8vcHN5YzQ3ODBib29rZG93bi9zYW1wbGUtc2l6ZS1hbmFseXNpcy1mb3ItbmhzdC5odG1sKQ0KDQojIyBFeHBlcmltZW50IDENCg0KTiA9IDcyNw0KYGBge3IgRXhwMSwgZWNobz1GQUxTRX0NCiMgSW5kaWNhdGUgdGhlIHR5cGUgb2YgdGVzdCBmb3IgeW91ciBzdHVkeS4NCiMgRm9yIGFsdGVybmF0aXZlOiB1c2UgImdyZWF0ZXIiIGZvciBvbmUtc2lkZWQgDQojIGFuZCAidHdvLnNpZGVkIiBmb3IgdHdvLXNpZGVkIHRlc3QNCmFsdGVybmF0aXZlIDwtICJncmVhdGVyIg0KbiA8LSA3MjcgICMgTiBwZXIgZ3JvdXAgZm9yIHR3by5zYW1wbGUgdGVzdA0KbWF4X3BvcF9kID0gMC4yMiAgI21heCBkIHZhbHVlIG9uIHgtYXhpcy4gTXVzdCBiZSBoaWdoIChlLmcuLCAzIG9yIHNvKSB3aGVuIG4gaXMgbG93Lg0KDQoNCiMgRG8gbm90IG1vZGlmeSBjb2RlIGJlbG93DQp0eXBlID0gInBhaXJlZCIgIyBVc2UgInR3by5zYW1wbGUiIG9yICJwYWlyZWQiDQpwb3BfZCA8LSBzZXEoMCwgbWF4X3BvcF9kLCBieSA9IDAuMDEpIA0KcG9wX2RfYXhpc192YWx1ZXMgPC0gc2VxKDAsIG1heF9wb3BfZCwgYnkgPSAwLjAyKSANCnBvd2VyX3ZhbHVlcyA8LSBkYXRhLmZyYW1lKHBvcF9kID0gcG9wX2QsIG4gPSBuLCBwb3dlciA9IE5BKQ0KZm9yIChpIGluIDE6bnJvdyhwb3dlcl92YWx1ZXMpKXsNCiAgcHdyX2FuYWx5c2lzIDwtIHB3ci50LnRlc3QoZCA9IHBvd2VyX3ZhbHVlcyRwb3BfZFtpXSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbiA9IG4sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGUgPSB0eXBlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRlcm5hdGl2ZSA9IGFsdGVybmF0aXZlKQ0KICBwb3dlcl92YWx1ZXMkcG93ZXJbaV0gPC0gcHdyX2FuYWx5c2lzJHBvd2VyDQp9DQoNCg0KcHdyXzUwIDwtIHB3ci50LnRlc3QobiA9IG4sIHBvd2VyID0gLjUwLCB0eXBlID0gdHlwZSkkZA0KcHdyXzgwIDwtIHB3ci50LnRlc3QobiA9IG4sIHBvd2VyID0gLjgwLCB0eXBlID0gdHlwZSkkZA0KcHdyXzk1IDwtIHB3ci50LnRlc3QobiA9IG4sIHBvd2VyID0gLjk1LCB0eXBlID0gdHlwZSkkZA0KDQpwb3dlcl9wbG90IDwtIGdncGxvdChkYXRhID0gcG93ZXJfdmFsdWVzLA0KICAgICAgICAgICAgICAgICAgICAgbWFwcGluZyA9IGFlcyh4ID0gcG9wX2QsIHkgPSBwb3dlcikpICsNCiAgZ2VvbV9saW5lKCkgKw0KICBzY2FsZV94X2NvbnRpbnVvdXMoYnJlYWtzID0gcG9wX2RfYXhpc192YWx1ZXMpICsNCiAgc2NhbGVfeV9jb250aW51b3VzKGJyZWFrcyA9IHNlcSgwLCAxLCBieSA9IC4xMCkpICsNCiAgbGFicyh0aXRsZSA9IHNwcmludGYoIlBvd2VyIHBsb3QgZm9yIE4gPSAlZyAoaW4gdG90YWwgZm9yIHBhaXJlZCB0ZXN0LCBhbmQgcGVyIGdyb3VwIGZvciBhIHR3by5zYW1wbGUgdGVzdCkiLCBuKSwNCiAgICAgICBzdWJ0aXRsZSA9IHNwcmludGYoIkFsdGVybmF0aXZlID0gJXMiLCBhbHRlcm5hdGl2ZSksDQogICAgICAgeCA9ICJQb3B1bGF0aW9uIGQtdmFsdWUiLA0KICAgICAgIHkgPSAiUG93ZXIgKHByb2JhYmlsaXR5IG9mIHNpZy4gZWZmZWN0KSIpICsNCiAgYW5ub3RhdGUoInJlY3QiLCB4bWluID0gMCwgeG1heCA9IHB3cl81MCwgDQogICAgICAgICAgIHltaW4gPSAwLCB5bWF4ID0gMSwgDQogICAgICAgICAgIGZpbGwgPSAicmVkIiwgYWxwaGEgPSAuNSkgKw0KICBhbm5vdGF0ZSgicmVjdCIsIHhtaW4gPSBwd3JfNTAsIHhtYXggPSBwd3JfODAsIA0KICAgICAgICAgICB5bWluID0gMCwgeW1heCA9IDEsIA0KICAgICAgICAgICBmaWxsID0gInJlZCIsIGFscGhhID0gLjIpICsNCiAgYW5ub3RhdGUoInJlY3QiLCB4bWluID0gcHdyXzgwLCB4bWF4ID0gcHdyXzk1LCANCiAgICAgICAgICAgeW1pbiA9IDAsIHltYXggPSAxLCANCiAgICAgICAgICAgZmlsbCA9ICJncmVlbiIsIGFscGhhID0gLjIpICsNCiAgYW5ub3RhdGUoInJlY3QiLCB4bWluID0gcHdyXzk1LCB4bWF4ID0gbWF4X3BvcF9kLCANCiAgICAgICAgICAgeW1pbiA9IDAsIHltYXggPSAxLCANCiAgICAgICAgICAgZmlsbCA9ICJncmVlbiIsIGFscGhhID0gLjUpICsNCiAgdGhlbWVfY2xhc3NpYygpDQoNCnByaW50KHBvd2VyX3Bsb3QpDQpgYGANCg0KIyMgRXhwZXJpbWVudCAyDQoNCk4gPSAxNDE0DQpgYGB7ciBFeHAyLCBlY2hvPUZBTFNFfQ0KIyBJbmRpY2F0ZSB0aGUgdHlwZSBvZiB0ZXN0IGZvciB5b3VyIHN0dWR5Lg0KIyBGb3IgYWx0ZXJuYXRpdmU6IHVzZSAiZ3JlYXRlciIgZm9yIG9uZS1zaWRlZCANCiMgYW5kICJ0d28uc2lkZWQiIGZvciB0d28tc2lkZWQgdGVzdA0KYWx0ZXJuYXRpdmUgPC0gImdyZWF0ZXIiDQpuIDwtIDE0MTQgICMgTiBwZXIgZ3JvdXAgZm9yIHR3by5zYW1wbGUgdGVzdA0KbWF4X3BvcF9kID0gMC4yMiAgI21heCBkIHZhbHVlIG9uIHgtYXhpcy4gTXVzdCBiZSBoaWdoIChlLmcuLCAzIG9yIHNvKSB3aGVuIG4gaXMgbG93Lg0KDQoNCiMgRG8gbm90IG1vZGlmeSBjb2RlIGJlbG93DQp0eXBlID0gInBhaXJlZCIgIyBVc2UgInR3by5zYW1wbGUiIG9yICJwYWlyZWQiDQpwb3BfZCA8LSBzZXEoMCwgbWF4X3BvcF9kLCBieSA9IDAuMDEpIA0KcG9wX2RfYXhpc192YWx1ZXMgPC0gc2VxKDAsIG1heF9wb3BfZCwgYnkgPSAwLjAyKSANCnBvd2VyX3ZhbHVlcyA8LSBkYXRhLmZyYW1lKHBvcF9kID0gcG9wX2QsIG4gPSBuLCBwb3dlciA9IE5BKQ0KZm9yIChpIGluIDE6bnJvdyhwb3dlcl92YWx1ZXMpKXsNCiAgcHdyX2FuYWx5c2lzIDwtIHB3ci50LnRlc3QoZCA9IHBvd2VyX3ZhbHVlcyRwb3BfZFtpXSwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgbiA9IG4sDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIHR5cGUgPSB0eXBlLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBhbHRlcm5hdGl2ZSA9IGFsdGVybmF0aXZlKQ0KICBwb3dlcl92YWx1ZXMkcG93ZXJbaV0gPC0gcHdyX2FuYWx5c2lzJHBvd2VyDQp9DQoNCg0KcHdyXzUwIDwtIHB3ci50LnRlc3QobiA9IG4sIHBvd2VyID0gLjUwLCB0eXBlID0gdHlwZSkkZA0KcHdyXzgwIDwtIHB3ci50LnRlc3QobiA9IG4sIHBvd2VyID0gLjgwLCB0eXBlID0gdHlwZSkkZA0KcHdyXzk1IDwtIHB3ci50LnRlc3QobiA9IG4sIHBvd2VyID0gLjk1LCB0eXBlID0gdHlwZSkkZA0KDQpwb3dlcl9wbG90IDwtIGdncGxvdChkYXRhID0gcG93ZXJfdmFsdWVzLA0KICAgICAgICAgICAgICAgICAgICAgbWFwcGluZyA9IGFlcyh4ID0gcG9wX2QsIHkgPSBwb3dlcikpICsNCiAgZ2VvbV9saW5lKCkgKw0KICBzY2FsZV94X2NvbnRpbnVvdXMoYnJlYWtzID0gcG9wX2RfYXhpc192YWx1ZXMpICsNCiAgc2NhbGVfeV9jb250aW51b3VzKGJyZWFrcyA9IHNlcSgwLCAxLCBieSA9IC4xMCkpICsNCiAgbGFicyh0aXRsZSA9IHNwcmludGYoIlBvd2VyIHBsb3QgZm9yIE4gPSAlZyAoaW4gdG90YWwgZm9yIHBhaXJlZCB0ZXN0LCBhbmQgcGVyIGdyb3VwIGZvciBhIHR3by5zYW1wbGUgdGVzdCkiLCBuKSwNCiAgICAgICBzdWJ0aXRsZSA9IHNwcmludGYoIkFsdGVybmF0aXZlID0gJXMiLCBhbHRlcm5hdGl2ZSksDQogICAgICAgeCA9ICJQb3B1bGF0aW9uIGQtdmFsdWUiLA0KICAgICAgIHkgPSAiUG93ZXIgKHByb2JhYmlsaXR5IG9mIHNpZy4gZWZmZWN0KSIpICsNCiAgYW5ub3RhdGUoInJlY3QiLCB4bWluID0gMCwgeG1heCA9IHB3cl81MCwgDQogICAgICAgICAgIHltaW4gPSAwLCB5bWF4ID0gMSwgDQogICAgICAgICAgIGZpbGwgPSAicmVkIiwgYWxwaGEgPSAuNSkgKw0KICBhbm5vdGF0ZSgicmVjdCIsIHhtaW4gPSBwd3JfNTAsIHhtYXggPSBwd3JfODAsIA0KICAgICAgICAgICB5bWluID0gMCwgeW1heCA9IDEsIA0KICAgICAgICAgICBmaWxsID0gInJlZCIsIGFscGhhID0gLjIpICsNCiAgYW5ub3RhdGUoInJlY3QiLCB4bWluID0gcHdyXzgwLCB4bWF4ID0gcHdyXzk1LCANCiAgICAgICAgICAgeW1pbiA9IDAsIHltYXggPSAxLCANCiAgICAgICAgICAgZmlsbCA9ICJncmVlbiIsIGFscGhhID0gLjIpICsNCiAgYW5ub3RhdGUoInJlY3QiLCB4bWluID0gcHdyXzk1LCB4bWF4ID0gbWF4X3BvcF9kLCANCiAgICAgICAgICAgeW1pbiA9IDAsIHltYXggPSAxLCANCiAgICAgICAgICAgZmlsbCA9ICJncmVlbiIsIGFscGhhID0gLjUpICsNCiAgdGhlbWVfY2xhc3NpYygpDQoNCnByaW50KHBvd2VyX3Bsb3QpDQpgYGANCg0KIyMgRXhwZXJpbWVudCAzDQoNCk4gPSAxMzk1DQpgYGB7ciBFeHAzLCBlY2hvPUZBTFNFfQ0KIyBJbmRpY2F0ZSB0aGUgdHlwZSBvZiB0ZXN0IGZvciB5b3VyIHN0dWR5Lg0KIyBGb3IgYWx0ZXJuYXRpdmU6IHVzZSAiZ3JlYXRlciIgZm9yIG9uZS1zaWRlZCANCiMgYW5kICJ0d28uc2lkZWQiIGZvciB0d28tc2lkZWQgdGVzdA0KYWx0ZXJuYXRpdmUgPC0gImdyZWF0ZXIiDQpuIDwtIDEzOTUgICMgTiBwZXIgZ3JvdXAgZm9yIHR3by5zYW1wbGUgdGVzdA0KbWF4X3BvcF9kID0gMC4xICAjbWF4IGQgdmFsdWUgb24geC1heGlzLiBNdXN0IGJlIGhpZ2ggKGUuZy4sIDMgb3Igc28pIHdoZW4gbiBpcyBsb3cuDQoNCg0KIyBEbyBub3QgbW9kaWZ5IGNvZGUgYmVsb3cNCnR5cGUgPSAicGFpcmVkIiAjIFVzZSAidHdvLnNhbXBsZSIgb3IgInBhaXJlZCINCnBvcF9kIDwtIHNlcSgwLCBtYXhfcG9wX2QsIGJ5ID0gMC4wMSkgDQpwb3BfZF9heGlzX3ZhbHVlcyA8LSBzZXEoMCwgbWF4X3BvcF9kLCBieSA9IDAuMDEpIA0KcG93ZXJfdmFsdWVzIDwtIGRhdGEuZnJhbWUocG9wX2QgPSBwb3BfZCwgbiA9IG4sIHBvd2VyID0gTkEpDQpmb3IgKGkgaW4gMTpucm93KHBvd2VyX3ZhbHVlcykpew0KICBwd3JfYW5hbHlzaXMgPC0gcHdyLnQudGVzdChkID0gcG93ZXJfdmFsdWVzJHBvcF9kW2ldLA0KICAgICAgICAgICAgICAgICAgICAgICAgICAgICBuID0gbiwNCiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdHlwZSA9IHR5cGUsDQogICAgICAgICAgICAgICAgICAgICAgICAgICAgIGFsdGVybmF0aXZlID0gYWx0ZXJuYXRpdmUpDQogIHBvd2VyX3ZhbHVlcyRwb3dlcltpXSA8LSBwd3JfYW5hbHlzaXMkcG93ZXINCn0NCg0KDQpwd3JfNTAgPC0gcHdyLnQudGVzdChuID0gbiwgcG93ZXIgPSAuNTAsIHR5cGUgPSB0eXBlKSRkDQpwd3JfODAgPC0gcHdyLnQudGVzdChuID0gbiwgcG93ZXIgPSAuODAsIHR5cGUgPSB0eXBlKSRkDQpwd3JfOTUgPC0gcHdyLnQudGVzdChuID0gbiwgcG93ZXIgPSAuOTUsIHR5cGUgPSB0eXBlKSRkDQoNCnBvd2VyX3Bsb3QgPC0gZ2dwbG90KGRhdGEgPSBwb3dlcl92YWx1ZXMsDQogICAgICAgICAgICAgICAgICAgICBtYXBwaW5nID0gYWVzKHggPSBwb3BfZCwgeSA9IHBvd2VyKSkgKw0KICBnZW9tX2xpbmUoKSArDQogIHNjYWxlX3hfY29udGludW91cyhicmVha3MgPSBwb3BfZF9heGlzX3ZhbHVlcykgKw0KICBzY2FsZV95X2NvbnRpbnVvdXMoYnJlYWtzID0gc2VxKDAsIDEsIGJ5ID0gLjEwKSkgKw0KICBsYWJzKHRpdGxlID0gc3ByaW50ZigiUG93ZXIgcGxvdCBmb3IgTiA9ICVnIChpbiB0b3RhbCBmb3IgcGFpcmVkIHRlc3QsIGFuZCBwZXIgZ3JvdXAgZm9yIGEgdHdvLnNhbXBsZSB0ZXN0KSIsIG4pLA0KICAgICAgIHN1YnRpdGxlID0gc3ByaW50ZigiQWx0ZXJuYXRpdmUgPSAlcyIsIGFsdGVybmF0aXZlKSwNCiAgICAgICB4ID0gIlBvcHVsYXRpb24gZC12YWx1ZSIsDQogICAgICAgeSA9ICJQb3dlciAocHJvYmFiaWxpdHkgb2Ygc2lnLiBlZmZlY3QpIikgKw0KICBhbm5vdGF0ZSgicmVjdCIsIHhtaW4gPSAwLCB4bWF4ID0gcHdyXzUwLCANCiAgICAgICAgICAgeW1pbiA9IDAsIHltYXggPSAxLCANCiAgICAgICAgICAgZmlsbCA9ICJyZWQiLCBhbHBoYSA9IC41KSArDQogIGFubm90YXRlKCJyZWN0IiwgeG1pbiA9IHB3cl81MCwgeG1heCA9IHB3cl84MCwgDQogICAgICAgICAgIHltaW4gPSAwLCB5bWF4ID0gMSwgDQogICAgICAgICAgIGZpbGwgPSAicmVkIiwgYWxwaGEgPSAuMikgKw0KICBhbm5vdGF0ZSgicmVjdCIsIHhtaW4gPSBwd3JfODAsIHhtYXggPSBwd3JfOTUsIA0KICAgICAgICAgICB5bWluID0gMCwgeW1heCA9IDEsIA0KICAgICAgICAgICBmaWxsID0gImdyZWVuIiwgYWxwaGEgPSAuMikgKw0KICBhbm5vdGF0ZSgicmVjdCIsIHhtaW4gPSBwd3JfOTUsIHhtYXggPSBtYXhfcG9wX2QsIA0KICAgICAgICAgICB5bWluID0gMCwgeW1heCA9IDEsIA0KICAgICAgICAgICBmaWxsID0gImdyZWVuIiwgYWxwaGEgPSAuNSkgKw0KICB0aGVtZV9jbGFzc2ljKCkNCg0KcHJpbnQocG93ZXJfcGxvdCkNCmBgYA0K