{
    "componentChunkName": "component---src-templates-article-page-js",
    "path": "/journals/biology/micropub-biology-002154",
    "result": {"data":{"article":{"manuscript":{"id":"902f44d2-dc81-4999-a331-42d096db99c0","submissionTypes":["materials and reagents"],"citations":[],"doi":"10.17912/micropub.biology.002154","dbReferenceId":null,"pmcId":null,"pmId":null,"proteopedia":null,"reviewPanel":null,"species":["universal"],"integrations":[],"corrections":null,"history":{"received":"2026-04-20T18:21:48.350Z","revisionReceived":"2026-08-03T15:07:01.680Z","accepted":"2026-10-22T20:02:57.868Z","published":"2026-10-26T22:23:18.869Z","indexed":"2026-11-09T22:23:18.869Z"},"versions":[{"id":"78e4d2f2-c0f5-49fe-9795-97ebf7372d19","decision":"revise","abstract":"<p>Bias and subjectivity are to be avoided in scientific research since they can lead to incorrect data interpretation. Methods that enhance the rigor and reproducibility of biomedical research include filename blinding. To overcome the limitations of currently available blinding programs, we developed <i>BlindSpot,</i> a publicly available, user-friendly tool for filename renaming.<i> BlindSpot </i>is compatible with macOS and Windows, supports both a graphical user interface (GUI) and a command-line interface (CLI), and has features to customize blinding and safeguard data identity.</p>","acknowledgements":"<p>We would like to thank members of the Amy Shaub Maddox Lab for helpful discussions during the development of BlindSpot.</p>","authors":[{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","methodology","software","writing_originalDraft","validation"],"email":"jennavc@unc.edu","firstName":"Jenna","lastName":"Vesey","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology","software","validation"],"email":"liuamy@unc.edu","firstName":"Amy","lastName":"Liu","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology"],"email":"krishnsa@unc.edu","firstName":"Siddharth","lastName":"Sankaranarayanan","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["fundingAcquisition","project","writing_reviewEditing"],"email":"asm@unc.edu","firstName":"Amy S.","lastName":"Maddox","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","fundingAcquisition","project","writing_reviewEditing"],"email":"wethekam@unc.edu","firstName":"Linnea C.","lastName":"Wethekam","submittingAuthor":true,"correspondingAuthor":true,"equalContribution":false,"WBId":null,"orcid":null}],"awards":[{"awardId":"5K12GM000678 ","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Linnea C Wethekam"},{"awardId":"R35GM144238","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Amy Shaub Maddox"},{"awardId":"2153790","funderName":"National Science Foundation (United States)","awardRecipient":"Amy Shaub Maddox"}],"conflictsOfInterest":"<p>The authors declare that there are no conflicts of interest present.</p>","dataTable":{"url":null},"extendedData":[{"description":"<p>How to use BlindSpot. Guide to using the GUI to blind and unblind a folder of data, and to other features of BlindSpot.</p>","doi":null,"resourceType":"Audiovisual","name":"BlindSpot_demo2.mp4","url":"https://portal.micropublication.org/uploads/2d5dd87cbb3df1d7893451851b9ec8c8.mp4"}],"funding":"","image":{"url":"https://portal.micropublication.org/uploads/92f4e9537340b0bee40f0a034f55fd4b.png"},"imageCaption":"<p>A - H) blinding pathway (green arrows). I - M) unblinding pipeline (purple arrows). A) User identifies target folder for blinding. B) User accesses the graphical user interface (GUI), selects specified inputs, designates the target folder, specifies the file type, and makes optional selections. C) Example of blinded file output with no checkboxes selected (csv files and blinded files only). D) Example structure with blinded files duplicated and moved to a new folder. E) Example including subdirectories with the blinded files having been moved to a new folder. F) GUI popup after the blinding is complete. G) Layout of the _blinding_log.csv showing tracked and recorded actions. H) Layout of the Blinding_key.csv for data identity restoration. I) Example folder containing blinded data. J) Unblinding function tab. K) Output folder after running the unblinding code. L) GUI popup after unblinding is complete. M) Printed output _unblinding_log.csv.</p>","imageTitle":"<p>Overview of the BlindSpot pipeline for reproducible filename blinding and restoration</p>","methods":"<p><i>BlindSpot </i>was written in Python version 3.14.2 using Visual Studio Code. It was formatted using the program package “black” to enable easy readability (Langa &amp; Black contributors, 2026). <i>BlindSpot</i> was compiled with the use of bin for Windows and bash for Mac using PyInstaller (v 6.19.0) and tkinter via command line functionality (<i>PyInstaller development team. PyInstaller (Version 6.19.0)). </i>The program uses the following natively installed python packages: os, csv, uuid, time, shutil, random, threading, pathlib, tkinter, datetime, webbrowser, and sys. The logo lil_timmy.png was drawn in MS paint (v Paint 11.2512.211.0, Microsoft Corporation) and animated with the use of Canva’s gif function.</p><p>To test the robustness of <i>BlindSpot, </i>pytest was used (pytest developers. Version 9.0.2), a Python package that allows functions to be tested independently. This program was run through stress tests to confirm that each of 32 elements of <i>BlindSpot </i>can function and recover amid any errors (see Blinder_test.py, Unblinder_test.py, Crash_log_test.py, and File_processing_test.py on GitHub). File_processing_test.py documents the testing of these three functions: file naming, file folder, and path cross-compatibility among operating systems. Fourteen functions test the integrity of the crash log. It checks that the software identifies files that have been processed, recovery in the case of a system crash, and that all user-selected options would be consistent across each file run. A test of nine features assessed integrity of the blinder function (Blinder_test.py). Each of these functions ensure that regardless of user settings, the program calls each function correctly and accurately for every file. Each of the twenty-five tests ran in under one minute, including trials with 1000 files, though duration of our tests reflected file size. The unblinding function was also tested to ensure that unblinded files would be properly matched with original files the corresponding name. Tests were performed on both Windows and MacOS. Web application and code can be accessed at this link: <a href=\"https://github.com/maddox-lab/BlindSpot.git\">https://github.com/maddox-lab/BlindSpot.git</a></p>","reagents":"<p></p>","patternDescription":"<p>Scientists strive for objectivity to ensure the integrity of results, yet a “reproducibility crisis” exists (Bespalov et al., 2020; Baker, 2016). As few as 39% of published studies have been reproduced (Youyou, W., Yang, Y., &amp; Uzzi, B. 2023). One basis of irreproducibility is error introduced by investigator bias (Bello et al., 2014; Jost and Waters 2019). Blinded analysis reduces bias and increases reproducibility (Baker, 2016; Jost and Waters 2019). However, blinding is not consistently reported in the analysis of microscopy images and other datasets, in part because it can be tedious (Begley and Ioannidis 2015; Bello et al. 2014; Bespalov et al. 2020; Karp et al. 2022; Jost and Waters 2019). While most blinding programs are specific to file format, Blinder and ImageJ’s blinding plugin can be used for multiple file types (Cothren et al., 2018; Jaiswal &amp; Lorenz, 2019; Schneider et al., 2012). However, both temporarily rename files within a user interface – either an independent GUI or ImageJ – limiting the portability of the files for image analysis. We developed <i>BlindSpot</i> to stably blind file names in a flexible and accessible manner.</p><p>In designing <i>BlindSpot,</i> we prioritized crash safety and accessibility for non-programmers. <i>BlindSpot’s </i>not only accomplishes filename randomization, but also provides crash-safe bookkeeping that guarantees each file is renamed exactly once. Importantly, <i>Blindspot</i> restores a file’s original name after analysis is complete.</p><p>To begin, users open <i>BlindSpot’s </i>graphical user interface (GUI) on their device and identify the desired folder for blinding and select the required features (Figure 1A, B). The program first confirms files of the specified type are present, and if directed, also searches all subfolders (Figure 1A, B). To blind each file, the program selects a file with the correct extension and verifies that it has not already been blinded, using _blinding_log.csv (Figure 1C-D). If the user elects for the blinded file to be a copy of the original file, the original file is retained and thus protected. If the user does not select this option, a warning message prompts the user to confirm the intention to overwrite filenames. Files are then renamed randomly using the final 8 characters from the universally unique identifier (UUID) package (Leach et al., 2005). Progress of the blinding is logged into _blinding_log.csv throughout the process; Blinding_key.csv is produced after all files are blinded (Figure 1H). Within _blinding_log.csv, each step of the blinding process (Starting, Keyed, Pending Skipped, Error, Copied, Moved, and Done) is logged with a time stamp (Figure 1F). Blinding_key.csv contains the original file name, the corresponding blinded file name, and the directory path of the original file (Figure 1H). If a crash occurs during the blinding of a set of files, upon re-initiation, the program will pick up where it left off, such that each file is blinded once. A progress bar is visible in the GUI as blinding occurs.&nbsp;</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; To restore original filenames, <i>BlindSpot </i>uses blinding_key.csv, the location of the blinded files, and the user’s desired output location to run this program. First, all files represented in the key are identified by searching the designated directory and its subfolders (Figure 1I). File names not found are ‘Skipped.’ Unblinded files are marked ‘Done.’ Finally, if all of the program’s required conditions are met, the file is unblinded and placed in the user-specified directory (Figure 1K). Users can choose to overwrite the original files with the blinded modified file (Figure 1J), though situations where multiple files would result in the same filename are not automatically resolved. Unblinding creates a log summary and greets the user with a random quote after the software is done with its run (Figure 1L, M).</p><p>To incorporate <i>BlindSpot </i>tool into extended workflows, the ‘blind’ and ‘unblind’ functions can be added to python workflows with the use of PyPI packages and command line interface. Documentation on how to call and utilize <i>BlindSpot</i> in the command line is present in the Readme.md on GitHub. Future development will focus on integrating <i>BlindSpot</i> with popular imaging analysis software and improving compatibility with automated and computational pipelines.</p>","references":[{"reference":"<p>Baker M. 2016. 1,500 scientists lift the lid on reproducibility. Nature 533: 452-454.</p>","pubmedId":"","doi":"10.1038/533452a"},{"reference":"<p>Begley CG, Ioannidis JPA. 2015. Reproducibility in Science. Circulation Research 116: 116-126.</p>","pubmedId":"","doi":"10.1161/CIRCRESAHA.114.303819"},{"reference":"<p>Bello S, Krogsbøll LT, Gruber J, Zhao ZJ, Fischer D, Hróbjartsson Ar. 2014. Lack of blinding of outcome assessors in animal model experiments implies risk of observer bias. Journal of Clinical Epidemiology 67: 973-983.</p>","pubmedId":"","doi":"10.1016/j.jclinepi.2014.04.008"},{"reference":"<p>Bespalov A, Wicke K, Castagné V. 2019. Blinding and Randomization. Handbook of Experimental Pharmacology,Good Research Practice in Non-Clinical Pharmacology and Biomedicine : 81-100.</p>","pubmedId":"","doi":"10.1007/164_2019_279"},{"reference":"<p>Cothren S, Meyer J, Hartman J. 2018. Blinded Visual Scoring of Images Using the Freely-available Software Blinder. BIO-PROTOCOL 8: 10.21769/bioprotoc.3103.</p>","pubmedId":"","doi":"10.21769/BioProtoc.3103"},{"reference":"<p>Jaiswal, A., &amp; Lorenz, H. (2019). Blind analysis tools [ImageJ plugin]. <i>ImageJ</i>. Retrieved February 19, 2026, from https://imagej.github.io/plugins/blind-analysis-tools</p>","pubmedId":"","doi":""},{"reference":"<p>Jost APT, Waters JC. 2019. Designing a rigorous microscopy experiment: Validating methods and avoiding bias. Journal of Cell Biology 218: 1452-1466.</p>","pubmedId":"","doi":"10.1083/jcb.201812109"},{"reference":"<p>Karp NA, Pearl EJ, Stringer EJ, Barkus C, Ulrichsen JC, Percie du Sert N. 2022. A qualitative study of the barriers to using blinding in in vivo experiments and suggestions for improvement. PLOS Biology 20: e3001873.</p>","pubmedId":"","doi":"10.1371/journal.pbio.3001873"},{"reference":"<p>Langa, Ł., &amp; Black contributors. (2026). <i>Black: The uncompromising Python code formatter</i> [Computer software].https://github.com/psf/black</p>","pubmedId":"","doi":""},{"reference":"<p>Leach, P. J., Salz, R., &amp; Mealling, M. H. (2005). <i>A universally unique identifier (Uuid) urn namespace</i> (Request for Comments RFC 4122). Internet Engineering Task Force. https://datatracker.ietf.org/doc/rfc4122/</p>","pubmedId":"","doi":""},{"reference":"<p><i>PyInstaller development team. (n.d.). PyInstaller (Version 6.19.0) [Computer software]. </i>https://github.com/PyInstaller/PyInstaller</p>","pubmedId":"","doi":""},{"reference":"<p>Pylint contributors. (n.d.). <i>Pylint</i> (Version 4.0.4) [Computer software]. https://github.com/pylint-dev/pylint</p>","pubmedId":"","doi":""},{"reference":"<p>pytest developers. (n.d.). <i>pytest</i> (Version 9.0.2) [Computer software]. https://github.com/pytest-dev/pytest</p>","pubmedId":"","doi":""},{"reference":"<p>Schneider CA, Rasband WS, Eliceiri KW. 2012. NIH Image to ImageJ: 25 years of image analysis. Nat Methods 9(7): 671-5.</p>","pubmedId":"22930834","doi":"10.1038nmeth.2089"},{"reference":"<p>Youyou W, Yang Y, Uzzi B. 2023. A discipline-wide investigation of the replicability of Psychology papers over the past two decades. Proceedings of the National Academy of Sciences 120: 10.1073/pnas.2208863120.</p>","pubmedId":"","doi":"10.1073/pnas.2208863120"}],"title":"<p>  BlindSpot facilitates unbiased data analysis via file renaming</p>","reviews":[{"reviewer":{"displayName":"Lisa Cameron"},"openAcknowledgement":false,"status":{"submitted":true}}],"curatorReviews":[]},{"id":"64afac25-16b1-4e87-9208-64f72797453b","decision":"revise","abstract":"<p>Bias and subjectivity are to be avoided in scientific research since they can lead to incorrect data interpretation. Methods that enhance the rigor and reproducibility of biomedical research include filename blinding. To overcome the limitations of currently available blinding programs, we developed <i>BlindSpot,</i> a publicly available, user-friendly tool for filename renaming.<i> BlindSpot </i>is compatible with macOS and Windows, supports both a graphical user interface (GUI) and a command-line interface (CLI), and has features to customize blinding and safeguard data identity.</p>","acknowledgements":"<p>We would like to thank members of the Amy Shaub Maddox Lab for helpful discussions during the development of BlindSpot.</p>","authors":[{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","methodology","software","writing_originalDraft","validation"],"email":"jennavc@unc.edu","firstName":"Jenna","lastName":"Vesey","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology","software","validation"],"email":"liuamy@unc.edu","firstName":"Amy","lastName":"Liu","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology"],"email":"krishnsa@unc.edu","firstName":"Siddharth","lastName":"Sankaranarayanan","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["fundingAcquisition","project","writing_reviewEditing"],"email":"asm@unc.edu","firstName":"Amy S.","lastName":"Maddox","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","fundingAcquisition","project","writing_reviewEditing"],"email":"wethekam@unc.edu","firstName":"Linnea C.","lastName":"Wethekam","submittingAuthor":true,"correspondingAuthor":true,"equalContribution":false,"WBId":null,"orcid":null}],"awards":[{"awardId":"5K12GM000678 ","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Linnea C Wethekam"},{"awardId":"R35GM144238","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Amy Shaub Maddox"},{"awardId":"2153790","funderName":"National Science Foundation (United States)","awardRecipient":"Amy Shaub Maddox"}],"conflictsOfInterest":"<p>The authors declare that there are no conflicts of interest present.</p>","dataTable":{"url":null},"extendedData":[{"description":"<p>MIT License for reuse as an academic lab. </p>","doi":null,"resourceType":"Text","name":"LICENSE","url":"https://portal.micropublication.org/uploads/c35c939031d622330199f7c4bc5a918d"}],"funding":"","image":{"url":"https://portal.micropublication.org/uploads/92f4e9537340b0bee40f0a034f55fd4b.png"},"imageCaption":"<p>A - H) blinding pathway (green arrows). I - M) unblinding pipeline (purple arrows). A) User identifies target folder for blinding. B) User accesses the graphical user interface (GUI), selects specified inputs, designates the target folder, specifies the file type, and makes optional selections. C) Example of blinded file output with no checkboxes selected (csv files and blinded files only). D) Example structure with blinded files duplicated and moved to a new folder. E) Example including subdirectories with the blinded files having been moved to a new folder. F) GUI popup after the blinding is complete. G) Layout of the _blinding_log.csv showing tracked and recorded actions. H) Layout of the Blinding_key.csv for data identity restoration. I) Example folder containing blinded data. J) Unblinding function tab. K) Output folder after running the unblinding code. L) GUI popup after unblinding is complete. M) Printed output _unblinding_log.csv.</p>","imageTitle":"<p>Overview of the BlindSpot pipeline for reproducible filename blinding and restoration</p>","methods":"<p><i>BlindSpot </i>was written in Python version 3.14.2 using Visual Studio Code. It was formatted using the program package “black” to enable easy readability (Langa &amp; Black contributors, 2026). <i>BlindSpot</i> was compiled with the use of bin for Windows and bash for Mac using PyInstaller (v 6.19.0) and tkinter via command line functionality (<i>PyInstaller development team. PyInstaller (Version 6.19.0)). </i>The program uses the following natively installed python packages: os, csv, uuid, time, shutil, random, threading, pathlib, tkinter, datetime, webbrowser, and sys. The logo lil_timmy.png was drawn in MS paint (v Paint 11.2512.211.0, Microsoft Corporation) and animated with the use of Canva’s gif function.</p><p>To test the robustness of <i>BlindSpot, </i>pytest was used (pytest developers. Version 9.0.2), a Python package that allows functions to be tested independently. This program was run through stress tests to confirm that each of 32 elements of <i>BlindSpot </i>can function and recover amid any errors (see Blinder_test.py, Unblinder_test.py, Crash_log_test.py, and File_processing_test.py on GitHub). File_processing_test.py documents the testing of these three functions: file naming, file folder, and path cross-compatibility among operating systems. Fourteen functions test the integrity of the crash log. It checks that the software identifies files that have been processed, recovery in the case of a system crash, and that all user-selected options would be consistent across each file run. A test of nine features assessed integrity of the blinder function (Blinder_test.py). Each of these functions ensure that regardless of user settings, the program calls each function correctly and accurately for every file. Each of the twenty-five tests ran in under one minute, including trials with 1000 files, though duration of our tests reflected file size. The unblinding function was also tested to ensure that unblinded files would be properly matched with original files the corresponding name. Tests were performed on both Windows and MacOS. Web application and code can be accessed at this link: <a href=\"https://github.com/maddox-lab/BlindSpot\">https://github.com/maddox-lab/BlindSpot</a>. A video tutorial can be accessed at the following Vimeo link: <a href=\"https://vimeo.com/1174396947\">https://vimeo.com/1174396947</a></p>","reagents":"<p></p>","patternDescription":"<p>Scientists strive for objectivity to ensure the integrity of results, yet a “reproducibility crisis” exists (Bespalov et al., 2020; Baker, 2016). As few as 39% of published studies have been reproduced (Youyou, W., Yang, Y., &amp; Uzzi, B. 2023). One basis of irreproducibility is error introduced by investigator bias (Bello et al., 2014; Jost and Waters 2019). Blinded analysis reduces bias and increases reproducibility (Baker, 2016; Jost and Waters 2019). However, blinding is not consistently reported in the analysis of microscopy images and other datasets, in part because it can be tedious (Begley and Ioannidis 2015; Bello et al. 2014; Bespalov et al. 2020; Karp et al. 2022; Jost and Waters 2019). While most blinding programs are specific to file format, Blinder and ImageJ’s blinding plugin can be used for multiple file types (Cothren et al., 2018; Jaiswal &amp; Lorenz, 2019; Schneider et al., 2012). However, both temporarily rename files within a user interface – either an independent GUI or ImageJ – limiting the portability of the files for image analysis. We developed <i>BlindSpot</i> to stably blind file names in a flexible and accessible manner.</p><p>In designing <i>BlindSpot,</i> we prioritized crash safety and accessibility for non-programmers. <i>BlindSpot’s </i>not only accomplishes filename randomization, but also provides crash-safe bookkeeping that guarantees each file is renamed exactly once. Importantly, <i>Blindspot</i> restores a file’s original name after analysis is complete.</p><p>To begin, users open <i>BlindSpot’s </i>graphical user interface (GUI) on their device and identify the desired folder for blinding and select the required features (Figure 1A, B). The program first confirms files of the specified type are present, and if directed, also searches all subfolders (Figure 1A, B). To blind each file, the program selects a file with the correct extension and verifies that it has not already been blinded, using _blinding_log.csv (Figure 1C-D). If the user elects for the blinded file to be a copy of the original file, the original file is retained and thus protected. If the user does not select this option, a warning message prompts the user to confirm the intention to overwrite filenames. Files are then renamed randomly using the final 8 characters from the universally unique identifier (UUID) package (Leach et al., 2005). Progress of the blinding is logged into _blinding_log.csv throughout the process; Blinding_key.csv is produced after all files are blinded (Figure 1H). Within _blinding_log.csv, each step of the blinding process (Starting, Keyed, Pending Skipped, Error, Copied, Moved, and Done) is logged with a time stamp (Figure 1F). Blinding_key.csv contains the original file name, the corresponding blinded file name, and the directory path of the original file (Figure 1H). If a crash occurs during the blinding of a set of files, upon re-initiation, the program will pick up where it left off, such that each file is blinded once. A progress bar is visible in the GUI as blinding occurs.&nbsp;</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; To restore original filenames, <i>BlindSpot </i>uses blinding_key.csv, the location of the blinded files, and the user’s desired output location to run this program. First, all files represented in the key are identified by searching the designated directory and its subfolders (Figure 1I). File names not found are ‘Skipped.’ Unblinded files are marked ‘Done.’ Finally, if all of the program’s required conditions are met, the file is unblinded and placed in the user-specified directory (Figure 1K). Users can choose to overwrite the original files with the blinded modified file (Figure 1J), though situations where multiple files would result in the same filename are not automatically resolved. Unblinding creates a log summary and greets the user with a random quote after the software is done with its run (Figure 1L, M).</p><p>To incorporate <i>BlindSpot </i>tool into extended workflows, the ‘blind’ and ‘unblind’ functions can be added to python workflows with the use of PyPI packages and command line interface. Documentation on how to call and utilize <i>BlindSpot</i> in the command line is present in the Readme.md on GitHub. Future development will focus on integrating <i>BlindSpot</i> with popular imaging analysis software and improving compatibility with automated and computational pipelines.</p>","references":[{"reference":"<p>Baker M. 2016. 1,500 scientists lift the lid on reproducibility. Nature 533: 452-454.</p>","pubmedId":"","doi":"10.1038/533452a"},{"reference":"<p>Begley CG, Ioannidis JPA. 2015. Reproducibility in Science. Circulation Research 116: 116-126.</p>","pubmedId":"","doi":"10.1161/CIRCRESAHA.114.303819"},{"reference":"<p>Bello S, Krogsbøll LT, Gruber J, Zhao ZJ, Fischer D, Hróbjartsson Ar. 2014. Lack of blinding of outcome assessors in animal model experiments implies risk of observer bias. Journal of Clinical Epidemiology 67: 973-983.</p>","pubmedId":"","doi":"10.1016/j.jclinepi.2014.04.008"},{"reference":"<p>Bespalov A, Wicke K, Castagné V. 2019. Blinding and Randomization. Handbook of Experimental Pharmacology,Good Research Practice in Non-Clinical Pharmacology and Biomedicine : 81-100.</p>","pubmedId":"","doi":"10.1007/164_2019_279"},{"reference":"<p>Cothren S, Meyer J, Hartman J. 2018. Blinded Visual Scoring of Images Using the Freely-available Software Blinder. BIO-PROTOCOL 8: 10.21769/bioprotoc.3103.</p>","pubmedId":"","doi":"10.21769/BioProtoc.3103"},{"reference":"<p>Jaiswal, A., &amp; Lorenz, H. (2019). Blind analysis tools [ImageJ plugin]. <i>ImageJ</i>. Retrieved February 19, 2026, from https://imagej.github.io/plugins/blind-analysis-tools</p>","pubmedId":"","doi":""},{"reference":"<p>Jost APT, Waters JC. 2019. Designing a rigorous microscopy experiment: Validating methods and avoiding bias. Journal of Cell Biology 218: 1452-1466.</p>","pubmedId":"","doi":"10.1083/jcb.201812109"},{"reference":"<p>Karp NA, Pearl EJ, Stringer EJ, Barkus C, Ulrichsen JC, Percie du Sert N. 2022. A qualitative study of the barriers to using blinding in in vivo experiments and suggestions for improvement. PLOS Biology 20: e3001873.</p>","pubmedId":"","doi":"10.1371/journal.pbio.3001873"},{"reference":"<p>Langa, Ł., &amp; Black contributors. (2026). <i>Black: The uncompromising Python code formatter</i> [Computer software].https://github.com/psf/black</p>","pubmedId":"","doi":""},{"reference":"<p>Leach, P. J., Salz, R., &amp; Mealling, M. H. (2005). <i>A universally unique identifier (Uuid) urn namespace</i> (Request for Comments RFC 4122). Internet Engineering Task Force. https://datatracker.ietf.org/doc/rfc4122/</p>","pubmedId":"","doi":""},{"reference":"<p><i>PyInstaller development team. (n.d.). PyInstaller (Version 6.19.0) [Computer software]. </i>https://github.com/PyInstaller/PyInstaller</p>","pubmedId":"","doi":""},{"reference":"<p>Pylint contributors. (n.d.). <i>Pylint</i> (Version 4.0.4) [Computer software]. https://github.com/pylint-dev/pylint</p>","pubmedId":"","doi":""},{"reference":"<p>pytest developers. (n.d.). <i>pytest</i> (Version 9.0.2) [Computer software]. https://github.com/pytest-dev/pytest</p>","pubmedId":"","doi":""},{"reference":"<p>Schneider CA, Rasband WS, Eliceiri KW. 2012. NIH Image to ImageJ: 25 years of image analysis. Nat Methods 9(7): 671-5.</p>","pubmedId":"22930834","doi":"10.1038nmeth.2089"},{"reference":"<p>Youyou W, Yang Y, Uzzi B. 2023. A discipline-wide investigation of the replicability of Psychology papers over the past two decades. Proceedings of the National Academy of Sciences 120: 10.1073/pnas.2208863120.</p>","pubmedId":"","doi":"10.1073/pnas.2208863120"}],"title":"<p>  BlindSpot facilitates unbiased data analysis via file renaming</p>","reviews":[],"curatorReviews":[]},{"id":"d5d6e31b-7a26-443d-b169-4c61d7ac2741","decision":"revise","abstract":"<p>Bias and subjectivity are to be avoided in scientific research since they can lead to incorrect data interpretation. Methods that enhance the rigor and reproducibility of biomedical research include filename blinding. To overcome the limitations of currently available blinding programs, we developed <i>BlindSpot,</i> a publicly available, user-friendly tool for filename renaming.<i> BlindSpot </i>is compatible with macOS and Windows, supports both a graphical user interface (GUI) and a command-line interface (CLI), and has features to customize blinding and safeguard data identity.</p>","acknowledgements":"<p>We would like to thank members of the Amy Shaub Maddox Lab for helpful discussions during the development of BlindSpot.</p>","authors":[{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","methodology","software","writing_originalDraft","validation"],"email":"jennavc@unc.edu","firstName":"Jenna","lastName":"Vesey","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology","software","validation"],"email":"liuamy@unc.edu","firstName":"Amy","lastName":"Liu","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology"],"email":"krishnsa@unc.edu","firstName":"Siddharth","lastName":"Sankaranarayanan","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["fundingAcquisition","project","writing_reviewEditing"],"email":"asm@unc.edu","firstName":"Amy S.","lastName":"Maddox","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","fundingAcquisition","project","writing_reviewEditing"],"email":"wethekam@unc.edu","firstName":"Linnea C.","lastName":"Wethekam","submittingAuthor":true,"correspondingAuthor":true,"equalContribution":false,"WBId":null,"orcid":null}],"awards":[{"awardId":"5K12GM000678 ","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Linnea C Wethekam"},{"awardId":"R35GM144238","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Amy Shaub Maddox"},{"awardId":"2153790","funderName":"National Science Foundation (United States)","awardRecipient":"Amy Shaub Maddox"}],"conflictsOfInterest":"<p>The authors declare that there are no conflicts of interest present.</p>","dataTable":{"url":null},"extendedData":[{"description":"<p>Zip folder of the GitHub repository containing both PC and MacOS BlindSpot Software and all accompanying documentation.</p>","doi":null,"resourceType":"Software","name":"BlindSpot-main.zip","url":"https://portal.micropublication.org/uploads/059b8ad26445340155c7c1da8a4f7246.zip"},{"description":"<p>Video demo of BlindSpot.</p>","doi":null,"resourceType":"Audiovisual","name":"BlindSpot_Demo (2).mp4","url":"https://portal.micropublication.org/uploads/d4bc7a1a15e7c226d30d5d5a3d2ef1bf.mp4"}],"funding":"","image":{"url":"https://portal.micropublication.org/uploads/92f4e9537340b0bee40f0a034f55fd4b.png"},"imageCaption":"<p>A - H) blinding pathway (green arrows). I - M) unblinding pipeline (purple arrows). A) User identifies target folder for blinding. B) User accesses the graphical user interface (GUI), selects specified inputs, designates the target folder, specifies the file type, and makes optional selections. C) Example of blinded file output with no checkboxes selected (csv files and blinded files only). D) Example structure with blinded files duplicated and moved to a new folder. E) Example including subdirectories with the blinded files having been moved to a new folder. F) GUI popup after the blinding is complete. G) Layout of the _blinding_log.csv showing tracked and recorded actions. H) Layout of the Blinding_key.csv for data identity restoration. I) Example folder containing blinded data. J) Unblinding function tab. K) Output folder after running the unblinding code. L) GUI popup after unblinding is complete. M) Printed output _unblinding_log.csv.</p>","imageTitle":"<p>Overview of the BlindSpot pipeline for reproducible filename blinding and restoration</p>","methods":"<p><i>BlindSpot </i>was written in Python version 3.14.2 using Visual Studio Code. It was formatted using the program package “black” to enable easy readability (Langa &amp; Black contributors, 2026). <i>BlindSpot</i> was compiled with the use of bin for Windows and bash for Mac using PyInstaller (v 6.19.0) and tkinter via command line functionality (<i>PyInstaller development team. PyInstaller (Version 6.19.0)). </i>The program uses the following natively installed python packages: os, csv, uuid, time, shutil, random, threading, pathlib, tkinter, datetime, webbrowser, and sys. The logo lil_timmy.png was drawn in MS paint (v Paint 11.2512.211.0, Microsoft Corporation) and animated with the use of Canva’s gif function.</p><p>To test the robustness of <i>BlindSpot, </i>pytest was used (pytest developers. Version 9.0.2), a Python package that allows functions to be tested independently. This program was run through stress tests to confirm that each of 32 elements of <i>BlindSpot </i>can function and recover amid any errors (see Blinder_test.py, Unblinder_test.py, Crash_log_test.py, and File_processing_test.py on GitHub). File_processing_test.py documents the testing of these three functions: file naming, file folder, and path cross-compatibility among operating systems. Fourteen functions test the integrity of the crash log. It checks that the software identifies files that have been processed, recovery in the case of a system crash, and that all user-selected options would be consistent across each file run. A test of nine features assessed integrity of the blinder function (Blinder_test.py). Each of these functions ensure that regardless of user settings, the program calls each function correctly and accurately for every file. Each of the twenty-five tests ran in under one minute, including trials with 1000 files, though duration of our tests reflected file size. The unblinding function was also tested to ensure that unblinded files would be properly matched with original files the corresponding name. Tests were performed on both Windows and MacOS. Web application and code can be accessed at this link: <a href=\"https://github.com/maddox-lab/BlindSpot\">https://github.com/maddox-lab/BlindSpot</a>. A video tutorial can be accessed at the following Vimeo link: <a href=\"https://vimeo.com/1174396947\">https://vimeo.com/1174396947</a></p>","reagents":"<p></p>","patternDescription":"<p>Scientists strive for objectivity to ensure the integrity of results, yet a “reproducibility crisis” exists (Bespalov et al., 2020; Baker, 2016). As few as 39% of published studies have been reproduced (Youyou, W., Yang, Y., &amp; Uzzi, B. 2023). One basis of irreproducibility is error introduced by investigator bias (Bello et al., 2014; Jost and Waters 2019). Blinded analysis reduces bias and increases reproducibility (Baker, 2016; Jost and Waters 2019). However, blinding is not consistently reported in the analysis of microscopy images and other datasets, in part because it can be tedious (Begley and Ioannidis 2015; Bello et al. 2014; Bespalov et al. 2020; Karp et al. 2022; Jost and Waters 2019). While most blinding programs are specific to file format, Blinder and ImageJ’s blinding plugin can be used for multiple file types (Cothren et al., 2018; Jaiswal &amp; Lorenz, 2019; Schneider et al., 2012). However, both temporarily rename files within a user interface – either an independent GUI or ImageJ – limiting the portability of the files for image analysis. We developed <i>BlindSpot</i> to stably blind file names in a flexible and accessible manner.</p><p>In designing <i>BlindSpot,</i> we prioritized crash safety and accessibility for non-programmers. <i>BlindSpot’s </i>not only accomplishes filename randomization, but also provides crash-safe bookkeeping that guarantees each file is renamed exactly once. Importantly, <i>Blindspot</i> restores a file’s original name after analysis is complete.</p><p>To begin, users open <i>BlindSpot’s </i>graphical user interface (GUI) on their device and identify the desired folder for blinding and select the required features (Figure 1A, B). The program first confirms files of the specified type are present, and if directed, also searches all subfolders (Figure 1A, B). To blind each file, the program selects a file with the correct extension and verifies that it has not already been blinded, using _blinding_log.csv (Figure 1C-D). If the user elects for the blinded file to be a copy of the original file, the original file is retained and thus protected. If the user does not select this option, a warning message prompts the user to confirm the intention to overwrite filenames. Files are then renamed randomly using the final 8 characters from the universally unique identifier (UUID) package (Leach et al., 2005). Progress of the blinding is logged into _blinding_log.csv throughout the process; Blinding_key.csv is produced after all files are blinded (Figure 1H). Within _blinding_log.csv, each step of the blinding process (Starting, Keyed, Pending Skipped, Error, Copied, Moved, and Done) is logged with a time stamp (Figure 1F). Blinding_key.csv contains the original file name, the corresponding blinded file name, and the directory path of the original file (Figure 1H). If a crash occurs during the blinding of a set of files, upon re-initiation, the program will pick up where it left off, such that each file is blinded once. A progress bar is visible in the GUI as blinding occurs.&nbsp;</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; To restore original filenames, <i>BlindSpot </i>uses blinding_key.csv, the location of the blinded files, and the user’s desired output location to run this program. First, all files represented in the key are identified by searching the designated directory and its subfolders (Figure 1I). File names not found are ‘Skipped.’ Unblinded files are marked ‘Done.’ Finally, if all of the program’s required conditions are met, the file is unblinded and placed in the user-specified directory (Figure 1K). Users can choose to overwrite the original files with the blinded modified file (Figure 1J), though situations where multiple files would result in the same filename are not automatically resolved. Unblinding creates a log summary and greets the user with a random quote after the software is done with its run (Figure 1L, M).</p><p>To incorporate <i>BlindSpot </i>tool into extended workflows, the ‘blind’ and ‘unblind’ functions can be added to python workflows with the use of PyPI packages and command line interface. Documentation on how to call and utilize <i>BlindSpot</i> in the command line is present in the Readme.md on GitHub. Future development will focus on integrating <i>BlindSpot</i> with popular imaging analysis software and improving compatibility with automated and computational pipelines.</p>","references":[{"reference":"<p>Baker M. 2016. 1,500 scientists lift the lid on reproducibility. Nature 533: 452-454.</p>","pubmedId":"","doi":"10.1038/533452a"},{"reference":"<p>Begley CG, Ioannidis JPA. 2015. Reproducibility in Science. Circulation Research 116: 116-126.</p>","pubmedId":"","doi":"10.1161/CIRCRESAHA.114.303819"},{"reference":"<p>Bello S, Krogsbøll LT, Gruber J, Zhao ZJ, Fischer D, Hróbjartsson Ar. 2014. Lack of blinding of outcome assessors in animal model experiments implies risk of observer bias. Journal of Clinical Epidemiology 67: 973-983.</p>","pubmedId":"","doi":"10.1016/j.jclinepi.2014.04.008"},{"reference":"<p>Bespalov A, Wicke K, Castagné V. 2019. Blinding and Randomization. Handbook of Experimental Pharmacology,Good Research Practice in Non-Clinical Pharmacology and Biomedicine : 81-100.</p>","pubmedId":"","doi":"10.1007/164_2019_279"},{"reference":"<p>Cothren S, Meyer J, Hartman J. 2018. Blinded Visual Scoring of Images Using the Freely-available Software Blinder. BIO-PROTOCOL 8: 10.21769/bioprotoc.3103.</p>","pubmedId":"","doi":"10.21769/BioProtoc.3103"},{"reference":"<p>Jaiswal, A., &amp; Lorenz, H. (2019). Blind analysis tools [ImageJ plugin]. <i>ImageJ</i>. Retrieved February 19, 2026, from https://imagej.github.io/plugins/blind-analysis-tools</p>","pubmedId":"","doi":""},{"reference":"<p>Jost APT, Waters JC. 2019. Designing a rigorous microscopy experiment: Validating methods and avoiding bias. Journal of Cell Biology 218: 1452-1466.</p>","pubmedId":"","doi":"10.1083/jcb.201812109"},{"reference":"<p>Karp NA, Pearl EJ, Stringer EJ, Barkus C, Ulrichsen JC, Percie du Sert N. 2022. A qualitative study of the barriers to using blinding in in vivo experiments and suggestions for improvement. PLOS Biology 20: e3001873.</p>","pubmedId":"","doi":"10.1371/journal.pbio.3001873"},{"reference":"<p>Langa, Ł., &amp; Black contributors. (2026). <i>Black: The uncompromising Python code formatter</i> [Computer software].https://github.com/psf/black</p>","pubmedId":"","doi":""},{"reference":"<p>Leach, P. J., Salz, R., &amp; Mealling, M. H. (2005). <i>A universally unique identifier (Uuid) urn namespace</i> (Request for Comments RFC 4122). Internet Engineering Task Force. https://datatracker.ietf.org/doc/rfc4122/</p>","pubmedId":"","doi":""},{"reference":"<p><i>PyInstaller development team. (n.d.). PyInstaller (Version 6.19.0) [Computer software]. </i>https://github.com/PyInstaller/PyInstaller</p>","pubmedId":"","doi":""},{"reference":"<p>Pylint contributors. (n.d.). <i>Pylint</i> (Version 4.0.4) [Computer software]. https://github.com/pylint-dev/pylint</p>","pubmedId":"","doi":""},{"reference":"<p>pytest developers. (n.d.). <i>pytest</i> (Version 9.0.2) [Computer software]. https://github.com/pytest-dev/pytest</p>","pubmedId":"","doi":""},{"reference":"<p>Schneider CA, Rasband WS, Eliceiri KW. 2012. NIH Image to ImageJ: 25 years of image analysis. Nat Methods 9(7): 671-5.</p>","pubmedId":"22930834","doi":"10.1038nmeth.2089"},{"reference":"<p>Youyou W, Yang Y, Uzzi B. 2023. A discipline-wide investigation of the replicability of Psychology papers over the past two decades. Proceedings of the National Academy of Sciences 120: 10.1073/pnas.2208863120.</p>","pubmedId":"","doi":"10.1073/pnas.2208863120"}],"title":"<p>  BlindSpot facilitates unbiased data analysis via file renaming</p>","reviews":[{"reviewer":{"displayName":"Lisa Cameron"},"openAcknowledgement":null,"status":{"submitted":false}},{"reviewer":{"displayName":"Tara May Finegan"},"openAcknowledgement":true,"status":{"submitted":true}}],"curatorReviews":[]},{"id":"85edf661-814e-43b4-afe3-c9687db9a1dc","decision":"accept","abstract":"<p>Bias and subjectivity are to be avoided in scientific research since they can lead to incorrect data interpretation. Methods that enhance the rigor and reproducibility of biomedical research include filename blinding. To overcome the limitations of currently available blinding programs, we developed <i>BlindSpot,</i> a publicly available, user-friendly tool for filename renaming.<i> BlindSpot </i>is compatible with macOS and Windows, supports both a graphical user interface (GUI) and a command-line interface (CLI), and has features to customize blinding and safeguard data identity.</p>","acknowledgements":"<p>We would like to thank members of the Amy Shaub Maddox Lab for helpful discussions during the development of BlindSpot.</p>","authors":[{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","methodology","software","writing_originalDraft","validation"],"email":"jennavc@unc.edu","firstName":"Jenna","lastName":"Vesey","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology","software","validation"],"email":"liuamy@unc.edu","firstName":"Amy","lastName":"Liu","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology"],"email":"krishnsa@unc.edu","firstName":"Siddharth","lastName":"Sankaranarayanan","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["fundingAcquisition","project","writing_reviewEditing"],"email":"asm@unc.edu","firstName":"Amy S.","lastName":"Maddox","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","fundingAcquisition","project","writing_reviewEditing"],"email":"wethekam@unc.edu","firstName":"Linnea C.","lastName":"Wethekam","submittingAuthor":true,"correspondingAuthor":true,"equalContribution":false,"WBId":null,"orcid":null}],"awards":[{"awardId":"5K12GM000678 ","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Linnea C Wethekam"},{"awardId":"R35GM144238","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Amy Shaub Maddox"},{"awardId":"2153790","funderName":"National Science Foundation (United States)","awardRecipient":"Amy Shaub Maddox"}],"conflictsOfInterest":"<p>The authors declare that there are no conflicts of interest present.</p>","dataTable":{"url":null},"extendedData":[{"description":"<p>Zip folder of the GitHub repository containing both PC and MacOS BlindSpot Software and all accompanying documentation.</p>","doi":"10.22002/5zfem-kkx10","resourceType":"Software","name":"BlindSpot-main.zip","url":"https://portal.micropublication.org/uploads/059b8ad26445340155c7c1da8a4f7246.zip"}],"funding":"","image":{"url":"https://portal.micropublication.org/uploads/0969f9c6ccb4d2deb1a1a39b468a46c0.png"},"imageCaption":"<p>A - H) blinding pathway (green arrows). I - M) unblinding pipeline (purple arrows). A) User identifies target folder for blinding. B) User accesses the graphical user interface (GUI), selects specified inputs, designates the target folder, specifies the file type, and makes optional selections. C) Once blinding is complete a pop-up shows a summary of the blinding. D) Example output where with no image duplication or file movement. E) Example output where blinded files were duplicated and moved to a new folder. F) Example including subdirectories with the blinded files having been moved to a new folder. G) Layout of the Blinding_key.csv for data identity restoration. H) Layout of the _blinding_log.csv showing tracked and recorded actions. I) Example folder containing blinded data. J) Unblinding function tab. K) GUI popup after unblinding is complete. L) Output folder after running the unblinding code. M) Printed output _unblinding_log.csv.</p>","imageTitle":"<p>Overview of the BlindSpot pipeline for reproducible filename blinding and restoration</p>","methods":"<p><i>BlindSpot </i>was written in Python version 3.14.2 using Visual Studio Code. It was formatted using the program package “black” to enable easy readability (Langa &amp; Black contributors, 2026). <i>BlindSpot</i> was compiled with the use of bin for Windows and bash for Mac using PyInstaller (v 6.19.0) and tkinter via command line functionality (<i>PyInstaller development team. PyInstaller (Version 6.19.0)). </i>The program uses the following natively installed python packages: os, csv, uuid, time, shutil, random, threading, pathlib, tkinter, datetime, webbrowser, and sys. The logo lil_timmy.png was drawn in MS paint (v Paint 11.2512.211.0, Microsoft Corporation) and animated with the use of Canva’s gif function.</p><p>To test the robustness of <i>BlindSpot, </i>pytest was used (pytest developers. Version 9.0.2), a Python package that allows functions to be tested independently. This program was run through stress tests to confirm that each of 32 elements of <i>BlindSpot </i>can function and recover amid any errors (see Blinder_test.py, Unblinder_test.py, Crash_log_test.py, and File_processing_test.py on GitHub). File_processing_test.py documents the testing of these three functions: file naming, file folder, and path cross-compatibility among operating systems. Fourteen functions test the integrity of the crash log. It checks that the software identifies files that have been processed, recovery in the case of a system crash, and that all user-selected options would be consistent across each file run. A test of nine features assessed integrity of the blinder function (Blinder_test.py). Each of these functions ensure that regardless of user settings, the program calls each function correctly and accurately for every file. Each of the twenty-five tests ran in under one minute, including trials with 1000 files, though duration of our tests reflected file size. The unblinding function was also tested to ensure that unblinded files would be properly matched with original files the corresponding name. Tests were performed on both Windows and MacOS. Web application and code can be accessed at this link: <a href=\"https://github.com/maddox-lab/BlindSpot.git\">https://github.com/maddox-lab/BlindSpot.git</a>. Detailed instructions on how to download BlindSpot can also be found in this folder labeled “BlindSpot Installation Instructions”.</p><p><b>AI usage:</b></p><p>AI assistance (ChatGPT, OpenAI) was used to suggest debugging strategies and interpret error messages during development. The pylint package helped identify errors for formatting and structure for further review (pylint contributors, n.d.). The Black formatter was used for code formatting (Langa, Ł., &amp; contributors to Black, 2026). The code was tested under human scrutiny and checked against current literature regarding the code for accuracy of function and layout. All code functionality and design decisions were verified by the authors.</p>","reagents":"<p></p>","patternDescription":"<p>Scientists strive for objectivity to ensure the integrity of results, yet a “reproducibility crisis” exists (Bespalov et al., 2020; Baker, 2016). As few as 39% of published studies have been reproduced (Youyou, W., Yang, Y., &amp; Uzzi, B. 2023). One basis of irreproducibility is error introduced by investigator bias (Bello et al., 2014; Jost and Waters 2019). Blinded analysis reduces bias and increases reproducibility (Baker, 2016; Jost and Waters 2019). However, blinding is not consistently reported in the analysis of microscopy images and other datasets, in part because it can be tedious (Begley and Ioannidis 2015; Bello et al. 2014; Bespalov et al. 2020; Karp et al. 2022; Jost and Waters 2019). While most blinding programs are specific to file format, Blinder and ImageJ’s blinding plugin can be used for multiple file types (Cothren et al., 2018; Jaiswal &amp; Lorenz, 2019; Schneider et al., 2012). However, both temporarily rename files within a user interface – either an independent GUI or ImageJ – limiting the portability of the files for image analysis. We developed <i>BlindSpot</i> to stably blind file names in a flexible and accessible manner.</p><p>In designing <i>BlindSpot,</i> we prioritized crash safety and accessibility for non-programmers. <i>BlindSpot’s </i>not only accomplishes filename randomization, but also provides crash-safe bookkeeping that guarantees each file is renamed exactly once. Importantly, <i>Blindspot</i> restores a file’s original name after analysis is complete.</p><p>To begin, users open <i>BlindSpot’s </i>graphical user interface (GUI) on their device and identify the desired folder for blinding and select the required features (Figure 1A, B). The program first confirms files of the specified type are present, and if directed, also searches all subfolders (Figure 1A, B). To blind each file, the program selects a file with the correct extension and verifies that it has not already been blinded, using _blinding_log.csv (Figure 1D-F). If the user elects for the blinded file to be a copy of the original file, the original file is retained and thus protected. If the user does not select this option, a warning message prompts the user to confirm the intention to overwrite filenames. Files are then renamed randomly using the final 8 characters from the universally unique identifier (UUID) package (Leach et al., 2005). Progress of the blinding is logged into _blinding_log.csv throughout the process; Blinding_key.csv is produced after all files are blinded (Figure 1G). Within _blinding_log.csv, each step of the blinding process (Starting, Keyed, Pending Skipped, Error, Copied, Moved, and Done) is logged with a time stamp (Figure 1H). Blinding_key.csv contains the original file name, the corresponding blinded file name, and the directory path of the original file (Figure 1G). If a crash occurs during the blinding of a set of files, upon re-initiation, the program will pick up where it left off, such that each file is blinded once. A progress bar is visible in the GUI as blinding occurs.&nbsp;</p><p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; To restore original filenames, <i>BlindSpot </i>uses blinding_key.csv, the location of the blinded files, and the user’s desired output location to run this program. First, all files represented in the key are identified by searching the designated directory and its subfolders (Figure 1I, J). File names not found are ‘Skipped.’ Unblinded files are marked ‘Done.’ Finally, if all of the program’s required conditions are met, the file is unblinded and placed in the user-specified directory (Figure 1L). Users can choose to overwrite the original files with the blinded modified file (Figure 1J), though situations where multiple files would result in the same filename are not automatically resolved. Unblinding creates a log summary and greets the user with a random quote after the software is done with its run (Figure 1L, M).</p><p>To incorporate <i>BlindSpot </i>tool into extended workflows, the ‘blind’ and ‘unblind’ functions can be added to python workflows with the use of PyPI packages and command line interface. Documentation on how to call and utilize <i>BlindSpot</i> in the command line is present in the Readme.md on GitHub. Directions for downloading the software is available in the GitHub page in: “BlindSpot Installation Instructions”. Future development will focus on integrating <i>BlindSpot</i> with popular imaging analysis software and improving compatibility with automated and computational pipelines.</p>","references":[{"reference":"<p>Baker M. 2016. 1,500 scientists lift the lid on reproducibility. Nature 533: 452-454.</p>","pubmedId":"","doi":"10.1038/533452a"},{"reference":"<p>Begley CG, Ioannidis JPA. 2015. Reproducibility in Science. Circulation Research 116: 116-126.</p>","pubmedId":"","doi":"10.1161/CIRCRESAHA.114.303819"},{"reference":"<p>Bello S, Krogsbøll LT, Gruber J, Zhao ZJ, Fischer D, Hróbjartsson Ar. 2014. Lack of blinding of outcome assessors in animal model experiments implies risk of observer bias. Journal of Clinical Epidemiology 67: 973-983.</p>","pubmedId":"","doi":"10.1016/j.jclinepi.2014.04.008"},{"reference":"<p>Bespalov A, Wicke K, Castagné V. 2019. Blinding and Randomization. Handbook of Experimental Pharmacology,Good Research Practice in Non-Clinical Pharmacology and Biomedicine : 81-100.</p>","pubmedId":"","doi":"10.1007/164_2019_279"},{"reference":"<p>Cothren S, Meyer J, Hartman J. 2018. Blinded Visual Scoring of Images Using the Freely-available Software Blinder. BIO-PROTOCOL 8: 10.21769/bioprotoc.3103.</p>","pubmedId":"","doi":"10.21769/BioProtoc.3103"},{"reference":"<p>Jaiswal, A., &amp; Lorenz, H. (2019). Blind analysis tools [ImageJ plugin]. <i>ImageJ</i>. Retrieved February 19, 2026, from https://imagej.github.io/plugins/blind-analysis-tools</p>","pubmedId":"","doi":""},{"reference":"<p>Jost APT, Waters JC. 2019. Designing a rigorous microscopy experiment: Validating methods and avoiding bias. Journal of Cell Biology 218: 1452-1466.</p>","pubmedId":"","doi":"10.1083/jcb.201812109"},{"reference":"<p>Karp NA, Pearl EJ, Stringer EJ, Barkus C, Ulrichsen JC, Percie du Sert N. 2022. A qualitative study of the barriers to using blinding in in vivo experiments and suggestions for improvement. PLOS Biology 20: e3001873.</p>","pubmedId":"","doi":"10.1371/journal.pbio.3001873"},{"reference":"<p>Langa, Ł., &amp; Black contributors. (2026). <i>Black: The uncompromising Python code formatter</i> [Computer software].https://github.com/psf/black</p>","pubmedId":"","doi":""},{"reference":"<p>Leach, P. J., Salz, R., &amp; Mealling, M. H. (2005). <i>A universally unique identifier (Uuid) urn namespace</i> (Request for Comments RFC 4122). Internet Engineering Task Force. https://datatracker.ietf.org/doc/rfc4122/</p>","pubmedId":"","doi":""},{"reference":"<p><i>PyInstaller development team. (n.d.). PyInstaller (Version 6.19.0) [Computer software]. </i>https://github.com/PyInstaller/PyInstaller</p>","pubmedId":"","doi":""},{"reference":"<p>Pylint contributors. (n.d.). <i>Pylint</i> (Version 4.0.4) [Computer software]. https://github.com/pylint-dev/pylint</p>","pubmedId":"","doi":""},{"reference":"<p>pytest developers. (n.d.). <i>pytest</i> (Version 9.0.2) [Computer software]. https://github.com/pytest-dev/pytest</p>","pubmedId":"","doi":""},{"reference":"<p>Schneider CA, Rasband WS, Eliceiri KW. 2012. NIH Image to ImageJ: 25 years of image analysis. Nat Methods 9(7): 671-5.</p>","pubmedId":"22930834","doi":"10.1038nmeth.2089"},{"reference":"<p>Youyou W, Yang Y, Uzzi B. 2023. A discipline-wide investigation of the replicability of Psychology papers over the past two decades. Proceedings of the National Academy of Sciences 120: 10.1073/pnas.2208863120.</p>","pubmedId":"","doi":"10.1073/pnas.2208863120"}],"title":"<p>  BlindSpot facilitates unbiased data analysis via file renaming</p>","reviews":[{"reviewer":{"displayName":"Tara May Finegan"},"openAcknowledgement":true,"status":{"submitted":true}}],"curatorReviews":[]},{"id":"cc1b1137-01c3-4beb-b71f-76b09c4d9326","decision":"publish","abstract":"<p>Bias and subjectivity are to be avoided in scientific research since they can lead to incorrect data interpretation. Methods that enhance the rigor and reproducibility of biomedical research include filename blinding. To overcome the limitations of currently available blinding programs, we developed <i>BlindSpot,</i> a publicly available, user-friendly tool for filename renaming.<i> BlindSpot </i>is compatible with macOS and Windows, supports both a graphical user interface (GUI) and a command-line interface (CLI), and has features to customize blinding and safeguard data identity.</p>","acknowledgements":"<p>We would like to thank members of the Amy Shaub Maddox Lab for helpful discussions during the development of BlindSpot.</p>","authors":[{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","methodology","software","writing_originalDraft","validation"],"email":"jennavc@unc.edu","firstName":"Jenna","lastName":"Vesey","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology","software","validation"],"email":"liuamy@unc.edu","firstName":"Amy","lastName":"Liu","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["methodology"],"email":"krishnsa@unc.edu","firstName":"Siddharth","lastName":"Sankaranarayanan","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["fundingAcquisition","project","writing_reviewEditing"],"email":"asm@unc.edu","firstName":"Amy S.","lastName":"Maddox","submittingAuthor":false,"correspondingAuthor":false,"equalContribution":false,"WBId":null,"orcid":null},{"affiliations":["UNC-Chapel Hill, Chapel Hill, NC, US"],"departments":["Department of Biology"],"credit":["conceptualization","fundingAcquisition","project","writing_reviewEditing"],"email":"wethekam@unc.edu","firstName":"Linnea C.","lastName":"Wethekam","submittingAuthor":true,"correspondingAuthor":true,"equalContribution":false,"WBId":null,"orcid":null}],"awards":[{"awardId":"5K12GM000678 ","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Linnea C Wethekam"},{"awardId":"R35GM144238","funderName":"National Institute of General Medical Sciences (United States)","awardRecipient":"Amy Shaub Maddox"},{"awardId":"2153790","funderName":"National Science Foundation (United States)","awardRecipient":"Amy Shaub Maddox"}],"conflictsOfInterest":"<p>The authors declare that there are no conflicts of interest present.</p>","dataTable":{"url":null},"extendedData":[{"description":"<p>Zip folder of the GitHub repository containing both PC and MacOS BlindSpot Software and all accompanying documentation.</p>","doi":"10.22002/5zfem-kkx10","resourceType":"Software","name":"BlindSpot-main.zip","url":"https://portal.micropublication.org/uploads/059b8ad26445340155c7c1da8a4f7246.zip"}],"funding":"","image":{"url":"https://portal.micropublication.org/uploads/0969f9c6ccb4d2deb1a1a39b468a46c0.png"},"imageCaption":"<p>A - H) blinding pathway (green arrows). I - M) unblinding pipeline (purple arrows). A) User identifies target folder for blinding. B) User accesses the graphical user interface (GUI), selects specified inputs, designates the target folder, specifies the file type, and makes optional selections. C) Once blinding is complete a pop-up shows a summary of the blinding. D) Example output where with no image duplication or file movement. E) Example output where blinded files were duplicated and moved to a new folder. F) Example including subdirectories with the blinded files having been moved to a new folder. G) Layout of the Blinding_key.csv for data identity restoration. H) Layout of the _blinding_log.csv showing tracked and recorded actions. I) Example folder containing blinded data. J) Unblinding function tab. K) GUI popup after unblinding is complete. L) Output folder after running the unblinding code. M) Printed output _unblinding_log.csv.</p>","imageTitle":"<p>Overview of the BlindSpot pipeline for reproducible filename blinding and restoration</p>","methods":"<p><i>BlindSpot </i>was written in Python version 3.14.2 using Visual Studio Code. It was formatted using the program package “black” to enable easy readability (Langa &amp; Black contributors, 2026). <i>BlindSpot</i> was compiled with the use of bin for Windows and bash for Mac using PyInstaller (v 6.19.0) and tkinter via command line functionality (<i>PyInstaller development team. PyInstaller (Version 6.19.0)). </i>The program uses the following natively installed python packages: os, csv, uuid, time, shutil, random, threading, pathlib, tkinter, datetime, webbrowser, and sys. The logo lil_timmy.png was drawn in MS paint (v Paint 11.2512.211.0, Microsoft Corporation) and animated with the use of Canva’s gif function.</p><p>To test the robustness of <i>BlindSpot, </i>pytest was used (pytest developers. Version 9.0.2), a Python package that allows functions to be tested independently. This program was run through stress tests to confirm that each of 32 elements of <i>BlindSpot </i>can function and recover amid any errors (see Blinder_test.py, Unblinder_test.py, Crash_log_test.py, and File_processing_test.py on GitHub). File_processing_test.py documents the testing of these three functions: file naming, file folder, and path cross-compatibility among operating systems. Fourteen functions test the integrity of the crash log. It checks that the software identifies files that have been processed, recovery in the case of a system crash, and that all user-selected options would be consistent across each file run. A test of nine features assessed integrity of the blinder function (Blinder_test.py). Each of these functions ensure that regardless of user settings, the program calls each function correctly and accurately for every file. Each of the twenty-five tests ran in under one minute, including trials with 1000 files, though duration of our tests reflected file size. The unblinding function was also tested to ensure that unblinded files would be properly matched with original files the corresponding name. Tests were performed on both Windows and MacOS. Web application and code can be accessed at this link: <a href=\"https://github.com/maddox-lab/BlindSpot.git\">https://github.com/maddox-lab/BlindSpot.git</a>. Detailed instructions on how to download BlindSpot can also be found in this folder labeled “BlindSpot Installation Instructions”.</p><p><b>AI usage: </b>AI assistance (ChatGPT-5.3, OpenAI) was used to suggest debugging strategies and interpret error messages during development. No AI assistance was used to write or edit the manuscript. The pylint package helped identify errors for formatting and structure for further review (pylint contributors, n.d.). The Black formatter was used for code formatting (Langa, Ł., &amp; contributors to Black, 2026). The code was tested under human scrutiny and checked against current literature regarding the code for accuracy of function and layout. All code functionality and design decisions were verified by the authors.</p>","reagents":"<p></p>","patternDescription":"<p>Scientists strive for objectivity to ensure the integrity of results, yet a “reproducibility crisis” exists (Bespalov et al., 2020; Baker, 2016). As few as 39% of published studies have been reproduced (Youyou, W., Yang, Y., &amp; Uzzi, B. 2023). One basis of irreproducibility is error introduced by investigator bias (Bello et al., 2014; Jost and Waters 2019). Blinded analysis reduces bias and increases reproducibility (Baker, 2016; Jost and Waters 2019). However, blinding is not consistently reported in the analysis of microscopy images and other datasets, in part because it can be tedious (Begley and Ioannidis 2015; Bello et al. 2014; Bespalov et al. 2020; Karp et al. 2022; Jost and Waters 2019). While most blinding programs are specific to file format, Blinder and ImageJ’s blinding plugin can be used for multiple file types (Cothren et al., 2018; Jaiswal &amp; Lorenz, 2019; Schneider et al., 2012). However, both temporarily rename files within a user interface – either an independent GUI or ImageJ – limiting the portability of the files for image analysis. We developed <i>BlindSpot</i> to stably blind file names in a flexible and accessible manner.</p><p>In designing <i>BlindSpot,</i> we prioritized crash safety and accessibility for non-programmers. <i>BlindSpot </i>not only accomplishes filename randomization, but also provides crash-safe bookkeeping that guarantees each file is renamed exactly once. Importantly, <i>Blindspot</i> restores a file’s original name after analysis is complete.</p><p>To begin, users open <i>BlindSpot’s </i>graphical user interface (GUI) on their device and identify the desired folder for blinding and select the required features (Figure 1A, B). The program first confirms files of the specified type are present, and if directed, also searches all subfolders (Figure 1A, B). To blind each file, the program selects a file with the correct extension and verifies that it has not already been blinded, using _blinding_log.csv (Figure 1D-F). If the user elects for the blinded file to be a copy of the original file, the original file is retained and thus protected. If the user does not select this option, a warning message prompts the user to confirm the intention to overwrite filenames. Files are then renamed randomly using the final 8 characters from the universally unique identifier (UUID) package (Leach et al., 2005). Progress of the blinding is logged into _blinding_log.csv throughout the process; Blinding_key.csv is produced after all files are blinded (Figure 1G). Within _blinding_log.csv, each step of the blinding process (Starting, Keyed, Pending Skipped, Error, Copied, Moved, and Done) is logged with a time stamp (Figure 1H). Blinding_key.csv contains the original file name, the corresponding blinded file name, and the directory path of the original file (Figure 1G). If a crash occurs during the blinding of a set of files, upon re-initiation, the program will pick up where it left off, such that each file is blinded once. A progress bar is visible in the GUI as blinding occurs.&nbsp;</p><p>To restore original filenames, <i>BlindSpot </i>uses blinding_key.csv, the location of the blinded files, and the user’s desired output location to run this program. First, all files represented in the key are identified by searching the designated directory and its subfolders (Figure 1I, J). File names not found are ‘Skipped.’ Unblinded files are marked ‘Done.’ Finally, if all of the program’s required conditions are met, the file is unblinded and placed in the user-specified directory (Figure 1L). Users can choose to overwrite the original files with the blinded modified file (Figure 1J), though situations where multiple files would result in the same filename are not automatically resolved. Unblinding creates a log summary and greets the user with a random quote after the software is done with its run (Figure 1L, M).</p><p>To incorporate <i>BlindSpot </i>tool into extended workflows, the ‘blind’ and ‘unblind’ functions can be added to python workflows with the use of PyPI packages and command line interface. Documentation on how to call and utilize <i>BlindSpot</i> in the command line is present in the Readme.md on GitHub. Directions for downloading the software is available in the GitHub page in: “BlindSpot Installation Instructions”. Future development will focus on integrating <i>BlindSpot</i> with popular imaging analysis software and improving compatibility with automated and computational pipelines.</p>","references":[{"reference":"<p>Baker M. 2016. 1,500 scientists lift the lid on reproducibility. Nature 533: 452-454.</p>","pubmedId":"","doi":"10.1038/533452a"},{"reference":"<p>Begley CG, Ioannidis JPA. 2015. Reproducibility in Science. Circulation Research 116: 116-126.</p>","pubmedId":"","doi":"10.1161/CIRCRESAHA.114.303819"},{"reference":"<p>Bello S, Krogsbøll LT, Gruber J, Zhao ZJ, Fischer D, Hróbjartsson Ar. 2014. Lack of blinding of outcome assessors in animal model experiments implies risk of observer bias. Journal of Clinical Epidemiology 67: 973-983.</p>","pubmedId":"","doi":"10.1016/j.jclinepi.2014.04.008"},{"reference":"<p>Bespalov A, Wicke K, Castagné V. 2019. Blinding and Randomization. Handbook of Experimental Pharmacology,Good Research Practice in Non-Clinical Pharmacology and Biomedicine : 81-100.</p>","pubmedId":"","doi":"10.1007/164_2019_279"},{"reference":"<p>Cothren S, Meyer J, Hartman J. 2018. Blinded Visual Scoring of Images Using the Freely-available Software Blinder. BIO-PROTOCOL 8: 10.21769/bioprotoc.3103.</p>","pubmedId":"","doi":"10.21769/BioProtoc.3103"},{"reference":"<p>Jaiswal, A., &amp; Lorenz, H. (2019). Blind analysis tools [ImageJ plugin]. <i>ImageJ</i>. Retrieved February 19, 2026, from https://imagej.github.io/plugins/blind-analysis-tools</p>","pubmedId":"","doi":""},{"reference":"<p>Jost APT, Waters JC. 2019. Designing a rigorous microscopy experiment: Validating methods and avoiding bias. Journal of Cell Biology 218: 1452-1466.</p>","pubmedId":"","doi":"10.1083/jcb.201812109"},{"reference":"<p>Karp NA, Pearl EJ, Stringer EJ, Barkus C, Ulrichsen JC, Percie du Sert N. 2022. A qualitative study of the barriers to using blinding in in vivo experiments and suggestions for improvement. PLOS Biology 20: e3001873.</p>","pubmedId":"","doi":"10.1371/journal.pbio.3001873"},{"reference":"<p>Langa, Ł., &amp; Black contributors. (2026). <i>Black: The uncompromising Python code formatter</i> [Computer software].https://github.com/psf/black</p>","pubmedId":"","doi":""},{"reference":"<p>Leach, P. J., Salz, R., &amp; Mealling, M. H. (2005). <i>A universally unique identifier (Uuid) urn namespace</i> (Request for Comments RFC 4122). Internet Engineering Task Force. https://datatracker.ietf.org/doc/rfc4122/</p>","pubmedId":"","doi":""},{"reference":"<p><i>PyInstaller development team. (n.d.). PyInstaller (Version 6.19.0) [Computer software]. </i>https://github.com/PyInstaller/PyInstaller</p>","pubmedId":"","doi":""},{"reference":"<p>Pylint contributors. (n.d.). <i>Pylint</i> (Version 4.0.4) [Computer software]. https://github.com/pylint-dev/pylint</p>","pubmedId":"","doi":""},{"reference":"<p>pytest developers. (n.d.). <i>pytest</i> (Version 9.0.2) [Computer software]. https://github.com/pytest-dev/pytest</p>","pubmedId":"","doi":""},{"reference":"<p>Schneider CA, Rasband WS, Eliceiri KW. 2012. NIH Image to ImageJ: 25 years of image analysis. Nat Methods 9(7): 671-5.</p>","pubmedId":"22930834","doi":"10.1038nmeth.2089"},{"reference":"<p>Youyou W, Yang Y, Uzzi B. 2023. A discipline-wide investigation of the replicability of Psychology papers over the past two decades. Proceedings of the National Academy of Sciences 120: 10.1073/pnas.2208863120.</p>","pubmedId":"","doi":"10.1073/pnas.2208863120"}],"title":"<p>  BlindSpot facilitates unbiased data analysis via file renaming</p>","reviews":[],"curatorReviews":[]}]}},"species":{"species":[{"value":"acer saccharum","label":"Acer saccharum","imageSrc":"","imageAlt":"","mod":"TreeGenes","modLink":"https://treegenesdb.org","linkVariable":""},{"value":"achillea millefolium","label":"Achillea millefolium","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"acinetobacter baylyi","label":"Acinetobacter baylyi","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"actinobacteria bacterium","label":"Actinobacteria bacterium","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"adelges tsugae","label":"Adelges tsugae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"adenocaulon chilense","label":"Adenocaulon chilense","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"aedes japonicus","label":"Aedes japonicus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"aegorhinus vitulus","label":"Aegorhinus vitulus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"aerococcus","label":"Aerococcus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"alaimidae","label":"Alaimidae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"allobates femoralis","label":"Allobates femoralis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"alnus glutinosa","label":"Alnus glutinosa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"alosa aestivalis","label":"Alosa aestivalis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"alosa pseudoharengus","label":"Alosa pseudoharengus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"alternaria alternata","label":"Alternaria alternata","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"amynthas agrestis","label":"Amynthas Agrestis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ancylostoma caninum","label":"Ancylostoma caninum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ancylostoma ceylanicum","label":"Ancylostoma ceylanicum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"anemone multifida","label":"Anemone multifida","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"anguilla rostrata","label":"Anguilla rostrata","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"anisakis simplex","label":"Anisakis simplex","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"anomala albopilosa","label":"Anomala albopilosa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"anthomyiidae sp","label":"Anthomyiidae sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"anthomyiidae sp","label":"Anthomyiidae sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"arabidopsis","label":"Arabidopsis","imageSrc":"arabidopsis.png","imageAlt":"Arabidopsis graphic by Zoe Zorn CC BY 4.0","mod":"TAIR","modLink":"https://arabidopsis.org","linkVariable":""},{"value":"architeuthis dux","label":"Architeuthis dux","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"arion vulgaris","label":"Arion vulgaris","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"armeria","label":"Armeria","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"artemia","label":"Artemia","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"arthrobacter sp.","label":"Arthrobacter sp.","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ascaridia","label":"Ascaridia","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ascaridia galli","label":"Ascaridia galli","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"asparagopsis taxiformis","label":"Asparagopsis taxiformis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"astatotilapia burtoni","label":"Astatotilapia burtoni","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"avena sativa","label":"Avena sativa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"aves","label":"Aves","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bacillus","label":"Bacillus (firmicutes)","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bacillus cereus","label":"Bacillus cereus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bacillus mycoides","label":"Bacillus mycoides","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bacillus subtilis","label":"Bacillus subtilis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bacillus thuringiensis","label":"Bacillus thuringiensis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bacillus toyonensis","label":"Bacillus toyonensis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bacillus wiedmannii","label":"Bacillus wiedmannii","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bacteria","label":"Bacteria","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bacteriophage","label":"Bacteriophage","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bactrocera","label":"Bactrocera sp.","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"batrachospermum gelatinosum","label":"Batrachospermum gelatinosum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"betula lenta","label":"Betula lenta","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"betula nigra","label":"Betula nigra","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bombus dahlbohmii","label":"Bombus dahlbohmii","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bombus terrestris","label":"Bombus terrestris","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bombyx mori","label":"Bombyx mori","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bos taurus","label":"Bos Taurus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"brachygobius doriae","label":"Brachygobius doriae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"brassica oleracea","label":"Brassica oleracea","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"brassica rapa","label":"Brassica rapa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"brugia malayi","label":"Brugia malayi","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"burkholderia thailandensis","label":"Burkholderia thailandensis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"buttiauxella","label":"Buttiauxella","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"caenorhabditis brenneri","label":"Caenorhabditis brenneri","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"caenorhabditis briggsae","label":"Caenorhabditis briggsae","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"c. elegans","label":"Caenorhabditis elegans","imageSrc":"c-elegans.jpg","imageAlt":"C. elegans graphic by Zoe Zorn CC BY 4.0","mod":"WormBase","modLink":"https://wormbase.org","linkVariable":""},{"value":"caenorhabditis inopinata","label":"Caenorhabditis inopinata","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"caenorhabditis japonica","label":"Caenorhabditis japonica","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"caenorhabditis nigoni","label":"Caenorhabditis nigoni","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"caenorhabditis remanei","label":"Caenorhabditis remanei","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"caenorhabditis tropicalis","label":"Caenorhabditis tropicalis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"calidifontibacillus","label":"Calidifontibacillus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"calidifontibacillus erzuremensis","label":"Calidifontibacillus erzuremensis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"calliphora sp","label":"Calliphora sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"caltha sagittata","label":"Caltha sagittata","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"cambarus latimanus","label":"Cambarus latimanus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"candida albicans","label":"Candida albicans","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"canis familiaris","label":"Canis familiaris","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"cannabis sativa","label":"Cannabis sativa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"caretta caretta","label":"Caretta caretta","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"cassiopea xamachana","label":"Cassiopea xamachana","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"caulobacter vibrioides","label":"Caulobacter vibrioides","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"cephalopods","label":"Cephalopoda","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"cerastium arvense","label":"Cerastium arvense","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ceriodaphnia","label":"Ceriodaphnia","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ceroglossus suturalis","label":"Ceroglossus suturalis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"chaetoceros","label":"Chaetoceros","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"chamaecrista fasciculata","label":"Chamaecrista fasciculata","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"chilicola chalcidiformis","label":"Chilicola chalcidiformis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"chitinimonas","label":"Chitinimonas","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"chlamydomonas reinhardtii","label":"Chlamydomonas reinhardtii","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"chromobacterium","label":"Chromobacterium","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"chrysemys picta","label":"Chrysemys picta","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"chrysoperla rufilabris","label":"Chrysoperla rufilabris","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"citrus","label":"Citrus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"clavibacter sp.","label":"Clavibacter sp.","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"colinus virginianus","label":"Colinus virginianus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"crassostrea virginica","label":"Crassostrea virginica","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"crithidia fasciculata","label":"Crithidia fasciculata","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"cutibacterium acnes","label":"Cutibacterium acnes","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"cyanobacteria","label":"Cyanobacteria","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"daphnia","label":"Daphnia","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"daphnia pulex","label":"Daphnia pulex","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"dermacoccus nishinomiyaensis","label":"Dermacoccus nishinomiyaensis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"diabrotica virgifera","label":"Diabrotica virgifera","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"diabrotica virgifera virgifera virus 1","label":"Diabrotica virgifera virgifera virus 1","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"d. discoideum","label":"Dictyostelium discoideum","imageSrc":"dicty.png","imageAlt":"D. discoideum","mod":"dictyBase","modLink":"http://dictybase.org","linkVariable":""},{"value":"diptera","label":"Diptera","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"dotocryptus bellicosus","label":"Dotocryptus bellicosus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"drechmeria coniospora","label":"Drechmeria coniospora","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"drosophila","label":"Drosophila","imageSrc":"drosophila.png","imageAlt":"Drosophila graphic by Zoe Zorn CC BY 4.0","mod":"FlyBase","modLink":"https://flybase.org/doi/","linkVariable":"doi"},{"value":"dryopteris campyloptera","label":"Dryopteris campyloptera","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"dryopteris expansa","label":"Dryopteris expansa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"dryopteris intermedia","label":"Dryopteris intermedia","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"dugesia dorotocephala","label":"Dugesia dorotocephala","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"elasmobranchii","label":"Elasmobranchii","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"embryophyta","label":"Embryophyta","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"enoploteuthis chunii","label":"Enoploteuthis chunii","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"enterobacter aerogenes","label":"Enterobacter aerogenes","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"enterococcus raffinosus","label":"Enterococcus raffinosus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"epichloë coenophiala","label":"Epichloë coenophiala","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"equus caballus","label":"Equus caballus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"erigeron sp","label":"Erigeron sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"eristalis","label":"Eristalis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"eruca vesicaria","label":"Eruca vesicaria","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"erwinia carotovora","label":"Erwinia carotovora","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"erythronium americanum","label":"Erythronium americanum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"escherichia coli","label":"Escherichia coli","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"eukaryota","label":"Eukaryotes","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"felis catus","label":"Felis catus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"francisella novicida","label":"Francisella novicida","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"francisella tularensis","label":"Francisella tularensis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"fraxinus americana","label":"Fraxinus americana","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"fucus distichus","label":"Fucus distichus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"fungi","label":"Fungi","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"gasteropelecus sp.","label":"Gasteropelecus sp.","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"geranium sp","label":"Geranium sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"girardia","label":"Girardia","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"glaucomys volans","label":"Glaucomys volans","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"glycine max","label":"Glycine max","imageSrc":"","imageAlt":"","mod":"Soybase","modLink":"https://soybase.org","linkVariable":""},{"value":"glyptemys insculpta","label":"Glyptemys insculpta","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"gossypium hirsutum","label":"Gossypium hirsutum","imageSrc":"","imageAlt":"","mod":"CottonGen","modLink":"https://www.cottongen.org/","linkVariable":""},{"value":"gromphadorhina portentosa","label":"Gromphadorhina portentosa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"gryllodes sigillatus","label":"Gryllodes sigillatus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"haliotis rufescens","label":"Haliotis rufescens","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"hepacivirus hominis","label":"Hepatitis C Virus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"herpes simplex virus type 1","label":"Herpes simplex virus type 1","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"human","label":"Human","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"human coronavirus oc43","label":"Human coronavirus OC43","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"hydra vulgaris","label":"Hydra vulgaris","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"hydropsyche sp","label":"Hydropsyche sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"hymenoptera","label":"Hymenoptera","imageSrc":"","imageAlt":"","mod":"Hymenoptera Genome Database","modLink":"https://hymenoptera.elsiklab.missouri.edu/","linkVariable":""},{"value":"hypochaeris radicata","label":"Hypochaeris radicata","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"hypodynerus vespiformis","label":"Hypodynerus vespiformis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"iflaviridae","label":"Iflaviridae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"iflavuris","label":"Iflavirus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ipomoea hederacea","label":"Ipomoea hederacea","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ischnomera","label":"Ischnomera","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ischnomera ruficollis","label":"Ischnomera ruficollis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"julidochromis marlieri","label":"Julidochromis marlieri","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"juniperus virginiana","label":"Juniperus virginiana","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"kluyveromyces marxianus","label":"Kluyveromyces marxianus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"l. casei","label":"L. casei","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lacticaseibacillus casei","label":"Lacticaseibacillus casei","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lactobacillus","label":"Lactobacillus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"larentiinae sp","label":"Larentiinae sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"laurus nobilis","label":"Laurus nobilis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lepidoptera","label":"Lepidoptera","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"leucanthemum vulgare","label":"Leucanthemum vulgare","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ligilactobacillus","label":"Ligilactobacillus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ligilactobacillus salivarius","label":"Ligilactobacillus salivarius","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"limosilactobacillus","label":"Limosilactobacillus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"linepithema humile","label":"Linepithema humile","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"liometopum occidentale","label":"Liometopum occidentale","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lolium arundinaceum","label":"Lolium arundinaceum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lontra longicaudis","label":"Lontra longicaudis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lumbriculus variegatus","label":"Lumbriculus variegatus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lumbricus terrestris","label":"Lumbricus terrestris","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lupinus polyphyllus","label":"Lupinus polyphyllus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lycorma delicatula","label":"Lycorma delicatula","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"lynx rufus","label":"Lynx rufus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"magnaporthe oryzae","label":"Magnaporthe oryzae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"mammalia","label":"Mammalia","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"manihot esculenta","label":"Manihot esculenta","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"medicago lupulina","label":"Medicago lupulina","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"meloidogyne","label":"Meloidogyne","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"mimus polyglottos","label":"Mimus polyglottos","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"bryophyta","label":"Mosses","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"mouse","label":"Mouse","imageSrc":"","imageAlt":"","mod":"MGI","modLink":"https://informatics.jax.org","linkVariable":""},{"value":"m. minutoides","label":"Mus minutoides","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"mycobacterium smegmatis","label":"Mycobacterium smegmatis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"nakaseomyces glabratus","label":"Nakaseomyces glabratus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"nauphoeta cinerea","label":"Nauphoeta cinerea","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"neurospora","label":"Neurospora","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"n. benthamiana","label":"Nicotiana benthamiana","imageSrc":"","imageAlt":"","mod":"Solgenomics Network","modLink":"https://solgenomics.net/organism/Nicotiana_benthamiana/genome","linkVariable":""},{"value":"nicotiana tabacum","label":"Nicotiana tabacum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"noctuidae","label":"Noctuidae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"noctuidae sp","label":"Noctuidae sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"nothobranchius furzeri","label":"Nothobranchius furzeri","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"onchocerca volvulus","label":"Onchocerca volvulus","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"orconectes virilis","label":"Orconectes virilis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ormia ochracea","label":"Ormia ochracea","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"o. sativa","label":"Oryza sativa","imageSrc":"","imageAlt":"","mod":"Gramene","modLink":"https://www.gramene.org/","linkVariable":""},{"value":"other","label":"Other","imageSrc":"","imageAlt":"","mod":null,"modLink":null,"linkVariable":null},{"value":"oxalis enneaphylla","label":"Oxalis enneaphylla","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"paenarthrobacter nicotinovorans","label":"Paenarthrobacter nicotinovorans","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"paenarthrobacter nicotinovorans","label":"Paenarthrobacter nicotinovorans","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pantoea","label":"Pantoea","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pantoea agglomerans","label":"Pantoea agglomerans","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"papaver sp","label":"Papaver sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"paramecium bursaria","label":"Paramecium bursaria","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"partitiviridae","label":"Partitiviridae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pelodiscus sinensis","label":"Pelodiscus sinensis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"perezia recurvata","label":"Perezia recurvata","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"petromyzon marinus","label":"Petromyzon marinus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"photinus pyralis","label":"Photinus pyralis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"photinus pyralis associated partiti-like virus","label":"Photinus pyralis associated partiti-like virus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"photinus pyralis iflavirus 1","label":"Photinus pyralis iflavirus 1","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"physcomitrium patens","label":"Physcomitrium patens","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pinus strobus","label":"Pinus strobus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pinus taeda","label":"Pinus taeda","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"platycheirus","label":"Platycheirus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"plectus sambesii","label":"Plectus sambesii","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pogonomyrmex occidentalis","label":"Pogonomyrmex occidentalis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"poncirus trifoliata","label":"Poncirus trifoliata","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"populus deltoides","label":"Populus deltoides","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"potato virus y","label":"Potato virus Y","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"primula magellanica","label":"Primula magellanica","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pristionchus pacificus","label":"Pristionchus pacificus","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"prunus persica","label":"Prunus persica","imageSrc":"","imageAlt":"","mod":"Genome Database for Rosaceae","modLink":"https://www.rosaceae.org/","linkVariable":""},{"value":"psalmopoeus iriminia","label":"Psalmopoeus iriminia","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pseudanabaena sp.","label":"Pseudanabaena sp.","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pseudomonas","label":"Pseudomonas","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pseudomonas aeruginosa","label":"Pseudomonas aeruginosa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pseudomonas glycinae","label":"Pseudomonas glycinae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pseudomonas putida","label":"Pseudomonas putida","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pseudomonas syringae","label":"Pseudomonas syringae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"pterophyllum scalare","label":"Pterophyllum scalare","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"python regius","label":"Python regius","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"quercus macrocarpa","label":"Quercus macrocarpa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ralstonia solanacearum","label":"Ralstonia solanacearum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ranitomeya imitator","label":"Ranitomeya imitator","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ranunculus peduncularis","label":"Ranunculus peduncularis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"rat","label":"Rat","imageSrc":"","imageAlt":"","mod":"RGD","modLink":"https://rgd.mcw.edu","linkVariable":""},{"value":"rheinheimera","label":"Rheinheimera","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ribes rubrum","label":"Ribes rubrum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"sars-cov-2","label":"SARS-CoV-2","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"s. cerevisiae","label":"Saccharomyces cerevisiae","imageSrc":"yeast.png","imageAlt":"Yeast graphic by Zoe Zorn CC BY 4.0","mod":"SGD","modLink":"https://yeastgenome.org","linkVariable":""},{"value":"saccharomyces paradoxus","label":"Saccharomyces paradoxus ","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"s. uvarum","label":"Saccharomyces uvarum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"schistosoma","label":"Schistosoma","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"schizosaccharomyces japonicus","label":"Schizosaccharomyces japonicus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"s. pombe","label":"Schizosaccharomyces pombe","imageSrc":"pombe.png","imageAlt":"Pombe graphic by Zoe Zorn © Caltech","mod":"PomBase","modLink":"https://www.pombase.org/reference/PMID:","linkVariable":"pmId"},{"value":"schmidtea mediterranea","label":"Schmidtea mediterranea","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"senecio sp","label":"Senecio sp","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"simocephalus","label":"Simocephalus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"siraitia grosvenorii","label":"Siraitia grosvenorii","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"solanum lycopersicum","label":"Solanum lycopersicum","imageSrc":"","imageAlt":"","mod":"Solgenomics Network","modLink":"https://solgenomics.net/organism/1/view/","linkVariable":""},{"value":"sorghum","label":"Sorghum","imageSrc":"","imageAlt":"","mod":"SorghumBase","modLink":"https://www.sorghumbase.org","linkVariable":""},{"value":"spiroplasma eriocheiris","label":"Spiroplasma eriocheiris","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"staphylococcus aureus","label":"Staphylococcus aureus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"staphylococcus epidermidis","label":"Staphylococcus epidermidis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"steinernema carpocapsae","label":"Steinernema carpocapsae","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"https://wormbase.org","linkVariable":""},{"value":"steinernema hermaphroditum","label":"Steinernema hermaphroditum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"stenotrophomonas geniculata","label":"Stenotrophomonas geniculata","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"stewartia floidana","label":"Stewartia floridana","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"streptococcus gordonii ","label":"Streptococcus gordonii ","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"streptococcus mutans","label":"Streptococcus mutans","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":" streptococcus pneumoniae","label":"Streptococcus pneumoniae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"s. purpuratus","label":"Strongylocentrotus purpuratus","imageSrc":"","imageAlt":"","mod":"Echinobase","modLink":"https://www.echinobase.org","linkVariable":""},{"value":"strongyloides ratti","label":"Strongyloides ratti","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"sulfolobus","label":"Sulfolobus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"symphoricarpos albus","label":"Symphoricarpos albus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"syncirsodes","label":"Syncirsodes","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"synechococcus elongatus","label":"Synechococcus elongatus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"syrphidae","label":"Syrphidae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"tarantobelus jeffdanielsi","label":"Tarantobelus jeffdanielsi","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"taraxacum officinale","label":"Taraxacum officinale","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"tatochila theodice","label":"Tatochila theodice","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"tetrahymena","label":"Tetrahymena","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"tetramorium immigrans","label":"Tetramorium immigrans","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"tomato brown rugose fruit virus","label":"ToBRFV","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"trachemys scripta","label":"Trachemys scripta","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"tribolium castaneum","label":"Tribolium castaneum","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"trichoptera","label":"Trichoptera","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"trichuris muris","label":"Trichuris muris","imageSrc":"","imageAlt":"","mod":"WormBase","modLink":"www.wormbase.org","linkVariable":""},{"value":"trifolium repens","label":"Trifolium repens","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"trypoxylus dichotomus","label":"Trypoxylus dichotomus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"tsuga canadensis","label":"Tsuga canadensis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"ulva expansa","label":"Ulva expansa","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"universal","label":"Universal","imageSrc":"","imageAlt":"","mod":null,"modLink":null,"linkVariable":null},{"value":"vargula hilgendorfii","label":"Vargula hilgendorfii","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"vespula vulgaris","label":"Vespula vulgaris","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"virus","label":"Virus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"watasenia scintillans","label":"Watasenia scintillans","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"wolbachia pipientis","label":"Wolbachia pipientis","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"xenopus","label":"Xenopus","imageSrc":"xenopus.png","imageAlt":"Xenopus graphic by Zoe Zorn CC BY 4.0","mod":"XenBase","modLink":"https://xenbase.org","linkVariable":""},{"value":"xenorhabdus griffiniae","label":"Xenorhabdus griffiniae","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"yramea cytheris","label":"Yramea cytheris","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"zaprionus indianus","label":"Zaprionus indianus","imageSrc":"","imageAlt":"","mod":"","modLink":"","linkVariable":""},{"value":"zea mays","label":"Zea mays","imageSrc":"","imageAlt":"","mod":"MaizeGDB","modLink":"https://www.maizegdb.org","linkVariable":""},{"value":"zebrafish","label":"Zebrafish","imageSrc":"zebrafish.png","imageAlt":"Zebrafish graphic by Zoe Zorn CC BY 4.0","mod":"ZFIN","modLink":"https://zfin.org","linkVariable":""}]}},"pageContext":{"id":"902f44d2-dc81-4999-a331-42d096db99c0","citedBy":[],"parsedCsv":{"csvHeader":[],"csvData":[]}}},
    "staticQueryHashes": ["2114697108"]}