1 Overview

We, as a lab, value and strive to advance the mission of open science to improve the accessibility, reproducibility, and replicability of science. As such, all lab members are expected to conduct research transparently and to promote reproducibility. This includes, but is not limited to, pre- or co-registering studies, sharing analysis scripts and data, using version control (GitLab), submitting preprints when submitting a manuscript to a journal, and providing support for other labs’ attempts to replicate and reproduce our findings. Our lab’s template for projects on the Open Science Framework (OSF) is located here1: https://osf.io/4w9sv.

2 Pre-Registration (or Co-Registration)

There is a continuum of registration approaches. Pre-registration involves publicly posting aspects of a study (e.g., study design, hypotheses, methods, materials, and analysis plan) before data collection begins. Co-registration involves specifying aspects of your study after data collection starts but before analysis. Post-registration involves specifying aspects of your study after after analysis has begun.

Pre-registration is often considered the gold-standard. However, co-registration and post-registration are better than no registration.

Here are elements of a study that can be registered:

  • study design
  • hypotheses
  • methods
  • materials
  • analysis plan

When analysis decisions are contingent upon prior steps that may influence which decision to take, the analysis plan can include decision trees (e.g., if X, then Y; if A, then B). For example, you can specify how you would proceed if the measures do not demonstrate longitudinal factorial invariance, or how you would handle poorly fitting models.

3 Sharing Data, Analysis Scripts, and Research Materials

3.1 Data Dictionary

For each study, we create a Data Dictionary. A Data Dictionary is a metadata file that tells people the meaning of variables in the data file and how to interpret them.

3.1.1 Style Guide

  • Use Roboto font size 10
  • Use an en dash (; i.e., not a hyphen) to indicate a range:
    • e.g., 1–18 (not 1-18)
    • an en dash is technically correct; in addition, spreadsheets often read 3-7 as March 7th, but they correctly read 3–7

3.1.2 Columns

The Data Dictionary should have the following columns:

  • Variable Name
    • the variable name in the data file
  • Form Name
    • the instrument or measure that the variable comes from
  • Human-Readable Variable Name
    • a more easily readable version of the variable name
  • Data Type
    • the format of the values in the column (e.g., string, binary, integer, numeric, date, time, etc.)
  • Variable Type
    • whether the scale of measurement is nominal, ordinal, interval, or ratio
  • Measurement Unit
    • the conceptual unit that is being measured (e.g., seconds, level, count)
  • Allowed Values
    • the allowed values for a variable and (if possible), what conceptual level each value corresponds to (e.g., 0 = Male; 1 = Female)
  • Description
    • conceptual description of the variable
  • Definition
    • definitions of abbreviations, conceptual defintions of terms, mathematical definitions of how a variable is calculated, etc.
  • Notes
    • additional notes about the variable and how it is calculated
  • References
    • references for the measure and/or variable

3.1.2.1 Data Types

Data Types include:

  • string
    • include letters or other characters (and possibly numbers)
  • factor
    • categorical variable with letters and/or numbers
  • binary
    • 0/1
  • integer
    • whole numbers (never decimals)
  • numeric
    • numbers
  • date
    • MM/DD/YYYY; e.g., 06/24/2020
  • time
    • HH:MM:SS (e.g., 01:30:24), or HH:MM (e.g., 05:24), or MM:SS
  • date-time
    • MM/DD/YYYY HH:MM:SS (e.g., 06/24/2020 01:30:24)

3.1.2.2 Variable Types

Variable Types include:

  • nominal
    • distinct categories
  • ordinal
    • ordered categories
  • interval
    • ordered with meaningful distances
  • ratio
    • ordered with meaningful distances and an absolute zero

3.1.2.3 Measurement Units

Measurement Units include:

  • ID
    • participant identification (ID) numbers
  • count
    • number of something (e.g., number of children in the household)
  • group
    • categories that reflect different groups (e.g., female vs male)
  • instance
    • nominal categories that do not reflect groups
  • yes/no
    • 0 = No; 1 = Yes
  • ratio
    • ratio of two variables (one variable divided by another variable)
  • USD
    • U.S. dollars ($)
  • option
    • categories that reflect participant’s choice among multiple options
  • location
    • categories that reflect different locations
  • state
    • categories that reflect a status
  • degree
    • the degree of
  • level
    • the level of
  • grade
    • school grade
  • date
    • MM/DD/YYYY; e.g., 06/24/2020
  • time
    • HH:MM:SS (e.g., 01:30:24), or HH:MM (e.g., 05:24), or MM:SS
  • date-time
    • MM/DD/YYYY HH:MM:SS (e.g., 06/24/2020 01:30:24)
  • milliseconds
  • seconds
  • minutes
  • hours
  • days
  • months
  • years
  • percentile
  • item

4 Version Control

We use GitLab for version control. See our lab’s guide for using GitLab. Our lab’s template for GitLab repositories is located here2: https://research-git.uiowa.edu/PetersenLab/Template.

5 Preprint

When submitting a manuscript to a journal, also submit a preprint to PsyArXiv. Combine the supplemental material and manuscript into one PDF file when posting.

6 OSF

The Open Science Framework (OSF) is a website for hosting pre-registrations, data, analysis code, research-related materials, and pre-prints to improve replicability and reproducibility of findings. For each paper project, create a new repository on the OSF and add the relevant contributors, including Dr. Petersen. Our lab’s template for projects on the Open Science Framework (OSF) can be found here3: https://osf.io/4w9sv.

