Repository: UC-Davis-molecular-computing/scadnano-python-package (language: python)

Issue:
export newer Excel file format
Currently scadnano uses a library [xlwt](https://pypi.org/project/xlwt/) specifically for exporting to older Excel files ending in `.xls`, which once was all IDT's website could read for uploading plates described by Excel files.

Now IDT can read the newer format, meaning we can use a newer and easier-to-use package, for instance [openpyxl](https://pypi.org/project/openpyxl/): https://www.python-excel.org/. 


Discussion / hints:

Fix patch:
diff --git a/.github/workflows/docs-check.yml b/.github/workflows/docs-check.yml
index bb6f08d1..c865b081 100644
--- a/.github/workflows/docs-check.yml
+++ b/.github/workflows/docs-check.yml
@@ -1,21 +1,21 @@
-name: "Docs Check"
-on: pull_request
-
-jobs:
-  docs:
-    runs-on: ubuntu-latest
-    steps:
-    - uses: actions/checkout@v2.3.4
-    - name: Set up Python
-      uses: actions/setup-python@v2
-      with:
-          python-version: '3.x'
-    - name: Install Sphinx
-      run: |
-        python -m pip install --upgrade pip
-        pip install sphinx sphinx_rtd_theme
-    - name: Move to docs folder and build
-      run: |
-        cd doc
-        pwd
-        sphinx-build -T -E -W -b html . _build
+name: "Docs Check"
+on: pull_request
+
+jobs:
+  docs:
+    runs-on: ubuntu-latest
+    steps:
+      - uses: actions/checkout@v2.3.4
+      - name: Set up Python
+        uses: actions/setup-python@v2
+        with:
+          python-version: '3.x'
+      - name: Install Sphinx
+        run: |
+          python -m pip install --upgrade pip
+          pip install sphinx sphinx_rtd_theme openpyxl
+      - name: Move to docs folder and build
+        run: |
+          cd doc
+          pwd
+          sphinx-build -T -E -W -b html . _build
diff --git a/README.md b/README.md
index 58ae2708..5c0c63e7 100644
--- a/README.md
+++ b/README.md
@@ -1,313 +1,315 @@
-# scadnano Python package
-
-![Python package](https://github.com/UC-Davis-molecular-computing/scadnano-python-package/workflows/Python%20package/badge.svg)
-[![Documentation Status](https://readthedocs.org/projects/scadnano-python-package/badge/?version=latest)](https://scadnano-python-package.readthedocs.io/en/latest/?badge=latest)
-
-[scadnano](http://scadnano.org) ("scriptable-cadnano") is a program for designing synthetic DNA structures such as DNA origami. 
-The scadnano Python package 
-([source code repository here](https://github.com/UC-Davis-molecular-computing/scadnano-python-package)) 
-is a library for programmatically creating and editing these nanostructures.
-The scadnano project is developed and maintained by the UC Davis Molecular Computing group.
-Note that [cadnano](https://cadnano.org) is a separate project, developed and maintained by the [Douglas lab](https://bionano.ucsf.edu/) at UCSF.
-
-If you find scadnano useful in a scientific project, please cite its associated paper:
-
-> scadnano: A browser-based, scriptable tool for designing DNA nanostructures.  
-  David Doty, Benjamin L Lee, and Tristan Stérin.  
-  DNA 2020: *Proceedings of the 26th International Conference on DNA Computing and Molecular Programming*  
-  [ [paper](https://doi.org/10.4230/LIPIcs.DNA.2020.9) | [BibTeX](https://web.cs.ucdavis.edu/~doty/papers/scadnano.bib) ]
-
-*Note:* If you are reading this on the PyPI website, some of the links below won't work. Many are relative links intended to be read on the [GitHub README page](https://github.com/UC-Davis-molecular-computing/scadnano-python-package#readme).
-
-
-## Table of contents
-
-* [Overview](#overview)
-* [Reporting issues](#reporting-issues)
-* [Installation](#installation)
-* [Example](#example)
-* [Abbreviated syntax with chained methods](#abbreviated-syntax-with-chained-methods)
-* [StrandBuilder object for iteratively building up strands with many domains](#strandbuilder-object-for-iteratively-building-up-strands-with-many-domains)
-* [Tutorial](#tutorial)
-* [API documentation](#api-documentation)
-* [Other examples](#other-examples)
-* [Contributing](#contributing)
-
-## Overview
-
-This package is used to write Python scripts outputting `.sc` files readable by [scadnano](https://scadnano.org), a web application useful for displaying and manually editing these structures. The purpose of this module is to help automate some of the task of creating DNA designs, as well as making large-scale changes to them that are easier to describe programmatically than to do by hand in the scadnano web interface.
-
-We will try to announce breaking changes (and possibly new features) under the [GitHub releases page](https://github.com/UC-Davis-molecular-computing/scadnano-python-package/releases). The version numbers in this Python library repo and the [web interface repo](https://github.com/UC-Davis-molecular-computing/scadnano/releases) won't always advance at the same time, and sometimes a feature is supported in one before the other.
-
-Following [semantic versioning](https://semver.org/), version numbers are major.minor.patch, i.e., version 0.9.2 has minor version number 9. Prior to version 1.0.0, when a breaking change is made, this will increment the minor version (for example, going from 0.9.4 to 0.10.0). After version 1.0.0, breaking changes will increment the major version.
-
-
-
-
-
-## Reporting issues
-
-Please report issues in the web interface at the [scadnano web interface GitHub repository](https://github.com/UC-Davis-molecular-computing/scadnano/issues), and report issues in the Python scripting library at the [scadnano Python package GitHub repository](https://github.com/UC-Davis-molecular-computing/scadnano-python-package/issues).
-
-
-
-
-
-
-## Installation
-
-Short version: type this at the command line:
-
-```console
-pip install scadnano
-```
-
-Read below for troubleshooting suggestions if that didn't work.
-
-### Getting Python
-The scadnano Python package requires Python version 3.7 or later (with a workaround available for version 3.6, but not for any lower version). 
-
-To check your current version of Python, open a command line and type
-
-```
-python --version
-```
-
-If it is version 2.7 or below, type
-
-```
-python3 --version
-```
-
-If that fails, or reports Python version 3.5 or below, you will have to install a later version of Python (recommended at least 3.7). Follow [this link](https://www.python.org/downloads/) to install Python. You may also use an alternative Python distribution, such as [Anaconda](https://www.anaconda.com/products/individual#Downloads).
-
-If you are using Python 3.6 and do not wish to upgrade, you can install a package providing the required features: the [dataclasses backport](https://pypi.org/project/dataclasses/); see `pip` instructions below to see how to install it.
-Python 3.7 provides the
-[dataclasses module](https://docs.python.org/3/library/dataclasses.html) automatically.
-
-
-
-### Installing the scadnano Python package
-
-Once Python is installed (and the dataclasses backport if you have Python version 3.6), there are two ways you can install the scadnano Python package:
-
-1. pip (recommended)
-
-    Use [pip](https://pypi.org/project/pip/) to install the package by executing the following at the command line:
-    ```console
-    pip install scadnano
-    ```
-
-    If it worked, you should be able to open a Python interpreter and import the scadnano module:
-
-    ```console
-    Python 3.7.9 (default, Aug 31 2020, 17:10:11) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
-    Type "help", "copyright", "credits" or "license" for more information.
-    >>> import scadnano as sc
-    >>> print(sc.Domain(helix=1, forward=True, start=0, end=8))
-    Domain(, helix=1, forward=True, start=0, end=8)
-    >>>
-    ```
-
-    ### Troubleshooting
-    If the above does not work for you, here are some things to try.
-
-    If your Python installation does not already have pip installed, you may have to install it. 
-    Executing [this Python script](https://bootstrap.pypa.io/get-pip.py) should work; 
-    see also 
-    https://docs.python.org/3/installing/index.html 
-    or 
-    https://www.liquidweb.com/kb/install-pip-windows/.
-
-    Once pip is installed, or if you believe it is already installed, check your version of `pip` by typing 
-    ```
-    pip --version
-    ```
-    It should say something like 
-    ```
-    pip 19.3.1 from ...lib\site-packages\pip (python 3.8)
-    ```
-    If the version of Python at the end is Python 3.7 or higher, you are good. If it is version 2.7 or lower, type
-    ```
-    pip3 --version
-    ```
-    If that works and shows Python 3.7 or higher, you are good, but you should type `pip3` in the subsequent instructions instead of `pip`.
-    
-    If it shows Python 3.6, install the [dataclasses backport module](https://pypi.org/project/dataclasses/) via
-    ```
-    pip install dataclasses
-    ```
-    If it shows Python 3.5 or lower, then you will need to upgrade your Python version (recommended Python 3.7 or higher).
-
-    
-2. download
-
-    As a simple alternative (in case you run into trouble using pip), you can download and place the following files in your [PYTHONPATH](https://docs.python.org/3/using/cmdline.html#envvar-PYTHONPATH) (e.g., in the same directory as the scripts you are running). **Note:** If you are reading this on the PyPI website or anywhere other than GitHub, the links below won't work. They are relative links intended to be read on the [GitHub README page](https://github.com/UC-Davis-molecular-computing/scadnano-python-package#readme).
-
-    * *required*: [scadnano.py](scadnano/scadnano.py) 
-    * *optional*: [modifications.py](scadnano/modifications.py); This contains some common DNA modifications such as biotin and Cy3. 
-    * *optional*: [origami_rectangle.py](scadnano/origami_rectangle.py); This can help create origami rectangles, but it is not necessary to use scadnano.
-    
-    To download them, right-click on "Raw" near the top and select (in Chrome or Firefox) "Save link as...":
-    ![](images/download_raw_screenshot.png)
-    
-    The scadnano package uses the Python package [xlwt](https://pypi.org/project/xlwt/) to write Excel files, so xlwt must be installed in order to call the method [`Design.write_idt_plate_excel_file()`](https://scadnano-python-package.readthedocs.io/#scadnano.Design.write_idt_plate_excel_file) to export an Excel file with DNA sequences. To install xlwt, type `pip install xlwt` at the command line. (If you instead use pip to install the scadnano package, xlwt will be automatically installed.)
-
-
-
-
-
-
-
-## Example
-
-Consider the following design:
-
-![](https://raw.githubusercontent.com/UC-Davis-molecular-computing/scadnano/master/doc-images/screenshot-initial.png)
-
-The following Python script produces this design.
-
-```python
-import scadnano as sc
-import modifications as mod
-
-
-def create_design() -> sc.Design:
-    # helices
-    helices = [sc.Helix(max_offset=48), sc.Helix(max_offset=48)]
-
-    # left staple
-    stap_left_domain1 = sc.Domain(helix=1, forward=True, start=8, end=24)
-    stap_left_domain0 = sc.Domain(helix=0, forward=False, start=8, end=24)
-    stap_left = sc.Strand(domains=[stap_left_domain1, stap_left_domain0])
-
-    # right staple
-    stap_right_domain0 = sc.Domain(helix=0, forward=False, start=24, end=40)
-    stap_right_domain1 = sc.Domain(helix=1, forward=True, start=24, end=40)
-    stap_right = sc.Strand(domains=[stap_right_domain0, stap_right_domain1])
-    stap_right.set_modification_5p(mod.biotin_5p)
-
-    # scaffold
-    scaf_domain1_left = sc.Domain(helix=1, forward=False, start=8, end=24)
-    scaf_domain0 = sc.Domain(helix=0, forward=True, start=8, end=40)
-    loopout = sc.Loopout(length=3)
-    scaf_domain1_right = sc.Domain(helix=1, forward=False, start=24, end=40)
-    scaf = sc.Strand(domains=[scaf_domain1_left, scaf_domain0, loopout, scaf_domain1_right], is_scaffold=True)
-
-    # whole design
-    design = sc.Design(helices=helices, strands=[scaf, stap_left, stap_right], grid=sc.square)
-
-    # deletions and insertions added to design are added to both strands on a helix
-    design.add_deletion(helix=1, offset=20)
-    design.add_insertion(helix=0, offset=14, length=1)
-    design.add_insertion(helix=0, offset=26, length=2)
-
-    # also assigns complement to strands other than scaf bound to it
-    design.assign_dna(scaf, 'AACGT' * 18)
-
-    return design
-
-
-if __name__ == '__main__':
-    design = create_design()
-    design.write_scadnano_file(directory='output_designs')
-```
-
-Running the code above produces a `.sc` file that, if loaded into scadnano, should appear as in the screenshot above. The [web interface README](https://github.com/UC-Davis-molecular-computing/scadnano/blob/master/README.md#terminology) explains many of the terms used in the code (domain, helix, loopout, insertion, etc.).
-
-
-## Abbreviated syntax with chained methods
-Instead of explicitly creating variables and objects representing each domain in each strand, there is a shorter syntax using chained method calls. Instead of the above, create only the helices first, then create the Design. Then strands can be added using a shorter syntax, to describe how to draw the strand starting at the 5' end and moving to the 3' end. The following is a modified version of the above `create_design` function using these chained methods:
-
-```python
-def create_design() -> sc.Design:
-    # helices
-    helices = [sc.Helix(max_offset=48), sc.Helix(max_offset=48)]
-
-    # whole design
-    design = sc.Design(helices=helices, grid=sc.square)
-
-    # for absolute offsets, call method "to"
-    # left staple
-    design.draw_strand(1, 8).to(24).cross(0).to(8)
-
-    # for relative offsets, call method "move"
-    # right staple
-    design.draw_strand(0, 40).move(-16).cross(1).move(16).with_modification_5p(mod.biotin_5p)
-
-    # scaffold
-    design.draw_strand(1, 24).move(-16).cross(0).move(32).loopout(1, 3).move(-16).as_scaffold()
-
-    # deletions and insertions added to design are added to both strands on a helix
-    design.add_deletion(helix=1, offset=20)
-    design.add_insertion(helix=0, offset=14, length=1)
-    design.add_insertion(helix=0, offset=26, length=2)
-
-    # also assigns complement to strands other than scaf bound to it
-    design.assign_dna(design.scaffold, 'AACGT' * 18)
-
-    return design
-```
-
-Documentation is available in the [API docs](https://scadnano-python-package.readthedocs.io/en/latest/#scadnano.Design.draw_strand).
-
-
-## StrandBuilder object for iteratively building up strands with many domains
-
-The method [`Design.draw_strand`](https://scadnano-python-package.readthedocs.io/en/latest/#scadnano.Design.draw_strand), as well as all those that follow it in a chained method call (e.g., `move`, `cross`, etc.) all return an instance of the class [`StrandBuilder`](https://scadnano-python-package.readthedocs.io/en/latest/#scadnano.StrandBuilder).
-Above, that `StrandBuilder` instance is anonymous, i.e., never assigned to a variable. 
-Some long strands may be easier to specify with loops, for example an M13 scaffold strand for an origami. 
-If so, then to use the above methods, assign the `StrandBuilder` object to a variable, and call the relevant methods on that object to build up the strand in each iteration of the loop. 
-For example, the following modification of the above `create_design` function creates a linear scaffold strand that zig-zags back and forth across 32 helices:
-
-```python
-def create_design() -> sc.Design:
-    num_helices = 32
-    helices = [sc.Helix(max_offset=200) for _ in range(num_helices)]
-    design = sc.Design(helices=helices, grid=sc.square)
-    strand_builder = design.draw_strand(0, 0)
-    for helix in range(num_helices):
-        # move forward if on an even helix, otherwise move in reverse
-        move_distance = 200 if helix % 2 == 0 else -200
-        strand_builder.move(move_distance)
-        if helix < 31: # crossover to next helix, unless it's the last helix
-            strand_builder.cross(helix + 1)
-    strand_builder.as_scaffold()
-    return design
-```
-
-
-
-
-
-
-## API Documentation
-
-Online documentation of the package API (which classes, methods, functions, and constants are provided by the package) is located here:
-https://scadnano-python-package.readthedocs.io
-
-
-
-
-
-## Tutorial
-
-A [tutorial](https://github.com/UC-Davis-molecular-computing/scadnano-python-package/blob/master/tutorial/tutorial.md) shows how to create a "standard" 24-helix DNA origami rectangle using the scadnano Python package.
-
-
-
-
-
-## Other examples
-
-*Note:* If you are reading this on the PyPI website, the links below won't work. They are relative links intended to be read on the [GitHub README page](https://github.com/UC-Davis-molecular-computing/scadnano-python-package#readme).
-
-Several example scripts are located in the 
-[examples/](examples) subfolder. 
-Their output is contained in the 
-[examples/output_designs/](examples/output_designs) subfolder.
-
-
-
-## Contributing
+# scadnano Python package
+
+![Python package](https://github.com/UC-Davis-molecular-computing/scadnano-python-package/workflows/Python%20package/badge.svg)
+[![Documentation Status](https://readthedocs.org/projects/scadnano-python-package/badge/?version=latest)](https://scadnano-python-package.readthedocs.io/en/latest/?badge=latest)
+
+[scadnano](http://scadnano.org) ("scriptable-cadnano") is a program for designing synthetic DNA structures such as DNA origami. 
+The scadnano Python package 
+([source code repository here](https://github.com/UC-Davis-molecular-computing/scadnano-python-package)) 
+is a library for programmatically creating and editing these nanostructures.
+The scadnano project is developed and maintained by the UC Davis Molecular Computing group.
+Note that [cadnano](https://cadnano.org) is a separate project, developed and maintained by the [Douglas lab](https://bionano.ucsf.edu/) at UCSF.
+
+If you find scadnano useful in a scientific project, please cite its associated paper:
+
+> scadnano: A browser-based, scriptable tool for designing DNA nanostructures.  
+  David Doty, Benjamin L Lee, and Tristan Stérin.  
+  DNA 2020: *Proceedings of the 26th International Conference on DNA Computing and Molecular Programming*  
+  [ [paper](https://doi.org/10.4230/LIPIcs.DNA.2020.9) | [BibTeX](https://web.cs.ucdavis.edu/~doty/papers/scadnano.bib) ]
+
+*Note:* If you are reading this on the PyPI website, some of the links below won't work. Many are relative links intended to be read on the [GitHub README page](https://github.com/UC-Davis-molecular-computing/scadnano-python-package#readme).
+
+
+## Table of contents
+
+* [Overview](#overview)
+* [Reporting issues](#reporting-issues)
+* [Installation](#installation)
+* [Example](#example)
+* [Abbreviated syntax with chained methods](#abbreviated-syntax-with-chained-methods)
+* [StrandBuilder object for iteratively building up strands with many domains](#strandbuilder-object-for-iteratively-building-up-strands-with-many-domains)
+* [Tutorial](#tutorial)
+* [API documentation](#api-documentation)
+* [Other examples](#other-examples)
+* [Contributing](#contributing)
+
+## Overview
+
+This package is used to write Python scripts outputting `.sc` files readable by [scadnano](https://scadnano.org), a web application useful for displaying and manually editing these structures. The purpose of this module is to help automate some of the task of creating DNA designs, as well as making large-scale changes to them that are easier to describe programmatically than to do by hand in the scadnano web interface.
+
+We will try to announce breaking changes (and possibly new features) under the [GitHub releases page](https://github.com/UC-Davis-molecular-computing/scadnano-python-package/releases). The version numbers in this Python library repo and the [web interface repo](https://github.com/UC-Davis-molecular-computing/scadnano/releases) won't always advance at the same time, and sometimes a feature is supported in one before the other.
+
+Following [semantic versioning](https://semver.org/), version numbers are major.minor.patch, i.e., version 0.9.2 has minor version number 9. Prior to version 1.0.0, when a breaking change is made, this will increment the minor version (for example, going from 0.9.4 to 0.10.0). After version 1.0.0, breaking changes will increment the major version.
+
+
+
+
+
+## Reporting issues
+
+Please report issues in the web interface at the [scadnano web interface GitHub repository](https://github.com/UC-Davis-molecular-computing/scadnano/issues), and report issues in the Python scripting library at the [scadnano Python package GitHub repository](https://github.com/UC-Davis-molecular-computing/scadnano-python-package/issues).
+
+
+
+
+
+
+## Installation
+
+Short version: type this at the command line:
+
+```console
+pip install scadnano
+```
+
+Read below for troubleshooting suggestions if that didn't work.
+
+### Getting Python
+The scadnano Python package requires Python version 3.7 or later (with a workaround available for version 3.6, but not for any lower version). 
+
+To check your current version of Python, open a command line and type
+
+```
+python --version
+```
+
+If it is version 2.7 or below, type
+
+```
+python3 --version
+```
+
+If that fails, or reports Python version 3.5 or below, you will have to install a later version of Python (recommended at least 3.7). Follow [this link](https://www.python.org/downloads/) to install Python. You may also use an alternative Python distribution, such as [Anaconda](https://www.anaconda.com/products/individual#Downloads).
+
+If you are using Python 3.6 and do not wish to upgrade, you can install a package providing the required features: the [dataclasses backport](https://pypi.org/project/dataclasses/); see `pip` instructions below to see how to install it.
+Python 3.7 provides the
+[dataclasses module](https://docs.python.org/3/library/dataclasses.html) automatically.
+
+
+
+### Installing the scadnano Python package
+
+Once Python is installed (and the dataclasses backport if you have Python version 3.6), there are two ways you can install the scadnano Python package:
+
+1. pip (recommended)
+
+    Use [pip](https://pypi.org/project/pip/) to install the package by executing the following at the command line:
+    ```console
+    pip install scadnano
+    ```
+
+    If it worked, you should be able to open a Python interpreter and import the scadnano module:
+
+    ```console
+    Python 3.7.9 (default, Aug 31 2020, 17:10:11) [MSC v.1916 64 bit (AMD64)] :: Anaconda, Inc. on win32
+    Type "help", "copyright", "credits" or "license" for more information.
+    >>> import scadnano as sc
+    >>> print(sc.Domain(helix=1, forward=True, start=0, end=8))
+    Domain(, helix=1, forward=True, start=0, end=8)
+    >>>
+    ```
+
+    ### Troubleshooting
+    If the above does not work for you, here are some things to try.
+
+    If your Python installation does not already have pip installed, you may have to install it. 
+    Executing [this Python script](https://bootstrap.pypa.io/get-pip.py) should work; 
+    see also 
+    https://docs.python.org/3/installing/index.html 
+    or 
+    https://www.liquidweb.com/kb/install-pip-windows/.
+
+    Once pip is installed, or if you believe it is already installed, check your version of `pip` by typing 
+    ```
+    pip --version
+    ```
+    It should say something like 
+    ```
+    pip 19.3.1 from ...lib\site-packages\pip (python 3.8)
+    ```
+    If the version of Python at the end is Python 3.7 or higher, you are good. If it is version 2.7 or lower, type
+    ```
+    pip3 --version
+    ```
+    If that works and shows Python 3.7 or higher, you are good, but you should type `pip3` in the subsequent instructions instead of `pip`.
+    
+    If it shows Python 3.6, install the [dataclasses backport module](https://pypi.org/project/dataclasses/) via
+    ```
+    pip install dataclasses
+    ```
+    If it shows Python 3.5 or lower, then you will need to upgrade your Python version (recommended Python 3.7 or higher).
+
+    
+2. download
+
+    As a simple alternative (in case you run into trouble using pip), you can simply download the scadnano.py file. However, you need to first install two packages that are required by scadnano: Install [openpyxl](https://pypi.org/project/openpyxl/) and [tabulate](https://pypi.org/project/tabulate/) by typing the following at the command line: `pip install openpyxl tabulate`.
+    
+    Download and place the following files in your [PYTHONPATH](https://docs.python.org/3/using/cmdline.html#envvar-PYTHONPATH) (e.g., in the same directory as the scripts you are running). **Note:** If you are reading this on the PyPI website or anywhere other than GitHub, the links below won't work. They are relative links intended to be read on the [GitHub README page](https://github.com/UC-Davis-molecular-computing/scadnano-python-package#readme).
+
+    - *required*: [scadnano.py](scadnano/scadnano.py) 
+    - *optional*: [modifications.py](scadnano/modifications.py); This contains some common DNA modifications such as biotin and Cy3. 
+    - *optional*: [origami_rectangle.py](scadnano/origami_rectangle.py); This can help create origami rectangles, but it is not necessary to use scadnano.
+    
+    To download them, right-click on "Raw" near the top and select (in Chrome or Firefox) "Save link as...":
+    ![](images/download_raw_screenshot.png)
+    
+    The scadnano package uses the Python package [xlwt](https://pypi.org/project/xlwt/) to write Excel files, so xlwt must be installed in order to call the method [`Design.write_idt_plate_excel_file()`](https://scadnano-python-package.readthedocs.io/#scadnano.Design.write_idt_plate_excel_file) to export an Excel file with DNA sequences. To install xlwt, type `pip install xlwt` at the command line. (If you instead use pip to install the scadnano package, xlwt will be automatically installed.)
+
+
+
+
+
+
+
+## Example
+
+Consider the following design:
+
+![](https://raw.githubusercontent.com/UC-Davis-molecular-computing/scadnano/master/doc-images/screenshot-initial.png)
+
+The following Python script produces this design.
+
+```python
+import scadnano as sc
+import modifications as mod
+
+
+def create_design() -> sc.Design:
+    # helices
+    helices = [sc.Helix(max_offset=48), sc.Helix(max_offset=48)]
+
+    # left staple
+    stap_left_domain1 = sc.Domain(helix=1, forward=True, start=8, end=24)
+    stap_left_domain0 = sc.Domain(helix=0, forward=False, start=8, end=24)
+    stap_left = sc.Strand(domains=[stap_left_domain1, stap_left_domain0])
+
+    # right staple
+    stap_right_domain0 = sc.Domain(helix=0, forward=False, start=24, end=40)
+    stap_right_domain1 = sc.Domain(helix=1, forward=True, start=24, end=40)
+    stap_right = sc.Strand(domains=[stap_right_domain0, stap_right_domain1])
+    stap_right.set_modification_5p(mod.biotin_5p)
+
+    # scaffold
+    scaf_domain1_left = sc.Domain(helix=1, forward=False, start=8, end=24)
+    scaf_domain0 = sc.Domain(helix=0, forward=True, start=8, end=40)
+    loopout = sc.Loopout(length=3)
+    scaf_domain1_right = sc.Domain(helix=1, forward=False, start=24, end=40)
+    scaf = sc.Strand(domains=[scaf_domain1_left, scaf_domain0, loopout, scaf_domain1_right], is_scaffold=True)
+
+    # whole design
+    design = sc.Design(helices=helices, strands=[scaf, stap_left, stap_right], grid=sc.square)
+
+    # deletions and insertions added to design are added to both strands on a helix
+    design.add_deletion(helix=1, offset=20)
+    design.add_insertion(helix=0, offset=14, length=1)
+    design.add_insertion(helix=0, offset=26, length=2)
+
+    # also assigns complement to strands other than scaf bound to it
+    design.assign_dna(scaf, 'AACGT' * 18)
+
+    return design
+
+
+if __name__ == '__main__':
+    design = create_design()
+    design.write_scadnano_file(directory='output_designs')
+```
+
+Running the code above produces a `.sc` file that, if loaded into scadnano, should appear as in the screenshot above. The [web interface README](https://github.com/UC-Davis-molecular-computing/scadnano/blob/master/README.md#terminology) explains many of the terms used in the code (domain, helix, loopout, insertion, etc.).
+
+
+## Abbreviated syntax with chained methods
+Instead of explicitly creating variables and objects representing each domain in each strand, there is a shorter syntax using chained method calls. Instead of the above, create only the helices first, then create the Design. Then strands can be added using a shorter syntax, to describe how to draw the strand starting at the 5' end and moving to the 3' end. The following is a modified version of the above `create_design` function using these chained methods:
+
+```python
+def create_design() -> sc.Design:
+    # helices
+    helices = [sc.Helix(max_offset=48), sc.Helix(max_offset=48)]
+
+    # whole design
+    design = sc.Design(helices=helices, grid=sc.square)
+
+    # for absolute offsets, call method "to"
+    # left staple
+    design.draw_strand(1, 8).to(24).cross(0).to(8)
+
+    # for relative offsets, call method "move"
+    # right staple
+    design.draw_strand(0, 40).move(-16).cross(1).move(16).with_modification_5p(mod.biotin_5p)
+
+    # scaffold
+    design.draw_strand(1, 24).move(-16).cross(0).move(32).loopout(1, 3).move(-16).as_scaffold()
+
+    # deletions and insertions added to design are added to both strands on a helix
+    design.add_deletion(helix=1, offset=20)
+    design.add_insertion(helix=0, offset=14, length=1)
+    design.add_insertion(helix=0, offset=26, length=2)
+
+    # also assigns complement to strands other than scaf bound to it
+    design.assign_dna(design.scaffold, 'AACGT' * 18)
+
+    return design
+```
+
+Documentation is available in the [API docs](https://scadnano-python-package.readthedocs.io/en/latest/#scadnano.Design.draw_strand).
+
+
+## StrandBuilder object for iteratively building up strands with many domains
+
+The method [`Design.draw_strand`](https://scadnano-python-package.readthedocs.io/en/latest/#scadnano.Design.draw_strand), as well as all those that follow it in a chained method call (e.g., `move`, `cross`, etc.) all return an instance of the class [`StrandBuilder`](https://scadnano-python-package.readthedocs.io/en/latest/#scadnano.StrandBuilder).
+Above, that `StrandBuilder` instance is anonymous, i.e., never assigned to a variable. 
+Some long strands may be easier to specify with loops, for example an M13 scaffold strand for an origami. 
+If so, then to use the above methods, assign the `StrandBuilder` object to a variable, and call the relevant methods on that object to build up the strand in each iteration of the loop. 
+For example, the following modification of the above `create_design` function creates a linear scaffold strand that zig-zags back and forth across 32 helices:
+
+```python
+def create_design() -> sc.Design:
+    num_helices = 32
+    helices = [sc.Helix(max_offset=200) for _ in range(num_helices)]
+    design = sc.Design(helices=helices, grid=sc.square)
+    strand_builder = design.draw_strand(0, 0)
+    for helix in range(num_helices):
+        # move forward if on an even helix, otherwise move in reverse
+        move_distance = 200 if helix % 2 == 0 else -200
+        strand_builder.move(move_distance)
+        if helix < 31: # crossover to next helix, unless it's the last helix
+            strand_builder.cross(helix + 1)
+    strand_builder.as_scaffold()
+    return design
+```
+
+
+
+
+
+
+## API Documentation
+
+Online documentation of the package API (which classes, methods, functions, and constants are provided by the package) is located here:
+https://scadnano-python-package.readthedocs.io
+
+
+
+
+
+## Tutorial
+
+A [tutorial](https://github.com/UC-Davis-molecular-computing/scadnano-python-package/blob/master/tutorial/tutorial.md) shows how to create a "standard" 24-helix DNA origami rectangle using the scadnano Python package.
+
+
+
+
+
+## Other examples
+
+*Note:* If you are reading this on the PyPI website, the links below won't work. They are relative links intended to be read on the [GitHub README page](https://github.com/UC-Davis-molecular-computing/scadnano-python-package#readme).
+
+Several example scripts are located in the 
+[examples/](examples) subfolder. 
+Their output is contained in the 
+[examples/output_designs/](examples/output_designs) subfolder.
+
+
+
+## Contributing
 If you wish to contribute to scadnano, please see the [CONTRIBUTING document](CONTRIBUTING.md) to contribute to the scadnano Python package. There is also a [CONTRIBUTING document](https://github.com/UC-Davis-molecular-computing/scadnano/blob/master/CONTRIBUTING.md) for the web interface.
\ No newline at end of file
diff --git a/examples/idt-plates-explicit.py b/examples/idt-plates-explicit.py
index ff3b5831..eb23cae4 100644
--- a/examples/idt-plates-explicit.py
+++ b/examples/idt-plates-explicit.py
@@ -3,6 +3,7 @@
 ROWS = ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H']
 COLS = list(range(1, 13))
 
+
 def create_design() -> sc.Design:
     num_strands = 208
     start = 0
@@ -11,7 +12,7 @@ def create_design() -> sc.Design:
     row_idx = 0
     col_idx = 0
 
-    for s in range(1, num_strands+1):
+    for s in range(1, num_strands + 1):
         ss_f = sc.Domain(helix=0, forward=True, start=start, end=start + 10)
         ss_r = sc.Domain(helix=1, forward=False, start=start, end=start + 10)
 
@@ -44,7 +45,7 @@ def main() -> None:
     design = create_design()
     design.write_scadnano_file(directory='output_designs')
     design.write_idt_bulk_input_file(directory='idt')
-    design.write_idt_plate_excel_file(directory='idt', use_default_plates=False)
+    design.write_idt_plate_excel_file(directory='idt', use_default_plates=False, only_strands_with_idt=True)
 
 
 if __name__ == '__main__':
diff --git a/examples/idt/idt-plates-explicit.xls b/examples/idt/idt-plates-explicit.xls
deleted file mode 100644
index ee65bffc..00000000
Binary files a/examples/idt/idt-plates-explicit.xls and /dev/null differ
diff --git a/examples/idt/idt-plates-explicit.xlsx b/examples/idt/idt-plates-explicit.xlsx
new file mode 100644
index 00000000..4a830b5c
Binary files /dev/null and b/examples/idt/idt-plates-explicit.xlsx differ
diff --git a/examples/output_designs/idt-plates-explicit.sc b/examples/output_designs/idt-plates-explicit.sc
index 24c754a5..041260ef 100644
--- a/examples/output_designs/idt-plates-explicit.sc
+++ b/examples/output_designs/idt-plates-explicit.sc
@@ -1,2099 +1,2099 @@
-{
-  "version": "0.15.0",
-  "grid": "square",
-  "helices": [
-    {"grid_position": [0, 0]},
-    {"grid_position": [0, 1]}
-  ],
-  "strands": [
-    {
-      "name": "staple1",
-      "color": "#f74308",
-      "sequence": "TATTATAGTCTTACCCTGAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 0, "end": 10},
-        {"helix": 1, "forward": false, "start": 0, "end": 10}
-      ]
-    },
-    {
-      "name": "staple2",
-      "color": "#57bb00",
-      "sequence": "AGAAGCAAAGAATCAGGTCT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 10, "end": 20},
-        {"helix": 1, "forward": false, "start": 10, "end": 20}
-      ]
-    },
-    {
-      "name": "staple3",
-      "color": "#888888",
-      "sequence": "CGGATTGCATATAAATCAAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 20, "end": 30},
-        {"helix": 1, "forward": false, "start": 20, "end": 30}
-      ]
-    },
-    {
-      "name": "staple4",
-      "color": "#32b86c",
-      "sequence": "CAAAAAGATTGAGAATGACC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 30, "end": 40},
-        {"helix": 1, "forward": false, "start": 30, "end": 40}
-      ]
-    },
-    {
-      "name": "staple5",
-      "color": "#333333",
-      "sequence": "AAGAGGAAGCTTCAGAAAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 40, "end": 50},
-        {"helix": 1, "forward": false, "start": 40, "end": 50}
-      ]
-    },
-    {
-      "name": "staple6",
-      "color": "#320096",
-      "sequence": "CCGAAAGACTCTTTAAACAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 50, "end": 60},
-        {"helix": 1, "forward": false, "start": 50, "end": 60}
-      ]
-    },
-    {
-      "name": "staple7",
-      "color": "#03b6a2",
-      "sequence": "TCAAATATCGCCCTCAAATG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 60, "end": 70},
-        {"helix": 1, "forward": false, "start": 60, "end": 70}
-      ]
-    },
-    {
-      "name": "staple8",
-      "color": "#7300de",
-      "sequence": "CGTTTTAATTCATTGAATCC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 70, "end": 80},
-        {"helix": 1, "forward": false, "start": 70, "end": 80}
-      ]
-    },
-    {
-      "name": "staple9",
-      "color": "#aaaa00",
-      "sequence": "CGAGCTTCAACATAAATATT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 80, "end": 90},
-        {"helix": 1, "forward": false, "start": 80, "end": 90}
-      ]
-    },
-    {
-      "name": "staple10",
-      "color": "#b8056c",
-      "sequence": "AGCGAACCAGGCGGAATCGT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 90, "end": 100},
-        {"helix": 1, "forward": false, "start": 90, "end": 100}
-      ]
-    },
-    {
-      "name": "staple11",
-      "color": "#007200",
-      "sequence": "ACCGGAAGCAGTCCAATACT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 100, "end": 110},
-        {"helix": 1, "forward": false, "start": 100, "end": 110}
-      ]
-    },
-    {
-      "name": "staple12",
-      "color": "#cc0000",
-      "sequence": "AACTCCAACAACTGGATAGC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 110, "end": 120},
-        {"helix": 1, "forward": false, "start": 110, "end": 120}
-      ]
-    },
-    {
-      "name": "staple13",
-      "color": "#f7931e",
-      "sequence": "GGTCAGGATTAAATGTTTAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 120, "end": 130},
-        {"helix": 1, "forward": false, "start": 120, "end": 130}
-      ]
-    },
-    {
-      "name": "staple14",
-      "color": "#f74308",
-      "sequence": "AGAGAGTACCGGTAATAGTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 130, "end": 140},
-        {"helix": 1, "forward": false, "start": 130, "end": 140}
-      ]
-    },
-    {
-      "name": "staple15",
-      "color": "#57bb00",
-      "sequence": "TTTAATTGCTTGCCAGAGGG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 140, "end": 150},
-        {"helix": 1, "forward": false, "start": 140, "end": 150}
-      ]
-    },
-    {
-      "name": "staple16",
-      "color": "#888888",
-      "sequence": "CCTTTTGATAAAAGAAGTTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 150, "end": 160},
-        {"helix": 1, "forward": false, "start": 150, "end": 160}
-      ]
-    },
-    {
-      "name": "staple17",
-      "color": "#32b86c",
-      "sequence": "AGAGGTCATTGGCTTTTGCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 160, "end": 170},
-        {"helix": 1, "forward": false, "start": 160, "end": 170}
-      ]
-    },
-    {
-      "name": "staple18",
-      "color": "#333333",
-      "sequence": "TTTGCGGATGAATAGCGAGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 170, "end": 180},
-        {"helix": 1, "forward": false, "start": 170, "end": 180}
-      ]
-    },
-    {
-      "name": "staple19",
-      "color": "#320096",
-      "sequence": "GCTTAGAGCTTAAAAACCAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 180, "end": 190},
-        {"helix": 1, "forward": false, "start": 180, "end": 190}
-      ]
-    },
-    {
-      "name": "staple20",
-      "color": "#03b6a2",
-      "sequence": "TAATTGCTGACAGACGACGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 190, "end": 200},
-        {"helix": 1, "forward": false, "start": 190, "end": 200}
-      ]
-    },
-    {
-      "name": "staple21",
-      "color": "#7300de",
-      "sequence": "ATATAATGCTCCTCGTTTAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 200, "end": 210},
-        {"helix": 1, "forward": false, "start": 200, "end": 210}
-      ]
-    },
-    {
-      "name": "staple22",
-      "color": "#aaaa00",
-      "sequence": "GTAGCTCAACCTATCATAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 210, "end": 220},
-        {"helix": 1, "forward": false, "start": 210, "end": 220}
-      ]
-    },
-    {
-      "name": "staple23",
-      "color": "#b8056c",
-      "sequence": "ATGTTTTAAAAAGAGCAACA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 220, "end": 230},
-        {"helix": 1, "forward": false, "start": 220, "end": 230}
-      ]
-    },
-    {
-      "name": "staple24",
-      "color": "#007200",
-      "sequence": "TATGCAACTAGAGGCATAGT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 230, "end": 240},
-        {"helix": 1, "forward": false, "start": 230, "end": 240}
-      ]
-    },
-    {
-      "name": "staple25",
-      "color": "#cc0000",
-      "sequence": "AAGTACGGTGAAGGAATTAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 240, "end": 250},
-        {"helix": 1, "forward": false, "start": 240, "end": 250}
-      ]
-    },
-    {
-      "name": "staple26",
-      "color": "#f7931e",
-      "sequence": "TCTGGAAGTTATAACGCCAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 250, "end": 260},
-        {"helix": 1, "forward": false, "start": 250, "end": 260}
-      ]
-    },
-    {
-      "name": "staple27",
-      "color": "#f74308",
-      "sequence": "TCATTCCATAATGCAGATAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 260, "end": 270},
-        {"helix": 1, "forward": false, "start": 260, "end": 270}
-      ]
-    },
-    {
-      "name": "staple28",
-      "color": "#57bb00",
-      "sequence": "TAACAGTTGACATTCAACTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 270, "end": 280},
-        {"helix": 1, "forward": false, "start": 270, "end": 280}
-      ]
-    },
-    {
-      "name": "staple29",
-      "color": "#888888",
-      "sequence": "TTCCCAATTCAGGAATACCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 280, "end": 290},
-        {"helix": 1, "forward": false, "start": 280, "end": 290}
-      ]
-    },
-    {
-      "name": "staple30",
-      "color": "#32b86c",
-      "sequence": "TGCGAACGAGGTTGAGATTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 290, "end": 300},
-        {"helix": 1, "forward": false, "start": 290, "end": 300}
-      ]
-    },
-    {
-      "name": "staple31",
-      "color": "#333333",
-      "sequence": "TAGATTTAGTAGATTCATCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 300, "end": 310},
-        {"helix": 1, "forward": false, "start": 300, "end": 310}
-      ]
-    },
-    {
-      "name": "staple32",
-      "color": "#320096",
-      "sequence": "TTGACCATTAACAGGTAGAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 310, "end": 320},
-        {"helix": 1, "forward": false, "start": 310, "end": 320}
-      ]
-    },
-    {
-      "name": "staple33",
-      "color": "#03b6a2",
-      "sequence": "GATACATTTCCAACATTATT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 320, "end": 330},
-        {"helix": 1, "forward": false, "start": 320, "end": 330}
-      ]
-    },
-    {
-      "name": "staple34",
-      "color": "#7300de",
-      "sequence": "GCAAATGGTCACTAACGGAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 330, "end": 340},
-        {"helix": 1, "forward": false, "start": 330, "end": 340}
-      ]
-    },
-    {
-      "name": "staple35",
-      "color": "#aaaa00",
-      "sequence": "AATAACCTGTAATAAAACGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 340, "end": 350},
-        {"helix": 1, "forward": false, "start": 340, "end": 350}
-      ]
-    },
-    {
-      "name": "staple36",
-      "color": "#b8056c",
-      "sequence": "TTAGCTATATAATCTACGTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 350, "end": 360},
-        {"helix": 1, "forward": false, "start": 350, "end": 360}
-      ]
-    },
-    {
-      "name": "staple37",
-      "color": "#007200",
-      "sequence": "TTTCATTTGGTGGGAAGAAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 360, "end": 370},
-        {"helix": 1, "forward": false, "start": 360, "end": 370}
-      ]
-    },
-    {
-      "name": "staple38",
-      "color": "#cc0000",
-      "sequence": "GGCGCGAGCTGTCAGGACGT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 370, "end": 380},
-        {"helix": 1, "forward": false, "start": 370, "end": 380}
-      ]
-    },
-    {
-      "name": "staple39",
-      "color": "#f7931e",
-      "sequence": "GAAAAGGTGGCATTATACCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 380, "end": 390},
-        {"helix": 1, "forward": false, "start": 380, "end": 390}
-      ]
-    },
-    {
-      "name": "staple40",
-      "color": "#f74308",
-      "sequence": "CATCAATTCTAGAACTGGCT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 390, "end": 400},
-        {"helix": 1, "forward": false, "start": 390, "end": 400}
-      ]
-    },
-    {
-      "name": "staple41",
-      "color": "#57bb00",
-      "sequence": "ACTAATAGTATGCGATTTTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 400, "end": 410},
-        {"helix": 1, "forward": false, "start": 400, "end": 410}
-      ]
-    },
-    {
-      "name": "staple42",
-      "color": "#888888",
-      "sequence": "GTAGCATTAAAATTACCTTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 410, "end": 420},
-        {"helix": 1, "forward": false, "start": 410, "end": 420}
-      ]
-    },
-    {
-      "name": "staple43",
-      "color": "#32b86c",
-      "sequence": "CATCCAATAAAATCATTGTG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 420, "end": 430},
-        {"helix": 1, "forward": false, "start": 420, "end": 430}
-      ]
-    },
-    {
-      "name": "staple44",
-      "color": "#333333",
-      "sequence": "ATCATACAGGTTTCAACTTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 430, "end": 440},
-        {"helix": 1, "forward": false, "start": 430, "end": 440}
-      ]
-    },
-    {
-      "name": "staple45",
-      "color": "#320096",
-      "sequence": "CAAGGCAAAGGATGGTTTAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 440, "end": 450},
-        {"helix": 1, "forward": false, "start": 440, "end": 450}
-      ]
-    },
-    {
-      "name": "staple46",
-      "color": "#03b6a2",
-      "sequence": "AATTAGCAAATTGGGCTTGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 450, "end": 460},
-        {"helix": 1, "forward": false, "start": 450, "end": 460}
-      ]
-    },
-    {
-      "name": "staple47",
-      "color": "#7300de",
-      "sequence": "ATTAAGCAATGAGTAGTAAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 460, "end": 470},
-        {"helix": 1, "forward": false, "start": 460, "end": 470}
-      ]
-    },
-    {
-      "name": "staple48",
-      "color": "#aaaa00",
-      "sequence": "AAAGCCTCAGACACCAGAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 470, "end": 480},
-        {"helix": 1, "forward": false, "start": 470, "end": 480}
-      ]
-    },
-    {
-      "name": "staple49",
-      "color": "#b8056c",
-      "sequence": "AGCATAAAGCCTGACGAGAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 480, "end": 490},
-        {"helix": 1, "forward": false, "start": 480, "end": 490}
-      ]
-    },
-    {
-      "name": "staple50",
-      "color": "#007200",
-      "sequence": "TAAATCGGTTAAGGCTTGCC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 490, "end": 500},
-        {"helix": 1, "forward": false, "start": 490, "end": 500}
-      ]
-    },
-    {
-      "name": "staple51",
-      "color": "#cc0000",
-      "sequence": "GTACCAAAAATTCAGTGAAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 500, "end": 510},
-        {"helix": 1, "forward": false, "start": 500, "end": 510}
-      ]
-    },
-    {
-      "name": "staple52",
-      "color": "#f7931e",
-      "sequence": "CATTATGACCAAGCTGCTCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 510, "end": 520},
-        {"helix": 1, "forward": false, "start": 510, "end": 520}
-      ]
-    },
-    {
-      "name": "staple53",
-      "color": "#f74308",
-      "sequence": "CTGTAATACTCAACGTAACA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 520, "end": 530},
-        {"helix": 1, "forward": false, "start": 520, "end": 530}
-      ]
-    },
-    {
-      "name": "staple54",
-      "color": "#57bb00",
-      "sequence": "TTTGCGGGAGTTACCCAAAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 530, "end": 540},
-        {"helix": 1, "forward": false, "start": 530, "end": 540}
-      ]
-    },
-    {
-      "name": "staple55",
-      "color": "#888888",
-      "sequence": "AAGCCTTTATCGGATATTCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 540, "end": 550},
-        {"helix": 1, "forward": false, "start": 540, "end": 550}
-      ]
-    },
-    {
-      "name": "staple56",
-      "color": "#32b86c",
-      "sequence": "TTCAACGCAATGACAAGAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 550, "end": 560},
-        {"helix": 1, "forward": false, "start": 550, "end": 560}
-      ]
-    },
-    {
-      "name": "staple57",
-      "color": "#333333",
-      "sequence": "GGATAAAAATAGAGTAATCT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 560, "end": 570},
-        {"helix": 1, "forward": false, "start": 560, "end": 570}
-      ]
-    },
-    {
-      "name": "staple58",
-      "color": "#320096",
-      "sequence": "TTTTAGAACCACCTTCATCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 570, "end": 580},
-        {"helix": 1, "forward": false, "start": 570, "end": 580}
-      ]
-    },
-    {
-      "name": "staple59",
-      "color": "#03b6a2",
-      "sequence": "CTCATATATTAGGCTGGCTG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 580, "end": 590},
-        {"helix": 1, "forward": false, "start": 580, "end": 590}
-      ]
-    },
-    {
-      "name": "staple60",
-      "color": "#7300de",
-      "sequence": "TTAAATGCAACCAGGCGCAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 590, "end": 600},
-        {"helix": 1, "forward": false, "start": 590, "end": 600}
-      ]
-    },
-    {
-      "name": "staple61",
-      "color": "#aaaa00",
-      "sequence": "TGCCTGAGTAGGTGTACAGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 600, "end": 610},
-        {"helix": 1, "forward": false, "start": 600, "end": 610}
-      ]
-    },
-    {
-      "name": "staple62",
-      "color": "#b8056c",
-      "sequence": "ATGTGTAGGTACAGATGAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 610, "end": 620},
-        {"helix": 1, "forward": false, "start": 610, "end": 620}
-      ]
-    },
-    {
-      "name": "staple63",
-      "color": "#007200",
-      "sequence": "AAAGATTCAATTGAAAGAGG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 620, "end": 630},
-        {"helix": 1, "forward": false, "start": 620, "end": 630}
-      ]
-    },
-    {
-      "name": "staple64",
-      "color": "#cc0000",
-      "sequence": "AAGGGTGAGACTGACCAACT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 630, "end": 640},
-        {"helix": 1, "forward": false, "start": 630, "end": 640}
-      ]
-    },
-    {
-      "name": "staple65",
-      "color": "#f7931e",
-      "sequence": "AAGGCCGGAGGGGAACCGAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 640, "end": 650},
-        {"helix": 1, "forward": false, "start": 640, "end": 650}
-      ]
-    },
-    {
-      "name": "staple66",
-      "color": "#f74308",
-      "sequence": "ACAGTCAAATTCAATCATAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 650, "end": 660},
-        {"helix": 1, "forward": false, "start": 650, "end": 660}
-      ]
-    },
-    {
-      "name": "staple67",
-      "color": "#57bb00",
-      "sequence": "CACCATCAATGCGCAGACGG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 660, "end": 670},
-        {"helix": 1, "forward": false, "start": 660, "end": 670}
-      ]
-    },
-    {
-      "name": "staple68",
-      "color": "#888888",
-      "sequence": "ATGATATTCACCGGAACGAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 670, "end": 680},
-        {"helix": 1, "forward": false, "start": 670, "end": 680}
-      ]
-    },
-    {
-      "name": "staple69",
-      "color": "#32b86c",
-      "sequence": "ACCGTTCTAGTGTTACTTAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 680, "end": 690},
-        {"helix": 1, "forward": false, "start": 680, "end": 690}
-      ]
-    },
-    {
-      "name": "staple70",
-      "color": "#333333",
-      "sequence": "CTGATAAATTACCTGCTCCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 690, "end": 700},
-        {"helix": 1, "forward": false, "start": 690, "end": 700}
-      ]
-    },
-    {
-      "name": "staple71",
-      "color": "#320096",
-      "sequence": "AATGCCGGAGGAAATCCGCG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 700, "end": 710},
-        {"helix": 1, "forward": false, "start": 700, "end": 710}
-      ]
-    },
-    {
-      "name": "staple72",
-      "color": "#03b6a2",
-      "sequence": "AGGGTAGCTAAAATTGTGTC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 710, "end": 720},
-        {"helix": 1, "forward": false, "start": 710, "end": 720}
-      ]
-    },
-    {
-      "name": "staple73",
-      "color": "#7300de",
-      "sequence": "TTTTTGAGAGATCGCCTGAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 720, "end": 730},
-        {"helix": 1, "forward": false, "start": 720, "end": 730}
-      ]
-    },
-    {
-      "name": "staple74",
-      "color": "#aaaa00",
-      "sequence": "ATCTACAAAGGATTTGTATC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 730, "end": 740},
-        {"helix": 1, "forward": false, "start": 730, "end": 740}
-      ]
-    },
-    {
-      "name": "staple75",
-      "color": "#b8056c",
-      "sequence": "GCTATCAGGTGTACAACGGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 740, "end": 750},
-        {"helix": 1, "forward": false, "start": 740, "end": 750}
-      ]
-    },
-    {
-      "name": "staple76",
-      "color": "#007200",
-      "sequence": "CATTGCCTGAGCGAAACAAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 750, "end": 760},
-        {"helix": 1, "forward": false, "start": 750, "end": 760}
-      ]
-    },
-    {
-      "name": "staple77",
-      "color": "#cc0000",
-      "sequence": "GAGTCTGGAGTATACCAAGC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 760, "end": 770},
-        {"helix": 1, "forward": false, "start": 760, "end": 770}
-      ]
-    },
-    {
-      "name": "staple78",
-      "color": "#f7931e",
-      "sequence": "CAAACAAGAGCCCCAGCGAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 770, "end": 780},
-        {"helix": 1, "forward": false, "start": 770, "end": 780}
-      ]
-    },
-    {
-      "name": "staple79",
-      "color": "#f74308",
-      "sequence": "AATCGATGAACATCTTTGAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 780, "end": 790},
-        {"helix": 1, "forward": false, "start": 780, "end": 790}
-      ]
-    },
-    {
-      "name": "staple80",
-      "color": "#57bb00",
-      "sequence": "CGGTAATCGTCTAAAACACT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 790, "end": 800},
-        {"helix": 1, "forward": false, "start": 790, "end": 800}
-      ]
-    },
-    {
-      "name": "staple81",
-      "color": "#888888",
-      "sequence": "AAAACTAGCAAAAGAATACA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 800, "end": 810},
-        {"helix": 1, "forward": false, "start": 800, "end": 810}
-      ]
-    },
-    {
-      "name": "staple82",
-      "color": "#32b86c",
-      "sequence": "TGTCAATCATGAAAGAGGCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 810, "end": 820},
-        {"helix": 1, "forward": false, "start": 810, "end": 820}
-      ]
-    },
-    {
-      "name": "staple83",
-      "color": "#333333",
-      "sequence": "ATGTACCCCGAACCTAAAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 820, "end": 830},
-        {"helix": 1, "forward": false, "start": 820, "end": 830}
-      ]
-    },
-    {
-      "name": "staple84",
-      "color": "#320096",
-      "sequence": "GTTGATAATCCGAAGGCACC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 830, "end": 840},
-        {"helix": 1, "forward": false, "start": 830, "end": 840}
-      ]
-    },
-    {
-      "name": "staple85",
-      "color": "#03b6a2",
-      "sequence": "AGAAAAGCCCAATGCCACTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 840, "end": 850},
-        {"helix": 1, "forward": false, "start": 840, "end": 850}
-      ]
-    },
-    {
-      "name": "staple86",
-      "color": "#7300de",
-      "sequence": "CAAAAACAGGTAAAATACGT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 850, "end": 860},
-        {"helix": 1, "forward": false, "start": 850, "end": 860}
-      ]
-    },
-    {
-      "name": "staple87",
-      "color": "#aaaa00",
-      "sequence": "AAGATTGTATATTAAACGGG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 860, "end": 870},
-        {"helix": 1, "forward": false, "start": 860, "end": 870}
-      ]
-    },
-    {
-      "name": "staple88",
-      "color": "#b8056c",
-      "sequence": "AAGCAAATATGGAAGTTTCC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 870, "end": 880},
-        {"helix": 1, "forward": false, "start": 870, "end": 880}
-      ]
-    },
-    {
-      "name": "staple89",
-      "color": "#007200",
-      "sequence": "TTAAATTGTATTTTTCATGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 880, "end": 890},
-        {"helix": 1, "forward": false, "start": 880, "end": 890}
-      ]
-    },
-    {
-      "name": "staple90",
-      "color": "#cc0000",
-      "sequence": "AACGTTAATAGACTAAAGAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 890, "end": 900},
-        {"helix": 1, "forward": false, "start": 890, "end": 900}
-      ]
-    },
-    {
-      "name": "staple91",
-      "color": "#f7931e",
-      "sequence": "TTTTGTTAAAAGGCTTTGAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 900, "end": 910},
-        {"helix": 1, "forward": false, "start": 900, "end": 910}
-      ]
-    },
-    {
-      "name": "staple92",
-      "color": "#f74308",
-      "sequence": "ATTCGCATTAACGGCTACAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 910, "end": 920},
-        {"helix": 1, "forward": false, "start": 910, "end": 920}
-      ]
-    },
-    {
-      "name": "staple93",
-      "color": "#57bb00",
-      "sequence": "AATTTTTGTTGAGGGTAGCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 920, "end": 930},
-        {"helix": 1, "forward": false, "start": 920, "end": 930}
-      ]
-    },
-    {
-      "name": "staple94",
-      "color": "#888888",
-      "sequence": "AAATCAGCTCGCATCGGAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 930, "end": 940},
-        {"helix": 1, "forward": false, "start": 930, "end": 940}
-      ]
-    },
-    {
-      "name": "staple95",
-      "color": "#32b86c",
-      "sequence": "ATTTTTTAACGCGAAAGACA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 940, "end": 950},
-        {"helix": 1, "forward": false, "start": 940, "end": 950}
-      ]
-    },
-    {
-      "name": "staple96",
-      "color": "#333333",
-      "sequence": "CAATAGGAACACCCTCAGCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 950, "end": 960},
-        {"helix": 1, "forward": false, "start": 950, "end": 960}
-      ]
-    },
-    {
-      "name": "staple97",
-      "color": "#320096",
-      "sequence": "GCCATCAAAACGGGATCGTC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 960, "end": 970},
-        {"helix": 1, "forward": false, "start": 960, "end": 970}
-      ]
-    },
-    {
-      "name": "staple98",
-      "color": "#03b6a2",
-      "sequence": "ATAATTCGCGGCCGCTTTTG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 970, "end": 980},
-        {"helix": 1, "forward": false, "start": 970, "end": 980}
-      ]
-    },
-    {
-      "name": "staple99",
-      "color": "#7300de",
-      "sequence": "TCTGGCCTTCGGAGTTAAAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 980, "end": 990},
-        {"helix": 1, "forward": false, "start": 980, "end": 990}
-      ]
-    },
-    {
-      "name": "staple100",
-      "color": "#aaaa00",
-      "sequence": "CTGTAGCCAGAGGCTTGCAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 990, "end": 1000},
-        {"helix": 1, "forward": false, "start": 990, "end": 1000}
-      ]
-    },
-    {
-      "name": "staple101",
-      "color": "#b8056c",
-      "sequence": "CTTTCATCAATCGGTCGCTG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1000, "end": 1010},
-        {"helix": 1, "forward": false, "start": 1000, "end": 1010}
-      ]
-    },
-    {
-      "name": "staple102",
-      "color": "#007200",
-      "sequence": "CATTAAATGTACCGATATAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1010, "end": 1020},
-        {"helix": 1, "forward": false, "start": 1010, "end": 1020}
-      ]
-    },
-    {
-      "name": "staple103",
-      "color": "#cc0000",
-      "sequence": "GAGCGAGTAACCCACGCATA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1020, "end": 1030},
-        {"helix": 1, "forward": false, "start": 1020, "end": 1030}
-      ]
-    },
-    {
-      "name": "staple104",
-      "color": "#f7931e",
-      "sequence": "CAACCCGTCGACAACCATCG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1030, "end": 1040},
-        {"helix": 1, "forward": false, "start": 1030, "end": 1040}
-      ]
-    },
-    {
-      "name": "staple105",
-      "color": "#f74308",
-      "sequence": "GATTCTCCGTGACAATGACA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1040, "end": 1050},
-        {"helix": 1, "forward": false, "start": 1040, "end": 1050}
-      ]
-    },
-    {
-      "name": "staple106",
-      "color": "#57bb00",
-      "sequence": "GGGAACAAACTAGTTGCGCC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1050, "end": 1060},
-        {"helix": 1, "forward": false, "start": 1050, "end": 1060}
-      ]
-    },
-    {
-      "name": "staple107",
-      "color": "#888888",
-      "sequence": "GGCGGATTGATTGATACCGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1060, "end": 1070},
-        {"helix": 1, "forward": false, "start": 1060, "end": 1070}
-      ]
-    },
-    {
-      "name": "staple108",
-      "color": "#32b86c",
-      "sequence": "CCGTAATGGGCTTAAACAGC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1070, "end": 1080},
-        {"helix": 1, "forward": false, "start": 1070, "end": 1080}
-      ]
-    },
-    {
-      "name": "staple109",
-      "color": "#333333",
-      "sequence": "ATAGGTCACGAGGTGAATTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1080, "end": 1090},
-        {"helix": 1, "forward": false, "start": 1080, "end": 1090}
-      ]
-    },
-    {
-      "name": "staple110",
-      "color": "#320096",
-      "sequence": "TTGGTGTAGACTTGCTTTCG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1090, "end": 1100},
-        {"helix": 1, "forward": false, "start": 1090, "end": 1100}
-      ]
-    },
-    {
-      "name": "staple111",
-      "color": "#03b6a2",
-      "sequence": "TGGGCGCATCGGTTTATCAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1100, "end": 1110},
-        {"helix": 1, "forward": false, "start": 1100, "end": 1110}
-      ]
-    },
-    {
-      "name": "staple112",
-      "color": "#7300de",
-      "sequence": "GTAACCGTGCTAATTGTATC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1110, "end": 1120},
-        {"helix": 1, "forward": false, "start": 1110, "end": 1120}
-      ]
-    },
-    {
-      "name": "staple113",
-      "color": "#aaaa00",
-      "sequence": "ATCTGCCAGTAAGGAGCCTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1120, "end": 1130},
-        {"helix": 1, "forward": false, "start": 1120, "end": 1130}
-      ]
-    },
-    {
-      "name": "staple114",
-      "color": "#b8056c",
-      "sequence": "TTGAGGGGACAAGGCTCCAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1130, "end": 1140},
-        {"helix": 1, "forward": false, "start": 1130, "end": 1140}
-      ]
-    },
-    {
-      "name": "staple115",
-      "color": "#007200",
-      "sequence": "GACGACAGTACTCCAAAAAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1140, "end": 1150},
-        {"helix": 1, "forward": false, "start": 1140, "end": 1150}
-      ]
-    },
-    {
-      "name": "staple116",
-      "color": "#cc0000",
-      "sequence": "TCGGCCTCAGCGTTGAAAAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1150, "end": 1160},
-        {"helix": 1, "forward": false, "start": 1150, "end": 1160}
-      ]
-    },
-    {
-      "name": "staple117",
-      "color": "#f7931e",
-      "sequence": "GAAGATCGCAAATTTTTTCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1160, "end": 1170},
-        {"helix": 1, "forward": false, "start": 1160, "end": 1170}
-      ]
-    },
-    {
-      "name": "staple118",
-      "color": "#f74308",
-      "sequence": "CTCCAGCCAGTGCGAATAAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1170, "end": 1180},
-        {"helix": 1, "forward": false, "start": 1170, "end": 1180}
-      ]
-    },
-    {
-      "name": "staple119",
-      "color": "#57bb00",
-      "sequence": "CTTTCCGGCACTAAAGGAAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1180, "end": 1190},
-        {"helix": 1, "forward": false, "start": 1180, "end": 1190}
-      ]
-    },
-    {
-      "name": "staple120",
-      "color": "#888888",
-      "sequence": "CCGCTTCTGGAAAGGAACAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H3"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1190, "end": 1200},
-        {"helix": 1, "forward": false, "start": 1190, "end": 1200}
-      ]
-    },
-    {
-      "name": "staple121",
-      "color": "#32b86c",
-      "sequence": "TGCCGGAAACGTGAGAATAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1200, "end": 1210},
-        {"helix": 1, "forward": false, "start": 1200, "end": 1210}
-      ]
-    },
-    {
-      "name": "staple122",
-      "color": "#333333",
-      "sequence": "CAGGCAAAGCTTTCAGCGGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1210, "end": 1220},
-        {"helix": 1, "forward": false, "start": 1210, "end": 1220}
-      ]
-    },
-    {
-      "name": "staple123",
-      "color": "#320096",
-      "sequence": "GCCATTCGCCCTTTCAACAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1220, "end": 1230},
-        {"helix": 1, "forward": false, "start": 1220, "end": 1230}
-      ]
-    },
-    {
-      "name": "staple124",
-      "color": "#03b6a2",
-      "sequence": "ATTCAGGCTGTGCTAAACAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1230, "end": 1240},
-        {"helix": 1, "forward": false, "start": 1230, "end": 1240}
-      ]
-    },
-    {
-      "name": "staple125",
-      "color": "#7300de",
-      "sequence": "CGCAACTGTTTATGGGATTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1240, "end": 1250},
-        {"helix": 1, "forward": false, "start": 1240, "end": 1250}
-      ]
-    },
-    {
-      "name": "staple126",
-      "color": "#aaaa00",
-      "sequence": "GGGAAGGGCGGAATTTTCTG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1250, "end": 1260},
-        {"helix": 1, "forward": false, "start": 1250, "end": 1260}
-      ]
-    },
-    {
-      "name": "staple127",
-      "color": "#b8056c",
-      "sequence": "ATCGGTGCGGGTTAGTAAAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1260, "end": 1270},
-        {"helix": 1, "forward": false, "start": 1260, "end": 1270}
-      ]
-    },
-    {
-      "name": "staple128",
-      "color": "#007200",
-      "sequence": "GCCTCTTCGCCTTTCCAGAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H4"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1270, "end": 1280},
-        {"helix": 1, "forward": false, "start": 1270, "end": 1280}
-      ]
-    },
-    {
-      "name": "staple129",
-      "color": "#cc0000",
-      "sequence": "TATTACGCCAGTTTTGTCGT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1280, "end": 1290},
-        {"helix": 1, "forward": false, "start": 1280, "end": 1290}
-      ]
-    },
-    {
-      "name": "staple130",
-      "color": "#f7931e",
-      "sequence": "GCTGGCGAAAACGATCTAAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1290, "end": 1300},
-        {"helix": 1, "forward": false, "start": 1290, "end": 1300}
-      ]
-    },
-    {
-      "name": "staple131",
-      "color": "#f74308",
-      "sequence": "GGGGGATGTGAGTTAGCGTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1300, "end": 1310},
-        {"helix": 1, "forward": false, "start": 1300, "end": 1310}
-      ]
-    },
-    {
-      "name": "staple132",
-      "color": "#57bb00",
-      "sequence": "CTGCAAGGCGCAGCCCTCAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1310, "end": 1320},
-        {"helix": 1, "forward": false, "start": 1310, "end": 1320}
-      ]
-    },
-    {
-      "name": "staple133",
-      "color": "#888888",
-      "sequence": "ATTAAGTTGGATTCCACAGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1320, "end": 1330},
-        {"helix": 1, "forward": false, "start": 1320, "end": 1330}
-      ]
-    },
-    {
-      "name": "staple134",
-      "color": "#32b86c",
-      "sequence": "GTAACGCCAGCGCCTGTAGC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1330, "end": 1340},
-        {"helix": 1, "forward": false, "start": 1330, "end": 1340}
-      ]
-    },
-    {
-      "name": "staple135",
-      "color": "#333333",
-      "sequence": "GGTTTTCCCACAAACTACAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1340, "end": 1350},
-        {"helix": 1, "forward": false, "start": 1340, "end": 1350}
-      ]
-    },
-    {
-      "name": "staple136",
-      "color": "#320096",
-      "sequence": "GTCACGACGTGTCACCAGTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H5"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1350, "end": 1360},
-        {"helix": 1, "forward": false, "start": 1350, "end": 1360}
-      ]
-    },
-    {
-      "name": "staple137",
-      "color": "#03b6a2",
-      "sequence": "TGTAAAACGAACTGAGTTTC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1360, "end": 1370},
-        {"helix": 1, "forward": false, "start": 1360, "end": 1370}
-      ]
-    },
-    {
-      "name": "staple138",
-      "color": "#7300de",
-      "sequence": "CGGCCAGTGCGTACCGTAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1370, "end": 1380},
-        {"helix": 1, "forward": false, "start": 1370, "end": 1380}
-      ]
-    },
-    {
-      "name": "staple139",
-      "color": "#aaaa00",
-      "sequence": "CAAGCTTGCAAGGAACCCAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1380, "end": 1390},
-        {"helix": 1, "forward": false, "start": 1380, "end": 1390}
-      ]
-    },
-    {
-      "name": "staple140",
-      "color": "#b8056c",
-      "sequence": "TGCCTGCAGGCAAGCCCAAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1390, "end": 1400},
-        {"helix": 1, "forward": false, "start": 1390, "end": 1400}
-      ]
-    },
-    {
-      "name": "staple141",
-      "color": "#007200",
-      "sequence": "TCGACTCTAGTCAGGGATAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1400, "end": 1410},
-        {"helix": 1, "forward": false, "start": 1400, "end": 1410}
-      ]
-    },
-    {
-      "name": "staple142",
-      "color": "#cc0000",
-      "sequence": "AGGATCCCCGACCCTCATTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1410, "end": 1420},
-        {"helix": 1, "forward": false, "start": 1410, "end": 1420}
-      ]
-    },
-    {
-      "name": "staple143",
-      "color": "#f7931e",
-      "sequence": "GGTACCGAGCCAGAGCCACC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1420, "end": 1430},
-        {"helix": 1, "forward": false, "start": 1420, "end": 1430}
-      ]
-    },
-    {
-      "name": "staple144",
-      "color": "#f74308",
-      "sequence": "TCGAATTCGTCCGCCACCCT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H6"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1430, "end": 1440},
-        {"helix": 1, "forward": false, "start": 1430, "end": 1440}
-      ]
-    },
-    {
-      "name": "staple145",
-      "color": "#57bb00",
-      "sequence": "AATCATGGTCACCCTCAGAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1440, "end": 1450},
-        {"helix": 1, "forward": false, "start": 1440, "end": 1450}
-      ]
-    },
-    {
-      "name": "staple146",
-      "color": "#888888",
-      "sequence": "ATAGCTGTTTCAGAACCGCC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1450, "end": 1460},
-        {"helix": 1, "forward": false, "start": 1450, "end": 1460}
-      ]
-    },
-    {
-      "name": "staple147",
-      "color": "#32b86c",
-      "sequence": "CCTGTGTGAACCGCCACCCT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1460, "end": 1470},
-        {"helix": 1, "forward": false, "start": 1460, "end": 1470}
-      ]
-    },
-    {
-      "name": "staple148",
-      "color": "#333333",
-      "sequence": "ATTGTTATCCAGGTTTAGTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1470, "end": 1480},
-        {"helix": 1, "forward": false, "start": 1470, "end": 1480}
-      ]
-    },
-    {
-      "name": "staple149",
-      "color": "#320096",
-      "sequence": "GCTCACAATTCGTACTCAGG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1480, "end": 1490},
-        {"helix": 1, "forward": false, "start": 1480, "end": 1490}
-      ]
-    },
-    {
-      "name": "staple150",
-      "color": "#03b6a2",
-      "sequence": "CCACACAACAGGTGTATCAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1490, "end": 1500},
-        {"helix": 1, "forward": false, "start": 1490, "end": 1500}
-      ]
-    },
-    {
-      "name": "staple151",
-      "color": "#7300de",
-      "sequence": "TACGAGCCGGGCCCGGAATA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1500, "end": 1510},
-        {"helix": 1, "forward": false, "start": 1500, "end": 1510}
-      ]
-    },
-    {
-      "name": "staple152",
-      "color": "#aaaa00",
-      "sequence": "AAGCATAAAGTATAAGTATA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H7"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1510, "end": 1520},
-        {"helix": 1, "forward": false, "start": 1510, "end": 1520}
-      ]
-    },
-    {
-      "name": "staple153",
-      "color": "#b8056c",
-      "sequence": "TGTAAAGCCTAGAGGGTTGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1520, "end": 1530},
-        {"helix": 1, "forward": false, "start": 1520, "end": 1530}
-      ]
-    },
-    {
-      "name": "staple154",
-      "color": "#007200",
-      "sequence": "GGGGTGCCTAAGTGCCGTCG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1530, "end": 1540},
-        {"helix": 1, "forward": false, "start": 1530, "end": 1540}
-      ]
-    },
-    {
-      "name": "staple155",
-      "color": "#cc0000",
-      "sequence": "ATGAGTGAGCCAGGCGGATA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1540, "end": 1550},
-        {"helix": 1, "forward": false, "start": 1540, "end": 1550}
-      ]
-    },
-    {
-      "name": "staple156",
-      "color": "#f7931e",
-      "sequence": "TAACTCACATTGCTCAGTAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1550, "end": 1560},
-        {"helix": 1, "forward": false, "start": 1550, "end": 1560}
-      ]
-    },
-    {
-      "name": "staple157",
-      "color": "#f74308",
-      "sequence": "TAATTGCGTTAGCGGGGTTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1560, "end": 1570},
-        {"helix": 1, "forward": false, "start": 1560, "end": 1570}
-      ]
-    },
-    {
-      "name": "staple158",
-      "color": "#57bb00",
-      "sequence": "GCGCTCACTGGATTAGGATT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1570, "end": 1580},
-        {"helix": 1, "forward": false, "start": 1570, "end": 1580}
-      ]
-    },
-    {
-      "name": "staple159",
-      "color": "#888888",
-      "sequence": "CCCGCTTTCCTCAAGAGAAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1580, "end": 1590},
-        {"helix": 1, "forward": false, "start": 1580, "end": 1590}
-      ]
-    },
-    {
-      "name": "staple160",
-      "color": "#32b86c",
-      "sequence": "AGTCGGGAAACTGAGACTCC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H8"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1590, "end": 1600},
-        {"helix": 1, "forward": false, "start": 1590, "end": 1600}
-      ]
-    },
-    {
-      "name": "staple161",
-      "color": "#333333",
-      "sequence": "CCTGTCGTGCTATTAAGAGG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1600, "end": 1610},
-        {"helix": 1, "forward": false, "start": 1600, "end": 1610}
-      ]
-    },
-    {
-      "name": "staple162",
-      "color": "#320096",
-      "sequence": "CAGCTGCATTAACATGAAAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1610, "end": 1620},
-        {"helix": 1, "forward": false, "start": 1610, "end": 1620}
-      ]
-    },
-    {
-      "name": "staple163",
-      "color": "#03b6a2",
-      "sequence": "AATGAATCGGATTATTCTGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1620, "end": 1630},
-        {"helix": 1, "forward": false, "start": 1620, "end": 1630}
-      ]
-    },
-    {
-      "name": "staple164",
-      "color": "#7300de",
-      "sequence": "CCAACGCGCGTTCGGAACCT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1630, "end": 1640},
-        {"helix": 1, "forward": false, "start": 1630, "end": 1640}
-      ]
-    },
-    {
-      "name": "staple165",
-      "color": "#aaaa00",
-      "sequence": "GGGAGAGGCGCCCTGCCTAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1640, "end": 1650},
-        {"helix": 1, "forward": false, "start": 1640, "end": 1650}
-      ]
-    },
-    {
-      "name": "staple166",
-      "color": "#b8056c",
-      "sequence": "GTTTGCGTATAGTTAATGCC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1650, "end": 1660},
-        {"helix": 1, "forward": false, "start": 1650, "end": 1660}
-      ]
-    },
-    {
-      "name": "staple167",
-      "color": "#007200",
-      "sequence": "TGGGCGCCAGCCGTATAAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1660, "end": 1670},
-        {"helix": 1, "forward": false, "start": 1660, "end": 1670}
-      ]
-    },
-    {
-      "name": "staple168",
-      "color": "#cc0000",
-      "sequence": "GGTGGTTTTTGTAACAGTGC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H9"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1670, "end": 1680},
-        {"helix": 1, "forward": false, "start": 1670, "end": 1680}
-      ]
-    },
-    {
-      "name": "staple169",
-      "color": "#f7931e",
-      "sequence": "CTTTTCACCAAGTGCCTTGA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1680, "end": 1690},
-        {"helix": 1, "forward": false, "start": 1680, "end": 1690}
-      ]
-    },
-    {
-      "name": "staple170",
-      "color": "#f74308",
-      "sequence": "GTGAGACGGGTAACGGGGTC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1690, "end": 1700},
-        {"helix": 1, "forward": false, "start": 1690, "end": 1700}
-      ]
-    },
-    {
-      "name": "staple171",
-      "color": "#57bb00",
-      "sequence": "CAACAGCTGATAATAAGTTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1700, "end": 1710},
-        {"helix": 1, "forward": false, "start": 1700, "end": 1710}
-      ]
-    },
-    {
-      "name": "staple172",
-      "color": "#888888",
-      "sequence": "TTGCCCTTCAAGTGTACTGG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1710, "end": 1720},
-        {"helix": 1, "forward": false, "start": 1710, "end": 1720}
-      ]
-    },
-    {
-      "name": "staple173",
-      "color": "#32b86c",
-      "sequence": "CCGCCTGGCCATGATACAGG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1720, "end": 1730},
-        {"helix": 1, "forward": false, "start": 1720, "end": 1730}
-      ]
-    },
-    {
-      "name": "staple174",
-      "color": "#333333",
-      "sequence": "CTGAGAGAGTATGGCTTTTG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1730, "end": 1740},
-        {"helix": 1, "forward": false, "start": 1730, "end": 1740}
-      ]
-    },
-    {
-      "name": "staple175",
-      "color": "#320096",
-      "sequence": "TGCAGCAAGCAGCGTCATAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1740, "end": 1750},
-        {"helix": 1, "forward": false, "start": 1740, "end": 1750}
-      ]
-    },
-    {
-      "name": "staple176",
-      "color": "#03b6a2",
-      "sequence": "GGTCCACGCTCGTTCCAGTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H10"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1750, "end": 1760},
-        {"helix": 1, "forward": false, "start": 1750, "end": 1760}
-      ]
-    },
-    {
-      "name": "staple177",
-      "color": "#7300de",
-      "sequence": "GGTTTGCCCCCTGAATTTAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1760, "end": 1770},
-        {"helix": 1, "forward": false, "start": 1760, "end": 1770}
-      ]
-    },
-    {
-      "name": "staple178",
-      "color": "#aaaa00",
-      "sequence": "AGCAGGCGAAAGCGCAGTCT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1770, "end": 1780},
-        {"helix": 1, "forward": false, "start": 1770, "end": 1780}
-      ]
-    },
-    {
-      "name": "staple179",
-      "color": "#b8056c",
-      "sequence": "AATCCTGTTTCAGAATGGAA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1780, "end": 1790},
-        {"helix": 1, "forward": false, "start": 1780, "end": 1790}
-      ]
-    },
-    {
-      "name": "staple180",
-      "color": "#007200",
-      "sequence": "GATGGTGGTTTCATTAAAGC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1790, "end": 1800},
-        {"helix": 1, "forward": false, "start": 1790, "end": 1800}
-      ]
-    },
-    {
-      "name": "staple181",
-      "color": "#cc0000",
-      "sequence": "CCGAAATCGGAAATAAATCC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1800, "end": 1810},
-        {"helix": 1, "forward": false, "start": 1800, "end": 1810}
-      ]
-    },
-    {
-      "name": "staple182",
-      "color": "#f7931e",
-      "sequence": "CAAAATCCCTATTCACAAAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1810, "end": 1820},
-        {"helix": 1, "forward": false, "start": 1810, "end": 1820}
-      ]
-    },
-    {
-      "name": "staple183",
-      "color": "#f74308",
-      "sequence": "TATAAATCAATGGCCTTGAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1820, "end": 1830},
-        {"helix": 1, "forward": false, "start": 1820, "end": 1830}
-      ]
-    },
-    {
-      "name": "staple184",
-      "color": "#57bb00",
-      "sequence": "AAGAATAGCCGTCAGACGAT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H11"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1830, "end": 1840},
-        {"helix": 1, "forward": false, "start": 1830, "end": 1840}
-      ]
-    },
-    {
-      "name": "staple185",
-      "color": "#888888",
-      "sequence": "CGAGATAGGGGTTGAGGCAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1840, "end": 1850},
-        {"helix": 1, "forward": false, "start": 1840, "end": 1850}
-      ]
-    },
-    {
-      "name": "staple186",
-      "color": "#32b86c",
-      "sequence": "TTGAGTGTTGTTGACAGGAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1850, "end": 1860},
-        {"helix": 1, "forward": false, "start": 1850, "end": 1860}
-      ]
-    },
-    {
-      "name": "staple187",
-      "color": "#333333",
-      "sequence": "TTCCAGTTTGGCCGCCAGCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1860, "end": 1870},
-        {"helix": 1, "forward": false, "start": 1860, "end": 1870}
-      ]
-    },
-    {
-      "name": "staple188",
-      "color": "#320096",
-      "sequence": "GAACAAGAGTCACCAGAGCC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1870, "end": 1880},
-        {"helix": 1, "forward": false, "start": 1870, "end": 1880}
-      ]
-    },
-    {
-      "name": "staple189",
-      "color": "#03b6a2",
-      "sequence": "CCACTATTAACCAGAACCAC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1880, "end": 1890},
-        {"helix": 1, "forward": false, "start": 1880, "end": 1890}
-      ]
-    },
-    {
-      "name": "staple190",
-      "color": "#7300de",
-      "sequence": "AGAACGTGGAAGAGCCGCCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1890, "end": 1900},
-        {"helix": 1, "forward": false, "start": 1890, "end": 1900}
-      ]
-    },
-    {
-      "name": "staple191",
-      "color": "#aaaa00",
-      "sequence": "CTCCAACGTCCACCACCCTC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1900, "end": 1910},
-        {"helix": 1, "forward": false, "start": 1900, "end": 1910}
-      ]
-    },
-    {
-      "name": "staple192",
-      "color": "#b8056c",
-      "sequence": "AAAGGGCGAACCCTCAGAGC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H12"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1910, "end": 1920},
-        {"helix": 1, "forward": false, "start": 1910, "end": 1920}
-      ]
-    },
-    {
-      "name": "staple193",
-      "color": "#007200",
-      "sequence": "AAACCGTCTAAGAACCGCCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "A1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1920, "end": 1930},
-        {"helix": 1, "forward": false, "start": 1920, "end": 1930}
-      ]
-    },
-    {
-      "name": "staple194",
-      "color": "#cc0000",
-      "sequence": "TCAGGGCGATCGCCACCCTC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "B1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1930, "end": 1940},
-        {"helix": 1, "forward": false, "start": 1930, "end": 1940}
-      ]
-    },
-    {
-      "name": "staple195",
-      "color": "#f7931e",
-      "sequence": "GGCCCACTACCCCTCAGAGC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "C1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1940, "end": 1950},
-        {"helix": 1, "forward": false, "start": 1940, "end": 1950}
-      ]
-    },
-    {
-      "name": "staple196",
-      "color": "#f74308",
-      "sequence": "GTGAACCATCGGAACCGCCT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "D1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1950, "end": 1960},
-        {"helix": 1, "forward": false, "start": 1950, "end": 1960}
-      ]
-    },
-    {
-      "name": "staple197",
-      "color": "#57bb00",
-      "sequence": "ACCCAAATCAAGCCACCACC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "E1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1960, "end": 1970},
-        {"helix": 1, "forward": false, "start": 1960, "end": 1970}
-      ]
-    },
-    {
-      "name": "staple198",
-      "color": "#888888",
-      "sequence": "AGTTTTTTGGCCGGAACCAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "F1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1970, "end": 1980},
-        {"helix": 1, "forward": false, "start": 1970, "end": 1980}
-      ]
-    },
-    {
-      "name": "staple199",
-      "color": "#32b86c",
-      "sequence": "GGTCGAGGTGATCAAAATCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "G1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1980, "end": 1990},
-        {"helix": 1, "forward": false, "start": 1980, "end": 1990}
-      ]
-    },
-    {
-      "name": "staple200",
-      "color": "#333333",
-      "sequence": "CCGTAAAGCATCTTTTCATA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "H1"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 1990, "end": 2000},
-        {"helix": 1, "forward": false, "start": 1990, "end": 2000}
-      ]
-    },
-    {
-      "name": "staple201",
-      "color": "#320096",
-      "sequence": "CTAAATCGGAGCGTTTGCCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "A2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 2000, "end": 2010},
-        {"helix": 1, "forward": false, "start": 2000, "end": 2010}
-      ]
-    },
-    {
-      "name": "staple202",
-      "color": "#03b6a2",
-      "sequence": "ACCCTAAAGGCCCCTTATTA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "B2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 2010, "end": 2020},
-        {"helix": 1, "forward": false, "start": 2010, "end": 2020}
-      ]
-    },
-    {
-      "name": "staple203",
-      "color": "#7300de",
-      "sequence": "GAGCCCCCGACGGTCATAGC",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "C2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 2020, "end": 2030},
-        {"helix": 1, "forward": false, "start": 2020, "end": 2030}
-      ]
-    },
-    {
-      "name": "staple204",
-      "color": "#aaaa00",
-      "sequence": "TTTAGAGCTTTCGGCATTTT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "D2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 2030, "end": 2040},
-        {"helix": 1, "forward": false, "start": 2030, "end": 2040}
-      ]
-    },
-    {
-      "name": "staple205",
-      "color": "#b8056c",
-      "sequence": "GACGGGGAAACGCGTTTTCA",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "E2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 2040, "end": 2050},
-        {"helix": 1, "forward": false, "start": 2040, "end": 2050}
-      ]
-    },
-    {
-      "name": "staple206",
-      "color": "#007200",
-      "sequence": "GCCGGCGAACCAGACTGTAG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "F2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 2050, "end": 2060},
-        {"helix": 1, "forward": false, "start": 2050, "end": 2060}
-      ]
-    },
-    {
-      "name": "staple207",
-      "color": "#cc0000",
-      "sequence": "GTGGCGAGAACCTTTAGCGT",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "G2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 2060, "end": 2070},
-        {"helix": 1, "forward": false, "start": 2060, "end": 2070}
-      ]
-    },
-    {
-      "name": "staple208",
-      "color": "#f7931e",
-      "sequence": "AGGAAGGGAAATCAAGTTTG",
-      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "H2"},
-      "domains": [
-        {"helix": 0, "forward": true, "start": 2070, "end": 2080},
-        {"helix": 1, "forward": false, "start": 2070, "end": 2080}
-      ]
-    },
-    {
-      "color": "#0066cc",
-      "sequence": "TTCCCTTCCTTTCTCGCCACGTTCGCCGGCTTTCCCCGTCAAGCTCTAAATCGGGGGCTCCCTTTAGGGTTCCGATTTAGTGCTTTACGGCACCTCGACCCCAAAAAACTTGATTTGGGTGATGGTTCACGTAGTGGGCCATCGCCCTGATAGACGGTTTTTCGCCCTTTGACGTTGGAGTCCACGTTCTTTAATAGTGGACTCTTGTTCCAAACTGGAACAACACTCAACCCTATCTCGGGCTATTCTTTTGATTTATAAGGGATTTTGCCGATTTCGGAACCACCATCAAACAGGATTTTCGCCTGCTGGGGCAAACCAGCGTGGACCGCTTGCTGCAACTCTCTCAGGGCCAGGCGGTGAAGGGCAATCAGCTGTTGCCCGTCTCACTGGTGAAAAGAAAAACCACCCTGGCGCCCAATACGCAAACCGCCTCTCCCCGCGCGTTGGCCGATTCATTAATGCAGCTGGCACGACAGGTTTCCCGACTGGAAAGCGGGCAGTGAGCGCAACGCAATTAATGTGAGTTAGCTCACTCATTAGGCACCCCAGGCTTTACACTTTATGCTTCCGGCTCGTATGTTGTGTGGAATTGTGAGCGGATAACAATTTCACACAGGAAACAGCTATGACCATGATTACGAATTCGAGCTCGGTACCCGGGGATCCTCTAGAGTCGACCTGCAGGCATGCAAGCTTGGCACTGGCCGTCGTTTTACAACGTCGTGACTGGGAAAACCCTGGCGTTACCCAACTTAATCGCCTTGCAGCACATCCCCCTTTCGCCAGCTGGCGTAATAGCGAAGAGGCCCGCACCGATCGCCCTTCCCAACAGTTGCGCAGCCTGAATGGCGAATGGCGCTTTGCCTGGTTTCCGGCACCAGAAGCGGTGCCGGAAAGCTGGCTGGAGTGCGATCTTCCTGAGGCCGATACTGTCGTCGTCCCCTCAAACTGGCAGATGCACGGTTACGATGCGCCCATCTACACCAACGTGACCTATCCCATTACGGTCAATCCGCCGTTTGTTCCCACGGAGAATCCGACGGGTTGTTACTCGCTCACATTTAATGTTGATGAAAGCTGGCTACAGGAAGGCCAGACGCGAATTATTTTTGATGGCGTTCCTATTGGTTAAAAAATGAGCTGATTTAACAAAAATTTAATGCGAATTTTAACAAAATATTAACGTTTACAATTTAAATATTTGCTTATACAATCTTCCTGTTTTTGGGGCTTTTCTGATTATCAACCGGGGTACATATGATTGACATGCTAGTTTTACGATTACCGTTCATCGATTCTCTTGTTTGCTCCAGACTCTCAGGCAATGACCTGATAGCCTTTGTAGATCTCTCAAAAATAGCTACCCTCTCCGGCATTAATTTATCAGCTAGAACGGTTGAATATCATATTGATGGTGATTTGACTGTCTCCGGCCTTTCTCACCCTTTTGAATCTTTACCTACACATTACTCAGGCATTGCATTTAAAATATATGAGGGTTCTAAAAATTTTTATCCTTGCGTTGAAATAAAGGCTTCTCCCGCAAAAGTATTACAGGGTCATAATGTTTTTGGTACAACCGATTTAGCTTTATGCTCTGAGGCTTTATTGCTTAATTTTGCTAATTCTTTGCCTTGCCTGTATGATTTATTGGATGTTAATGCTACTACTATTAGTAGAATTGATGCCACCTTTTCAGCTCGCGCCCCAAATGAAAATATAGCTAAACAGGTTATTGACCATTTGCGAAATGTATCTAATGGTCAAACTAAATCTACTCGTTCGCAGAATTGGGAATCAACTGTTATATGGAATGAAACTTCCAGACACCGTACTTTAGTTGCATATTTAAAACATGTTGAGCTACAGCATTATATTCAGCAATTAAGCTCTAAGCCATCCGCAAAAATGACCTCTTATCAAAAGGAGCAATTAAAGGTACTCTCTAATCCTGACCTGTTGGAGTTTGCTTCCGGTCTGGTTCGCTTTGAAGCTCGAATTAAAACGCGATATTTGAAGTCTTTCGGGCTTCCTCTTAATCTTTTTGATGCAATCCGCTTTGCTTCTGACTATAATAGTCAGGGTAAAGACCTGATTTTTGATTTATGGTCATTCTCGTTTTCTGAACTGTTTAAAGCATTTGAGGGGGATTCAATGAATATTTATGACGATTCCGCAGTATTGGACGCTATCCAGTCTAAACATTTTACTATTACCCCCTCTGGCAAAACTTCTTTTGCAAAAGCCTCTCGCTATTTTGGTTTTTATCGTCGTCTGGTAAACGAGGGTTATGATAGTGTTGCTCTTACTATGCCTCGTAATTCCTTTTGGCGTTATGTATCTGCATTAGTTGAATGTGGTATTCCTAAATCTCAACTGATGAATCTTTCTACCTGTAATAATGTTGTTCCGTTAGTTCGTTTTATTAACGTAGATTTTTCTTCCCAACGTCCTGACTGGTATAATGAGCCAGTTCTTAAAATCGCATAAGGTAATTCACAATGATTAAAGTTGAAATTAAACCATCTCAAGCCCAATTTACTACTCGTTCTGGTGTTTCTCGTCAGGGCAAGCCTTATTCACTGAATGAGCAGCTTTGTTACGTTGATTTGGGTAATGAATATCCGGTTCTTGTCAAGATTACTCTTGATGAAGGTCAGCCAGCCTATGCGCCTGGTCTGTACACCGTTCATCTGTCCTCTTTCAAAGTTGGTCAGTTCGGTTCCCTTATGATTGACCGTCTGCGCCTCGTTCCGGCTAAGTAACATGGAGCAGGTCGCGGATTTCGACACAATTTATCAGGCGATGATACAAATCTCCGTTGTACTTTGTTTCGCGCTTGGTATAATCGCTGGGGGTCAAAGATGAGTGTTTTAGTGTATTCTTTTGCCTCTTTCGTTTTAGGTTGGTGCCTTCGTAGTGGCATTACGTATTTTACCCGTTTAATGGAAACTTCCTCATGAAAAAGTCTTTAGTCCTCAAAGCCTCTGTAGCCGTTGCTACCCTCGTTCCGATGCTGTCTTTCGCTGCTGAGGGTGACGATCCCGCAAAAGCGGCCTTTAACTCCCTGCAAGCCTCAGCGACCGAATATATCGGTTATGCGTGGGCGATGGTTGTTGTCATTGTCGGCGCAACTATCGGTATCAAGCTGTTTAAGAAATTCACCTCGAAAGCAAGCTGATAAACCGATACAATTAAAGGCTCCTTTTGGAGCCTTTTTTTTGGAGATTTTCAACGTGAAAAAATTATTATTCGCAATTCCTTTAGTTGTTCCTTTCTATTCTCACTCCGCTGAAACTGTTGAAAGTTGTTTAGCAAAATCCCATACAGAAAATTCATTTACTAACGTCTGGAAAGACGACAAAACTTTAGATCGTTACGCTAACTATGAGGGCTGTCTGTGGAATGCTACAGGCGTTGTAGTTTGTACTGGTGACGAAACTCAGTGTTACGGTACATGGGTTCCTATTGGGCTTGCTATCCCTGAAAATGAGGGTGGTGGCTCTGAGGGTGGCGGTTCTGAGGGTGGCGGTTCTGAGGGTGGCGGTACTAAACCTCCTGAGTACGGTGATACACCTATTCCGGGCTATACTTATATCAACCCTCTCGACGGCACTTATCCGCCTGGTACTGAGCAAAACCCCGCTAATCCTAATCCTTCTCTTGAGGAGTCTCAGCCTCTTAATACTTTCATGTTTCAGAATAATAGGTTCCGAAATAGGCAGGGGGCATTAACTGTTTATACGGGCACTGTTACTCAAGGCACTGACCCCGTTAAAACTTATTACCAGTACACTCCTGTATCATCAAAAGCCATGTATGACGCTTACTGGAACGGTAAATTCAGAGACTGCGCTTTCCATTCTGGCTTTAATGAGGATTTATTTGTTTGTGAATATCAAGGCCAATCGTCTGACCTGCCTCAACCTCCTGTCAATGCTGGCGGCGGCTCTGGTGGTGGTTCTGGTGGCGGCTCTGAGGGTGGTGGCTCTGAGGGTGGCGGTTCTGAGGGTGGCGGCTCTGAGGGAGGCGGTTCCGGTGGTGGCTCTGGTTCCGGTGATTTTGATTATGAAAAGATGGCAAACGCTAATAAGGGGGCTATGACCGAAAATGCCGATGAAAACGCGCTACAGTCTGACGCTAAAGGCAAACTTGAT",
-      "domains": [
-        {"helix": 0, "forward": false, "start": 0, "end": 2080},
-        {"helix": 1, "forward": true, "start": 0, "end": 2080}
-      ],
-      "is_scaffold": true
-    }
-  ]
+{
+  "version": "0.18.1",
+  "grid": "square",
+  "helices": [
+    {"grid_position": [0, 0]},
+    {"grid_position": [0, 1]}
+  ],
+  "strands": [
+    {
+      "name": "staple1",
+      "color": "#f74308",
+      "sequence": "TATTATAGTCTTACCCTGAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 0, "end": 10},
+        {"helix": 1, "forward": false, "start": 0, "end": 10}
+      ]
+    },
+    {
+      "name": "staple2",
+      "color": "#57bb00",
+      "sequence": "AGAAGCAAAGAATCAGGTCT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 10, "end": 20},
+        {"helix": 1, "forward": false, "start": 10, "end": 20}
+      ]
+    },
+    {
+      "name": "staple3",
+      "color": "#888888",
+      "sequence": "CGGATTGCATATAAATCAAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 20, "end": 30},
+        {"helix": 1, "forward": false, "start": 20, "end": 30}
+      ]
+    },
+    {
+      "name": "staple4",
+      "color": "#32b86c",
+      "sequence": "CAAAAAGATTGAGAATGACC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 30, "end": 40},
+        {"helix": 1, "forward": false, "start": 30, "end": 40}
+      ]
+    },
+    {
+      "name": "staple5",
+      "color": "#333333",
+      "sequence": "AAGAGGAAGCTTCAGAAAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 40, "end": 50},
+        {"helix": 1, "forward": false, "start": 40, "end": 50}
+      ]
+    },
+    {
+      "name": "staple6",
+      "color": "#320096",
+      "sequence": "CCGAAAGACTCTTTAAACAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 50, "end": 60},
+        {"helix": 1, "forward": false, "start": 50, "end": 60}
+      ]
+    },
+    {
+      "name": "staple7",
+      "color": "#03b6a2",
+      "sequence": "TCAAATATCGCCCTCAAATG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 60, "end": 70},
+        {"helix": 1, "forward": false, "start": 60, "end": 70}
+      ]
+    },
+    {
+      "name": "staple8",
+      "color": "#7300de",
+      "sequence": "CGTTTTAATTCATTGAATCC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 70, "end": 80},
+        {"helix": 1, "forward": false, "start": 70, "end": 80}
+      ]
+    },
+    {
+      "name": "staple9",
+      "color": "#aaaa00",
+      "sequence": "CGAGCTTCAACATAAATATT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 80, "end": 90},
+        {"helix": 1, "forward": false, "start": 80, "end": 90}
+      ]
+    },
+    {
+      "name": "staple10",
+      "color": "#b8056c",
+      "sequence": "AGCGAACCAGGCGGAATCGT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 90, "end": 100},
+        {"helix": 1, "forward": false, "start": 90, "end": 100}
+      ]
+    },
+    {
+      "name": "staple11",
+      "color": "#007200",
+      "sequence": "ACCGGAAGCAGTCCAATACT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 100, "end": 110},
+        {"helix": 1, "forward": false, "start": 100, "end": 110}
+      ]
+    },
+    {
+      "name": "staple12",
+      "color": "#cc0000",
+      "sequence": "AACTCCAACAACTGGATAGC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 110, "end": 120},
+        {"helix": 1, "forward": false, "start": 110, "end": 120}
+      ]
+    },
+    {
+      "name": "staple13",
+      "color": "#f7931e",
+      "sequence": "GGTCAGGATTAAATGTTTAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 120, "end": 130},
+        {"helix": 1, "forward": false, "start": 120, "end": 130}
+      ]
+    },
+    {
+      "name": "staple14",
+      "color": "#f74308",
+      "sequence": "AGAGAGTACCGGTAATAGTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 130, "end": 140},
+        {"helix": 1, "forward": false, "start": 130, "end": 140}
+      ]
+    },
+    {
+      "name": "staple15",
+      "color": "#57bb00",
+      "sequence": "TTTAATTGCTTGCCAGAGGG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 140, "end": 150},
+        {"helix": 1, "forward": false, "start": 140, "end": 150}
+      ]
+    },
+    {
+      "name": "staple16",
+      "color": "#888888",
+      "sequence": "CCTTTTGATAAAAGAAGTTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 150, "end": 160},
+        {"helix": 1, "forward": false, "start": 150, "end": 160}
+      ]
+    },
+    {
+      "name": "staple17",
+      "color": "#32b86c",
+      "sequence": "AGAGGTCATTGGCTTTTGCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 160, "end": 170},
+        {"helix": 1, "forward": false, "start": 160, "end": 170}
+      ]
+    },
+    {
+      "name": "staple18",
+      "color": "#333333",
+      "sequence": "TTTGCGGATGAATAGCGAGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 170, "end": 180},
+        {"helix": 1, "forward": false, "start": 170, "end": 180}
+      ]
+    },
+    {
+      "name": "staple19",
+      "color": "#320096",
+      "sequence": "GCTTAGAGCTTAAAAACCAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 180, "end": 190},
+        {"helix": 1, "forward": false, "start": 180, "end": 190}
+      ]
+    },
+    {
+      "name": "staple20",
+      "color": "#03b6a2",
+      "sequence": "TAATTGCTGACAGACGACGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 190, "end": 200},
+        {"helix": 1, "forward": false, "start": 190, "end": 200}
+      ]
+    },
+    {
+      "name": "staple21",
+      "color": "#7300de",
+      "sequence": "ATATAATGCTCCTCGTTTAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 200, "end": 210},
+        {"helix": 1, "forward": false, "start": 200, "end": 210}
+      ]
+    },
+    {
+      "name": "staple22",
+      "color": "#aaaa00",
+      "sequence": "GTAGCTCAACCTATCATAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 210, "end": 220},
+        {"helix": 1, "forward": false, "start": 210, "end": 220}
+      ]
+    },
+    {
+      "name": "staple23",
+      "color": "#b8056c",
+      "sequence": "ATGTTTTAAAAAGAGCAACA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 220, "end": 230},
+        {"helix": 1, "forward": false, "start": 220, "end": 230}
+      ]
+    },
+    {
+      "name": "staple24",
+      "color": "#007200",
+      "sequence": "TATGCAACTAGAGGCATAGT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 230, "end": 240},
+        {"helix": 1, "forward": false, "start": 230, "end": 240}
+      ]
+    },
+    {
+      "name": "staple25",
+      "color": "#cc0000",
+      "sequence": "AAGTACGGTGAAGGAATTAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 240, "end": 250},
+        {"helix": 1, "forward": false, "start": 240, "end": 250}
+      ]
+    },
+    {
+      "name": "staple26",
+      "color": "#f7931e",
+      "sequence": "TCTGGAAGTTATAACGCCAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 250, "end": 260},
+        {"helix": 1, "forward": false, "start": 250, "end": 260}
+      ]
+    },
+    {
+      "name": "staple27",
+      "color": "#f74308",
+      "sequence": "TCATTCCATAATGCAGATAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 260, "end": 270},
+        {"helix": 1, "forward": false, "start": 260, "end": 270}
+      ]
+    },
+    {
+      "name": "staple28",
+      "color": "#57bb00",
+      "sequence": "TAACAGTTGACATTCAACTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 270, "end": 280},
+        {"helix": 1, "forward": false, "start": 270, "end": 280}
+      ]
+    },
+    {
+      "name": "staple29",
+      "color": "#888888",
+      "sequence": "TTCCCAATTCAGGAATACCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 280, "end": 290},
+        {"helix": 1, "forward": false, "start": 280, "end": 290}
+      ]
+    },
+    {
+      "name": "staple30",
+      "color": "#32b86c",
+      "sequence": "TGCGAACGAGGTTGAGATTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 290, "end": 300},
+        {"helix": 1, "forward": false, "start": 290, "end": 300}
+      ]
+    },
+    {
+      "name": "staple31",
+      "color": "#333333",
+      "sequence": "TAGATTTAGTAGATTCATCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 300, "end": 310},
+        {"helix": 1, "forward": false, "start": 300, "end": 310}
+      ]
+    },
+    {
+      "name": "staple32",
+      "color": "#320096",
+      "sequence": "TTGACCATTAACAGGTAGAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 310, "end": 320},
+        {"helix": 1, "forward": false, "start": 310, "end": 320}
+      ]
+    },
+    {
+      "name": "staple33",
+      "color": "#03b6a2",
+      "sequence": "GATACATTTCCAACATTATT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 320, "end": 330},
+        {"helix": 1, "forward": false, "start": 320, "end": 330}
+      ]
+    },
+    {
+      "name": "staple34",
+      "color": "#7300de",
+      "sequence": "GCAAATGGTCACTAACGGAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 330, "end": 340},
+        {"helix": 1, "forward": false, "start": 330, "end": 340}
+      ]
+    },
+    {
+      "name": "staple35",
+      "color": "#aaaa00",
+      "sequence": "AATAACCTGTAATAAAACGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 340, "end": 350},
+        {"helix": 1, "forward": false, "start": 340, "end": 350}
+      ]
+    },
+    {
+      "name": "staple36",
+      "color": "#b8056c",
+      "sequence": "TTAGCTATATAATCTACGTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 350, "end": 360},
+        {"helix": 1, "forward": false, "start": 350, "end": 360}
+      ]
+    },
+    {
+      "name": "staple37",
+      "color": "#007200",
+      "sequence": "TTTCATTTGGTGGGAAGAAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 360, "end": 370},
+        {"helix": 1, "forward": false, "start": 360, "end": 370}
+      ]
+    },
+    {
+      "name": "staple38",
+      "color": "#cc0000",
+      "sequence": "GGCGCGAGCTGTCAGGACGT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 370, "end": 380},
+        {"helix": 1, "forward": false, "start": 370, "end": 380}
+      ]
+    },
+    {
+      "name": "staple39",
+      "color": "#f7931e",
+      "sequence": "GAAAAGGTGGCATTATACCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 380, "end": 390},
+        {"helix": 1, "forward": false, "start": 380, "end": 390}
+      ]
+    },
+    {
+      "name": "staple40",
+      "color": "#f74308",
+      "sequence": "CATCAATTCTAGAACTGGCT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 390, "end": 400},
+        {"helix": 1, "forward": false, "start": 390, "end": 400}
+      ]
+    },
+    {
+      "name": "staple41",
+      "color": "#57bb00",
+      "sequence": "ACTAATAGTATGCGATTTTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 400, "end": 410},
+        {"helix": 1, "forward": false, "start": 400, "end": 410}
+      ]
+    },
+    {
+      "name": "staple42",
+      "color": "#888888",
+      "sequence": "GTAGCATTAAAATTACCTTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 410, "end": 420},
+        {"helix": 1, "forward": false, "start": 410, "end": 420}
+      ]
+    },
+    {
+      "name": "staple43",
+      "color": "#32b86c",
+      "sequence": "CATCCAATAAAATCATTGTG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 420, "end": 430},
+        {"helix": 1, "forward": false, "start": 420, "end": 430}
+      ]
+    },
+    {
+      "name": "staple44",
+      "color": "#333333",
+      "sequence": "ATCATACAGGTTTCAACTTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 430, "end": 440},
+        {"helix": 1, "forward": false, "start": 430, "end": 440}
+      ]
+    },
+    {
+      "name": "staple45",
+      "color": "#320096",
+      "sequence": "CAAGGCAAAGGATGGTTTAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 440, "end": 450},
+        {"helix": 1, "forward": false, "start": 440, "end": 450}
+      ]
+    },
+    {
+      "name": "staple46",
+      "color": "#03b6a2",
+      "sequence": "AATTAGCAAATTGGGCTTGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 450, "end": 460},
+        {"helix": 1, "forward": false, "start": 450, "end": 460}
+      ]
+    },
+    {
+      "name": "staple47",
+      "color": "#7300de",
+      "sequence": "ATTAAGCAATGAGTAGTAAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 460, "end": 470},
+        {"helix": 1, "forward": false, "start": 460, "end": 470}
+      ]
+    },
+    {
+      "name": "staple48",
+      "color": "#aaaa00",
+      "sequence": "AAAGCCTCAGACACCAGAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 470, "end": 480},
+        {"helix": 1, "forward": false, "start": 470, "end": 480}
+      ]
+    },
+    {
+      "name": "staple49",
+      "color": "#b8056c",
+      "sequence": "AGCATAAAGCCTGACGAGAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 480, "end": 490},
+        {"helix": 1, "forward": false, "start": 480, "end": 490}
+      ]
+    },
+    {
+      "name": "staple50",
+      "color": "#007200",
+      "sequence": "TAAATCGGTTAAGGCTTGCC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 490, "end": 500},
+        {"helix": 1, "forward": false, "start": 490, "end": 500}
+      ]
+    },
+    {
+      "name": "staple51",
+      "color": "#cc0000",
+      "sequence": "GTACCAAAAATTCAGTGAAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 500, "end": 510},
+        {"helix": 1, "forward": false, "start": 500, "end": 510}
+      ]
+    },
+    {
+      "name": "staple52",
+      "color": "#f7931e",
+      "sequence": "CATTATGACCAAGCTGCTCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 510, "end": 520},
+        {"helix": 1, "forward": false, "start": 510, "end": 520}
+      ]
+    },
+    {
+      "name": "staple53",
+      "color": "#f74308",
+      "sequence": "CTGTAATACTCAACGTAACA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 520, "end": 530},
+        {"helix": 1, "forward": false, "start": 520, "end": 530}
+      ]
+    },
+    {
+      "name": "staple54",
+      "color": "#57bb00",
+      "sequence": "TTTGCGGGAGTTACCCAAAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 530, "end": 540},
+        {"helix": 1, "forward": false, "start": 530, "end": 540}
+      ]
+    },
+    {
+      "name": "staple55",
+      "color": "#888888",
+      "sequence": "AAGCCTTTATCGGATATTCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 540, "end": 550},
+        {"helix": 1, "forward": false, "start": 540, "end": 550}
+      ]
+    },
+    {
+      "name": "staple56",
+      "color": "#32b86c",
+      "sequence": "TTCAACGCAATGACAAGAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 550, "end": 560},
+        {"helix": 1, "forward": false, "start": 550, "end": 560}
+      ]
+    },
+    {
+      "name": "staple57",
+      "color": "#333333",
+      "sequence": "GGATAAAAATAGAGTAATCT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 560, "end": 570},
+        {"helix": 1, "forward": false, "start": 560, "end": 570}
+      ]
+    },
+    {
+      "name": "staple58",
+      "color": "#320096",
+      "sequence": "TTTTAGAACCACCTTCATCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 570, "end": 580},
+        {"helix": 1, "forward": false, "start": 570, "end": 580}
+      ]
+    },
+    {
+      "name": "staple59",
+      "color": "#03b6a2",
+      "sequence": "CTCATATATTAGGCTGGCTG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 580, "end": 590},
+        {"helix": 1, "forward": false, "start": 580, "end": 590}
+      ]
+    },
+    {
+      "name": "staple60",
+      "color": "#7300de",
+      "sequence": "TTAAATGCAACCAGGCGCAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 590, "end": 600},
+        {"helix": 1, "forward": false, "start": 590, "end": 600}
+      ]
+    },
+    {
+      "name": "staple61",
+      "color": "#aaaa00",
+      "sequence": "TGCCTGAGTAGGTGTACAGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 600, "end": 610},
+        {"helix": 1, "forward": false, "start": 600, "end": 610}
+      ]
+    },
+    {
+      "name": "staple62",
+      "color": "#b8056c",
+      "sequence": "ATGTGTAGGTACAGATGAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 610, "end": 620},
+        {"helix": 1, "forward": false, "start": 610, "end": 620}
+      ]
+    },
+    {
+      "name": "staple63",
+      "color": "#007200",
+      "sequence": "AAAGATTCAATTGAAAGAGG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 620, "end": 630},
+        {"helix": 1, "forward": false, "start": 620, "end": 630}
+      ]
+    },
+    {
+      "name": "staple64",
+      "color": "#cc0000",
+      "sequence": "AAGGGTGAGACTGACCAACT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 630, "end": 640},
+        {"helix": 1, "forward": false, "start": 630, "end": 640}
+      ]
+    },
+    {
+      "name": "staple65",
+      "color": "#f7931e",
+      "sequence": "AAGGCCGGAGGGGAACCGAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 640, "end": 650},
+        {"helix": 1, "forward": false, "start": 640, "end": 650}
+      ]
+    },
+    {
+      "name": "staple66",
+      "color": "#f74308",
+      "sequence": "ACAGTCAAATTCAATCATAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 650, "end": 660},
+        {"helix": 1, "forward": false, "start": 650, "end": 660}
+      ]
+    },
+    {
+      "name": "staple67",
+      "color": "#57bb00",
+      "sequence": "CACCATCAATGCGCAGACGG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 660, "end": 670},
+        {"helix": 1, "forward": false, "start": 660, "end": 670}
+      ]
+    },
+    {
+      "name": "staple68",
+      "color": "#888888",
+      "sequence": "ATGATATTCACCGGAACGAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 670, "end": 680},
+        {"helix": 1, "forward": false, "start": 670, "end": 680}
+      ]
+    },
+    {
+      "name": "staple69",
+      "color": "#32b86c",
+      "sequence": "ACCGTTCTAGTGTTACTTAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 680, "end": 690},
+        {"helix": 1, "forward": false, "start": 680, "end": 690}
+      ]
+    },
+    {
+      "name": "staple70",
+      "color": "#333333",
+      "sequence": "CTGATAAATTACCTGCTCCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 690, "end": 700},
+        {"helix": 1, "forward": false, "start": 690, "end": 700}
+      ]
+    },
+    {
+      "name": "staple71",
+      "color": "#320096",
+      "sequence": "AATGCCGGAGGAAATCCGCG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 700, "end": 710},
+        {"helix": 1, "forward": false, "start": 700, "end": 710}
+      ]
+    },
+    {
+      "name": "staple72",
+      "color": "#03b6a2",
+      "sequence": "AGGGTAGCTAAAATTGTGTC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 710, "end": 720},
+        {"helix": 1, "forward": false, "start": 710, "end": 720}
+      ]
+    },
+    {
+      "name": "staple73",
+      "color": "#7300de",
+      "sequence": "TTTTTGAGAGATCGCCTGAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 720, "end": 730},
+        {"helix": 1, "forward": false, "start": 720, "end": 730}
+      ]
+    },
+    {
+      "name": "staple74",
+      "color": "#aaaa00",
+      "sequence": "ATCTACAAAGGATTTGTATC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 730, "end": 740},
+        {"helix": 1, "forward": false, "start": 730, "end": 740}
+      ]
+    },
+    {
+      "name": "staple75",
+      "color": "#b8056c",
+      "sequence": "GCTATCAGGTGTACAACGGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 740, "end": 750},
+        {"helix": 1, "forward": false, "start": 740, "end": 750}
+      ]
+    },
+    {
+      "name": "staple76",
+      "color": "#007200",
+      "sequence": "CATTGCCTGAGCGAAACAAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 750, "end": 760},
+        {"helix": 1, "forward": false, "start": 750, "end": 760}
+      ]
+    },
+    {
+      "name": "staple77",
+      "color": "#cc0000",
+      "sequence": "GAGTCTGGAGTATACCAAGC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 760, "end": 770},
+        {"helix": 1, "forward": false, "start": 760, "end": 770}
+      ]
+    },
+    {
+      "name": "staple78",
+      "color": "#f7931e",
+      "sequence": "CAAACAAGAGCCCCAGCGAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 770, "end": 780},
+        {"helix": 1, "forward": false, "start": 770, "end": 780}
+      ]
+    },
+    {
+      "name": "staple79",
+      "color": "#f74308",
+      "sequence": "AATCGATGAACATCTTTGAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 780, "end": 790},
+        {"helix": 1, "forward": false, "start": 780, "end": 790}
+      ]
+    },
+    {
+      "name": "staple80",
+      "color": "#57bb00",
+      "sequence": "CGGTAATCGTCTAAAACACT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 790, "end": 800},
+        {"helix": 1, "forward": false, "start": 790, "end": 800}
+      ]
+    },
+    {
+      "name": "staple81",
+      "color": "#888888",
+      "sequence": "AAAACTAGCAAAAGAATACA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 800, "end": 810},
+        {"helix": 1, "forward": false, "start": 800, "end": 810}
+      ]
+    },
+    {
+      "name": "staple82",
+      "color": "#32b86c",
+      "sequence": "TGTCAATCATGAAAGAGGCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 810, "end": 820},
+        {"helix": 1, "forward": false, "start": 810, "end": 820}
+      ]
+    },
+    {
+      "name": "staple83",
+      "color": "#333333",
+      "sequence": "ATGTACCCCGAACCTAAAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 820, "end": 830},
+        {"helix": 1, "forward": false, "start": 820, "end": 830}
+      ]
+    },
+    {
+      "name": "staple84",
+      "color": "#320096",
+      "sequence": "GTTGATAATCCGAAGGCACC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 830, "end": 840},
+        {"helix": 1, "forward": false, "start": 830, "end": 840}
+      ]
+    },
+    {
+      "name": "staple85",
+      "color": "#03b6a2",
+      "sequence": "AGAAAAGCCCAATGCCACTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 840, "end": 850},
+        {"helix": 1, "forward": false, "start": 840, "end": 850}
+      ]
+    },
+    {
+      "name": "staple86",
+      "color": "#7300de",
+      "sequence": "CAAAAACAGGTAAAATACGT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 850, "end": 860},
+        {"helix": 1, "forward": false, "start": 850, "end": 860}
+      ]
+    },
+    {
+      "name": "staple87",
+      "color": "#aaaa00",
+      "sequence": "AAGATTGTATATTAAACGGG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 860, "end": 870},
+        {"helix": 1, "forward": false, "start": 860, "end": 870}
+      ]
+    },
+    {
+      "name": "staple88",
+      "color": "#b8056c",
+      "sequence": "AAGCAAATATGGAAGTTTCC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 870, "end": 880},
+        {"helix": 1, "forward": false, "start": 870, "end": 880}
+      ]
+    },
+    {
+      "name": "staple89",
+      "color": "#007200",
+      "sequence": "TTAAATTGTATTTTTCATGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "A12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 880, "end": 890},
+        {"helix": 1, "forward": false, "start": 880, "end": 890}
+      ]
+    },
+    {
+      "name": "staple90",
+      "color": "#cc0000",
+      "sequence": "AACGTTAATAGACTAAAGAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "B12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 890, "end": 900},
+        {"helix": 1, "forward": false, "start": 890, "end": 900}
+      ]
+    },
+    {
+      "name": "staple91",
+      "color": "#f7931e",
+      "sequence": "TTTTGTTAAAAGGCTTTGAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "C12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 900, "end": 910},
+        {"helix": 1, "forward": false, "start": 900, "end": 910}
+      ]
+    },
+    {
+      "name": "staple92",
+      "color": "#f74308",
+      "sequence": "ATTCGCATTAACGGCTACAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "D12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 910, "end": 920},
+        {"helix": 1, "forward": false, "start": 910, "end": 920}
+      ]
+    },
+    {
+      "name": "staple93",
+      "color": "#57bb00",
+      "sequence": "AATTTTTGTTGAGGGTAGCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "E12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 920, "end": 930},
+        {"helix": 1, "forward": false, "start": 920, "end": 930}
+      ]
+    },
+    {
+      "name": "staple94",
+      "color": "#888888",
+      "sequence": "AAATCAGCTCGCATCGGAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "F12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 930, "end": 940},
+        {"helix": 1, "forward": false, "start": 930, "end": 940}
+      ]
+    },
+    {
+      "name": "staple95",
+      "color": "#32b86c",
+      "sequence": "ATTTTTTAACGCGAAAGACA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "G12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 940, "end": 950},
+        {"helix": 1, "forward": false, "start": 940, "end": 950}
+      ]
+    },
+    {
+      "name": "staple96",
+      "color": "#333333",
+      "sequence": "CAATAGGAACACCCTCAGCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate1", "well": "H12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 950, "end": 960},
+        {"helix": 1, "forward": false, "start": 950, "end": 960}
+      ]
+    },
+    {
+      "name": "staple97",
+      "color": "#320096",
+      "sequence": "GCCATCAAAACGGGATCGTC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 960, "end": 970},
+        {"helix": 1, "forward": false, "start": 960, "end": 970}
+      ]
+    },
+    {
+      "name": "staple98",
+      "color": "#03b6a2",
+      "sequence": "ATAATTCGCGGCCGCTTTTG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 970, "end": 980},
+        {"helix": 1, "forward": false, "start": 970, "end": 980}
+      ]
+    },
+    {
+      "name": "staple99",
+      "color": "#7300de",
+      "sequence": "TCTGGCCTTCGGAGTTAAAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 980, "end": 990},
+        {"helix": 1, "forward": false, "start": 980, "end": 990}
+      ]
+    },
+    {
+      "name": "staple100",
+      "color": "#aaaa00",
+      "sequence": "CTGTAGCCAGAGGCTTGCAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 990, "end": 1000},
+        {"helix": 1, "forward": false, "start": 990, "end": 1000}
+      ]
+    },
+    {
+      "name": "staple101",
+      "color": "#b8056c",
+      "sequence": "CTTTCATCAATCGGTCGCTG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1000, "end": 1010},
+        {"helix": 1, "forward": false, "start": 1000, "end": 1010}
+      ]
+    },
+    {
+      "name": "staple102",
+      "color": "#007200",
+      "sequence": "CATTAAATGTACCGATATAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1010, "end": 1020},
+        {"helix": 1, "forward": false, "start": 1010, "end": 1020}
+      ]
+    },
+    {
+      "name": "staple103",
+      "color": "#cc0000",
+      "sequence": "GAGCGAGTAACCCACGCATA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1020, "end": 1030},
+        {"helix": 1, "forward": false, "start": 1020, "end": 1030}
+      ]
+    },
+    {
+      "name": "staple104",
+      "color": "#f7931e",
+      "sequence": "CAACCCGTCGACAACCATCG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1030, "end": 1040},
+        {"helix": 1, "forward": false, "start": 1030, "end": 1040}
+      ]
+    },
+    {
+      "name": "staple105",
+      "color": "#f74308",
+      "sequence": "GATTCTCCGTGACAATGACA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1040, "end": 1050},
+        {"helix": 1, "forward": false, "start": 1040, "end": 1050}
+      ]
+    },
+    {
+      "name": "staple106",
+      "color": "#57bb00",
+      "sequence": "GGGAACAAACTAGTTGCGCC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1050, "end": 1060},
+        {"helix": 1, "forward": false, "start": 1050, "end": 1060}
+      ]
+    },
+    {
+      "name": "staple107",
+      "color": "#888888",
+      "sequence": "GGCGGATTGATTGATACCGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1060, "end": 1070},
+        {"helix": 1, "forward": false, "start": 1060, "end": 1070}
+      ]
+    },
+    {
+      "name": "staple108",
+      "color": "#32b86c",
+      "sequence": "CCGTAATGGGCTTAAACAGC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1070, "end": 1080},
+        {"helix": 1, "forward": false, "start": 1070, "end": 1080}
+      ]
+    },
+    {
+      "name": "staple109",
+      "color": "#333333",
+      "sequence": "ATAGGTCACGAGGTGAATTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1080, "end": 1090},
+        {"helix": 1, "forward": false, "start": 1080, "end": 1090}
+      ]
+    },
+    {
+      "name": "staple110",
+      "color": "#320096",
+      "sequence": "TTGGTGTAGACTTGCTTTCG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1090, "end": 1100},
+        {"helix": 1, "forward": false, "start": 1090, "end": 1100}
+      ]
+    },
+    {
+      "name": "staple111",
+      "color": "#03b6a2",
+      "sequence": "TGGGCGCATCGGTTTATCAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1100, "end": 1110},
+        {"helix": 1, "forward": false, "start": 1100, "end": 1110}
+      ]
+    },
+    {
+      "name": "staple112",
+      "color": "#7300de",
+      "sequence": "GTAACCGTGCTAATTGTATC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1110, "end": 1120},
+        {"helix": 1, "forward": false, "start": 1110, "end": 1120}
+      ]
+    },
+    {
+      "name": "staple113",
+      "color": "#aaaa00",
+      "sequence": "ATCTGCCAGTAAGGAGCCTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1120, "end": 1130},
+        {"helix": 1, "forward": false, "start": 1120, "end": 1130}
+      ]
+    },
+    {
+      "name": "staple114",
+      "color": "#b8056c",
+      "sequence": "TTGAGGGGACAAGGCTCCAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1130, "end": 1140},
+        {"helix": 1, "forward": false, "start": 1130, "end": 1140}
+      ]
+    },
+    {
+      "name": "staple115",
+      "color": "#007200",
+      "sequence": "GACGACAGTACTCCAAAAAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1140, "end": 1150},
+        {"helix": 1, "forward": false, "start": 1140, "end": 1150}
+      ]
+    },
+    {
+      "name": "staple116",
+      "color": "#cc0000",
+      "sequence": "TCGGCCTCAGCGTTGAAAAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1150, "end": 1160},
+        {"helix": 1, "forward": false, "start": 1150, "end": 1160}
+      ]
+    },
+    {
+      "name": "staple117",
+      "color": "#f7931e",
+      "sequence": "GAAGATCGCAAATTTTTTCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1160, "end": 1170},
+        {"helix": 1, "forward": false, "start": 1160, "end": 1170}
+      ]
+    },
+    {
+      "name": "staple118",
+      "color": "#f74308",
+      "sequence": "CTCCAGCCAGTGCGAATAAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1170, "end": 1180},
+        {"helix": 1, "forward": false, "start": 1170, "end": 1180}
+      ]
+    },
+    {
+      "name": "staple119",
+      "color": "#57bb00",
+      "sequence": "CTTTCCGGCACTAAAGGAAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1180, "end": 1190},
+        {"helix": 1, "forward": false, "start": 1180, "end": 1190}
+      ]
+    },
+    {
+      "name": "staple120",
+      "color": "#888888",
+      "sequence": "CCGCTTCTGGAAAGGAACAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H3"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1190, "end": 1200},
+        {"helix": 1, "forward": false, "start": 1190, "end": 1200}
+      ]
+    },
+    {
+      "name": "staple121",
+      "color": "#32b86c",
+      "sequence": "TGCCGGAAACGTGAGAATAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1200, "end": 1210},
+        {"helix": 1, "forward": false, "start": 1200, "end": 1210}
+      ]
+    },
+    {
+      "name": "staple122",
+      "color": "#333333",
+      "sequence": "CAGGCAAAGCTTTCAGCGGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1210, "end": 1220},
+        {"helix": 1, "forward": false, "start": 1210, "end": 1220}
+      ]
+    },
+    {
+      "name": "staple123",
+      "color": "#320096",
+      "sequence": "GCCATTCGCCCTTTCAACAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1220, "end": 1230},
+        {"helix": 1, "forward": false, "start": 1220, "end": 1230}
+      ]
+    },
+    {
+      "name": "staple124",
+      "color": "#03b6a2",
+      "sequence": "ATTCAGGCTGTGCTAAACAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1230, "end": 1240},
+        {"helix": 1, "forward": false, "start": 1230, "end": 1240}
+      ]
+    },
+    {
+      "name": "staple125",
+      "color": "#7300de",
+      "sequence": "CGCAACTGTTTATGGGATTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1240, "end": 1250},
+        {"helix": 1, "forward": false, "start": 1240, "end": 1250}
+      ]
+    },
+    {
+      "name": "staple126",
+      "color": "#aaaa00",
+      "sequence": "GGGAAGGGCGGAATTTTCTG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1250, "end": 1260},
+        {"helix": 1, "forward": false, "start": 1250, "end": 1260}
+      ]
+    },
+    {
+      "name": "staple127",
+      "color": "#b8056c",
+      "sequence": "ATCGGTGCGGGTTAGTAAAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1260, "end": 1270},
+        {"helix": 1, "forward": false, "start": 1260, "end": 1270}
+      ]
+    },
+    {
+      "name": "staple128",
+      "color": "#007200",
+      "sequence": "GCCTCTTCGCCTTTCCAGAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H4"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1270, "end": 1280},
+        {"helix": 1, "forward": false, "start": 1270, "end": 1280}
+      ]
+    },
+    {
+      "name": "staple129",
+      "color": "#cc0000",
+      "sequence": "TATTACGCCAGTTTTGTCGT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1280, "end": 1290},
+        {"helix": 1, "forward": false, "start": 1280, "end": 1290}
+      ]
+    },
+    {
+      "name": "staple130",
+      "color": "#f7931e",
+      "sequence": "GCTGGCGAAAACGATCTAAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1290, "end": 1300},
+        {"helix": 1, "forward": false, "start": 1290, "end": 1300}
+      ]
+    },
+    {
+      "name": "staple131",
+      "color": "#f74308",
+      "sequence": "GGGGGATGTGAGTTAGCGTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1300, "end": 1310},
+        {"helix": 1, "forward": false, "start": 1300, "end": 1310}
+      ]
+    },
+    {
+      "name": "staple132",
+      "color": "#57bb00",
+      "sequence": "CTGCAAGGCGCAGCCCTCAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1310, "end": 1320},
+        {"helix": 1, "forward": false, "start": 1310, "end": 1320}
+      ]
+    },
+    {
+      "name": "staple133",
+      "color": "#888888",
+      "sequence": "ATTAAGTTGGATTCCACAGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1320, "end": 1330},
+        {"helix": 1, "forward": false, "start": 1320, "end": 1330}
+      ]
+    },
+    {
+      "name": "staple134",
+      "color": "#32b86c",
+      "sequence": "GTAACGCCAGCGCCTGTAGC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1330, "end": 1340},
+        {"helix": 1, "forward": false, "start": 1330, "end": 1340}
+      ]
+    },
+    {
+      "name": "staple135",
+      "color": "#333333",
+      "sequence": "GGTTTTCCCACAAACTACAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1340, "end": 1350},
+        {"helix": 1, "forward": false, "start": 1340, "end": 1350}
+      ]
+    },
+    {
+      "name": "staple136",
+      "color": "#320096",
+      "sequence": "GTCACGACGTGTCACCAGTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H5"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1350, "end": 1360},
+        {"helix": 1, "forward": false, "start": 1350, "end": 1360}
+      ]
+    },
+    {
+      "name": "staple137",
+      "color": "#03b6a2",
+      "sequence": "TGTAAAACGAACTGAGTTTC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1360, "end": 1370},
+        {"helix": 1, "forward": false, "start": 1360, "end": 1370}
+      ]
+    },
+    {
+      "name": "staple138",
+      "color": "#7300de",
+      "sequence": "CGGCCAGTGCGTACCGTAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1370, "end": 1380},
+        {"helix": 1, "forward": false, "start": 1370, "end": 1380}
+      ]
+    },
+    {
+      "name": "staple139",
+      "color": "#aaaa00",
+      "sequence": "CAAGCTTGCAAGGAACCCAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1380, "end": 1390},
+        {"helix": 1, "forward": false, "start": 1380, "end": 1390}
+      ]
+    },
+    {
+      "name": "staple140",
+      "color": "#b8056c",
+      "sequence": "TGCCTGCAGGCAAGCCCAAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1390, "end": 1400},
+        {"helix": 1, "forward": false, "start": 1390, "end": 1400}
+      ]
+    },
+    {
+      "name": "staple141",
+      "color": "#007200",
+      "sequence": "TCGACTCTAGTCAGGGATAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1400, "end": 1410},
+        {"helix": 1, "forward": false, "start": 1400, "end": 1410}
+      ]
+    },
+    {
+      "name": "staple142",
+      "color": "#cc0000",
+      "sequence": "AGGATCCCCGACCCTCATTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1410, "end": 1420},
+        {"helix": 1, "forward": false, "start": 1410, "end": 1420}
+      ]
+    },
+    {
+      "name": "staple143",
+      "color": "#f7931e",
+      "sequence": "GGTACCGAGCCAGAGCCACC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1420, "end": 1430},
+        {"helix": 1, "forward": false, "start": 1420, "end": 1430}
+      ]
+    },
+    {
+      "name": "staple144",
+      "color": "#f74308",
+      "sequence": "TCGAATTCGTCCGCCACCCT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H6"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1430, "end": 1440},
+        {"helix": 1, "forward": false, "start": 1430, "end": 1440}
+      ]
+    },
+    {
+      "name": "staple145",
+      "color": "#57bb00",
+      "sequence": "AATCATGGTCACCCTCAGAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1440, "end": 1450},
+        {"helix": 1, "forward": false, "start": 1440, "end": 1450}
+      ]
+    },
+    {
+      "name": "staple146",
+      "color": "#888888",
+      "sequence": "ATAGCTGTTTCAGAACCGCC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1450, "end": 1460},
+        {"helix": 1, "forward": false, "start": 1450, "end": 1460}
+      ]
+    },
+    {
+      "name": "staple147",
+      "color": "#32b86c",
+      "sequence": "CCTGTGTGAACCGCCACCCT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1460, "end": 1470},
+        {"helix": 1, "forward": false, "start": 1460, "end": 1470}
+      ]
+    },
+    {
+      "name": "staple148",
+      "color": "#333333",
+      "sequence": "ATTGTTATCCAGGTTTAGTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1470, "end": 1480},
+        {"helix": 1, "forward": false, "start": 1470, "end": 1480}
+      ]
+    },
+    {
+      "name": "staple149",
+      "color": "#320096",
+      "sequence": "GCTCACAATTCGTACTCAGG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1480, "end": 1490},
+        {"helix": 1, "forward": false, "start": 1480, "end": 1490}
+      ]
+    },
+    {
+      "name": "staple150",
+      "color": "#03b6a2",
+      "sequence": "CCACACAACAGGTGTATCAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1490, "end": 1500},
+        {"helix": 1, "forward": false, "start": 1490, "end": 1500}
+      ]
+    },
+    {
+      "name": "staple151",
+      "color": "#7300de",
+      "sequence": "TACGAGCCGGGCCCGGAATA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1500, "end": 1510},
+        {"helix": 1, "forward": false, "start": 1500, "end": 1510}
+      ]
+    },
+    {
+      "name": "staple152",
+      "color": "#aaaa00",
+      "sequence": "AAGCATAAAGTATAAGTATA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H7"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1510, "end": 1520},
+        {"helix": 1, "forward": false, "start": 1510, "end": 1520}
+      ]
+    },
+    {
+      "name": "staple153",
+      "color": "#b8056c",
+      "sequence": "TGTAAAGCCTAGAGGGTTGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1520, "end": 1530},
+        {"helix": 1, "forward": false, "start": 1520, "end": 1530}
+      ]
+    },
+    {
+      "name": "staple154",
+      "color": "#007200",
+      "sequence": "GGGGTGCCTAAGTGCCGTCG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1530, "end": 1540},
+        {"helix": 1, "forward": false, "start": 1530, "end": 1540}
+      ]
+    },
+    {
+      "name": "staple155",
+      "color": "#cc0000",
+      "sequence": "ATGAGTGAGCCAGGCGGATA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1540, "end": 1550},
+        {"helix": 1, "forward": false, "start": 1540, "end": 1550}
+      ]
+    },
+    {
+      "name": "staple156",
+      "color": "#f7931e",
+      "sequence": "TAACTCACATTGCTCAGTAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1550, "end": 1560},
+        {"helix": 1, "forward": false, "start": 1550, "end": 1560}
+      ]
+    },
+    {
+      "name": "staple157",
+      "color": "#f74308",
+      "sequence": "TAATTGCGTTAGCGGGGTTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1560, "end": 1570},
+        {"helix": 1, "forward": false, "start": 1560, "end": 1570}
+      ]
+    },
+    {
+      "name": "staple158",
+      "color": "#57bb00",
+      "sequence": "GCGCTCACTGGATTAGGATT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1570, "end": 1580},
+        {"helix": 1, "forward": false, "start": 1570, "end": 1580}
+      ]
+    },
+    {
+      "name": "staple159",
+      "color": "#888888",
+      "sequence": "CCCGCTTTCCTCAAGAGAAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1580, "end": 1590},
+        {"helix": 1, "forward": false, "start": 1580, "end": 1590}
+      ]
+    },
+    {
+      "name": "staple160",
+      "color": "#32b86c",
+      "sequence": "AGTCGGGAAACTGAGACTCC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H8"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1590, "end": 1600},
+        {"helix": 1, "forward": false, "start": 1590, "end": 1600}
+      ]
+    },
+    {
+      "name": "staple161",
+      "color": "#333333",
+      "sequence": "CCTGTCGTGCTATTAAGAGG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1600, "end": 1610},
+        {"helix": 1, "forward": false, "start": 1600, "end": 1610}
+      ]
+    },
+    {
+      "name": "staple162",
+      "color": "#320096",
+      "sequence": "CAGCTGCATTAACATGAAAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1610, "end": 1620},
+        {"helix": 1, "forward": false, "start": 1610, "end": 1620}
+      ]
+    },
+    {
+      "name": "staple163",
+      "color": "#03b6a2",
+      "sequence": "AATGAATCGGATTATTCTGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1620, "end": 1630},
+        {"helix": 1, "forward": false, "start": 1620, "end": 1630}
+      ]
+    },
+    {
+      "name": "staple164",
+      "color": "#7300de",
+      "sequence": "CCAACGCGCGTTCGGAACCT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1630, "end": 1640},
+        {"helix": 1, "forward": false, "start": 1630, "end": 1640}
+      ]
+    },
+    {
+      "name": "staple165",
+      "color": "#aaaa00",
+      "sequence": "GGGAGAGGCGCCCTGCCTAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1640, "end": 1650},
+        {"helix": 1, "forward": false, "start": 1640, "end": 1650}
+      ]
+    },
+    {
+      "name": "staple166",
+      "color": "#b8056c",
+      "sequence": "GTTTGCGTATAGTTAATGCC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1650, "end": 1660},
+        {"helix": 1, "forward": false, "start": 1650, "end": 1660}
+      ]
+    },
+    {
+      "name": "staple167",
+      "color": "#007200",
+      "sequence": "TGGGCGCCAGCCGTATAAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1660, "end": 1670},
+        {"helix": 1, "forward": false, "start": 1660, "end": 1670}
+      ]
+    },
+    {
+      "name": "staple168",
+      "color": "#cc0000",
+      "sequence": "GGTGGTTTTTGTAACAGTGC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H9"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1670, "end": 1680},
+        {"helix": 1, "forward": false, "start": 1670, "end": 1680}
+      ]
+    },
+    {
+      "name": "staple169",
+      "color": "#f7931e",
+      "sequence": "CTTTTCACCAAGTGCCTTGA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1680, "end": 1690},
+        {"helix": 1, "forward": false, "start": 1680, "end": 1690}
+      ]
+    },
+    {
+      "name": "staple170",
+      "color": "#f74308",
+      "sequence": "GTGAGACGGGTAACGGGGTC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1690, "end": 1700},
+        {"helix": 1, "forward": false, "start": 1690, "end": 1700}
+      ]
+    },
+    {
+      "name": "staple171",
+      "color": "#57bb00",
+      "sequence": "CAACAGCTGATAATAAGTTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1700, "end": 1710},
+        {"helix": 1, "forward": false, "start": 1700, "end": 1710}
+      ]
+    },
+    {
+      "name": "staple172",
+      "color": "#888888",
+      "sequence": "TTGCCCTTCAAGTGTACTGG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1710, "end": 1720},
+        {"helix": 1, "forward": false, "start": 1710, "end": 1720}
+      ]
+    },
+    {
+      "name": "staple173",
+      "color": "#32b86c",
+      "sequence": "CCGCCTGGCCATGATACAGG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1720, "end": 1730},
+        {"helix": 1, "forward": false, "start": 1720, "end": 1730}
+      ]
+    },
+    {
+      "name": "staple174",
+      "color": "#333333",
+      "sequence": "CTGAGAGAGTATGGCTTTTG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1730, "end": 1740},
+        {"helix": 1, "forward": false, "start": 1730, "end": 1740}
+      ]
+    },
+    {
+      "name": "staple175",
+      "color": "#320096",
+      "sequence": "TGCAGCAAGCAGCGTCATAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1740, "end": 1750},
+        {"helix": 1, "forward": false, "start": 1740, "end": 1750}
+      ]
+    },
+    {
+      "name": "staple176",
+      "color": "#03b6a2",
+      "sequence": "GGTCCACGCTCGTTCCAGTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H10"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1750, "end": 1760},
+        {"helix": 1, "forward": false, "start": 1750, "end": 1760}
+      ]
+    },
+    {
+      "name": "staple177",
+      "color": "#7300de",
+      "sequence": "GGTTTGCCCCCTGAATTTAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1760, "end": 1770},
+        {"helix": 1, "forward": false, "start": 1760, "end": 1770}
+      ]
+    },
+    {
+      "name": "staple178",
+      "color": "#aaaa00",
+      "sequence": "AGCAGGCGAAAGCGCAGTCT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1770, "end": 1780},
+        {"helix": 1, "forward": false, "start": 1770, "end": 1780}
+      ]
+    },
+    {
+      "name": "staple179",
+      "color": "#b8056c",
+      "sequence": "AATCCTGTTTCAGAATGGAA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1780, "end": 1790},
+        {"helix": 1, "forward": false, "start": 1780, "end": 1790}
+      ]
+    },
+    {
+      "name": "staple180",
+      "color": "#007200",
+      "sequence": "GATGGTGGTTTCATTAAAGC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1790, "end": 1800},
+        {"helix": 1, "forward": false, "start": 1790, "end": 1800}
+      ]
+    },
+    {
+      "name": "staple181",
+      "color": "#cc0000",
+      "sequence": "CCGAAATCGGAAATAAATCC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1800, "end": 1810},
+        {"helix": 1, "forward": false, "start": 1800, "end": 1810}
+      ]
+    },
+    {
+      "name": "staple182",
+      "color": "#f7931e",
+      "sequence": "CAAAATCCCTATTCACAAAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1810, "end": 1820},
+        {"helix": 1, "forward": false, "start": 1810, "end": 1820}
+      ]
+    },
+    {
+      "name": "staple183",
+      "color": "#f74308",
+      "sequence": "TATAAATCAATGGCCTTGAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1820, "end": 1830},
+        {"helix": 1, "forward": false, "start": 1820, "end": 1830}
+      ]
+    },
+    {
+      "name": "staple184",
+      "color": "#57bb00",
+      "sequence": "AAGAATAGCCGTCAGACGAT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H11"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1830, "end": 1840},
+        {"helix": 1, "forward": false, "start": 1830, "end": 1840}
+      ]
+    },
+    {
+      "name": "staple185",
+      "color": "#888888",
+      "sequence": "CGAGATAGGGGTTGAGGCAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "A12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1840, "end": 1850},
+        {"helix": 1, "forward": false, "start": 1840, "end": 1850}
+      ]
+    },
+    {
+      "name": "staple186",
+      "color": "#32b86c",
+      "sequence": "TTGAGTGTTGTTGACAGGAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "B12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1850, "end": 1860},
+        {"helix": 1, "forward": false, "start": 1850, "end": 1860}
+      ]
+    },
+    {
+      "name": "staple187",
+      "color": "#333333",
+      "sequence": "TTCCAGTTTGGCCGCCAGCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "C12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1860, "end": 1870},
+        {"helix": 1, "forward": false, "start": 1860, "end": 1870}
+      ]
+    },
+    {
+      "name": "staple188",
+      "color": "#320096",
+      "sequence": "GAACAAGAGTCACCAGAGCC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "D12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1870, "end": 1880},
+        {"helix": 1, "forward": false, "start": 1870, "end": 1880}
+      ]
+    },
+    {
+      "name": "staple189",
+      "color": "#03b6a2",
+      "sequence": "CCACTATTAACCAGAACCAC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "E12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1880, "end": 1890},
+        {"helix": 1, "forward": false, "start": 1880, "end": 1890}
+      ]
+    },
+    {
+      "name": "staple190",
+      "color": "#7300de",
+      "sequence": "AGAACGTGGAAGAGCCGCCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "F12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1890, "end": 1900},
+        {"helix": 1, "forward": false, "start": 1890, "end": 1900}
+      ]
+    },
+    {
+      "name": "staple191",
+      "color": "#aaaa00",
+      "sequence": "CTCCAACGTCCACCACCCTC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "G12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1900, "end": 1910},
+        {"helix": 1, "forward": false, "start": 1900, "end": 1910}
+      ]
+    },
+    {
+      "name": "staple192",
+      "color": "#b8056c",
+      "sequence": "AAAGGGCGAACCCTCAGAGC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate2", "well": "H12"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1910, "end": 1920},
+        {"helix": 1, "forward": false, "start": 1910, "end": 1920}
+      ]
+    },
+    {
+      "name": "staple193",
+      "color": "#007200",
+      "sequence": "AAACCGTCTAAGAACCGCCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "A1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1920, "end": 1930},
+        {"helix": 1, "forward": false, "start": 1920, "end": 1930}
+      ]
+    },
+    {
+      "name": "staple194",
+      "color": "#cc0000",
+      "sequence": "TCAGGGCGATCGCCACCCTC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "B1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1930, "end": 1940},
+        {"helix": 1, "forward": false, "start": 1930, "end": 1940}
+      ]
+    },
+    {
+      "name": "staple195",
+      "color": "#f7931e",
+      "sequence": "GGCCCACTACCCCTCAGAGC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "C1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1940, "end": 1950},
+        {"helix": 1, "forward": false, "start": 1940, "end": 1950}
+      ]
+    },
+    {
+      "name": "staple196",
+      "color": "#f74308",
+      "sequence": "GTGAACCATCGGAACCGCCT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "D1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1950, "end": 1960},
+        {"helix": 1, "forward": false, "start": 1950, "end": 1960}
+      ]
+    },
+    {
+      "name": "staple197",
+      "color": "#57bb00",
+      "sequence": "ACCCAAATCAAGCCACCACC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "E1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1960, "end": 1970},
+        {"helix": 1, "forward": false, "start": 1960, "end": 1970}
+      ]
+    },
+    {
+      "name": "staple198",
+      "color": "#888888",
+      "sequence": "AGTTTTTTGGCCGGAACCAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "F1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1970, "end": 1980},
+        {"helix": 1, "forward": false, "start": 1970, "end": 1980}
+      ]
+    },
+    {
+      "name": "staple199",
+      "color": "#32b86c",
+      "sequence": "GGTCGAGGTGATCAAAATCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "G1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1980, "end": 1990},
+        {"helix": 1, "forward": false, "start": 1980, "end": 1990}
+      ]
+    },
+    {
+      "name": "staple200",
+      "color": "#333333",
+      "sequence": "CCGTAAAGCATCTTTTCATA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "H1"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 1990, "end": 2000},
+        {"helix": 1, "forward": false, "start": 1990, "end": 2000}
+      ]
+    },
+    {
+      "name": "staple201",
+      "color": "#320096",
+      "sequence": "CTAAATCGGAGCGTTTGCCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "A2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 2000, "end": 2010},
+        {"helix": 1, "forward": false, "start": 2000, "end": 2010}
+      ]
+    },
+    {
+      "name": "staple202",
+      "color": "#03b6a2",
+      "sequence": "ACCCTAAAGGCCCCTTATTA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "B2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 2010, "end": 2020},
+        {"helix": 1, "forward": false, "start": 2010, "end": 2020}
+      ]
+    },
+    {
+      "name": "staple203",
+      "color": "#7300de",
+      "sequence": "GAGCCCCCGACGGTCATAGC",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "C2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 2020, "end": 2030},
+        {"helix": 1, "forward": false, "start": 2020, "end": 2030}
+      ]
+    },
+    {
+      "name": "staple204",
+      "color": "#aaaa00",
+      "sequence": "TTTAGAGCTTTCGGCATTTT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "D2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 2030, "end": 2040},
+        {"helix": 1, "forward": false, "start": 2030, "end": 2040}
+      ]
+    },
+    {
+      "name": "staple205",
+      "color": "#b8056c",
+      "sequence": "GACGGGGAAACGCGTTTTCA",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "E2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 2040, "end": 2050},
+        {"helix": 1, "forward": false, "start": 2040, "end": 2050}
+      ]
+    },
+    {
+      "name": "staple206",
+      "color": "#007200",
+      "sequence": "GCCGGCGAACCAGACTGTAG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "F2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 2050, "end": 2060},
+        {"helix": 1, "forward": false, "start": 2050, "end": 2060}
+      ]
+    },
+    {
+      "name": "staple207",
+      "color": "#cc0000",
+      "sequence": "GTGGCGAGAACCTTTAGCGT",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "G2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 2060, "end": 2070},
+        {"helix": 1, "forward": false, "start": 2060, "end": 2070}
+      ]
+    },
+    {
+      "name": "staple208",
+      "color": "#f7931e",
+      "sequence": "AGGAAGGGAAATCAAGTTTG",
+      "idt": {"scale": "25nm", "purification": "STD", "plate": "plate3", "well": "H2"},
+      "domains": [
+        {"helix": 0, "forward": true, "start": 2070, "end": 2080},
+        {"helix": 1, "forward": false, "start": 2070, "end": 2080}
+      ]
+    },
+    {
+      "color": "#0066cc",
+      "sequence": "TTCCCTTCCTTTCTCGCCACGTTCGCCGGCTTTCCCCGTCAAGCTCTAAATCGGGGGCTCCCTTTAGGGTTCCGATTTAGTGCTTTACGGCACCTCGACCCCAAAAAACTTGATTTGGGTGATGGTTCACGTAGTGGGCCATCGCCCTGATAGACGGTTTTTCGCCCTTTGACGTTGGAGTCCACGTTCTTTAATAGTGGACTCTTGTTCCAAACTGGAACAACACTCAACCCTATCTCGGGCTATTCTTTTGATTTATAAGGGATTTTGCCGATTTCGGAACCACCATCAAACAGGATTTTCGCCTGCTGGGGCAAACCAGCGTGGACCGCTTGCTGCAACTCTCTCAGGGCCAGGCGGTGAAGGGCAATCAGCTGTTGCCCGTCTCACTGGTGAAAAGAAAAACCACCCTGGCGCCCAATACGCAAACCGCCTCTCCCCGCGCGTTGGCCGATTCATTAATGCAGCTGGCACGACAGGTTTCCCGACTGGAAAGCGGGCAGTGAGCGCAACGCAATTAATGTGAGTTAGCTCACTCATTAGGCACCCCAGGCTTTACACTTTATGCTTCCGGCTCGTATGTTGTGTGGAATTGTGAGCGGATAACAATTTCACACAGGAAACAGCTATGACCATGATTACGAATTCGAGCTCGGTACCCGGGGATCCTCTAGAGTCGACCTGCAGGCATGCAAGCTTGGCACTGGCCGTCGTTTTACAACGTCGTGACTGGGAAAACCCTGGCGTTACCCAACTTAATCGCCTTGCAGCACATCCCCCTTTCGCCAGCTGGCGTAATAGCGAAGAGGCCCGCACCGATCGCCCTTCCCAACAGTTGCGCAGCCTGAATGGCGAATGGCGCTTTGCCTGGTTTCCGGCACCAGAAGCGGTGCCGGAAAGCTGGCTGGAGTGCGATCTTCCTGAGGCCGATACTGTCGTCGTCCCCTCAAACTGGCAGATGCACGGTTACGATGCGCCCATCTACACCAACGTGACCTATCCCATTACGGTCAATCCGCCGTTTGTTCCCACGGAGAATCCGACGGGTTGTTACTCGCTCACATTTAATGTTGATGAAAGCTGGCTACAGGAAGGCCAGACGCGAATTATTTTTGATGGCGTTCCTATTGGTTAAAAAATGAGCTGATTTAACAAAAATTTAATGCGAATTTTAACAAAATATTAACGTTTACAATTTAAATATTTGCTTATACAATCTTCCTGTTTTTGGGGCTTTTCTGATTATCAACCGGGGTACATATGATTGACATGCTAGTTTTACGATTACCGTTCATCGATTCTCTTGTTTGCTCCAGACTCTCAGGCAATGACCTGATAGCCTTTGTAGATCTCTCAAAAATAGCTACCCTCTCCGGCATTAATTTATCAGCTAGAACGGTTGAATATCATATTGATGGTGATTTGACTGTCTCCGGCCTTTCTCACCCTTTTGAATCTTTACCTACACATTACTCAGGCATTGCATTTAAAATATATGAGGGTTCTAAAAATTTTTATCCTTGCGTTGAAATAAAGGCTTCTCCCGCAAAAGTATTACAGGGTCATAATGTTTTTGGTACAACCGATTTAGCTTTATGCTCTGAGGCTTTATTGCTTAATTTTGCTAATTCTTTGCCTTGCCTGTATGATTTATTGGATGTTAATGCTACTACTATTAGTAGAATTGATGCCACCTTTTCAGCTCGCGCCCCAAATGAAAATATAGCTAAACAGGTTATTGACCATTTGCGAAATGTATCTAATGGTCAAACTAAATCTACTCGTTCGCAGAATTGGGAATCAACTGTTATATGGAATGAAACTTCCAGACACCGTACTTTAGTTGCATATTTAAAACATGTTGAGCTACAGCATTATATTCAGCAATTAAGCTCTAAGCCATCCGCAAAAATGACCTCTTATCAAAAGGAGCAATTAAAGGTACTCTCTAATCCTGACCTGTTGGAGTTTGCTTCCGGTCTGGTTCGCTTTGAAGCTCGAATTAAAACGCGATATTTGAAGTCTTTCGGGCTTCCTCTTAATCTTTTTGATGCAATCCGCTTTGCTTCTGACTATAATAGTCAGGGTAAAGACCTGATTTTTGATTTATGGTCATTCTCGTTTTCTGAACTGTTTAAAGCATTTGAGGGGGATTCAATGAATATTTATGACGATTCCGCAGTATTGGACGCTATCCAGTCTAAACATTTTACTATTACCCCCTCTGGCAAAACTTCTTTTGCAAAAGCCTCTCGCTATTTTGGTTTTTATCGTCGTCTGGTAAACGAGGGTTATGATAGTGTTGCTCTTACTATGCCTCGTAATTCCTTTTGGCGTTATGTATCTGCATTAGTTGAATGTGGTATTCCTAAATCTCAACTGATGAATCTTTCTACCTGTAATAATGTTGTTCCGTTAGTTCGTTTTATTAACGTAGATTTTTCTTCCCAACGTCCTGACTGGTATAATGAGCCAGTTCTTAAAATCGCATAAGGTAATTCACAATGATTAAAGTTGAAATTAAACCATCTCAAGCCCAATTTACTACTCGTTCTGGTGTTTCTCGTCAGGGCAAGCCTTATTCACTGAATGAGCAGCTTTGTTACGTTGATTTGGGTAATGAATATCCGGTTCTTGTCAAGATTACTCTTGATGAAGGTCAGCCAGCCTATGCGCCTGGTCTGTACACCGTTCATCTGTCCTCTTTCAAAGTTGGTCAGTTCGGTTCCCTTATGATTGACCGTCTGCGCCTCGTTCCGGCTAAGTAACATGGAGCAGGTCGCGGATTTCGACACAATTTATCAGGCGATGATACAAATCTCCGTTGTACTTTGTTTCGCGCTTGGTATAATCGCTGGGGGTCAAAGATGAGTGTTTTAGTGTATTCTTTTGCCTCTTTCGTTTTAGGTTGGTGCCTTCGTAGTGGCATTACGTATTTTACCCGTTTAATGGAAACTTCCTCATGAAAAAGTCTTTAGTCCTCAAAGCCTCTGTAGCCGTTGCTACCCTCGTTCCGATGCTGTCTTTCGCTGCTGAGGGTGACGATCCCGCAAAAGCGGCCTTTAACTCCCTGCAAGCCTCAGCGACCGAATATATCGGTTATGCGTGGGCGATGGTTGTTGTCATTGTCGGCGCAACTATCGGTATCAAGCTGTTTAAGAAATTCACCTCGAAAGCAAGCTGATAAACCGATACAATTAAAGGCTCCTTTTGGAGCCTTTTTTTTGGAGATTTTCAACGTGAAAAAATTATTATTCGCAATTCCTTTAGTTGTTCCTTTCTATTCTCACTCCGCTGAAACTGTTGAAAGTTGTTTAGCAAAATCCCATACAGAAAATTCATTTACTAACGTCTGGAAAGACGACAAAACTTTAGATCGTTACGCTAACTATGAGGGCTGTCTGTGGAATGCTACAGGCGTTGTAGTTTGTACTGGTGACGAAACTCAGTGTTACGGTACATGGGTTCCTATTGGGCTTGCTATCCCTGAAAATGAGGGTGGTGGCTCTGAGGGTGGCGGTTCTGAGGGTGGCGGTTCTGAGGGTGGCGGTACTAAACCTCCTGAGTACGGTGATACACCTATTCCGGGCTATACTTATATCAACCCTCTCGACGGCACTTATCCGCCTGGTACTGAGCAAAACCCCGCTAATCCTAATCCTTCTCTTGAGGAGTCTCAGCCTCTTAATACTTTCATGTTTCAGAATAATAGGTTCCGAAATAGGCAGGGGGCATTAACTGTTTATACGGGCACTGTTACTCAAGGCACTGACCCCGTTAAAACTTATTACCAGTACACTCCTGTATCATCAAAAGCCATGTATGACGCTTACTGGAACGGTAAATTCAGAGACTGCGCTTTCCATTCTGGCTTTAATGAGGATTTATTTGTTTGTGAATATCAAGGCCAATCGTCTGACCTGCCTCAACCTCCTGTCAATGCTGGCGGCGGCTCTGGTGGTGGTTCTGGTGGCGGCTCTGAGGGTGGTGGCTCTGAGGGTGGCGGTTCTGAGGGTGGCGGCTCTGAGGGAGGCGGTTCCGGTGGTGGCTCTGGTTCCGGTGATTTTGATTATGAAAAGATGGCAAACGCTAATAAGGGGGCTATGACCGAAAATGCCGATGAAAACGCGCTACAGTCTGACGCTAAAGGCAAACTTGAT",
+      "domains": [
+        {"helix": 0, "forward": false, "start": 0, "end": 2080},
+        {"helix": 1, "forward": true, "start": 0, "end": 2080}
+      ],
+      "is_scaffold": true
+    }
+  ]
 }
\ No newline at end of file
diff --git a/scadnano/scadnano.py b/scadnano/scadnano.py
index 0246253c..709e69bc 100644
--- a/scadnano/scadnano.py
+++ b/scadnano/scadnano.py
@@ -72,6 +72,13 @@
 from math import sqrt, sin, cos, pi
 from random import randint
 
+# we import like this so that we can use openpyxl.Workbook in the type hints, but still allow
+# someone to use the library without having openpyxl installed
+try:
+    import openpyxl
+except ImportError as import_error:
+    raise import_error
+
 default_scadnano_file_extension = 'sc'
 """Default filename extension when writing a scadnano file."""
 
@@ -5186,8 +5193,8 @@ def from_scadnano_json_str(json_str: str) -> Design:
         try:
             design = Design.from_scadnano_json_map(json_map)
             return design
-        except KeyError as e:
-            raise IllegalDesignError(f'I was expecting a JSON key but did not find it: {e}')
+        except KeyError as error:
+            raise IllegalDesignError(f'I was expecting a JSON key but did not find it: {error}')
 
     @staticmethod
     def _check_mutually_exclusive_fields(json_map: dict) -> None:
@@ -7192,30 +7199,33 @@ def _write_plates_assuming_explicit_plates_in_each_strand(self, directory: str,
             for row, strand in enumerate(strands_in_plate):
                 if strand.idt is None:
                     raise ValueError(f'cannot export strand {strand} to IDT because it has no idt field')
-                worksheet.write(row + 1, 0, strand.idt.well)
-                worksheet.write(row + 1, 1, strand.idt_export_name())
-                worksheet.write(row + 1, 2, strand.idt_dna_sequence())
+                worksheet.cell(row + 2, 1).value = strand.idt.well
+                worksheet.cell(row + 2, 2).value = strand.idt_export_name()
+                worksheet.cell(row + 2, 3).value = strand.idt_dna_sequence()
 
             workbook.save(filename_plate)
 
+    # TODO: fix types when openpyxl supports type hints
     @staticmethod
-    def _add_new_excel_plate_sheet(plate_name: str, workbook: Any) -> Any:
-        worksheet = workbook.add_sheet(plate_name)
-        worksheet.write(0, 0, 'Well Position')
-        worksheet.write(0, 1, 'Name')
-        worksheet.write(0, 2, 'Sequence')
+    def _add_new_excel_plate_sheet(plate_name: str,
+                                   workbook: 'openpyxl.Workbook') -> 'openpyxl.Worksheet':
+        worksheet = workbook.create_sheet(title=plate_name)
+        worksheet.cell(1, 1).value = 'Well Position'
+        worksheet.cell(1, 2).value = 'Name'
+        worksheet.cell(1, 3).value = 'Sequence'
         return worksheet
 
     @staticmethod
-    def _setup_excel_file(directory: str, filename: Optional[str]) -> Tuple[str, Any]:
-        import xlwt  # type: ignore
-        plate_extension = f'xls'
+    def _setup_excel_file(directory: str, filename: Optional[str]) -> Tuple[str, 'openpyxl.Workbook']:
+        import openpyxl  # type: ignore
+        plate_extension = f'xlsx'
         if filename is None:
             filename_plate = _get_filename_same_name_as_running_python_script(
                 directory, plate_extension, filename)
         else:
             filename_plate = _create_directory_and_set_filename(directory, filename)
-        workbook = xlwt.Workbook()
+        workbook = openpyxl.Workbook()
+        workbook.remove(workbook.active)  # removed automatically created default sheet
         return filename_plate, workbook
 
     def _write_plates_default(self, directory: str, filename: Optional[str], strands: List[Strand],
@@ -7253,9 +7263,9 @@ def _write_plates_default(self, directory: str, filename: Optional[str], strands
                         f"which is being ignored since we are using default plate/well addressing")
 
             well = plate_coord.well()
-            worksheet.write(excel_row, 0, well)
-            worksheet.write(excel_row, 1, strand.idt_export_name())
-            worksheet.write(excel_row, 2, strand.idt_dna_sequence())
+            worksheet.cell(excel_row + 1, 1).value = well
+            worksheet.cell(excel_row + 1, 2).value = strand.idt_export_name()
+            worksheet.cell(excel_row + 1, 3).value = strand.idt_dna_sequence()
             num_strands_remaining -= 1
 
             # IDT charges extra for a plate with < 24 strands for 96-well plate
diff --git a/setup.py b/setup.py
index 144d4ad5..77dba7a9 100644
--- a/setup.py
+++ b/setup.py
@@ -51,11 +51,12 @@ def extract_version(filename: str):
       url="https://github.com/UC-Davis-molecular-computing/scadnano-python-package",
       long_description=long_description,
       long_description_content_type='text/markdown; variant=GFM',
-      python_requires='>=3.6',
+      python_requires='>=3.7',
       install_requires=[
-        'xlwt',
-        'dataclasses>=0.6; python_version < "3.7"',
-        'tabulate',
+          'openpyxl',
+          'tabulate',
       ],
-      tests_require=['xlrd'],
-)
+      tests_require=[
+          'openpyxl',
+      ],
+      )