6.1 Components

Create a component in the OSF project repository for the following components:

  • Pre-registration (or Co-registration)
  • Data
  • Data Dictionary
  • Analysis Code
  • Research Materials
  • Preprint

6.1.1 Pre-registration

6.1.2 Data

To help protect participant anonymity, it is important to anonymize participant IDs so their data cannot be stitched together across papers. To anonymize participant IDs, use the following script and change the seed for every paper so that a given participant gets a different anonymized code each time.

https://devpsylab.github.io/DataAnalysis/osf.html#anonymizedID

6.1.3 Data Dictionary

For each paper project, we export a .csv file with the subset of the Data Dictionary variables used for that specific paper. We upload that .csv file to the OSF. The formatting of the Data Dictionary is described here.

6.1.4 Analysis Code

6.1.5 Research Materials

6.1.6 Preprint

7 Manuscript Submission to a Journal

Before submitting a manuscript to a journal, make sure to post the relevant materials on the OSF, as described here, and post the preprint, as described here. When preparing a manuscript for submission to a journal, make sure to follow the Author Guidelines for each journal. After finalizing the manuscript in accordance with journal guidelines and when you are ready to submit the paper to the journal (but before submission), post the preprint on PsyArXiv. Include the link to the preprint in the cover letter to the journal. In the method section and on the title page, include the relevant OSF links to the pre-registration, data, data dictionary, analysis code, computational notebook, and research materials, etc. For example:

Hypotheses and measures for the School Readiness Study were pre-registered: https://osf.io/jzxb8. Hypotheses methods, and a data analysis plan for the present study were also pre-registered: https://osf.io/pny26. Data files, a data dictionary, analysis scripts, and a computational notebook for the present study are published online: https://osf.io/zs2bn.

In the manuscript submission, create and use anonymous view-only OSF links (for blind review). In the preprint submission, use the general OSF links (not the anonymous view-only OSF links) that will become viewable when the manuscript is accepted for publication (i.e., when you make the OSF repo public).

8 When the Manuscript is Accepted for Publication

When the manuscript is accepted for publication:

  1. Let all of the authors know, and send them the full, (in-press) APA-style reference
  2. Make the OSF repo public and create a DOI link for the repository that can be used for citing it
  3. Submit the finalized, unblinded manuscript (and any tables, figures, and the supplement; with the public OSF link; removing any highlighting or tracked changes) to the NIHMS system: https://www.nihms.nih.gov/submission/create/
    • After you submit the manuscript to NIHMS, send Dr. Petersen the NIHMS ID for the submission. We are required to report published papers to funding agences.
  4. Make sure the finalized, unblinded manuscript (and any tables, figures, and the supplement; with the public OSF link; removing any highlighting or tracked changes) is uploaded as an updated version of the preprint on PsyArXiv.

9 Adapting Open Science to Longitudinal Research

See our paper on adapting open science to longitudinal research: https://onlinelibrary.wiley.com/doi/10.1002/icd.2315


  1. Ask Dr. Petersen to give you access.↩︎

  2. Ask Dr. Petersen to give you access.↩︎

  3. Ask Dr. Petersen to give you access.↩︎