Test patch:
diff --git a/.github/workflows/run_unit_tests.yml b/.github/workflows/run_unit_tests.yml
index a0baddf4..3e860978 100644
--- a/.github/workflows/run_unit_tests.yml
+++ b/.github/workflows/run_unit_tests.yml
@@ -1,28 +1,28 @@
-name: Run Unit Tests
-
-on: pull_request
-
-jobs:
-  build:
-
-    runs-on: ubuntu-latest
-    strategy:
-      matrix:
-        python-version: [3.7, 3.8, 3.9, "3.10", "3.11"]
-
-    steps:
-    - uses: actions/checkout@v2
-    - name: Set up Python ${{ matrix.python-version }}
-      uses: actions/setup-python@v1
-      with:
-        python-version: ${{ matrix.python-version }}
-    - name: Setup conda
-      uses: s-weigand/setup-conda@v1
-      with:
-        activate-conda: true
-    - name: Install xlwt, xlrd, tabulate with conda
-      run: conda install xlwt=1.3.0 xlrd=2.0.1 tabulate=0.8.9
-    - name: Install docutils with conda
-      run: conda install docutils=0.16
-    - name: Test with unittest
-      run: python -m unittest -v tests/scadnano_tests.py
+name: Run Unit Tests
+
+on: pull_request
+
+jobs:
+  build:
+
+    runs-on: ubuntu-latest
+    strategy:
+      matrix:
+        python-version: [ 3.7, 3.8, 3.9, "3.10", "3.11" ]
+
+    steps:
+      - uses: actions/checkout@v2
+      - name: Set up Python ${{ matrix.python-version }}
+        uses: actions/setup-python@v1
+        with:
+          python-version: ${{ matrix.python-version }}
+      - name: Setup conda
+        uses: s-weigand/setup-conda@v1
+        with:
+          activate-conda: true
+      - name: Install openpyxl,tabulate with conda
+        run: conda install openpyxl=3.0.10 tabulate=0.8.10
+      - name: Install docutils with conda
+        run: conda install docutils=0.16
+      - name: Test with unittest
+        run: python -m unittest -v tests/scadnano_tests.py
diff --git a/tests/scadnano_tests.py b/tests/scadnano_tests.py
index a8e3fd50..967941b1 100644
--- a/tests/scadnano_tests.py
+++ b/tests/scadnano_tests.py
@@ -8,7 +8,7 @@
 import math
 from typing import Iterable, Union, Dict, Any
 