LS0tCnRpdGxlOiAiT3BlbiBTY2llbmNlIgotLS0KCmBgYHtyIHNldHVwLCBpbmNsdWRlID0gRkFMU0V9CmtuaXRyOjpvcHRzX2NodW5rJHNldCgKICBlY2hvID0gVFJVRSwKICBlcnJvciA9IFRSVUUsCiAgY29tbWVudCA9ICIiKQpgYGAKCiMgT3ZlcnZpZXcgeyNvdmVydmlld30KCldlLCBhcyBhIGxhYiwgdmFsdWUgYW5kIHN0cml2ZSB0byBhZHZhbmNlIHRoZSBtaXNzaW9uIG9mIFtvcGVuIHNjaWVuY2VdKGh0dHBzOi8vb25saW5lbGlicmFyeS53aWxleS5jb20vZG9pLzEwLjEwMDIvaWNkLjIzMTUpIHRvIGltcHJvdmUgdGhlIGFjY2Vzc2liaWxpdHksIHJlcHJvZHVjaWJpbGl0eSwgYW5kIHJlcGxpY2FiaWxpdHkgb2Ygc2NpZW5jZS4KQXMgc3VjaCwgYWxsIGxhYiBtZW1iZXJzIGFyZSBleHBlY3RlZCB0byBjb25kdWN0IHJlc2VhcmNoIHRyYW5zcGFyZW50bHkgYW5kIHRvIHByb21vdGUgcmVwcm9kdWNpYmlsaXR5LgpUaGlzIGluY2x1ZGVzLCBidXQgaXMgbm90IGxpbWl0ZWQgdG8sIFtwcmUtIG9yIGNvLXJlZ2lzdGVyaW5nXSgjcHJlcmVnaXN0cmF0aW9uKSBzdHVkaWVzLCBbc2hhcmluZyBhbmFseXNpcyBzY3JpcHRzIGFuZCBkYXRhXSgjc2hhcmluZyksIHVzaW5nIFt2ZXJzaW9uIGNvbnRyb2xdKCN2ZXJzaW9uQ29udHJvbCkgKEdpdExhYiksIHN1Ym1pdHRpbmcgW3ByZXByaW50c10oaHR0cHM6Ly9wc3lhcnhpdi5jb20pIHdoZW4gc3VibWl0dGluZyBhIG1hbnVzY3JpcHQgdG8gYSBqb3VybmFsLCBhbmQgcHJvdmlkaW5nIHN1cHBvcnQgZm9yIG90aGVyIGxhYnMnIGF0dGVtcHRzIHRvIHJlcGxpY2F0ZSBhbmQgcmVwcm9kdWNlIG91ciBmaW5kaW5ncy4KT3VyIGxhYidzIHRlbXBsYXRlIGZvciBwcm9qZWN0cyBvbiB0aGUgW09wZW4gU2NpZW5jZSBGcmFtZXdvcmtdKGh0dHBzOi8vb3NmLmlvKSAoT1NGKSBpcyBsb2NhdGVkIGhlcmVbXjFdOiBodHRwczovL29zZi5pby80dzlzdi4KCiMgUHJlLVJlZ2lzdHJhdGlvbiAob3IgQ28tUmVnaXN0cmF0aW9uKSB7I3ByZXJlZ2lzdHJhdGlvbn0KClRoZXJlIGlzIGEgY29udGludXVtIG9mIHJlZ2lzdHJhdGlvbiBhcHByb2FjaGVzLgpQcmUtcmVnaXN0cmF0aW9uIGludm9sdmVzIHB1YmxpY2x5IHBvc3RpbmcgYXNwZWN0cyBvZiBhIHN0dWR5IChlLmcuLCBzdHVkeSBkZXNpZ24sIGh5cG90aGVzZXMsIG1ldGhvZHMsIG1hdGVyaWFscywgYW5kIGFuYWx5c2lzIHBsYW4pIGJlZm9yZSBkYXRhIGNvbGxlY3Rpb24gYmVnaW5zLgpDby1yZWdpc3RyYXRpb24gaW52b2x2ZXMgc3BlY2lmeWluZyBhc3BlY3RzIG9mIHlvdXIgc3R1ZHkgYWZ0ZXIgZGF0YSBjb2xsZWN0aW9uIHN0YXJ0cyBidXQgYmVmb3JlIGFuYWx5c2lzLgpQb3N0LXJlZ2lzdHJhdGlvbiBpbnZvbHZlcyBzcGVjaWZ5aW5nIGFzcGVjdHMgb2YgeW91ciBzdHVkeSBhZnRlciBhZnRlciBhbmFseXNpcyBoYXMgYmVndW4uCgpQcmUtcmVnaXN0cmF0aW9uIGlzIG9mdGVuIGNvbnNpZGVyZWQgdGhlIGdvbGQtc3RhbmRhcmQuCkhvd2V2ZXIsIGNvLXJlZ2lzdHJhdGlvbiBhbmQgcG9zdC1yZWdpc3RyYXRpb24gYXJlIGJldHRlciB0aGFuIG5vIHJlZ2lzdHJhdGlvbi4KCkhlcmUgYXJlIGVsZW1lbnRzIG9mIGEgc3R1ZHkgdGhhdCBjYW4gYmUgcmVnaXN0ZXJlZDoKCi0gc3R1ZHkgZGVzaWduCi0gaHlwb3RoZXNlcwotIG1ldGhvZHMKLSBtYXRlcmlhbHMKLSBhbmFseXNpcyBwbGFuCgpXaGVuIGFuYWx5c2lzIGRlY2lzaW9ucyBhcmUgY29udGluZ2VudCB1cG9uIHByaW9yIHN0ZXBzIHRoYXQgbWF5IGluZmx1ZW5jZSB3aGljaCBkZWNpc2lvbiB0byB0YWtlLCB0aGUgYW5hbHlzaXMgcGxhbiBjYW4gaW5jbHVkZSBkZWNpc2lvbiB0cmVlcyAoZS5nLiwgaWYgWCwgdGhlbiBZOyBpZiBBLCB0aGVuIEIpLgpGb3IgZXhhbXBsZSwgeW91IGNhbiBzcGVjaWZ5IGhvdyB5b3Ugd291bGQgcHJvY2VlZCBpZiB0aGUgbWVhc3VyZXMgZG8gbm90IGRlbW9uc3RyYXRlIGxvbmdpdHVkaW5hbCBmYWN0b3JpYWwgaW52YXJpYW5jZSwgb3IgaG93IHlvdSB3b3VsZCBoYW5kbGUgcG9vcmx5IGZpdHRpbmcgbW9kZWxzLgoKIyBTaGFyaW5nIERhdGEsIEFuYWx5c2lzIFNjcmlwdHMsIGFuZCBSZXNlYXJjaCBNYXRlcmlhbHMgeyNzaGFyaW5nfQoKIyMgRGF0YSBEaWN0aW9uYXJ5IHsjZGF0YURpY3Rpb25hcnl9CgpGb3IgZWFjaCBzdHVkeSwgd2UgY3JlYXRlIGEgRGF0YSBEaWN0aW9uYXJ5LgpBIERhdGEgRGljdGlvbmFyeSBpcyBhIG1ldGFkYXRhIGZpbGUgdGhhdCB0ZWxscyBwZW9wbGUgdGhlIG1lYW5pbmcgb2YgdmFyaWFibGVzIGluIHRoZSBkYXRhIGZpbGUgYW5kIGhvdyB0byBpbnRlcnByZXQgdGhlbS4KCiMjIyBTdHlsZSBHdWlkZSB7I3N0eWxlR3VpZGV9CgotIFVzZSBSb2JvdG8gZm9udCBzaXplIDEwCi0gVXNlIGFuIGVuIGRhc2ggKGDigJNgOyBpLmUuLCBub3QgYSBoeXBoZW4pIHRvIGluZGljYXRlIGEgcmFuZ2U6CiAgICAtIGUuZy4sIDHigJMxOCAobm90IDEtMTgpCiAgICAtIGFuIGVuIGRhc2ggaXMgdGVjaG5pY2FsbHkgY29ycmVjdDsgaW4gYWRkaXRpb24sIHNwcmVhZHNoZWV0cyBvZnRlbiByZWFkIDMtNyBhcyBNYXJjaCA3dGgsIGJ1dCB0aGV5IGNvcnJlY3RseSByZWFkIDPigJM3CgojIyMgQ29sdW1ucyB7I2NvbHVtbnN9CgpUaGUgRGF0YSBEaWN0aW9uYXJ5IHNob3VsZCBoYXZlIHRoZSBmb2xsb3dpbmcgY29sdW1uczoKCi0gVmFyaWFibGUgTmFtZQogICAgLSB0aGUgdmFyaWFibGUgbmFtZSBpbiB0aGUgZGF0YSBmaWxlCi0gRm9ybSBOYW1lCiAgICAtIHRoZSBpbnN0cnVtZW50IG9yIG1lYXN1cmUgdGhhdCB0aGUgdmFyaWFibGUgY29tZXMgZnJvbQotIEh1bWFuLVJlYWRhYmxlIFZhcmlhYmxlIE5hbWUKICAgIC0gYSBtb3JlIGVhc2lseSByZWFkYWJsZSB2ZXJzaW9uIG9mIHRoZSB2YXJpYWJsZSBuYW1lCi0gRGF0YSBUeXBlCiAgICAtIHRoZSBmb3JtYXQgb2YgdGhlIHZhbHVlcyBpbiB0aGUgY29sdW1uIChlLmcuLCBzdHJpbmcsIGJpbmFyeSwgaW50ZWdlciwgbnVtZXJpYywgZGF0ZSwgdGltZSwgZXRjLikKLSBWYXJpYWJsZSBUeXBlCiAgICAtIHdoZXRoZXIgdGhlIHNjYWxlIG9mIG1lYXN1cmVtZW50IGlzIG5vbWluYWwsIG9yZGluYWwsIGludGVydmFsLCBvciByYXRpbwotIE1lYXN1cmVtZW50IFVuaXQKICAgIC0gdGhlIGNvbmNlcHR1YWwgdW5pdCB0aGF0IGlzIGJlaW5nIG1lYXN1cmVkIChlLmcuLCBzZWNvbmRzLCBsZXZlbCwgY291bnQpCi0gQWxsb3dlZCBWYWx1ZXMKICAgIC0gdGhlIGFsbG93ZWQgdmFsdWVzIGZvciBhIHZhcmlhYmxlIGFuZCAoaWYgcG9zc2libGUpLCB3aGF0IGNvbmNlcHR1YWwgbGV2ZWwgZWFjaCB2YWx1ZSBjb3JyZXNwb25kcyB0byAoZS5nLiwgMCA9IE1hbGU7IDEgPSBGZW1hbGUpCi0gRGVzY3JpcHRpb24KICAgIC0gY29uY2VwdHVhbCBkZXNjcmlwdGlvbiBvZiB0aGUgdmFyaWFibGUKLSBEZWZpbml0aW9uCiAgICAtIGRlZmluaXRpb25zIG9mIGFiYnJldmlhdGlvbnMsIGNvbmNlcHR1YWwgZGVmaW50aW9ucyBvZiB0ZXJtcywgbWF0aGVtYXRpY2FsIGRlZmluaXRpb25zIG9mIGhvdyBhIHZhcmlhYmxlIGlzIGNhbGN1bGF0ZWQsIGV0Yy4KLSBOb3RlcwogICAgLSBhZGRpdGlvbmFsIG5vdGVzIGFib3V0IHRoZSB2YXJpYWJsZSBhbmQgaG93IGl0IGlzIGNhbGN1bGF0ZWQKLSBSZWZlcmVuY2VzCiAgICAtIHJlZmVyZW5jZXMgZm9yIHRoZSBtZWFzdXJlIGFuZC9vciB2YXJpYWJsZQoKIyMjIyBEYXRhIFR5cGVzIHsjZGF0YVR5cGVzfQoKRGF0YSBUeXBlcyBpbmNsdWRlOgoKLSBzdHJpbmcKICAgIC0gaW5jbHVkZSBsZXR0ZXJzIG9yIG90aGVyIGNoYXJhY3RlcnMgKGFuZCBwb3NzaWJseSBudW1iZXJzKQotIGZhY3RvcgogICAgLSBjYXRlZ29yaWNhbCB2YXJpYWJsZSB3aXRoIGxldHRlcnMgYW5kL29yIG51bWJlcnMKLSBiaW5hcnkKICAgIC0gMC8xCi0gaW50ZWdlcgogICAgLSB3aG9sZSBudW1iZXJzIChuZXZlciBkZWNpbWFscykKLSBudW1lcmljCiAgICAtIG51bWJlcnMKLSBkYXRlCiAgICAtIGBNTS9ERC9ZWVlZYDsgZS5nLiwgMDYvMjQvMjAyMAotIHRpbWUKICAgIC0gYEhIOk1NOlNTYCAoZS5nLiwgMDE6MzA6MjQpLCBvciBgSEg6TU1gIChlLmcuLCAwNToyNCksIG9yIGBNTTpTU2AKLSBkYXRlLXRpbWUKICAgIC0gYE1NL0REL1lZWVkgSEg6TU06U1NgIChlLmcuLCAwNi8yNC8yMDIwIDAxOjMwOjI0KQoKIyMjIyBWYXJpYWJsZSBUeXBlcyB7I3ZhcmlhYmxlVHlwZXN9CgpWYXJpYWJsZSBUeXBlcyBpbmNsdWRlOgoKLSBub21pbmFsCiAgICAtIGRpc3RpbmN0IGNhdGVnb3JpZXMKLSBvcmRpbmFsCiAgICAtIG9yZGVyZWQgY2F0ZWdvcmllcwotIGludGVydmFsCiAgICAtIG9yZGVyZWQgd2l0aCBtZWFuaW5nZnVsIGRpc3RhbmNlcwotIHJhdGlvCiAgICAtIG9yZGVyZWQgd2l0aCBtZWFuaW5nZnVsIGRpc3RhbmNlcyBhbmQgYW4gYWJzb2x1dGUgemVybwoKIyMjIyBNZWFzdXJlbWVudCBVbml0cyB7I21lYXN1cmVtZW50VW5pdHN9CgpNZWFzdXJlbWVudCBVbml0cyBpbmNsdWRlOgoKLSBJRAogICAgLSBwYXJ0aWNpcGFudCBpZGVudGlmaWNhdGlvbiAoSUQpIG51bWJlcnMKLSBjb3VudAogICAgLSBudW1iZXIgb2Ygc29tZXRoaW5nIChlLmcuLCBudW1iZXIgb2YgY2hpbGRyZW4gaW4gdGhlIGhvdXNlaG9sZCkKLSBncm91cAogICAgLSBjYXRlZ29yaWVzIHRoYXQgcmVmbGVjdCBkaWZmZXJlbnQgZ3JvdXBzIChlLmcuLCBmZW1hbGUgdnMgbWFsZSkKLSBpbnN0YW5jZQogICAgLSBub21pbmFsIGNhdGVnb3JpZXMgdGhhdCBkbyBub3QgcmVmbGVjdCBncm91cHMKLSB5ZXMvbm8KICAgIC0gMCA9IE5vOyAxID0gWWVzCi0gcmF0aW8KICAgIC0gcmF0aW8gb2YgdHdvIHZhcmlhYmxlcyAob25lIHZhcmlhYmxlIGRpdmlkZWQgYnkgYW5vdGhlciB2YXJpYWJsZSkKLSBVU0QKICAgIC0gVS5TLiBkb2xsYXJzICgkKQotIG9wdGlvbgogICAgLSBjYXRlZ29yaWVzIHRoYXQgcmVmbGVjdCBwYXJ0aWNpcGFudCdzIGNob2ljZSBhbW9uZyBtdWx0aXBsZSBvcHRpb25zCi0gbG9jYXRpb24KICAgIC0gY2F0ZWdvcmllcyB0aGF0IHJlZmxlY3QgZGlmZmVyZW50IGxvY2F0aW9ucwotIHN0YXRlCiAgICAtIGNhdGVnb3JpZXMgdGhhdCByZWZsZWN0IGEgc3RhdHVzCi0gZGVncmVlCiAgICAtIHRoZSBkZWdyZWUgb2YKLSBsZXZlbAogICAgLSB0aGUgbGV2ZWwgb2YKLSBncmFkZQogICAgLSBzY2hvb2wgZ3JhZGUKLSBkYXRlCiAgICAtIGBNTS9ERC9ZWVlZYDsgZS5nLiwgMDYvMjQvMjAyMAotIHRpbWUKICAgIC0gYEhIOk1NOlNTYCAoZS5nLiwgMDE6MzA6MjQpLCBvciBgSEg6TU1gIChlLmcuLCAwNToyNCksIG9yIGBNTTpTU2AKLSBkYXRlLXRpbWUKICAgIC0gYE1NL0REL1lZWVkgSEg6TU06U1NgIChlLmcuLCAwNi8yNC8yMDIwIDAxOjMwOjI0KQotIG1pbGxpc2Vjb25kcwotIHNlY29uZHMKLSBtaW51dGVzCi0gaG91cnMKLSBkYXlzCi0gbW9udGhzCi0geWVhcnMKLSBwZXJjZW50aWxlCi0gaXRlbQoKIyBWZXJzaW9uIENvbnRyb2wgeyN2ZXJzaW9uQ29udHJvbH0KCldlIHVzZSBbR2l0TGFiXShodHRwczovL3Jlc2VhcmNoLWdpdC51aW93YS5lZHUpIGZvciB2ZXJzaW9uIGNvbnRyb2wuClNlZSBvdXIgW2xhYidzIGd1aWRlIGZvciB1c2luZyBHaXRMYWJdKGh0dHBzOi8vZGV2cHN5bGFiLmdpdGh1Yi5pby9EYXRhQW5hbHlzaXMvZ2l0Lmh0bWwpLgpPdXIgbGFiJ3MgdGVtcGxhdGUgZm9yIEdpdExhYiByZXBvc2l0b3JpZXMgaXMgbG9jYXRlZCBoZXJlW14xXTogaHR0cHM6Ly9yZXNlYXJjaC1naXQudWlvd2EuZWR1L1BldGVyc2VuTGFiL1RlbXBsYXRlLgoKIyBQcmVwcmludCB7I3ByZXByaW50fQoKV2hlbiBzdWJtaXR0aW5nIGEgbWFudXNjcmlwdCB0byBhIGpvdXJuYWwsIGFsc28gc3VibWl0IGEgcHJlcHJpbnQgdG8gW1BzeUFyWGl2XShodHRwczovL3BzeWFyeGl2LmNvbSkuCkNvbWJpbmUgdGhlIHN1cHBsZW1lbnRhbCBtYXRlcmlhbCBhbmQgbWFudXNjcmlwdCBpbnRvIG9uZSBQREYgZmlsZSB3aGVuIHBvc3RpbmcuCgojIE9TRiB7I29zZn0KClRoZSBbT3BlbiBTY2llbmNlIEZyYW1ld29ya10oaHR0cHM6Ly9vc2YuaW8pIChPU0YpIGlzIGEgd2Vic2l0ZSBmb3IgaG9zdGluZyBwcmUtcmVnaXN0cmF0aW9ucywgZGF0YSwgYW5hbHlzaXMgY29kZSwgcmVzZWFyY2gtcmVsYXRlZCBtYXRlcmlhbHMsIGFuZCBwcmUtcHJpbnRzIHRvIGltcHJvdmUgcmVwbGljYWJpbGl0eSBhbmQgcmVwcm9kdWNpYmlsaXR5IG9mIGZpbmRpbmdzLgpGb3IgZWFjaCBwYXBlciBwcm9qZWN0LCBjcmVhdGUgYSBuZXcgcmVwb3NpdG9yeSBvbiB0aGUgT1NGIGFuZCBhZGQgdGhlIHJlbGV2YW50IGNvbnRyaWJ1dG9ycywgaW5jbHVkaW5nIERyLiBQZXRlcnNlbi4KT3VyIGxhYidzIHRlbXBsYXRlIGZvciBwcm9qZWN0cyBvbiB0aGUgT3BlbiBTY2llbmNlIEZyYW1ld29yayAoT1NGKSBjYW4gYmUgZm91bmQgaGVyZVteMV06IGh0dHBzOi8vb3NmLmlvLzR3OXN2LgoKIyMgQ29tcG9uZW50cyB7I2NvbXBvbmVudHN9CgpDcmVhdGUgYSBjb21wb25lbnQgaW4gdGhlIE9TRiBwcm9qZWN0IHJlcG9zaXRvcnkgZm9yIHRoZSBmb2xsb3dpbmcgY29tcG9uZW50czoKCi0gUHJlLXJlZ2lzdHJhdGlvbiAob3IgQ28tcmVnaXN0cmF0aW9uKQotIERhdGEKLSBEYXRhIERpY3Rpb25hcnkKLSBBbmFseXNpcyBDb2RlCi0gUmVzZWFyY2ggTWF0ZXJpYWxzCi0gUHJlcHJpbnQKCiMjIyBQcmUtcmVnaXN0cmF0aW9uIHsjb3NmUHJlcmVnaXN0cmF0aW9ufQoKIyMjIERhdGEgeyNvc2ZEYXRhfQoKVG8gaGVscCBwcm90ZWN0IHBhcnRpY2lwYW50IGFub255bWl0eSwgaXQgaXMgaW1wb3J0YW50IHRvIGFub255bWl6ZSBwYXJ0aWNpcGFudCBJRHMgc28gdGhlaXIgZGF0YSBjYW5ub3QgYmUgc3RpdGNoZWQgdG9nZXRoZXIgYWNyb3NzIHBhcGVycy4KVG8gYW5vbnltaXplIHBhcnRpY2lwYW50IElEcywgdXNlIHRoZSBmb2xsb3dpbmcgc2NyaXB0IGFuZCBjaGFuZ2UgdGhlIHNlZWQgZm9yIGV2ZXJ5IHBhcGVyIHNvIHRoYXQgYSBnaXZlbiBwYXJ0aWNpcGFudCBnZXRzIGEgZGlmZmVyZW50IGFub255bWl6ZWQgY29kZSBlYWNoIHRpbWUuCgpbaHR0cHM6Ly9kZXZwc3lsYWIuZ2l0aHViLmlvL0RhdGFBbmFseXNpcy9vc2YuaHRtbCNhbm9ueW1pemVkSURdKGh0dHBzOi8vZGV2cHN5bGFiLmdpdGh1Yi5pby9EYXRhQW5hbHlzaXMvb3NmLmh0bWwjYW5vbnltaXplZElEKQoKIyMjIERhdGEgRGljdGlvbmFyeSB7I29zZkRhdGFEaWN0aW9uYXJ5fQoKRm9yIGVhY2ggcGFwZXIgcHJvamVjdCwgd2UgZXhwb3J0IGEgYC5jc3ZgIGZpbGUgd2l0aCB0aGUgc3Vic2V0IG9mIHRoZSBbRGF0YSBEaWN0aW9uYXJ5XSgjZGF0YURpY3Rpb25hcnkpIHZhcmlhYmxlcyB1c2VkIGZvciB0aGF0IHNwZWNpZmljIHBhcGVyLgpXZSB1cGxvYWQgdGhhdCBgLmNzdmAgZmlsZSB0byB0aGUgT1NGLgpUaGUgZm9ybWF0dGluZyBvZiB0aGUgRGF0YSBEaWN0aW9uYXJ5IGlzIGRlc2NyaWJlZCBbaGVyZV0oI2RhdGFEaWN0aW9uYXJ5KS4KCiMjIyBBbmFseXNpcyBDb2RlIHsjb3NmQW5hbHlzaXNDb2RlfQoKIyMjIFJlc2VhcmNoIE1hdGVyaWFscyB7I29zZk1hdGVyaWFsc30KCiMjIyBQcmVwcmludCB7I29zZlByZXByaW50fQoKIyMgQ3JlYXRlIEFub255bW91cyBWaWV3LU9ubHkgTGlua3MgZm9yIEFub255bW91cyBQZWVyIFJldmlldyB7I2Fub255bW91c1ZpZXdPbmx5TGlua30KCldpdGggeW91ciBwcm9qZWN0IG9wZW4sIGdvIHRvIFNldHRpbmdzICh0b3AtcmlnaHQpIOKGkiBWaWV3LU9ubHkgTGlua3Mg4oaSIEFkZC4KVGhlbiBjaGVjayAiQW5vbnltaXplIi4KVGhlbiB5b3UgY2FuIHNoYXJlIHRoYXQgVVJMLgpGb3IgZGV0YWlsZWQgaW5zdHJ1Y3Rpb25zLCBzZWUgaGVyZTogaHR0cHM6Ly9oZWxwLm9zZi5pby9hcnRpY2xlLzIwMS1jcmVhdGUtYS12aWV3LW9ubHktbGluay1mb3ItYS1wcm9qZWN0IChhcmNoaXZlZCBhdCBodHRwczovL3Blcm1hLmNjL0FHSjktVjQ4NykKCiMgTWFudXNjcmlwdCBTdWJtaXNzaW9uIHRvIGEgSm91cm5hbCB7I2pvdXJuYWx9CgpCZWZvcmUgc3VibWl0dGluZyBhIG1hbnVzY3JpcHQgdG8gYSBqb3VybmFsLCBtYWtlIHN1cmUgdG8gcG9zdCB0aGUgcmVsZXZhbnQgbWF0ZXJpYWxzIG9uIHRoZSBbT1NGXSgjb3NmKSwgYXMgZGVzY3JpYmVkIFtoZXJlXSgjb3NmKSwgYW5kIHBvc3QgdGhlIHByZXByaW50LCBhcyBkZXNjcmliZWQgW2hlcmVdKCNwcmVwcmludCkuCldoZW4gcHJlcGFyaW5nIGEgbWFudXNjcmlwdCBmb3Igc3VibWlzc2lvbiB0byBhIGpvdXJuYWwsIG1ha2Ugc3VyZSB0byBmb2xsb3cgdGhlIEF1dGhvciBHdWlkZWxpbmVzIGZvciBlYWNoIGpvdXJuYWwuCkFmdGVyIGZpbmFsaXppbmcgdGhlIG1hbnVzY3JpcHQgaW4gYWNjb3JkYW5jZSB3aXRoIGpvdXJuYWwgZ3VpZGVsaW5lcyBhbmQgd2hlbiB5b3UgYXJlIHJlYWR5IHRvIHN1Ym1pdCB0aGUgcGFwZXIgdG8gdGhlIGpvdXJuYWwgKGJ1dCBiZWZvcmUgc3VibWlzc2lvbiksIHBvc3QgdGhlIFtwcmVwcmludF0oI3ByZXByaW50KSBvbiBbUHN5QXJYaXZdKGh0dHBzOi8vcHN5YXJ4aXYuY29tKS4KSW5jbHVkZSB0aGUgbGluayB0byB0aGUgcHJlcHJpbnQgaW4gdGhlIGNvdmVyIGxldHRlciB0byB0aGUgam91cm5hbC4KSW4gdGhlIG1ldGhvZCBzZWN0aW9uIGFuZCBvbiB0aGUgdGl0bGUgcGFnZSwgaW5jbHVkZSB0aGUgcmVsZXZhbnQgT1NGIGxpbmtzIHRvIHRoZSBwcmUtcmVnaXN0cmF0aW9uLCBkYXRhLCBkYXRhIGRpY3Rpb25hcnksIGFuYWx5c2lzIGNvZGUsIGNvbXB1dGF0aW9uYWwgbm90ZWJvb2ssIGFuZCByZXNlYXJjaCBtYXRlcmlhbHMsIGV0Yy4KRm9yIGV4YW1wbGU6Cgo+IEh5cG90aGVzZXMgYW5kIG1lYXN1cmVzIGZvciB0aGUgU2Nob29sIFJlYWRpbmVzcyBTdHVkeSB3ZXJlIHByZS1yZWdpc3RlcmVkOiBodHRwczovL29zZi5pby9qenhiOC4KPiBIeXBvdGhlc2VzIG1ldGhvZHMsIGFuZCBhIGRhdGEgYW5hbHlzaXMgcGxhbiBmb3IgdGhlIHByZXNlbnQgc3R1ZHkgd2VyZSBhbHNvIHByZS1yZWdpc3RlcmVkOiBodHRwczovL29zZi5pby9wbnkyNi4KPiBEYXRhIGZpbGVzLCBhIGRhdGEgZGljdGlvbmFyeSwgYW5hbHlzaXMgc2NyaXB0cywgYW5kIGEgY29tcHV0YXRpb25hbCBub3RlYm9vayBmb3IgdGhlIHByZXNlbnQgc3R1ZHkgYXJlIHB1Ymxpc2hlZCBvbmxpbmU6IGh0dHBzOi8vb3NmLmlvL3pzMmJuLgoKSW4gdGhlIG1hbnVzY3JpcHQgc3VibWlzc2lvbiwgY3JlYXRlIGFuZCB1c2UgW2Fub255bW91cyB2aWV3LW9ubHkgT1NGIGxpbmtzXSgjYW5vbnltb3VzVmlld09ubHlMaW5rKSAoZm9yIGJsaW5kIHJldmlldykuCkluIHRoZSBwcmVwcmludCBzdWJtaXNzaW9uLCB1c2UgdGhlIGdlbmVyYWwgT1NGIGxpbmtzIChub3QgdGhlIFthbm9ueW1vdXMgdmlldy1vbmx5IE9TRiBsaW5rc10oI2Fub255bW91c1ZpZXdPbmx5TGluaykpIHRoYXQgd2lsbCBiZWNvbWUgdmlld2FibGUgd2hlbiB0aGUgbWFudXNjcmlwdCBpcyBhY2NlcHRlZCBmb3IgcHVibGljYXRpb24gKGkuZS4sIHdoZW4geW91IG1ha2UgdGhlIE9TRiByZXBvIHB1YmxpYykuCgojIFdoZW4gdGhlIE1hbnVzY3JpcHQgaXMgQWNjZXB0ZWQgZm9yIFB1YmxpY2F0aW9uIHsjYWNjZXB0ZWR9CgpXaGVuIHRoZSBtYW51c2NyaXB0IGlzIGFjY2VwdGVkIGZvciBwdWJsaWNhdGlvbjoKCjEuIExldCBhbGwgb2YgdGhlIGF1dGhvcnMga25vdywgYW5kIHNlbmQgdGhlbSB0aGUgZnVsbCwgKGluLXByZXNzKSBBUEEtc3R5bGUgcmVmZXJlbmNlCjEuIE1ha2UgdGhlIE9TRiByZXBvIHB1YmxpYyBhbmQgW2NyZWF0ZSBhIERPSSBsaW5rXShodHRwczovL2hlbHAub3NmLmlvL2FydGljbGUvMjIwLWNyZWF0ZS1kb2lzKSBmb3IgdGhlIHJlcG9zaXRvcnkgdGhhdCBjYW4gYmUgdXNlZCBmb3IgY2l0aW5nIGl0CjEuIFN1Ym1pdCB0aGUgZmluYWxpemVkLCB1bmJsaW5kZWQgbWFudXNjcmlwdCAoYW5kIGFueSB0YWJsZXMsIGZpZ3VyZXMsIGFuZCB0aGUgc3VwcGxlbWVudDsgd2l0aCB0aGUgcHVibGljIE9TRiBsaW5rOyByZW1vdmluZyBhbnkgaGlnaGxpZ2h0aW5nIG9yIHRyYWNrZWQgY2hhbmdlcykgdG8gdGhlIE5JSE1TIHN5c3RlbTogaHR0cHM6Ly93d3cubmlobXMubmloLmdvdi9zdWJtaXNzaW9uL2NyZWF0ZS8KICAgIC0gQWZ0ZXIgeW91IHN1Ym1pdCB0aGUgbWFudXNjcmlwdCB0byBOSUhNUywgc2VuZCBEci4gUGV0ZXJzZW4gdGhlIE5JSE1TIElEIGZvciB0aGUgc3VibWlzc2lvbi4KICAgIFdlIGFyZSByZXF1aXJlZCB0byByZXBvcnQgcHVibGlzaGVkIHBhcGVycyB0byBmdW5kaW5nIGFnZW5jZXMuCjEuIE1ha2Ugc3VyZSB0aGUgZmluYWxpemVkLCB1bmJsaW5kZWQgbWFudXNjcmlwdCAoYW5kIGFueSB0YWJsZXMsIGZpZ3VyZXMsIGFuZCB0aGUgc3VwcGxlbWVudDsgd2l0aCB0aGUgcHVibGljIE9TRiBsaW5rOyByZW1vdmluZyBhbnkgaGlnaGxpZ2h0aW5nIG9yIHRyYWNrZWQgY2hhbmdlcykgaXMgdXBsb2FkZWQgYXMgYW4gdXBkYXRlZCB2ZXJzaW9uIG9mIHRoZSBbcHJlcHJpbnRdKCNwcmVwcmludCkgb24gW1BzeUFyWGl2XShodHRwczovL3BzeWFyeGl2LmNvbSkuCgojIEFkYXB0aW5nIE9wZW4gU2NpZW5jZSB0byBMb25naXR1ZGluYWwgUmVzZWFyY2ggeyNsb25naXR1ZGluYWx9CgpTZWUgb3VyIHBhcGVyIG9uIGFkYXB0aW5nIG9wZW4gc2NpZW5jZSB0byBsb25naXR1ZGluYWwgcmVzZWFyY2g6IGh0dHBzOi8vb25saW5lbGlicmFyeS53aWxleS5jb20vZG9pLzEwLjEwMDIvaWNkLjIzMTUKClteMV06IEFzayBEci4gUGV0ZXJzZW4gdG8gZ2l2ZSB5b3UgYWNjZXNzLgo=



Developmental Psychopathology Lab