-import xlrd  # type: ignore
+import openpyxl  # type: ignore
 
 import scadnano as sc
 import scadnano.origami_rectangle as rect
@@ -1228,7 +1228,7 @@ def test_write_idt_plate_excel_file(self) -> None:
         # add 10 strands in excess of 3 plates
         for plate_type in [sc.PlateType.wells96, sc.PlateType.wells384]:
             num_strands = 3 * plate_type.num_wells_per_plate() + 10
-            filename = f'test_excel_export_{plate_type.num_wells_per_plate()}.xls'
+            filename = f'test_excel_export_{plate_type.num_wells_per_plate()}.xlsx'
             max_offset = num_strands * strand_len
             helices = [sc.Helix(max_offset=max_offset) for _ in range(1)]
             design = sc.Design(helices=helices, strands=[], grid=sc.square)
@@ -1238,11 +1238,11 @@ def test_write_idt_plate_excel_file(self) -> None:
 
             design.write_idt_plate_excel_file(filename=filename, plate_type=plate_type)
 
-            book = xlrd.open_workbook(filename)
-            self.assertEqual(4, book.nsheets)
+            book = openpyxl.load_workbook(filename=filename)
+            self.assertEqual(4, len(book.worksheets))
             for plate in range(4):
-                sheet = book.sheet_by_index(plate)
-                self.assertEqual(3, sheet.ncols)
+                sheet = book.worksheets[plate]
+                self.assertEqual(3, sheet.max_column)
 
                 if plate == 2:  # penultimate plate
                     expected_wells = plate_type.num_wells_per_plate() - plate_type.min_wells_per_plate() + 10
@@ -1251,7 +1251,7 @@ def test_write_idt_plate_excel_file(self) -> None:
                 else:
                     expected_wells = plate_type.num_wells_per_plate()
 
-                self.assertEqual(expected_wells + 1, sheet.nrows)
+                self.assertEqual(expected_wells + 1, sheet.max_row)
 
             os.remove(filename)
 
diff --git a/tests/test_excel_export_96.xls b/tests/test_excel_export_96.xls
new file mode 100644
index 00000000..bbdb3dd2
Binary files /dev/null and b/tests/test_excel_export_96.xls differ