changeset 0:3a3b0f7cb5c2 draft

planemo upload for repository https://github.com/Edinburgh-Genome-Foundry/DnaCauldron/tree/master commit 3401816c949b538bd9c67e61cbe92badff6a4007-dirty
author tduigou
date Wed, 11 Jun 2025 09:32:59 +0000
parents
children 2655e08cd61a
files cloning_similation.xml cloning_simulation.py test-data/2-step_golden_gate_parts/2-step-golden_gate_plan.csv test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_A.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_B.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_C.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_D.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_E.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_F.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_G.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_H.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_I.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_J.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_K.gb test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_L.gb test-data/BASIC_assembly_dataset/GFP.gb test-data/BASIC_assembly_dataset/RFP.gb test-data/BASIC_assembly_dataset/basic_assembly.csv test-data/BASIC_assembly_dataset/oligos.fa test-data/BASIC_assembly_dataset/p15A_kan.gb test-data/BASIC_assembly_dataset/promoter.gb test-data/BioBrick_assembly_dataset/BBa_E0040_GFP.gb test-data/BioBrick_assembly_dataset/BBa_J23119_prom.gb test-data/BioBrick_assembly_dataset/BBa_J23119_prom_flawed.gb test-data/BioBrick_assembly_dataset/BBa_J61048_term.gb test-data/BioBrick_assembly_dataset/BBa_K611094_bar.gb test-data/BioBrick_assembly_dataset/hierarchical_biobrick.csv test-data/Gibson_assembly_dataset/gibson_assembly.csv test-data/Gibson_assembly_dataset/gibson_sequences.fa test-data/example_genetic_parts_and_backbone/parts/partA.gb test-data/example_genetic_parts_and_backbone/parts/partA2.gb test-data/example_genetic_parts_and_backbone/parts/partB.gb test-data/example_genetic_parts_and_backbone/parts/partB2.gb test-data/example_genetic_parts_and_backbone/parts/partC.gb test-data/example_genetic_parts_and_backbone/parts/receptor.gb test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_all_required_parts.txt test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_constructs_level_1.csv test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_constructs_level_2.csv test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_simulation_stats.csv test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_summary.csv test-data/init/2-step-golden_gate_plan_simulation/Report.pdf test-data/init/2-step-golden_gate_plan_simulation/all_construct_records/construct_1.gb test-data/init/2-step-golden_gate_plan_simulation/all_construct_records/construct_2.gb test-data/init/2-step-golden_gate_plan_simulation/all_construct_records/construct_3.gb test-data/init/2-step-golden_gate_plan_simulation/all_construct_records/construct_4.gb test-data/init/2-step-golden_gate_plan_simulation/assembly_plan_graph.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1.gb test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1_summary.csv test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1_type2s_mix_connections_graph.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1_type2s_mix_parts_graph.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_A.gb test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_B.gb test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_C.gb test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_D.gb test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_E.gb test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_F.gb test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2.gb test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2_summary.csv test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2_type2s_mix_connections_graph.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2_type2s_mix_parts_graph.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_A.gb test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_F.gb test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_G.gb test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_H.gb test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_I.gb test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3.gb test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3_summary.csv test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3_type2s_mix_connections_graph.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3_type2s_mix_parts_graph.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_3/provided_parts_records/construct_1.gb test-data/init/2-step-golden_gate_plan_simulation/construct_3/provided_parts_records/part_J.gb test-data/init/2-step-golden_gate_plan_simulation/construct_3/provided_parts_records/part_K.gb test-data/init/2-step-golden_gate_plan_simulation/construct_3/provided_parts_records/part_L.gb test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4.gb test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4_summary.csv test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4_type2s_mix_connections_graph.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4_type2s_mix_parts_graph.pdf test-data/init/2-step-golden_gate_plan_simulation/construct_4/provided_parts_records/construct_2.gb test-data/init/2-step-golden_gate_plan_simulation/construct_4/provided_parts_records/part_J.gb test-data/init/2-step-golden_gate_plan_simulation/construct_4/provided_parts_records/part_K.gb test-data/init/2-step-golden_gate_plan_simulation/construct_4/provided_parts_records/part_L.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_A.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_B.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_C.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_D.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_E.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_F.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_G.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_H.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_I.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_J.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_K.gb test-data/init/2-step-golden_gate_plan_simulation/part_records/part_L.gb test-data/init/example_assembly_plan_simulation/Report.pdf test-data/init/example_assembly_plan_simulation/construct_1/construct_1_connections_graph.pdf test-data/init/example_assembly_plan_simulation/construct_1/error.csv test-data/init/example_assembly_plan_simulation/construct_1/fragments_in_construct_1_homology_mix/partA_01.pdf test-data/init/example_assembly_plan_simulation/construct_1/fragments_in_construct_1_homology_mix/partB_01.pdf test-data/init/example_assembly_plan_simulation/construct_1/fragments_in_construct_1_homology_mix/partC_01.pdf test-data/init/example_assembly_plan_simulation/construct_1/fragments_in_construct_1_homology_mix/receptor_01.pdf test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_plots/partA.pdf test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_plots/partB.pdf test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_plots/partC.pdf test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_plots/receptor.pdf test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_records/partA.gb test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_records/partB.gb test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_records/partC.gb test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_records/receptor.gb test-data/init/example_assembly_plan_simulation/construct_2/construct_2_connections_graph.pdf test-data/init/example_assembly_plan_simulation/construct_2/error.csv test-data/init/example_assembly_plan_simulation/construct_2/fragments_in_construct_2_homology_mix/partA2_01.pdf test-data/init/example_assembly_plan_simulation/construct_2/fragments_in_construct_2_homology_mix/partB2_01.pdf test-data/init/example_assembly_plan_simulation/construct_2/fragments_in_construct_2_homology_mix/partC_01.pdf test-data/init/example_assembly_plan_simulation/construct_2/fragments_in_construct_2_homology_mix/receptor_01.pdf test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_plots/partA2.pdf test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_plots/partB2.pdf test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_plots/partC.pdf test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_plots/receptor.pdf test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_records/partA2.gb test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_records/partB2.gb test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_records/partC.gb test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_records/receptor.gb test-data/init/example_assembly_plan_simulation/construct_3/construct_3_connections_graph.pdf test-data/init/example_assembly_plan_simulation/construct_3/error.csv test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/partA2_01.pdf test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/partA_01.pdf test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/partB_01.pdf test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/partC_01.pdf test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/receptor_01.pdf test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/partA.pdf test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/partA2.pdf test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/partB.pdf test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/partC.pdf test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/receptor.pdf test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/partA.gb test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/partA2.gb test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/partB.gb test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/partC.gb test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/receptor.gb test-data/init/example_assembly_plan_simulation/example_assembly_plan_all_required_parts.txt test-data/init/example_assembly_plan_simulation/example_assembly_plan_errors.csv test-data/init/example_assembly_plan_simulation/example_assembly_plan_simulation_stats.csv test-data/init/example_assembly_plan_simulation/example_assembly_plan_summary.csv test-data/init/gibson_assembly_simulation/Report.pdf test-data/init/gibson_assembly_simulation/all_construct_records/construct_1.gb test-data/init/gibson_assembly_simulation/all_construct_records/construct_2.gb test-data/init/gibson_assembly_simulation/all_construct_records/construct_3.gb test-data/init/gibson_assembly_simulation/construct_1/construct_1.gb test-data/init/gibson_assembly_simulation/construct_1/construct_1.pdf test-data/init/gibson_assembly_simulation/construct_1/construct_1_connections_graph.pdf test-data/init/gibson_assembly_simulation/construct_1/construct_1_summary.csv test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_1.gb test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_2.gb test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_3.gb test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_4.gb test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_5.gb test-data/init/gibson_assembly_simulation/construct_2/construct_2.gb test-data/init/gibson_assembly_simulation/construct_2/construct_2.pdf test-data/init/gibson_assembly_simulation/construct_2/construct_2_connections_graph.pdf test-data/init/gibson_assembly_simulation/construct_2/construct_2_summary.csv test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_1.gb test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_2.gb test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_3.gb test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_4b.gb test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_5.gb test-data/init/gibson_assembly_simulation/construct_3/construct_3.gb test-data/init/gibson_assembly_simulation/construct_3/construct_3.pdf test-data/init/gibson_assembly_simulation/construct_3/construct_3_connections_graph.pdf test-data/init/gibson_assembly_simulation/construct_3/construct_3_summary.csv test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_1.gb test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_2.gb test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_3.gb test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_4c.gb test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_5b.gb test-data/init/gibson_assembly_simulation/construct_4/construct_4_connections_graph.pdf test-data/init/gibson_assembly_simulation/construct_4/error.csv test-data/init/gibson_assembly_simulation/construct_4/fragments_in_construct_4_homology_mix/Frag_1_01.pdf test-data/init/gibson_assembly_simulation/construct_4/fragments_in_construct_4_homology_mix/Frag_2_01.pdf test-data/init/gibson_assembly_simulation/construct_4/fragments_in_construct_4_homology_mix/Frag_3_01.pdf test-data/init/gibson_assembly_simulation/construct_4/fragments_in_construct_4_homology_mix/Frag_4_01.pdf test-data/init/gibson_assembly_simulation/construct_4/provided_parts_plots/Frag_1.pdf test-data/init/gibson_assembly_simulation/construct_4/provided_parts_plots/Frag_2.pdf test-data/init/gibson_assembly_simulation/construct_4/provided_parts_plots/Frag_3.pdf test-data/init/gibson_assembly_simulation/construct_4/provided_parts_plots/Frag_4.pdf test-data/init/gibson_assembly_simulation/construct_4/provided_parts_records/Frag_1.gb test-data/init/gibson_assembly_simulation/construct_4/provided_parts_records/Frag_2.gb test-data/init/gibson_assembly_simulation/construct_4/provided_parts_records/Frag_3.gb test-data/init/gibson_assembly_simulation/construct_4/provided_parts_records/Frag_4.gb test-data/init/gibson_assembly_simulation/construct_4/warnings.csv test-data/init/gibson_assembly_simulation/construct_5/construct_5_connections_graph.pdf test-data/init/gibson_assembly_simulation/construct_5/error.csv test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_1_01.pdf test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_2_01.pdf test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_3_01.pdf test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_4_01.pdf test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_4b_01.pdf test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_1.pdf test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_2.pdf test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_3.pdf test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_4.pdf test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_4b.pdf test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_1.gb test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_2.gb test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_3.gb test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_4.gb test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_4b.gb test-data/init/gibson_assembly_simulation/construct_5/warnings.csv test-data/init/gibson_assembly_simulation/gibson_assembly_all_required_parts.txt test-data/init/gibson_assembly_simulation/gibson_assembly_assembly_plan.csv test-data/init/gibson_assembly_simulation/gibson_assembly_errors.csv test-data/init/gibson_assembly_simulation/gibson_assembly_simulation_stats.csv test-data/init/gibson_assembly_simulation/gibson_assembly_summary.csv test-data/init/gibson_assembly_simulation/gibson_assembly_warnings.csv test-data/init/gibson_assembly_simulation/part_records/Frag_1.gb test-data/init/gibson_assembly_simulation/part_records/Frag_2.gb test-data/init/gibson_assembly_simulation/part_records/Frag_3.gb test-data/init/gibson_assembly_simulation/part_records/Frag_4.gb test-data/init/gibson_assembly_simulation/part_records/Frag_4b.gb test-data/init/gibson_assembly_simulation/part_records/Frag_4c.gb test-data/init/gibson_assembly_simulation/part_records/Frag_5.gb test-data/init/gibson_assembly_simulation/part_records/Frag_5b.gb test-data/lcr_assembly_dataset/RFP_GFP_plasmid_BOs.fa test-data/lcr_assembly_dataset/RFP_GFP_plasmid_parts.fa test-data/lcr_assembly_dataset/assembly_plan.csv
diffstat 227 files changed, 14246 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cloning_similation.xml	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,393 @@
+<tool id="cloning_simulation" name="Cloning Simulation" version="@TOOL_VERSION@+galaxy@VERSION_SUFFIX@" profile="21.09">
+    <description>A cloning simulator for synthetic biology</description>
+    <macros>
+        <token name="@VERSION_SUFFIX@">0</token>
+        <token name="@TOOL_VERSION@">0.1.0</token>
+    </macros>
+    <requirements>
+        <requirement type="package" version="0.1.11">flametree</requirement>
+        <requirement type="package" version="1.85"> biopython </requirement>
+        <requirement type="package" version="0.1.10">proglog</requirement>
+        <requirement type="package" version="2.2.3">pandas</requirement>
+        <requirement type="package" version="2.0.12">dnacauldron</requirement>
+        <requirement type="package" version="0.3.9">pdf-reports</requirement>
+        <requirement type="package" version="0.1.8">sequenticon</requirement>
+        <requirement type="package" version="3.1.5">dna_features_viewer</requirement>
+    </requirements>
+    <command detect_errors="exit_code"><![CDATA[
+        #set genbank_file_paths = ','.join([str(f) for f in $genbank_files])
+        #set file_name_mapping = ",".join(["%s:%s" % (file.file_name, file.name) for file in $genbank_files])
+        #set domesticated_input_paths = ','.join([str(f) for f in $domesticated_input])
+        #set file_name_mapping_dom = ",".join(["%s:%s" % (file.file_name, file.name) for file in $domesticated_input])
+        #if $domesticated_input_paths != '' and $genbank_file_paths == ''
+            #set genbank_file_paths = ','.join([str(f) for f in $domesticated_input])
+            #set file_name_mapping = ",".join(["%s:%s" % (file.file_name, file.name) for file in $domesticated_input])
+            #set domesticated_input_paths = ''
+            #set file_name_mapping_dom = ''
+        #end if
+        mkdir 'outdir_zip' && mkdir 'outdir_gb' &&
+        cp '$assembly_csv' 'assembly_csv.csv' &&
+        python '$__tool_directory__/cloning_simulation.py'
+            --parts_files '$genbank_file_paths'
+            --domesticated_seq '$domesticated_input_paths'
+            --assembly_csv 'assembly_csv.csv'
+            --assembly_plan_name '$assembly_plan_name'
+            --file_name_mapping '$file_name_mapping'
+            --file_name_mapping_dom '$file_name_mapping_dom'
+            --use_file_names_as_id '$adv.use_file_names_as_ids'
+            --outdir_simulation 'outdir_zip'
+            --outdir_gb 'outdir_gb'
+            --output_simulation 'output_zip.zip'
+            --enzyme '$adv.enzyme'
+            --topology '$topology' &&
+        cp 'output_zip.zip' '$output_zip'
+    ]]></command>
+    <inputs>
+        <param name="genbank_files" type="data_collection" collection_type="list" format="genbank,fasta" label="GenBank and/or Fasta File(s)" optional="True"/>
+        <param name="assembly_csv" type="data" format="csv" label="Assemby csv"/>
+        <param name="domesticated_input" type="data_collection" collection_type="list" format="genbank" label="Domesticated GenBank" optional="True"/>
+        <param name="assembly_plan_name" type="select" label="Assembly Calss" help="select the assambly class">
+            <option value="Type2sRestrictionAssembly" selected="True">GoldenGate_assembly</option>
+            <option value="GibsonAssembly">Gibson_assembly</option>
+            <option value="BASICAssembly">BASIC_assembly</option>
+            <option value="BioBrickStandardAssembly">biobrick_assembly</option>
+            <option value="LigaseCyclingReactionAssembly">lcr_assembly</option>
+        </param>
+        <param name="topology" type="select" label="Assambly Topology" help="select circular or linear topology">
+            <option value="linear">linear</option>
+            <option value="circular" selected="True">circular</option>
+        </param>
+        <section name="adv" title="Advanced Options" expanded="false">
+            <param name="enzyme" type="text" label="Enzyme" value="auto" optional="True"/>
+            <param name="use_file_names_as_ids" type="boolean" checked="True" label="Use File Names As Sequence IDs" />
+        </section>
+    </inputs>   
+    <outputs>
+        <data format="zip" name="output_zip" label="simulation results (zip)"/>
+        <collection name="construct_gb" type="list" label="simulation results (gb)">
+                <discover_datasets pattern="(?P&lt;name&gt;.*).gb" format="genbank" directory="outdir_gb" />
+        </collection>
+    </outputs>
+    <tests>
+        <!--test type2s_assembly class-->
+        <test> 
+            <param name="genbank_files">
+                <collection type="list">
+                    <element name="part_A" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_A.gb" />
+                    <element name="part_B" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_B.gb" />
+                    <element name="part_C" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_C.gb" />
+                    <element name="part_D" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_D.gb" />
+                    <element name="part_E" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_E.gb" />
+                    <element name="part_F" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_F.gb" />
+                    <element name="part_G" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_G.gb" />
+                    <element name="part_H" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_H.gb" />
+                    <element name="part_I" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_I.gb" />
+                    <element name="part_J" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_J.gb" />
+                    <element name="part_K" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_K.gb" />
+                    <element name="part_L" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_L.gb" />
+                </collection>
+            </param>
+            <param name="assembly_csv" value="2-step_golden_gate_parts/2-step-golden_gate_plan.csv" />
+            <param name='assembly_plan_name' value='Type2sRestrictionAssembly' />
+            <param name="topology" value="circular"/>
+            <param name="adv|use_file_names_as_ids" value="True" />
+            <output name="output_zip" ftype='zip'>
+                <assert_contents>
+                    <has_archive_member path=".*" n="62"/>
+                    <has_archive_member path="assambly_simulation/assembly_plan_graph.pdf">
+                        <has_size min="5"/>
+                    </has_archive_member>
+                </assert_contents>
+            </output>
+            <output_collection name="construct_gb" type="list" count="4">
+                <element name="construct_1">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="construct_2">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="construct_3">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                 <element name="construct_4">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+            </output_collection>
+        </test>
+        <!--test gibson_assembly class-->
+        <test> 
+            <param name="genbank_files">
+                <collection type="list">
+                    <element name="gibson_sequences" value="Gibson_assembly_dataset/gibson_sequences.fa" />
+                </collection>
+            </param>
+            <param name="assembly_csv" value="Gibson_assembly_dataset/gibson_assembly.csv" />
+            <param name='assembly_plan_name' value='GibsonAssembly' />
+            <param name="topology" value="circular"/>
+            <param name="adv|use_file_names_as_ids" value="True" />
+            <output name="output_zip" ftype='zip'>
+                <assert_contents>
+                    <has_archive_member path=".*" n="78"/>
+                    <has_archive_member path="assambly_simulation/Report.pdf">
+                        <has_size min="5"/>
+                    </has_archive_member>
+                </assert_contents>
+            </output>
+            <output_collection name="construct_gb" type="list" count="3">
+                <element name="construct_1">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="construct_2">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="construct_3">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+            </output_collection>
+        </test>
+        <!--test lcr_assembly class-->
+        <test> 
+            <param name="genbank_files">
+                <collection type="list">
+                    <element name="RFP_GFP_plasmid_BOs" value="lcr_assembly_dataset/RFP_GFP_plasmid_BOs.fa" />
+                    <element name="RFP_GFP_plasmid_parts" value="lcr_assembly_dataset/RFP_GFP_plasmid_parts.fa" />
+                </collection>
+            </param>
+            <param name="assembly_csv" value="lcr_assembly_dataset/assembly_plan.csv" />
+            <param name='assembly_plan_name' value='LigaseCyclingReactionAssembly' />
+            <param name="topology" value="circular"/>
+            <param name="adv|use_file_names_as_ids" value="True" />
+            <output name="output_zip" ftype='zip'>
+                <assert_contents>
+                    <has_archive_member path=".*" n="68"/>
+                    <has_archive_member path="assambly_simulation/Report.pdf">
+                        <has_size min="5"/>
+                    </has_archive_member>
+                </assert_contents>
+            </output>
+            <output_collection name="construct_gb" type="list" count="0">
+            </output_collection>
+        </test>
+        <!--test BASIC_assembly class-->
+        <test> 
+            <param name="genbank_files">
+                <collection type="list">
+                    <element name="GFP" value="BASIC_assembly_dataset/GFP.gb" />
+                    <element name="p15A_kan" value="BASIC_assembly_dataset/p15A_kan.gb" />
+                    <element name="promoter" value="BASIC_assembly_dataset/promoter.gb" />
+                    <element name="RFP" value="BASIC_assembly_dataset/RFP.gb" />
+                    <element name="oligos" value="BASIC_assembly_dataset/oligos.fa" />
+                </collection>
+            </param>
+            <param name="assembly_csv" value="BASIC_assembly_dataset/basic_assembly.csv" />
+            <param name='assembly_plan_name' value='BASICAssembly' />
+            <param name="topology" value="circular"/>
+            <param name="adv|use_file_names_as_ids" value="True" />
+            <output name="output_zip" ftype='zip'>
+                <assert_contents>
+                    <has_archive_member path=".*" n="47"/>
+                    <has_archive_member path="assambly_simulation/Report.pdf">
+                        <has_size min="5"/>
+                    </has_archive_member>
+                </assert_contents>
+            </output>
+            <output_collection name="construct_gb" type="list" count="0">
+            </output_collection>
+        </test>
+        <!--test biobrick_assembly class-->
+        <test> 
+            <param name="genbank_files">
+                <collection type="list">
+                    <element name="BBa_E0040_GFP" value="BioBrick_assembly_dataset/BBa_E0040_GFP.gb" />
+                    <element name="BBa_J23119_prom" value="BioBrick_assembly_dataset/BBa_J23119_prom.gb" />
+                    <element name="BBa_J23119_prom_flawed" value="BioBrick_assembly_dataset/BBa_J23119_prom_flawed.gb" />
+                    <element name="BBa_J61048_term" value="BioBrick_assembly_dataset/BBa_J61048_term.gb" />
+                    <element name="BBa_K611094_bar" value="BioBrick_assembly_dataset/BBa_K611094_bar.gb" />
+                </collection>
+            </param>
+            <param name="assembly_csv" value="BioBrick_assembly_dataset/hierarchical_biobrick.csv" />
+            <param name='assembly_plan_name' value='BioBrickStandardAssembly' />
+            <param name="topology" value="circular"/>
+            <param name="adv|use_file_names_as_ids" value="True" />
+            <output name="output_zip" ftype='zip'>
+                <assert_contents>
+                    <has_archive_member path=".*" n="47"/>
+                    <has_archive_member path="assambly_simulation/Report.pdf">
+                        <has_size min="5"/>
+                    </has_archive_member>
+                </assert_contents>
+            </output>
+            <output_collection name="construct_gb" type="list" count="3">
+                <element name="C1_prom_barcode">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="C2_gfp_term">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="C3_final">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+            </output_collection>
+        </test>
+        <!--test type2s_assembly with domesticated files-->
+        <test> 
+            <param name="genbank_files">
+                <collection type="list">
+                    <element name="part_A" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_A.gb" />
+                    <element name="part_B" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_B.gb" />
+                    <element name="part_C" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_C.gb" />
+                    <element name="part_D" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_D.gb" />
+                    <element name="part_E" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_E.gb" />
+                    <element name="part_F" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_F.gb" />
+                    <element name="part_G" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_G.gb" />
+                </collection>
+            </param>
+            <param name="assembly_csv" value="2-step_golden_gate_parts/2-step-golden_gate_plan.csv" />
+            <param name='assembly_plan_name' value='Type2sRestrictionAssembly' />
+            <param name="domesticated_input">
+                <collection type="list">
+                    <element name="part_H" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_H.gb" />
+                    <element name="part_I" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_I.gb" />
+                    <element name="part_J" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_J.gb" />
+                    <element name="part_K" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_K.gb" />
+                    <element name="part_L" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_L.gb" />
+                </collection>
+            </param>
+            <param name="topology" value="circular"/>
+            <param name="adv|use_file_names_as_ids" value="True" />
+            <output name="output_zip" ftype='zip'>
+                <assert_contents>
+                    <has_archive_member path=".*" n="62"/>
+                    <has_archive_member path="assambly_simulation/assembly_plan_graph.pdf">
+                        <has_size min="5"/>
+                    </has_archive_member>
+                </assert_contents>
+            </output>
+            <output_collection name="construct_gb" type="list" count="4">
+                <element name="construct_1">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="construct_2">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="construct_3">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                 <element name="construct_4">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+            </output_collection>
+        </test>
+        <!--test only domestication input-->
+        <test> 
+            <param name="domesticated_input">
+                <collection type="list">
+                    <element name="part_A" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_A.gb" />
+                    <element name="part_B" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_B.gb" />
+                    <element name="part_C" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_C.gb" />
+                    <element name="part_D" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_D.gb" />
+                    <element name="part_E" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_E.gb" />
+                    <element name="part_F" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_F.gb" />
+                    <element name="part_G" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_G.gb" />
+                    <element name="part_H" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_H.gb" />
+                    <element name="part_I" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_I.gb" />
+                    <element name="part_J" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_J.gb" />
+                    <element name="part_K" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_K.gb" />
+                    <element name="part_L" value="2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_L.gb" />
+                </collection>
+            </param>
+            <param name="assembly_csv" value="2-step_golden_gate_parts/2-step-golden_gate_plan.csv" />
+            <param name='assembly_plan_name' value='Type2sRestrictionAssembly' />
+            <param name="topology" value="circular"/>
+            <param name="adv|use_file_names_as_ids" value="True" />
+            <output name="output_zip" ftype='zip'>
+                <assert_contents>
+                    <has_archive_member path=".*" n="62"/>
+                    <has_archive_member path="assambly_simulation/assembly_plan_graph.pdf">
+                        <has_size min="5"/>
+                    </has_archive_member>
+                </assert_contents>
+            </output>
+            <output_collection name="construct_gb" type="list" count="4">
+                <element name="construct_1">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="construct_2">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                <element name="construct_3">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+                 <element name="construct_4">
+                    <assert_contents>
+                     <has_n_lines min="20" />
+                    </assert_contents>
+                </element>
+            </output_collection>
+        </test>
+    </tests>
+    
+    <help><![CDATA[
+Cloning_Simulation
+    ====================
+
+The Cloning Simulation tool is based on the DnaCauldron package developed by the EGF Biofoundry. It enables rapid and accurate assembly simulation of DNA parts for modular cloning systems, such as Golden Gate Assembly (complete documentation `here <https://edinburgh-genome-foundry.github.io/DnaCauldron/>`_).
+
+**Parameters**:
+---------------
+* **Assemby csv**: csv file containes the construct names with their parts. (Without Header)
+* **GenBank files**: Upload all the parts sequences for your assembli(es). Don't forget the receptor vector(s).
+* **Domesticated GenBank**: Dimesticated GenBank list (Optional)
+* **Topology**: Can be "circular", "linear".
+* **Enzyme**: It will be selected automatically, or you can set one from this dictionnary : `dict <https://github.com/biopython/biopython/blob/master/Bio/Restriction/Restriction_Dictionary.py>`_ 
+* **Assembly Class**: 
+    - "GoldenGate_assembly": Type2sRestrictionAssembly (recommended in Domesticated dataset) `ex. dataset <https://github.com/Edinburgh-Genome-Foundry/DnaCauldron/tree/master/examples/hierarchical_golden_gate>`_
+    - "gibson_assembly": GibsonAssembly `ex. dataset <https://github.com/Edinburgh-Genome-Foundry/DnaCauldron/tree/master/examples/gibson_assembly>`_
+    - "BASIC_assembly": BASICAssembly `ex. dataset <https://github.com/Edinburgh-Genome-Foundry/DnaCauldron/tree/master/examples/BASIC_assembly>`_
+    - "biobrick_assembly": BioBrickStandardAssembly, `ex. dataset <https://github.com/Edinburgh-Genome-Foundry/DnaCauldron/tree/master/examples/hierarchical_biobrick>`_
+    - "lcr_assembly": LigaseCyclingReactionAssembly `ex. dataset <https://github.com/Edinburgh-Genome-Foundry/DnaCauldron/tree/master/examples/lcr_assembly>`_
+    ]]></help>
+    <citations>
+        <citation type="bibtex">
+            @unpublished{cloning_simulation
+                author = {Ramiz Khaled},
+                title = {{cloning_simulation}},
+                url = {https://github.com/Edinburgh-Genome-Foundry/Examples/blob/master/templates/template1.ipynb},
+            }
+        </citation>
+    </citations>
+</tool>
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/cloning_simulation.py	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,177 @@
+import argparse
+import os
+import zipfile
+import pandas
+import dnacauldron
+
+
+def cloning_simulation(files_to_assembly, domesticated_list,
+                       csv_file, assembly_type, topology,
+                       file_name_mapping, file_name_mapping_dom,
+                       use_file_names_as_id,
+                       outdir_simulation, output_simulation, enzyme, outdir_gb):
+
+    files_to_assembly = files_to_assembly.split(',')
+
+    repository = dnacauldron.SequenceRepository()
+    repository.import_records(files=files_to_assembly,
+                              use_file_names_as_ids=use_file_names_as_id,
+                              topology=topology)
+    if domesticated_list:
+       domesticated_files = domesticated_list.split(',')
+       repository.import_records(files=domesticated_files,
+                                 use_file_names_as_ids=use_file_names_as_id,
+                                 topology=topology)
+
+    # refine the real record name dict
+    if isinstance(file_name_mapping, str):
+        file_name_mapping = dict(
+            item.split(":") for item in file_name_mapping.split(",")
+        )
+    real_names = {
+        os.path.splitext(os.path.basename(k))[0]: v.replace(".gb", "")
+        for k, v in file_name_mapping.items()
+    }
+
+    # refine the real record name dict_dom
+    if file_name_mapping_dom == "":
+        file_name_mapping_dom = {}
+    else:
+        if isinstance(file_name_mapping_dom, str):
+            file_name_mapping_dom = dict(
+                item.split(":") for item in file_name_mapping_dom.split(",")
+            )
+        dom_real_names = {
+            os.path.splitext(os.path.basename(k))[0]: v.replace(".gb", "")
+            for k, v in file_name_mapping_dom.items()
+        }
+        real_names.update(dom_real_names)
+
+    # update the records
+
+    for key, record in list(repository.collections["parts"].items()):
+        current_id = record.id
+        if current_id in real_names:
+            new_id = real_names[current_id]
+            record.id = new_id
+            record.name = new_id
+            record.description = new_id
+            repository.collections["parts"][new_id] = repository.collections["parts"].pop(key)
+    ########################################################
+    # print (f"repo: {vars(repository)}")
+    # any(pandas.read_csv(csv_file, index_col=0, header=None).duplicated())
+    df = pandas.read_csv(csv_file, index_col=0, header=None)
+    if df.duplicated().any():
+        raise ValueError("Duplicate rows found in the data!")
+
+    if assembly_type == "Type2sRestrictionAssembly":
+        assembly_class = dnacauldron.Type2sRestrictionAssembly
+    elif assembly_type == "GibsonAssembly":
+        assembly_class = dnacauldron.GibsonAssembly
+    elif assembly_type == "BASICAssembly":
+        assembly_class = dnacauldron.BASICAssembly
+    elif assembly_type == "BioBrickStandardAssembly":
+        assembly_class = dnacauldron.BioBrickStandardAssembly
+    elif assembly_type == "OligoPairAnnealin":
+        assembly_class = dnacauldron.OligoPairAnnealin
+    elif assembly_type == "LigaseCyclingReactionAssembly":
+        assembly_class = dnacauldron.LigaseCyclingReactionAssembly
+    else:
+        raise ValueError(f"Unsupported assembly type: {assembly_type}")
+
+    new_csvname = "assambly.csv"
+    os.rename(csv_file, new_csvname)
+
+    assembly_plan = dnacauldron.AssemblyPlan.from_spreadsheet(
+        name="auto_from_filename",
+        path=new_csvname,
+        dataframe=None,
+        header=None,
+        assembly_class=assembly_class
+    )
+    if enzyme != 'auto':
+        for assembly in assembly_plan.assemblies:
+            assembly.enzyme = enzyme
+
+    simulation = assembly_plan.simulate(sequence_repository=repository)
+    stats = simulation.compute_stats()
+    print(stats)
+
+    report_writer = dnacauldron.AssemblyReportWriter(
+        include_mix_graphs=True,
+        include_assembly_plots=True,
+        show_overhangs_in_graph=True,
+        annotate_parts_homologies=True,
+        include_pdf_report=True,
+    )
+    simulation.write_report(outdir_simulation, assembly_report_writer=report_writer)
+
+    # Append report files to .dat (ZIP)
+    with zipfile.ZipFile(output_simulation, mode='a', compression=zipfile.ZIP_DEFLATED) as zipf:
+        for root, dirs, files in os.walk(outdir_simulation):
+            for file in files:
+                full_path = os.path.join(root, file)
+                arcname = os.path.relpath(full_path, outdir_simulation)
+                zipf.write(full_path, arcname)
+ #       print("Files in the zip archive:")
+ #       for info in zipf.infolist():
+ #           print(info.filename)
+        for member in zipf.namelist():
+            # Only extract actual files inside 'all_construct_records/' (not subfolders)
+            if member.startswith("assambly_simulation/all_construct_records/") and not member.endswith("/"):
+                # Get the file name only (strip folder path)
+                filename = os.path.basename(member)
+                if not filename:
+                    continue  # skip any edge cases
+
+                # Destination path directly in outdir_dir
+                target_path = os.path.join(outdir_gb, filename)
+
+                # Write the file content
+                with zipf.open(member) as source, open(target_path, "wb") as target:
+                    target.write(source.read())
+
+    return output_simulation, outdir_gb
+
+
+def parse_command_line_args():
+    parser = argparse.ArgumentParser(description="Domestication")
+
+    parser.add_argument("--parts_files", required=True,
+                        help="List of GenBank files (Comma-separated)")
+    parser.add_argument("--domesticated_seq", required=True,
+                        help="output of domestication (ganbank list)")
+    parser.add_argument("--assembly_csv", required=True,
+                        help="csv assembly")
+    parser.add_argument('--assembly_plan_name', type=str,
+                        help='type of assembly')
+    parser.add_argument('--topology', type=str,
+                        help='"circular" or "linear"')
+    parser.add_argument('--file_name_mapping', type=str,
+                        help='Mapping of Galaxy filenames to original filenames')
+    parser.add_argument('--file_name_mapping_dom', type=str,
+                        help='Mapping of Galaxy filenames to original domestication filenames')
+    parser.add_argument("--use_file_names_as_id", type=lambda x: x.lower() == 'true', default=True,
+                        help="Use file names as IDs (True/False)")
+    parser.add_argument("--outdir_simulation", required=True,
+                        help="dir output for cloning simulation results")
+    parser.add_argument("--output_simulation", required=True,
+                        help="zip output for cloning simulation results")
+    parser.add_argument('--enzyme', type=str,
+                        help='enzyme to use')
+    parser.add_argument("--outdir_gb", required=True,
+                        help="dir output constructs gb files")
+ 
+    return parser.parse_args()
+
+
+if __name__ == "__main__":
+    args = parse_command_line_args()
+
+    cloning_simulation(
+        args.parts_files, args.domesticated_seq,
+        args.assembly_csv, args.assembly_plan_name, args.topology,
+        args.file_name_mapping, args.file_name_mapping_dom,
+        args.use_file_names_as_id, args.outdir_simulation,
+        args.output_simulation, args.enzyme, args.outdir_gb
+    )
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/2-step-golden_gate_plan.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,4 @@
+construct_3,construct_1,part_L,part_J,part_K,,
+construct_4,construct_2,part_L,part_J,part_K,,
+construct_1,part_A,part_B,part_C,part_D,part_E,part_F
+construct_2,part_A,part_G,part_H,part_I,part_F,
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_A.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,197 @@
+LOCUS       part_A                  4292 bp    ds-DNA  circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_A
+VERSION     part_A
+KEYWORDS    "creator:SynthSys Center".
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     RBS             2332..2343
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2208..2238
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     promoter        2289..2323
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    3162..3178
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      228..233
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            1009..2028
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      51..56
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2350..3027
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff00ff"
+     CDS             complement(3376..4191)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_RNA        87..639
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2257
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      3119..3146
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2053..2100
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2278..2281
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_RNA        complement(90..197)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    726..734
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2274..2277
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      51..639
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2161..2185
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      206..211
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    complement(3292..3332)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      760..1008
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      3032..3103
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3158..3161
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3173..3178
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(3376..4191)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2258..2262
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3342..3365
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3204..3227
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2256..2273
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      72..77
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2029..2052
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             1009..2028
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3237..3265
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3154..3157
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    3180..3290
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2212..2236
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1..24
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+ORIGIN
+        1 tcacaggatg gtccaacgaa actaggcttt agacgaggga tgaatgaccg acccccactc
+       61 gtggcactaa cggacagact tccctgacgg ttattcgacc attaaagtca gacatgcggg
+      121 ggtgaataaa ttagccaaat tgtgtcgaag aaaagacgtg cggctggcac ataaggcagt
+      181 cttgatccta gtcttgcagg gatgcacgta agtcgcctca attaactgca gccgagctcc
+      241 aggttaccaa agaccctagt atgccagggc ctaacggttg gagtatatta tgggtacgca
+      301 atagtgcgga agttaacctg ggcaacatcc aggtgagagg ttggacggaa gcgacagtaa
+      361 gtggccatag actgccgagt cgtgttaatg aatcgctata cgcccatgga gttgtggggt
+      421 cgttttatcc gagtaggggc ccgctgacta cttcgtccag acaatatgcc gtcttcaata
+      481 gtctacctga gagtcatgcc ggcatttccg acgctgagtg aaacccgcgt agccaggcga
+      541 aatttgcatc ttgaaatacc actgcagatc agccagtaag gcccatataa gggcgctggt
+      601 gttctggcga cagataaagt gttatctaat gtaacccgcg gacttttaga ggatacttga
+      661 atgcgggcat atcgtcccac cagcgtcacg tggtcgggct agcggcagac aaactctgcc
+      721 gatgtttttc tttgccgcga tagcgggcta gtcaattcac tatccggcga tgaagcatag
+      781 attgttatcg cgcttatgcg gaggataatc aagtcttggc agaacctgct cgctcatgca
+      841 ctggtgaggc gtggttatcc taacaaccgc ctaggacgaa gaatgggctc ggtagggaca
+      901 gttcgtgcgt ttagcttcgt cccatcttaa tgctgtctgg agggaggcta catgcgaaca
+      961 gaagccgtgg gcgaaagttg ttgatccggg tctaacacgg ataagggcca tggtgaacgc
+     1021 atcatgcgat acttcttggt agttcttcta acatgaccgt gccatagccc ttaccctttg
+     1081 aagaagttaa cctatctgcc gtctcctgca cgaatagcga ctggactcgg gtattttgga
+     1141 tacctcacga aagcacttcg atcggccgaa gcatggatat ttcgccggac gggcccgaat
+     1201 agagagcctt gtatgtcggt tagtacaacg cagtcctgga gacatctacg cggatgggcc
+     1261 taggggctgg acttaacatt gggtaacgta cctggtccaa agtgaatgca aagcactttt
+     1321 acaaagcgcg ggtccccgtg ggtgtttagg gtagaagatt ggcggatgct acgaacgatc
+     1381 ccgctttgaa actatcatta catcgtgtaa aagagacact taacaaaggc caataaactg
+     1441 ccagtaagaa tcgctcagtg cggtgctggg gacgctaagt aggggcaaca gccagtgaag
+     1501 gacgtgaccg acctttctca gataagatat gctggcgtct atctaataag catagtgaaa
+     1561 aaccaaccat ttcacttaca cgaagtacat ttgcattgct agtaaagacg cctaaacaga
+     1621 agtgcccttg catgctgtat gtctatagtc cttagggaag catcagccct tctacttatt
+     1681 cgaggtctga gaaaccctgg acaagctccg aattattcaa tgtgcctgtc tccgaggtta
+     1741 gatagcgcta tgctcttaag agttgcacag aatgaccatc ctggaatgtc cctggagggg
+     1801 tctaggtatg ctgatcgaag ggtgctctaa ggacttgacg tgcgtccgag gagggtgctg
+     1861 cctccttcgc ctttagatcc aacgcggatc acatgcgcgt gagctaatag gatcaccttc
+     1921 tgctccgatt tttaccctcc tgggtcactt ccgaatgagg tagcgggcga aatataatgt
+     1981 ctccactcgt aggtgttccc tgtatgtgaa gctctatagt ggacaaaggt ttgatgaact
+     2041 agcccccgta tacgctctca ccgacggacg cgggggtctg ttatttgaag catcatacat
+     2101 gcgaaggtgc cttctcagca acgaaaggta gtgggagtgt acaagttcaa tgcgccgcca
+     2161 taggtctgag tatacaaggg gatgccccca tccacaacgg gattggctac ccggagagct
+     2221 ggctccgctc caacaaataa ttatattaac ctattggaat tccacctgca tatcagagga
+     2281 gagagacctt tacggctatt ctgtttaccg gatccatcgg taccaaggat cagaaagtga
+     2341 cacggtttga acgggttgtt gtaatacttt gagtatacct ctgacgctga gcgtgtcgtc
+     2401 ctgagcgcag actcaataac atagcagtcc gacatcgccg tgatatgtaa atgcaacgaa
+     2461 tttaggtctt gactcggtct accatgtcaa aagggtagcc agatttcagc gcgaaattga
+     2521 actttgtgtt tagtgtgggg tcctcggtta caaaatagga tcagacatgt gtgattttgg
+     2581 taacctagtc tggcagtccg acagacttcg ctatgatttg atggggccgg cctataattg
+     2641 gcttgcgcaa cccgctcatc tcgggcgtgt tttacttcct gcggtcccca cgccctattt
+     2701 tcgggccagc tgtaggtgct agagtgaatg ctggcgaata agattccccg ctatttggcg
+     2761 cctcgccaca gctctggcac tatgggggga gtttctctgt tccttaaaca gcacccgttt
+     2821 ttgaggtgta ttggtttcgg ttctgcatta ggcaattcgt accgtacaat caattacgac
+     2881 acattggcgg cagttatcag ctacccatcg caaagcacac acccacatgt atctattttt
+     2941 cgcaaattcc aaaagcttcg attgagattg catcggtagt ccctcagaca tgtcgtaatc
+     3001 gaatgcctct tgttccatga gagagagaag tatggcgcga accgctctgc ctttaatttg
+     3061 gttctaccat ccacgagttt aaggggcata accctgccca gcactttccg aggctcacgt
+     3121 tcatgctacg gtagcacctt tctgcgggtc tcacgctgtc aatatgcagg tgctgcagga
+     3181 atttgtctcc aatcgacttg agatatcgca agcatgaaat tatattagac acgccagaga
+     3241 acttgggaag cagcactggt agtgatagca acccgagtac agtaacgagt gagcttctga
+     3301 tcatgagctc tcctacggcg tcaatgcgac gaatgcccag catgcactct cgctatccat
+     3361 gcctgctagg gtggcattat gctcaggaac agttgtagct tggatatcgt ctagatgaaa
+     3421 tacctggaca ctggttagcg tcgtcaagca ccaaggacat tcacacgctc gcggtctttc
+     3481 gtctccctaa gcgttcggca gtcgggcgtg aagaggttgt aatcagacgg aacaaagcct
+     3541 gaaaaaattc cagcgacgta gtattcatga tcctgtacca tctgtagccg ccgcggcgca
+     3601 cgattgaatg taggctacta accccatccg tgttagcgat gtgagtttct accgcaacga
+     3661 atgctcaagc gaaccttctt ctttcgtccg caacccacaa gccgtggtta tgacagctaa
+     3721 attgtcccag acatcccttt attacacaag agctccagcg gaatacctag tcacagcggt
+     3781 aatgacacaa agctcttagt tagtccaggg actacttctg tctacagcac atcacactca
+     3841 ttatcagcat cagtgtagag acggagaaca tgggctatcc tataccaaga tccgccatct
+     3901 aaacatttga agtttcccgt cttctataac ttagcactcg acgctattct gctgagtgcg
+     3961 cttagtctgt agcgacttgc gaaatccata aactgagaat tgaaagagag tgcataaccg
+     4021 aaacctttgt ggcatatttc cgttgaaacg taccagaaca gccgtttagt gcggaacata
+     4081 cagtatcctg ataaagcact caacccaaca gacaccctat gccgatagcg ggatgctaac
+     4141 aagtatagtc atgatgattt ctcggacagc ggggtttggt acagctgcaa tccgtgattt
+     4201 aaattcggac ctctgcacac accgacggtt acccatatcc tctacggctg taggaagttt
+     4261 taccttggat gtcattctga tttcggcgta tc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_B.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,124 @@
+LOCUS       part_B                  4259 bp    ds-DNA  circular UNK 29-OCT-2019
+DEFINITION  .
+ACCESSION   part_B
+VERSION     part_B
+KEYWORDS    "Source" "Sequence" "Freezer" "Shelf" "Box" "Concentration" "Use".
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     primer_bind     531..550
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      3078..3135
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(join(4216..4259,1..616))
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     exon            2863..3060
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     gene            2863..3060
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      4101..4195
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#9eafd2"
+     primer_bind     complement(3410..3429)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     778..796
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     misc_feature    859..862
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     primer_bind     complement(3159..3176)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    863..3060
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     rep_origin      complement(3330..3918)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3061..3064
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      800..843
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+ORIGIN
+        1 cgggtctagc cacgcggctg aaaatgcgcc tcaccaagtt cagagagttg taatttaaag
+       61 gaccaaagaa cgtccattat gaagacacca atgagaaaag ttcattgcga tcgcagctta
+      121 gactgacgtg aagttccaac atttggcata cgtacttgtt aagttcctcc ggctatatgc
+      181 gctaggcgca ggtatattag ccggacatct gcaaggttga cgctgaagcc ttatcggtaa
+      241 tgcaagcaca acggtattgc agacacacaa taggaagtta tgttaacagg agagggtgat
+      301 gccgatgatt acgccccgcg tcgacagtac aataaaacag ctagatcatg tcgaaagtgt
+      361 aggcaaaaca ggtaggtgca ggacaggagg gttccctcaa gtcggcttgc tttatgtggc
+      421 gaatctgata cccataccgg ctatacatcg gccagggaat atcacagatt ttaaatgagc
+      481 ggagatagac ctatgggacc gcatcgatgc aagacatcgc ctacagatac ataatctgga
+      541 agacgcagat atcagtacgc tccttcctgg gaggcgtggt ccttggcacc agtcggccac
+      601 cccttagcgt ttcacctaag caacgaatcc aggactcctc ttttagcgtt tgggtgtcag
+      661 gcgcatcagg agtggttaaa tgaacgctgt acttcgcaag ataattgtga agatctctgc
+      721 tattccttaa cattaccacc aactttgcct acatatggcg taatcaaaaa tgcagcgggg
+      781 tgctcgatcg tgaaccctca atcacgatgt gctatggcgt agccacacaa catagttccg
+      841 gtctggaatt cggtctctgg agagcatacg gtgctctggg ctcacacgta cttcctcttg
+      901 tcacgcgcct ttgtagagca ttagggcgga ggtcactggg acggggatca gagagcttaa
+      961 aatcccaagt agcagtgcct aaggtgtaga atcttgtgca gatcttcgtc tggcccgaaa
+     1021 cctgggcctc cacaacaatg tcgggtcttt tataatttga aaacatcgcg ccttacccgc
+     1081 accgcgcagg acgattagac acagggggtc atgtccatgg ttcggggtaa gccaaattta
+     1141 catcgagtgt gggcttcatt gaggagaggg cgttacgata cccgttaaat gaaaacccgg
+     1201 acagtctcta actgataggc ctgataatcg ccaaatgaag tcgcaattag cagtacatga
+     1261 ctggcagata tgtcgccgga gacggtatgg gggacctatc ctaggttggc acgcgagcgc
+     1321 gaatgacgcc tatcttatcc ccctgcacgt gatggtatcg tcccaactat cttttacctc
+     1381 atcaacgttt tcctgcataa tctgcaagat ggagagtccg cgagtgcggg gagtacgaga
+     1441 tcacaaatct gccctgaaga caaagctcgc aggccgtact caggaaatag catcgactca
+     1501 cacatatcgg gaacggcaaa gagtgcatcg gccaatgcaa actattgaac gtccatgaaa
+     1561 ttgtgtcaaa ctactagtgt gtggacttgc gtcaaggcca tggcgcaata ctcaaagccc
+     1621 cggtatttat cccccgcaga gtatccgtgc ggatggagtt ccacagctct ttggacatgc
+     1681 aatgcgtggc gctacatgct ccgctgatac agaatatcta atgtctcgcc tcttgccgtc
+     1741 gaccctacaa ctactgcacg ggcagagtgg acgcgacccc tgagcggtgc agaaccttag
+     1801 tataaggcaa gggtggcacg gccgagccgc acttgctcct actaggccgt gctcgaagct
+     1861 attgatgcaa gcacagtatt cccgatttgt aaagcaaggt gcccgtagcc atacacccag
+     1921 ctactcaccg gccaatttcg accctctcta tctcagacct ccgcatattc ccaaactcct
+     1981 gctcaagtat gaaatgaccg gctcctccta aggcctgcgg acatggagtc atgcgtggaa
+     2041 tgccgtgtag gtagggtaca cacagcctta ccatgtaggg caataaatta tagactactg
+     2101 acattgattc cttgagggcc cgttcacttg tgggggaacc aggaaggcgc cgatagtcat
+     2161 cacttaaaca catgcgacgc atccatttca agaaagacac gctacgggtc tacaccgcct
+     2221 atagttctaa tttgggcccc ggtacgcaca tcgatgtact ctccattaca gcatagcaca
+     2281 tcagcggccc tagttagcgc ttctttttgt tccaacattc aatagcgggg actgcattat
+     2341 cctcacccta tttgttgcat aggtatttgg ccgtatactt gggaaagagc aaccacggga
+     2401 gtgcactaga aactgattca cccatgttat aacgcgttgc tcgcaagtcg tactgtggcc
+     2461 acgcacaggt caggcaatcg caaccatgtc ttagcagttt gtaagaagac ctttaaacat
+     2521 gtacctcaca gcaatctcgg aacttttaat tttcctgagt caatgacatg ctagctccgt
+     2581 ccacttgtaa tcaccgtcat aacacagtta gcctgcaaaa gggcgtgtac accttgccac
+     2641 tttaaagctg accgaataac ctacctacag gagatgctta gtgccacgga atgatctcgc
+     2701 aatgcttagt cttacaccca gtgaatcaac ccaagacctc gccgactgaa cggtattgag
+     2761 tccaatcccg agaggcaatt tatggccgtt agtgacagtc ggtcgctgat agaataaggc
+     2821 agactcgtct taagcgggct gctttaagag aaaatggagc cctgacgaag aagtggatga
+     2881 accaggtttt gacaacgtcc catattggta atgtaggctc gttatcaaga gataggttta
+     2941 gaaggctcaa tgctcgacgt aaaagaagtc ttaagctcta tgagccagtg atgagagcta
+     3001 attatagggc gcattcgttg gggtaaggtt gcgaattgtc atttaactaa aaccgacggc
+     3061 aatgtgagac cctgcagtcc gcctacacct ggctcactga ggcggcaacc gttatcgaag
+     3121 cagcatgtat tggtagtacc tgtcgccgat ttccttggga gtgcgctgtt gcgataacgc
+     3181 ttatttatgg tttgcgcggg atgtatctaa tgcggccgcc gcccgatcag cctgaacact
+     3241 gcggtcatga gccggtccat catgcagttc gcctgtaatt ataacctatt tgttaatggg
+     3301 gcttacagag gagcttccaa cgcatctacg agtaacggct gggatcacaa cttagccacc
+     3361 ttgtagcagg gacataccgc tttgcgacta ctgcgattct ctaacgagtc ttctgattgg
+     3421 tcctatgctc tttcaaaatc tcgataccgt agccaaccct gctgcccacc ttaaactatg
+     3481 acaggacaca ccattgtgcc aacctacacc ttaccagtag ttctgctctc caccactaat
+     3541 acgatgtcag aggccagaag gagcaccgtc aacaaacgcg ataatcaggg cggcgaagat
+     3601 ggaagtagct tgggttgtcg gtgggcaggt caggcgttag tgttatttga ataccaactg
+     3661 ttagaccaca gcgactcgaa cagtccgcaa gtcaagtgcg gtcggctttt acaggtggcg
+     3721 gattttcatt ccaccattcg ggtctaggtg tggtactaac cgcggtcata cgtggagttg
+     3781 aaccgcctga cgcactaagc tatgcgggca acaatatcgc caaagtcatt gtgttgggtt
+     3841 ttcacaacag tcacttcgct cacggccgaa ttaaatatct ctaactatta agccattttc
+     3901 caaccatcgg ctatcccagc ggttcaatcc gaatcgttac cagtgggtag ctgcagagga
+     3961 tcctaagggc gggtcccgct tactgtaact cgtcatgtct cgtggtctac caattcggtt
+     4021 agtattcgtg ccatgtatct cataagggtt gcagtttcgt cattgtcgta gttccttaat
+     4081 ggactggtac gacccggttg ttatacaacc atcaatcgtt aacggacatt agtgagccga
+     4141 ggagaagacc catcagcgga taacccgcca ttatcaccga tactgacata tgagtgccat
+     4201 actgggactg gcttcacgtg agggacctca aagtgagtcg tacaaggcag ctcctcaaa
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_C.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,99 @@
+LOCUS       part_C                  3423 bp    ds-DNA  linear   UNK 20-NOV-2019
+DEFINITION  .
+ACCESSION   part_C
+VERSION     part_C
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     CDS             18..3275
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             3276..3404
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2486
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    3411..3423
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3407..3410
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    14..17
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1..13
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3131
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    2078
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    14
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+ORIGIN
+        1 tggctaggtc tccaatggtt tcaccggagc tgagatcgca ttaaagtcac actacgaatt
+       61 atttgtcccc gcggctccag agacaaattt ctaggagtgg gttcatggag aaccgtgaca
+      121 agcatggtag cttcaaatag cgtcatcgga tcttaaagtg attgtgacat atatgggatt
+      181 gcgcgtctct cttacacaag ctagtgtgcg cgaggtgctg aacacctatt acgtcaactc
+      241 ccgggatccc ggcgggttac agagacataa gcagggtgtc catcattaac ttcgatgttg
+      301 agcccgtgcc ctgatcaaac acctctcgta gtagtgggtg ccggccgtgt attattttgg
+      361 gggagaggat gcgccctaag caatttcttt ccatcggcca gccattcgac gccggcacgc
+      421 aagttgttgc gggcactgtt gcagttcccg tactagagtc tcaagtctag aggtaccagc
+      481 atcaggaaga tgggtacttc gtgtggatct tctcctgaac ctgaaacctg aagagctaaa
+      541 gcgcgtcgcg ctgccatacg ataagtcgct ctcatttccg gaagacgtcg ttgggtgatg
+      601 gcgaacaatc gcgaaacgaa aatcgcggtc ggtatgttga ttcaagacgg gctacgggcg
+      661 ggttactaac aggtgcgcag aaatgtgatg ggtcacttga ccatgaactt tcgcgccgtc
+      721 gcttctgtgg actggccggc tccctgatag tgcactagcc cgttgatatg cccattacca
+      781 tttggcggcg cagtgtgcca gcgggattaa gatgcgtggc gtacaactat ccgcactttg
+      841 ctgacgcaca aaggcaactg atggacagcc ttcgggcatt cgactggttg gctgagttcg
+      901 cctgcctatt aatatgcttg tggaaattga tttacagcgc ctacttctac ttaggtgtac
+      961 ctatttacgg cacagggata aaggctgaca gaaaagtcct ggacaggtca taggtagttg
+     1021 tcagacctac aatggtataa cttgagagtc ctgtaccgca catgcggttg tagctagatg
+     1081 tccagaagac cgtagctagc gacgagtggg ttgcacgcgc attttgggaa ggggctgcgc
+     1141 gagggtgggg tcacgggtta ttccatttct aaatgctaaa ccagcagttg ctttagttct
+     1201 gacctagcag gcatgtcata tgtatggcta gattattagt acaatgcagg actaagaaag
+     1261 cctgagactt aaatgcgttg gtttttcagc cgacgggccg ggagggcaga tggccgaatg
+     1321 cgcactgagg agtgcattgc gagggaatag gcggaccacc aggtcccctc acatactgtg
+     1381 gataaaccta cccagggaca actcacgcca tcattttcaa gagtagcact actttccact
+     1441 aagtacggtt tgtcgagagc cggtggcacc gtgcgacgag cttgtgggca ctaggcgaac
+     1501 cgggttatat aggactgcct tgcggtgcgg gaatacttta ccccgtggag aggccataaa
+     1561 agcttacatt tattgtagcc gctagcggtt tcgacgcgct caagtggggc tttatcttag
+     1621 agtatcaaat aatgccctct cagcttcatc ttgatttttg tgtttggggt agtgtatccg
+     1681 atgggtcacc ttcttgacct tggggagctc catccatcgt accaatactc cgtttctttg
+     1741 tgttgcctac cgagtaatcg aataccgcac gagggctaga atctaattta aggtgggtct
+     1801 tatccctgtt gtttggacct aacgctgtaa caaatcactt ccgcgacggg tgtcattacg
+     1861 tcttctatcc gccaccggtt caacagtgcg tcgaatgcca agtccctatt acccgcattg
+     1921 taaagccatt acaatacctc cggtgatata attgattgcc ggttggcaag ggatcatctg
+     1981 tacgggccgc gattgattgc tgataaggaa cggcggtaag gaacgtatcg cgtacgaggt
+     2041 tgtacactgg aaccgctaaa caagcggtat cgctaaatta ccggcgatta tatcaaggga
+     2101 atcttaggta gcacgaagcc ctacgccctg gaaacaggat cggcgcgagg ccgtggacat
+     2161 attagcctac gtttttttac acccagattt ccgacgatgt ccacagctaa ggctatccta
+     2221 aaccgcaaac acatataacc gcagtataaa gcacgggatg attccttggc catcttgcaa
+     2281 gcagtgcaag gcaattctgg tgataggggc aaggcagtga accgagtggt cagcgtattg
+     2341 tgaccctgca attgtcatgg cagataattg tttatgaacc tgtttcacac acccatccct
+     2401 tggatctcca gcgtagttac taatagtacg atttcctggt gttctgtcac ccgccttgct
+     2461 gccttcacgc ctgccccacg ttttgctgtc cactgaatat cgctctaatt aataggtgtc
+     2521 acactgtatc aggtaagtcc attccgggtg ctattggatc attcctgaga tgtaccaccg
+     2581 atcccatagg cgttaggtct tacatctgga gtgaaaaaga tcagcatcga actataggta
+     2641 gataaaggtc atgactgtta acagagaatc gttcctatcg caaccttcac taactggaag
+     2701 gcacccccac actttgatta gtaagcccct agcgaatgta gtgatccaag aacatcgagt
+     2761 atactttagc tctcggttca ggcatgtatg caatcgacca cccttccgtt cagagtactc
+     2821 tcaaccagca gatttctaaa ctttatagcc tccgcccact aaaattgcct tatctcaggt
+     2881 tgactcttgg atgtagctgt aatctaacat acacatggag ctgcggcaaa ttatcgtacg
+     2941 tccaaaccac caccggatca gtggcgatac tattctcgca aaaaagccat ccagcattgg
+     3001 aacaagtgtt aaccagcatt tttctgagtc ccccggaaag aaagttgact acactacatc
+     3061 cataaatgct agagtgtgga ttcgccatgt gttacaacgg tcaaccgaaa ggttagcatg
+     3121 atacttcgtt gttcaatcgg acgttcgagc gccctccctg tttatcactt gatccccctt
+     3181 ttgaaacatg tgcgctgcga cgcagggctg ggagagtcac cggaaaccaa aagcccgacc
+     3241 tcggacgtgt agggccctcc gtttgccatc aatggcgatg taggattctc ttttaataca
+     3301 acgttcactc aattaacgtc ttggtataag cgtcgaacgt gaccgaggtt gacaccagtg
+     3361 tcacggctgc gccggggttt gttgctccgc gtgtacaggg tattggttcg tgagacctag
+     3421 cca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_D.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,96 @@
+LOCUS       part_D                  2682 bp    ds-DNA  circular UNK 30-OCT-2019
+DEFINITION  .
+ACCESSION   part_D
+VERSION     part_D
+KEYWORDS    "Source:Subcloned from vector Andrew" "Sequence" "Freezer" "Shelf"
+            "Box:Mobius box" "Concentration" "Use:Mobius".
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     rep_origin      complement(262..850)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2642..2671
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     terminator      1991..2034
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             2054..2566
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    1919..1938
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     misc_feature    2050..2053
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    2576..2641
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    143..162
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     misc_feature    2675..2678
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     CDS             2618..2641
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     CDS             complement(1148..1807)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     terminator      1033..1127
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgtgaatta agaccaatcc actggagctc tatacaggac atcagcgatc
+       61 ggtcgagtaa aaccgagttt ctggactccc ttagtctgag aattgtacct tattacgaat
+      121 ccggaaatga agtgcgctca taaaatcttg atcgctaact gttttccgct ttttgaacct
+      181 acagtcagct atttcgccgc aagcgaggtt tatccccttt tgtgtgtgtc agcgggcgaa
+      241 cgtggaggac aattatgacg aatgcctaat aaccaacgta ggcttggctg gtgaggacat
+      301 tgcccttccc cttctactaa ccagtgttgt tcagatcatg taccaagtgc agtaatgcta
+      361 atcccctgaa ttctgacgtt ggatttggag cgtgattggc aattatccgc tgcaaggcgt
+      421 agtatcgcta tctgggaaaa cttagggttg caagcaaggt catcgcccgt ctctagatcc
+      481 gacgggagcc tcaccctgca tgaggaagtc ctaatccgct ctaaacaaga gctgaacact
+      541 ggatgtctcg cagtagattt gctagaatgc aatgctggct cgtgtgcagc ctcaaggtca
+      601 ccatgcttcc gttaaattcc acgctctccg agtctgctgg ttcgggataa atctacgtga
+      661 cattcgcgag gtcccggcct gtagatcgtc tcggcaggag agaacacggt tgatccccca
+      721 cgcggaaccg atagatgcca ggctagatga tgactgaagg tagtttgtac gagtgacctc
+      781 tctagccaag tattttcccg tctcttaagt tatagccgct ctcattccgg gttgtgatat
+      841 ccttcatatc cactctctgt aaaatgctgg gttgttcttc tctccacggt cagggaatcg
+      901 cctcttttcg gataaacgac attatttcgc gccacagaac ggtttggggg tcgaaggacc
+      961 ctagactttg ggtatcccac tcttaccgga tggtaccgct atctccccag ggtccatcgg
+     1021 aatggctagc cacgttaccc ttatctgtca gtatcagtct cagacttaag tataccacgg
+     1081 tagcgacagc tgtcttttaa tggcccgggc agggagccgg gcccaccgtc catggtccac
+     1141 tgtaagggta tctgcaacct tcgccgagct tcttccccaa ggaggtagta ccttaccaaa
+     1201 cttccgagtc agtatcgtca aaggggcccc tagggctcac accatcgagt ttccgcggct
+     1261 taccagtcta gcctgatatg tttcaggtca ggaaataaga ggtatagccc cgtggacacg
+     1321 tactgttcga gcggctagat gtaggttgag ttaagtacag tagacgcgtt ggataccgtc
+     1381 gaacattact ccgtctgcca agggtagccg agtacttctt ccggctcggc cattccgact
+     1441 aagttagttt cgaattgacg tgccaaagcg tggctcccag tcatttgtcc ttaaattaaa
+     1501 cataagtttt ttacctgctc gcgtgccggc cgcttgaggg ggcagcaaga agtcggttca
+     1561 aatggggtgt taagaccggt gttgcaagcg gaccatccag agttagcgtc ctcgacgaaa
+     1621 cgttaacaat cgtgagatta gaggtcgaat atccccttcg tagggggttt tattgtgcaa
+     1681 gatgcgcaaa tgaaccccaa ccttgcgggc ctgtagcgaa caggcgaaaa ggtccaatac
+     1741 ggcgcccgat gcaccgtaaa acaggtcctc taactgtgtg ttctacgctc tccggatcct
+     1801 gtatataaga acgaatcccc ttttcctagg gcccggccgc gtagacccag tacacttgac
+     1861 tttcacgaag atccatccta ctcccatacg cttgagagtg ccaacgtagt ttgtaaccga
+     1921 ccttgcctcg gctagaaagg cattttgtcg catgtggcca gcctgtcagg gcgtgctcta
+     1981 ggcttgacga ttagtgctac gggatgattc gtaaccgagc tgacgggacg cctctggaat
+     2041 tcggtctctt tcgatggtgc ctcctctacg tagatctact ggataaccgt ccccaatatc
+     2101 cgcttcccaa cgtagattgc cgacaggcat aagcttcggg ggcgcaaagg ccgacgtccg
+     2161 cattgcagtg tagctttgtg agcaggaagt gtgatagtct ttcgattatt aaagtctgag
+     2221 ctgaatgaaa aaaggtccaa cgaatggagg acgcgaagac atgggtgtct cttatggccc
+     2281 gagcgggagt aatggcggtt cgtacataaa ggctgaaagg attctggcgt tagctgtctt
+     2341 acgttggatt ggcccttcaa attatcgatg ttagctgatt cggtgtaccg ggcgaggaaa
+     2401 gcgctctcag aacaacttca tatacgaggt tcgactataa tggtctaagc tcctgggcta
+     2461 gtctcaagaa gcgggtacct ttagtagcac gtatcgacgg caaagcaaag aataaaaact
+     2521 tggctttgca tcgtgcaaag atttctaact aggttgttta agggctggta tctatgtccc
+     2581 gctataacag cgcgcctaca gtagaagttt aaccatgaca tacctttgaa gtgttcgtat
+     2641 cacacacaag gaaggagcat gtggacacca ctgagctttg ag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_E.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,38 @@
+LOCUS       part_E                   347 bp    ds-DNA  linear   UNK 20-OCT-2019
+DEFINITION  .
+ACCESSION   part_E
+VERSION     part_E
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     3'UTR           21..330
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    1..13
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    18..20
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    14..17
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    331..334
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    14..17
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    335..347
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+ORIGIN
+        1 tggctaggtc tccgctttga tcagcacgcg tctcagagtt tcagggggac ccaaattact
+       61 ggtcctcaat tgggacgcga ccgcatctcc ccacgaaagc ttatggggat tgcccactgc
+      121 ccagcttcaa atctgaaggt tcggcttatt gacagggtct aacacgcagc tcaactgctc
+      181 gaggttagag gcgtaatgac gggccccgat agccttctac gattacgtcc agcaggaacc
+      241 ccacagcttt tccctacgtc taacaccgtg aaagcaaaac tgtctgccct tttacatggt
+      301 ctttaaggaa tctctgcact tatgttatta ggtatgagac ctagcca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_F.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,74 @@
+LOCUS       part_F                  2470 bp    ds-DNA  circular UNK 20-OCT-2019
+DEFINITION  .
+ACCESSION   part_F
+VERSION     part_F
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     terminator      1991..2034
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(262..850)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             complement(1148..1807)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2054..2462
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(2351..2371)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     terminator      1033..1127
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgctcacgg accgcaagga cgggctaatt aggaggcaac gccgatgggg
+       61 ccgcagttca gcgctgcaat gtttgctgaa cagggatgtc acgcatactc gtctacaccg
+      121 cccgtgaccc gttatcacgg ttgaagtgtc gaggactagt gctgccgctg cgtgagggac
+      181 acaagctgct atttgtccat acgccatgtg ctccgagctc atgctgccat gagacaatga
+      241 gacatgtcgc caataatcga gtgacgagtc agaatgacct ggctccgcat aaccgttcaa
+      301 agttattgac aacgcatctt tcgtagttcg tgcagcagcg gtctttcttc tatagccgac
+      361 tagatgttaa gggactcctg gataccgcta gttttaccct ctccaggaag ccagcgaggg
+      421 cgtgccgcaa gtcccaatag ataccgggca tgatcaaggg gccctgtgct ctgagtctgg
+      481 aggcgacagt gcgctgcagc tcagaggtgg ttattgcgaa ccggcaccgc tggacagcac
+      541 ccacggggac acgtaagtaa tttagggtct gggccaacgg ctcagcgcca gtaggattaa
+      601 caaactcgac taatcaatgt gccagctact tccgccgggt ctgacggggc ggcacccatt
+      661 accatgtgta ctgaataggg attccgagcg accgtaaagg cgttcctaag tgtcatatac
+      721 tggcaactag aggcactcac atcggggtta agggcccacc gtaatggcca cgcaggatac
+      781 caattggccg ggtgaggatc tattcacgcc gatggggagt tctaagcccg agttattggt
+      841 gctagtggct tggacctgtg tgtcgatgat gcgcgatata gaggcgcggg actagctggg
+      901 gtccacaggt gctatgttgg gtgcgctcta tggacgtccg gaaagagact aatgcaacgg
+      961 tatggcatca agcgcgaccg atggggagac tggaaattgt gaaatagtgt actggcgcga
+     1021 tcattaaata ttgcatacgc tgtccgttat gacctagagg ggattatttg aacgagaggt
+     1081 cttgggaact gcattggaga tggtcagatg gaatgcgaaa tgtatcacca cgggcggccg
+     1141 aaggggagac agactatccc tagttggctt cggtaaccgt aatcagatgg aacggcgggt
+     1201 aatgctgata ccgagcgctc gtacggcgcg tggtgatgac acggtctgat gtcgtagcaa
+     1261 acgagccggt cctcgtacaa caggctcaca tctcaatcac gcataccaac cgattacata
+     1321 acgcgatcta tatttgggga actctactta ctaccctgtc tgcagagtgc gttctatgat
+     1381 cctcccctac gtgacggcca acgattagtc ggcctaggtc taacggataa aaggactccc
+     1441 cagtacatgt gaccatatga gccaggccgt cgagcgcgac cactccccag cctatagtga
+     1501 ggaggagcgg tattcggtta aagtttagct agcgactttt ttgtcaccga agtagggacg
+     1561 ggcatattgt ttacccttaa agcggggatc aatccattgg ggtcggcagt cataaaagga
+     1621 tctaagcccc caaagcgcat ggtaaggtac tcccgggttt cccgaaatct aggcaagtct
+     1681 cggtgggtgt cagcctgacg agtagggcac gttaccgagg ccacggtgct tgatgactac
+     1741 gggtgaatcg aaccgatcaa acgcacagca tctaaaccct ggtgtactgg tccacagggg
+     1801 gacaagtctt tgaagtgtcg cttcagatga cggccgcggg ccaatctgaa ttgttagaca
+     1861 ccgacagtag ggtgtgcaac tcgctcgggc aagagtgtaa aggcacatcc tccccgaggt
+     1921 aagttatacc gctctaacgg cgcgggcagc ttttcaactc aacacttccg cggttcagtc
+     1981 ctgagcatta ggctgcatgt ctatcacaag aggtgcgggg aacgacaagg gctctggaat
+     2041 tcggtctctg gtaagctccc ataagagcac cacttcgtgt accttgctaa ctcccttcat
+     2101 ccccacccgc gaaaacttaa gacgtcaccc ctgttattat cccgtgcact cctaaagtgc
+     2161 gatgggcaag aacgcaaaca attgtctgag atttatatgg gcggcggaca tagtcagaga
+     2221 gccttatata atctcccacg tcttgccagt ccgagttatg agaaacccgg gaccgatgac
+     2281 gctattacgg tcgcccagcg aggttcaaca gagcgaggca taggagtcat tacgcgtgtt
+     2341 agcttcaaca tgcgtggaag tgaaacggat ctataaaacg gcgtggagtc atcagcttga
+     2401 gcagatctaa cttactcgcc acgcgcgcaa atcgtctttc gctgtccacg ttatacgtaa
+     2461 ctcgcttgag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_G.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,36 @@
+LOCUS       part_G                  1119 bp    ds-DNA  linear   UNK 25-OCT-2019
+DEFINITION  .
+ACCESSION   part_G
+VERSION     part_G
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     GoldenGate      1..13
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     GoldenGate      1107..1119
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+ORIGIN
+        1 tggctaggtc tccggaggaa cttctatggg acgaaagatg cgcagctcga caaatctcaa
+       61 attggaaacc gtctaaggtc tttgagccca cgctaggcca ccgaatagtt gcgagctcgt
+      121 gggcaattgc tggctagcgg tttgtatcgt atacgtaaca agagattgcg ccggattcat
+      181 tcgtgtgggg tgctttcaca tcggaatact caagagtggg ggtttgcgct ttaatatgac
+      241 ggcctcatgc accccaaaaa taagagcgcc aatttcatcg accacattcc ggacaattct
+      301 gacttccctg tcggatcgac cctcgctcac aactcctaga actccaagac ggtaggacgt
+      361 cagccgaaaa ggaggagtga cgacgggccc tcctagctga agcaatgggg ggcgtcgacc
+      421 ctagcctggt gtgggacttc ggagggtcgg gcgtgtggcc attcctgcac gaggggccct
+      481 tgcagtatcg aactttgacg agaaagtggg gggcgaccta taaacatagc ggagttcaat
+      541 actcctgcaa gtgcatgatg acgttcagcg ttggcacatc gaacgcgtcg ctacacttgc
+      601 tcaccggaag gcaaaataga ccggcagctg gcccgcacgg acgtctagac tcctacgctg
+      661 tcaaatgcac gatgactatt agcatgcgga attcgaggcg gccggtacat cgagacacgc
+      721 tggtcttaat acctgtgtta tgtcaaaaca agtgtctcgg cggctttgta ctacgctgtg
+      781 aatgcgcatg atgttgcgag aagctgaacg ttggtagcag tctacaacag aaccgacgag
+      841 ctacggacgg gttacagcag gatcccctct taaggcatta ttcgacgact ccaggttcta
+      901 accgatcagt aattgcctcg gatggtcgta cgtgttaacc gagacagcaa ggcaccacat
+      961 agacaactgc atagggcgcc tacaggtcca caatcagggt ggcccaagat cctcaaagac
+     1021 ttgttgcagt ctctgcttat tccgtttaac acgttgtgtg agctctagct tactacctca
+     1081 tcggtgtcgg gagtgattta ggaatgtgag acctagcca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_H.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,109 @@
+LOCUS       part_H                  4246 bp    ds-DNA  circular UNK 07-NOV-2019
+DEFINITION  .
+ACCESSION   part_H
+VERSION     part_H
+KEYWORDS    "creator:militzis" "marker:SmR".
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     primer_bind     1966..1982
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#a020f0"
+     terminator      3774..3860
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(63..651)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             2015..3667
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     promoter        1987..2005
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(744..1535)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    3667..3670
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     terminator      3952..3979
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     primer_bind     complement(3694..3710)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#a020f0"
+ORIGIN
+        1 aacatggatc cgttacacaa ggtctactcc gcgatgtggg ctcaccccct agatcccttt
+       61 tcctaccgcc cgatcgcaaa ctacgcgtag cttcacggct ctctgtctgt cggctgacct
+      121 gcggctcatt tttcatccat ttagtatagg ttgcaagggg tgtgactgat ttctctacat
+      181 aaagaagcct atagtaccac atgcaatgcc gatccggtga gtgctgtagt ccttattccg
+      241 gcttggtggc ctcctgccac ttaggatcgc aacggaattc tagttcctaa cgtcccttct
+      301 acctgattaa gtgagagaaa acggaaccaa cctaagacat ctatgcatcg atgttttaca
+      361 atgacgagag tgctccatgg ttcatactgg ggacatagtt tcgggcattt aggcccgcaa
+      421 gagttcgggt atctagtttt tccgtacgaa aaacaccacc ttagaacagg tcacacgagt
+      481 acagagagta aacccgtaat gttttcaccc attccccgat ttgactgcaa acaaacaagt
+      541 ctccccgtat cgcttcattg ttttatcaac gggggcggaa tcgtagacca ataattaacg
+      601 acaactctag gcttttcaac cgacgggggc aaagtctgaa atgcctgaga aaggcacaac
+      661 gacggtggga ggggcccctg caaatattgt tctagcactc caggattcac accaacctcg
+      721 gggccagcca ttccggtact tttggttata cggcaggata ccacgtccct aagcggagta
+      781 tacacggagt tgccttagcc aggtacccgc ttaaccgtcc aactcccctg agtggtacgt
+      841 ccatcacgcc gcgtaaacgg tttccaaaag agtaagctta ggcattcctc acctgtcacg
+      901 tccctcttaa gatccctgcc tcgaactggg atcttgtaaa aatgtggcca tgggagcagg
+      961 agttcatgtg gggcgacggc gatcggacgc ccctttaaac cagagccctt gacgctagga
+     1021 gatcagtaga gttacccgga atgagatctc taatctaagt ttgatacgac gaaagcggcc
+     1081 tgacgggcgc tactcatgct cttagaatcc gtcacttatt ctgccacaga tccgaggtac
+     1141 tgtggatgtt atttgcggag actggcctcg gattaggggt actaagtccg agatgtcatg
+     1201 agttaagccc aattcactag ttgcattgtc aacgagtgga cctccaaaac gatgttaggg
+     1261 tcactacccc aagcgagcac ctccgctagg accacacacc cccactttca aggtattttg
+     1321 ttcgcatcac ataccgtctt ccctttgcgg tctaatagtg aagcttggga caaggaacgg
+     1381 ccagtcgcag caatactacg agtgagagtc ctaggcgcaa ctacgtaggt tccgcaaacg
+     1441 tgttgtggat tactgttgag gtttgagttt atccggaggg ctgtgtaaga attaccagct
+     1501 agtcaaaagc cctgcatggc ctgatctcat tagatacctc ggccgggccg aggcaaatcc
+     1561 gtgaacaaaa accatgcatt tattctatca tagaaacatt tgttacacat ctactggccg
+     1621 tgtgccgtga acaagaactc aatttagtta tcaagggact gctgtaaacg gagccgcgtc
+     1681 acccgcgtgc acacgtgtag tgcttacgcc ggcccccgtc cagcgacacc gtagtcaagt
+     1741 aaaaaatgcg tattcacgac ctcacgtacc cgtttcggag ggtgccttga cgcatagagt
+     1801 tgtctgtgtg attggaattt gtaaggggtc cgcccatgta aaatagagcc catgtcttac
+     1861 gaggacatga ggaaacatag gttctggtgg ccttccaaga agctgcctct acactccttc
+     1921 tctttaatca ccgaaaacct taccttgaga ggacgtcatt cgtcaaaaca aaatattggt
+     1981 ggcaaattaa gattaccact ataggcggtc tcaaatggaa gacgcgttta gtcttcggcc
+     2041 cccagacggc accggcagag ccactgccaa tgccttttac gctgaactct tcgactttgg
+     2101 catgtgcgac tgactatacg ccgatggccc taccctgcag cggaaaggca cagggccaaa
+     2161 aacagtggaa gcgcaccgct agagctttac taaatccttt agggtgaacc ggtgttcagt
+     2221 caacagaaac atatgactag tccttaatgg cactactaaa ggcggcccat ctcttttgta
+     2281 ggtcacgtct catcgtttag caagcgtccg ccatccgagg agtatcctag tacgtgagag
+     2341 ggtgttttac ctcatcacat ggtttttggc tagatgtggc agatgccagc tgatacctta
+     2401 caacccgcta taacggtttc tggatcgacg atacaacctg cttcggcata tcataatggc
+     2461 ggcctcatag gacttccaat catggttatg cgagtttgat gtgttgaaga ttgtgagggg
+     2521 aaaccttttt ccgagtacgt tgaatctgcg actgatggtg aacaactcat cgagagggat
+     2581 gtgcgggcag tctccttgat gcgcgaaaag gagtcgcgac cgcgtgttcg tgacgcactt
+     2641 gatgctagac cgtaggggct cattatctcc tgaaacagta gctagctttt ggtgtccgag
+     2701 tcagcttagg cacagtaatt gaaaagaagg aaatgcgtga aaactaaacg tagacactcc
+     2761 ttgctaagaa ttccctggtc tttttcgagc atagactacc gtaggtaaaa ggcttgtcgt
+     2821 gtcacaaata gacttgatct gttcggcata tacacatcct actgcttcag taaccaagga
+     2881 cgattctccg gccattggac tgtgggacca cccgcgttca aacggaatcc tctacgaacg
+     2941 gttaagaaag gagcccactg cttgcggaga catatcgttg ctgagtggta caccggtgag
+     3001 tcaaaaagta ctgacactac tggtggactc tcgggtacga tgtgtggggt attggcatac
+     3061 tatggcgcta agcgtggaat agtgtttcca atagcccttt acctaagaag cattctgaca
+     3121 catgggttgg acttttacac agacctataa ctcgtatccg gcctggtgat gtatgtccgc
+     3181 ttatcactga atgcaggatt ccgccaattc cgctcgcggg ttctcggaca acgggccatg
+     3241 gagatggatc aatgagccat gttgattacc atttcactac acacggttag tcaattccgg
+     3301 agatcataat tcgacaattg aatatgcgtg atacgctttc tgttaccagg atcgttgcta
+     3361 attagtttcc aatgtcacag tgttgggcgg cgaggtatca cggcgctctg ggtagaatgg
+     3421 cggtgcctga ctggacctca taactggtaa catacctatg accaaaggag gtcagacacc
+     3481 gatgagtcgg tgacatgggc ggtcacagcg tgccctgcat agtaatacag ctcgtttcta
+     3541 gacatttgtc ctaattcgcc acacaagtac gagagcgggg gtaacccatc accatcgtgc
+     3601 ccgtaggtac ctaatcttca tcgagcgcta ttgttaaagt ggactcaggg atcggcatct
+     3661 cgtgtagctt tgagaccggg gcccgaggat gtatgccttg catggaactt gactaatctc
+     3721 agtaatactg gccgtgtatt ggtgtgtctt ccttggcctc acatgggaac attaccacat
+     3781 ataacatcat ggggttcagt ctattactaa cgaagtcact aaaacgtact cgacggcgca
+     3841 tgcgagtatc gacgtagcgg ttggttacct taagctgact tggtctatgc atacactgat
+     3901 tagcttgtag cggtggcctt cgacgtctgt atcgtaggcg ttgtttgttg caaacacaaa
+     3961 cgacctagcg tcaagacccc ttctagagaa agagagtgac gactcttgtc agttcaactc
+     4021 tgtggtacgc cgctgcgaga tgcgcgttgc cacggcagac cccatgaact cgttcaagct
+     4081 aaactctagt tcacgctaca tgtgtttgtt tctgcgtacg caaaagtact aggtacagct
+     4141 atcttttggg ccccaagtgg gaccacactt tcggtcttcc tagcaaggct ataaaaccgt
+     4201 atggcatgag tccttgatct gcatttcgtt tagacagagc gagatg
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_I.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,69 @@
+LOCUS       part_I                  2396 bp    ds-DNA  circular UNK 29-OCT-2019
+DEFINITION  .
+ACCESSION   part_I
+VERSION     part_I
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     terminator      1991..2034
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(262..850)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2054..2388
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     CDS             complement(1148..1807)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     terminator      1033..1127
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgcatccaa gcttgctggg gcctctatcc gggacctgct tccgtacccc
+       61 gtccgcctat caggctaacg actctgcctg ccattcaggc tcaccggcaa gttggagtga
+      121 cctcttcatc gatacaaata gcgcatacgc cagacatacc gcccacgcac tcgaccataa
+      181 aattccccgt cacggcgcgc acctccacac tccgtggcct aaggaacgtg gcagccggct
+      241 gggccacttt ttagactacc atcggctcat ttttagaagg ccaccggctg tccgtcaatc
+      301 gtacccgttt aggcctcctt aacacagttc cgaatagtta cctcaagatg cggatacagg
+      361 atggctcccc caggggtcta gttcagtctt ttgtcgcctg cgcttgaacc tttatgcagc
+      421 gatccacaaa cggaacaccg agatttgtat ttgggagggc aggctttgga ggaacggtgt
+      481 atgtactttt gcttggtacc ctaggtaccc cacgatctaa tcggtcttcc tgacaggtga
+      541 cagaggaggc cgtaactgcg accacaggct aactgcggcc ttaacttatg gtcgcgaact
+      601 gcataagggc gtcgccgccc gttgtcagtg cgaattctgt tagtcgtcgt gtacaccttc
+      661 cggtctaaca tctcgtagtt actagaagag cggatgggtc ctgtaaagag agcaggttcc
+      721 cgtcttctct cactttaccg gtactggtgt gaccgggtgt gagtgatact gtgattccgc
+      781 tactattgct atgcctgccg tcgtagctag atacgatccc agaacatttt gggctgattt
+      841 caagtctctc cgggattccg taacgacggt tctcgaactg aatagctttg agatatcgca
+      901 atattccttg gttgactctt gtccccggga cacaagtcgt gtgcaatatg tatacgtcag
+      961 tatgctcgag actcctaagg ccgcatatct atgctatcac tattgcctat gcagtaactg
+     1021 gctaagcttg tggggtactt gcacatgact catgtcaagg tcggaggatt cccagacagt
+     1081 tggcatcatc agtgcgttca aggcggggag cgaccagcca gatattgatc gacgaggtgc
+     1141 cacgaagtgt tccaaggtta tttttagtat gttacatcca tcagcgggtc taggccatac
+     1201 cggtctatat tatggtgagt cgtataggct gtaatgccgg ctgcacaatc tacggccgat
+     1261 tgcacataaa atggtcaact aacgacaagc tctgattctc aacttggata aaccttatca
+     1321 caaaaggtcc gacacggttc agccgaggta aatcaaagtg attatgactc caggagcgac
+     1381 acaaagttgc actgtctact gttggtcatc accgtactgc aaacgggtaa agatacttag
+     1441 ctttgttagc tattgcagaa cctaattgct ttcctgccct aaggcgatcc ggatcctcta
+     1501 tttatcaagt taattatcag agcttagctc aagtcaaagg tcttagtcag gtatggttta
+     1561 gtcggcttat ctcgctccga taaacccctc gcgcctcgga ttcattcacg cgtttatatg
+     1621 gtgaggggcg acccgtaggc tagtcgcact cctcggcaat taatcctaca gaaacctaga
+     1681 catgggagtt gcgatcctcg agatacggcc tgagagggtc ggcaaagtgg gtgcttcatt
+     1741 ctcttcggcg gagttcgcag gctctagaat gcctggtttt catctcgaca taaattacga
+     1801 tgttatctcg tgcattatta ccccttttct gcaggtttta agtcgagtct agtcttacta
+     1861 acgctgttct tcccgagaag gtgtccaggt tagatctcgg catattttca ctggcgcgct
+     1921 atccgacagg aagacagcac ccgttaagcg ccccagtcac atcaagatca gtcctatgtt
+     1981 gactcttgct ggaggtcttc tcgaatccag ctaatgttgg attacccgcc cctctggaat
+     2041 tcggtctctg cttttattat ccggcatgca tgcggcgttg catcgcttca tcgtcatcga
+     2101 catatcgtta gcgggactta tcagggtccc atcacggctg tgacagctgt tcataagtgt
+     2161 aatagcagtc accccaccaa atgcaagact gttcccaaac taagtgctag ggaggttggc
+     2221 tacctatcgg cgtggcagtt gaccgggttt ttcttagtac ctgccttcca atctccgata
+     2281 aaagcaagat gacttcctgc ttgcgctaaa gtctgaattc gctaaggggg cagattcatt
+     2341 accagagact gccaaagtca accgccgaac gatactggaa tatatggagg tatgag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_J.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,196 @@
+LOCUS       part_J                  4380 bp    ds-DNA  circular UNK 31-OCT-2019
+DEFINITION  .
+ACCESSION   part_J
+VERSION     part_J
+KEYWORDS    "Source" "Sequence" "Freezer" "Shelf" "Box" "Concentration" "Use"
+            "creator:SynthSys Center" "marker:SmR".
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     rep_origin      join(4298..4380,1..166)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     promoter        1442..1476
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    2345..2362
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(2550..3341)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    1187..1210
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1366..1396
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(2550..3455)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    2421..2449
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      3766..3771
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             167..1186
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    2526..2549
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            167..1186
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      3744..3749
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             1503..2222
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    1409..1426
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      3589..3594
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      2227..2298
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    1319..1343
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1370..1394
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_RNA        3625..4177
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      2314..2341
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2364..2474
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        complement(3628..3735)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    4264..4272
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     RBS             1485..1496
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2353..2356
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    complement(2476..2516)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3539..3562
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1427..1430
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     -10_signal      3610..3615
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1211..1258
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     gene            complement(2550..3455)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      3589..4177
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    1414..1419
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    2388..2411
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      1409..1411
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2357..2362
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+ORIGIN
+        1 ctcatgggag tgtagcgcta gccatagttg acctgtcagc cggtcaaggt tggtccgaac
+       61 ctagccagtt agacgaccag ctcccccact attgcacagt gcctgtataa gcacgtcagt
+      121 gtctggcacc actgtgcgcg gtgtggtcct cgggacgatc ttcctacggc tacccatgcg
+      181 ctagtgatta cagacgatcg ttttttcttt ttctgtggtg caaatacaca agatacgtca
+      241 agagtcctag cagcctcatc ttgccaattg caggggtacc gattcaccca tggtatcagt
+      301 cacgcaaaaa aagacgacat cggagttgct ggcgactggc aaaagaaaac atctatctgc
+      361 cgtggcgttc gtctagcgca gcgagccgac tgactactcc gttatctcaa atttagtttc
+      421 gtaagatctt cacgggagcc ggccagctga agaatctata ggtctaccgc tagaggaagc
+      481 ccgtttacaa ccgacgtact agtccgacag caatcgtcag catgccaatt tattgtatca
+      541 ggttgagaat gcaccactac ggaatcgacg tgccactggc cgcacgatac tagtgcgctg
+      601 gtaaacaggc caggagctct aaatctggag tggtgtgaat ttaaccgcgg aacgattgtt
+      661 gcacgcggtc cctgtgactc tgttgggagc actgtccccg gctccggata agtgatgtga
+      721 acgaaaaggt gggctgacca gagatagggt taaggacggg cgatcgtagt ggacgattac
+      781 tgctgatctt ccgagcactc tgagtcgcgc ggcgtatcgg gagttacccc gctcgctaca
+      841 catctgaatt ccgccggata ctatgggtgc agagtggatc accttttcgt gacccgtata
+      901 ttcgtcgttc tcatcactgt cctccgcgat ttatttcaat cgtcggtttc gccagatgca
+      961 ttcctgggga agtcatcgcg acagtgcgct gcgcgcacag ctcttcttgg tttattcgag
+     1021 attgtggttt atcaacatgg tctatctacg gactgattag aatattccca cgttaagccg
+     1081 acgtgcattg gtactggctc cttaattaag cgcagagggt aggcgccttt tcttgtgcaa
+     1141 accattatat gaggaactag caaacactat ggcgcaatat gtccacgtga ctcgagcatt
+     1201 ctgtgttgcg gtagcgattt cactagtcac aaacggatag attctacggc gcacccggtg
+     1261 catcgttgta tgttcagcaa tttggtcata tcccgctcct ctattcaatc tcttttttcg
+     1321 tcaggggggg cacatacttg gagcagctgc gcctaacatt acaataagca gtcggagctc
+     1381 agtacaaaac ccttatctta gcggtccgtt ctggaattcg gtctcaggag atatgcaggt
+     1441 gtttacggct aggcacttac gcgaaatttc agctcgcggc aaactgtgct tatgcgactt
+     1501 cagctagtcg tcatcgagtg ctgacgcgct tgttctacct taaggtgccc gctatcgcat
+     1561 tgtccagggt tcggctatga gggtcggaac cagatcgcac ctacatgatg tcacgatact
+     1621 attattcacg tcgttagaga acggacggtc cttcgtcctc acaggaaaat tattagaaat
+     1681 ggtcaaccgg gtccacaaac gggcaattgc cactttggta gtacggttgc acataagatg
+     1741 atatttacgc cttctgcgtt caggttacga tagtcgttga tggggctcgc tccgggtgaa
+     1801 gttgatccag taaaatgggc gtcgatactt ctcctgtgag ctaagcgtct aaattcattc
+     1861 ctagtctcgt gacgagaaca gaaaagacta aaccacgcgt gatggacctt ggtaagcgct
+     1921 tgtcggtcta acttgtctca tctcacacgg tatgttcttg tgagcgctga ccagcccgtg
+     1981 tccctgacgg ggaattcatt ctaacttacg gcttgggcgt cgtgatgttt cggaatccag
+     2041 gatattacac agtagatgta gcttgtggcc gaacgagtgt atttcctgcg tcggattacc
+     2101 tcatttcttg ttaatctgcc tacaattaag ccctttcagc agccttccct ctcgtttata
+     2161 tttcgacagt caccgtgaca gtgtgatcga gctgtgggaa aatcacaata tagacgttag
+     2221 ttgcttcgac agaaacggcg aatgtacgcg gttgtgatgg atgagacagg ccattcaatt
+     2281 ctattcagcg aagttcagat tggttgctac tgctaaagga tgcgcatttg tcctttctgc
+     2341 gcacctgcat atacccctaa gatgccagcg caatacggca tcgcagggca agcaacaccg
+     2401 cacagcatgt ccctaaaggg aagatttaat acggactcag tcaagttgtg agaaacgaca
+     2461 atacattgag tggaatgccc tttggtacgt tggcgataga tctaacgaga aacttcaacg
+     2521 agatctagag tatcggactg agatgcatca tggctaggga ttgctgaatg gatatctttg
+     2581 ccaaaatgag ctcgactagg aatctcagac tgccagctac gaaaagctgg gggatattca
+     2641 tttccgctct tgtaaggcgc acgatgaccc tgtggagcaa aattcgacgc ggcaacgtag
+     2701 tcaaagtacg gcctatctgg gacggagatg ggattgtttc tgtattcatg ccggcctctt
+     2761 gagattgtaa ggatacccgg ccacagtctc gtaagaaacc cgatatcgct caaacgaatt
+     2821 gacatcagtt agggcttgcg ctctagcaac cacgcgtcgg gtgttcgact gaatttaaga
+     2881 tccagcgcaa accattcctt aaaggcggtc caggtgaaac cggctctgat aatgtacagt
+     2941 ggattgtcca gttcgcttca aagtgcaatc aggcaaggta ctggcaagtc accgcttggg
+     3001 gccggtttca gtggagcttt atcgacaaaa ggccgggccc tttggcctag agctcacttt
+     3061 tggtgtcgtt cacgagtgag aactttggct cgcagcttga atgcttgtca cgtttagggt
+     3121 tatacaacgt ttctataaac tacctatgac aaatcccgat cttctgaaac tccataagga
+     3181 ctaagagagt ccgcgacagt ttcacttggt cggtgctatt gactatgtca cgcatgcccg
+     3241 gtaaagcttt taagcaaagc ctgatatatc acgggaggtt actcaaagca ttttctaaag
+     3301 ggacagcgga ctcacattag cctaatataa acccgatcag gccatgcacc tcgattcacc
+     3361 ggaaggtagt accatgcacc ggatatttgg gacaacagtg aatagtacat cgtaaaatgt
+     3421 caaggcctag ctatttttca ctggtgtctt atctctatta caacacacac ggatgtcccg
+     3481 agcctacact ttcaaatata ctcaaggttc gctgttaagg gtaatacaag agtgctcggt
+     3541 ttagtatcca tatgttggta caagtgactg tgctagccgt aaattaattc ggcttccatt
+     3601 ccagcttggg tgtttagggt ctagacggtt gaaaccagaa agagtacaga caaaaccgta
+     3661 gctctcccaa ggttgatcct ccagacacct acccacacta gtagcgcagg cctagaggag
+     3721 acgttaggag cggaattgta cattcagtat cgcattaagc acaaagacag acaaacctag
+     3781 aagccactta tcccctcgta ggagtacaac ggcagcgctt tcgggaggag ttgcctaact
+     3841 acgctctgga cagcaagtcc cagaatgaag aaaatgactt ggcgagaacc caccactaca
+     3901 tgcagggtct tgggaccggt cagcacagct tatccatgcg gcaattccgg acgaccgcga
+     3961 atgaggatca cgacactgcc gatgttgcac cattgacctt ctcctatgca acaagggctt
+     4021 aagatggtag atggtaatag agtagcctgc gaccttatgc ggtaatacac aaaaaccggt
+     4081 aaacagtgcg ttgatgctgt gtgctggcgc atttgtgtac cttgctgggc tcgtataaaa
+     4141 ttctgtcagc aggacgttca cctcccttct gctagtcgct aggcacaaac ggaaaaggtc
+     4201 taatcgcgcg cgtgctcgtt agagtactgg ggcctcccac cacggatgat cacctcgccg
+     4261 atacatttgg ccttatgtct caataagacc tcatggtcta tcctacacca tagatttgga
+     4321 aagtctagtt gctgcctagc aggctgatag caagcgtcgt acgaggatcg aggaagggca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_K.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,108 @@
+LOCUS       part_K                  3634 bp    ds-DNA  circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_K
+VERSION     part_K
+KEYWORDS    "creator:SynthSys Center" "marker:KanR, BlpR".
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    1268..1284
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(join(3199..3634,1..380))
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2374..2377
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    2395..2419
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     promoter        1382..1560
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2370..2373
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2389..2393
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    1239..1261
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     rep_origin      complement(2510..3098)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      2117..2369
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             1562..2112
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     rep_origin      671..1106
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+ORIGIN
+        1 accagacagc ttccctgctg cttagagtgc catggggaat tgatctgtgt tcaatgactt
+       61 taccataagc gcgcatcgtc attgcatcac gtgctttatc tctcgtagct agtagggaac
+      121 aagagtttgc gaccactggt ggaatttcta gccgctatgt gaaaagtcac tagtagtatt
+      181 aatagtcggc acatcgcgta cgcagtgctg agattcccct cactgttact tgagctagtc
+      241 gcgccttgac agaccgcctt tcgaaggtgg cagagtgcct aatatattgc cacgttgagc
+      301 gtactccttc ccggagtttc atcttaccgc cgggcgcgcg aagctacgtt tttcgaattt
+      361 actaacgcac gctgacggtg gaagggcgat tggactggtt agattcaggt atgccttaag
+      421 cgtactttac aaccagaggc tttatttgat tgtctaatct tcgtcaaaga acgaatacca
+      481 gcgcttgagg ggtgactaga ctaataggag acaccgtctg tatcactcgt cggctatggc
+      541 cgtactgtga acgcgacggg ccctaccagg ccacagattc ctatgtacgt tgcaagggtg
+      601 ggctttgacc gttgcaacgg cgcactaggt ggcattcttc tctgctgcca atgatccgcc
+      661 tcgccgagct aggggcgaag caggttatga cgcagcggaa cggtagtact atctaatatc
+      721 aactaaaatt gtttctcaaa ggttcaaact agtattcttt attagaaacg atgatggcat
+      781 ccggaacagg gttatggccc aggtgctgga tgaagccttg cctcgaggga cttagtcgcg
+      841 tcgcccctct accaaggcgc taacggctag cgagatggtt gaggcgggag ccccgccact
+      901 ttctagttga attcagagct acgtatcctg atgctaatcc ctcgaagaac tttccgatgc
+      961 agctactatc tctttcgtaa agttagaata ggaacccggt aacggtggaa cgtcccgtca
+     1021 taggaggttg tctcctacac tatctaagta cgtcagaaga tcgatttcct cagccgctga
+     1081 ccccgtccgg catgaccagc gccgaacgta taggccgtat tgctgccgga acgactgctt
+     1141 caaaggtaac catagccgtg gtacagtgac aacccactta gctattaaat catgcgcact
+     1201 ctagacctct tgcacatacg gagcaactat gtatctaatt ggcacgagac atagaggagg
+     1261 gccaatcaca gtagtttact ggtcgaattc cacctgcata tggagagaca ctccttcatc
+     1321 aacagcagag gttacatacg tttaacctga ccgatggttg cccatcgaaa gcaaggaccc
+     1381 acgggtaggc agctgttgtt tgatatgctt ttgtccccgg aaggcgccga taaaattata
+     1441 cgccgtcccc cgcgtccgtt acgagcttcg tgatgttgcg ggctgaagtt ccctacgagt
+     1501 caataggcca actcgaatgg ctaaatggtt gcaacccaca ggctcaactt tgaaggtaat
+     1561 acgccaaaat ccaatatgct ctttcgggta gcgcataaaa ccttctgggg gccactgcag
+     1621 acagtcatgg aggactacgt gcaacactac gctctagagt gatgatgtgg cagtcaaccg
+     1681 agggctgtta agagaagtct gtgcacgaaa atcaatgagt cggtgtaatc ttcaccttcc
+     1741 tacaaaccaa ggcttgaggg cctcaatttc gagcaccact tcttgaccaa gccgttcgcc
+     1801 ggtataggag ttacgaattc gggtcgtctg ccgtctttga accatagata agtacctccc
+     1861 gagtcgggag aacacgaatc gcatcagaac tcatcgaagg gtgttacttt gcccatcggc
+     1921 atccccgaag attaattgca ttcgaaattt taacttcgag aatcatccgt gctaaccaac
+     1981 gtggacgagc tatgaacgtt tacgtgttca gtatctagga attgacacgt ctccgatagc
+     2041 gggagtcacg gcatgagtta cggcttttgt gaccagcgtc tgtgtaattt tattgacagt
+     2101 ttcatatata gtgtctcgtc ttgcctttga gattcacagg ctgtaagagg gatgccgtcg
+     2161 tgtatatgcc tgcagttaga gcttccttgt caggacgagc aactcactcc ttctggtgat
+     2221 gctttgctag catgtagctt cgggtacttg cggaaaagga cagcctacag tgtctgcggc
+     2281 ggtacgtcac taatatgaca tacgctgtgg acatcgtgaa gcggcgaatc gctccagatt
+     2341 gaggtttaca gagtactcca tagtcacaca actcagaata tgcaggtgct gcagtgaccg
+     2401 aatcctctca ggtcgcgctg gcggcccgtt tgagagtgct gaaagcgaag tttatccgca
+     2461 ccgtcatcca gtgcacctcc cccagagaat gattacttgt gaatgcggtt aacctgaggg
+     2521 ccgacgccgc gattaaattt ttaacgtgat gcacaagctg ggggcactct cccctggggt
+     2581 caggttataa ttttaaaccc actacggacc tggactgcaa gatgcttagt ccacgcgtct
+     2641 catagaccgt cggtctatag ccatgttcaa cgccgccagg ctgggcgcat aactgtatgt
+     2701 gactttgtcc acatccaagg cgacgatggc ggcagttggc cggagggctg gctgtcaagg
+     2761 ggccacgcgg atgaagggag ctcatacgca actatggagc gcggtatata gtataggatc
+     2821 cgccgggaca cgcgggaatc aagggacaaa ggagcagtca gcgtgaaatc tttacgggtg
+     2881 aagcgcgctc gtaccaccta gtcccgccta aggcccttgt gtcgtgcaac atcgctgggg
+     2941 cgacggatga caatatgatc aaggcccgag agctttgaat gtaagaggcg tattataaag
+     3001 cctaggtccg catgttgata cggggagcag cccatgcgca gtaggaaggt ccgaccaccc
+     3061 ttttctgagg tctactccaa cctccttgcc gagtgctctc cgctatctcc acgcatagca
+     3121 tactccgctt ctaacatctt cttcaaagca tacacgctac ttagcagagc aaatcgacac
+     3181 gcccatggag tggtccgctc aaaccgcgca attaagtata agctaatgtg acggaccgga
+     3241 cctacgattt cccccaactc gtggggatca gttgactcgt ctcagcttat gagacataat
+     3301 tacggtcata gggtacgcct atgcccctca gagatctcta ggtcatatgc cctatcgggt
+     3361 gctcggtgac cattgtctca tacaaagtca tatttggcag ggcttctatg gacgagtatt
+     3421 atgtgcccaa aagggaacgt ctgagttggg attcgcttct aaccaatact ctaatggtac
+     3481 ctaatttaat gtggtcgctg cgcaccccgc cgggtacaac tgctgagttc ctgagatcgg
+     3541 tacggcaaac atcttttatc cagacgaggg ttctggccag aattgatgtt cagatacgag
+     3601 aaggcatgtc atgtcacaag gattttggag aatt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/2-step_golden_gate_parts/parts_for_2-step_golden_gate/part_L.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,79 @@
+LOCUS       part_L                  2267 bp    ds-DNA  circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_L
+VERSION     part_L
+KEYWORDS    "creator:SynthSys Center" "marker:KanR".
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    join(2263..2267,1)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      2..59
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(1140..1955)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2206..2209
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2202..2205
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      2139..2182
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(254..842)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2248..2251
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2185..2190
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      1025..1119
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 gtccgatgcg agcaccacct atagataccc taatcagcat ggtcccggtg accattacca
+       61 ccgacggcct tgttttaaac gaaggcgctc actatacaag aaactaatgt ctcccacaag
+      121 gctcagaccc agccggtgct ttcagcgctc cccgttggcg ccccccgaag accatagaga
+      181 ggtgctctgt taacaactat aatgaaaggg attattgagg gagtcggagg tgaattctga
+      241 agccttaccc ctacggtcgt ggtcatcatc acggatcgcg ataagcggcc ggtctgttac
+      301 ggacgccact acgaggaggg tttcttggca atcaaggcta cgcattacaa ccatcggggt
+      361 cggtctggct gaacaatctt gatgttcaac ctttgttacc ggctccttgt gttattatcc
+      421 ggtttttttg atctatatgt ttataaggaa gcggtgcaga ccgtagagaa ataccggcta
+      481 aggcagtcgc tcaatgcaca ccagcatcgc cgagacatat aaagccataa acattaattg
+      541 gaatgctagt cacagcgtgt tgactggacg cttaaaagtt tctacaaaag gtatagtttt
+      601 aacatttctc tgagttagcg ctatcgggtc gactgacatc tagaattgac acgttactca
+      661 cctggatcct agtcacactc cgggaaccgc tcgcttagtg gcagtagcgg ggggcgtccc
+      721 taggatagct gcgcaaagcg tggtttatct aatcgtggct tgtgtggaca tgatgctgtt
+      781 caggcgcatc tgtggccgcc acagcattac caagctaatc agaaaccgcg gcatgtcccc
+      841 gcgatgcgag aggcatctgt tagagccaaa gagtggaggt ctgtaatatc gctagcggag
+      901 attttctaag gggcgtggga ctttatcccg atatggctga acgatccaac ggcaaatggt
+      961 tctgccattg aactttaacc atgaatagac tccaggcgag ggataatgga aataatagca
+     1021 ggaaatgaca atctactagg tgcgcactat caagattgta tgtttgcgta tcgtagttct
+     1081 aatggtcttg tgtcccgtat tgggtcggac ggtgctgttc ctgatcgtag caatgcccgg
+     1141 ttagaatcac gcatcggagc gatcatttcg ggcgatacgc gttcgttctg tccactcttg
+     1201 tgggagtccg acgtatgcct gctcggtatt gttttattca ggcgacagta cctcccattc
+     1261 aaatatacag ggttatacta cacaccacga gtaataaaga cttgtgttgt gccaattcct
+     1321 cgtgggactg ccacgctcgt gagcttcgcg gttacatacc cctatgtccc caactgttgg
+     1381 tggcaaatcc ctaatctaat ctattgtatc acagtcggtc aacgactgaa attggggcaa
+     1441 caccaacagt gctcttacga tattcgtctg tgtctaacaa tccaacaaaa agctgttatt
+     1501 atgatggagg atcttggatt gcgtcagtac tacggtgttg tacgagaatt gcatgatgat
+     1561 tcctcgatgt cgagtccttg caagatcgtg atctatagcc aagctgctgc tgtagatcaa
+     1621 cctcaccggg gcgggggtcc cattactatg ggcggcatta gagtaccata gatgaacgcg
+     1681 agcagagaca tgtcaatgta tcccagtcct gcagtactac gtcagtctct gctcctgggg
+     1741 ccaatgcacg cctgtagaat agggccgtgt tcccatgaga aatttgaggg acttacgatt
+     1801 agatggcctt ggcaggggac tccgcgtacg tgtggggatg aaccggcacc ggccttggcc
+     1861 ctgagtaaat gtaagcgata tcaacttcgc tattcatgat cagtggtatt cgtgtaggca
+     1921 ccgaaagtcc cttggcgaaa gtagagacat acgatacgga ccgcaagcga gcagaatttc
+     1981 agcacatgac agttattagc ttttttctaa tggtgctccc attatgattg tcaagtcccg
+     2041 actgctagct gtaggatgaa acacatccac acacgtgtta ccatactgat tttgacacta
+     2101 cttcctaacc gggccgaatg gtatctgctg cgatgcttag ttacgtaaca gccgaatgtc
+     2161 acgccactgc atattgtggt tctggaattc cacctgcata tgtcacgcta gagaccgtat
+     2221 gaggtgggcg gatagtggtg acttcaaacc catatgcagg tgctgca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BASIC_assembly_dataset/GFP.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,130 @@
+LOCUS       GFP                     3735 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  
+ACCESSION   
+VERSION     
+SOURCE      
+  ORGANISM  
+COMMENT     Serial Cloner Genbank Format
+COMMENT     SerialCloner_Type=DNA
+COMMENT     SerialCloner_Comments=seq 20140514
+COMMENT     SerialCloner_Ends=0,0,,0,
+FEATURES             Location/Qualifiers
+     primer_bind     3668..3687
+                     /label=T7
+                     /SerialCloner_Color=&h008B8B
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     rep_origin      complement(1534..2162)
+                     /label=ColE1 origin
+                     /SerialCloner_Color=&h4682B4
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     CDS             complement(2314..2973)
+                     /label=AmpR
+                     /SerialCloner_Color=&h8FBC8F
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     Promoter        complement(3213..3241)
+                     /label=Amp prom
+                     /SerialCloner_Color=&h4682B4
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    3668..3684
+                     /label=T7-promoter
+                     /SerialCloner_Color=&hFF00FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    19..732
+                     /label=GFP-SF-pep
+                     /SerialCloner_Color=&h80FF80
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    1..18
+                     /label=Prefix
+                     /SerialCloner_Color=&hFF0080
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    742..759
+                     /label=Suffix
+                     /SerialCloner_Color=&hFF00FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    2974..3170
+                     /label=pB1a promoter
+                     /SerialCloner_Color=&h84A4C0
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+ORIGIN
+        1 TCTGGTGGGT CTCTGTCCat gcgtaaaggc gaagaactgt tcacgggcgt agttccgatt 
+       61 ctggtcgagc tggacggcga tgtgaacggt cataagttta gcgttcgcgg tgaaggtgag 
+      121 ggcgacgcga ccaacggcaa actgaccctg aagttcatct gcaccaccgg taaactgccg 
+      181 gtgccttggc cgaccttggt gacgacgttg acgtatggcg tgcagtgttt tgcgcgttat 
+      241 ccggaccaca tgaaacaaca cgatttcttc aaatctgcga tgccggaggg ttacgtccag 
+      301 gagcgtacca tttccttcaa ggatgatggc acttacaaaa ctcgcgcaga ggttaagttt 
+      361 gaaggtgaca cgctggtcaa tcgtatcgaa ttgaagggta tcgactttaa agaggatggt 
+      421 aacattctgg gccataaact ggagtataac ttcaacagcc ataatgttta cattacggca 
+      481 gacaagcaaa agaacggcat caaggccaat ttcaagattc gccacaatgt tgaggacggt 
+      541 agcgtccaac tggccgacca ttaccagcag aacaccccaa ttggtgacgg tccggttttg 
+      601 ctgccggata atcactatct gagcacccaa agcgtgctga gcaaagatcc gaacgaaaaa 
+      661 cgtgatcaca tggtcctgct ggaatttgtg accgctgcgg gcatcaccca cggtatggac 
+      721 gagctgtata agcgtccgta aGGCTCGGGA GACCTATCGT ATCTTTCTAG AAGATCTCCT 
+      781 ACAATATTCT CAGCTGCCAT GGAAAATCGA TGTTCTTCTT TTATTCTCTC AAGATTTTCA 
+      841 GGCTGTATAT TAAAACTTAT ATTAAGAACT ATGCTAACCA CCTCATCAGG AACCGTTGTA 
+      901 GGTGGCGTGG GTTTTCTTGG CAATCGACTC TCATGAAAAC TACGAGCTAA ATATTCAATA 
+      961 TGTTCCTCTT GACCAACTTT ATTCTGCATT TTTTTTGAAC GAGGTTTAGA GCAAGCTTCA 
+     1021 GGAAACTGAG ACAGGAATTT TATTAAAAAT TTAAATTTTG AAGAAAGTTC AGGGTTAATA 
+     1081 GCATCCATTT TTTGCTTTGC AAGTTCCTCA GCATTCTTAA CAAAAGACGT CTCTTTTGAC 
+     1141 ATGTTTAAAG TTTAAACCTC CTGTGTGAAA TTaTTATCCG CTCAtAATTC CACACATTAT 
+     1201 ACGAGCCGGA AGCATAAAGT GTAAAGCCTG GGGTGCCTAA TGAGTGAGCT AACTCACATT 
+     1261 AATTGCGTTG CGCTCACTGC CAATTGCTTT CCAGTCGGGA AACCTGTCGT GCCAGCTGCA 
+     1321 TTAATGAATC GGCCAACGCG CGGGGAGAGG CGGTTTGCGT ATTGGGCGCT CTTCCGCTTC 
+     1381 CTCGCTCACT GACTCGCTGC GCTCGGTCGT TCGGCTGCGG CGAGCGGTAT CAGCTCACTC 
+     1441 AAAGGCGGTA ATACGGTTAT CCACAGAATC AGGGGATAAC GCAGGAAAGA ACATGTGAGC 
+     1501 AAAAGGCCAG CAAAAGGCCA GGAACCGTAA AAAGGCCGCG TTGCTGGCGT TTTTCCATAG 
+     1561 GCTCCGCCCC CCTGACGAGC ATCACAAAAA TCGACGCTCA AGTCAGAGGT GGCGAAACCC 
+     1621 GACAGGACTA TAAAGATACC AGGCGTTTCC CCCTGGAAGC TCCCTCGTGC GCTCTCCTGT 
+     1681 TCCGACCCTG CCGCTTACCG GATACCTGTC CGCCTTTCTC CCTTCGGGAA GCGTGGCGCT 
+     1741 TTCTCATAGC TCACGCTGTA GGTATCTCAG TTCGGTGTAG GTCGTTCGCT CCAAGCTGGG 
+     1801 CTGTGTGCAC GAACCCCCCG TTCAGCCCGA CCGCTGCGCC TTATCCGGTA ACTATCGTCT 
+     1861 TGAGTCCAAC CCGGTAAGAC ACGACTTATC GCCACTGGCA GCAGCCACTG GTAACAGGAT 
+     1921 TAGCAGAGCG AGGTATGTAG GCGGTGCTAC AGAGTTCTTG AAGTGGTGGC CTAACTACGG 
+     1981 CTACACTAGA AGGACAGTAT TTGGTATCTG CGCTCTGCTG AAGCCAGTTA CCTTCGGAAA 
+     2041 AAGAGTTGGT AGCTCTTGAT CCGGCAAACA AACCACCGCT GGTAGCGGTG GTTTTTTTGT 
+     2101 TTGCAAGCAG CAGATTACGC GCAGAAAAAA AGGATCTCAA GAAGATCCTT TGATCTTTTC 
+     2161 TACGGGGTCT GACGCTCAGT GGAACGAAAA CTCACGTTAA GGGATTTTGG TCATGAGATT 
+     2221 ATCAAAAAGG ATCTTCACCT AGATCCTTTT AAATTAAAAA TGAAGTTTTA AATCAATCTA 
+     2281 AAGTATATAT GAGTAAACTT GGTCTGACAG TTACCAATGC TTAATCAGTG AGGCACCTAT 
+     2341 CTCAGCGATC TGTCTATTTC GTTCATCCAT AGTTGCCTGA CTCCCCGTCG TGTAGATAAC 
+     2401 TACGATACGG GAGGGCTTAC CATCTGGCCC CAGTGCTGCA ATGATACCGC GAGACCCACG 
+     2461 CTCACCGGCT CCAGATTTAT CAGCAATAAA CCAGCCAGCC GGAAGGGCCG AGCGCAGAAG 
+     2521 TGGTCCTGCA ACTTTATCCG CCTCCATCCA GTCTATTAAT TGTTGCCGGG AAGCTAGAGT 
+     2581 AAGTAGTTCG CCAGTTAATA GTTTGCGCAA CGTTGTTGCC ATTGCTACAG GCATCGTGGT 
+     2641 GTCACGCTCG TCGTTTGGTA TGGCTTCATT CAGCTCCGGT TCCCAACGAT CAAGGCGAGT 
+     2701 TACATGATCC CCCATGTTGT GCAAAAAAGC GGTTAGCTCC TTCGGTCCTC CGATCGTTGT 
+     2761 CAGAAGTAAG TTGGCCGCAG TGTTATCACT CATGGTTATG GCAGCACTGC ATAATTCTCT 
+     2821 TACTGTCATG CCATCCGTAA GATGCTTTTC TGTGACTGGT GAGTACTCAA CCAAGTCATT 
+     2881 CTGAGAATAG TGTATGCGGC GACCGAGTTG CTCTTGCCCG GCGTCAATAC GGGATAATAC 
+     2941 CGCGCCACAT AGCAGAACTT TAAAAGTGCT CATCATTGGA AAACGTTCTT CGGGGCGAAA 
+     3001 ACTCTCAAGG ATCTTACCGC TGTTGAGATC CAGTTCGATG TAACCCACTC GTGCACCCAA 
+     3061 CTGATCTTCA GCATCTTTTA CTTTCACCAG CGTTTCTGGG TGAGCAAAAA CAGGAAGGCA 
+     3121 AAATGCCGCA AAAAAGGGAA TAAGGGCGAC ACGGAAATGT TGAATACTCA TACTCTTCCT 
+     3181 TTTTCAATAT TATTGAAGCA TTTATCAGGG TTATTGTCTC ATGAGCGGAT ACATATTTGA 
+     3241 ATGTATTTAG AAAAATAAAC AAATAGGGGT TCCGCGCACA TTTCCCCGAA AAGTGCCACC 
+     3301 TGACGTCTAA GAAACCATTA TTATCATGAC ATTAACCTAT AAAAATAGGC GTATCACGAG 
+     3361 GCCGCCCCTG CAGCCGAATT ATATTATTTT TGCCAAATAA TTTTTAACAA AAGCTCTGAA 
+     3421 GTCTTCTTCA TTTAAATTCT TAGATGATAC TTCATCTGGA AAATTGTCCC AATTAGTAGC 
+     3481 ATCACGCTGT GAGTAAGTTC TAAACCATTT TTTTATTGTT GTATTATCTC TAATCTTACT 
+     3541 ACTCGATGAG TTTTCGGTAT TATCTCTATT TTTAACTTGG AGCAGGTTCC ATTCATTGTT 
+     3601 TTTTTCATCA TAGTGAATAA AATCAACTGC TTTAACACTT GTGCCTGAAC ACCATATCCA 
+     3661 TCCGGCGTAA TACGACTCAC TATAGGGAGA GCGGCCGCCA GATCTTCCGG ATGGCTCGAG 
+     3721 TTTTTCAGCA AGATA
+//
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BASIC_assembly_dataset/RFP.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,136 @@
+LOCUS       RFP                     3723 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  
+ACCESSION   
+VERSION     
+SOURCE      
+  ORGANISM  
+COMMENT     Serial Cloner Genbank Format
+COMMENT     SerialCloner_Type=DNA
+COMMENT     SerialCloner_Comments=seq verified 20140514
+COMMENT     SerialCloner_Ends=0,0,,0,
+FEATURES             Location/Qualifiers
+     primer_bind     complement(796..815)
+                     /label=T7
+                     /SerialCloner_Color=&h008B8B
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     rep_origin      2321..2949
+                     /label=ColE1 origin
+                     /SerialCloner_Color=&h4682B4
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_binding    3292..3314
+                     /label=LacO
+                     /SerialCloner_Color=&h6495ED
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     CDS             1510..2169
+                     /label=AmpR
+                     /SerialCloner_Color=&h8FBC8F
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     Promoter        1242..1270
+                     /label=Amp prom
+                     /SerialCloner_Color=&h4682B4
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    complement(799..815)
+                     /label=T7-promoter
+                     /SerialCloner_Color=&hFF00FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    19..726
+                     /label=mcherry
+                     /SerialCloner_Color=&hFF0080
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    1..18
+                     /label=Prefix
+                     /SerialCloner_Color=&hFF0080
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    730..747
+                     /label=Suffix
+                     /SerialCloner_Color=&hFF00FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    complement(1313..1509)
+                     /label=pB1a promoter
+                     /SerialCloner_Color=&h84A4C0
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+ORIGIN
+        1 TCTGGTGGGT CTCTGTCCAT GGTGAGCAAG GGCGAGGAGG ATAACATGGC CATCATCAAG 
+       61 GAGTTCATGC GCTTCAAGGT GCACATGGAG GGCTCCGTGA ACGGCCACGA GTTCGAGATC 
+      121 GAGGGCGAGG GCGAGGGCCG CCCCTACGAG GGCACCCAGA CCGCCAAGCT GAAGGTGACC 
+      181 AAGGGTGGCC CCCTGCCCTT CGCCTGGGAC ATCCTGTCCC CTCAGTTCAT GTACGGCTCC 
+      241 AAGGCCTACG TGAAGCACCC CGCCGACATC CCCGACTACT TGAAGCTGTC CTTCCCCGAG 
+      301 GGCTTCAAGT GGGAGCGCGT GATGAACTTC GAGGACGGCG GCGTGGTGAC CGTGACCCAG 
+      361 GACTCCTCCT TGCAGGACGG CGAGTTCATC TACAAGGTGA AGCTGCGCGG CACCAACTTC 
+      421 CCCTCCGACG GCCCCGTAAT GCAGAAGAAG ACCATGGGCT GGGAGGCCTC CTCCGAGCGG 
+      481 ATGTACCCCG AGGACGGCGC CCTGAAGGGC GAGATCAAGC AGAGGCTGAA GCTGAAGGAC 
+      541 GGCGGCCACT ACGACGCTGA GGTCAAGACC ACCTACAAGG CCAAGAAGCC CGTGCAGCTG 
+      601 CCCGGCGCCT ACAACGTCAA CATCAAGTTG GACATCACCT CCCACAACGA GGACTACACC 
+      661 ATCGTGGAAC AGTACGAACG CGCCGAGGGC CGCCACTCCA CCGGCGGCAT GGACGAGCTG 
+      721 TACAAGTAAG GCTCGGGAGA CCTATCGTAT CTTGCTGAAA AACTCGAGCC ATCCGGAAGA 
+      781 TCTGGCGGCC GCTCTCCCTA TAGTGAGTCG TATTACGCCG GATGGATATG GTGTTCAGGC 
+      841 ACAAGTGTTA AAGCAGTTGA TTTTATTCAC TATGATGAAA AAAACAATGA ATGGAACCTG 
+      901 CTCCAAGTTA AAAATAGAGA TAATACCGAA AACTCATCGA GTAGTAAGAT TAGAGATAAT 
+      961 ACAACAATAA AAAAATGGTT TAGAACTTAC TCACAGCGTG ATGCTACTAA TTGGGACAAT 
+     1021 TTTCCAGATG AAGTATCATC TAAGAATTTA AATGAAGAAG ACTTCAGAGC TTTTGTTAAA 
+     1081 AATTATTTGG CAAAAATAAT ATAATTCGGC TGCAGGGGCG GCCTCGTGAT ACGCCTATTT 
+     1141 TTATAGGTTA ATGTCATGAT AATAATGGTT TCTTAGACGT CAGGTGGCAC TTTTCGGGGA 
+     1201 AATGTGCGCG GAACCCCTAT TTGTTTATTT TTCTAAATAC ATTCAAATAT GTATCCGCTC 
+     1261 ATGAGACAAT AACCCTGATA AATGCTTCAA TAATATTGAA AAAGGAAGAG TATGAGTATT 
+     1321 CAACATTTCC GTGTCGCCCT TATTCCCTTT TTTGCGGCAT TTTGCCTTCC TGTTTTTGCT 
+     1381 CACCCAGAAA CGCTGGTGAA AGTAAAAGAT GCTGAAGATC AGTTGGGTGC ACGAGTGGGT 
+     1441 TACATCGAAC TGGATCTCAA CAGCGGTAAG ATCCTTGAGA GTTTTCGCCC CGAAGAACGT 
+     1501 TTTCCAATGA TGAGCACTTT TAAAGTTCTG CTATGTGGCG CGGTATTATC CCGTATTGAC 
+     1561 GCCGGGCAAG AGCAACTCGG TCGCCGCATA CACTATTCTC AGAATGACTT GGTTGAGTAC 
+     1621 TCACCAGTCA CAGAAAAGCA TCTTACGGAT GGCATGACAG TAAGAGAATT ATGCAGTGCT 
+     1681 GCCATAACCA TGAGTGATAA CACTGCGGCC AACTTACTTC TGACAACGAT CGGAGGACCG 
+     1741 AAGGAGCTAA CCGCTTTTTT GCACAACATG GGGGATCATG TAACTCGCCT TGATCGTTGG 
+     1801 GAACCGGAGC TGAATGAAGC CATACCAAAC GACGAGCGTG ACACCACGAT GCCTGTAGCA 
+     1861 ATGGCAACAA CGTTGCGCAA ACTATTAACT GGCGAACTAC TTACTCTAGC TTCCCGGCAA 
+     1921 CAATTAATAG ACTGGATGGA GGCGGATAAA GTTGCAGGAC CACTTCTGCG CTCGGCCCTT 
+     1981 CCGGCTGGCT GGTTTATTGC TGATAAATCT GGAGCCGGTG AGCGTGGGTC TCGCGGTATC 
+     2041 ATTGCAGCAC TGGGGCCAGA TGGTAAGCCC TCCCGTATCG TAGTTATCTA CACGACGGGG 
+     2101 AGTCAGGCAA CTATGGATGA ACGAAATAGA CAGATCGCTG AGATAGGTGC CTCACTGATT 
+     2161 AAGCATTGGT AACTGTCAGA CCAAGTTTAC TCATATATAC TTTAGATTGA TTTAAAACTT 
+     2221 CATTTTTAAT TTAAAAGGAT CTAGGTGAAG ATCCTTTTTG ATAATCTCAT GACCAAAATC 
+     2281 CCTTAACGTG AGTTTTCGTT CCACTGAGCG TCAGACCCCG TAGAAAAGAT CAAAGGATCT 
+     2341 TCTTGAGATC CTTTTTTTCT GCGCGTAATC TGCTGCTTGC AAACAAAAAA ACCACCGCTA 
+     2401 CCAGCGGTGG TTTGTTTGCC GGATCAAGAG CTACCAACTC TTTTTCCGAA GGTAACTGGC 
+     2461 TTCAGCAGAG CGCAGATACC AAATACTGTC CTTCTAGTGT AGCCGTAGTT AGGCCACCAC 
+     2521 TTCAAGAACT CTGTAGCACC GCCTACATAC CTCGCTCTGC TAATCCTGTT ACCAGTGGCT 
+     2581 GCTGCCAGTG GCGATAAGTC GTGTCTTACC GGGTTGGACT CAAGACGATA GTTACCGGAT 
+     2641 AAGGCGCAGC GGTCGGGCTG AACGGGGGGT TCGTGCACAC AGCCCAGCTT GGAGCGAACG 
+     2701 ACCTACACCG AACTGAGATA CCTACAGCGT GAGCTATGAG AAAGCGCCAC GCTTCCCGAA 
+     2761 GGGAGAAAGG CGGACAGGTA TCCGGTAAGC GGCAGGGTCG GAACAGGAGA GCGCACGAGG 
+     2821 GAGCTTCCAG GGGGAAACGC CTGGTATCTT TATAGTCCTG TCGGGTTTCG CCACCTCTGA 
+     2881 CTTGAGCGTC GATTTTTGTG ATGCTCGTCA GGGGGGCGGA GCCTATGGAA AAACGCCAGC 
+     2941 AACGCGGCCT TTTTACGGTT CCTGGCCTTT TGCTGGCCTT TTGCTCACAT GTTCTTTCCT 
+     3001 GCGTTATCCC CTGATTCTGT GGATAACCGT ATTACCGCCT TTGAGTGAGC TGATACCGCT 
+     3061 CGCCGCAGCC GAACGACCGA GCGCAGCGAG TCAGTGAGCG AGGAAGCGGA AGAGCGCCCA 
+     3121 ATACGCAAAC CGCCTCTCCC CGCGCGTTGG CCGATTCATT AATGCAGCTG GCACGACAGG 
+     3181 TTTCCCGACT GGAAAGCAAT TGGCAGTGAG CGCAACGCAA TTAATGTGAG TTAGCTCACT 
+     3241 CATTAGGCAC CCCAGGCTTT ACACTTTATG CTTCCGGCTC GTATAATGTG TGGAATTGTG 
+     3301 AGCGGATAAC AATTTCACAC AGGAGGTTTA AACTTTAAAC ATGTCAAAAG AGACGTCTTT 
+     3361 TGTTAAGAAT GCTGAGGAAC TTGCAAAGCA AAAAATGGAT GCTATTAACC CTGAACTTTC 
+     3421 TTCAAAATTT AAATTTTTAA TAAAATTCCT GTCTCAGTTT CCTGAAGCTT GCTCTAAACC 
+     3481 TCGTTCAAAA AAAATGCAGA ATAAAGTTGG TCAAGAGGAA CATATTGAAT ATTTAGCTCG 
+     3541 TAGTTTTCAT GAGAGTCGAT TGCCAAGAAA ACCCACGCCA CCTACAACGG TTCCTGATGA 
+     3601 GGTGGTTAGC ATAGTTCTTA ATATAAGTTT TAATATACAG CCTGAAAATC TTGAGAGAAT 
+     3661 AAAAGAAGAA CATCGATTTT CCATGGCAGC TGAGAATATT GTAGGAGATC TTCTAGAAAG 
+     3721 ATA
+//
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BASIC_assembly_dataset/basic_assembly.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,10 @@
+L2RBS-1P,L2RBS-1P_fwd,L2RBS-1P_adapter,,,,,,,,,,
+LMA-S,LMA-S_fwd,LMA-S_adapter,,,,,,,,,,
+L1RBS-xS,L1RBS-xS_fwd,L1RBS-xS_adapter,,,,,,,,,,
+L1RBS-1P,L1RBS-1P_fwd,L1RBS-1P_adapter,,,,,,,,,,
+L2RBS-xS,L2RBS-xS_fwd,L2RBS-xS_adapter,,,,,,,,,,
+LMA-P,LMA-P_fwd,LMA-P_adapter,,,,,,,,,,
+LMB-S,LMB-S_fwd,LMB-S_adapter,,,,,,,,,,
+LMB-P,LMB-P_fwd,LMB-P_adapter,,,,,,,,,,
+asm_GFP_RFP,LMA-P,promoter,L1RBS-xS,L1RBS-1P,GFP,L2RBS-xS,L2RBS-1P,RFP,LMB-S,LMB-P,p15A_kan,LMA-S
+asm_RFP_GFP,LMA-P,promoter,L1RBS-xS,L1RBS-1P,RFP,L2RBS-xS,L2RBS-1P,GFP,LMB-S,LMB-P,p15A_kan,LMA-S
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BASIC_assembly_dataset/oligos.fa	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+>L2RBS-1P_fwd
+GGACTAGTCCTGTGTGATTTTCTGCTACCCTTATCTCAG
+>L2RBS-1P_adapter
+ATCACACAGGACTA
+>LMA-S_fwd
+CTCGGGTAAGAACTCGCACTTCGTGGAAACACTATTA
+>LMA-S_adapter
+CGAGTTCTTACC
+>L1RBS-xS_fwd
+CTCGTTGAACACCGTCTCAGGTAAGTATCAGTTGTAA
+>L1RBS-xS_adapter
+GACGGTGTTCAA
+>L1RBS-1P_fwd
+GGACTAGTCCTGTGTGATTTACAACTGATACTTACCTGA
+>L1RBS-1P_adapter
+ATCACACAGGACTA
+>L2RBS-xS_fwd
+CTCGTGTTACTATTGGCTGAGATAAGGGTAGCAGAAA
+>L2RBS-xS_adapter
+CCAATAGTAACA
+>LMA-P_fwd
+GGACAGAGACCCACCAGATAATAGTGTTTCCACGAAGTG
+>LMA-P_adapter
+TCTGGTGGGTCTCT
+>LMB-S_fwd
+CTCGGGAGACCTATCGGTAATAACAGTCCAATCTGGTGT
+>LMB-S_adapter
+CGATAGGTCTCC
+>LMB-P_fwd
+GGACGATTCCGAAGTTACACCAGATTGGACTGTTATTAC
+>LMB-P_adapter
+AACTTCGGAATC
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BASIC_assembly_dataset/p15A_kan.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,75 @@
+LOCUS       F0001_p15A-Kan.xdna    2235 bp      DNA     linear   22/05/2017
+DEFINITION  
+ACCESSION   
+VERSION     
+SOURCE      
+  ORGANISM  
+COMMENT     Serial Cloner Genbank Format
+COMMENT     SerialCloner_Type=DNA
+COMMENT     SerialCloner_Comments=
+COMMENT     SerialCloner_Ends=0,0,,0,
+FEATURES             Location/Qualifiers
+     misc_feature    complement(72..887)
+                     /label=p15A
+                     /SerialCloner_Color=&h84A4C0
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=True
+                     /SerialCloner_Arrow=True
+     misc_feature    complement(1223..2043)
+                     /label=kanR
+                     /SerialCloner_Color=&hFF0000
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=True
+                     /SerialCloner_Arrow=True
+     misc_feature    1..18
+                     /label=iPrefix
+                     /SerialCloner_Color=&hFF00FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=True
+                     /SerialCloner_Arrow=True
+     misc_feature    2218..2235
+                     /label=iSuffix
+                     /SerialCloner_Color=&hFF00FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=True
+                     /SerialCloner_Arrow=True
+ORIGIN
+        1 TCTGGTGGGT CTCTGTCCCG TCAAGTCAGC GTAATGCTCT GCCAGTGTTA CAACCAATTA 
+       61 ACCAATTCTG ATTAGAAAAA CTCATCGAGC ATCAAATGAA ACTGCAATTT ATTCATATCA 
+      121 GGATTATCAA TACCATATTT TTGAAAAAGC CGTTTCTGTA ATGAAGGAGA AAACTCACCG 
+      181 AGGCAGTTCC ATAGGATGGC AAGATCCTGG TATCGGTCTG CGATTCCGAC TCGTCCAACA 
+      241 TCAATACAAC CTATTAATTT CCCCTCGTCA AAAATAAGGT TATCAAGTGA GAAATCACCA 
+      301 TGAGTGACGA CTGAATCCGG TGAGAATGGC AAAAGCTTAT GCATTTCTTT CCAGACTTGT 
+      361 TCAACAGGCC AGCCATTACG CTCGTCATCA AAATCACTCG CATCAACCAA ACCGTTATTC 
+      421 ATTCGTGATT GCGCCTGAGC GAGACGAAAT ACGCGATCGC TGTTAAAAGG ACAATTACAA 
+      481 ACAGGAATCG AATGCAACCG GCGCAGGAAC ACTGCCAGCG CATCAACAAT ATTTTCACCT 
+      541 GAATCAGGAT ATTCTTCTAA TACCTGGAAT GCTGTTTTCC CGGGGATCGC AGTGGTGAGT 
+      601 AACCATGCAT CATCAGGAGT ACGGATAAAA TGCTTGATGG TCGGAAGAGG CATAAATTCC 
+      661 GTCAGCCAGT TTAGTCTGAC CATCTCATCT GTAACATCAT TGGCAACGCT ACCTTTGCCA 
+      721 TGTTTCAGAA ACAACTCTGG CGCATCGGGC TTCCCATACA ATCGATAGAT TGTCGCACCT 
+      781 GATTGCCCGA CATTATCGCG AGCCCATTTA TACCCATATA AATCAGCATC CATGTTGGAA 
+      841 TTTAATCGCG GCCTCGAGCA AGACGTTTCC CGTTGAATAT GGCTCATAAC ACCCCTTGTA 
+      901 TTACTGTTTA TGTAAGCAGA CAGTTTTATT GTTCATGATG ATATATTTTT ATCTTGTGCA 
+      961 ATGTAACATC AGAGATTTTG AGACACAACG TGGCTTTGTT GAATAAATCG AACTTTTGCT 
+     1021 GAGTTGAAGG ATCAGATCAC GCATCTTCCC GACAACGCAG ACCGTTCCGT GGCAAAGCAA 
+     1081 AAGTTCAAAA TCACCAACTG GTCCACCTAC AACAAAGCTC TCATCAACCG TGGCTCCCTC 
+     1141 ACTTTCTGGC TGGATGATGG GGCGATTCAG GCCTGGTATG AGTCAGCAAC ACCTTCTTCA 
+     1201 CGAGGCAGAC CTCAGCGCTA GCGGAGTGTA TACTGGCTTA CTATGTTGGC ACTGATGAGG 
+     1261 GTGTCAGTGA AGTGCTTCAT GTGGCAGGAG AAAAAAGGCT GCACCGGTGC GTCAGCAGAA 
+     1321 TATGTGATAC AGGATATATT CCGCTTCCTC GCTCACTGAC TCGCTACGCT CGGTCGTTCG 
+     1381 ACTGCGGCGA GCGGAAATGG CTTACGAACG GGGCGGAGAT TTCCTGGAAG ATGCCAGGAA 
+     1441 GATACTTAAC AGGGAAGTGA GAGGGCCGCG GCAAAGCCGT TTTTCCATAG GCTCCGCCCC 
+     1501 CCTGACAAGC ATCACGAAAT CTGACGCTCA AATCAGTGGT GGCGAAACCC GACAGGACTA 
+     1561 TAAAGATACC AGGCGTTTCC CCTGGCGGCT CCCTCGTGCG CTCTCCTGTT CCTGCCTTTC 
+     1621 GGTTTACCGG TGTCATTCCG CTGTTATGGC CGCGTTTGTC TCATTCCACG CCTGACACTC 
+     1681 AGTTCCGGGT AGGCAGTTCG CTCCAAGCTG GACTGTATGC ACGAACCCCC CGTTCAGTCC 
+     1741 GACCGCTGCG CCTTATCCGG TAACTATCGT CTTGAGTCCA ACCCGGAAAG ACATGCAAAA 
+     1801 GCACCACTGG CAGCAGCCAC TGGTAATTGA TTTAGAGGAG TTAGTCTTGA AGTCATGCGC 
+     1861 CGGTTAAGGC TAAACTGAAA GGACAAGTTT TGGTGACTGC GCTCCTCCAA GCCAGTTACC 
+     1921 TCGGTTCAAA GAGTTGGTAG CTCAGAGAAC CTTCGAAAAA CCGCCCTGCA AGGCGGTTTT 
+     1981 TTCGTTTTCA GAGCAAGAGA TTACGCGCAG ACCAAAACGA TCTCAAGAAG ATCATCTTAT 
+     2041 TAAGGGGTCT GACGCTCAGT GGAACGAAAA CTCACGTTAA GGGATTTTGG TCATGAGATT 
+     2101 ATCAAAAAGG ATCTTCACCT AGATCCTTTT AAATTAAAAA TGAAGTTTTA AATCAATCTA 
+     2161 AAGTATATAT GAGTAAACTT GGTCTGACAG TTACCAATGC TTAATCAGTG AGGCACCGGC 
+     2221 TCGGGAGACC TATCG
+//
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BASIC_assembly_dataset/promoter.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,170 @@
+LOCUS       promoter                4361 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  
+ACCESSION   
+VERSION     
+SOURCE      
+  ORGANISM  
+COMMENT     Serial Cloner Genbank Format
+COMMENT     SerialCloner_Type=DNA
+COMMENT     SerialCloner_Comments=
+COMMENT     SerialCloner_Ends=0,0,,0,
+FEATURES             Location/Qualifiers
+     misc_feature    984..1028
+                     /label=Linker01
+                     /SerialCloner_Color=&h8000FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    1168..1212
+                     /label=Linker02
+                     /SerialCloner_Color=&h8000FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    1327..1361
+                     /label=PJ23105
+                     /SerialCloner_Color=&h84A4C0
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     primer_bind     4295..4314
+                     /label=T7
+                     /SerialCloner_Color=&h008B8B
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     rep_origin      complement(2161..2789)
+                     /label=ColE1 origin
+                     /SerialCloner_Color=&h4682B4
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     CDS             complement(2941..3600)
+                     /label=AmpR
+                     /SerialCloner_Color=&h8FBC8F
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     CDS             168..824
+                     /label=CmR
+                     /SerialCloner_Color=&h8FBC8F
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     Promoter        complement(3840..3868)
+                     /label=Amp prom
+                     /SerialCloner_Color=&h4682B4
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    1033..1161
+                     /label=terminator_B0015
+                     /SerialCloner_Color=&h84A4C0
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    4295..4311
+                     /label=T7-promoter
+                     /SerialCloner_Color=&hFF00FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    1..18
+                     /label=Prefix
+                     /SerialCloner_Color=&hFF0080
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    1370..1387
+                     /label=Suffix
+                     /SerialCloner_Color=&hFF00FF
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    3601..3797
+                     /label=pB1a promoter
+                     /SerialCloner_Color=&h84A4C0
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+     misc_feature    1327..1361
+                     /label=ANDERSON 024
+                     /SerialCloner_Color=&h84A4C0
+                     /SerialCloner_Show=True
+                     /SerialCloner_Protect=False
+                     /SerialCloner_Arrow=True
+ORIGIN
+        1 tctggtgggt ctctGTCCTT GATACCGGGA AGCCCTGGGC CAACTTTTGG CGAAAATGAG 
+       61 ACGTTGATCG GCACGTAAGA GGTTCCAACT TTCACCATAA TGAAATAAGA TCACTACCGG 
+      121 GCGTATTTTT TGAGTTATCG AGATTTTCAG GAGCTAAGGA AGCTAAAATG GAGAAAAAAA 
+      181 TCACTGGATA TACCACCGTT GATATATCCC AATGGCATCG TAAAGAACAT TTTGAGGCAT 
+      241 TTCAGTCAGT TGCTCAATGT ACCTATAACC AGACCGTTCA GCTGGATATT ACGGCCTTTT 
+      301 TAAAGACCGT AAAGAAAAAT AAGCACAAGT TTTATCCGGC CTTTATTCAC ATTCTTGCCC 
+      361 GCCTGATGAA TGCTCATCCG GAATTCCGTA TGGCAATGAA AGACGGTGAG CTGGTGATAT 
+      421 GGGATAGTGT TCACCCTTGT TACACCGTTT TCCATGAGCA AACTGAAACG TTTTCATCGC 
+      481 TCTGGAGTGA ATACCACGAC GATTTCCGGC AGTTTCTACA CATATATTCG CAAGATGTGG 
+      541 CGTGTTACGG TGAAAACCTG GCCTATTTCC CTAAAGGGTT TATTGAGAAT ATGTTTTTCG 
+      601 TCTCAGCCAA TCCCTGGGTG AGTTTCACCA GTTTTGATTT AAACGTGGCC AATATGGACA 
+      661 ACTTCTTCGC CCCCGTTTTC ACCATGGGCA AATATTATAC GCAAGGCGAC AAGGTGCTGA 
+      721 TGCCGCTGGC GATTCAGGTT CATCATGCCG TCTGTGATGG CTTCCATGTC GGCAGAATGC 
+      781 TTAATGAATT ACAACAGTAC TGCGATGAGT GGCAGGGCGG GGCGTAATTT TTTTAAGGCA 
+      841 GTTATTGGTG CCCTTAAACG CCTGGTGCTA CGCCTGAATA AGTGATAATA AGCGGATGAA 
+      901 TGGCAGAAAT TCGAAAGCAA ATTCGACCCG GTCGTCGGTT CAGGGCAGGG TCGTTAAATA 
+      961 GCCGCTTATG TCTATTGGGC TCGttactta cgacactccg agacagtcag agggtattta 
+     1021 ttgaactaGT CCCCAGGCAT CAAATAAAAC GAAAGGCTCA GTCGAAAGAC TGGGCCTTTC 
+     1081 GTTTTATCTG TTGTTTGTCG GTGAACGCTC TCTACTAGAG TCACACTGGC TCACCTTCGG 
+     1141 GTGGGCCTTT CTGCGTTTAT AGGCTCGATC GGTGTGAAAA GTCAGTATCC AGTCGTGTAG 
+     1201 TTCTTATTAC CTGTCCAGAC CTTTACGCCG CTGGAGACTA GTCACAGCTA ACACCACGTC 
+     1261 GTCCCTATCT GCTGCCCTAG GTCTATGAGT GGTTGCTGGA TAACGAATTC GCGGCCGCTT 
+     1321 CTAGAGTTTA CGGCTAGCTC AGTCCTAGGT ACTATGCTAG CTACTAGAGG GCTCGggaga 
+     1381 cctatcgATC TTTCTAGAAG ATCTCCTACA ATATTCTCAG CTGCCATGGA AAATCGATGT 
+     1441 TCTTCTTTTA TTCTCTCAAG ATTTTCAGGC TGTATATTAA AACTTATATT AAGAACTATG 
+     1501 CTAACCACCT CATCAGGAAC CGTTGTAGGT GGCGTGGGTT TTCTTGGCAA TCGACTCTCA 
+     1561 TGAAAACTAC GAGCTAAATA TTCAATATGT TCCTCTTGAC CAACTTTATT CTGCATTTTT 
+     1621 TTTGAACGAG GTTTAGAGCA AGCTTCAGGA AACTGAGACA GGAATTTTAT TAAAAATTTA 
+     1681 AATTTTGAAG AAAGTTCAGG GTTAATAGCA TCCATTTTTT GCTTTGCAAG TTCCTCAGCA 
+     1741 TTCTTAACAA AAGACGTCTC TTTTGACATG TTTAAAGTTT AAACCTCCTG TGTGAAATTA 
+     1801 TTATCCGCTC ATAATTCCAC ACATTATACG AGCCGGAAGC ATAAAGTGTA AAGCCTGGGG 
+     1861 TGCCTAATGA GTGAGCTAAC TCACATTAAT TGCGTTGCGC TCACTGCCAA TTGCTTTCCA 
+     1921 GTCGGGAAAC CTGTCGTGCC AGCTGCATTA ATGAATCGGC CAACGCGCGG GGAGAGGCGG 
+     1981 TTTGCGTATT GGGCGCTCTT CCGCTTCCTC GCTCACTGAC TCGCTGCGCT CGGTCGTTCG 
+     2041 GCTGCGGCGA GCGGTATCAG CTCACTCAAA GGCGGTAATA CGGTTATCCA CAGAATCAGG 
+     2101 GGATAACGCA GGAAAGAACA TGTGAGCAAA AGGCCAGCAA AAGGCCAGGA ACCGTAAAAA 
+     2161 GGCCGCGTTG CTGGCGTTTT TCCATAGGCT CCGCCCCCCT GACGAGCATC ACAAAAATCG 
+     2221 ACGCTCAAGT CAGAGGTGGC GAAACCCGAC AGGACTATAA AGATACCAGG CGTTTCCCCC 
+     2281 TGGAAGCTCC CTCGTGCGCT CTCCTGTTCC GACCCTGCCG CTTACCGGAT ACCTGTCCGC 
+     2341 CTTTCTCCCT TCGGGAAGCG TGGCGCTTTC TCATAGCTCA CGCTGTAGGT ATCTCAGTTC 
+     2401 GGTGTAGGTC GTTCGCTCCA AGCTGGGCTG TGTGCACGAA CCCCCCGTTC AGCCCGACCG 
+     2461 CTGCGCCTTA TCCGGTAACT ATCGTCTTGA GTCCAACCCG GTAAGACACG ACTTATCGCC 
+     2521 ACTGGCAGCA GCCACTGGTA ACAGGATTAG CAGAGCGAGG TATGTAGGCG GTGCTACAGA 
+     2581 GTTCTTGAAG TGGTGGCCTA ACTACGGCTA CACTAGAAGG ACAGTATTTG GTATCTGCGC 
+     2641 TCTGCTGAAG CCAGTTACCT TCGGAAAAAG AGTTGGTAGC TCTTGATCCG GCAAACAAAC 
+     2701 CACCGCTGGT AGCGGTGGTT TTTTTGTTTG CAAGCAGCAG ATTACGCGCA GAAAAAAAGG 
+     2761 ATCTCAAGAA GATCCTTTGA TCTTTTCTAC GGGGTCTGAC GCTCAGTGGA ACGAAAACTC 
+     2821 ACGTTAAGGG ATTTTGGTCA TGAGATTATC AAAAAGGATC TTCACCTAGA TCCTTTTAAA 
+     2881 TTAAAAATGA AGTTTTAAAT CAATCTAAAG TATATATGAG TAAACTTGGT CTGACAGTTA 
+     2941 CCAATGCTTA ATCAGTGAGG CACCTATCTC AGCGATCTGT CTATTTCGTT CATCCATAGT 
+     3001 TGCCTGACTC CCCGTCGTGT AGATAACTAC GATACGGGAG GGCTTACCAT CTGGCCCCAG 
+     3061 TGCTGCAATG ATACCGCGAG ACCCACGCTC ACCGGCTCCA GATTTATCAG CAATAAACCA 
+     3121 GCCAGCCGGA AGGGCCGAGC GCAGAAGTGG TCCTGCAACT TTATCCGCCT CCATCCAGTC 
+     3181 TATTAATTGT TGCCGGGAAG CTAGAGTAAG TAGTTCGCCA GTTAATAGTT TGCGCAACGT 
+     3241 TGTTGCCATT GCTACAGGCA TCGTGGTGTC ACGCTCGTCG TTTGGTATGG CTTCATTCAG 
+     3301 CTCCGGTTCC CAACGATCAA GGCGAGTTAC ATGATCCCCC ATGTTGTGCA AAAAAGCGGT 
+     3361 TAGCTCCTTC GGTCCTCCGA TCGTTGTCAG AAGTAAGTTG GCCGCAGTGT TATCACTCAT 
+     3421 GGTTATGGCA GCACTGCATA ATTCTCTTAC TGTCATGCCA TCCGTAAGAT GCTTTTCTGT 
+     3481 GACTGGTGAG TACTCAACCA AGTCATTCTG AGAATAGTGT ATGCGGCGAC CGAGTTGCTC 
+     3541 TTGCCCGGCG TCAATACGGG ATAATACCGC GCCACATAGC AGAACTTTAA AAGTGCTCAT 
+     3601 CATTGGAAAA CGTTCTTCGG GGCGAAAACT CTCAAGGATC TTACCGCTGT TGAGATCCAG 
+     3661 TTCGATGTAA CCCACTCGTG CACCCAACTG ATCTTCAGCA TCTTTTACTT TCACCAGCGT 
+     3721 TTCTGGGTGA GCAAAAACAG GAAGGCAAAA TGCCGCAAAA AAGGGAATAA GGGCGACACG 
+     3781 GAAATGTTGA ATACTCATAC TCTTCCTTTT TCAATATTAT TGAAGCATTT ATCAGGGTTA 
+     3841 TTGTCTCATG AGCGGATACA TATTTGAATG TATTTAGAAA AATAAACAAA TAGGGGTTCC 
+     3901 GCGCACATTT CCCCGAAAAG TGCCACCTGA CGTCTAAGAA ACCATTATTA TCATGACATT 
+     3961 AACCTATAAA AATAGGCGTA TCACGAGGCC GCCCCTGCAG CCGAATTATA TTATTTTTGC 
+     4021 CAAATAATTT TTAACAAAAG CTCTGAAGTC TTCTTCATTT AAATTCTTAG ATGATACTTC 
+     4081 ATCTGGAAAA TTGTCCCAAT TAGTAGCATC ACGCTGTGAG TAAGTTCTAA ACCATTTTTT 
+     4141 TATTGTTGTA TTATCTCTAA TCTTACTACT CGATGAGTTT TCGGTATTAT CTCTATTTTT 
+     4201 AACTTGGAGC AGGTTCCATT CATTGTTTTT TTCATCATAG TGAATAAAAT CAACTGCTTT 
+     4261 AACACTTGTG CCTGAACACC ATATCCATCC GGCGTAATAC GACTCACTAT AGGGAGAGCG 
+     4321 GCCGCCAGAT CTTCCGGATG GCTCGAGTTT TTCAGCAAGA T
+//
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BioBrick_assembly_dataset/BBa_E0040_GFP.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,85 @@
+LOCUS       BBa_E0040_GFP           2875 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   BBa_E0040_GFP
+VERSION     BBa_E0040_GFP
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    1..21
+                     /label="suffix"
+     misc_feature    22..93
+                     /label="E. coli his operon terminator"
+     stem_loop       30..64
+                     /label="terminator stem loop"
+     primer_bind     157..176
+                     /label="VR"
+     CDS             261..875
+                     /label="rep(pMB1) (rev)"
+     misc_feature    276
+                     /label="ORI"
+     CDS             1035..1895
+                     /label="ampR (rev)"
+     primer_bind     2018..2037
+                     /label="VF2"
+     misc_feature    2094..2097
+                     /label="end of terminator"
+     stem_loop       2107..2126
+                     /label="terminator stem loop"
+     misc_feature    2136..2157
+                     /label="prefix"
+     CDS             2156..2875
+                     /label="GFP protein"
+     misc_feature    2156..2875
+                     /label="BBa_E0040_GFP"
+ORIGIN
+        1 tactagtagc ggccgctgca gtccggcaaa aaagggcaag gtgtcaccac cctgcccttt
+       61 ttctttaaaa ccgaaaagat tacttcgcgt tatgcaggct tcctcgctca ctgactcgct
+      121 gcgctcggtc gttcggctgc ggcgagcggt atcagctcac tcaaaggcgg taatacggtt
+      181 atccacagaa tcaggggata acgcaggaaa gaacatgtga gcaaaaggcc agcaaaaggc
+      241 caggaaccgt aaaaaggccg cgttgctggc gtttttccac aggctccgcc cccctgacga
+      301 gcatcacaaa aatcgacgct caagtcagag gtggcgaaac ccgacaggac tataaagata
+      361 ccaggcgttt ccccctggaa gctccctcgt gcgctctcct gttccgaccc tgccgcttac
+      421 cggatacctg tccgcctttc tcccttcggg aagcgtggcg ctttctcata gctcacgctg
+      481 taggtatctc agttcggtgt aggtcgttcg ctccaagctg ggctgtgtgc acgaaccccc
+      541 cgttcagccc gaccgctgcg ccttatccgg taactatcgt cttgagtcca acccggtaag
+      601 acacgactta tcgccactgg cagcagccac tggtaacagg attagcagag cgaggtatgt
+      661 aggcggtgct acagagttct tgaagtggtg gcctaactac ggctacacta gaagaacagt
+      721 atttggtatc tgcgctctgc tgaagccagt taccttcgga aaaagagttg gtagctcttg
+      781 atccggcaaa caaaccaccg ctggtagcgg tggttttttt gtttgcaagc agcagattac
+      841 gcgcagaaaa aaaggatctc aagaagatcc tttgatcttt tctacggggt ctgacgctca
+      901 gtggaacgaa aactcacgtt aagggatttt ggtcatgaga ttatcaaaaa ggatcttcac
+      961 ctagatcctt ttaaattaaa aatgaagttt taaatcaatc taaagtatat atgagtaaac
+     1021 ttggtctgac agttaccaat gcttaatcag tgaggcacct atctcagcga tctgtctatt
+     1081 tcgttcatcc atagttgcct gactccccgt cgtgtagata actacgatac gggagggctt
+     1141 accatctggc cccagtgctg caatgatacc gcgagaccca cgctcaccgg ctccagattt
+     1201 atcagcaata aaccagccag ccggaagggc cgagcgcaga agtggtcctg caactttatc
+     1261 cgcctccatc cagtctatta attgttgccg ggaagctaga gtaagtagtt cgccagttaa
+     1321 tagtttgcgc aacgttgttg ccattgctac aggcatcgtg gtgtcacgct cgtcgtttgg
+     1381 tatggcttca ttcagctccg gttcccaacg atcaaggcga gttacatgat cccccatgtt
+     1441 gtgcaaaaaa gcggttagct ccttcggtcc tccgatcgtt gtcagaagta agttggccgc
+     1501 agtgttatca ctcatggtta tggcagcact gcataattct cttactgtca tgccatccgt
+     1561 aagatgcttt tctgtgactg gtgagtactc aaccaagtca ttctgagaat agtgtatgcg
+     1621 gcgaccgagt tgctcttgcc cggcgtcaat acgggataat accgcgccac atagcagaac
+     1681 tttaaaagtg ctcatcattg gaaaacgttc ttcggggcga aaactctcaa ggatcttacc
+     1741 gctgttgaga tccagttcga tataacccac tcgtgcaccc aactgatctt cagcatcttt
+     1801 tactttcacc agcgtttctg ggtgagcaaa aacaggaagg caaaatgccg caaaaaaggg
+     1861 aataagggcg acacggaaat gttgaatact catactcttc ctttttcaat attattgaag
+     1921 catttatcag ggttattgtc tcatgagcgg atacatattt gaatgtattt agaaaaataa
+     1981 acaaataggg gttccgcgca catttccccg aaaagtgcca cctgacgtct aagaaaccat
+     2041 tattatcatg acattaacct ataaaaatag gcgtatcacg aggcagaatt tcagataaaa
+     2101 aaaatcctta gctttcgcta aggatgattt ctggaattcg cggccgcttc tagagatgcg
+     2161 taaaggagaa gaacttttca ctggagttgt cccaattctt gttgaattag atggtgatgt
+     2221 taatgggcac aaattttctg tcagtggaga gggtgaaggt gatgcaacat acggaaaact
+     2281 tacccttaaa tttatttgca ctactggaaa actacctgtt ccatggccaa cacttgtcac
+     2341 tactttcggt tatggtgttc aatgctttgc gagataccca gatcatatga aacagcatga
+     2401 ctttttcaag agtgccatgc ccgaaggtta tgtacaggaa agaactatat ttttcaaaga
+     2461 tgacgggaac tacaagacac gtgctgaagt caagtttgaa ggtgataccc ttgttaatag
+     2521 aatcgagtta aaaggtattg attttaaaga agatggaaac attcttggac acaaattgga
+     2581 atacaactat aactcacaca atgtatacat catggcagac aaacaaaaga atggaatcaa
+     2641 agttaacttc aaaattagac acaacattga agatggaagc gttcaactag cagaccatta
+     2701 tcaacaaaat actccaattg gcgatggccc tgtcctttta ccagacaacc attacctgtc
+     2761 cacacaatct gccctttcga aagatcccaa cgaaaagaga gaccacatgg tccttcttga
+     2821 gtttgtaaca gctgctggga ttacacatgg catggatgaa ctatacaaat aataa
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BioBrick_assembly_dataset/BBa_J23119_prom.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,72 @@
+LOCUS       BBa_J23119_prom         2190 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   BBa_J23119_prom    
+VERSION     BBa_J23119_prom    
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    1..21
+                     /label="suffix"
+     misc_feature    22..93
+                     /label="E. coli his operon terminator"
+     stem_loop       30..64
+                     /label="terminator stem loop"
+     primer_bind     157..176
+                     /label="VR"
+     CDS             261..875
+                     /label="rep(pMB1) (rev)"
+     misc_feature    276
+                     /label="ORI"
+     CDS             1035..1895
+                     /label="ampR (rev)"
+     primer_bind     2018..2037
+                     /label="VF2"
+     misc_feature    2094..2097
+                     /label="end of terminator"
+     stem_loop       2107..2126
+                     /label="terminator stem loop"
+     misc_feature    2136..2157
+                     /label="prefix"
+     misc_feature    2156..2190
+                     /label="BBa_J23119_prom"
+ORIGIN
+        1 tactagtagc ggccgctgca gtccggcaaa aaagggcaag gtgtcaccac cctgcccttt
+       61 ttctttaaaa ccgaaaagat tacttcgcgt tatgcaggct tcctcgctca ctgactcgct
+      121 gcgctcggtc gttcggctgc ggcgagcggt atcagctcac tcaaaggcgg taatacggtt
+      181 atccacagaa tcaggggata acgcaggaaa gaacatgtga gcaaaaggcc agcaaaaggc
+      241 caggaaccgt aaaaaggccg cgttgctggc gtttttccac aggctccgcc cccctgacga
+      301 gcatcacaaa aatcgacgct caagtcagag gtggcgaaac ccgacaggac tataaagata
+      361 ccaggcgttt ccccctggaa gctccctcgt gcgctctcct gttccgaccc tgccgcttac
+      421 cggatacctg tccgcctttc tcccttcggg aagcgtggcg ctttctcata gctcacgctg
+      481 taggtatctc agttcggtgt aggtcgttcg ctccaagctg ggctgtgtgc acgaaccccc
+      541 cgttcagccc gaccgctgcg ccttatccgg taactatcgt cttgagtcca acccggtaag
+      601 acacgactta tcgccactgg cagcagccac tggtaacagg attagcagag cgaggtatgt
+      661 aggcggtgct acagagttct tgaagtggtg gcctaactac ggctacacta gaagaacagt
+      721 atttggtatc tgcgctctgc tgaagccagt taccttcgga aaaagagttg gtagctcttg
+      781 atccggcaaa caaaccaccg ctggtagcgg tggttttttt gtttgcaagc agcagattac
+      841 gcgcagaaaa aaaggatctc aagaagatcc tttgatcttt tctacggggt ctgacgctca
+      901 gtggaacgaa aactcacgtt aagggatttt ggtcatgaga ttatcaaaaa ggatcttcac
+      961 ctagatcctt ttaaattaaa aatgaagttt taaatcaatc taaagtatat atgagtaaac
+     1021 ttggtctgac agttaccaat gcttaatcag tgaggcacct atctcagcga tctgtctatt
+     1081 tcgttcatcc atagttgcct gactccccgt cgtgtagata actacgatac gggagggctt
+     1141 accatctggc cccagtgctg caatgatacc gcgagaccca cgctcaccgg ctccagattt
+     1201 atcagcaata aaccagccag ccggaagggc cgagcgcaga agtggtcctg caactttatc
+     1261 cgcctccatc cagtctatta attgttgccg ggaagctaga gtaagtagtt cgccagttaa
+     1321 tagtttgcgc aacgttgttg ccattgctac aggcatcgtg gtgtcacgct cgtcgtttgg
+     1381 tatggcttca ttcagctccg gttcccaacg atcaaggcga gttacatgat cccccatgtt
+     1441 gtgcaaaaaa gcggttagct ccttcggtcc tccgatcgtt gtcagaagta agttggccgc
+     1501 agtgttatca ctcatggtta tggcagcact gcataattct cttactgtca tgccatccgt
+     1561 aagatgcttt tctgtgactg gtgagtactc aaccaagtca ttctgagaat agtgtatgcg
+     1621 gcgaccgagt tgctcttgcc cggcgtcaat acgggataat accgcgccac atagcagaac
+     1681 tttaaaagtg ctcatcattg gaaaacgttc ttcggggcga aaactctcaa ggatcttacc
+     1741 gctgttgaga tccagttcga tataacccac tcgtgcaccc aactgatctt cagcatcttt
+     1801 tactttcacc agcgtttctg ggtgagcaaa aacaggaagg caaaatgccg caaaaaaggg
+     1861 aataagggcg acacggaaat gttgaatact catactcttc ctttttcaat attattgaag
+     1921 catttatcag ggttattgtc tcatgagcgg atacatattt gaatgtattt agaaaaataa
+     1981 acaaataggg gttccgcgca catttccccg aaaagtgcca cctgacgtct aagaaaccat
+     2041 tattatcatg acattaacct ataaaaatag gcgtatcacg aggcagaatt tcagataaaa
+     2101 aaaatcctta gctttcgcta aggatgattt ctggaattcg cggccgcttc tagagttgac
+     2161 agctagctca gtcctaggta taatgctagc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BioBrick_assembly_dataset/BBa_J23119_prom_flawed.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,72 @@
+LOCUS       BBa_J23119_prom         2190 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   BBa_J23119_prom    
+VERSION     BBa_J23119_prom    
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    1..21
+                     /label="suffix"
+     misc_feature    22..93
+                     /label="E. coli his operon terminator"
+     stem_loop       30..64
+                     /label="terminator stem loop"
+     primer_bind     157..176
+                     /label="VR"
+     CDS             261..875
+                     /label="rep(pMB1) (rev)"
+     misc_feature    276
+                     /label="ORI"
+     CDS             1035..1895
+                     /label="ampR (rev)"
+     primer_bind     2018..2037
+                     /label="VF2"
+     misc_feature    2094..2097
+                     /label="end of terminator"
+     stem_loop       2107..2126
+                     /label="terminator stem loop"
+     misc_feature    2136..2157
+                     /label="prefix"
+     misc_feature    2156..2190
+                     /label="BBa_J23119_prom"
+ORIGIN
+        1 tactagtagc ggccgctgca gtccggcaaa aaagggcaag gtgtcaccac cctgcccttt
+       61 ttctttaaaa ccgaaaagat tacttcgcgt tatgcaggct tcctcgctca ctgactcgct
+      121 gcgctcggtc gttcggctgc ggcgagcggt atcagctcac tcaaaggcgg taatacggtt
+      181 atccacagaa tcaggggata acgcaggaaa gaacatgtga gcaaaaggcc agcaaaaggc
+      241 caggaaccgt aaaaaggccg cgttgctggc gtttttccac aggctccgcc cccctgacga
+      301 gcatcacaaa aatcgacgct caagtcagag gtggcgaaac ccgacaggac tataaagata
+      361 ccaggcgttt ccccctggaa gctccctcgt gcgctctcct gttccgaccc tgccgcttac
+      421 cggatacctg tccgcctttc tcccttcggg aagcgtggcg ctttctcata gctcacgctg
+      481 taggtatctc agttcggtgt aggtcgttcg ctccaagctg ggctgtgtgc acgaaccccc
+      541 cgttcagccc gaccgctgcg ccttatccgg taactatcgt cttgagtcca acccggtaag
+      601 acacgactta tcgccactgg cagcagccac tggtaacagg attagcagag cgaggtatgt
+      661 aggcggtgct acagagttct tgaagtggtg gcctaactac ggctacacta gaagaacagt
+      721 atttggtatc tgcgctctgc tgaagccagt taccttcgga aaaagagttg gtagctcttg
+      781 atccggcaaa caaaccaccg ctggtagcgg tggttttttt gtttgcaagc agcagattac
+      841 gcgcagaaaa aaaggatctc aagaagatcc tttgatcttt tctacggggt ctgacgctca
+      901 gtggaacgaa aactcacgtt aagggatttt ggtcatgaga ttatcaaaaa ggatcttcac
+      961 ctagatcctt ttaaattaaa aatgaagttt taaatcaatc taaagtatat atgagtaaac
+     1021 ttggtctgac agttaccaat gcttaatcag tgaggcacct atctcagcga tctgtctatt
+     1081 tcgttcatcc atagttgcct gactccccgt cgtgtagata actacgatac gggagggctt
+     1141 accatctggc cccagtgctg caatgatacc gcgagaccca cgctcaccgg ctccagattt
+     1201 atcagcaata aaccagccag ccggaagggc cgagcgcaga agtggtcctg caactttatc
+     1261 cgcctccatc cagtctatta attgttgccg ggaagctaga gtaagtagtt cgccagttaa
+     1321 tagtttgcgc aacgttgttg ccattgctac aggcatcgtg gtgtcacgct cgtcgtttgg
+     1381 tatggcttca ttcagctccg gttcccaacg atcaaggcga gttacatgat cccccatgtt
+     1441 gtgcaaaaaa gcggttagct ccttcggtcc tccgatcgtt gtcagaagta agttggccgc
+     1501 agtgttatca ctcatggtta tggcagcact gcataattct cttactgtca tgccatccgt
+     1561 aagatgcttt tctgtgactg gtgagtactc aaccaagtca ttctgagaat agtgtatgcg
+     1621 gcgaccgagt tgctcttgcc cggcgtcaat acgggataat accgcgccac atagcagaac
+     1681 tttaaaagtg ctcatcattg gaaaacgttc ttcggggcga aaactctcaa ggatcttacc
+     1741 gctgttgaga tccagttcga tataacccac tcgtgcaccc aactgatctt cagcatcttt
+     1801 tactttcacc agcgtttctg ggtgagcaaa aacaggaagg caaaatgccg caaaaaaggg
+     1861 aataagggcg acacggaaat gttgaatact catactcttc ctttttcaat attattgaag
+     1921 catttatcag ggttattgtc tcatgagcgg atacatattt gaatgtattt agaaaaataa
+     1981 acaaataggg gttccgcgca catttccccg aaaagtgcca cctgacgtct aagaaaccat
+     2041 tattatcatg acattaacct ataaaaatag gcgtatcacg aggcagaatt tcagataaaa
+     2101 aaaatcctta gctttcgcta aggatgattt ctggatttcg cggccgcttc tagagttgac
+     2161 agctagctca gtcctaggta taatgctagc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BioBrick_assembly_dataset/BBa_J61048_term.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,73 @@
+LOCUS       BBa_J61048_term         2268 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   BBa_J61048_term      
+VERSION     BBa_J61048_term      
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    1..21
+                     /label="suffix"
+     misc_feature    22..93
+                     /label="E. coli his operon terminator"
+     stem_loop       30..64
+                     /label="terminator stem loop"
+     primer_bind     157..176
+                     /label="VR"
+     CDS             261..875
+                     /label="rep(pMB1) (rev)"
+     misc_feature    276
+                     /label="ORI"
+     CDS             1035..1895
+                     /label="ampR (rev)"
+     primer_bind     2018..2037
+                     /label="VF2"
+     misc_feature    2094..2097
+                     /label="end of terminator"
+     stem_loop       2107..2126
+                     /label="terminator stem loop"
+     misc_feature    2136..2157
+                     /label="prefix"
+     misc_feature    2156..2268
+                     /label="BBa_J61048_term"
+ORIGIN
+        1 tactagtagc ggccgctgca gtccggcaaa aaagggcaag gtgtcaccac cctgcccttt
+       61 ttctttaaaa ccgaaaagat tacttcgcgt tatgcaggct tcctcgctca ctgactcgct
+      121 gcgctcggtc gttcggctgc ggcgagcggt atcagctcac tcaaaggcgg taatacggtt
+      181 atccacagaa tcaggggata acgcaggaaa gaacatgtga gcaaaaggcc agcaaaaggc
+      241 caggaaccgt aaaaaggccg cgttgctggc gtttttccac aggctccgcc cccctgacga
+      301 gcatcacaaa aatcgacgct caagtcagag gtggcgaaac ccgacaggac tataaagata
+      361 ccaggcgttt ccccctggaa gctccctcgt gcgctctcct gttccgaccc tgccgcttac
+      421 cggatacctg tccgcctttc tcccttcggg aagcgtggcg ctttctcata gctcacgctg
+      481 taggtatctc agttcggtgt aggtcgttcg ctccaagctg ggctgtgtgc acgaaccccc
+      541 cgttcagccc gaccgctgcg ccttatccgg taactatcgt cttgagtcca acccggtaag
+      601 acacgactta tcgccactgg cagcagccac tggtaacagg attagcagag cgaggtatgt
+      661 aggcggtgct acagagttct tgaagtggtg gcctaactac ggctacacta gaagaacagt
+      721 atttggtatc tgcgctctgc tgaagccagt taccttcgga aaaagagttg gtagctcttg
+      781 atccggcaaa caaaccaccg ctggtagcgg tggttttttt gtttgcaagc agcagattac
+      841 gcgcagaaaa aaaggatctc aagaagatcc tttgatcttt tctacggggt ctgacgctca
+      901 gtggaacgaa aactcacgtt aagggatttt ggtcatgaga ttatcaaaaa ggatcttcac
+      961 ctagatcctt ttaaattaaa aatgaagttt taaatcaatc taaagtatat atgagtaaac
+     1021 ttggtctgac agttaccaat gcttaatcag tgaggcacct atctcagcga tctgtctatt
+     1081 tcgttcatcc atagttgcct gactccccgt cgtgtagata actacgatac gggagggctt
+     1141 accatctggc cccagtgctg caatgatacc gcgagaccca cgctcaccgg ctccagattt
+     1201 atcagcaata aaccagccag ccggaagggc cgagcgcaga agtggtcctg caactttatc
+     1261 cgcctccatc cagtctatta attgttgccg ggaagctaga gtaagtagtt cgccagttaa
+     1321 tagtttgcgc aacgttgttg ccattgctac aggcatcgtg gtgtcacgct cgtcgtttgg
+     1381 tatggcttca ttcagctccg gttcccaacg atcaaggcga gttacatgat cccccatgtt
+     1441 gtgcaaaaaa gcggttagct ccttcggtcc tccgatcgtt gtcagaagta agttggccgc
+     1501 agtgttatca ctcatggtta tggcagcact gcataattct cttactgtca tgccatccgt
+     1561 aagatgcttt tctgtgactg gtgagtactc aaccaagtca ttctgagaat agtgtatgcg
+     1621 gcgaccgagt tgctcttgcc cggcgtcaat acgggataat accgcgccac atagcagaac
+     1681 tttaaaagtg ctcatcattg gaaaacgttc ttcggggcga aaactctcaa ggatcttacc
+     1741 gctgttgaga tccagttcga tataacccac tcgtgcaccc aactgatctt cagcatcttt
+     1801 tactttcacc agcgtttctg ggtgagcaaa aacaggaagg caaaatgccg caaaaaaggg
+     1861 aataagggcg acacggaaat gttgaatact catactcttc ctttttcaat attattgaag
+     1921 catttatcag ggttattgtc tcatgagcgg atacatattt gaatgtattt agaaaaataa
+     1981 acaaataggg gttccgcgca catttccccg aaaagtgcca cctgacgtct aagaaaccat
+     2041 tattatcatg acattaacct ataaaaatag gcgtatcacg aggcagaatt tcagataaaa
+     2101 aaaatcctta gctttcgcta aggatgattt ctggaattcg cggccgcttc tagagccggc
+     2161 ttatcggtca gtttcacctg atttacgtaa aaacccgctt cggcgggttt ttgcttttgg
+     2221 aggggcagaa agatgaatga ctgtccacga cgctataccc aaaagaaa
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BioBrick_assembly_dataset/BBa_K611094_bar.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,74 @@
+LOCUS       BBa_K611094_br          2180 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   BBa_K611094_br     
+VERSION     BBa_K611094_br     
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    1..21
+                     /label="suffix"
+     misc_feature    22..93
+                     /label="E. coli his operon terminator"
+     stem_loop       30..64
+                     /label="terminator stem loop"
+     primer_bind     157..176
+                     /label="VR"
+     CDS             261..875
+                     /label="rep(pMB1) (rev)"
+     misc_feature    276
+                     /label="ORI"
+     CDS             1035..1895
+                     /label="ampR (rev)"
+     primer_bind     2018..2037
+                     /label="VF2"
+     misc_feature    2094..2097
+                     /label="end of terminator"
+     stem_loop       2107..2126
+                     /label="terminator stem loop"
+     misc_feature    2136..2157
+                     /label="prefix"
+     misc_feature    2156..2180
+                     /label="Barcode"
+     misc_feature    2156..2180
+                     /label="BBa_K611094_br"
+ORIGIN
+        1 tactagtagc ggccgctgca gtccggcaaa aaagggcaag gtgtcaccac cctgcccttt
+       61 ttctttaaaa ccgaaaagat tacttcgcgt tatgcaggct tcctcgctca ctgactcgct
+      121 gcgctcggtc gttcggctgc ggcgagcggt atcagctcac tcaaaggcgg taatacggtt
+      181 atccacagaa tcaggggata acgcaggaaa gaacatgtga gcaaaaggcc agcaaaaggc
+      241 caggaaccgt aaaaaggccg cgttgctggc gtttttccac aggctccgcc cccctgacga
+      301 gcatcacaaa aatcgacgct caagtcagag gtggcgaaac ccgacaggac tataaagata
+      361 ccaggcgttt ccccctggaa gctccctcgt gcgctctcct gttccgaccc tgccgcttac
+      421 cggatacctg tccgcctttc tcccttcggg aagcgtggcg ctttctcata gctcacgctg
+      481 taggtatctc agttcggtgt aggtcgttcg ctccaagctg ggctgtgtgc acgaaccccc
+      541 cgttcagccc gaccgctgcg ccttatccgg taactatcgt cttgagtcca acccggtaag
+      601 acacgactta tcgccactgg cagcagccac tggtaacagg attagcagag cgaggtatgt
+      661 aggcggtgct acagagttct tgaagtggtg gcctaactac ggctacacta gaagaacagt
+      721 atttggtatc tgcgctctgc tgaagccagt taccttcgga aaaagagttg gtagctcttg
+      781 atccggcaaa caaaccaccg ctggtagcgg tggttttttt gtttgcaagc agcagattac
+      841 gcgcagaaaa aaaggatctc aagaagatcc tttgatcttt tctacggggt ctgacgctca
+      901 gtggaacgaa aactcacgtt aagggatttt ggtcatgaga ttatcaaaaa ggatcttcac
+      961 ctagatcctt ttaaattaaa aatgaagttt taaatcaatc taaagtatat atgagtaaac
+     1021 ttggtctgac agttaccaat gcttaatcag tgaggcacct atctcagcga tctgtctatt
+     1081 tcgttcatcc atagttgcct gactccccgt cgtgtagata actacgatac gggagggctt
+     1141 accatctggc cccagtgctg caatgatacc gcgagaccca cgctcaccgg ctccagattt
+     1201 atcagcaata aaccagccag ccggaagggc cgagcgcaga agtggtcctg caactttatc
+     1261 cgcctccatc cagtctatta attgttgccg ggaagctaga gtaagtagtt cgccagttaa
+     1321 tagtttgcgc aacgttgttg ccattgctac aggcatcgtg gtgtcacgct cgtcgtttgg
+     1381 tatggcttca ttcagctccg gttcccaacg atcaaggcga gttacatgat cccccatgtt
+     1441 gtgcaaaaaa gcggttagct ccttcggtcc tccgatcgtt gtcagaagta agttggccgc
+     1501 agtgttatca ctcatggtta tggcagcact gcataattct cttactgtca tgccatccgt
+     1561 aagatgcttt tctgtgactg gtgagtactc aaccaagtca ttctgagaat agtgtatgcg
+     1621 gcgaccgagt tgctcttgcc cggcgtcaat acgggataat accgcgccac atagcagaac
+     1681 tttaaaagtg ctcatcattg gaaaacgttc ttcggggcga aaactctcaa ggatcttacc
+     1741 gctgttgaga tccagttcga tataacccac tcgtgcaccc aactgatctt cagcatcttt
+     1801 tactttcacc agcgtttctg ggtgagcaaa aacaggaagg caaaatgccg caaaaaaggg
+     1861 aataagggcg acacggaaat gttgaatact catactcttc ctttttcaat attattgaag
+     1921 catttatcag ggttattgtc tcatgagcgg atacatattt gaatgtattt agaaaaataa
+     1981 acaaataggg gttccgcgca catttccccg aaaagtgcca cctgacgtct aagaaaccat
+     2041 tattatcatg acattaacct ataaaaatag gcgtatcacg aggcagaatt tcagataaaa
+     2101 aaaatcctta gctttcgcta aggatgattt ctggaattcg cggccgcttc tagagcgctg
+     2161 atagtgctag tgtagatcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/BioBrick_assembly_dataset/hierarchical_biobrick.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,4 @@
+construct,parts,
+C1_prom_barcode,BBa_K611094_bar,BBa_J23119_prom
+C2_gfp_term,BBa_E0040_GFP,BBa_J61048_term
+C3_final,C1_prom_barcode,C2_gfp_term
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/Gibson_assembly_dataset/gibson_assembly.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,6 @@
+construct, parts,,,,
+construct_1,Frag_1,Frag_2,Frag_3,Frag_4,Frag_5
+construct_2,Frag_1,Frag_2,Frag_3,Frag_4b,Frag_5
+construct_3,Frag_1,Frag_2,Frag_3,Frag_4c,Frag_5b
+construct_4,Frag_1,Frag_2,Frag_3,Frag_4,
+construct_5,Frag_1,Frag_2,Frag_3,Frag_4,Frag_4b
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/Gibson_assembly_dataset/gibson_sequences.fa	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,347 @@
+>expected_sequence
+CTCCACCTGCGTCTATCGTACAGTGCTAAAATGGCAGCAGATAGTGAAACTTCCGCTAAG
+CTAGCCCCTCAGGGTACACTGCACCGAGGCGTGCTGTCAATACTTGATTAAGTCGGGTTG
+TCGGGGACCTGCCGTCACGCTTCCGAGTGTATATCCGGATTTAGTTGACGTCATACAGAG
+GCACTAAGAAGAATAAACGCTTACCTCCAGCAATCGTGTAGTGTCAGGTGTACGTTCTCC
+CTTGCGCCGTTCGGCAAGCGTCCGGTGTCGGGCTGCAAGGAATAAATCTTTATGGACCAG
+AGGGGCTTGTTTCCTCATATGGGTGCGTGCACTTATACGATTCAAAGGTGGATATGGCCG
+CATAACACGTAGCCAGGCTATAGTCCCGCGGCCTAATTCCTTCGAGTGCGGGTGCCTGTT
+TTTGTTTTTCCTTTACGACACGAACCGCTCTAACCTGCTCTATTTCGCCACGTTCCAGTG
+AACCTCTTAGCCTACCGCCCACGTACGGTGGGACGCGTCGAGCAGTTAAGGTACTGTGGA
+GAAATCGTTCAATATTAGAAAACAGGCGGTGTACGAATTACTGTGTCCCGGTGTTGCCCG
+TTTAACGGCTGCCGTGGTCATACCGTGAGGCACCACGAGGGGATGCTACGCAACATGCGA
+GGTGTAATCAGCAGGGAAGATCCCGGGGATCGAAAGCGGTCCGCGATTTGCGACCGATAT
+GCATAAGGTGTCATTTATATTACACCTACGACACTGGTACCGGCTCACAGCCAAATGCAC
+AGTCTCAAGATAGAATTCGCAAAAATTAGGCTTATCGGGCGCTTACTCTTTGTTACACTT
+CTGGTCTGTGAGTGACGCCCTGTGTCCCATCACTGCATGTGAGGATGCGTGTACTGCACC
+TGTGAATTACAGACGTTTCCCTACCAGGGCGCTACGTTATAATGTTCGGTTGCAACCCTC
+TATAGGGTGATCTCGACATACCACTATGGTTTGCGCGTCTCGGGTGCTTTTGGCGAGGGC
+CAGGTACGGCGGTGAGACAGCGTATTTTGCGAATAGGGTATTCGGACGCACGGTGTATAG
+CTCTTGGAAAACGACTCTTCGACGGGCGTGTAGAAGTAGCCAAGCAGTTCGGTTGTTATC
+ACTAAATGCGGACCATGTGCAGCCGTTTAGGAGAGGAGTCTGCAATGGATCAGCTGGTCA
+GATTGTACCACTCGGTTGAGCCTAAGGCACTTCAGGTGCTCGGATTGTAATGAACCCTCA
+GGTTACGCCGTTGCGCTGAGATCCCACAAGCCATAAGCAATGAGAATCGAGCAGCTATCG
+AATTACGCAGCACTTGCTGATGAACTGGGTGCACCTAAAGCGCCCGATAAAACGGAGGGA
+GTGAGGTAACTACTACATTGCGAGTAGTGCGAGGGGCCTCCGAGACTACATTAGAGCAGC
+CATGCCGAATACGACAAAATCTATAGCCTTGCGAACGTAGGGGACTGATTTATGGACAAC
+AGGACCGAAACAAGTTGGAGCCACAACGGAGCTATGGACGTTTTCACTATTGATGGGTGG
+CTTGCGTCCGCATCCCAGGTTTCTCTGGTTAATTTTCATGACGATTCTTTGTGGTACGAT
+CCAGGCATAAGATAGGGCACCTAACCCGATACTGTGAACTTATATGACGGCTGAACATGC
+CCTAATAGTCTGCCAAAAGGGAAACCTATAACGGCTCTAAACGGGCCCCGGGTACGTAAC
+AGCAATGTTCCTGTCCACCAAGGCGTTTTTAGTAACCGCCGATCGATCTCGATCGAATTC
+CGTTTTACGCCCCAGATCGCAGCTCCCTTGACAGTGTCAGTTGAATCCCCATTCTAGGTT
+TCCTGATAAAACTAAGTACGGGGACGCATCAGTCGAAAGCAATCACAGATAATAGATATC
+TTGAGCAGAAAGACGTCTTCACGAATCAGGAGCGAGTGTCCCCTTTGAAAGTGCGGGCAA
+CAATAGGTGTGAGGTTTCACGGTTGCTTGATCAGTAGCTGTTCACTCTCTCGCAGGCCTA
+CATAGTGAGGTGGTGAGATTGTTCAGGTCTGTCTCCTGCGCGGTTGTCGAGCCCCGTCGG
+GCACGCTAACAAGGACAGGAATTCGGGTCGTCAAATAACAATTTACGTCATCGCATCCCT
+CAAGGGTAAGGCGTGATCTCCATCTCGGTTCCCAATTGGTCATTGTGATAGCCACACTGC
+AGTTACCGAAGGCGATTTTATACTACCCTGATAAGTGCTCGCAGCCCCTCCTCCCTAATA
+ATGTAACGACGAGCATTAACCCAGGAGTATTTCTCACGTTGCTCGTGCCCAGCCAAGGCG
+ATCAACGCAGACCGGATAGCGTTAGCTAGCCCACGGGTAAAAGCGATTGTTGTACTCTTT
+CATATGAATACAGCACTCGCGAATGCAAGCCTACGTCGGCTCGATTCTCTTCCTCACCAC
+ACTGGAGGCGATGATCTAGCCCGTCTTTCACCCCGTACCTTTATACTCGGCCGCGTATTT
+CTCCACCGGGAGCTCTGCCTACCAAAGCGTCGTACGCCCAGGAAGCCGTTTCCTTTATCC
+TCCCTCATGTCTCAACGCGCGAGCATCGGAGAGTACGCGAAATCGACTGTCTGGCCAACA
+CTGGACAGACGCGCGAGACGCTGATAAACCCCCATTTTCGTGGGGTTAGTAAATCGGTGG
+CTTCAAACGGTTCGATCGCTCGCACGAGCATTAGTCAGGAGTATGATTGCGCATCATCTC
+TACTCCGTACTAGGTTCTGTAGCTCAGGATCTCCGGGGGGATCAAGCTTTTATGTCCCGC
+GGGATTAGAAGATATCCATCCATATGTTTACTTTGATGCGGGTCCGAGCTCTCTATGATG
+CTGCTTTGACAAAATGTGGAAAGCCTCAGCGACCGCTCTGGGGTCAAAGCTCTACGACAC
+GTTGATGCTAAACAAGTTGGACTACTAAGCAAATGAAGCGGAAGAGATACTGAGCGCTCT
+CTCTATGACTTTCGCTATATGGCGACGTGCGAAAAACGCGATTTGGCCGAAATCTCAAAT
+AATAATGCAATGTGTTGGCTAAGCTCGGGCAAACTCAGGATGTGACCTAGTACCCTCTGC
+CCCGTGAGTACCCATACCCAATCAAGCCAGCCCAATTCGCGATAGGTACAGATAAGCCTT
+ACTCGTCCCGATCCTTGACTAAAACACTCATCCTCGATAGTACGTGCCTTGTAGAGTCCG
+ACGGCCATAGGTAAACGACCAGTTAGTGTCGTAGGGTCCTCCACTTTAGCTACGATTGCA
+ACTCCCTTACCTTCGTGCCGGCGCGCTCCTCTTGCTACCATCACGCTTCAAATCGGGTGG
+AAGACCAACTGATGAATGAGGGTGCAGACCCCAGTGGAGCATAATACGATGCGCCCACGA
+TACTCTAGAGCCACGCGTCGACGTTCGTAAGATGTCCCGGGCCCGTGGGTGGCCACATCG
+GCCGCCCATCCTTGTGTCTTCCGATAAGTACTCCCTTTCAAGGACTCTCCGATACCGGCT
+TAGAACACGAACGGACAACGCTTTCAGCGCTGAGAAATGACGGCTGCTTCAACCAGAACG
+ATACAGCCTTCTTTGCTAGATAGCCTCTAGTGTCAGCCACCAAGTCCGCCACCTAATCCT
+TCGCCGAGGGTCAAAGCTTCTGACCATCCAATTGTTAGGCACTCTTGGAACCTTGCAAGT
+ACCTGATCATGCAGAAAATGGACTTGCCCGGAGCATATTCATTATAAGTACCATTCACGG
+CAGGTTATAGTATGCGTTGACGCGGGGTGATACGGTAATGCAAGTAACCATCGGGCCGCG
+GTATGCACATAGAAGGGTGTTTGACTTGGTTTCTTACAGTGCAACTGCATATGTGGACCG
+CCATTCCAAGTGAAAGGATACGAAGGGAGGTTTCGGACTGCTATCCAGAGCATGGAAAGC
+CTTCAAGGTGGTGCGCACTGGAATAGTGACTCGGGGATTGTATGTCGAGCCGCGTCCAGT
+CTTTCCTATACTTATGCGAGCAAATAGACCGAGTGGAACTTGATTGCATCAGCCGAATCA
+CGATGAAAACTCAGCTTACAATTCGTAAGCACTTCAAATATATGCCCGGAAAATCGCCGT
+CCAGTGACTTGTAATAGCTCCAGGGTCAGTAGCGCTGCCCTGGCCGAACCAGGTGACGGT
+TACGTGGACCTCACAGTATCAATGTTGCAGTGCGCCACCAGATTAAGCTGGCCGTGTCAT
+GGTGAACAACCGTGATAAAAGAACGGGAGTATGAGAGTGCCACCCAAGAGTGGTACTCCA
+GGATTCGGAAAGGGGAGGGGGCTTTTCCTGCTTAACAACCTTCCTCGGCACGGTCTAAGC
+GTCTCACTCGTCCTAAACTCTACCATCATGCAGCTAGGCGAAAGTATAACTTTAGGGTCT
+ATCAGGATGAGCTATCTGTACCACGGTGATGAGATAAGTAGGGGGTGCGCTAGGGTCGTT
+CGTGTTTTCATCGTCTATAGTACCTATTTCTCGTCTTCCATTAGCGCATACGGCCATCTC
+GCGGCGGCTACGTCAGCCAGCGTCAACCCCAAGTCACTAATTTCCGTTATTATAGGTGTA
+GCTCATAACTTCTTCTGCCGACCAAGCCAAAAGCTTTGCGGCAGCTGCAAGGCCACGTTA
+GGCTCTCGGACGGCAGATATTTATTAATAACACCACTGGGTTCCAGCTCTTAACGCACTT
+CCCTTCACTGGATCACCTGTACGCCCATAAGCTAAGCCTGAAGCCACGGCCTCAATCGTG
+GACATTACTCTTAGCAAATCCACATTACCATGTCACCAATCCCCGAACCCCGCGCCGACC
+TAAGGCGGGGTACCTCGTGCACGGCAGCATCGAGGGAAATATATTACAAAAGACGCGGCG
+ATCCAACGGTTGATAAAAACAGTTCCGTGGAAGGCGGACGTGTGCTTAGCGCATGCTTCT
+CACCGAGTGACAGCACCGATTCCATCTCGCTAGCACGCCGATGAGCCTCGCTGTGGGACT
+ATGGTCCAGCCTATGCTTAACTAGGCAGAACAGAGAGTATGGTGGTCCTCGGTAAGGTCG
+ATTTGGTGGCACTCGCAAGATACGCGGGTTATTAGTAGAGCGCAGTCAGGGCCCATCGCC
+AGCATTTGCATGCTCGCCGTACGCTATCCTTGTACTACGGTTCCTCAGTGGCTATAAAGG
+AATGTCACAACTCCATTAGCCCCTTTTGTTCAGCGCTTAGTCATGGTGGGACTGACTCAC
+CGAGACTACATACGGATTGTGCCCGCAGAGACATGCCTTTCATGCTGGGGTTTTGTAAGC
+AGCTCCACGGGGTAGTGTCACCATGCCTTCGACCTATGCTTATGAAACCCGAGGTAATGC
+GGCAGGATCCCGTGGATCCTACGCTTAGCCTGTTTAAGCCATCGTTCTCCTCGGCCCCCA
+GCCAGCGCGTATTCCGCGCATTCCTCCGAGTGCGTATCGCGCAAACCACAAGATACCTCT
+CAACGACTAGCGGTGAACCACCAAGCTTGACATACGTGCCCCTTCGGAAACGTTATTAGT
+GGTCCTGAGTGGTACGTCCCGAGTATACGGGGCAGCGATAGTAACGCTACAAATAGCTAG
+GCGAGGTTGCGATACCTGAATGAATATCCAACAGTGGCAACGAGACGCTTAGAAAGGGAA
+ACTACATACCAGTTCAATCCGGGATGACTTCAAAAGGGTATGTTTGTTTTGAAGCGAAGC
+TTTGGTTGTCATTCAGTTCCTAGAGTTTACGGCGCTGATATGGCTCTAGGAGTCCAGTGA
+ATTCGTCAGCATAAGCCCCACATCGTAGGAAATTGCCCGGTCGTCGGTCTAGCAAATGCT
+CGGTAAACTGGGAGTGTACTAACACCATGTCGTGGTAACCCGGTGGACCGGCTACTAGAG
+ACATATTTATTCATGCTCAGTTGAACCTGTTTCGAGGGGGCCGAGTTAACATAAAGTGAT
+TAGTCACAGCGCATTAAGATAGAACAGGGATATAGCTCGTTGCATCCATAAATTGCCCAC
+CGTAGGGAGAACGCCGTTGGAAAATGAGAGTTAGGCGATGAGCGGTTGTCGCCCGCACAG
+ACAAAGGATGCCTTTATAAATAGTAGCGGCCTTGTCTGCACCAGACGTTTGTGGGTCGAC
+GTGCTATTCTAGCCAAAAGCAAAATGTATCATACTACAGGCAATAGGCCCTATGCTGACC
+AAACTTGGGGACCCTTGCGCCTTCTCTCTTACGCATAACATGCATAGGTACCTCTACTCA
+TCAGGCAGGGCGGCGTGAGGTCACTATGGCTCAAGATGTGTACGACTAAAGAAAGGTTTA
+TGCTCCTTCCCCAAGGACGCATTTGGGACTGCTACTTGCCCCTAGCGAATTCACTAGGAT
+TTTTGTAGAACCATGAGCGCCCTATCCGATAGCACAGAGACAATGCTACAAGCAACTGTG
+CATGCGCTCGATCGCCGTGCATTAATACGTATTATAGCGTATCGTGTACGCTAATATCTT
+AGTGCACCGCACGCTGGTTGGATACAATTCCGTGAAATAATTCCTGCTTACACAGGGGCT
+TTCTGGCGCATGGCTGTGTCTGGATGTTTGTGATAAGAGGCTCCATGAACCCGGCGGGAA
+ATGAGGGGAAACCCCGGGGAGCAACGACACTAAGCCTGGCAGTTGTTCAGATAGGACGCT
+TTTGTCAGTGGGCGGTTTTGCATCCACTAACTATCATAAACGACACAACGTCGAATGATC
+ATCGGCGGTTTGCATGTAGAGACAGCTCCTGCAACACCATACCGGCTCGTGGAATTACGC
+TGTGCGCCGGCCCTCATTCGATTGTGTCCAGCGTCGGCGCGAATGATGATTGAGATGTGC
+TTCGGCTCAGAGCGTGCACAGGTAGTTCTCCCCCCTTACCTAGCTGATCCAGCAATTCCA
+CGCTGGCCCGCGCGTCCTTGGGTAACACTGGATCTGTACCCAAATACACCGTCGTGATTG
+TTAACTACCGTATGGCGGTTACGATCGAGTGACACTATTATTAGACCGCTACTCCAAGTC
+CCAACTTTTCATCGCCATACAGAAGAGAACGAGAAAGTCGAAGAGTTATAGCGTGTACAC
+TTCTGATTAGCTAACGAATCGATGCGTACAGCATACTCGAGCAACTTTATGGGTCGTCTG
+TCTCCTTGTACCCCGCTTGACGAGGATGTGTTTGTAGGCGGCTTGGATATCGGCAGTGTA
+TCCGCATGGTCAAACACTTTAGCCCGACCGGTGCTCAAGGTCGAAATCCTAATATAGATT
+GGGATAGGACCCGTCCATTACTAGGCGACATTCGCAGTCACGAGCCCGCACGGGGTGCCT
+CAACACGGTGACACTCAATTCGCCGGCACTGAGTACGACGATCGTGATTGCCATACCGTC
+ATGTTTTGTGTTACCCCTGATAAGAAGCGCAGATATGGCACGGGGGCAGAGGGCGGAGTA
+GACCCATGCAAAACTCTAGCCTCTGGGCAGCATGATCGACGTAGAACGCCGTTGTGACTC
+ACTAGTTTCAGTTATGATGTTCAGCCAAGAATCCTCCATTTTGACGTGAACCTTCTCCCT
+TTACACCTTGAAGCTGCAATATTAAGTCGACCCTTTAAGTTGCCTTGTCTTGGTCTAGAG
+CCCGCAGCTCACCGATAAAATGAGCAGTCAATTTTAGCGGCGGTTGTCCAGGTTACATGC
+ACTTTGGGCTGGAACCGCGTTACGTTTGGAGTACTTAGAAGTGTCGTAGGCATAGGAGAG
+CCGAAACTTGATATTGGGTCTAGTTAGTGCTCTACCCCGCTTCGGATCCGTAATAGTGAT
+GTTGCATGAGACGCTTGCCTCAAGGCGACATACGGTGGCGGTTGCTGGAAATGACGCCCC
+ACCCCGTGATAATTTGGGGACGAGCCGCACGATAACTTCTGCCAGCGACCGCCCCTCCCA
+CGTCCGATGGTGATTCCGAA
+>Frag_1
+CTCCACCTGCGTCTATCGTACAGTGCTAAAATGGCAGCAGATAGTGAAACTTCCGCTAAG
+CTAGCCCCTCAGGGTACACTGCACCGAGGCGTGCTGTCAATACTTGATTAAGTCGGGTTG
+TCGGGGACCTGCCGTCACGCTTCCGAGTGTATATCCGGATTTAGTTGACGTCATACAGAG
+GCACTAAGAAGAATAAACGCTTACCTCCAGCAATCGTGTAGTGTCAGGTGTACGTTCTCC
+CTTGCGCCGTTCGGCAAGCGTCCGGTGTCGGGCTGCAAGGAATAAATCTTTATGGACCAG
+AGGGGCTTGTTTCCTCATATGGGTGCGTGCACTTATACGATTCAAAGGTGGATATGGCCG
+CATAACACGTAGCCAGGCTATAGTCCCGCGGCCTAATTCCTTCGAGTGCGGGTGCCTGTT
+TTTGTTTTTCCTTTACGACACGAACCGCTCTAACCTGCTCTATTTCGCCACGTTCCAGTG
+AACCTCTTAGCCTACCGCCCACGTACGGTGGGACGCGTCGAGCAGTTAAGGTACTGTGGA
+GAAATCGTTCAATATTAGAAAACAGGCGGTGTACGAATTACTGTGTCCCGGTGTTGCCCG
+TTTAACGGCTGCCGTGGTCATACCGTGAGGCACCACGAGGGGATGCTACGCAACATGCGA
+GGTGTAATCAGCAGGGAAGATCCCGGGGATCGAAAGCGGTCCGCGATTTGCGACCGATAT
+GCATAAGGTGTCATTTATATTACACCTACGACACTGGTACCGGCTCACAGCCAAATGCAC
+AGTCTCAAGATAGAATTCGCAAAAATTAGGCTTATCGGGCGCTTACTCTTTGTTACACTT
+CTGGTCTGTGAGTGACGCCCTGTGTCCCATCACTGCATGTGAGGATGCGTGTACTGCACC
+TGTGAATTACAGACGTTTCCCTACCAGGGCGCTACGTTATAATGTTCGGTTGCAACCCTC
+TATAGGGTGATCTCGACATACCACTATGGTTTGCGCGTCTCGGGTGCTTTTGGCGAGGGC
+CAGGTACGGCGGTGAGACAGCGTATTTTGCGAATAGGGTATTCGGACGCACGGTGTATAG
+CTCTTGGAAAACGACTCTTCGACGGGCGTGTAGAAGTAGCCAAGCAGTTCGGTTGTTATC
+ACTAAATGCGGACCATGTGCAGCCGTTTAGGAGAGGAGTCTGCAATGGATCAGCTGGTCA
+GATTGTACCACTCGGTTGAGCCTAAGGCACTTCAGGTGCTCGGATTGTAATGAACCCTCA
+GGTTACGCCGTTGCGCTGAGATCCCACAAGCCATAAGCAATGAGAATCGAGCAGCTATCG
+AATTACGCAGCACTTGCTGATGAACTGGGTGCACCTAAAGCGCCCGATAAAACGGAGGGA
+GTGAGGTAACTACTACATTGCGAGTAGTGCGAGGGGCCTCCGAGACTACATTAGAGCAGC
+CATGCCGAATACGACAAAATCTATAGCCTTGCGAACGTAGGGGACTGATTTATGGACAAC
+AGGACCGAAACAAGTTGGAGCCACAACGGAGCTATGGACGTTTTCACTATTGATGGGTGG
+CTTGCGTCCGCATCCCAGGTTTCTCTGGTTAATTTTCATGACGATTCTTTGTGGTACGAT
+CCAGGCATAAGATAGGGCACCTAACCCGATACTGTGAACTTATATGACGGCTGAACATGC
+CCTAATAGTCTGCCAAAAGGGAAACCTATAACGGCTCTAAACGGGCCCCGGGTACGTAAC
+AGCAATGTTCCTGTCCACCAAGGCGTTTTTAGTAACCGCCGATCGATCTCGATCGAATTC
+CGTTTTACGC
+>Frag_2
+GATCGAATTCCGTTTTACGCCCCAGATCGCAGCTCCCTTGACAGTGTCAGTTGAATCCCC
+ATTCTAGGTTTCCTGATAAAACTAAGTACGGGGACGCATCAGTCGAAAGCAATCACAGAT
+AATAGATATCTTGAGCAGAAAGACGTCTTCACGAATCAGGAGCGAGTGTCCCCTTTGAAA
+GTGCGGGCAACAATAGGTGTGAGGTTTCACGGTTGCTTGATCAGTAGCTGTTCACTCTCT
+CGCAGGCCTACATAGTGAGGTGGTGAGATTGTTCAGGTCTGTCTCCTGCGCGGTTGTCGA
+GCCCCGTCGGGCACGCTAACAAGGACAGGAATTCGGGTCGTCAAATAACAATTTACGTCA
+TCGCATCCCTCAAGGGTAAGGCGTGATCTCCATCTCGGTTCCCAATTGGTCATTGTGATA
+GCCACACTGCAGTTACCGAAGGCGATTTTATACTACCCTGATAAGTGCTCGCAGCCCCTC
+CTCCCTAATAATGTAACGACGAGCATTAACCCAGGAGTATTTCTCACGTTGCTCGTGCCC
+AGCCAAGGCGATCAACGCAGACCGGATAGCGTTAGCTAGCCCACGGGTAAAAGCGATTGT
+TGTACTCTTTCATATGAATACAGCACTCGCGAATGCAAGCCTACGTCGGCTCGATTCTCT
+TCCTCACCACACTGGAGGCGATGATCTAGCCCGTCTTTCACCCCGTACCTTTATACTCGG
+CCGCGTATTTCTCCACCGGGAGCTCTGCCTACCAAAGCGTCGTACGCCCAGGAAGCCGTT
+TCCTTTATCCTCCCTCATGTCTCAACGCGCGAGCATCGGAGAGTACGCGAAATCGACTGT
+CTGGCCAACACTGGACAGACGCGCGAGACGCTGATAAACCCCCATTTTCGTGGGGTTAGT
+AAATCGGTGGCTTCAAACGGTTCGATCGCTCGCACGAGCATTAGTCAGGAGTATGATTGC
+GCATCATCTCTACTCCGTACTAGGTTCTGTAGCTCAGGATCTCCGGGGGGATCAAGCTTT
+TATGTCCCGCGGGATTAGAAGATATCCATCCATATGTTTACTTTGATGCGGGTCCGAGCT
+CTCTATGATGCTGCTTTGACAAAATGTGGAAAGCCTCAGCGACCGCTCTGGGGTCAAAGC
+TCTACGACACGTTGATGCTAAACAAGTTGGACTACTAAGCAAATGAAGCGGAAGAGATAC
+TGAGCGCTCTCTCTATGACTTTCGCTATATGGCGACGTGCGAAAAACGCGATTTGGCCGA
+AATCTCAAATAATAATGCAATGTGTTGGCTAAGCTCGGGCAAACTCAGGATGTGACCTAG
+TACCCTCTGCCCCGTGAGTACCCATACCCAATCAAGCCAGCCCAATTCGCGATAGGTACA
+GATAAGCCTTACTCGTCCCGATCCTTGACTAAAACACTCATCCTCGATAGTACGTGCCTT
+GTAGAGTCCGACGGCCATAGGTAAACGACCAGTTAGTGTCGTAGGGTCCTCCACTTTAGC
+TACGATTGCAACTCCCTTACCTTCGTGCCGGCGCGCTCCTCTTGCTACCATCACGCTTCA
+AATCGGGTGGAAGACCAACTGATGAATGAGGGTGCAGACCCCAGTGGAGCATAATACGAT
+GCGCCCACGATACTCTAGAGCCACGCGTCGACGTTCGTAAGATGTCCCGGGCCCGTGGGT
+GGCCACATCGGCCGCCCATCCTTGTGTCTTCCGATAAGTACTCCCTTTCAAGGACTCTCC
+GATACCGGCTTAGAACACGAACGGACAACGCTTTCAGCGCTGAGAAATGACGGCTGCTTC
+AACCAGAACGATACAGCCTT
+>Frag_3
+AACCAGAACGATACAGCCTTCTTTGCTAGATAGCCTCTAGTGTCAGCCACCAAGTCCGCC
+ACCTAATCCTTCGCCGAGGGTCAAAGCTTCTGACCATCCAATTGTTAGGCACTCTTGGAA
+CCTTGCAAGTACCTGATCATGCAGAAAATGGACTTGCCCGGAGCATATTCATTATAAGTA
+CCATTCACGGCAGGTTATAGTATGCGTTGACGCGGGGTGATACGGTAATGCAAGTAACCA
+TCGGGCCGCGGTATGCACATAGAAGGGTGTTTGACTTGGTTTCTTACAGTGCAACTGCAT
+ATGTGGACCGCCATTCCAAGTGAAAGGATACGAAGGGAGGTTTCGGACTGCTATCCAGAG
+CATGGAAAGCCTTCAAGGTGGTGCGCACTGGAATAGTGACTCGGGGATTGTATGTCGAGC
+CGCGTCCAGTCTTTCCTATACTTATGCGAGCAAATAGACCGAGTGGAACTTGATTGCATC
+AGCCGAATCACGATGAAAACTCAGCTTACAATTCGTAAGCACTTCAAATATATGCCCGGA
+AAATCGCCGTCCAGTGACTTGTAATAGCTCCAGGGTCAGTAGCGCTGCCCTGGCCGAACC
+AGGTGACGGTTACGTGGACCTCACAGTATCAATGTTGCAGTGCGCCACCAGATTAAGCTG
+GCCGTGTCATGGTGAACAACCGTGATAAAAGAACGGGAGTATGAGAGTGCCACCCAAGAG
+TGGTACTCCAGGATTCGGAAAGGGGAGGGGGCTTTTCCTGCTTAACAACCTTCCTCGGCA
+CGGTCTAAGCGTCTCACTCGTCCTAAACTCTACCATCATGCAGCTAGGCGAAAGTATAAC
+TTTAGGGTCTATCAGGATGAGCTATCTGTACCACGGTGATGAGATAAGTAGGGGGTGCGC
+TAGGGTCGTTCGTGTTTTCATCGTCTATAGTACCTATTTCTCGTCTTCCATTAGCGCATA
+CGGCCATCTCGCGGCGGCTACGTCAGCCAGCGTCAACCCCAAGTCACTAATTTCCGTTAT
+TATAGGTGTAGCTCATAACTTCTTCTGCCGACCAAGCCAAAAGCTTTGCGGCAGCTGCAA
+GGCCACGTTAGGCTCTCGGACGGCAGATATTTATTAATAACACCACTGGGTTCCAGCTCT
+TAACGCACTTCCCTTCACTGGATCACCTGTACGCCCATAAGCTAAGCCTGAAGCCACGGC
+CTCAATCGTGGACATTACTCTTAGCAAATCCACATTACCATGTCACCAATCCCCGAACCC
+CGCGCCGACCTAAGGCGGGGTACCTCGTGCACGGCAGCATCGAGGGAAATATATTACAAA
+AGACGCGGCGATCCAACGGTTGATAAAAACAGTTCCGTGGAAGGCGGACGTGTGCTTAGC
+GCATGCTTCTCACCGAGTGACAGCACCGATTCCATCTCGCTAGCACGCCGATGAGCCTCG
+CTGTGGGACTATGGTCCAGCCTATGCTTAACTAGGCAGAACAGAGAGTATGGTGGTCCTC
+GGTAAGGTCGATTTGGTGGCACTCGCAAGATACGCGGGTTATTAGTAGAGCGCAGTCAGG
+GCCCATCGCCAGCATTTGCATGCTCGCCGTACGCTATCCTTGTACTACGGTTCCTCAGTG
+GCTATAAAGGAATGTCACAACTCCATTAGCCCCTTTTGTTCAGCGCTTAGTCATGGTGGG
+ACTGACTCACCGAGACTACATACGGATTGTGCCCGCAGAGACATGCCTTTCATGCTGGGG
+TTTTGTAAGCAGCTCCACGGGGTAGTGTCACCATGCCTTCGACCTATGCTTATGAAACCC
+GAGGTAATGCGGCAGGATC
+>Frag_4
+AGGTAATGCGGCAGGATCCCGTGGATCCTACGCTTAGCCTGTTTAAGCCATCGTTCTCCT
+CGGCCCCCAGCCAGCGCGTATTCCGCGCATTCCTCCGAGTGCGTATCGCGCAAACCACAA
+GATACCTCTCAACGACTAGCGGTGAACCACCAAGCTTGACATACGTGCCCCTTCGGAAAC
+GTTATTAGTGGTCCTGAGTGGTACGTCCCGAGTATACGGGGCAGCGATAGTAACGCTACA
+AATAGCTAGGCGAGGTTGCGATACCTGAATGAATATCCAACAGTGGCAACGAGACGCTTA
+GAAAGGGAAACTACATACCAGTTCAATCCGGGATGACTTCAAAAGGGTATGTTTGTTTTG
+AAGCGAAGCTTTGGTTGTCATTCAGTTCCTAGAGTTTACGGCGCTGATATGGCTCTAGGA
+GTCCAGTGAATTCGTCAGCATAAGCCCCACATCGTAGGAAATTGCCCGGTCGTCGGTCTA
+GCAAATGCTCGGTAAACTGGGAGTGTACTAACACCATGTCGTGGTAACCCGGTGGACCGG
+CTACTAGAGACATATTTATTCATGCTCAGTTGAACCTGTTTCGAGGGGGCCGAGTTAACA
+TAAAGTGATTAGTCACAGCGCATTAAGATAGAACAGGGATATAGCTCGTTGCATCCATAA
+ATTGCCCACCGTAGGGAGAACGCCGTTGGAAAATGAGAGTTAGGCGATGAGCGGTTGTCG
+CCCGCACAGACAAAGGATGCCTTTATAAATAGTAGCGGCCTTGTCTGCACCAGACGTTTG
+TGGGTCGACGTGCTATTCTAGCCAAAAGCAAAATGTATCATACTACAGGCAATAGGCCCT
+ATGCTGACCAAACTTGGGGACCCTTGCGCCTTCTCTCTTACGCATAACATGCATAGGTAC
+CTCTACTCATCAGGCAGGGCGGCGTGAGGTCACTATGGCTCAAGATGTGTACGACTAAAG
+AAAGGTTTATGCTCCTTCCCCAAGGACGCATTTGGGACTGCTACTTGCCCCTAGCGAATT
+CACTAGGATTTTTGTAGAACCATGAGCGCCCTATCCGATAGCACAGAGACAATGCTACAA
+GCAACTGTGCATGCGCTCGATCGCCGTGCATTAATACGTATTATAGCGTATCGTGTACGC
+TAATATCTTAGTGCACCGCACGCTGGTTGGATACAATTCCGTGAAATAATTCCTGCTTAC
+ACAGGGGCTTTCTGGCGC
+>Frag_4b
+AGGTAATGCGGCAGGATCCCGTGGATCCTACGCTTAGCCTGTTACCCCCCCCGTTCTCCT
+CGGCCCCCAGCCAGCGCGTATTCCGCGCATTCCTCCGAGTGCGTATCGCGCAAACCACAA
+GATACCTCTCAACGACTAGCGGTGAACCACCAAGCTTGACATACGTGCCCCTTCGGAAAC
+GTTATTAGTGGTCCTGAGTGGTACGTCCCGAGTATACGGGGCAGCGATAGTAACGCTACA
+AATAGCTAGACCGACGACAAACACAGCACTGAATATCCAACAGTGGCAACGAGACGCTTA
+GAAAGGGAAACTACATACCAGTTCAATCCGGGATGACTTCAAAAGGGTATGTTTGTTTTG
+AAGCGAAGCTTTGGTTGTCATTCAGTTCCTAGAGTTTACGGCGCTGATATGGCTCTAGGA
+GTCCAGTGAATTCGTCAGCATAAGCCCCACATCGTAGGAAATTGCCCGGTCGTCGGTCTA
+GCAAATGCTCGGTAAACTGGGAGTGTACTAACACCATGTCGTGGTAACCCGGTGGACCGG
+CTACTAGAGACATATTTATTCATGCTCAGTTGAACCTGTTTCGAGGGGGCCGAGTTAACA
+TAAAGTGATTAGTCACAGCGCATTAAGATAGAACAGGGATATAGCTCGTTGCATCCATAA
+ATTGCCCACCGTAGGGAGAACGCCGTTGGAAAATGAGAGTTAGGCGATGAGCGGTTGTCG
+CCCGCACAGACAAAGGATGCCTTTATAAATAGTAGCGGCCTTGTCTGCACCAGACGTTTG
+TGGGTCGACGTGCTATTCTAGCCAAAAGCAAAATGTATCATACTACAGGCAATAGGCCCT
+ATGCTGACCAAACTTGGGGACCCTTGCGCCTTCTCTCTTACGCATAACATGCATAGGTAC
+CTCTACTCATCAGGCAGGGCGGCGTGAGGTCACTATGGCTCAAGATGTGTACGACTAAAG
+AAAGGTTTATGCTCCTTCCCCAAGGACGCATTTGGGACTGCTACTTGCCCCTAGCGAATT
+CACTAGGATTTTTGTAGAACCATGAGCGCCCTATCCGATAGCACAGAGACAATGCTACAA
+GCAACTGTGCATGCGCTCGATCGCCGTGCATTAATACGTATTATAGCGTATCGTGTACGC
+TAATATCTTAGTGCACCGCACGCTGGTTGGATACAATTCCGTGAAATAATTCCTGCTTAC
+ACAGGGGCTTTCTGGCGC
+>Frag_4c
+AGGTAATGCGGCAGGATCCCGTGGATCCTACGCTTAGCCTGTTAGGGGGGGGGTTCTCCT
+CGGCCCCCAGCCAGCGCGTATTCCGCGCATTCCTCCGAGTGCGTATCGCGCAAACCACAA
+GATACCTCTCAACGACTAGCGGTGAACCACCAAGCTTGACATACGTGCCCCTTCGGAAAC
+GTTATTAGTGGTCCTGAGTGGTACGTCCCGAGTATACGGGGCAGCGATAGTAACGCTACA
+AATAGCTAGACCGACGACAAACACAGCACTGAATATCCAACAGTGGCAACGAGACGCTTA
+GAAAGGGAAACTACATACCAGTTCAATCCGGGATGACTTCAAAAGGGTATGTTTGTTTTG
+AAGCGAAGCTTTGGTTGTCATTCAGTTCCTAGAGTTTACGGCGCTGATATGGCTCTAGGA
+GTCCAGTGAATTCGTCAGCATAAGCCCCACATCGTAGGAAATTGCCCGGTCGTCGGTCTA
+GCAAATGCTCGGTAAACTGGGAGTGTACTAACACCATGTCGTGGTAACCCGGTGGACCGG
+CTACTAGAGACATATTTATTCATGCTCAGTTGAACCTGTTTCGAGGGGGCCGAGTTAACA
+TAAAGTGATTAGTCACAGCGCATTAAGATAGAACAGGGATATAGCTCGTTGCATCCATAA
+ATTGCCCACCGTAGGGAGAACGCCGTTGGAAAATGAGAGTTAGGCGATGAGCGGTTGTCG
+CCCGCACAGACAAAGGATGCCTTTATAAATAGTAGCGGCCTTGTCTGCACCAGACGTTTG
+TGGGTCGACGTGCTATTCTAGCCAAAAGCAAAATGTATCATACTACAGGCAATAGGCCCT
+ATGCTGACCAAACTTGGGGACCCTTGCGCCTTCTCTCTTACGCATAACATGCATAGGTAC
+CTCTACTCATCAGGCAGGGCGGCGTGAGGTCACTATGGCTCAAGATGTGTACGACTAAAG
+AAAGGTTTATGCTCCTTCCCCAAGGACGCATTTGGGACTGCTACTTGCCCCTAGCGAATT
+CACTAGGATTTTTGTAGAACCATGAGCGCCCTATCCGATAGCACAGAGACAATGCTACAA
+GCAACTGTGCATGCGCTCGATCGCCGTGCATTAATACGTATTATAGCGTATCGTGTACGC
+TAATATCTTAGTGCACCGCACGCTGGTTGGATACAATTCCGTGAAATAATTCCTGCTTAC
+ACAGGGGCTTTCTGGCGC
+>Frag_5
+ACAGGGGCTTTCTGGCGCATGGCTGTGTCTGGATGTTTGTGATAAGAGGCTCCATGAACC
+CGGCGGGAAATGAGGGGAAACCCCGGGGAGCAACGACACTAAGCCTGGCAGTTGTTCAGA
+TAGGACGCTTTTGTCAGTGGGCGGTTTTGCATCCACTAACTATCATAAACGACACAACGT
+CGAATGATCATCGGCGGTTTGCATGTAGAGACAGCTCCTGCAACACCATACCGGCTCGTG
+GAATTACGCTGTGCGCCGGCCCTCATTCGATTGTGTCCAGCGTCGGCGCGAATGATGATT
+GAGATGTGCTTCGGCTCAGAGCGTGCACAGGTAGTTCTCCCCCCTTACCTAGCTGATCCA
+GCAATTCCACGCTGGCCCGCGCGTCCTTGGGTAACACTGGATCTGTACCCAAATACACCG
+TCGTGATTGTTAACTACCGTATGGCGGTTACGATCGAGTGACACTATTATTAGACCGCTA
+CTCCAAGTCCCAACTTTTCATCGCCATACAGAAGAGAACGAGAAAGTCGAAGAGTTATAG
+CGTGTACACTTCTGATTAGCTAACGAATCGATGCGTACAGCATACTCGAGCAACTTTATG
+GGTCGTCTGTCTCCTTGTACCCCGCTTGACGAGGATGTGTTTGTAGGCGGCTTGGATATC
+GGCAGTGTATCCGCATGGTCAAACACTTTAGCCCGACCGGTGCTCAAGGTCGAAATCCTA
+ATATAGATTGGGATAGGACCCGTCCATTACTAGGCGACATTCGCAGTCACGAGCCCGCAC
+GGGGTGCCTCAACACGGTGACACTCAATTCGCCGGCACTGAGTACGACGATCGTGATTGC
+CATACCGTCATGTTTTGTGTTACCCCTGATAAGAAGCGCAGATATGGCACGGGGGCAGAG
+GGCGGAGTAGACCCATGCAAAACTCTAGCCTCTGGGCAGCATGATCGACGTAGAACGCCG
+TTGTGACTCACTAGTTTCAGTTATGATGTTCAGCCAAGAATCCTCCATTTTGACGTGAAC
+CTTCTCCCTTTACACCTTGAAGCTGCAATATTAAGTCGACCCTTTAAGTTGCCTTGTCTT
+GGTCTAGAGCCCGCAGCTCACCGATAAAATGAGCAGTCAATTTTAGCGGCGGTTGTCCAG
+GTTACATGCACTTTGGGCTGGAACCGCGTTACGTTTGGAGTACTTAGAAGTGTCGTAGGC
+ATAGGAGAGCCGAAACTTGATATTGGGTCTAGTTAGTGCTCTACCCCGCTTCGGATCCGT
+AATAGTGATGTTGCATGAGACGCTTGCCTCAAGGCGACATACGGTGGCGGTTGCTGGAAA
+TGACGCCCCACCCCGTGATAATTTGGGGACGAGCCGCACGATAACTTCTGCCAGCGACCG
+CCCCTCCCACGTCCGATGGTGATTCCGAACTCCACCTGCGTCTATCGT
+>Frag_5b
+ACAGGGGCTTTCTGGCGCATGGCTGTGTCTGGAAAAAAAAAAAAAAAAAAAACATGAACC
+CGGCGGGAAATGAGGGGAAACCCCGGGGAGCAACGACACTAAGCCTGGCAGTTGTTCAGA
+TAGGACGCTTTTGTCAGTGGGCGGTTTTGCATCCACTAACTATCATAAACGACACAACGT
+CGAATGATCATCGGCGGTTTGCATGTAGAGACAGCTCCTGCAACACCATACCGGCTCGTG
+GAATTACGCTGTGCGCCGGCCCTCATTCGATTGTGTCCAGCGTCGGCGCGAATGATGATT
+GAGATGTGCTTCGGCTCAGAGCGTGCACAGGTAGTTCTCCCCCCTTACCTAGCTGATCCA
+GCAATTCCACGCTGGCCCGCGCGTCCTTGGGTAACACTGGATCTGTACCCAAATACACCG
+TCGTGATTGTTAACTACCGTATGGCGGTTACGATCGAGTGACACTATTATTAGACCGCTA
+CTCCAAGTCCCAACTTTTCATCGCCATACAGAAGAGAACGAGAAAGTCGAAGAGTTATAG
+CGTGTACACTTCTGATTAGCTAACGAATCGATGCGTACAGCATACTCGAGCAACTTTATG
+GGTCGTCTGTCTCCTTGTACCCCGCTTGACGAGGATGTGTTTGTAGGCGGCTTGGATATC
+GGCAGTGTATCCGCATGGTCAAACACTTTAGCCCGACCGGTGCTCAAGGTCGAAATCCTA
+ATATAGATTGGGATAGGACCCGTCCATTACTAGGCGACATTCGCAGTCACGAGCCCGCAC
+GGGGTGCCTCAACACGGTGACACTCAATTCGCCGGCACTGAGTACGACGATCGTGATTGC
+CATACCGTCATGTTTTGTGTTACCCCTGATAAGAAGCGCAGATATGGCACGGGGGCAGAG
+GGCGGAGTAGACCCATGCAAAACTCTAGCCTCTGGGCAGCATGATCGACGTAGAACGCCG
+TTGTGACTCACTAGTTTCAGTTATGATGTTCAGCCAAGAATCCTCCATTTTGACGTGAAC
+CTTCTCCCTTTACACCTTGAAGCTGCAATATTAAGTCGACCCTTTAAGTTGCCTTGTCTT
+GGTCTAGAGCCCGCAGCTCACCGATAAAATGAGCAGTCAATTTTAGCGGCGGTTGTCCAG
+GTTACATGCACTTTGGGCTGGAACCGCGTTACGTTTGGAGTACTTAGAAGTGTCGTAGGC
+ATAGGAGAGCCGAAACTTGATATTGGGTCTAGTTAGTGCTCTACCCCGCTTCGGATCCGT
+AATAGTGATGTTGCATGAGACGCTTGCCTCAAGGCGACATACGGTGGCGGTTGCTGGAAA
+TGACGCCCCACCCCGTGATAATTTGGGGACGAGCCGCACGATAACTTCTGCCAGCGACCG
+CCCCTCCCACGTCCGATGGTGATTCCGAACTCCACCTGCGTCTATCGT
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/example_genetic_parts_and_backbone/parts/partA.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,94 @@
+LOCUS       Exported                4022 bp ds-DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA
+ACCESSION   <unknown
+VERSION     .
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+REFERENCE   1  (bases 1 to 4022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..4022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..1001
+                     /label=pA
+                     /label=nonstandard type: annotation
+     CDS             1123..2022
+                     /label=AmpR
+     misc_feature    3023..3522
+                     /label=RepO_1
+                     /label=nonstandard type: rep._origin
+ORIGIN
+        1 cgtctcaatt gtaagataga acagggatat agctcgttgc atccataaat tgcccaccgt
+       61 agggagaacg ccgttggaaa atgagagtta ggcgatgagc ggttgtcgcc cgcacagaca
+      121 aaggatgcct ttataaatag tagcggcctt gtctgcacca gacgtttgtg ggtcgacgtg
+      181 ctattctagc caaaagcaaa atgtatcata ctacaggcaa taggccctat gctgaccaaa
+      241 cttggggacc cttgcgcctt ctctcttacg cataacatgc ataggtacct ctactcatca
+      301 ggcagggcgg cgtgaggtca ctatggctca agatgtgtac gactaaagaa aggtttatgc
+      361 tccttcccca aggacgcatt tgggactgct acttgcccct agcgaattca ctaggatttt
+      421 tgtagaacca tgagcgccct atccgatagc acagagacaa tgctacaagc aactgtgcat
+      481 gcgctcgatc gccgtgcatt aatacgtatt atagcgtatc gtgtacgcta atatcttagt
+      541 gcaccgcacg ctggttggat acaattccgt gaaataattc ctgcttacac aggggctttc
+      601 tggcgcatgg ctgtgtctgg atgtttgtga taagaggctc catgaacccg gcgggaaatg
+      661 aggggaaacc ccggggagca acgacactaa gcctggcagt tgttcagata ggacgctttt
+      721 gtcagtgggc ggttttgcat ccactaacta tcataaacga cacaacgtcg aatgatcatc
+      781 ggcggtttgc atgtagagac agctcctgca acaccatacc ggctcgtgga attacgctgt
+      841 gcgccggccc tcattcgatt gtgtccagcg tcggcgcgaa tgatgattga gatgtgcttc
+      901 ggctcagagc gtgcacaggt agttctcccc ccttacctag ctgatccagc aattccacgc
+      961 tggcccgcgc gtccttgggt aacactggat ctgtacccaa atacaccgtc gggctagaga
+     1021 cgctccacct gcgtctatcg tacagtgcta aaatggcagc agatagtgaa acttccgcta
+     1081 agctagcccc tcagggtaca ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt
+     1141 tgtcggggac ctgccgtcac gcttccgagt gtatatccgg atttagttga cgtcatacag
+     1201 aggcactaag aagaataaac gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct
+     1261 cccttgcgcc gttcggcaag cgtccggtgt cgggctgcaa ggaataaatc tttatggacc
+     1321 agaggggctt gtttcctcat atgggtgcgt gcacttatac gattcaaagg tggatatggc
+     1381 cgcataacac gtagccaggc tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg
+     1441 tttttgtttt tcctttacga cacgaaccgc tctaacctgc tctatttcgc cacgttccag
+     1501 tgaacctctt agcctaccgc ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg
+     1561 gagaaatcgt tcaatattag aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc
+     1621 cgtttaacgg ctgccgtggt cataccgtga ggcaccacga ggggatgcta cgcaacatgc
+     1681 gaggtgtaat cagcagggaa gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat
+     1741 atgcataagg tgtcatttat attacaccta cgacactggt accggctcac agccaaatgc
+     1801 acagtctcaa gatagaattc gcaaaaatta ggcttatcgg gcgcttactc tttgttacac
+     1861 ttctggtctg tgagtgacgc cctgtgtccc atcactgcat gtgaggatgc gtgtactgca
+     1921 cctgtgaatt acagacgttt ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc
+     1981 tctatagggt gatctcgaca taccactatg gtttgcgcgt ttcgggtgct tttggcgagg
+     2041 gccaggtacg gcggtgagac agcgtatttt gcgaataggg tattcggacg cacggtgtat
+     2101 agctcttgga aaacgactct tcgacgggcg tgtagaagta gccaagcagt tcggttgtta
+     2161 tcactaaatg cggaccatgt gcagccgttt aggagaggag tctgcaatgg atcagctggt
+     2221 cagattgtac cactcggttg agcctaaggc acttcaggtg ctcggattgt aatgaaccct
+     2281 caggttacgc cgttgcgctg agatcccaca agccataagc aatgagaatc gagcagctat
+     2341 cgaattacgc agcacttgct gatgaactgg gtgcacctaa agcgcccgat aaaacggagg
+     2401 gagtgaggta actactacat tgcgagtagt gcgaggggcc tccgagacta cattagagca
+     2461 gccatgccga atacgacaaa atctatagcc ttgcgaacgt aggggactga tttatggaca
+     2521 acaggaccga aacaagttgg agccacaacg gagctatgga cgttttcact attgatgggt
+     2581 ggcttgcgtc cgcatcccag gtttctctgg ttaattttca tgacgattct ttgtggtacg
+     2641 atccaggcat aagatagggc acctaacccg atactgtgaa cttatatgac ggctgaacat
+     2701 gccctaatag tctgccaaaa gggaaaccta taacggctct aaacgggccc cgggtacgta
+     2761 acagcaatgt tcctgtccac caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat
+     2821 tccgttttac gccccagatc gcagctccct tgacagtgtc agttgaatcc ccattctagg
+     2881 tttcctgata aaactaagta cggggacgca tcagtcgaaa gcaatcacag ataatagata
+     2941 tcttgagcag aaagacgtct tcacgaatca ggagcgagtg tcccctttga aagtgcgggc
+     3001 aacaataggt gtgaggtttc acggttgctt gatcagtagc tgttcactct ctcgcaggcc
+     3061 tacatagtga ggtggtgaga ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc
+     3121 gggcacgcta acaaggacag gaattcgggt cgtcaaataa caatttacgt catcgcatcc
+     3181 ctcaagggta aggcgtgatc tccatctcgg ttcccaattg gtcattgtga tagccacact
+     3241 gcagttaccg aaggcgattt tatactaccc tgataagtgc tcgcagcccc tcctccctaa
+     3301 taatgtaacg acgagcatta acccaggagt atttctcacg ttgctcgtgc ccagccaagg
+     3361 cgatcaacgc agaccggata gcgttagcta gcccacgggt aaaagcgatt gttgtactct
+     3421 ttcatatgaa tacagcactc gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc
+     3481 acactggagg cgatgatcta gcccgtcttt caccccgtac ctttatactc ggccgcgtat
+     3541 ttctccaccg ggagctctgc ctaccaaagc gtcgtacgcc caggaagccg tttcctttat
+     3601 cctccctcat gtctcaacgc gcgagcatcg gagagtacgc gaaatcgact gtctggccaa
+     3661 cactggacag acgcgcgaga cactgataaa cccccatttt cgtggggtta gtaaatcggt
+     3721 ggcttcaaac ggttcgatcg ctcgcacgag cattagtcag gagtatgatt gcgcatcatc
+     3781 tctactccgt actaggttct gtagctcagg atctccgggg ggatcaagct tttatgtccc
+     3841 gcgggattag aagatatcca tccatatgtt tactttgatg cgggtccgag ctctctatga
+     3901 tgctgctttg acaaaatgtg gaaagcctca gcgaccgctc tggggtcaaa gctctacgac
+     3961 acgttgatgc taaacaagtt ggactactaa gcaaatgaag cggaagagat actgagcgct
+     4021 ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/example_genetic_parts_and_backbone/parts/partA2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,94 @@
+LOCUS       Exported                4022 bp ds-DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA
+ACCESSION   <unknown
+VERSION     .
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+REFERENCE   1  (bases 1 to 4022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..4022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..1001
+                     /label=pA2
+                     /label=nonstandard type: annotation
+     CDS             1123..2022
+                     /label=AmpR
+     misc_feature    3023..3522
+                     /label=RepO_1
+                     /label=nonstandard type: rep._origin
+ORIGIN
+        1 cgtctcaatt gtaagataga acagggatat agctcgttgc atccataaat tgcccaccgt
+       61 agggagaacg ccgttggaaa atgagagtta ggcgatgagc ggttgtcgcc cgcacagaca
+      121 aaggatgcct ttataaatag tagcggcctt gtctgcacca gacgtttgtg ggtcgacgtg
+      181 ctattctagc caaaagcaaa atgtatcata ctacaggcaa taggccctat gctgaccaaa
+      241 cttggggacc cttgcgcctt ctctcttacg cataacatgc ataggtacct ctactcatca
+      301 ggcagggcgg cgtgaggtca ctatggctca agatgtgtac gactaaagaa aggtttatgc
+      361 tccttcccca aggacgcatt tgggactgct acttgcccct agcgaattca ctaggatttt
+      421 tgtagaacca tgagcgccct atccgatagc acagagacaa tgctacaagc aactgtgcat
+      481 gcgctcgatc gccgtgcatt aatacgtatt atagagtatc gtgtacgcta atatcttagt
+      541 gcaccgcacg ctggttggat acaattccgt gaaataattc ctgcttacac aggggctttc
+      601 tggcgcatgg ctgtgtctgg atgtttgtga taagaggctc caagaacccg gcgggaaatg
+      661 aggggaaacc ccggggagca acgacactaa gcctggcagt tgttcagata ggacgctttt
+      721 gtcagtgggc ggttttgcat ccactaacta tcataaacga cacaacgtcg aatgatcatc
+      781 ggcggtttgc atgtagagac agctcctgca acaccatacc ggctcgtgga attacgctgt
+      841 gcgccggccc tcattcgatt gtgtccagcg tcggcgcgaa tgatgattga gatgtgcttc
+      901 ggctcagagc gtgcacaggt agttctcccc ccttacctag ctaatccagc aattccacgc
+      961 tggcccgcgc gtccttgggt aacactggat ctgtacccaa atacaccgtc gggctagaga
+     1021 cgctccacct gcgtctatcg tacagtgcta aaatggcagc agatagtgaa acttccgcta
+     1081 agctagcccc tcagggtaca ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt
+     1141 tgtcggggac ctgccgtcac gcttccgagt gtatatccgg atttagttga cgtcatacag
+     1201 aggcactaag aagaataaac gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct
+     1261 cccttgcgcc gttcggcaag cgtccggtgt cgggctgcaa ggaataaatc tttatggacc
+     1321 agaggggctt gtttcctcat atgggtgcgt gcacttatac gattcaaagg tggatatggc
+     1381 cgcataacac gtagccaggc tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg
+     1441 tttttgtttt tcctttacga cacgaaccgc tctaacctgc tctatttcgc cacgttccag
+     1501 tgaacctctt agcctaccgc ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg
+     1561 gagaaatcgt tcaatattag aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc
+     1621 cgtttaacgg ctgccgtggt cataccgtga ggcaccacga ggggatgcta cgcaacatgc
+     1681 gaggtgtaat cagcagggaa gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat
+     1741 atgcataagg tgtcatttat attacaccta cgacactggt accggctcac agccaaatgc
+     1801 acagtctcaa gatagaattc gcaaaaatta ggcttatcgg gcgcttactc tttgttacac
+     1861 ttctggtctg tgagtgacgc cctgtgtccc atcactgcat gtgaggatgc gtgtactgca
+     1921 cctgtgaatt acagacgttt ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc
+     1981 tctatagggt gatctcgaca taccactatg gtttgcgcgt ttcgggtgct tttggcgagg
+     2041 gccaggtacg gcggtgagac agcgtatttt gcgaataggg tattcggacg cacggtgtat
+     2101 agctcttgga aaacgactct tcgacgggcg tgtagaagta gccaagcagt tcggttgtta
+     2161 tcactaaatg cggaccatgt gcagccgttt aggagaggag tctgcaatgg atcagctggt
+     2221 cagattgtac cactcggttg agcctaaggc acttcaggtg ctcggattgt aatgaaccct
+     2281 caggttacgc cgttgcgctg agatcccaca agccataagc aatgagaatc gagcagctat
+     2341 cgaattacgc agcacttgct gatgaactgg gtgcacctaa agcgcccgat aaaacggagg
+     2401 gagtgaggta actactacat tgcgagtagt gcgaggggcc tccgagacta cattagagca
+     2461 gccatgccga atacgacaaa atctatagcc ttgcgaacgt aggggactga tttatggaca
+     2521 acaggaccga aacaagttgg agccacaacg gagctatgga cgttttcact attgatgggt
+     2581 ggcttgcgtc cgcatcccag gtttctctgg ttaattttca tgacgattct ttgtggtacg
+     2641 atccaggcat aagatagggc acctaacccg atactgtgaa cttatatgac ggctgaacat
+     2701 gccctaatag tctgccaaaa gggaaaccta taacggctct aaacgggccc cgggtacgta
+     2761 acagcaatgt tcctgtccac caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat
+     2821 tccgttttac gccccagatc gcagctccct tgacagtgtc agttgaatcc ccattctagg
+     2881 tttcctgata aaactaagta cggggacgca tcagtcgaaa gcaatcacag ataatagata
+     2941 tcttgagcag aaagacgtct tcacgaatca ggagcgagtg tcccctttga aagtgcgggc
+     3001 aacaataggt gtgaggtttc acggttgctt gatcagtagc tgttcactct ctcgcaggcc
+     3061 tacatagtga ggtggtgaga ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc
+     3121 gggcacgcta acaaggacag gaattcgggt cgtcaaataa caatttacgt catcgcatcc
+     3181 ctcaagggta aggcgtgatc tccatctcgg ttcccaattg gtcattgtga tagccacact
+     3241 gcagttaccg aaggcgattt tatactaccc tgataagtgc tcgcagcccc tcctccctaa
+     3301 taatgtaacg acgagcatta acccaggagt atttctcacg ttgctcgtgc ccagccaagg
+     3361 cgatcaacgc agaccggata gcgttagcta gcccacgggt aaaagcgatt gttgtactct
+     3421 ttcatatgaa tacagcactc gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc
+     3481 acactggagg cgatgatcta gcccgtcttt caccccgtac ctttatactc ggccgcgtat
+     3541 ttctccaccg ggagctctgc ctaccaaagc gtcgtacgcc caggaagccg tttcctttat
+     3601 cctccctcat gtctcaacgc gcgagcatcg gagagtacgc gaaatcgact gtctggccaa
+     3661 cactggacag acgcgcgaga cactgataaa cccccatttt cgtggggtta gtaaatcggt
+     3721 ggcttcaaac ggttcgatcg ctcgcacgag cattagtcag gagtatgatt gcgcatcatc
+     3781 tctactccgt actaggttct gtagctcagg atctccgggg ggatcaagct tttatgtccc
+     3841 gcgggattag aagatatcca tccatatgtt tactttgatg cgggtccgag ctctctatga
+     3901 tgctgctttg acaaaatgtg gaaagcctca gcgaccgctc tggggtcaaa gctctacgac
+     3961 acgttgatgc taaacaagtt ggactactaa gcaaatgaag cggaagagat actgagcgct
+     4021 ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/example_genetic_parts_and_backbone/parts/partB.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,110 @@
+LOCUS       Exported                5022 bp ds-DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA
+ACCESSION   <unknown
+VERSION     .
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+REFERENCE   1  (bases 1 to 5022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..5022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..2001
+                     /label=pB
+                     /label=nonstandard type: annotation
+     CDS             2123..3022
+                     /label=AmpR
+     misc_feature    4023..4522
+                     /label=RepO_1
+                     /label=nonstandard type: rep._origin
+ORIGIN
+        1 cgtctcaggc ttgattgtta actaccgtat ggcggttacg atcgagtgac actattatta
+       61 gaccgctact ccaagtccca acttttcatc gccatacaga agagaacgag aaagtcgaag
+      121 agttatagcg tgtacacttc tgattagcta acgaatcgat gcgtacagca tactcgagca
+      181 actttatggg tcgtctgtct ccttgtaccc cgcttgacga ggatgtgttt gtaggcggct
+      241 tggatatcgg cagtgtatcc gcatggtcaa acactttagc ccgaccggtg ctcaaggtcg
+      301 aaatcctaat atagattggg ataggacccg tccattacta ggcgacattc gcagtcacga
+      361 gcccgcacgg ggtgcctcaa cacggtgaca ctcaattcgc cggcactgag tacgacgatc
+      421 gtgattgcca taccgtcatg ttttgtgtta cccctgataa gaagcgcaga tatggcacgg
+      481 gggcagaggg cggagtagac ccatgcaaaa ctctagcctc tgggcagcat gatcgacgta
+      541 gaacgccgtt gtgactcact agtttcagtt atgatgttca gccaagaatc ctccattttg
+      601 acgtgaacct tctcccttta caccttgaag ctgcaatatt aagtcgaccc tttaagttgc
+      661 cttgtcttgg tctagagccc gcagctcacc gataaaatga gcagtcaatt ttagcggcgg
+      721 ttgtccaggt tacatgcact ttgggctgga accgcgttac gtttggagta cttagaagtg
+      781 tcgtaggcat aggagagccg aaacttgata ttgggtctag ttagtgctct accccgcttc
+      841 ggatccgtaa tagtgatgtt gcataagacg cttgcctcaa ggcgacatac ggtggcggtt
+      901 gctggaaatg acgccccacc ccgtgataat ttggggacga gccgcacgat aacttctgcc
+      961 agcgaccgcc cctcccacgt ccgatggtga ttccgaattt tgattacatg ccagacacgc
+     1021 tttaatctcg ccaccacatt ggcaccccca ccaagtaatg tatgtaagaa gcagctgcgc
+     1081 cccaagttac gtgccgtttc cgatgggagc agcaataatg tcgatagcaa ccacccccct
+     1141 ctctactgac gaagcaacac cggggacacc gtcaccttgg cttcatttcg tattcattca
+     1201 cctacgcaca accgcctgac cgttcgttat cacgagccta tccccttcaa gcaatttccc
+     1261 ccccttgttc agcagcctac actatacgtt ggtacactgt gtgcgacaga tatttggtgc
+     1321 ccgtcttatt ctattctgag agagtttaat agccaaaaga tatgagtagg aacgggaggt
+     1381 acccgactcg cgttgaagca ctcttaagac ctctcttagc acttcgaagg gtaggtgcgt
+     1441 tcaaagaacc tctgctttta actaagatca aaaggattgc gtacaacttc cccgttaact
+     1501 ctccagagga tccgtagaag tctacaccaa aatacgtttg gtttcgccaa ggtgactatc
+     1561 ggtacttgtg cacgtaacag ggtaaagaat tgaaagcctc aaattgtacg acgttacgcc
+     1621 cggacggtcg ccggtgatag ggtgacgcat ttgcgtttgt catatcattt gggattagac
+     1681 ggagctggtg tacctctatg gacgttacaa aaccttgtgg taacagcctg ggtgccatcc
+     1741 acctagtccg aagtttcctt ctaaccgcgg catcagatgg atatgtacct tatggcgctt
+     1801 cccgggaagt ccaattcttc gtgttgaagg gacagctcta caggcctggc cacttgtggc
+     1861 gcatctaagt agtctaggtg catgattctc tcccttgggg gcgctgtcgt gggtcctgcc
+     1921 gagccacacc ctaacctcac gtcgcaagac ttggtaaata gctttttttt ttatgcccaa
+     1981 tctatttacg taacaatcga catcagagga ggggcagaga cgctccacct gcgtctatcg
+     2041 tacagtgcta aaatggcagc agatagtgaa acttccgcta agctagcccc tcagggtaca
+     2101 ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt tgtcggggac ctgccgtcac
+     2161 gcttccgagt gtatatccgg atttagttga cgtcatacag aggcactaag aagaataaac
+     2221 gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct cccttgcgcc gttcggcaag
+     2281 cgtccggtgt cgggctgcaa ggaataaatc tttatggacc agaggggctt gtttcctcat
+     2341 atgggtgcgt gcacttatac gattcaaagg tggatatggc cgcataacac gtagccaggc
+     2401 tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg tttttgtttt tcctttacga
+     2461 cacgaaccgc tctaacctgc tctatttcgc cacgttccag tgaacctctt agcctaccgc
+     2521 ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg gagaaatcgt tcaatattag
+     2581 aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc cgtttaacgg ctgccgtggt
+     2641 cataccgtga ggcaccacga ggggatgcta cgcaacatgc gaggtgtaat cagcagggaa
+     2701 gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat atgcataagg tgtcatttat
+     2761 attacaccta cgacactggt accggctcac agccaaatgc acagtctcaa gatagaattc
+     2821 gcaaaaatta ggcttatcgg gcgcttactc tttgttacac ttctggtctg tgagtgacgc
+     2881 cctgtgtccc atcactgcat gtgaggatgc gtgtactgca cctgtgaatt acagacgttt
+     2941 ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc tctatagggt gatctcgaca
+     3001 taccactatg gtttgcgcgt ttcgggtgct tttggcgagg gccaggtacg gcggtgagac
+     3061 agcgtatttt gcgaataggg tattcggacg cacggtgtat agctcttgga aaacgactct
+     3121 tcgacgggcg tgtagaagta gccaagcagt tcggttgtta tcactaaatg cggaccatgt
+     3181 gcagccgttt aggagaggag tctgcaatgg atcagctggt cagattgtac cactcggttg
+     3241 agcctaaggc acttcaggtg ctcggattgt aatgaaccct caggttacgc cgttgcgctg
+     3301 agatcccaca agccataagc aatgagaatc gagcagctat cgaattacgc agcacttgct
+     3361 gatgaactgg gtgcacctaa agcgcccgat aaaacggagg gagtgaggta actactacat
+     3421 tgcgagtagt gcgaggggcc tccgagacta cattagagca gccatgccga atacgacaaa
+     3481 atctatagcc ttgcgaacgt aggggactga tttatggaca acaggaccga aacaagttgg
+     3541 agccacaacg gagctatgga cgttttcact attgatgggt ggcttgcgtc cgcatcccag
+     3601 gtttctctgg ttaattttca tgacgattct ttgtggtacg atccaggcat aagatagggc
+     3661 acctaacccg atactgtgaa cttatatgac ggctgaacat gccctaatag tctgccaaaa
+     3721 gggaaaccta taacggctct aaacgggccc cgggtacgta acagcaatgt tcctgtccac
+     3781 caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat tccgttttac gccccagatc
+     3841 gcagctccct tgacagtgtc agttgaatcc ccattctagg tttcctgata aaactaagta
+     3901 cggggacgca tcagtcgaaa gcaatcacag ataatagata tcttgagcag aaagacgtct
+     3961 tcacgaatca ggagcgagtg tcccctttga aagtgcgggc aacaataggt gtgaggtttc
+     4021 acggttgctt gatcagtagc tgttcactct ctcgcaggcc tacatagtga ggtggtgaga
+     4081 ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc gggcacgcta acaaggacag
+     4141 gaattcgggt cgtcaaataa caatttacgt catcgcatcc ctcaagggta aggcgtgatc
+     4201 tccatctcgg ttcccaattg gtcattgtga tagccacact gcagttaccg aaggcgattt
+     4261 tatactaccc tgataagtgc tcgcagcccc tcctccctaa taatgtaacg acgagcatta
+     4321 acccaggagt atttctcacg ttgctcgtgc ccagccaagg cgatcaacgc agaccggata
+     4381 gcgttagcta gcccacgggt aaaagcgatt gttgtactct ttcatatgaa tacagcactc
+     4441 gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc acactggagg cgatgatcta
+     4501 gcccgtcttt caccccgtac ctttatactc ggccgcgtat ttctccaccg ggagctctgc
+     4561 ctaccaaagc gtcgtacgcc caggaagccg tttcctttat cctccctcat gtctcaacgc
+     4621 gcgagcatcg gagagtacgc gaaatcgact gtctggccaa cactggacag acgcgcgaga
+     4681 cactgataaa cccccatttt cgtggggtta gtaaatcggt ggcttcaaac ggttcgatcg
+     4741 ctcgcacgag cattagtcag gagtatgatt gcgcatcatc tctactccgt actaggttct
+     4801 gtagctcagg atctccgggg ggatcaagct tttatgtccc gcgggattag aagatatcca
+     4861 tccatatgtt tactttgatg cgggtccgag ctctctatga tgctgctttg acaaaatgtg
+     4921 gaaagcctca gcgaccgctc tggggtcaaa gctctacgac acgttgatgc taaacaagtt
+     4981 ggactactaa gcaaatgaag cggaagagat actgagcgct ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/example_genetic_parts_and_backbone/parts/partB2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,110 @@
+LOCUS       Exported                5022 bp ds-DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA
+ACCESSION   <unknown
+VERSION     .
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+REFERENCE   1  (bases 1 to 5022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..5022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..2001
+                     /label=pB2
+                     /label=nonstandard type: annotation
+     CDS             2123..3022
+                     /label=AmpR
+     misc_feature    4023..4522
+                     /label=RepO_1
+                     /label=nonstandard type: rep._origin
+ORIGIN
+        1 cgtctcaggc ttgattgtta actaccgtat ggcggttacg atcgagtgac actattatta
+       61 gaccgctact ccaagtccca acttttcatc gccatacaga agagaacgag aaagtcgaag
+      121 agttatagcg tgtacacttc tgattagcta acgaatcgat gcgtacagca tactcgagca
+      181 actttatggg tcgtctgtct ccttgtaccc cgcttgacga ggatgtgttt gtaggcggct
+      241 tggatatcgg cagtgtatcc gcatggtcaa acactttagc ccgaccggtg ctcaaggtcg
+      301 aaatcctaat atagattggg ataggacccg tccattacta ggcgacattc gcagtcacga
+      361 gcccgcacgg ggtgcctcaa cacggtgaca ctcaattcgc cgacactgag tacgacgatc
+      421 gtgattgcca taccgtcatg ttttgtgtta cccctgataa gaagcgcaga tatggcacgg
+      481 gggcagaggg cggagtagac ccaagcaaaa ctctagcctc tgggcagcat gatcgacgta
+      541 gaacgccgtt gtgactcact agtttcagtt atgatgttca gccaagaatc ctccattttg
+      601 acgtgaacct tctcccttta caccttgaag ctgcaatatt aagtcgaccc tttaagttgc
+      661 cttgtcttgg tctagagccc gcagctcacc gataaaatga gcagtcaatt ttagcggcgg
+      721 ttgtccaggt tacatgcact ttgggctgga accgcgttac gtttggagta cttagaagtg
+      781 tcgtaggcat aggagagccg aaacttgata ttgggtctag ttagtgctct accccgcttc
+      841 ggatccgtaa tagtgatgtt gcataagacg cttgcctcaa ggcgacatac ggtggcggtt
+      901 gctggaaatg acgccccacc ccgtgataat ttggggacga gccacacgat aacttctgcc
+      961 agcgaccgcc cctcccacgt ccgatggtga ttccgaattt tgattacatg ccagacacgc
+     1021 tttaatctcg ccaccacatt ggcaccccca ccaagtaatg tatgtaagaa gcagctgcgc
+     1081 cccaagttac gtgccgtttc cgatgggagc agcaataatg tcgatagcaa ccacccccct
+     1141 ctctactgac gaagcaacac cggggacacc gtcaccttgg cttcatttcg tattcattca
+     1201 cctacgcaca accgcctgac cgttcgttat cacgagccta tccccttcaa gcaatttccc
+     1261 ccccttgttc agcagcctac actatacgtt ggtacactgt gtgcgacaga tatttggtgc
+     1321 ccgtcttatt ctattctgag agagtttaat agccaaaaga tatgagtagg aacgggaggt
+     1381 acccgactcg cgttgaagca ctcttaagac ctctcttagc acttcgaagg gtaggtgcgt
+     1441 tcaaagaacc tctgctttta actaagatca aaaggattgc gtacaacttc cccgttaact
+     1501 ctccagagga tccgtagaag tctacaccaa aatacgtttg gtttcgccaa ggtgactatc
+     1561 ggtacttgtg cacgtaacag ggtaaagaat tgaaagcctc aaattgtacg acgttacgcc
+     1621 cggacggtcg ccggtgatag ggtgacgcat ttgcgtttgt catatcattt gggattagac
+     1681 ggagctggtg tacctctatg gacgttacaa aaccttgtgg taacagcctg ggtgccatcc
+     1741 acctagtccg aagtttcctt ctaaccgcgg catcagatgg atatgtacct tatggcgctt
+     1801 cccgggaagt ccaattcttc gtgttgaagg gacagctcta caggcctggc cacttgtggc
+     1861 gcatctaagt agtctaggtg catgattctc tcccttgggg gcgctgtcgt gggtcctgcc
+     1921 gagccacacc ctaacctcac gtcgcaagac ttggtaaata gctttttttt ttatgcccaa
+     1981 tctatttacg taacaatcga catcagagga ggggcagaga cgctccacct gcgtctatcg
+     2041 tacagtgcta aaatggcagc agatagtgaa acttccgcta agctagcccc tcagggtaca
+     2101 ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt tgtcggggac ctgccgtcac
+     2161 gcttccgagt gtatatccgg atttagttga cgtcatacag aggcactaag aagaataaac
+     2221 gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct cccttgcgcc gttcggcaag
+     2281 cgtccggtgt cgggctgcaa ggaataaatc tttatggacc agaggggctt gtttcctcat
+     2341 atgggtgcgt gcacttatac gattcaaagg tggatatggc cgcataacac gtagccaggc
+     2401 tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg tttttgtttt tcctttacga
+     2461 cacgaaccgc tctaacctgc tctatttcgc cacgttccag tgaacctctt agcctaccgc
+     2521 ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg gagaaatcgt tcaatattag
+     2581 aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc cgtttaacgg ctgccgtggt
+     2641 cataccgtga ggcaccacga ggggatgcta cgcaacatgc gaggtgtaat cagcagggaa
+     2701 gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat atgcataagg tgtcatttat
+     2761 attacaccta cgacactggt accggctcac agccaaatgc acagtctcaa gatagaattc
+     2821 gcaaaaatta ggcttatcgg gcgcttactc tttgttacac ttctggtctg tgagtgacgc
+     2881 cctgtgtccc atcactgcat gtgaggatgc gtgtactgca cctgtgaatt acagacgttt
+     2941 ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc tctatagggt gatctcgaca
+     3001 taccactatg gtttgcgcgt ttcgggtgct tttggcgagg gccaggtacg gcggtgagac
+     3061 agcgtatttt gcgaataggg tattcggacg cacggtgtat agctcttgga aaacgactct
+     3121 tcgacgggcg tgtagaagta gccaagcagt tcggttgtta tcactaaatg cggaccatgt
+     3181 gcagccgttt aggagaggag tctgcaatgg atcagctggt cagattgtac cactcggttg
+     3241 agcctaaggc acttcaggtg ctcggattgt aatgaaccct caggttacgc cgttgcgctg
+     3301 agatcccaca agccataagc aatgagaatc gagcagctat cgaattacgc agcacttgct
+     3361 gatgaactgg gtgcacctaa agcgcccgat aaaacggagg gagtgaggta actactacat
+     3421 tgcgagtagt gcgaggggcc tccgagacta cattagagca gccatgccga atacgacaaa
+     3481 atctatagcc ttgcgaacgt aggggactga tttatggaca acaggaccga aacaagttgg
+     3541 agccacaacg gagctatgga cgttttcact attgatgggt ggcttgcgtc cgcatcccag
+     3601 gtttctctgg ttaattttca tgacgattct ttgtggtacg atccaggcat aagatagggc
+     3661 acctaacccg atactgtgaa cttatatgac ggctgaacat gccctaatag tctgccaaaa
+     3721 gggaaaccta taacggctct aaacgggccc cgggtacgta acagcaatgt tcctgtccac
+     3781 caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat tccgttttac gccccagatc
+     3841 gcagctccct tgacagtgtc agttgaatcc ccattctagg tttcctgata aaactaagta
+     3901 cggggacgca tcagtcgaaa gcaatcacag ataatagata tcttgagcag aaagacgtct
+     3961 tcacgaatca ggagcgagtg tcccctttga aagtgcgggc aacaataggt gtgaggtttc
+     4021 acggttgctt gatcagtagc tgttcactct ctcgcaggcc tacatagtga ggtggtgaga
+     4081 ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc gggcacgcta acaaggacag
+     4141 gaattcgggt cgtcaaataa caatttacgt catcgcatcc ctcaagggta aggcgtgatc
+     4201 tccatctcgg ttcccaattg gtcattgtga tagccacact gcagttaccg aaggcgattt
+     4261 tatactaccc tgataagtgc tcgcagcccc tcctccctaa taatgtaacg acgagcatta
+     4321 acccaggagt atttctcacg ttgctcgtgc ccagccaagg cgatcaacgc agaccggata
+     4381 gcgttagcta gcccacgggt aaaagcgatt gttgtactct ttcatatgaa tacagcactc
+     4441 gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc acactggagg cgatgatcta
+     4501 gcccgtcttt caccccgtac ctttatactc ggccgcgtat ttctccaccg ggagctctgc
+     4561 ctaccaaagc gtcgtacgcc caggaagccg tttcctttat cctccctcat gtctcaacgc
+     4621 gcgagcatcg gagagtacgc gaaatcgact gtctggccaa cactggacag acgcgcgaga
+     4681 cactgataaa cccccatttt cgtggggtta gtaaatcggt ggcttcaaac ggttcgatcg
+     4741 ctcgcacgag cattagtcag gagtatgatt gcgcatcatc tctactccgt actaggttct
+     4801 gtagctcagg atctccgggg ggatcaagct tttatgtccc gcgggattag aagatatcca
+     4861 tccatatgtt tactttgatg cgggtccgag ctctctatga tgctgctttg acaaaatgtg
+     4921 gaaagcctca gcgaccgctc tggggtcaaa gctctacgac acgttgatgc taaacaagtt
+     4981 ggactactaa gcaaatgaag cggaagagat actgagcgct ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/example_genetic_parts_and_backbone/parts/partC.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,110 @@
+LOCUS       Exported                5022 bp ds-DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA
+ACCESSION   <unknown
+VERSION     .
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+REFERENCE   1  (bases 1 to 5022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..5022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..2001
+                     /label=pC
+                     /label=nonstandard type: annotation
+     CDS             2123..3022
+                     /label=AmpR
+     misc_feature    4023..4522
+                     /label=RepO_1
+                     /label=nonstandard type: rep._origin
+ORIGIN
+        1 cgtctcaggg caaagattac gatagaaaaa cactcgacac agagtagtat gataaaagtt
+       61 gggacggcat gctggactcg agaagtgtcg atccggcaat ccagatacgg caatggtacc
+      121 ggtcacacct cattctaaga gcagtcaggg gctgtcaggt ctacagggca ccggccctga
+      181 ggcccttggg ctagggtctg tcacccctat ctgcactgac tttaaagtaa ccgagcaata
+      241 agacaatcaa tcgcagggct ctggatcggg gtccgaaggc ggggtgcagt gtctccctaa
+      301 ttgttaagct caaaagagca gccactcgtt ctcgatcctt agtccatcgc cgtgaggtac
+      361 aagcagtaca cccacggaag gcccggcatt gaagatgcaa gaaatagagc actggggtga
+      421 cgacggcatg ctaaggtaag aaggcaaatt ctggaggact gacttcccca caagcggcgt
+      481 aagctcggat aagattggga taaacggacc acggcggctg gatcttcacc cctttgcacg
+      541 gtatgaaaac ggatcaggat tctcttccac ctattgcacc tgctgagaag agagcgctgg
+      601 ggggacgtta cttatcccaa tcgcgacgtc acggacaaca tcgtgttaca ggtcaggctc
+      661 gaaatcctag gcagctggta tccgacgcgc aagttatcta ccaaataagt taggcgatcg
+      721 aaatcatagg ctgtttagtg cttttcttgg tatcatcctg aacttctgtc acctccgagg
+      781 ccgaagcaac tattatgagg acgactcgat gattgtccgg agatgttgca ccccggcaag
+      841 cctagaaaac cccggtcctt tgagttttaa tctaatagta gaagttctcg gaaatcagag
+      901 ctggagactc ggtgacgtta tagaaatgtt cgcacgaaga gcgcgacatg tcctacttca
+      961 caagatgctt tctaggaggg gatctggatt ctcaagccct acacatggtc cgtggtgtat
+     1021 gttggatcgt agtgctttta ccgactatgt cgcgttaaat tgtctttcat ttctacaatt
+     1081 cggggagcat ggggccatgt gacttaggtt cagaaggtgc gagcgggcgt actacgtttg
+     1141 gtggtcgtgt ataatcagaa gaatcggcga tatccgctag caagcaaagt gtccttgacg
+     1201 cttgtggaaa tccaactatt tcctgcctct caagtgttta gaaaaatatc ccctggagga
+     1261 gatatcgctc ctctcttctg cgaccaacac cagttcaatt ccgcagtgca gcagtcctat
+     1321 tccgcatgga tcacgctgac gagatgcggg gttgagacta ccccaaaaga tatgttgaga
+     1381 taaattacca ggatggataa tctggtaccg gtgcgaaagg gtggttacac cagagtcgcc
+     1441 tgatgagctt atgcgcaatt tcaagtccct atgttttact atgaaagtac gaccgagccg
+     1501 ctagcctgag tcaaatagcg cagaatttgg gtcgtggaga tcgcgcttgt taacctggtc
+     1561 taggcgcatc tgagtcataa cggggttata acgactgtca acgtgtgacc gcatatcctg
+     1621 caaggcgaac aaataacgcc ccgcccaaaa tattacattt aagtagttat ctaactcccg
+     1681 gcatgcgggg catttggggg cagcgtgccc attccgcccc tatgcctgtt tcaacacgca
+     1741 accgtagaga ttggctagga tgggttttca cgagccaact gccacattag acatagaatt
+     1801 ccgataagta taagagatat cagcgaggtt cagggtagtt tggaacgaca gccggttcag
+     1861 aagttcagta tggtcattca tcatccgttg tgttgagtcc tttagatcgt ggctttatca
+     1921 tgcatgtctc ccgccagccc tcaaactatg tcgtcacgcg catgtttaca ttatatggaa
+     1981 caaaacgaga ggtagaagcc aatcactatc cggcaagaga cgctccacct gcgtctatcg
+     2041 tacagtgcta aaatggcagc agatagtgaa acttccgcta agctagcccc tcagggtaca
+     2101 ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt tgtcggggac ctgccgtcac
+     2161 gcttccgagt gtatatccgg atttagttga cgtcatacag aggcactaag aagaataaac
+     2221 gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct cccttgcgcc gttcggcaag
+     2281 cgtccggtgt cgggctgcaa ggaataaatc tttatggacc agaggggctt gtttcctcat
+     2341 atgggtgcgt gcacttatac gattcaaagg tggatatggc cgcataacac gtagccaggc
+     2401 tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg tttttgtttt tcctttacga
+     2461 cacgaaccgc tctaacctgc tctatttcgc cacgttccag tgaacctctt agcctaccgc
+     2521 ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg gagaaatcgt tcaatattag
+     2581 aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc cgtttaacgg ctgccgtggt
+     2641 cataccgtga ggcaccacga ggggatgcta cgcaacatgc gaggtgtaat cagcagggaa
+     2701 gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat atgcataagg tgtcatttat
+     2761 attacaccta cgacactggt accggctcac agccaaatgc acagtctcaa gatagaattc
+     2821 gcaaaaatta ggcttatcgg gcgcttactc tttgttacac ttctggtctg tgagtgacgc
+     2881 cctgtgtccc atcactgcat gtgaggatgc gtgtactgca cctgtgaatt acagacgttt
+     2941 ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc tctatagggt gatctcgaca
+     3001 taccactatg gtttgcgcgt ttcgggtgct tttggcgagg gccaggtacg gcggtgagac
+     3061 agcgtatttt gcgaataggg tattcggacg cacggtgtat agctcttgga aaacgactct
+     3121 tcgacgggcg tgtagaagta gccaagcagt tcggttgtta tcactaaatg cggaccatgt
+     3181 gcagccgttt aggagaggag tctgcaatgg atcagctggt cagattgtac cactcggttg
+     3241 agcctaaggc acttcaggtg ctcggattgt aatgaaccct caggttacgc cgttgcgctg
+     3301 agatcccaca agccataagc aatgagaatc gagcagctat cgaattacgc agcacttgct
+     3361 gatgaactgg gtgcacctaa agcgcccgat aaaacggagg gagtgaggta actactacat
+     3421 tgcgagtagt gcgaggggcc tccgagacta cattagagca gccatgccga atacgacaaa
+     3481 atctatagcc ttgcgaacgt aggggactga tttatggaca acaggaccga aacaagttgg
+     3541 agccacaacg gagctatgga cgttttcact attgatgggt ggcttgcgtc cgcatcccag
+     3601 gtttctctgg ttaattttca tgacgattct ttgtggtacg atccaggcat aagatagggc
+     3661 acctaacccg atactgtgaa cttatatgac ggctgaacat gccctaatag tctgccaaaa
+     3721 gggaaaccta taacggctct aaacgggccc cgggtacgta acagcaatgt tcctgtccac
+     3781 caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat tccgttttac gccccagatc
+     3841 gcagctccct tgacagtgtc agttgaatcc ccattctagg tttcctgata aaactaagta
+     3901 cggggacgca tcagtcgaaa gcaatcacag ataatagata tcttgagcag aaagacgtct
+     3961 tcacgaatca ggagcgagtg tcccctttga aagtgcgggc aacaataggt gtgaggtttc
+     4021 acggttgctt gatcagtagc tgttcactct ctcgcaggcc tacatagtga ggtggtgaga
+     4081 ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc gggcacgcta acaaggacag
+     4141 gaattcgggt cgtcaaataa caatttacgt catcgcatcc ctcaagggta aggcgtgatc
+     4201 tccatctcgg ttcccaattg gtcattgtga tagccacact gcagttaccg aaggcgattt
+     4261 tatactaccc tgataagtgc tcgcagcccc tcctccctaa taatgtaacg acgagcatta
+     4321 acccaggagt atttctcacg ttgctcgtgc ccagccaagg cgatcaacgc agaccggata
+     4381 gcgttagcta gcccacgggt aaaagcgatt gttgtactct ttcatatgaa tacagcactc
+     4441 gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc acactggagg cgatgatcta
+     4501 gcccgtcttt caccccgtac ctttatactc ggccgcgtat ttctccaccg ggagctctgc
+     4561 ctaccaaagc gtcgtacgcc caggaagccg tttcctttat cctccctcat gtctcaacgc
+     4621 gcgagcatcg gagagtacgc gaaatcgact gtctggccaa cactggacag acgcgcgaga
+     4681 cactgataaa cccccatttt cgtggggtta gtaaatcggt ggcttcaaac ggttcgatcg
+     4741 ctcgcacgag cattagtcag gagtatgatt gcgcatcatc tctactccgt actaggttct
+     4801 gtagctcagg atctccgggg ggatcaagct tttatgtccc gcgggattag aagatatcca
+     4861 tccatatgtt tactttgatg cgggtccgag ctctctatga tgctgctttg acaaaatgtg
+     4921 gaaagcctca gcgaccgctc tggggtcaaa gctctacgac acgttgatgc taaacaagtt
+     4981 ggactactaa gcaaatgaag cggaagagat actgagcgct ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/example_genetic_parts_and_backbone/parts/receptor.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,74 @@
+LOCUS       Exported                3022 bp ds-DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA
+ACCESSION   <unknown
+VERSION     .
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+REFERENCE   1  (bases 1 to 3022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..3022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     CDS             523..1222
+                     /label=KanR
+     misc_feature    2023..2522
+                     /label=RepO_2
+                     /label=nonstandard type: rep._origin
+ORIGIN
+        1 attgagagac gcgtctcagg cactttcgct atatggcgac gtgcgaaaaa cgcgatttgg
+       61 ccgaaatctc aaataataat gcaatgtgtt ggctaagctc gggcaaactc aggatgtgac
+      121 ctagtaccct ctgccccgtg agtacccata cccaatcaag ccagcccaat tcgcgatagg
+      181 tacagataag ccttactcgt cccgatcctt gactaaaaca ctcatcctcg atagtacgtg
+      241 ccttgtagag tccgacggcc ataggtaaac gaccagttag tgtcgtaggg tcctccactt
+      301 tagctacgat tgcaactccc ttaccttcgt gccggcgcgc tcctcttgct accatcacgc
+      361 ttcaaatcgg gtggaagacc aactgatgaa tgagggtgca gaccccagtg gagcataata
+      421 cgatgcgccc acgatactct agagccacgc gtcgacgttc gtaagatgtc ccgggcccgt
+      481 gggtggccac atcggccgcc catccttgtg tcttccgata agtactccct ttcaaggact
+      541 ctccgatacc ggcttagaac acgaacggac aacgctttca gcgctgagaa atgacggctg
+      601 cttcaaccag aacgatacag ccttctttgc tagatagcct ctagtgtcag ccaccaagtc
+      661 cgccacctaa tccttcgccg agggtcaaag cttctgacca tccaattgtt aggcactctt
+      721 ggaaccttgc aagtacctga tcatgcagaa aatggacttg cccggagcat attcattata
+      781 agtaccattc acggcaggtt atagtatgcg ttgacgcggg gtgatacggt aatgcaagta
+      841 accatcgggc cgcggtatgc acatagaagg gtgtttgact tggtttctta cagtgcaact
+      901 gcatatgtgg accgccattc caagtgaaag gatacgaagg gaggtttcgg actgctatcc
+      961 agagcatgga aagccttcaa ggtggtgcgc actggaatag tgactcgggg attgtatgtc
+     1021 gagccgcgtc cagtctttcc tatacttatg cgagcaaata gaccgagtgg aacttgattg
+     1081 catcagccga atcacgatga aaactcagct tacaattcgt aagcacttca aatatatgcc
+     1141 cggaaaatcg ccgtccagtg acttgtaata gctccagggt cagtagcgct gccctggccg
+     1201 aaccaggtga cggttacgtg gacctcacag tatcaatgtt gcagtgcgcc accagattaa
+     1261 gctggccgtg tcatggtgaa caaccgtgat aaaagaacgg gagtatgaga gtgccaccca
+     1321 agagtggtac tccaggattc ggaaagggga gggggctttt cctgcttaac aaccttcctc
+     1381 ggcacggtct aagggtctca ctcgtcctaa actctaccat catgcagcta ggcgaaagta
+     1441 taactttagg gtctctcagg atgagctatc tgtaccacgg tgatgagata agtagggggt
+     1501 gcgctagggt cgttcgtgtt ttcatcgtct atagtaccta tttctcgtct tccattagcg
+     1561 catacggcca tctcgcggcg gctacgtcag ccagcgtcaa ccccaagtca ctaatttccg
+     1621 ttattatagg tgtagctcat aacttcttct gccgaccaag ccaaaagctt tgcggcagct
+     1681 gcaaggccac gttaggctct cggacggcag atatttatta ataacaccac tgggttccag
+     1741 ctcttaacgc acttcccttc actggatcac ctgtacgccc ataagctaag cctgaagcca
+     1801 cggcctcaat cgtggacatt actcttagca aatccacatt accatgtcac caatccccga
+     1861 accccgcgcc gacctaaggc ggggtacctc gtgcacggca gcatcgaggg aaatatatta
+     1921 caaaagacgc ggcgatccaa cggttgataa aaacagttcc gtggaaggcg gacgtgtgct
+     1981 tagcgcatgc ttctcaccga gtgacagcac cgattccatc tcgctagcac gccgatgagc
+     2041 ctcgctgtgg gactatggtc cagcctatgc ttaactaggc agaacagaga gtatggtggt
+     2101 cctcggtaag gtcgatttgg tggcactcgc aagatacgcg ggttattagt agagcgcagt
+     2161 cagggcccat cgccagcatt tgcatgctcg ccgtacgcta tccttgtact acggttcctc
+     2221 agtggctata aaggaatgtc acaactccat tagccccttt tgttcagcgc ttagtcatgg
+     2281 tgggactgac tcaccgagac tacatacgga ttgtgcccgc agagacctgc ctttcatgct
+     2341 ggggttttgt aagcagctcc acggggtagt gtcaccatgc cttcgaccta tgcttatgaa
+     2401 acccgaggta atgcggcagg atcccgtgga tcctacgctt agcctgttta agccatcgtt
+     2461 ctcctcggcc cccagccagc gcgtattccg cgcattcctc cgagtgcgta tcgcgcaaac
+     2521 cacaagatac ctctcaacga ctagcggtga accaccaagc ttgacatacg tgccccttcg
+     2581 gaaacgttat tagtggtcct gagtggtacg tcccgagtat acggggcagc gatagtaacg
+     2641 ctacaaatag ctaggcgagg ttgcgatacc tgaatgaata tccaacagtg gcaacgaggc
+     2701 gcttagaaag ggaaactaca taccagttca atccgggatg acttcaaaag ggtatgtttg
+     2761 ttttgaagcg aagctttggt tgtcattcag ttcctagagt ttacggcgct gatatggctc
+     2821 taggagtcca gtgaattcgt cagcataagc cccacatcgt aggaaattgc ccggtcgtcg
+     2881 gtctagcaaa tgctcggtaa actgggagtg tactaacacc atgtcgtggt aacccggtgg
+     2941 accggctact agagacatat ttattcatgc tcagttgaac ctgtttcgag ggggccgagt
+     3001 taacataaag tgattagtca ca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_all_required_parts.txt	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,12 @@
+part_A
+part_B
+part_C
+part_D
+part_E
+part_F
+part_G
+part_H
+part_I
+part_J
+part_K
+part_L
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_constructs_level_1.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+construct,parts
+construct_1,part_A,part_B,part_C,part_D,part_E,part_F
+construct_2,part_A,part_G,part_H,part_I,part_F
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_constructs_level_2.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+construct,parts
+construct_3,construct_1,part_L,part_J,part_K
+construct_4,construct_2,part_L,part_J,part_K
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_simulation_stats.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+cancelled_assemblies: 0
+errored_assemblies: 0
+valid_assemblies: 4
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/2-step-golden_gate_plan_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,5 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,depends_on,enzymes,used_in,parts
+construct_1,construct_1,1,10366,6,,BsaI,construct_3,part_A & part_B & part_C & part_D & part_E & part_F
+construct_2,construct_2,1,6910,5,,BsaI,construct_4,part_A & part_G & part_H & part_I & part_F
+construct_3,construct_3,2,11530,4,construct_1,AarI,,construct_1 & part_L & part_J & part_K
+construct_4,construct_4,2,8074,4,construct_2,AarI,,construct_2 & part_L & part_J & part_K
Binary file test-data/init/2-step-golden_gate_plan_simulation/Report.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/all_construct_records/construct_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,385 @@
+LOCUS       construct_1            10366 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_1
+VERSION     construct_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(223..1038)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    complement(139..179)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    5..8
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    20..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(223..1038)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    189..212
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    51..74
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    84..112
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    27..137
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3347..3377
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1367..1372
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1190..1195
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        1226..1778
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3396
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3192..3239
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_RNA        complement(1229..1336)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1865..1873
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3413..3416
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      1190..1778
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3300..3324
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1345..1350
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      1899..2147
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3397..3401
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3395..3412
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1211..1216
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3168..3191
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3351..3375
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1140..1163
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    5..3416
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3417..3420
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     exon            5421..5618
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     gene            5421..5618
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3421..5618
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     misc_feature    3421..5618
+                     /source="part_B"
+                     /indicates_part=True
+                     /note="From part_B"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        5619..5622
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     CDS             5623..8880
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             8881..9009
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    8091
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    8736
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    7683
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    5623..9011
+                     /source="part_C"
+                     /indicates_part=True
+                     /note="From part_C"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        9012..9015
+                     /label="TTCG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9604..9633
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     CDS             9016..9528
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    9538..9603
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     CDS             9580..9603
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    9016..9636
+                     /source="part_D"
+                     /indicates_part=True
+                     /note="From part_D"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        9637..9640
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     3'UTR           9644..9953
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    9641..9643
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    9641..9953
+                     /source="part_E"
+                     /indicates_part=True
+                     /note="From part_E"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        9954..9957
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9958..10366
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(10255..10275)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    9958..10366
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cgctgtcaat atgcaggtgc tgcaggaatt tgtctccaat cgacttgaga tatcgcaagc
+       61 atgaaattat attagacacg ccagagaact tgggaagcag cactggtagt gatagcaacc
+      121 cgagtacagt aacgagtgag cttctgatca tgagctctcc tacggcgtca atgcgacgaa
+      181 tgcccagcat gcactctcgc tatccatgcc tgctagggtg gcattatgct caggaacagt
+      241 tgtagcttgg atatcgtcta gatgaaatac ctggacactg gttagcgtcg tcaagcacca
+      301 aggacattca cacgctcgcg gtctttcgtc tccctaagcg ttcggcagtc gggcgtgaag
+      361 aggttgtaat cagacggaac aaagcctgaa aaaattccag cgacgtagta ttcatgatcc
+      421 tgtaccatct gtagccgccg cggcgcacga ttgaatgtag gctactaacc ccatccgtgt
+      481 tagcgatgtg agtttctacc gcaacgaatg ctcaagcgaa ccttcttctt tcgtccgcaa
+      541 cccacaagcc gtggttatga cagctaaatt gtcccagaca tccctttatt acacaagagc
+      601 tccagcggaa tacctagtca cagcggtaat gacacaaagc tcttagttag tccagggact
+      661 acttctgtct acagcacatc acactcatta tcagcatcag tgtagagacg gagaacatgg
+      721 gctatcctat accaagatcc gccatctaaa catttgaagt ttcccgtctt ctataactta
+      781 gcactcgacg ctattctgct gagtgcgctt agtctgtagc gacttgcgaa atccataaac
+      841 tgagaattga aagagagtgc ataaccgaaa cctttgtggc atatttccgt tgaaacgtac
+      901 cagaacagcc gtttagtgcg gaacatacag tatcctgata aagcactcaa cccaacagac
+      961 accctatgcc gatagcggga tgctaacaag tatagtcatg atgatttctc ggacagcggg
+     1021 gtttggtaca gctgcaatcc gtgatttaaa ttcggacctc tgcacacacc gacggttacc
+     1081 catatcctct acggctgtag gaagttttac cttggatgtc attctgattt cggcgtatct
+     1141 cacaggatgg tccaacgaaa ctaggcttta gacgagggat gaatgaccga cccccactcg
+     1201 tggcactaac ggacagactt ccctgacggt tattcgacca ttaaagtcag acatgcgggg
+     1261 gtgaataaat tagccaaatt gtgtcgaaga aaagacgtgc ggctggcaca taaggcagtc
+     1321 ttgatcctag tcttgcaggg atgcacgtaa gtcgcctcaa ttaactgcag ccgagctcca
+     1381 ggttaccaaa gaccctagta tgccagggcc taacggttgg agtatattat gggtacgcaa
+     1441 tagtgcggaa gttaacctgg gcaacatcca ggtgagaggt tggacggaag cgacagtaag
+     1501 tggccataga ctgccgagtc gtgttaatga atcgctatac gcccatggag ttgtggggtc
+     1561 gttttatccg agtaggggcc cgctgactac ttcgtccaga caatatgccg tcttcaatag
+     1621 tctacctgag agtcatgccg gcatttccga cgctgagtga aacccgcgta gccaggcgaa
+     1681 atttgcatct tgaaatacca ctgcagatca gccagtaagg cccatataag ggcgctggtg
+     1741 ttctggcgac agataaagtg ttatctaatg taacccgcgg acttttagag gatacttgaa
+     1801 tgcgggcata tcgtcccacc agcgtcacgt ggtcgggcta gcggcagaca aactctgccg
+     1861 atgtttttct ttgccgcgat agcgggctag tcaattcact atccggcgat gaagcataga
+     1921 ttgttatcgc gcttatgcgg aggataatca agtcttggca gaacctgctc gctcatgcac
+     1981 tggtgaggcg tggttatcct aacaaccgcc taggacgaag aatgggctcg gtagggacag
+     2041 ttcgtgcgtt tagcttcgtc ccatcttaat gctgtctgga gggaggctac atgcgaacag
+     2101 aagccgtggg cgaaagttgt tgatccgggt ctaacacgga taagggccat ggtgaacgca
+     2161 tcatgcgata cttcttggta gttcttctaa catgaccgtg ccatagccct taccctttga
+     2221 agaagttaac ctatctgccg tctcctgcac gaatagcgac tggactcggg tattttggat
+     2281 acctcacgaa agcacttcga tcggccgaag catggatatt tcgccggacg ggcccgaata
+     2341 gagagccttg tatgtcggtt agtacaacgc agtcctggag acatctacgc ggatgggcct
+     2401 aggggctgga cttaacattg ggtaacgtac ctggtccaaa gtgaatgcaa agcactttta
+     2461 caaagcgcgg gtccccgtgg gtgtttaggg tagaagattg gcggatgcta cgaacgatcc
+     2521 cgctttgaaa ctatcattac atcgtgtaaa agagacactt aacaaaggcc aataaactgc
+     2581 cagtaagaat cgctcagtgc ggtgctgggg acgctaagta ggggcaacag ccagtgaagg
+     2641 acgtgaccga cctttctcag ataagatatg ctggcgtcta tctaataagc atagtgaaaa
+     2701 accaaccatt tcacttacac gaagtacatt tgcattgcta gtaaagacgc ctaaacagaa
+     2761 gtgcccttgc atgctgtatg tctatagtcc ttagggaagc atcagccctt ctacttattc
+     2821 gaggtctgag aaaccctgga caagctccga attattcaat gtgcctgtct ccgaggttag
+     2881 atagcgctat gctcttaaga gttgcacaga atgaccatcc tggaatgtcc ctggaggggt
+     2941 ctaggtatgc tgatcgaagg gtgctctaag gacttgacgt gcgtccgagg agggtgctgc
+     3001 ctccttcgcc tttagatcca acgcggatca catgcgcgtg agctaatagg atcaccttct
+     3061 gctccgattt ttaccctcct gggtcacttc cgaatgaggt agcgggcgaa atataatgtc
+     3121 tccactcgta ggtgttccct gtatgtgaag ctctatagtg gacaaaggtt tgatgaacta
+     3181 gcccccgtat acgctctcac cgacggacgc gggggtctgt tatttgaagc atcatacatg
+     3241 cgaaggtgcc ttctcagcaa cgaaaggtag tgggagtgta caagttcaat gcgccgccat
+     3301 aggtctgagt atacaagggg atgcccccat ccacaacggg attggctacc cggagagctg
+     3361 gctccgctcc aacaaataat tatattaacc tattggaatt ccacctgcat atcagaggag
+     3421 agcatacggt gctctgggct cacacgtact tcctcttgtc acgcgccttt gtagagcatt
+     3481 agggcggagg tcactgggac ggggatcaga gagcttaaaa tcccaagtag cagtgcctaa
+     3541 ggtgtagaat cttgtgcaga tcttcgtctg gcccgaaacc tgggcctcca caacaatgtc
+     3601 gggtctttta taatttgaaa acatcgcgcc ttacccgcac cgcgcaggac gattagacac
+     3661 agggggtcat gtccatggtt cggggtaagc caaatttaca tcgagtgtgg gcttcattga
+     3721 ggagagggcg ttacgatacc cgttaaatga aaacccggac agtctctaac tgataggcct
+     3781 gataatcgcc aaatgaagtc gcaattagca gtacatgact ggcagatatg tcgccggaga
+     3841 cggtatgggg gacctatcct aggttggcac gcgagcgcga atgacgccta tcttatcccc
+     3901 ctgcacgtga tggtatcgtc ccaactatct tttacctcat caacgttttc ctgcataatc
+     3961 tgcaagatgg agagtccgcg agtgcgggga gtacgagatc acaaatctgc cctgaagaca
+     4021 aagctcgcag gccgtactca ggaaatagca tcgactcaca catatcggga acggcaaaga
+     4081 gtgcatcggc caatgcaaac tattgaacgt ccatgaaatt gtgtcaaact actagtgtgt
+     4141 ggacttgcgt caaggccatg gcgcaatact caaagccccg gtatttatcc cccgcagagt
+     4201 atccgtgcgg atggagttcc acagctcttt ggacatgcaa tgcgtggcgc tacatgctcc
+     4261 gctgatacag aatatctaat gtctcgcctc ttgccgtcga ccctacaact actgcacggg
+     4321 cagagtggac gcgacccctg agcggtgcag aaccttagta taaggcaagg gtggcacggc
+     4381 cgagccgcac ttgctcctac taggccgtgc tcgaagctat tgatgcaagc acagtattcc
+     4441 cgatttgtaa agcaaggtgc ccgtagccat acacccagct actcaccggc caatttcgac
+     4501 cctctctatc tcagacctcc gcatattccc aaactcctgc tcaagtatga aatgaccggc
+     4561 tcctcctaag gcctgcggac atggagtcat gcgtggaatg ccgtgtaggt agggtacaca
+     4621 cagccttacc atgtagggca ataaattata gactactgac attgattcct tgagggcccg
+     4681 ttcacttgtg ggggaaccag gaaggcgccg atagtcatca cttaaacaca tgcgacgcat
+     4741 ccatttcaag aaagacacgc tacgggtcta caccgcctat agttctaatt tgggccccgg
+     4801 tacgcacatc gatgtactct ccattacagc atagcacatc agcggcccta gttagcgctt
+     4861 ctttttgttc caacattcaa tagcggggac tgcattatcc tcaccctatt tgttgcatag
+     4921 gtatttggcc gtatacttgg gaaagagcaa ccacgggagt gcactagaaa ctgattcacc
+     4981 catgttataa cgcgttgctc gcaagtcgta ctgtggccac gcacaggtca ggcaatcgca
+     5041 accatgtctt agcagtttgt aagaagacct ttaaacatgt acctcacagc aatctcggaa
+     5101 cttttaattt tcctgagtca atgacatgct agctccgtcc acttgtaatc accgtcataa
+     5161 cacagttagc ctgcaaaagg gcgtgtacac cttgccactt taaagctgac cgaataacct
+     5221 acctacagga gatgcttagt gccacggaat gatctcgcaa tgcttagtct tacacccagt
+     5281 gaatcaaccc aagacctcgc cgactgaacg gtattgagtc caatcccgag aggcaattta
+     5341 tggccgttag tgacagtcgg tcgctgatag aataaggcag actcgtctta agcgggctgc
+     5401 tttaagagaa aatggagccc tgacgaagaa gtggatgaac caggttttga caacgtccca
+     5461 tattggtaat gtaggctcgt tatcaagaga taggtttaga aggctcaatg ctcgacgtaa
+     5521 aagaagtctt aagctctatg agccagtgat gagagctaat tatagggcgc attcgttggg
+     5581 gtaaggttgc gaattgtcat ttaactaaaa ccgacggcaa tggtttcacc ggagctgaga
+     5641 tcgcattaaa gtcacactac gaattatttg tccccgcggc tccagagaca aatttctagg
+     5701 agtgggttca tggagaaccg tgacaagcat ggtagcttca aatagcgtca tcggatctta
+     5761 aagtgattgt gacatatatg ggattgcgcg tctctcttac acaagctagt gtgcgcgagg
+     5821 tgctgaacac ctattacgtc aactcccggg atcccggcgg gttacagaga cataagcagg
+     5881 gtgtccatca ttaacttcga tgttgagccc gtgccctgat caaacacctc tcgtagtagt
+     5941 gggtgccggc cgtgtattat tttgggggag aggatgcgcc ctaagcaatt tctttccatc
+     6001 ggccagccat tcgacgccgg cacgcaagtt gttgcgggca ctgttgcagt tcccgtacta
+     6061 gagtctcaag tctagaggta ccagcatcag gaagatgggt acttcgtgtg gatcttctcc
+     6121 tgaacctgaa acctgaagag ctaaagcgcg tcgcgctgcc atacgataag tcgctctcat
+     6181 ttccggaaga cgtcgttggg tgatggcgaa caatcgcgaa acgaaaatcg cggtcggtat
+     6241 gttgattcaa gacgggctac gggcgggtta ctaacaggtg cgcagaaatg tgatgggtca
+     6301 cttgaccatg aactttcgcg ccgtcgcttc tgtggactgg ccggctccct gatagtgcac
+     6361 tagcccgttg atatgcccat taccatttgg cggcgcagtg tgccagcggg attaagatgc
+     6421 gtggcgtaca actatccgca ctttgctgac gcacaaaggc aactgatgga cagccttcgg
+     6481 gcattcgact ggttggctga gttcgcctgc ctattaatat gcttgtggaa attgatttac
+     6541 agcgcctact tctacttagg tgtacctatt tacggcacag ggataaaggc tgacagaaaa
+     6601 gtcctggaca ggtcataggt agttgtcaga cctacaatgg tataacttga gagtcctgta
+     6661 ccgcacatgc ggttgtagct agatgtccag aagaccgtag ctagcgacga gtgggttgca
+     6721 cgcgcatttt gggaaggggc tgcgcgaggg tggggtcacg ggttattcca tttctaaatg
+     6781 ctaaaccagc agttgcttta gttctgacct agcaggcatg tcatatgtat ggctagatta
+     6841 ttagtacaat gcaggactaa gaaagcctga gacttaaatg cgttggtttt tcagccgacg
+     6901 ggccgggagg gcagatggcc gaatgcgcac tgaggagtgc attgcgaggg aataggcgga
+     6961 ccaccaggtc ccctcacata ctgtggataa acctacccag ggacaactca cgccatcatt
+     7021 ttcaagagta gcactacttt ccactaagta cggtttgtcg agagccggtg gcaccgtgcg
+     7081 acgagcttgt gggcactagg cgaaccgggt tatataggac tgccttgcgg tgcgggaata
+     7141 ctttaccccg tggagaggcc ataaaagctt acatttattg tagccgctag cggtttcgac
+     7201 gcgctcaagt ggggctttat cttagagtat caaataatgc cctctcagct tcatcttgat
+     7261 ttttgtgttt ggggtagtgt atccgatggg tcaccttctt gaccttgggg agctccatcc
+     7321 atcgtaccaa tactccgttt ctttgtgttg cctaccgagt aatcgaatac cgcacgaggg
+     7381 ctagaatcta atttaaggtg ggtcttatcc ctgttgtttg gacctaacgc tgtaacaaat
+     7441 cacttccgcg acgggtgtca ttacgtcttc tatccgccac cggttcaaca gtgcgtcgaa
+     7501 tgccaagtcc ctattacccg cattgtaaag ccattacaat acctccggtg atataattga
+     7561 ttgccggttg gcaagggatc atctgtacgg gccgcgattg attgctgata aggaacggcg
+     7621 gtaaggaacg tatcgcgtac gaggttgtac actggaaccg ctaaacaagc ggtatcgcta
+     7681 aattaccggc gattatatca agggaatctt aggtagcacg aagccctacg ccctggaaac
+     7741 aggatcggcg cgaggccgtg gacatattag cctacgtttt tttacaccca gatttccgac
+     7801 gatgtccaca gctaaggcta tcctaaaccg caaacacata taaccgcagt ataaagcacg
+     7861 ggatgattcc ttggccatct tgcaagcagt gcaaggcaat tctggtgata ggggcaaggc
+     7921 agtgaaccga gtggtcagcg tattgtgacc ctgcaattgt catggcagat aattgtttat
+     7981 gaacctgttt cacacaccca tcccttggat ctccagcgta gttactaata gtacgatttc
+     8041 ctggtgttct gtcacccgcc ttgctgcctt cacgcctgcc ccacgttttg ctgtccactg
+     8101 aatatcgctc taattaatag gtgtcacact gtatcaggta agtccattcc gggtgctatt
+     8161 ggatcattcc tgagatgtac caccgatccc ataggcgtta ggtcttacat ctggagtgaa
+     8221 aaagatcagc atcgaactat aggtagataa aggtcatgac tgttaacaga gaatcgttcc
+     8281 tatcgcaacc ttcactaact ggaaggcacc cccacacttt gattagtaag cccctagcga
+     8341 atgtagtgat ccaagaacat cgagtatact ttagctctcg gttcaggcat gtatgcaatc
+     8401 gaccaccctt ccgttcagag tactctcaac cagcagattt ctaaacttta tagcctccgc
+     8461 ccactaaaat tgccttatct caggttgact cttggatgta gctgtaatct aacatacaca
+     8521 tggagctgcg gcaaattatc gtacgtccaa accaccaccg gatcagtggc gatactattc
+     8581 tcgcaaaaaa gccatccagc attggaacaa gtgttaacca gcatttttct gagtcccccg
+     8641 gaaagaaagt tgactacact acatccataa atgctagagt gtggattcgc catgtgttac
+     8701 aacggtcaac cgaaaggtta gcatgatact tcgttgttca atcggacgtt cgagcgccct
+     8761 ccctgtttat cacttgatcc cccttttgaa acatgtgcgc tgcgacgcag ggctgggaga
+     8821 gtcaccggaa accaaaagcc cgacctcgga cgtgtagggc cctccgtttg ccatcaatgg
+     8881 cgatgtagga ttctctttta atacaacgtt cactcaatta acgtcttggt ataagcgtcg
+     8941 aacgtgaccg aggttgacac cagtgtcacg gctgcgccgg ggtttgttgc tccgcgtgta
+     9001 cagggtattg gttcgatggt gcctcctcta cgtagatcta ctggataacc gtccccaata
+     9061 tccgcttccc aacgtagatt gccgacaggc ataagcttcg ggggcgcaaa ggccgacgtc
+     9121 cgcattgcag tgtagctttg tgagcaggaa gtgtgatagt ctttcgatta ttaaagtctg
+     9181 agctgaatga aaaaaggtcc aacgaatgga ggacgcgaag acatgggtgt ctcttatggc
+     9241 ccgagcggga gtaatggcgg ttcgtacata aaggctgaaa ggattctggc gttagctgtc
+     9301 ttacgttgga ttggcccttc aaattatcga tgttagctga ttcggtgtac cgggcgagga
+     9361 aagcgctctc agaacaactt catatacgag gttcgactat aatggtctaa gctcctgggc
+     9421 tagtctcaag aagcgggtac ctttagtagc acgtatcgac ggcaaagcaa agaataaaaa
+     9481 cttggctttg catcgtgcaa agatttctaa ctaggttgtt taagggctgg tatctatgtc
+     9541 ccgctataac agcgcgccta cagtagaagt ttaaccatga catacctttg aagtgttcgt
+     9601 atcacacaca aggaaggagc atgtggacac cactgagctt tgatcagcac gcgtctcaga
+     9661 gtttcagggg gacccaaatt actggtcctc aattgggacg cgaccgcatc tccccacgaa
+     9721 agcttatggg gattgcccac tgcccagctt caaatctgaa ggttcggctt attgacaggg
+     9781 tctaacacgc agctcaactg ctcgaggtta gaggcgtaat gacgggcccc gatagccttc
+     9841 tacgattacg tccagcagga accccacagc ttttccctac gtctaacacc gtgaaagcaa
+     9901 aactgtctgc ccttttacat ggtctttaag gaatctctgc acttatgtta ttaggtaagc
+     9961 tcccataaga gcaccacttc gtgtaccttg ctaactccct tcatccccac ccgcgaaaac
+    10021 ttaagacgtc acccctgtta ttatcccgtg cactcctaaa gtgcgatggg caagaacgca
+    10081 aacaattgtc tgagatttat atgggcggcg gacatagtca gagagcctta tataatctcc
+    10141 cacgtcttgc cagtccgagt tatgagaaac ccgggaccga tgacgctatt acggtcgccc
+    10201 agcgaggttc aacagagcga ggcataggag tcattacgcg tgttagcttc aacatgcgtg
+    10261 gaagtgaaac ggatctataa aacggcgtgg agtcatcagc ttgagcagat ctaacttact
+    10321 cgccacgcgc gcaaatcgtc tttcgctgtc cacgttatac gtaact
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/all_construct_records/construct_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,279 @@
+LOCUS       construct_2             6910 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_2
+VERSION     construct_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(223..1038)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    complement(139..179)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    5..8
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    20..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(223..1038)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    189..212
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    51..74
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    84..112
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    27..137
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3347..3377
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1367..1372
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1190..1195
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        1226..1778
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3396
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3192..3239
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_RNA        complement(1229..1336)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1865..1873
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3413..3416
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      1190..1778
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3300..3324
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1345..1350
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      1899..2147
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3397..3401
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3395..3412
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1211..1216
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3168..3191
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3351..3375
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1140..1163
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    5..3416
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3417..3420
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3421..4505
+                     /source="part_G"
+                     /indicates_part=True
+                     /note="From part_G"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        4506..4509
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    4510..6158
+                     /source="part_H"
+                     /indicates_part=True
+                     /note="From part_H"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6159..6162
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6163..6497
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    6163..6497
+                     /source="part_I"
+                     /indicates_part=True
+                     /note="From part_I"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6498..6501
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6502..6910
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(6799..6819)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    6502..6910
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cgctgtcaat atgcaggtgc tgcaggaatt tgtctccaat cgacttgaga tatcgcaagc
+       61 atgaaattat attagacacg ccagagaact tgggaagcag cactggtagt gatagcaacc
+      121 cgagtacagt aacgagtgag cttctgatca tgagctctcc tacggcgtca atgcgacgaa
+      181 tgcccagcat gcactctcgc tatccatgcc tgctagggtg gcattatgct caggaacagt
+      241 tgtagcttgg atatcgtcta gatgaaatac ctggacactg gttagcgtcg tcaagcacca
+      301 aggacattca cacgctcgcg gtctttcgtc tccctaagcg ttcggcagtc gggcgtgaag
+      361 aggttgtaat cagacggaac aaagcctgaa aaaattccag cgacgtagta ttcatgatcc
+      421 tgtaccatct gtagccgccg cggcgcacga ttgaatgtag gctactaacc ccatccgtgt
+      481 tagcgatgtg agtttctacc gcaacgaatg ctcaagcgaa ccttcttctt tcgtccgcaa
+      541 cccacaagcc gtggttatga cagctaaatt gtcccagaca tccctttatt acacaagagc
+      601 tccagcggaa tacctagtca cagcggtaat gacacaaagc tcttagttag tccagggact
+      661 acttctgtct acagcacatc acactcatta tcagcatcag tgtagagacg gagaacatgg
+      721 gctatcctat accaagatcc gccatctaaa catttgaagt ttcccgtctt ctataactta
+      781 gcactcgacg ctattctgct gagtgcgctt agtctgtagc gacttgcgaa atccataaac
+      841 tgagaattga aagagagtgc ataaccgaaa cctttgtggc atatttccgt tgaaacgtac
+      901 cagaacagcc gtttagtgcg gaacatacag tatcctgata aagcactcaa cccaacagac
+      961 accctatgcc gatagcggga tgctaacaag tatagtcatg atgatttctc ggacagcggg
+     1021 gtttggtaca gctgcaatcc gtgatttaaa ttcggacctc tgcacacacc gacggttacc
+     1081 catatcctct acggctgtag gaagttttac cttggatgtc attctgattt cggcgtatct
+     1141 cacaggatgg tccaacgaaa ctaggcttta gacgagggat gaatgaccga cccccactcg
+     1201 tggcactaac ggacagactt ccctgacggt tattcgacca ttaaagtcag acatgcgggg
+     1261 gtgaataaat tagccaaatt gtgtcgaaga aaagacgtgc ggctggcaca taaggcagtc
+     1321 ttgatcctag tcttgcaggg atgcacgtaa gtcgcctcaa ttaactgcag ccgagctcca
+     1381 ggttaccaaa gaccctagta tgccagggcc taacggttgg agtatattat gggtacgcaa
+     1441 tagtgcggaa gttaacctgg gcaacatcca ggtgagaggt tggacggaag cgacagtaag
+     1501 tggccataga ctgccgagtc gtgttaatga atcgctatac gcccatggag ttgtggggtc
+     1561 gttttatccg agtaggggcc cgctgactac ttcgtccaga caatatgccg tcttcaatag
+     1621 tctacctgag agtcatgccg gcatttccga cgctgagtga aacccgcgta gccaggcgaa
+     1681 atttgcatct tgaaatacca ctgcagatca gccagtaagg cccatataag ggcgctggtg
+     1741 ttctggcgac agataaagtg ttatctaatg taacccgcgg acttttagag gatacttgaa
+     1801 tgcgggcata tcgtcccacc agcgtcacgt ggtcgggcta gcggcagaca aactctgccg
+     1861 atgtttttct ttgccgcgat agcgggctag tcaattcact atccggcgat gaagcataga
+     1921 ttgttatcgc gcttatgcgg aggataatca agtcttggca gaacctgctc gctcatgcac
+     1981 tggtgaggcg tggttatcct aacaaccgcc taggacgaag aatgggctcg gtagggacag
+     2041 ttcgtgcgtt tagcttcgtc ccatcttaat gctgtctgga gggaggctac atgcgaacag
+     2101 aagccgtggg cgaaagttgt tgatccgggt ctaacacgga taagggccat ggtgaacgca
+     2161 tcatgcgata cttcttggta gttcttctaa catgaccgtg ccatagccct taccctttga
+     2221 agaagttaac ctatctgccg tctcctgcac gaatagcgac tggactcggg tattttggat
+     2281 acctcacgaa agcacttcga tcggccgaag catggatatt tcgccggacg ggcccgaata
+     2341 gagagccttg tatgtcggtt agtacaacgc agtcctggag acatctacgc ggatgggcct
+     2401 aggggctgga cttaacattg ggtaacgtac ctggtccaaa gtgaatgcaa agcactttta
+     2461 caaagcgcgg gtccccgtgg gtgtttaggg tagaagattg gcggatgcta cgaacgatcc
+     2521 cgctttgaaa ctatcattac atcgtgtaaa agagacactt aacaaaggcc aataaactgc
+     2581 cagtaagaat cgctcagtgc ggtgctgggg acgctaagta ggggcaacag ccagtgaagg
+     2641 acgtgaccga cctttctcag ataagatatg ctggcgtcta tctaataagc atagtgaaaa
+     2701 accaaccatt tcacttacac gaagtacatt tgcattgcta gtaaagacgc ctaaacagaa
+     2761 gtgcccttgc atgctgtatg tctatagtcc ttagggaagc atcagccctt ctacttattc
+     2821 gaggtctgag aaaccctgga caagctccga attattcaat gtgcctgtct ccgaggttag
+     2881 atagcgctat gctcttaaga gttgcacaga atgaccatcc tggaatgtcc ctggaggggt
+     2941 ctaggtatgc tgatcgaagg gtgctctaag gacttgacgt gcgtccgagg agggtgctgc
+     3001 ctccttcgcc tttagatcca acgcggatca catgcgcgtg agctaatagg atcaccttct
+     3061 gctccgattt ttaccctcct gggtcacttc cgaatgaggt agcgggcgaa atataatgtc
+     3121 tccactcgta ggtgttccct gtatgtgaag ctctatagtg gacaaaggtt tgatgaacta
+     3181 gcccccgtat acgctctcac cgacggacgc gggggtctgt tatttgaagc atcatacatg
+     3241 cgaaggtgcc ttctcagcaa cgaaaggtag tgggagtgta caagttcaat gcgccgccat
+     3301 aggtctgagt atacaagggg atgcccccat ccacaacggg attggctacc cggagagctg
+     3361 gctccgctcc aacaaataat tatattaacc tattggaatt ccacctgcat atcagaggag
+     3421 gaacttctat gggacgaaag atgcgcagct cgacaaatct caaattggaa accgtctaag
+     3481 gtctttgagc ccacgctagg ccaccgaata gttgcgagct cgtgggcaat tgctggctag
+     3541 cggtttgtat cgtatacgta acaagagatt gcgccggatt cattcgtgtg gggtgctttc
+     3601 acatcggaat actcaagagt gggggtttgc gctttaatat gacggcctca tgcaccccaa
+     3661 aaataagagc gccaatttca tcgaccacat tccggacaat tctgacttcc ctgtcggatc
+     3721 gaccctcgct cacaactcct agaactccaa gacggtagga cgtcagccga aaaggaggag
+     3781 tgacgacggg ccctcctagc tgaagcaatg gggggcgtcg accctagcct ggtgtgggac
+     3841 ttcggagggt cgggcgtgtg gccattcctg cacgaggggc ccttgcagta tcgaactttg
+     3901 acgagaaagt ggggggcgac ctataaacat agcggagttc aatactcctg caagtgcatg
+     3961 atgacgttca gcgttggcac atcgaacgcg tcgctacact tgctcaccgg aaggcaaaat
+     4021 agaccggcag ctggcccgca cggacgtcta gactcctacg ctgtcaaatg cacgatgact
+     4081 attagcatgc ggaattcgag gcggccggta catcgagaca cgctggtctt aatacctgtg
+     4141 ttatgtcaaa acaagtgtct cggcggcttt gtactacgct gtgaatgcgc atgatgttgc
+     4201 gagaagctga acgttggtag cagtctacaa cagaaccgac gagctacgga cgggttacag
+     4261 caggatcccc tcttaaggca ttattcgacg actccaggtt ctaaccgatc agtaattgcc
+     4321 tcggatggtc gtacgtgtta accgagacag caaggcacca catagacaac tgcatagggc
+     4381 gcctacaggt ccacaatcag ggtggcccaa gatcctcaaa gacttgttgc agtctctgct
+     4441 tattccgttt aacacgttgt gtgagctcta gcttactacc tcatcggtgt cgggagtgat
+     4501 ttaggaatgg aagacgcgtt tagtcttcgg cccccagacg gcaccggcag agccactgcc
+     4561 aatgcctttt acgctgaact cttcgacttt ggcatgtgcg actgactata cgccgatggc
+     4621 cctaccctgc agcggaaagg cacagggcca aaaacagtgg aagcgcaccg ctagagcttt
+     4681 actaaatcct ttagggtgaa ccggtgttca gtcaacagaa acatatgact agtccttaat
+     4741 ggcactacta aaggcggccc atctcttttg taggtcacgt ctcatcgttt agcaagcgtc
+     4801 cgccatccga ggagtatcct agtacgtgag agggtgtttt acctcatcac atggtttttg
+     4861 gctagatgtg gcagatgcca gctgatacct tacaacccgc tataacggtt tctggatcga
+     4921 cgatacaacc tgcttcggca tatcataatg gcggcctcat aggacttcca atcatggtta
+     4981 tgcgagtttg atgtgttgaa gattgtgagg ggaaaccttt ttccgagtac gttgaatctg
+     5041 cgactgatgg tgaacaactc atcgagaggg atgtgcgggc agtctccttg atgcgcgaaa
+     5101 aggagtcgcg accgcgtgtt cgtgacgcac ttgatgctag accgtagggg ctcattatct
+     5161 cctgaaacag tagctagctt ttggtgtccg agtcagctta ggcacagtaa ttgaaaagaa
+     5221 ggaaatgcgt gaaaactaaa cgtagacact ccttgctaag aattccctgg tctttttcga
+     5281 gcatagacta ccgtaggtaa aaggcttgtc gtgtcacaaa tagacttgat ctgttcggca
+     5341 tatacacatc ctactgcttc agtaaccaag gacgattctc cggccattgg actgtgggac
+     5401 cacccgcgtt caaacggaat cctctacgaa cggttaagaa aggagcccac tgcttgcgga
+     5461 gacatatcgt tgctgagtgg tacaccggtg agtcaaaaag tactgacact actggtggac
+     5521 tctcgggtac gatgtgtggg gtattggcat actatggcgc taagcgtgga atagtgtttc
+     5581 caatagccct ttacctaaga agcattctga cacatgggtt ggacttttac acagacctat
+     5641 aactcgtatc cggcctggtg atgtatgtcc gcttatcact gaatgcagga ttccgccaat
+     5701 tccgctcgcg ggttctcgga caacgggcca tggagatgga tcaatgagcc atgttgatta
+     5761 ccatttcact acacacggtt agtcaattcc ggagatcata attcgacaat tgaatatgcg
+     5821 tgatacgctt tctgttacca ggatcgttgc taattagttt ccaatgtcac agtgttgggc
+     5881 ggcgaggtat cacggcgctc tgggtagaat ggcggtgcct gactggacct cataactggt
+     5941 aacataccta tgaccaaagg aggtcagaca ccgatgagtc ggtgacatgg gcggtcacag
+     6001 cgtgccctgc atagtaatac agctcgtttc tagacatttg tcctaattcg ccacacaagt
+     6061 acgagagcgg gggtaaccca tcaccatcgt gcccgtaggt acctaatctt catcgagcgc
+     6121 tattgttaaa gtggactcag ggatcggcat ctcgtgtagc ttttattatc cggcatgcat
+     6181 gcggcgttgc atcgcttcat cgtcatcgac atatcgttag cgggacttat cagggtccca
+     6241 tcacggctgt gacagctgtt cataagtgta atagcagtca ccccaccaaa tgcaagactg
+     6301 ttcccaaact aagtgctagg gaggttggct acctatcggc gtggcagttg accgggtttt
+     6361 tcttagtacc tgccttccaa tctccgataa aagcaagatg acttcctgct tgcgctaaag
+     6421 tctgaattcg ctaagggggc agattcatta ccagagactg ccaaagtcaa ccgccgaacg
+     6481 atactggaat atatggaggt aagctcccat aagagcacca cttcgtgtac cttgctaact
+     6541 cccttcatcc ccacccgcga aaacttaaga cgtcacccct gttattatcc cgtgcactcc
+     6601 taaagtgcga tgggcaagaa cgcaaacaat tgtctgagat ttatatgggc ggcggacata
+     6661 gtcagagagc cttatataat ctcccacgtc ttgccagtcc gagttatgag aaacccggga
+     6721 ccgatgacgc tattacggtc gcccagcgag gttcaacaga gcgaggcata ggagtcatta
+     6781 cgcgtgttag cttcaacatg cgtggaagtg aaacggatct ataaaacggc gtggagtcat
+     6841 cagcttgagc agatctaact tactcgccac gcgcgcaaat cgtctttcgc tgtccacgtt
+     6901 atacgtaact
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/all_construct_records/construct_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,457 @@
+LOCUS       construct_3            11530 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_3
+VERSION     construct_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CAGA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     homology        5..8
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     exon            2009..2206
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     gene            2009..2206
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    9..2206
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     misc_feature    9..2206
+                     /source="part_B"
+                     /indicates_part=True
+                     /note="From part_B"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        2207..2210
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     CDS             2211..5468
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             5469..5597
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    4679
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    5324
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    4271
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    2211..5599
+                     /source="part_C"
+                     /indicates_part=True
+                     /note="From part_C"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        5600..5603
+                     /label="TTCG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6192..6221
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     CDS             5604..6116
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    6126..6191
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     CDS             6168..6191
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    5604..6224
+                     /source="part_D"
+                     /indicates_part=True
+                     /note="From part_D"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6225..6228
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     3'UTR           6232..6541
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    6229..6231
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    6229..6541
+                     /source="part_E"
+                     /indicates_part=True
+                     /note="From part_E"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6542..6545
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6546..6954
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(6843..6863)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    6546..6954
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6955..6958
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3420^3421
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    10374^10375
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    5..6958
+                     /source="construct_1"
+                     /indicates_part=True
+                     /note="From construct_1"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6959..6962
+                     /label="GTCA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6963..6966
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    6963..7004
+                     /source="part_L"
+                     /indicates_part=True
+                     /note="From part_L"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        7005..7008
+                     /label="ACCC"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     CDS             complement(7202..7993)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     CDS             complement(7202..8107)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    7073..7101
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      8418..8423
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    7178..7201
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      8396..8401
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      8241..8246
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        8277..8829
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    7016..7126
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        complement(8280..8387)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    8916..8924
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    complement(7128..7168)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    8191..8214
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      8262..8267
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            complement(7202..8107)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      8241..8829
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    7040..7063
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    7009..7014
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    10219..10242
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    10398..10428
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             9199..10218
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     gene            9199..10218
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    10441..10458
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    10351..10375
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    10402..10426
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    10243..10290
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    10446..10451
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      10441..10443
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    7009..10458
+                     /source="part_J"
+                     /indicates_part=True
+                     /note="From part_J"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        10459..10462
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     promoter        10539..10717
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    11527..11530
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     terminator      11274..11526
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             10719..11269
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    10463..11530
+                     /source="part_K"
+                     /indicates_part=True
+                     /note="From part_K"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cagaggagag catacggtgc tctgggctca cacgtacttc ctcttgtcac gcgcctttgt
+       61 agagcattag ggcggaggtc actgggacgg ggatcagaga gcttaaaatc ccaagtagca
+      121 gtgcctaagg tgtagaatct tgtgcagatc ttcgtctggc ccgaaacctg ggcctccaca
+      181 acaatgtcgg gtcttttata atttgaaaac atcgcgcctt acccgcaccg cgcaggacga
+      241 ttagacacag ggggtcatgt ccatggttcg gggtaagcca aatttacatc gagtgtgggc
+      301 ttcattgagg agagggcgtt acgatacccg ttaaatgaaa acccggacag tctctaactg
+      361 ataggcctga taatcgccaa atgaagtcgc aattagcagt acatgactgg cagatatgtc
+      421 gccggagacg gtatggggga cctatcctag gttggcacgc gagcgcgaat gacgcctatc
+      481 ttatccccct gcacgtgatg gtatcgtccc aactatcttt tacctcatca acgttttcct
+      541 gcataatctg caagatggag agtccgcgag tgcggggagt acgagatcac aaatctgccc
+      601 tgaagacaaa gctcgcaggc cgtactcagg aaatagcatc gactcacaca tatcgggaac
+      661 ggcaaagagt gcatcggcca atgcaaacta ttgaacgtcc atgaaattgt gtcaaactac
+      721 tagtgtgtgg acttgcgtca aggccatggc gcaatactca aagccccggt atttatcccc
+      781 cgcagagtat ccgtgcggat ggagttccac agctctttgg acatgcaatg cgtggcgcta
+      841 catgctccgc tgatacagaa tatctaatgt ctcgcctctt gccgtcgacc ctacaactac
+      901 tgcacgggca gagtggacgc gacccctgag cggtgcagaa ccttagtata aggcaagggt
+      961 ggcacggccg agccgcactt gctcctacta ggccgtgctc gaagctattg atgcaagcac
+     1021 agtattcccg atttgtaaag caaggtgccc gtagccatac acccagctac tcaccggcca
+     1081 atttcgaccc tctctatctc agacctccgc atattcccaa actcctgctc aagtatgaaa
+     1141 tgaccggctc ctcctaaggc ctgcggacat ggagtcatgc gtggaatgcc gtgtaggtag
+     1201 ggtacacaca gccttaccat gtagggcaat aaattataga ctactgacat tgattccttg
+     1261 agggcccgtt cacttgtggg ggaaccagga aggcgccgat agtcatcact taaacacatg
+     1321 cgacgcatcc atttcaagaa agacacgcta cgggtctaca ccgcctatag ttctaatttg
+     1381 ggccccggta cgcacatcga tgtactctcc attacagcat agcacatcag cggccctagt
+     1441 tagcgcttct ttttgttcca acattcaata gcggggactg cattatcctc accctatttg
+     1501 ttgcataggt atttggccgt atacttggga aagagcaacc acgggagtgc actagaaact
+     1561 gattcaccca tgttataacg cgttgctcgc aagtcgtact gtggccacgc acaggtcagg
+     1621 caatcgcaac catgtcttag cagtttgtaa gaagaccttt aaacatgtac ctcacagcaa
+     1681 tctcggaact tttaattttc ctgagtcaat gacatgctag ctccgtccac ttgtaatcac
+     1741 cgtcataaca cagttagcct gcaaaagggc gtgtacacct tgccacttta aagctgaccg
+     1801 aataacctac ctacaggaga tgcttagtgc cacggaatga tctcgcaatg cttagtctta
+     1861 cacccagtga atcaacccaa gacctcgccg actgaacggt attgagtcca atcccgagag
+     1921 gcaatttatg gccgttagtg acagtcggtc gctgatagaa taaggcagac tcgtcttaag
+     1981 cgggctgctt taagagaaaa tggagccctg acgaagaagt ggatgaacca ggttttgaca
+     2041 acgtcccata ttggtaatgt aggctcgtta tcaagagata ggtttagaag gctcaatgct
+     2101 cgacgtaaaa gaagtcttaa gctctatgag ccagtgatga gagctaatta tagggcgcat
+     2161 tcgttggggt aaggttgcga attgtcattt aactaaaacc gacggcaatg gtttcaccgg
+     2221 agctgagatc gcattaaagt cacactacga attatttgtc cccgcggctc cagagacaaa
+     2281 tttctaggag tgggttcatg gagaaccgtg acaagcatgg tagcttcaaa tagcgtcatc
+     2341 ggatcttaaa gtgattgtga catatatggg attgcgcgtc tctcttacac aagctagtgt
+     2401 gcgcgaggtg ctgaacacct attacgtcaa ctcccgggat cccggcgggt tacagagaca
+     2461 taagcagggt gtccatcatt aacttcgatg ttgagcccgt gccctgatca aacacctctc
+     2521 gtagtagtgg gtgccggccg tgtattattt tgggggagag gatgcgccct aagcaatttc
+     2581 tttccatcgg ccagccattc gacgccggca cgcaagttgt tgcgggcact gttgcagttc
+     2641 ccgtactaga gtctcaagtc tagaggtacc agcatcagga agatgggtac ttcgtgtgga
+     2701 tcttctcctg aacctgaaac ctgaagagct aaagcgcgtc gcgctgccat acgataagtc
+     2761 gctctcattt ccggaagacg tcgttgggtg atggcgaaca atcgcgaaac gaaaatcgcg
+     2821 gtcggtatgt tgattcaaga cgggctacgg gcgggttact aacaggtgcg cagaaatgtg
+     2881 atgggtcact tgaccatgaa ctttcgcgcc gtcgcttctg tggactggcc ggctccctga
+     2941 tagtgcacta gcccgttgat atgcccatta ccatttggcg gcgcagtgtg ccagcgggat
+     3001 taagatgcgt ggcgtacaac tatccgcact ttgctgacgc acaaaggcaa ctgatggaca
+     3061 gccttcgggc attcgactgg ttggctgagt tcgcctgcct attaatatgc ttgtggaaat
+     3121 tgatttacag cgcctacttc tacttaggtg tacctattta cggcacaggg ataaaggctg
+     3181 acagaaaagt cctggacagg tcataggtag ttgtcagacc tacaatggta taacttgaga
+     3241 gtcctgtacc gcacatgcgg ttgtagctag atgtccagaa gaccgtagct agcgacgagt
+     3301 gggttgcacg cgcattttgg gaaggggctg cgcgagggtg gggtcacggg ttattccatt
+     3361 tctaaatgct aaaccagcag ttgctttagt tctgacctag caggcatgtc atatgtatgg
+     3421 ctagattatt agtacaatgc aggactaaga aagcctgaga cttaaatgcg ttggtttttc
+     3481 agccgacggg ccgggagggc agatggccga atgcgcactg aggagtgcat tgcgagggaa
+     3541 taggcggacc accaggtccc ctcacatact gtggataaac ctacccaggg acaactcacg
+     3601 ccatcatttt caagagtagc actactttcc actaagtacg gtttgtcgag agccggtggc
+     3661 accgtgcgac gagcttgtgg gcactaggcg aaccgggtta tataggactg ccttgcggtg
+     3721 cgggaatact ttaccccgtg gagaggccat aaaagcttac atttattgta gccgctagcg
+     3781 gtttcgacgc gctcaagtgg ggctttatct tagagtatca aataatgccc tctcagcttc
+     3841 atcttgattt ttgtgtttgg ggtagtgtat ccgatgggtc accttcttga ccttggggag
+     3901 ctccatccat cgtaccaata ctccgtttct ttgtgttgcc taccgagtaa tcgaataccg
+     3961 cacgagggct agaatctaat ttaaggtggg tcttatccct gttgtttgga cctaacgctg
+     4021 taacaaatca cttccgcgac gggtgtcatt acgtcttcta tccgccaccg gttcaacagt
+     4081 gcgtcgaatg ccaagtccct attacccgca ttgtaaagcc attacaatac ctccggtgat
+     4141 ataattgatt gccggttggc aagggatcat ctgtacgggc cgcgattgat tgctgataag
+     4201 gaacggcggt aaggaacgta tcgcgtacga ggttgtacac tggaaccgct aaacaagcgg
+     4261 tatcgctaaa ttaccggcga ttatatcaag ggaatcttag gtagcacgaa gccctacgcc
+     4321 ctggaaacag gatcggcgcg aggccgtgga catattagcc tacgtttttt tacacccaga
+     4381 tttccgacga tgtccacagc taaggctatc ctaaaccgca aacacatata accgcagtat
+     4441 aaagcacggg atgattcctt ggccatcttg caagcagtgc aaggcaattc tggtgatagg
+     4501 ggcaaggcag tgaaccgagt ggtcagcgta ttgtgaccct gcaattgtca tggcagataa
+     4561 ttgtttatga acctgtttca cacacccatc ccttggatct ccagcgtagt tactaatagt
+     4621 acgatttcct ggtgttctgt cacccgcctt gctgccttca cgcctgcccc acgttttgct
+     4681 gtccactgaa tatcgctcta attaataggt gtcacactgt atcaggtaag tccattccgg
+     4741 gtgctattgg atcattcctg agatgtacca ccgatcccat aggcgttagg tcttacatct
+     4801 ggagtgaaaa agatcagcat cgaactatag gtagataaag gtcatgactg ttaacagaga
+     4861 atcgttccta tcgcaacctt cactaactgg aaggcacccc cacactttga ttagtaagcc
+     4921 cctagcgaat gtagtgatcc aagaacatcg agtatacttt agctctcggt tcaggcatgt
+     4981 atgcaatcga ccacccttcc gttcagagta ctctcaacca gcagatttct aaactttata
+     5041 gcctccgccc actaaaattg ccttatctca ggttgactct tggatgtagc tgtaatctaa
+     5101 catacacatg gagctgcggc aaattatcgt acgtccaaac caccaccgga tcagtggcga
+     5161 tactattctc gcaaaaaagc catccagcat tggaacaagt gttaaccagc atttttctga
+     5221 gtcccccgga aagaaagttg actacactac atccataaat gctagagtgt ggattcgcca
+     5281 tgtgttacaa cggtcaaccg aaaggttagc atgatacttc gttgttcaat cggacgttcg
+     5341 agcgccctcc ctgtttatca cttgatcccc cttttgaaac atgtgcgctg cgacgcaggg
+     5401 ctgggagagt caccggaaac caaaagcccg acctcggacg tgtagggccc tccgtttgcc
+     5461 atcaatggcg atgtaggatt ctcttttaat acaacgttca ctcaattaac gtcttggtat
+     5521 aagcgtcgaa cgtgaccgag gttgacacca gtgtcacggc tgcgccgggg tttgttgctc
+     5581 cgcgtgtaca gggtattggt tcgatggtgc ctcctctacg tagatctact ggataaccgt
+     5641 ccccaatatc cgcttcccaa cgtagattgc cgacaggcat aagcttcggg ggcgcaaagg
+     5701 ccgacgtccg cattgcagtg tagctttgtg agcaggaagt gtgatagtct ttcgattatt
+     5761 aaagtctgag ctgaatgaaa aaaggtccaa cgaatggagg acgcgaagac atgggtgtct
+     5821 cttatggccc gagcgggagt aatggcggtt cgtacataaa ggctgaaagg attctggcgt
+     5881 tagctgtctt acgttggatt ggcccttcaa attatcgatg ttagctgatt cggtgtaccg
+     5941 ggcgaggaaa gcgctctcag aacaacttca tatacgaggt tcgactataa tggtctaagc
+     6001 tcctgggcta gtctcaagaa gcgggtacct ttagtagcac gtatcgacgg caaagcaaag
+     6061 aataaaaact tggctttgca tcgtgcaaag atttctaact aggttgttta agggctggta
+     6121 tctatgtccc gctataacag cgcgcctaca gtagaagttt aaccatgaca tacctttgaa
+     6181 gtgttcgtat cacacacaag gaaggagcat gtggacacca ctgagctttg atcagcacgc
+     6241 gtctcagagt ttcaggggga cccaaattac tggtcctcaa ttgggacgcg accgcatctc
+     6301 cccacgaaag cttatgggga ttgcccactg cccagcttca aatctgaagg ttcggcttat
+     6361 tgacagggtc taacacgcag ctcaactgct cgaggttaga ggcgtaatga cgggccccga
+     6421 tagccttcta cgattacgtc cagcaggaac cccacagctt ttccctacgt ctaacaccgt
+     6481 gaaagcaaaa ctgtctgccc ttttacatgg tctttaagga atctctgcac ttatgttatt
+     6541 aggtaagctc ccataagagc accacttcgt gtaccttgct aactcccttc atccccaccc
+     6601 gcgaaaactt aagacgtcac ccctgttatt atcccgtgca ctcctaaagt gcgatgggca
+     6661 agaacgcaaa caattgtctg agatttatat gggcggcgga catagtcaga gagccttata
+     6721 taatctccca cgtcttgcca gtccgagtta tgagaaaccc gggaccgatg acgctattac
+     6781 ggtcgcccag cgaggttcaa cagagcgagg cataggagtc attacgcgtg ttagcttcaa
+     6841 catgcgtgga agtgaaacgg atctataaaa cggcgtggag tcatcagctt gagcagatct
+     6901 aacttactcg ccacgcgcgc aaatcgtctt tcgctgtcca cgttatacgt aactcgctgt
+     6961 cacgctagag accgtatgag gtgggcggat agtggtgact tcaaacccct aagatgccag
+     7021 cgcaatacgg catcgcaggg caagcaacac cgcacagcat gtccctaaag ggaagattta
+     7081 atacggactc agtcaagttg tgagaaacga caatacattg agtggaatgc cctttggtac
+     7141 gttggcgata gatctaacga gaaacttcaa cgagatctag agtatcggac tgagatgcat
+     7201 catggctagg gattgctgaa tggatatctt tgccaaaatg agctcgacta ggaatctcag
+     7261 actgccagct acgaaaagct gggggatatt catttccgct cttgtaaggc gcacgatgac
+     7321 cctgtggagc aaaattcgac gcggcaacgt agtcaaagta cggcctatct gggacggaga
+     7381 tgggattgtt tctgtattca tgccggcctc ttgagattgt aaggataccc ggccacagtc
+     7441 tcgtaagaaa cccgatatcg ctcaaacgaa ttgacatcag ttagggcttg cgctctagca
+     7501 accacgcgtc gggtgttcga ctgaatttaa gatccagcgc aaaccattcc ttaaaggcgg
+     7561 tccaggtgaa accggctctg ataatgtaca gtggattgtc cagttcgctt caaagtgcaa
+     7621 tcaggcaagg tactggcaag tcaccgcttg gggccggttt cagtggagct ttatcgacaa
+     7681 aaggccgggc cctttggcct agagctcact tttggtgtcg ttcacgagtg agaactttgg
+     7741 ctcgcagctt gaatgcttgt cacgtttagg gttatacaac gtttctataa actacctatg
+     7801 acaaatcccg atcttctgaa actccataag gactaagaga gtccgcgaca gtttcacttg
+     7861 gtcggtgcta ttgactatgt cacgcatgcc cggtaaagct tttaagcaaa gcctgatata
+     7921 tcacgggagg ttactcaaag cattttctaa agggacagcg gactcacatt agcctaatat
+     7981 aaacccgatc aggccatgca cctcgattca ccggaaggta gtaccatgca ccggatattt
+     8041 gggacaacag tgaatagtac atcgtaaaat gtcaaggcct agctattttt cactggtgtc
+     8101 ttatctctat tacaacacac acggatgtcc cgagcctaca ctttcaaata tactcaaggt
+     8161 tcgctgttaa gggtaataca agagtgctcg gtttagtatc catatgttgg tacaagtgac
+     8221 tgtgctagcc gtaaattaat tcggcttcca ttccagcttg ggtgtttagg gtctagacgg
+     8281 ttgaaaccag aaagagtaca gacaaaaccg tagctctccc aaggttgatc ctccagacac
+     8341 ctacccacac tagtagcgca ggcctagagg agacgttagg agcggaattg tacattcagt
+     8401 atcgcattaa gcacaaagac agacaaacct agaagccact tatcccctcg taggagtaca
+     8461 acggcagcgc tttcgggagg agttgcctaa ctacgctctg gacagcaagt cccagaatga
+     8521 agaaaatgac ttggcgagaa cccaccacta catgcagggt cttgggaccg gtcagcacag
+     8581 cttatccatg cggcaattcc ggacgaccgc gaatgaggat cacgacactg ccgatgttgc
+     8641 accattgacc ttctcctatg caacaagggc ttaagatggt agatggtaat agagtagcct
+     8701 gcgaccttat gcggtaatac acaaaaaccg gtaaacagtg cgttgatgct gtgtgctggc
+     8761 gcatttgtgt accttgctgg gctcgtataa aattctgtca gcaggacgtt cacctccctt
+     8821 ctgctagtcg ctaggcacaa acggaaaagg tctaatcgcg cgcgtgctcg ttagagtact
+     8881 ggggcctccc accacggatg atcacctcgc cgatacattt ggccttatgt ctcaataaga
+     8941 cctcatggtc tatcctacac catagatttg gaaagtctag ttgctgccta gcaggctgat
+     9001 agcaagcgtc gtacgaggat cgaggaaggg cactcatggg agtgtagcgc tagccatagt
+     9061 tgacctgtca gccggtcaag gttggtccga acctagccag ttagacgacc agctccccca
+     9121 ctattgcaca gtgcctgtat aagcacgtca gtgtctggca ccactgtgcg cggtgtggtc
+     9181 ctcgggacga tcttcctacg gctacccatg cgctagtgat tacagacgat cgttttttct
+     9241 ttttctgtgg tgcaaataca caagatacgt caagagtcct agcagcctca tcttgccaat
+     9301 tgcaggggta ccgattcacc catggtatca gtcacgcaaa aaaagacgac atcggagttg
+     9361 ctggcgactg gcaaaagaaa acatctatct gccgtggcgt tcgtctagcg cagcgagccg
+     9421 actgactact ccgttatctc aaatttagtt tcgtaagatc ttcacgggag ccggccagct
+     9481 gaagaatcta taggtctacc gctagaggaa gcccgtttac aaccgacgta ctagtccgac
+     9541 agcaatcgtc agcatgccaa tttattgtat caggttgaga atgcaccact acggaatcga
+     9601 cgtgccactg gccgcacgat actagtgcgc tggtaaacag gccaggagct ctaaatctgg
+     9661 agtggtgtga atttaaccgc ggaacgattg ttgcacgcgg tccctgtgac tctgttggga
+     9721 gcactgtccc cggctccgga taagtgatgt gaacgaaaag gtgggctgac cagagatagg
+     9781 gttaaggacg ggcgatcgta gtggacgatt actgctgatc ttccgagcac tctgagtcgc
+     9841 gcggcgtatc gggagttacc ccgctcgcta cacatctgaa ttccgccgga tactatgggt
+     9901 gcagagtgga tcaccttttc gtgacccgta tattcgtcgt tctcatcact gtcctccgcg
+     9961 atttatttca atcgtcggtt tcgccagatg cattcctggg gaagtcatcg cgacagtgcg
+    10021 ctgcgcgcac agctcttctt ggtttattcg agattgtggt ttatcaacat ggtctatcta
+    10081 cggactgatt agaatattcc cacgttaagc cgacgtgcat tggtactggc tccttaatta
+    10141 agcgcagagg gtaggcgcct tttcttgtgc aaaccattat atgaggaact agcaaacact
+    10201 atggcgcaat atgtccacgt gactcgagca ttctgtgttg cggtagcgat ttcactagtc
+    10261 acaaacggat agattctacg gcgcacccgg tgcatcgttg tatgttcagc aatttggtca
+    10321 tatcccgctc ctctattcaa tctctttttt cgtcaggggg ggcacatact tggagcagct
+    10381 gcgcctaaca ttacaataag cagtcggagc tcagtacaaa acccttatct tagcggtccg
+    10441 ttctggaatt cggtctcagg agagacactc cttcatcaac agcagaggtt acatacgttt
+    10501 aacctgaccg atggttgccc atcgaaagca aggacccacg ggtaggcagc tgttgtttga
+    10561 tatgcttttg tccccggaag gcgccgataa aattatacgc cgtcccccgc gtccgttacg
+    10621 agcttcgtga tgttgcgggc tgaagttccc tacgagtcaa taggccaact cgaatggcta
+    10681 aatggttgca acccacaggc tcaactttga aggtaatacg ccaaaatcca atatgctctt
+    10741 tcgggtagcg cataaaacct tctgggggcc actgcagaca gtcatggagg actacgtgca
+    10801 acactacgct ctagagtgat gatgtggcag tcaaccgagg gctgttaaga gaagtctgtg
+    10861 cacgaaaatc aatgagtcgg tgtaatcttc accttcctac aaaccaaggc ttgagggcct
+    10921 caatttcgag caccacttct tgaccaagcc gttcgccggt ataggagtta cgaattcggg
+    10981 tcgtctgccg tctttgaacc atagataagt acctcccgag tcgggagaac acgaatcgca
+    11041 tcagaactca tcgaagggtg ttactttgcc catcggcatc cccgaagatt aattgcattc
+    11101 gaaattttaa cttcgagaat catccgtgct aaccaacgtg gacgagctat gaacgtttac
+    11161 gtgttcagta tctaggaatt gacacgtctc cgatagcggg agtcacggca tgagttacgg
+    11221 cttttgtgac cagcgtctgt gtaattttat tgacagtttc atatatagtg tctcgtcttg
+    11281 cctttgagat tcacaggctg taagagggat gccgtcgtgt atatgcctgc agttagagct
+    11341 tccttgtcag gacgagcaac tcactccttc tggtgatgct ttgctagcat gtagcttcgg
+    11401 gtacttgcgg aaaaggacag cctacagtgt ctgcggcggt acgtcactaa tatgacatac
+    11461 gctgtggaca tcgtgaagcg gcgaatcgct ccagattgag gtttacagag tactccatag
+    11521 tcacacaact
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/all_construct_records/construct_4.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,350 @@
+LOCUS       construct_4             8074 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_4
+VERSION     construct_4
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CAGA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     homology        5..8
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9..1093
+                     /source="part_G"
+                     /indicates_part=True
+                     /note="From part_G"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        1094..1097
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    1098..2746
+                     /source="part_H"
+                     /indicates_part=True
+                     /note="From part_H"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        2747..2750
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    2751..3085
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    2751..3085
+                     /source="part_I"
+                     /indicates_part=True
+                     /note="From part_I"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3086..3089
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3090..3498
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(3387..3407)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    3090..3498
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3499..3502
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3420^3421
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    6918^6919
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    5..3502
+                     /source="construct_2"
+                     /indicates_part=True
+                     /note="From construct_2"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3503..3506
+                     /label="GTCA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3507..3510
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    3507..3548
+                     /source="part_L"
+                     /indicates_part=True
+                     /note="From part_L"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3549..3552
+                     /label="ACCC"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     CDS             complement(3746..4537)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     CDS             complement(3746..4651)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3617..3645
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      4962..4967
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3722..3745
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      4940..4945
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      4785..4790
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        4821..5373
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3560..3670
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        complement(4824..4931)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    5460..5468
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    complement(3672..3712)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    4735..4758
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      4806..4811
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            complement(3746..4651)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      4785..5373
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3584..3607
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3553..3558
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    6763..6786
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    6942..6972
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             5743..6762
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     gene            5743..6762
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    6985..7002
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    6895..6919
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    6946..6970
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    6787..6834
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    6990..6995
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      6985..6987
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3553..7002
+                     /source="part_J"
+                     /indicates_part=True
+                     /note="From part_J"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        7003..7006
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     promoter        7083..7261
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    8071..8074
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     terminator      7818..8070
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             7263..7813
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    7007..8074
+                     /source="part_K"
+                     /indicates_part=True
+                     /note="From part_K"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cagaggagga acttctatgg gacgaaagat gcgcagctcg acaaatctca aattggaaac
+       61 cgtctaaggt ctttgagccc acgctaggcc accgaatagt tgcgagctcg tgggcaattg
+      121 ctggctagcg gtttgtatcg tatacgtaac aagagattgc gccggattca ttcgtgtggg
+      181 gtgctttcac atcggaatac tcaagagtgg gggtttgcgc tttaatatga cggcctcatg
+      241 caccccaaaa ataagagcgc caatttcatc gaccacattc cggacaattc tgacttccct
+      301 gtcggatcga ccctcgctca caactcctag aactccaaga cggtaggacg tcagccgaaa
+      361 aggaggagtg acgacgggcc ctcctagctg aagcaatggg gggcgtcgac cctagcctgg
+      421 tgtgggactt cggagggtcg ggcgtgtggc cattcctgca cgaggggccc ttgcagtatc
+      481 gaactttgac gagaaagtgg ggggcgacct ataaacatag cggagttcaa tactcctgca
+      541 agtgcatgat gacgttcagc gttggcacat cgaacgcgtc gctacacttg ctcaccggaa
+      601 ggcaaaatag accggcagct ggcccgcacg gacgtctaga ctcctacgct gtcaaatgca
+      661 cgatgactat tagcatgcgg aattcgaggc ggccggtaca tcgagacacg ctggtcttaa
+      721 tacctgtgtt atgtcaaaac aagtgtctcg gcggctttgt actacgctgt gaatgcgcat
+      781 gatgttgcga gaagctgaac gttggtagca gtctacaaca gaaccgacga gctacggacg
+      841 ggttacagca ggatcccctc ttaaggcatt attcgacgac tccaggttct aaccgatcag
+      901 taattgcctc ggatggtcgt acgtgttaac cgagacagca aggcaccaca tagacaactg
+      961 catagggcgc ctacaggtcc acaatcaggg tggcccaaga tcctcaaaga cttgttgcag
+     1021 tctctgctta ttccgtttaa cacgttgtgt gagctctagc ttactacctc atcggtgtcg
+     1081 ggagtgattt aggaatggaa gacgcgttta gtcttcggcc cccagacggc accggcagag
+     1141 ccactgccaa tgccttttac gctgaactct tcgactttgg catgtgcgac tgactatacg
+     1201 ccgatggccc taccctgcag cggaaaggca cagggccaaa aacagtggaa gcgcaccgct
+     1261 agagctttac taaatccttt agggtgaacc ggtgttcagt caacagaaac atatgactag
+     1321 tccttaatgg cactactaaa ggcggcccat ctcttttgta ggtcacgtct catcgtttag
+     1381 caagcgtccg ccatccgagg agtatcctag tacgtgagag ggtgttttac ctcatcacat
+     1441 ggtttttggc tagatgtggc agatgccagc tgatacctta caacccgcta taacggtttc
+     1501 tggatcgacg atacaacctg cttcggcata tcataatggc ggcctcatag gacttccaat
+     1561 catggttatg cgagtttgat gtgttgaaga ttgtgagggg aaaccttttt ccgagtacgt
+     1621 tgaatctgcg actgatggtg aacaactcat cgagagggat gtgcgggcag tctccttgat
+     1681 gcgcgaaaag gagtcgcgac cgcgtgttcg tgacgcactt gatgctagac cgtaggggct
+     1741 cattatctcc tgaaacagta gctagctttt ggtgtccgag tcagcttagg cacagtaatt
+     1801 gaaaagaagg aaatgcgtga aaactaaacg tagacactcc ttgctaagaa ttccctggtc
+     1861 tttttcgagc atagactacc gtaggtaaaa ggcttgtcgt gtcacaaata gacttgatct
+     1921 gttcggcata tacacatcct actgcttcag taaccaagga cgattctccg gccattggac
+     1981 tgtgggacca cccgcgttca aacggaatcc tctacgaacg gttaagaaag gagcccactg
+     2041 cttgcggaga catatcgttg ctgagtggta caccggtgag tcaaaaagta ctgacactac
+     2101 tggtggactc tcgggtacga tgtgtggggt attggcatac tatggcgcta agcgtggaat
+     2161 agtgtttcca atagcccttt acctaagaag cattctgaca catgggttgg acttttacac
+     2221 agacctataa ctcgtatccg gcctggtgat gtatgtccgc ttatcactga atgcaggatt
+     2281 ccgccaattc cgctcgcggg ttctcggaca acgggccatg gagatggatc aatgagccat
+     2341 gttgattacc atttcactac acacggttag tcaattccgg agatcataat tcgacaattg
+     2401 aatatgcgtg atacgctttc tgttaccagg atcgttgcta attagtttcc aatgtcacag
+     2461 tgttgggcgg cgaggtatca cggcgctctg ggtagaatgg cggtgcctga ctggacctca
+     2521 taactggtaa catacctatg accaaaggag gtcagacacc gatgagtcgg tgacatgggc
+     2581 ggtcacagcg tgccctgcat agtaatacag ctcgtttcta gacatttgtc ctaattcgcc
+     2641 acacaagtac gagagcgggg gtaacccatc accatcgtgc ccgtaggtac ctaatcttca
+     2701 tcgagcgcta ttgttaaagt ggactcaggg atcggcatct cgtgtagctt ttattatccg
+     2761 gcatgcatgc ggcgttgcat cgcttcatcg tcatcgacat atcgttagcg ggacttatca
+     2821 gggtcccatc acggctgtga cagctgttca taagtgtaat agcagtcacc ccaccaaatg
+     2881 caagactgtt cccaaactaa gtgctaggga ggttggctac ctatcggcgt ggcagttgac
+     2941 cgggtttttc ttagtacctg ccttccaatc tccgataaaa gcaagatgac ttcctgcttg
+     3001 cgctaaagtc tgaattcgct aagggggcag attcattacc agagactgcc aaagtcaacc
+     3061 gccgaacgat actggaatat atggaggtaa gctcccataa gagcaccact tcgtgtacct
+     3121 tgctaactcc cttcatcccc acccgcgaaa acttaagacg tcacccctgt tattatcccg
+     3181 tgcactccta aagtgcgatg ggcaagaacg caaacaattg tctgagattt atatgggcgg
+     3241 cggacatagt cagagagcct tatataatct cccacgtctt gccagtccga gttatgagaa
+     3301 acccgggacc gatgacgcta ttacggtcgc ccagcgaggt tcaacagagc gaggcatagg
+     3361 agtcattacg cgtgttagct tcaacatgcg tggaagtgaa acggatctat aaaacggcgt
+     3421 ggagtcatca gcttgagcag atctaactta ctcgccacgc gcgcaaatcg tctttcgctg
+     3481 tccacgttat acgtaactcg ctgtcacgct agagaccgta tgaggtgggc ggatagtggt
+     3541 gacttcaaac ccctaagatg ccagcgcaat acggcatcgc agggcaagca acaccgcaca
+     3601 gcatgtccct aaagggaaga tttaatacgg actcagtcaa gttgtgagaa acgacaatac
+     3661 attgagtgga atgccctttg gtacgttggc gatagatcta acgagaaact tcaacgagat
+     3721 ctagagtatc ggactgagat gcatcatggc tagggattgc tgaatggata tctttgccaa
+     3781 aatgagctcg actaggaatc tcagactgcc agctacgaaa agctggggga tattcatttc
+     3841 cgctcttgta aggcgcacga tgaccctgtg gagcaaaatt cgacgcggca acgtagtcaa
+     3901 agtacggcct atctgggacg gagatgggat tgtttctgta ttcatgccgg cctcttgaga
+     3961 ttgtaaggat acccggccac agtctcgtaa gaaacccgat atcgctcaaa cgaattgaca
+     4021 tcagttaggg cttgcgctct agcaaccacg cgtcgggtgt tcgactgaat ttaagatcca
+     4081 gcgcaaacca ttccttaaag gcggtccagg tgaaaccggc tctgataatg tacagtggat
+     4141 tgtccagttc gcttcaaagt gcaatcaggc aaggtactgg caagtcaccg cttggggccg
+     4201 gtttcagtgg agctttatcg acaaaaggcc gggccctttg gcctagagct cacttttggt
+     4261 gtcgttcacg agtgagaact ttggctcgca gcttgaatgc ttgtcacgtt tagggttata
+     4321 caacgtttct ataaactacc tatgacaaat cccgatcttc tgaaactcca taaggactaa
+     4381 gagagtccgc gacagtttca cttggtcggt gctattgact atgtcacgca tgcccggtaa
+     4441 agcttttaag caaagcctga tatatcacgg gaggttactc aaagcatttt ctaaagggac
+     4501 agcggactca cattagccta atataaaccc gatcaggcca tgcacctcga ttcaccggaa
+     4561 ggtagtacca tgcaccggat atttgggaca acagtgaata gtacatcgta aaatgtcaag
+     4621 gcctagctat ttttcactgg tgtcttatct ctattacaac acacacggat gtcccgagcc
+     4681 tacactttca aatatactca aggttcgctg ttaagggtaa tacaagagtg ctcggtttag
+     4741 tatccatatg ttggtacaag tgactgtgct agccgtaaat taattcggct tccattccag
+     4801 cttgggtgtt tagggtctag acggttgaaa ccagaaagag tacagacaaa accgtagctc
+     4861 tcccaaggtt gatcctccag acacctaccc acactagtag cgcaggccta gaggagacgt
+     4921 taggagcgga attgtacatt cagtatcgca ttaagcacaa agacagacaa acctagaagc
+     4981 cacttatccc ctcgtaggag tacaacggca gcgctttcgg gaggagttgc ctaactacgc
+     5041 tctggacagc aagtcccaga atgaagaaaa tgacttggcg agaacccacc actacatgca
+     5101 gggtcttggg accggtcagc acagcttatc catgcggcaa ttccggacga ccgcgaatga
+     5161 ggatcacgac actgccgatg ttgcaccatt gaccttctcc tatgcaacaa gggcttaaga
+     5221 tggtagatgg taatagagta gcctgcgacc ttatgcggta atacacaaaa accggtaaac
+     5281 agtgcgttga tgctgtgtgc tggcgcattt gtgtaccttg ctgggctcgt ataaaattct
+     5341 gtcagcagga cgttcacctc ccttctgcta gtcgctaggc acaaacggaa aaggtctaat
+     5401 cgcgcgcgtg ctcgttagag tactggggcc tcccaccacg gatgatcacc tcgccgatac
+     5461 atttggcctt atgtctcaat aagacctcat ggtctatcct acaccataga tttggaaagt
+     5521 ctagttgctg cctagcaggc tgatagcaag cgtcgtacga ggatcgagga agggcactca
+     5581 tgggagtgta gcgctagcca tagttgacct gtcagccggt caaggttggt ccgaacctag
+     5641 ccagttagac gaccagctcc cccactattg cacagtgcct gtataagcac gtcagtgtct
+     5701 ggcaccactg tgcgcggtgt ggtcctcggg acgatcttcc tacggctacc catgcgctag
+     5761 tgattacaga cgatcgtttt ttctttttct gtggtgcaaa tacacaagat acgtcaagag
+     5821 tcctagcagc ctcatcttgc caattgcagg ggtaccgatt cacccatggt atcagtcacg
+     5881 caaaaaaaga cgacatcgga gttgctggcg actggcaaaa gaaaacatct atctgccgtg
+     5941 gcgttcgtct agcgcagcga gccgactgac tactccgtta tctcaaattt agtttcgtaa
+     6001 gatcttcacg ggagccggcc agctgaagaa tctataggtc taccgctaga ggaagcccgt
+     6061 ttacaaccga cgtactagtc cgacagcaat cgtcagcatg ccaatttatt gtatcaggtt
+     6121 gagaatgcac cactacggaa tcgacgtgcc actggccgca cgatactagt gcgctggtaa
+     6181 acaggccagg agctctaaat ctggagtggt gtgaatttaa ccgcggaacg attgttgcac
+     6241 gcggtccctg tgactctgtt gggagcactg tccccggctc cggataagtg atgtgaacga
+     6301 aaaggtgggc tgaccagaga tagggttaag gacgggcgat cgtagtggac gattactgct
+     6361 gatcttccga gcactctgag tcgcgcggcg tatcgggagt taccccgctc gctacacatc
+     6421 tgaattccgc cggatactat gggtgcagag tggatcacct tttcgtgacc cgtatattcg
+     6481 tcgttctcat cactgtcctc cgcgatttat ttcaatcgtc ggtttcgcca gatgcattcc
+     6541 tggggaagtc atcgcgacag tgcgctgcgc gcacagctct tcttggttta ttcgagattg
+     6601 tggtttatca acatggtcta tctacggact gattagaata ttcccacgtt aagccgacgt
+     6661 gcattggtac tggctcctta attaagcgca gagggtaggc gccttttctt gtgcaaacca
+     6721 ttatatgagg aactagcaaa cactatggcg caatatgtcc acgtgactcg agcattctgt
+     6781 gttgcggtag cgatttcact agtcacaaac ggatagattc tacggcgcac ccggtgcatc
+     6841 gttgtatgtt cagcaatttg gtcatatccc gctcctctat tcaatctctt ttttcgtcag
+     6901 ggggggcaca tacttggagc agctgcgcct aacattacaa taagcagtcg gagctcagta
+     6961 caaaaccctt atcttagcgg tccgttctgg aattcggtct caggagagac actccttcat
+     7021 caacagcaga ggttacatac gtttaacctg accgatggtt gcccatcgaa agcaaggacc
+     7081 cacgggtagg cagctgttgt ttgatatgct tttgtccccg gaaggcgccg ataaaattat
+     7141 acgccgtccc ccgcgtccgt tacgagcttc gtgatgttgc gggctgaagt tccctacgag
+     7201 tcaataggcc aactcgaatg gctaaatggt tgcaacccac aggctcaact ttgaaggtaa
+     7261 tacgccaaaa tccaatatgc tctttcgggt agcgcataaa accttctggg ggccactgca
+     7321 gacagtcatg gaggactacg tgcaacacta cgctctagag tgatgatgtg gcagtcaacc
+     7381 gagggctgtt aagagaagtc tgtgcacgaa aatcaatgag tcggtgtaat cttcaccttc
+     7441 ctacaaacca aggcttgagg gcctcaattt cgagcaccac ttcttgacca agccgttcgc
+     7501 cggtatagga gttacgaatt cgggtcgtct gccgtctttg aaccatagat aagtacctcc
+     7561 cgagtcggga gaacacgaat cgcatcagaa ctcatcgaag ggtgttactt tgcccatcgg
+     7621 catccccgaa gattaattgc attcgaaatt ttaacttcga gaatcatccg tgctaaccaa
+     7681 cgtggacgag ctatgaacgt ttacgtgttc agtatctagg aattgacacg tctccgatag
+     7741 cgggagtcac ggcatgagtt acggcttttg tgaccagcgt ctgtgtaatt ttattgacag
+     7801 tttcatatat agtgtctcgt cttgcctttg agattcacag gctgtaagag ggatgccgtc
+     7861 gtgtatatgc ctgcagttag agcttccttg tcaggacgag caactcactc cttctggtga
+     7921 tgctttgcta gcatgtagct tcgggtactt gcggaaaagg acagcctaca gtgtctgcgg
+     7981 cggtacgtca ctaatatgac atacgctgtg gacatcgtga agcggcgaat cgctccagat
+     8041 tgaggtttac agagtactcc atagtcacac aact
+//
Binary file test-data/init/2-step-golden_gate_plan_simulation/assembly_plan_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,385 @@
+LOCUS       construct_1            10366 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_1
+VERSION     construct_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(223..1038)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    complement(139..179)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    5..8
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    20..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(223..1038)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    189..212
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    51..74
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    84..112
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    27..137
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3347..3377
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1367..1372
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1190..1195
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        1226..1778
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3396
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3192..3239
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_RNA        complement(1229..1336)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1865..1873
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3413..3416
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      1190..1778
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3300..3324
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1345..1350
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      1899..2147
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3397..3401
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3395..3412
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1211..1216
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3168..3191
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3351..3375
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1140..1163
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    5..3416
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3417..3420
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     exon            5421..5618
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     gene            5421..5618
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3421..5618
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     misc_feature    3421..5618
+                     /source="part_B"
+                     /indicates_part=True
+                     /note="From part_B"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        5619..5622
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     CDS             5623..8880
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             8881..9009
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    8091
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    8736
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    7683
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    5623..9011
+                     /source="part_C"
+                     /indicates_part=True
+                     /note="From part_C"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        9012..9015
+                     /label="TTCG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9604..9633
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     CDS             9016..9528
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    9538..9603
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     CDS             9580..9603
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    9016..9636
+                     /source="part_D"
+                     /indicates_part=True
+                     /note="From part_D"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        9637..9640
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     3'UTR           9644..9953
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    9641..9643
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    9641..9953
+                     /source="part_E"
+                     /indicates_part=True
+                     /note="From part_E"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        9954..9957
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9958..10366
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(10255..10275)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    9958..10366
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cgctgtcaat atgcaggtgc tgcaggaatt tgtctccaat cgacttgaga tatcgcaagc
+       61 atgaaattat attagacacg ccagagaact tgggaagcag cactggtagt gatagcaacc
+      121 cgagtacagt aacgagtgag cttctgatca tgagctctcc tacggcgtca atgcgacgaa
+      181 tgcccagcat gcactctcgc tatccatgcc tgctagggtg gcattatgct caggaacagt
+      241 tgtagcttgg atatcgtcta gatgaaatac ctggacactg gttagcgtcg tcaagcacca
+      301 aggacattca cacgctcgcg gtctttcgtc tccctaagcg ttcggcagtc gggcgtgaag
+      361 aggttgtaat cagacggaac aaagcctgaa aaaattccag cgacgtagta ttcatgatcc
+      421 tgtaccatct gtagccgccg cggcgcacga ttgaatgtag gctactaacc ccatccgtgt
+      481 tagcgatgtg agtttctacc gcaacgaatg ctcaagcgaa ccttcttctt tcgtccgcaa
+      541 cccacaagcc gtggttatga cagctaaatt gtcccagaca tccctttatt acacaagagc
+      601 tccagcggaa tacctagtca cagcggtaat gacacaaagc tcttagttag tccagggact
+      661 acttctgtct acagcacatc acactcatta tcagcatcag tgtagagacg gagaacatgg
+      721 gctatcctat accaagatcc gccatctaaa catttgaagt ttcccgtctt ctataactta
+      781 gcactcgacg ctattctgct gagtgcgctt agtctgtagc gacttgcgaa atccataaac
+      841 tgagaattga aagagagtgc ataaccgaaa cctttgtggc atatttccgt tgaaacgtac
+      901 cagaacagcc gtttagtgcg gaacatacag tatcctgata aagcactcaa cccaacagac
+      961 accctatgcc gatagcggga tgctaacaag tatagtcatg atgatttctc ggacagcggg
+     1021 gtttggtaca gctgcaatcc gtgatttaaa ttcggacctc tgcacacacc gacggttacc
+     1081 catatcctct acggctgtag gaagttttac cttggatgtc attctgattt cggcgtatct
+     1141 cacaggatgg tccaacgaaa ctaggcttta gacgagggat gaatgaccga cccccactcg
+     1201 tggcactaac ggacagactt ccctgacggt tattcgacca ttaaagtcag acatgcgggg
+     1261 gtgaataaat tagccaaatt gtgtcgaaga aaagacgtgc ggctggcaca taaggcagtc
+     1321 ttgatcctag tcttgcaggg atgcacgtaa gtcgcctcaa ttaactgcag ccgagctcca
+     1381 ggttaccaaa gaccctagta tgccagggcc taacggttgg agtatattat gggtacgcaa
+     1441 tagtgcggaa gttaacctgg gcaacatcca ggtgagaggt tggacggaag cgacagtaag
+     1501 tggccataga ctgccgagtc gtgttaatga atcgctatac gcccatggag ttgtggggtc
+     1561 gttttatccg agtaggggcc cgctgactac ttcgtccaga caatatgccg tcttcaatag
+     1621 tctacctgag agtcatgccg gcatttccga cgctgagtga aacccgcgta gccaggcgaa
+     1681 atttgcatct tgaaatacca ctgcagatca gccagtaagg cccatataag ggcgctggtg
+     1741 ttctggcgac agataaagtg ttatctaatg taacccgcgg acttttagag gatacttgaa
+     1801 tgcgggcata tcgtcccacc agcgtcacgt ggtcgggcta gcggcagaca aactctgccg
+     1861 atgtttttct ttgccgcgat agcgggctag tcaattcact atccggcgat gaagcataga
+     1921 ttgttatcgc gcttatgcgg aggataatca agtcttggca gaacctgctc gctcatgcac
+     1981 tggtgaggcg tggttatcct aacaaccgcc taggacgaag aatgggctcg gtagggacag
+     2041 ttcgtgcgtt tagcttcgtc ccatcttaat gctgtctgga gggaggctac atgcgaacag
+     2101 aagccgtggg cgaaagttgt tgatccgggt ctaacacgga taagggccat ggtgaacgca
+     2161 tcatgcgata cttcttggta gttcttctaa catgaccgtg ccatagccct taccctttga
+     2221 agaagttaac ctatctgccg tctcctgcac gaatagcgac tggactcggg tattttggat
+     2281 acctcacgaa agcacttcga tcggccgaag catggatatt tcgccggacg ggcccgaata
+     2341 gagagccttg tatgtcggtt agtacaacgc agtcctggag acatctacgc ggatgggcct
+     2401 aggggctgga cttaacattg ggtaacgtac ctggtccaaa gtgaatgcaa agcactttta
+     2461 caaagcgcgg gtccccgtgg gtgtttaggg tagaagattg gcggatgcta cgaacgatcc
+     2521 cgctttgaaa ctatcattac atcgtgtaaa agagacactt aacaaaggcc aataaactgc
+     2581 cagtaagaat cgctcagtgc ggtgctgggg acgctaagta ggggcaacag ccagtgaagg
+     2641 acgtgaccga cctttctcag ataagatatg ctggcgtcta tctaataagc atagtgaaaa
+     2701 accaaccatt tcacttacac gaagtacatt tgcattgcta gtaaagacgc ctaaacagaa
+     2761 gtgcccttgc atgctgtatg tctatagtcc ttagggaagc atcagccctt ctacttattc
+     2821 gaggtctgag aaaccctgga caagctccga attattcaat gtgcctgtct ccgaggttag
+     2881 atagcgctat gctcttaaga gttgcacaga atgaccatcc tggaatgtcc ctggaggggt
+     2941 ctaggtatgc tgatcgaagg gtgctctaag gacttgacgt gcgtccgagg agggtgctgc
+     3001 ctccttcgcc tttagatcca acgcggatca catgcgcgtg agctaatagg atcaccttct
+     3061 gctccgattt ttaccctcct gggtcacttc cgaatgaggt agcgggcgaa atataatgtc
+     3121 tccactcgta ggtgttccct gtatgtgaag ctctatagtg gacaaaggtt tgatgaacta
+     3181 gcccccgtat acgctctcac cgacggacgc gggggtctgt tatttgaagc atcatacatg
+     3241 cgaaggtgcc ttctcagcaa cgaaaggtag tgggagtgta caagttcaat gcgccgccat
+     3301 aggtctgagt atacaagggg atgcccccat ccacaacggg attggctacc cggagagctg
+     3361 gctccgctcc aacaaataat tatattaacc tattggaatt ccacctgcat atcagaggag
+     3421 agcatacggt gctctgggct cacacgtact tcctcttgtc acgcgccttt gtagagcatt
+     3481 agggcggagg tcactgggac ggggatcaga gagcttaaaa tcccaagtag cagtgcctaa
+     3541 ggtgtagaat cttgtgcaga tcttcgtctg gcccgaaacc tgggcctcca caacaatgtc
+     3601 gggtctttta taatttgaaa acatcgcgcc ttacccgcac cgcgcaggac gattagacac
+     3661 agggggtcat gtccatggtt cggggtaagc caaatttaca tcgagtgtgg gcttcattga
+     3721 ggagagggcg ttacgatacc cgttaaatga aaacccggac agtctctaac tgataggcct
+     3781 gataatcgcc aaatgaagtc gcaattagca gtacatgact ggcagatatg tcgccggaga
+     3841 cggtatgggg gacctatcct aggttggcac gcgagcgcga atgacgccta tcttatcccc
+     3901 ctgcacgtga tggtatcgtc ccaactatct tttacctcat caacgttttc ctgcataatc
+     3961 tgcaagatgg agagtccgcg agtgcgggga gtacgagatc acaaatctgc cctgaagaca
+     4021 aagctcgcag gccgtactca ggaaatagca tcgactcaca catatcggga acggcaaaga
+     4081 gtgcatcggc caatgcaaac tattgaacgt ccatgaaatt gtgtcaaact actagtgtgt
+     4141 ggacttgcgt caaggccatg gcgcaatact caaagccccg gtatttatcc cccgcagagt
+     4201 atccgtgcgg atggagttcc acagctcttt ggacatgcaa tgcgtggcgc tacatgctcc
+     4261 gctgatacag aatatctaat gtctcgcctc ttgccgtcga ccctacaact actgcacggg
+     4321 cagagtggac gcgacccctg agcggtgcag aaccttagta taaggcaagg gtggcacggc
+     4381 cgagccgcac ttgctcctac taggccgtgc tcgaagctat tgatgcaagc acagtattcc
+     4441 cgatttgtaa agcaaggtgc ccgtagccat acacccagct actcaccggc caatttcgac
+     4501 cctctctatc tcagacctcc gcatattccc aaactcctgc tcaagtatga aatgaccggc
+     4561 tcctcctaag gcctgcggac atggagtcat gcgtggaatg ccgtgtaggt agggtacaca
+     4621 cagccttacc atgtagggca ataaattata gactactgac attgattcct tgagggcccg
+     4681 ttcacttgtg ggggaaccag gaaggcgccg atagtcatca cttaaacaca tgcgacgcat
+     4741 ccatttcaag aaagacacgc tacgggtcta caccgcctat agttctaatt tgggccccgg
+     4801 tacgcacatc gatgtactct ccattacagc atagcacatc agcggcccta gttagcgctt
+     4861 ctttttgttc caacattcaa tagcggggac tgcattatcc tcaccctatt tgttgcatag
+     4921 gtatttggcc gtatacttgg gaaagagcaa ccacgggagt gcactagaaa ctgattcacc
+     4981 catgttataa cgcgttgctc gcaagtcgta ctgtggccac gcacaggtca ggcaatcgca
+     5041 accatgtctt agcagtttgt aagaagacct ttaaacatgt acctcacagc aatctcggaa
+     5101 cttttaattt tcctgagtca atgacatgct agctccgtcc acttgtaatc accgtcataa
+     5161 cacagttagc ctgcaaaagg gcgtgtacac cttgccactt taaagctgac cgaataacct
+     5221 acctacagga gatgcttagt gccacggaat gatctcgcaa tgcttagtct tacacccagt
+     5281 gaatcaaccc aagacctcgc cgactgaacg gtattgagtc caatcccgag aggcaattta
+     5341 tggccgttag tgacagtcgg tcgctgatag aataaggcag actcgtctta agcgggctgc
+     5401 tttaagagaa aatggagccc tgacgaagaa gtggatgaac caggttttga caacgtccca
+     5461 tattggtaat gtaggctcgt tatcaagaga taggtttaga aggctcaatg ctcgacgtaa
+     5521 aagaagtctt aagctctatg agccagtgat gagagctaat tatagggcgc attcgttggg
+     5581 gtaaggttgc gaattgtcat ttaactaaaa ccgacggcaa tggtttcacc ggagctgaga
+     5641 tcgcattaaa gtcacactac gaattatttg tccccgcggc tccagagaca aatttctagg
+     5701 agtgggttca tggagaaccg tgacaagcat ggtagcttca aatagcgtca tcggatctta
+     5761 aagtgattgt gacatatatg ggattgcgcg tctctcttac acaagctagt gtgcgcgagg
+     5821 tgctgaacac ctattacgtc aactcccggg atcccggcgg gttacagaga cataagcagg
+     5881 gtgtccatca ttaacttcga tgttgagccc gtgccctgat caaacacctc tcgtagtagt
+     5941 gggtgccggc cgtgtattat tttgggggag aggatgcgcc ctaagcaatt tctttccatc
+     6001 ggccagccat tcgacgccgg cacgcaagtt gttgcgggca ctgttgcagt tcccgtacta
+     6061 gagtctcaag tctagaggta ccagcatcag gaagatgggt acttcgtgtg gatcttctcc
+     6121 tgaacctgaa acctgaagag ctaaagcgcg tcgcgctgcc atacgataag tcgctctcat
+     6181 ttccggaaga cgtcgttggg tgatggcgaa caatcgcgaa acgaaaatcg cggtcggtat
+     6241 gttgattcaa gacgggctac gggcgggtta ctaacaggtg cgcagaaatg tgatgggtca
+     6301 cttgaccatg aactttcgcg ccgtcgcttc tgtggactgg ccggctccct gatagtgcac
+     6361 tagcccgttg atatgcccat taccatttgg cggcgcagtg tgccagcggg attaagatgc
+     6421 gtggcgtaca actatccgca ctttgctgac gcacaaaggc aactgatgga cagccttcgg
+     6481 gcattcgact ggttggctga gttcgcctgc ctattaatat gcttgtggaa attgatttac
+     6541 agcgcctact tctacttagg tgtacctatt tacggcacag ggataaaggc tgacagaaaa
+     6601 gtcctggaca ggtcataggt agttgtcaga cctacaatgg tataacttga gagtcctgta
+     6661 ccgcacatgc ggttgtagct agatgtccag aagaccgtag ctagcgacga gtgggttgca
+     6721 cgcgcatttt gggaaggggc tgcgcgaggg tggggtcacg ggttattcca tttctaaatg
+     6781 ctaaaccagc agttgcttta gttctgacct agcaggcatg tcatatgtat ggctagatta
+     6841 ttagtacaat gcaggactaa gaaagcctga gacttaaatg cgttggtttt tcagccgacg
+     6901 ggccgggagg gcagatggcc gaatgcgcac tgaggagtgc attgcgaggg aataggcgga
+     6961 ccaccaggtc ccctcacata ctgtggataa acctacccag ggacaactca cgccatcatt
+     7021 ttcaagagta gcactacttt ccactaagta cggtttgtcg agagccggtg gcaccgtgcg
+     7081 acgagcttgt gggcactagg cgaaccgggt tatataggac tgccttgcgg tgcgggaata
+     7141 ctttaccccg tggagaggcc ataaaagctt acatttattg tagccgctag cggtttcgac
+     7201 gcgctcaagt ggggctttat cttagagtat caaataatgc cctctcagct tcatcttgat
+     7261 ttttgtgttt ggggtagtgt atccgatggg tcaccttctt gaccttgggg agctccatcc
+     7321 atcgtaccaa tactccgttt ctttgtgttg cctaccgagt aatcgaatac cgcacgaggg
+     7381 ctagaatcta atttaaggtg ggtcttatcc ctgttgtttg gacctaacgc tgtaacaaat
+     7441 cacttccgcg acgggtgtca ttacgtcttc tatccgccac cggttcaaca gtgcgtcgaa
+     7501 tgccaagtcc ctattacccg cattgtaaag ccattacaat acctccggtg atataattga
+     7561 ttgccggttg gcaagggatc atctgtacgg gccgcgattg attgctgata aggaacggcg
+     7621 gtaaggaacg tatcgcgtac gaggttgtac actggaaccg ctaaacaagc ggtatcgcta
+     7681 aattaccggc gattatatca agggaatctt aggtagcacg aagccctacg ccctggaaac
+     7741 aggatcggcg cgaggccgtg gacatattag cctacgtttt tttacaccca gatttccgac
+     7801 gatgtccaca gctaaggcta tcctaaaccg caaacacata taaccgcagt ataaagcacg
+     7861 ggatgattcc ttggccatct tgcaagcagt gcaaggcaat tctggtgata ggggcaaggc
+     7921 agtgaaccga gtggtcagcg tattgtgacc ctgcaattgt catggcagat aattgtttat
+     7981 gaacctgttt cacacaccca tcccttggat ctccagcgta gttactaata gtacgatttc
+     8041 ctggtgttct gtcacccgcc ttgctgcctt cacgcctgcc ccacgttttg ctgtccactg
+     8101 aatatcgctc taattaatag gtgtcacact gtatcaggta agtccattcc gggtgctatt
+     8161 ggatcattcc tgagatgtac caccgatccc ataggcgtta ggtcttacat ctggagtgaa
+     8221 aaagatcagc atcgaactat aggtagataa aggtcatgac tgttaacaga gaatcgttcc
+     8281 tatcgcaacc ttcactaact ggaaggcacc cccacacttt gattagtaag cccctagcga
+     8341 atgtagtgat ccaagaacat cgagtatact ttagctctcg gttcaggcat gtatgcaatc
+     8401 gaccaccctt ccgttcagag tactctcaac cagcagattt ctaaacttta tagcctccgc
+     8461 ccactaaaat tgccttatct caggttgact cttggatgta gctgtaatct aacatacaca
+     8521 tggagctgcg gcaaattatc gtacgtccaa accaccaccg gatcagtggc gatactattc
+     8581 tcgcaaaaaa gccatccagc attggaacaa gtgttaacca gcatttttct gagtcccccg
+     8641 gaaagaaagt tgactacact acatccataa atgctagagt gtggattcgc catgtgttac
+     8701 aacggtcaac cgaaaggtta gcatgatact tcgttgttca atcggacgtt cgagcgccct
+     8761 ccctgtttat cacttgatcc cccttttgaa acatgtgcgc tgcgacgcag ggctgggaga
+     8821 gtcaccggaa accaaaagcc cgacctcgga cgtgtagggc cctccgtttg ccatcaatgg
+     8881 cgatgtagga ttctctttta atacaacgtt cactcaatta acgtcttggt ataagcgtcg
+     8941 aacgtgaccg aggttgacac cagtgtcacg gctgcgccgg ggtttgttgc tccgcgtgta
+     9001 cagggtattg gttcgatggt gcctcctcta cgtagatcta ctggataacc gtccccaata
+     9061 tccgcttccc aacgtagatt gccgacaggc ataagcttcg ggggcgcaaa ggccgacgtc
+     9121 cgcattgcag tgtagctttg tgagcaggaa gtgtgatagt ctttcgatta ttaaagtctg
+     9181 agctgaatga aaaaaggtcc aacgaatgga ggacgcgaag acatgggtgt ctcttatggc
+     9241 ccgagcggga gtaatggcgg ttcgtacata aaggctgaaa ggattctggc gttagctgtc
+     9301 ttacgttgga ttggcccttc aaattatcga tgttagctga ttcggtgtac cgggcgagga
+     9361 aagcgctctc agaacaactt catatacgag gttcgactat aatggtctaa gctcctgggc
+     9421 tagtctcaag aagcgggtac ctttagtagc acgtatcgac ggcaaagcaa agaataaaaa
+     9481 cttggctttg catcgtgcaa agatttctaa ctaggttgtt taagggctgg tatctatgtc
+     9541 ccgctataac agcgcgccta cagtagaagt ttaaccatga catacctttg aagtgttcgt
+     9601 atcacacaca aggaaggagc atgtggacac cactgagctt tgatcagcac gcgtctcaga
+     9661 gtttcagggg gacccaaatt actggtcctc aattgggacg cgaccgcatc tccccacgaa
+     9721 agcttatggg gattgcccac tgcccagctt caaatctgaa ggttcggctt attgacaggg
+     9781 tctaacacgc agctcaactg ctcgaggtta gaggcgtaat gacgggcccc gatagccttc
+     9841 tacgattacg tccagcagga accccacagc ttttccctac gtctaacacc gtgaaagcaa
+     9901 aactgtctgc ccttttacat ggtctttaag gaatctctgc acttatgtta ttaggtaagc
+     9961 tcccataaga gcaccacttc gtgtaccttg ctaactccct tcatccccac ccgcgaaaac
+    10021 ttaagacgtc acccctgtta ttatcccgtg cactcctaaa gtgcgatggg caagaacgca
+    10081 aacaattgtc tgagatttat atgggcggcg gacatagtca gagagcctta tataatctcc
+    10141 cacgtcttgc cagtccgagt tatgagaaac ccgggaccga tgacgctatt acggtcgccc
+    10201 agcgaggttc aacagagcga ggcataggag tcattacgcg tgttagcttc aacatgcgtg
+    10261 gaagtgaaac ggatctataa aacggcgtgg agtcatcagc ttgagcagat ctaacttact
+    10321 cgccacgcgc gcaaatcgtc tttcgctgtc cacgttatac gtaact
+//
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,2 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,depends_on,enzymes,used_in,parts
+construct_1,construct_1,1,10366,6,,BsaI,construct_3,part_A & part_B & part_C & part_D & part_E & part_F
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1_type2s_mix_connections_graph.pdf has changed
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_1/construct_1_type2s_mix_parts_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_A.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,197 @@
+LOCUS       part_A                  4292 bp    DNA     circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_A
+VERSION     part_A
+KEYWORDS    "creator:SynthSys Center".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     RBS             2332..2343
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2208..2238
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     promoter        2289..2323
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    3162..3178
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      228..233
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            1009..2028
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      51..56
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2350..3027
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff00ff"
+     CDS             complement(3376..4191)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_RNA        87..639
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2257
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      3119..3146
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2053..2100
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2278..2281
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_RNA        complement(90..197)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    726..734
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2274..2277
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      51..639
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2161..2185
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      206..211
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    complement(3292..3332)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      760..1008
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      3032..3103
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3158..3161
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3173..3178
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(3376..4191)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2258..2262
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3342..3365
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3204..3227
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2256..2273
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      72..77
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2029..2052
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             1009..2028
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3237..3265
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3154..3157
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    3180..3290
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2212..2236
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1..24
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+ORIGIN
+        1 tcacaggatg gtccaacgaa actaggcttt agacgaggga tgaatgaccg acccccactc
+       61 gtggcactaa cggacagact tccctgacgg ttattcgacc attaaagtca gacatgcggg
+      121 ggtgaataaa ttagccaaat tgtgtcgaag aaaagacgtg cggctggcac ataaggcagt
+      181 cttgatccta gtcttgcagg gatgcacgta agtcgcctca attaactgca gccgagctcc
+      241 aggttaccaa agaccctagt atgccagggc ctaacggttg gagtatatta tgggtacgca
+      301 atagtgcgga agttaacctg ggcaacatcc aggtgagagg ttggacggaa gcgacagtaa
+      361 gtggccatag actgccgagt cgtgttaatg aatcgctata cgcccatgga gttgtggggt
+      421 cgttttatcc gagtaggggc ccgctgacta cttcgtccag acaatatgcc gtcttcaata
+      481 gtctacctga gagtcatgcc ggcatttccg acgctgagtg aaacccgcgt agccaggcga
+      541 aatttgcatc ttgaaatacc actgcagatc agccagtaag gcccatataa gggcgctggt
+      601 gttctggcga cagataaagt gttatctaat gtaacccgcg gacttttaga ggatacttga
+      661 atgcgggcat atcgtcccac cagcgtcacg tggtcgggct agcggcagac aaactctgcc
+      721 gatgtttttc tttgccgcga tagcgggcta gtcaattcac tatccggcga tgaagcatag
+      781 attgttatcg cgcttatgcg gaggataatc aagtcttggc agaacctgct cgctcatgca
+      841 ctggtgaggc gtggttatcc taacaaccgc ctaggacgaa gaatgggctc ggtagggaca
+      901 gttcgtgcgt ttagcttcgt cccatcttaa tgctgtctgg agggaggcta catgcgaaca
+      961 gaagccgtgg gcgaaagttg ttgatccggg tctaacacgg ataagggcca tggtgaacgc
+     1021 atcatgcgat acttcttggt agttcttcta acatgaccgt gccatagccc ttaccctttg
+     1081 aagaagttaa cctatctgcc gtctcctgca cgaatagcga ctggactcgg gtattttgga
+     1141 tacctcacga aagcacttcg atcggccgaa gcatggatat ttcgccggac gggcccgaat
+     1201 agagagcctt gtatgtcggt tagtacaacg cagtcctgga gacatctacg cggatgggcc
+     1261 taggggctgg acttaacatt gggtaacgta cctggtccaa agtgaatgca aagcactttt
+     1321 acaaagcgcg ggtccccgtg ggtgtttagg gtagaagatt ggcggatgct acgaacgatc
+     1381 ccgctttgaa actatcatta catcgtgtaa aagagacact taacaaaggc caataaactg
+     1441 ccagtaagaa tcgctcagtg cggtgctggg gacgctaagt aggggcaaca gccagtgaag
+     1501 gacgtgaccg acctttctca gataagatat gctggcgtct atctaataag catagtgaaa
+     1561 aaccaaccat ttcacttaca cgaagtacat ttgcattgct agtaaagacg cctaaacaga
+     1621 agtgcccttg catgctgtat gtctatagtc cttagggaag catcagccct tctacttatt
+     1681 cgaggtctga gaaaccctgg acaagctccg aattattcaa tgtgcctgtc tccgaggtta
+     1741 gatagcgcta tgctcttaag agttgcacag aatgaccatc ctggaatgtc cctggagggg
+     1801 tctaggtatg ctgatcgaag ggtgctctaa ggacttgacg tgcgtccgag gagggtgctg
+     1861 cctccttcgc ctttagatcc aacgcggatc acatgcgcgt gagctaatag gatcaccttc
+     1921 tgctccgatt tttaccctcc tgggtcactt ccgaatgagg tagcgggcga aatataatgt
+     1981 ctccactcgt aggtgttccc tgtatgtgaa gctctatagt ggacaaaggt ttgatgaact
+     2041 agcccccgta tacgctctca ccgacggacg cgggggtctg ttatttgaag catcatacat
+     2101 gcgaaggtgc cttctcagca acgaaaggta gtgggagtgt acaagttcaa tgcgccgcca
+     2161 taggtctgag tatacaaggg gatgccccca tccacaacgg gattggctac ccggagagct
+     2221 ggctccgctc caacaaataa ttatattaac ctattggaat tccacctgca tatcagagga
+     2281 gagagacctt tacggctatt ctgtttaccg gatccatcgg taccaaggat cagaaagtga
+     2341 cacggtttga acgggttgtt gtaatacttt gagtatacct ctgacgctga gcgtgtcgtc
+     2401 ctgagcgcag actcaataac atagcagtcc gacatcgccg tgatatgtaa atgcaacgaa
+     2461 tttaggtctt gactcggtct accatgtcaa aagggtagcc agatttcagc gcgaaattga
+     2521 actttgtgtt tagtgtgggg tcctcggtta caaaatagga tcagacatgt gtgattttgg
+     2581 taacctagtc tggcagtccg acagacttcg ctatgatttg atggggccgg cctataattg
+     2641 gcttgcgcaa cccgctcatc tcgggcgtgt tttacttcct gcggtcccca cgccctattt
+     2701 tcgggccagc tgtaggtgct agagtgaatg ctggcgaata agattccccg ctatttggcg
+     2761 cctcgccaca gctctggcac tatgggggga gtttctctgt tccttaaaca gcacccgttt
+     2821 ttgaggtgta ttggtttcgg ttctgcatta ggcaattcgt accgtacaat caattacgac
+     2881 acattggcgg cagttatcag ctacccatcg caaagcacac acccacatgt atctattttt
+     2941 cgcaaattcc aaaagcttcg attgagattg catcggtagt ccctcagaca tgtcgtaatc
+     3001 gaatgcctct tgttccatga gagagagaag tatggcgcga accgctctgc ctttaatttg
+     3061 gttctaccat ccacgagttt aaggggcata accctgccca gcactttccg aggctcacgt
+     3121 tcatgctacg gtagcacctt tctgcgggtc tcacgctgtc aatatgcagg tgctgcagga
+     3181 atttgtctcc aatcgacttg agatatcgca agcatgaaat tatattagac acgccagaga
+     3241 acttgggaag cagcactggt agtgatagca acccgagtac agtaacgagt gagcttctga
+     3301 tcatgagctc tcctacggcg tcaatgcgac gaatgcccag catgcactct cgctatccat
+     3361 gcctgctagg gtggcattat gctcaggaac agttgtagct tggatatcgt ctagatgaaa
+     3421 tacctggaca ctggttagcg tcgtcaagca ccaaggacat tcacacgctc gcggtctttc
+     3481 gtctccctaa gcgttcggca gtcgggcgtg aagaggttgt aatcagacgg aacaaagcct
+     3541 gaaaaaattc cagcgacgta gtattcatga tcctgtacca tctgtagccg ccgcggcgca
+     3601 cgattgaatg taggctacta accccatccg tgttagcgat gtgagtttct accgcaacga
+     3661 atgctcaagc gaaccttctt ctttcgtccg caacccacaa gccgtggtta tgacagctaa
+     3721 attgtcccag acatcccttt attacacaag agctccagcg gaatacctag tcacagcggt
+     3781 aatgacacaa agctcttagt tagtccaggg actacttctg tctacagcac atcacactca
+     3841 ttatcagcat cagtgtagag acggagaaca tgggctatcc tataccaaga tccgccatct
+     3901 aaacatttga agtttcccgt cttctataac ttagcactcg acgctattct gctgagtgcg
+     3961 cttagtctgt agcgacttgc gaaatccata aactgagaat tgaaagagag tgcataaccg
+     4021 aaacctttgt ggcatatttc cgttgaaacg taccagaaca gccgtttagt gcggaacata
+     4081 cagtatcctg ataaagcact caacccaaca gacaccctat gccgatagcg ggatgctaac
+     4141 aagtatagtc atgatgattt ctcggacagc ggggtttggt acagctgcaa tccgtgattt
+     4201 aaattcggac ctctgcacac accgacggtt acccatatcc tctacggctg taggaagttt
+     4261 taccttggat gtcattctga tttcggcgta tc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_B.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,124 @@
+LOCUS       part_B                  4259 bp    DNA     circular UNK 29-OCT-2019
+DEFINITION  .
+ACCESSION   part_B
+VERSION     part_B
+KEYWORDS    "Source" "Sequence" "Freezer" "Shelf" "Box" "Concentration" "Use".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     primer_bind     531..550
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      3078..3135
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(join(4216..4259,1..616))
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     exon            2863..3060
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     gene            2863..3060
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      4101..4195
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#9eafd2"
+     primer_bind     complement(3410..3429)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     778..796
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     misc_feature    859..862
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     primer_bind     complement(3159..3176)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    863..3060
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     rep_origin      complement(3330..3918)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3061..3064
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      800..843
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+ORIGIN
+        1 cgggtctagc cacgcggctg aaaatgcgcc tcaccaagtt cagagagttg taatttaaag
+       61 gaccaaagaa cgtccattat gaagacacca atgagaaaag ttcattgcga tcgcagctta
+      121 gactgacgtg aagttccaac atttggcata cgtacttgtt aagttcctcc ggctatatgc
+      181 gctaggcgca ggtatattag ccggacatct gcaaggttga cgctgaagcc ttatcggtaa
+      241 tgcaagcaca acggtattgc agacacacaa taggaagtta tgttaacagg agagggtgat
+      301 gccgatgatt acgccccgcg tcgacagtac aataaaacag ctagatcatg tcgaaagtgt
+      361 aggcaaaaca ggtaggtgca ggacaggagg gttccctcaa gtcggcttgc tttatgtggc
+      421 gaatctgata cccataccgg ctatacatcg gccagggaat atcacagatt ttaaatgagc
+      481 ggagatagac ctatgggacc gcatcgatgc aagacatcgc ctacagatac ataatctgga
+      541 agacgcagat atcagtacgc tccttcctgg gaggcgtggt ccttggcacc agtcggccac
+      601 cccttagcgt ttcacctaag caacgaatcc aggactcctc ttttagcgtt tgggtgtcag
+      661 gcgcatcagg agtggttaaa tgaacgctgt acttcgcaag ataattgtga agatctctgc
+      721 tattccttaa cattaccacc aactttgcct acatatggcg taatcaaaaa tgcagcgggg
+      781 tgctcgatcg tgaaccctca atcacgatgt gctatggcgt agccacacaa catagttccg
+      841 gtctggaatt cggtctctgg agagcatacg gtgctctggg ctcacacgta cttcctcttg
+      901 tcacgcgcct ttgtagagca ttagggcgga ggtcactggg acggggatca gagagcttaa
+      961 aatcccaagt agcagtgcct aaggtgtaga atcttgtgca gatcttcgtc tggcccgaaa
+     1021 cctgggcctc cacaacaatg tcgggtcttt tataatttga aaacatcgcg ccttacccgc
+     1081 accgcgcagg acgattagac acagggggtc atgtccatgg ttcggggtaa gccaaattta
+     1141 catcgagtgt gggcttcatt gaggagaggg cgttacgata cccgttaaat gaaaacccgg
+     1201 acagtctcta actgataggc ctgataatcg ccaaatgaag tcgcaattag cagtacatga
+     1261 ctggcagata tgtcgccgga gacggtatgg gggacctatc ctaggttggc acgcgagcgc
+     1321 gaatgacgcc tatcttatcc ccctgcacgt gatggtatcg tcccaactat cttttacctc
+     1381 atcaacgttt tcctgcataa tctgcaagat ggagagtccg cgagtgcggg gagtacgaga
+     1441 tcacaaatct gccctgaaga caaagctcgc aggccgtact caggaaatag catcgactca
+     1501 cacatatcgg gaacggcaaa gagtgcatcg gccaatgcaa actattgaac gtccatgaaa
+     1561 ttgtgtcaaa ctactagtgt gtggacttgc gtcaaggcca tggcgcaata ctcaaagccc
+     1621 cggtatttat cccccgcaga gtatccgtgc ggatggagtt ccacagctct ttggacatgc
+     1681 aatgcgtggc gctacatgct ccgctgatac agaatatcta atgtctcgcc tcttgccgtc
+     1741 gaccctacaa ctactgcacg ggcagagtgg acgcgacccc tgagcggtgc agaaccttag
+     1801 tataaggcaa gggtggcacg gccgagccgc acttgctcct actaggccgt gctcgaagct
+     1861 attgatgcaa gcacagtatt cccgatttgt aaagcaaggt gcccgtagcc atacacccag
+     1921 ctactcaccg gccaatttcg accctctcta tctcagacct ccgcatattc ccaaactcct
+     1981 gctcaagtat gaaatgaccg gctcctccta aggcctgcgg acatggagtc atgcgtggaa
+     2041 tgccgtgtag gtagggtaca cacagcctta ccatgtaggg caataaatta tagactactg
+     2101 acattgattc cttgagggcc cgttcacttg tgggggaacc aggaaggcgc cgatagtcat
+     2161 cacttaaaca catgcgacgc atccatttca agaaagacac gctacgggtc tacaccgcct
+     2221 atagttctaa tttgggcccc ggtacgcaca tcgatgtact ctccattaca gcatagcaca
+     2281 tcagcggccc tagttagcgc ttctttttgt tccaacattc aatagcgggg actgcattat
+     2341 cctcacccta tttgttgcat aggtatttgg ccgtatactt gggaaagagc aaccacggga
+     2401 gtgcactaga aactgattca cccatgttat aacgcgttgc tcgcaagtcg tactgtggcc
+     2461 acgcacaggt caggcaatcg caaccatgtc ttagcagttt gtaagaagac ctttaaacat
+     2521 gtacctcaca gcaatctcgg aacttttaat tttcctgagt caatgacatg ctagctccgt
+     2581 ccacttgtaa tcaccgtcat aacacagtta gcctgcaaaa gggcgtgtac accttgccac
+     2641 tttaaagctg accgaataac ctacctacag gagatgctta gtgccacgga atgatctcgc
+     2701 aatgcttagt cttacaccca gtgaatcaac ccaagacctc gccgactgaa cggtattgag
+     2761 tccaatcccg agaggcaatt tatggccgtt agtgacagtc ggtcgctgat agaataaggc
+     2821 agactcgtct taagcgggct gctttaagag aaaatggagc cctgacgaag aagtggatga
+     2881 accaggtttt gacaacgtcc catattggta atgtaggctc gttatcaaga gataggttta
+     2941 gaaggctcaa tgctcgacgt aaaagaagtc ttaagctcta tgagccagtg atgagagcta
+     3001 attatagggc gcattcgttg gggtaaggtt gcgaattgtc atttaactaa aaccgacggc
+     3061 aatgtgagac cctgcagtcc gcctacacct ggctcactga ggcggcaacc gttatcgaag
+     3121 cagcatgtat tggtagtacc tgtcgccgat ttccttggga gtgcgctgtt gcgataacgc
+     3181 ttatttatgg tttgcgcggg atgtatctaa tgcggccgcc gcccgatcag cctgaacact
+     3241 gcggtcatga gccggtccat catgcagttc gcctgtaatt ataacctatt tgttaatggg
+     3301 gcttacagag gagcttccaa cgcatctacg agtaacggct gggatcacaa cttagccacc
+     3361 ttgtagcagg gacataccgc tttgcgacta ctgcgattct ctaacgagtc ttctgattgg
+     3421 tcctatgctc tttcaaaatc tcgataccgt agccaaccct gctgcccacc ttaaactatg
+     3481 acaggacaca ccattgtgcc aacctacacc ttaccagtag ttctgctctc caccactaat
+     3541 acgatgtcag aggccagaag gagcaccgtc aacaaacgcg ataatcaggg cggcgaagat
+     3601 ggaagtagct tgggttgtcg gtgggcaggt caggcgttag tgttatttga ataccaactg
+     3661 ttagaccaca gcgactcgaa cagtccgcaa gtcaagtgcg gtcggctttt acaggtggcg
+     3721 gattttcatt ccaccattcg ggtctaggtg tggtactaac cgcggtcata cgtggagttg
+     3781 aaccgcctga cgcactaagc tatgcgggca acaatatcgc caaagtcatt gtgttgggtt
+     3841 ttcacaacag tcacttcgct cacggccgaa ttaaatatct ctaactatta agccattttc
+     3901 caaccatcgg ctatcccagc ggttcaatcc gaatcgttac cagtgggtag ctgcagagga
+     3961 tcctaagggc gggtcccgct tactgtaact cgtcatgtct cgtggtctac caattcggtt
+     4021 agtattcgtg ccatgtatct cataagggtt gcagtttcgt cattgtcgta gttccttaat
+     4081 ggactggtac gacccggttg ttatacaacc atcaatcgtt aacggacatt agtgagccga
+     4141 ggagaagacc catcagcgga taacccgcca ttatcaccga tactgacata tgagtgccat
+     4201 actgggactg gcttcacgtg agggacctca aagtgagtcg tacaaggcag ctcctcaaa
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_C.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,99 @@
+LOCUS       part_C                  3423 bp    DNA     linear   UNK 20-NOV-2019
+DEFINITION  .
+ACCESSION   part_C
+VERSION     part_C
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     CDS             18..3275
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             3276..3404
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2486
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    3411..3423
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3407..3410
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    14..17
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1..13
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3131
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    2078
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    14
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+ORIGIN
+        1 tggctaggtc tccaatggtt tcaccggagc tgagatcgca ttaaagtcac actacgaatt
+       61 atttgtcccc gcggctccag agacaaattt ctaggagtgg gttcatggag aaccgtgaca
+      121 agcatggtag cttcaaatag cgtcatcgga tcttaaagtg attgtgacat atatgggatt
+      181 gcgcgtctct cttacacaag ctagtgtgcg cgaggtgctg aacacctatt acgtcaactc
+      241 ccgggatccc ggcgggttac agagacataa gcagggtgtc catcattaac ttcgatgttg
+      301 agcccgtgcc ctgatcaaac acctctcgta gtagtgggtg ccggccgtgt attattttgg
+      361 gggagaggat gcgccctaag caatttcttt ccatcggcca gccattcgac gccggcacgc
+      421 aagttgttgc gggcactgtt gcagttcccg tactagagtc tcaagtctag aggtaccagc
+      481 atcaggaaga tgggtacttc gtgtggatct tctcctgaac ctgaaacctg aagagctaaa
+      541 gcgcgtcgcg ctgccatacg ataagtcgct ctcatttccg gaagacgtcg ttgggtgatg
+      601 gcgaacaatc gcgaaacgaa aatcgcggtc ggtatgttga ttcaagacgg gctacgggcg
+      661 ggttactaac aggtgcgcag aaatgtgatg ggtcacttga ccatgaactt tcgcgccgtc
+      721 gcttctgtgg actggccggc tccctgatag tgcactagcc cgttgatatg cccattacca
+      781 tttggcggcg cagtgtgcca gcgggattaa gatgcgtggc gtacaactat ccgcactttg
+      841 ctgacgcaca aaggcaactg atggacagcc ttcgggcatt cgactggttg gctgagttcg
+      901 cctgcctatt aatatgcttg tggaaattga tttacagcgc ctacttctac ttaggtgtac
+      961 ctatttacgg cacagggata aaggctgaca gaaaagtcct ggacaggtca taggtagttg
+     1021 tcagacctac aatggtataa cttgagagtc ctgtaccgca catgcggttg tagctagatg
+     1081 tccagaagac cgtagctagc gacgagtggg ttgcacgcgc attttgggaa ggggctgcgc
+     1141 gagggtgggg tcacgggtta ttccatttct aaatgctaaa ccagcagttg ctttagttct
+     1201 gacctagcag gcatgtcata tgtatggcta gattattagt acaatgcagg actaagaaag
+     1261 cctgagactt aaatgcgttg gtttttcagc cgacgggccg ggagggcaga tggccgaatg
+     1321 cgcactgagg agtgcattgc gagggaatag gcggaccacc aggtcccctc acatactgtg
+     1381 gataaaccta cccagggaca actcacgcca tcattttcaa gagtagcact actttccact
+     1441 aagtacggtt tgtcgagagc cggtggcacc gtgcgacgag cttgtgggca ctaggcgaac
+     1501 cgggttatat aggactgcct tgcggtgcgg gaatacttta ccccgtggag aggccataaa
+     1561 agcttacatt tattgtagcc gctagcggtt tcgacgcgct caagtggggc tttatcttag
+     1621 agtatcaaat aatgccctct cagcttcatc ttgatttttg tgtttggggt agtgtatccg
+     1681 atgggtcacc ttcttgacct tggggagctc catccatcgt accaatactc cgtttctttg
+     1741 tgttgcctac cgagtaatcg aataccgcac gagggctaga atctaattta aggtgggtct
+     1801 tatccctgtt gtttggacct aacgctgtaa caaatcactt ccgcgacggg tgtcattacg
+     1861 tcttctatcc gccaccggtt caacagtgcg tcgaatgcca agtccctatt acccgcattg
+     1921 taaagccatt acaatacctc cggtgatata attgattgcc ggttggcaag ggatcatctg
+     1981 tacgggccgc gattgattgc tgataaggaa cggcggtaag gaacgtatcg cgtacgaggt
+     2041 tgtacactgg aaccgctaaa caagcggtat cgctaaatta ccggcgatta tatcaaggga
+     2101 atcttaggta gcacgaagcc ctacgccctg gaaacaggat cggcgcgagg ccgtggacat
+     2161 attagcctac gtttttttac acccagattt ccgacgatgt ccacagctaa ggctatccta
+     2221 aaccgcaaac acatataacc gcagtataaa gcacgggatg attccttggc catcttgcaa
+     2281 gcagtgcaag gcaattctgg tgataggggc aaggcagtga accgagtggt cagcgtattg
+     2341 tgaccctgca attgtcatgg cagataattg tttatgaacc tgtttcacac acccatccct
+     2401 tggatctcca gcgtagttac taatagtacg atttcctggt gttctgtcac ccgccttgct
+     2461 gccttcacgc ctgccccacg ttttgctgtc cactgaatat cgctctaatt aataggtgtc
+     2521 acactgtatc aggtaagtcc attccgggtg ctattggatc attcctgaga tgtaccaccg
+     2581 atcccatagg cgttaggtct tacatctgga gtgaaaaaga tcagcatcga actataggta
+     2641 gataaaggtc atgactgtta acagagaatc gttcctatcg caaccttcac taactggaag
+     2701 gcacccccac actttgatta gtaagcccct agcgaatgta gtgatccaag aacatcgagt
+     2761 atactttagc tctcggttca ggcatgtatg caatcgacca cccttccgtt cagagtactc
+     2821 tcaaccagca gatttctaaa ctttatagcc tccgcccact aaaattgcct tatctcaggt
+     2881 tgactcttgg atgtagctgt aatctaacat acacatggag ctgcggcaaa ttatcgtacg
+     2941 tccaaaccac caccggatca gtggcgatac tattctcgca aaaaagccat ccagcattgg
+     3001 aacaagtgtt aaccagcatt tttctgagtc ccccggaaag aaagttgact acactacatc
+     3061 cataaatgct agagtgtgga ttcgccatgt gttacaacgg tcaaccgaaa ggttagcatg
+     3121 atacttcgtt gttcaatcgg acgttcgagc gccctccctg tttatcactt gatccccctt
+     3181 ttgaaacatg tgcgctgcga cgcagggctg ggagagtcac cggaaaccaa aagcccgacc
+     3241 tcggacgtgt agggccctcc gtttgccatc aatggcgatg taggattctc ttttaataca
+     3301 acgttcactc aattaacgtc ttggtataag cgtcgaacgt gaccgaggtt gacaccagtg
+     3361 tcacggctgc gccggggttt gttgctccgc gtgtacaggg tattggttcg tgagacctag
+     3421 cca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_D.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,96 @@
+LOCUS       part_D                  2682 bp    DNA     circular UNK 30-OCT-2019
+DEFINITION  .
+ACCESSION   part_D
+VERSION     part_D
+KEYWORDS    "Source:Subcloned from vector Andrew" "Sequence" "Freezer" "Shelf"
+            "Box:Mobius box" "Concentration" "Use:Mobius".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     rep_origin      complement(262..850)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2642..2671
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     terminator      1991..2034
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             2054..2566
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    1919..1938
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     misc_feature    2050..2053
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    2576..2641
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    143..162
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     misc_feature    2675..2678
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     CDS             2618..2641
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     CDS             complement(1148..1807)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     terminator      1033..1127
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgtgaatta agaccaatcc actggagctc tatacaggac atcagcgatc
+       61 ggtcgagtaa aaccgagttt ctggactccc ttagtctgag aattgtacct tattacgaat
+      121 ccggaaatga agtgcgctca taaaatcttg atcgctaact gttttccgct ttttgaacct
+      181 acagtcagct atttcgccgc aagcgaggtt tatccccttt tgtgtgtgtc agcgggcgaa
+      241 cgtggaggac aattatgacg aatgcctaat aaccaacgta ggcttggctg gtgaggacat
+      301 tgcccttccc cttctactaa ccagtgttgt tcagatcatg taccaagtgc agtaatgcta
+      361 atcccctgaa ttctgacgtt ggatttggag cgtgattggc aattatccgc tgcaaggcgt
+      421 agtatcgcta tctgggaaaa cttagggttg caagcaaggt catcgcccgt ctctagatcc
+      481 gacgggagcc tcaccctgca tgaggaagtc ctaatccgct ctaaacaaga gctgaacact
+      541 ggatgtctcg cagtagattt gctagaatgc aatgctggct cgtgtgcagc ctcaaggtca
+      601 ccatgcttcc gttaaattcc acgctctccg agtctgctgg ttcgggataa atctacgtga
+      661 cattcgcgag gtcccggcct gtagatcgtc tcggcaggag agaacacggt tgatccccca
+      721 cgcggaaccg atagatgcca ggctagatga tgactgaagg tagtttgtac gagtgacctc
+      781 tctagccaag tattttcccg tctcttaagt tatagccgct ctcattccgg gttgtgatat
+      841 ccttcatatc cactctctgt aaaatgctgg gttgttcttc tctccacggt cagggaatcg
+      901 cctcttttcg gataaacgac attatttcgc gccacagaac ggtttggggg tcgaaggacc
+      961 ctagactttg ggtatcccac tcttaccgga tggtaccgct atctccccag ggtccatcgg
+     1021 aatggctagc cacgttaccc ttatctgtca gtatcagtct cagacttaag tataccacgg
+     1081 tagcgacagc tgtcttttaa tggcccgggc agggagccgg gcccaccgtc catggtccac
+     1141 tgtaagggta tctgcaacct tcgccgagct tcttccccaa ggaggtagta ccttaccaaa
+     1201 cttccgagtc agtatcgtca aaggggcccc tagggctcac accatcgagt ttccgcggct
+     1261 taccagtcta gcctgatatg tttcaggtca ggaaataaga ggtatagccc cgtggacacg
+     1321 tactgttcga gcggctagat gtaggttgag ttaagtacag tagacgcgtt ggataccgtc
+     1381 gaacattact ccgtctgcca agggtagccg agtacttctt ccggctcggc cattccgact
+     1441 aagttagttt cgaattgacg tgccaaagcg tggctcccag tcatttgtcc ttaaattaaa
+     1501 cataagtttt ttacctgctc gcgtgccggc cgcttgaggg ggcagcaaga agtcggttca
+     1561 aatggggtgt taagaccggt gttgcaagcg gaccatccag agttagcgtc ctcgacgaaa
+     1621 cgttaacaat cgtgagatta gaggtcgaat atccccttcg tagggggttt tattgtgcaa
+     1681 gatgcgcaaa tgaaccccaa ccttgcgggc ctgtagcgaa caggcgaaaa ggtccaatac
+     1741 ggcgcccgat gcaccgtaaa acaggtcctc taactgtgtg ttctacgctc tccggatcct
+     1801 gtatataaga acgaatcccc ttttcctagg gcccggccgc gtagacccag tacacttgac
+     1861 tttcacgaag atccatccta ctcccatacg cttgagagtg ccaacgtagt ttgtaaccga
+     1921 ccttgcctcg gctagaaagg cattttgtcg catgtggcca gcctgtcagg gcgtgctcta
+     1981 ggcttgacga ttagtgctac gggatgattc gtaaccgagc tgacgggacg cctctggaat
+     2041 tcggtctctt tcgatggtgc ctcctctacg tagatctact ggataaccgt ccccaatatc
+     2101 cgcttcccaa cgtagattgc cgacaggcat aagcttcggg ggcgcaaagg ccgacgtccg
+     2161 cattgcagtg tagctttgtg agcaggaagt gtgatagtct ttcgattatt aaagtctgag
+     2221 ctgaatgaaa aaaggtccaa cgaatggagg acgcgaagac atgggtgtct cttatggccc
+     2281 gagcgggagt aatggcggtt cgtacataaa ggctgaaagg attctggcgt tagctgtctt
+     2341 acgttggatt ggcccttcaa attatcgatg ttagctgatt cggtgtaccg ggcgaggaaa
+     2401 gcgctctcag aacaacttca tatacgaggt tcgactataa tggtctaagc tcctgggcta
+     2461 gtctcaagaa gcgggtacct ttagtagcac gtatcgacgg caaagcaaag aataaaaact
+     2521 tggctttgca tcgtgcaaag atttctaact aggttgttta agggctggta tctatgtccc
+     2581 gctataacag cgcgcctaca gtagaagttt aaccatgaca tacctttgaa gtgttcgtat
+     2641 cacacacaag gaaggagcat gtggacacca ctgagctttg ag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_E.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,38 @@
+LOCUS       part_E                   347 bp    DNA     linear   UNK 20-OCT-2019
+DEFINITION  .
+ACCESSION   part_E
+VERSION     part_E
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     3'UTR           21..330
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    1..13
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    18..20
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    14..17
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    331..334
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    14..17
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    335..347
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+ORIGIN
+        1 tggctaggtc tccgctttga tcagcacgcg tctcagagtt tcagggggac ccaaattact
+       61 ggtcctcaat tgggacgcga ccgcatctcc ccacgaaagc ttatggggat tgcccactgc
+      121 ccagcttcaa atctgaaggt tcggcttatt gacagggtct aacacgcagc tcaactgctc
+      181 gaggttagag gcgtaatgac gggccccgat agccttctac gattacgtcc agcaggaacc
+      241 ccacagcttt tccctacgtc taacaccgtg aaagcaaaac tgtctgccct tttacatggt
+      301 ctttaaggaa tctctgcact tatgttatta ggtatgagac ctagcca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_1/provided_parts_records/part_F.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,74 @@
+LOCUS       part_F                  2470 bp    DNA     circular UNK 20-OCT-2019
+DEFINITION  .
+ACCESSION   part_F
+VERSION     part_F
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     terminator      1991..2034
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(262..850)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             complement(1148..1807)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2054..2462
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(2351..2371)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     terminator      1033..1127
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgctcacgg accgcaagga cgggctaatt aggaggcaac gccgatgggg
+       61 ccgcagttca gcgctgcaat gtttgctgaa cagggatgtc acgcatactc gtctacaccg
+      121 cccgtgaccc gttatcacgg ttgaagtgtc gaggactagt gctgccgctg cgtgagggac
+      181 acaagctgct atttgtccat acgccatgtg ctccgagctc atgctgccat gagacaatga
+      241 gacatgtcgc caataatcga gtgacgagtc agaatgacct ggctccgcat aaccgttcaa
+      301 agttattgac aacgcatctt tcgtagttcg tgcagcagcg gtctttcttc tatagccgac
+      361 tagatgttaa gggactcctg gataccgcta gttttaccct ctccaggaag ccagcgaggg
+      421 cgtgccgcaa gtcccaatag ataccgggca tgatcaaggg gccctgtgct ctgagtctgg
+      481 aggcgacagt gcgctgcagc tcagaggtgg ttattgcgaa ccggcaccgc tggacagcac
+      541 ccacggggac acgtaagtaa tttagggtct gggccaacgg ctcagcgcca gtaggattaa
+      601 caaactcgac taatcaatgt gccagctact tccgccgggt ctgacggggc ggcacccatt
+      661 accatgtgta ctgaataggg attccgagcg accgtaaagg cgttcctaag tgtcatatac
+      721 tggcaactag aggcactcac atcggggtta agggcccacc gtaatggcca cgcaggatac
+      781 caattggccg ggtgaggatc tattcacgcc gatggggagt tctaagcccg agttattggt
+      841 gctagtggct tggacctgtg tgtcgatgat gcgcgatata gaggcgcggg actagctggg
+      901 gtccacaggt gctatgttgg gtgcgctcta tggacgtccg gaaagagact aatgcaacgg
+      961 tatggcatca agcgcgaccg atggggagac tggaaattgt gaaatagtgt actggcgcga
+     1021 tcattaaata ttgcatacgc tgtccgttat gacctagagg ggattatttg aacgagaggt
+     1081 cttgggaact gcattggaga tggtcagatg gaatgcgaaa tgtatcacca cgggcggccg
+     1141 aaggggagac agactatccc tagttggctt cggtaaccgt aatcagatgg aacggcgggt
+     1201 aatgctgata ccgagcgctc gtacggcgcg tggtgatgac acggtctgat gtcgtagcaa
+     1261 acgagccggt cctcgtacaa caggctcaca tctcaatcac gcataccaac cgattacata
+     1321 acgcgatcta tatttgggga actctactta ctaccctgtc tgcagagtgc gttctatgat
+     1381 cctcccctac gtgacggcca acgattagtc ggcctaggtc taacggataa aaggactccc
+     1441 cagtacatgt gaccatatga gccaggccgt cgagcgcgac cactccccag cctatagtga
+     1501 ggaggagcgg tattcggtta aagtttagct agcgactttt ttgtcaccga agtagggacg
+     1561 ggcatattgt ttacccttaa agcggggatc aatccattgg ggtcggcagt cataaaagga
+     1621 tctaagcccc caaagcgcat ggtaaggtac tcccgggttt cccgaaatct aggcaagtct
+     1681 cggtgggtgt cagcctgacg agtagggcac gttaccgagg ccacggtgct tgatgactac
+     1741 gggtgaatcg aaccgatcaa acgcacagca tctaaaccct ggtgtactgg tccacagggg
+     1801 gacaagtctt tgaagtgtcg cttcagatga cggccgcggg ccaatctgaa ttgttagaca
+     1861 ccgacagtag ggtgtgcaac tcgctcgggc aagagtgtaa aggcacatcc tccccgaggt
+     1921 aagttatacc gctctaacgg cgcgggcagc ttttcaactc aacacttccg cggttcagtc
+     1981 ctgagcatta ggctgcatgt ctatcacaag aggtgcgggg aacgacaagg gctctggaat
+     2041 tcggtctctg gtaagctccc ataagagcac cacttcgtgt accttgctaa ctcccttcat
+     2101 ccccacccgc gaaaacttaa gacgtcaccc ctgttattat cccgtgcact cctaaagtgc
+     2161 gatgggcaag aacgcaaaca attgtctgag atttatatgg gcggcggaca tagtcagaga
+     2221 gccttatata atctcccacg tcttgccagt ccgagttatg agaaacccgg gaccgatgac
+     2281 gctattacgg tcgcccagcg aggttcaaca gagcgaggca taggagtcat tacgcgtgtt
+     2341 agcttcaaca tgcgtggaag tgaaacggat ctataaaacg gcgtggagtc atcagcttga
+     2401 gcagatctaa cttactcgcc acgcgcgcaa atcgtctttc gctgtccacg ttatacgtaa
+     2461 ctcgcttgag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,279 @@
+LOCUS       construct_2             6910 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_2
+VERSION     construct_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(223..1038)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    complement(139..179)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    5..8
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    20..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(223..1038)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    189..212
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    51..74
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    84..112
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    27..137
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3347..3377
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1367..1372
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1190..1195
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        1226..1778
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3396
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3192..3239
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_RNA        complement(1229..1336)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1865..1873
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3413..3416
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      1190..1778
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3300..3324
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1345..1350
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      1899..2147
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3397..3401
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3395..3412
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1211..1216
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3168..3191
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3351..3375
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1140..1163
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    5..3416
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3417..3420
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3421..4505
+                     /source="part_G"
+                     /indicates_part=True
+                     /note="From part_G"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        4506..4509
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    4510..6158
+                     /source="part_H"
+                     /indicates_part=True
+                     /note="From part_H"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6159..6162
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6163..6497
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    6163..6497
+                     /source="part_I"
+                     /indicates_part=True
+                     /note="From part_I"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6498..6501
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6502..6910
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(6799..6819)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    6502..6910
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cgctgtcaat atgcaggtgc tgcaggaatt tgtctccaat cgacttgaga tatcgcaagc
+       61 atgaaattat attagacacg ccagagaact tgggaagcag cactggtagt gatagcaacc
+      121 cgagtacagt aacgagtgag cttctgatca tgagctctcc tacggcgtca atgcgacgaa
+      181 tgcccagcat gcactctcgc tatccatgcc tgctagggtg gcattatgct caggaacagt
+      241 tgtagcttgg atatcgtcta gatgaaatac ctggacactg gttagcgtcg tcaagcacca
+      301 aggacattca cacgctcgcg gtctttcgtc tccctaagcg ttcggcagtc gggcgtgaag
+      361 aggttgtaat cagacggaac aaagcctgaa aaaattccag cgacgtagta ttcatgatcc
+      421 tgtaccatct gtagccgccg cggcgcacga ttgaatgtag gctactaacc ccatccgtgt
+      481 tagcgatgtg agtttctacc gcaacgaatg ctcaagcgaa ccttcttctt tcgtccgcaa
+      541 cccacaagcc gtggttatga cagctaaatt gtcccagaca tccctttatt acacaagagc
+      601 tccagcggaa tacctagtca cagcggtaat gacacaaagc tcttagttag tccagggact
+      661 acttctgtct acagcacatc acactcatta tcagcatcag tgtagagacg gagaacatgg
+      721 gctatcctat accaagatcc gccatctaaa catttgaagt ttcccgtctt ctataactta
+      781 gcactcgacg ctattctgct gagtgcgctt agtctgtagc gacttgcgaa atccataaac
+      841 tgagaattga aagagagtgc ataaccgaaa cctttgtggc atatttccgt tgaaacgtac
+      901 cagaacagcc gtttagtgcg gaacatacag tatcctgata aagcactcaa cccaacagac
+      961 accctatgcc gatagcggga tgctaacaag tatagtcatg atgatttctc ggacagcggg
+     1021 gtttggtaca gctgcaatcc gtgatttaaa ttcggacctc tgcacacacc gacggttacc
+     1081 catatcctct acggctgtag gaagttttac cttggatgtc attctgattt cggcgtatct
+     1141 cacaggatgg tccaacgaaa ctaggcttta gacgagggat gaatgaccga cccccactcg
+     1201 tggcactaac ggacagactt ccctgacggt tattcgacca ttaaagtcag acatgcgggg
+     1261 gtgaataaat tagccaaatt gtgtcgaaga aaagacgtgc ggctggcaca taaggcagtc
+     1321 ttgatcctag tcttgcaggg atgcacgtaa gtcgcctcaa ttaactgcag ccgagctcca
+     1381 ggttaccaaa gaccctagta tgccagggcc taacggttgg agtatattat gggtacgcaa
+     1441 tagtgcggaa gttaacctgg gcaacatcca ggtgagaggt tggacggaag cgacagtaag
+     1501 tggccataga ctgccgagtc gtgttaatga atcgctatac gcccatggag ttgtggggtc
+     1561 gttttatccg agtaggggcc cgctgactac ttcgtccaga caatatgccg tcttcaatag
+     1621 tctacctgag agtcatgccg gcatttccga cgctgagtga aacccgcgta gccaggcgaa
+     1681 atttgcatct tgaaatacca ctgcagatca gccagtaagg cccatataag ggcgctggtg
+     1741 ttctggcgac agataaagtg ttatctaatg taacccgcgg acttttagag gatacttgaa
+     1801 tgcgggcata tcgtcccacc agcgtcacgt ggtcgggcta gcggcagaca aactctgccg
+     1861 atgtttttct ttgccgcgat agcgggctag tcaattcact atccggcgat gaagcataga
+     1921 ttgttatcgc gcttatgcgg aggataatca agtcttggca gaacctgctc gctcatgcac
+     1981 tggtgaggcg tggttatcct aacaaccgcc taggacgaag aatgggctcg gtagggacag
+     2041 ttcgtgcgtt tagcttcgtc ccatcttaat gctgtctgga gggaggctac atgcgaacag
+     2101 aagccgtggg cgaaagttgt tgatccgggt ctaacacgga taagggccat ggtgaacgca
+     2161 tcatgcgata cttcttggta gttcttctaa catgaccgtg ccatagccct taccctttga
+     2221 agaagttaac ctatctgccg tctcctgcac gaatagcgac tggactcggg tattttggat
+     2281 acctcacgaa agcacttcga tcggccgaag catggatatt tcgccggacg ggcccgaata
+     2341 gagagccttg tatgtcggtt agtacaacgc agtcctggag acatctacgc ggatgggcct
+     2401 aggggctgga cttaacattg ggtaacgtac ctggtccaaa gtgaatgcaa agcactttta
+     2461 caaagcgcgg gtccccgtgg gtgtttaggg tagaagattg gcggatgcta cgaacgatcc
+     2521 cgctttgaaa ctatcattac atcgtgtaaa agagacactt aacaaaggcc aataaactgc
+     2581 cagtaagaat cgctcagtgc ggtgctgggg acgctaagta ggggcaacag ccagtgaagg
+     2641 acgtgaccga cctttctcag ataagatatg ctggcgtcta tctaataagc atagtgaaaa
+     2701 accaaccatt tcacttacac gaagtacatt tgcattgcta gtaaagacgc ctaaacagaa
+     2761 gtgcccttgc atgctgtatg tctatagtcc ttagggaagc atcagccctt ctacttattc
+     2821 gaggtctgag aaaccctgga caagctccga attattcaat gtgcctgtct ccgaggttag
+     2881 atagcgctat gctcttaaga gttgcacaga atgaccatcc tggaatgtcc ctggaggggt
+     2941 ctaggtatgc tgatcgaagg gtgctctaag gacttgacgt gcgtccgagg agggtgctgc
+     3001 ctccttcgcc tttagatcca acgcggatca catgcgcgtg agctaatagg atcaccttct
+     3061 gctccgattt ttaccctcct gggtcacttc cgaatgaggt agcgggcgaa atataatgtc
+     3121 tccactcgta ggtgttccct gtatgtgaag ctctatagtg gacaaaggtt tgatgaacta
+     3181 gcccccgtat acgctctcac cgacggacgc gggggtctgt tatttgaagc atcatacatg
+     3241 cgaaggtgcc ttctcagcaa cgaaaggtag tgggagtgta caagttcaat gcgccgccat
+     3301 aggtctgagt atacaagggg atgcccccat ccacaacggg attggctacc cggagagctg
+     3361 gctccgctcc aacaaataat tatattaacc tattggaatt ccacctgcat atcagaggag
+     3421 gaacttctat gggacgaaag atgcgcagct cgacaaatct caaattggaa accgtctaag
+     3481 gtctttgagc ccacgctagg ccaccgaata gttgcgagct cgtgggcaat tgctggctag
+     3541 cggtttgtat cgtatacgta acaagagatt gcgccggatt cattcgtgtg gggtgctttc
+     3601 acatcggaat actcaagagt gggggtttgc gctttaatat gacggcctca tgcaccccaa
+     3661 aaataagagc gccaatttca tcgaccacat tccggacaat tctgacttcc ctgtcggatc
+     3721 gaccctcgct cacaactcct agaactccaa gacggtagga cgtcagccga aaaggaggag
+     3781 tgacgacggg ccctcctagc tgaagcaatg gggggcgtcg accctagcct ggtgtgggac
+     3841 ttcggagggt cgggcgtgtg gccattcctg cacgaggggc ccttgcagta tcgaactttg
+     3901 acgagaaagt ggggggcgac ctataaacat agcggagttc aatactcctg caagtgcatg
+     3961 atgacgttca gcgttggcac atcgaacgcg tcgctacact tgctcaccgg aaggcaaaat
+     4021 agaccggcag ctggcccgca cggacgtcta gactcctacg ctgtcaaatg cacgatgact
+     4081 attagcatgc ggaattcgag gcggccggta catcgagaca cgctggtctt aatacctgtg
+     4141 ttatgtcaaa acaagtgtct cggcggcttt gtactacgct gtgaatgcgc atgatgttgc
+     4201 gagaagctga acgttggtag cagtctacaa cagaaccgac gagctacgga cgggttacag
+     4261 caggatcccc tcttaaggca ttattcgacg actccaggtt ctaaccgatc agtaattgcc
+     4321 tcggatggtc gtacgtgtta accgagacag caaggcacca catagacaac tgcatagggc
+     4381 gcctacaggt ccacaatcag ggtggcccaa gatcctcaaa gacttgttgc agtctctgct
+     4441 tattccgttt aacacgttgt gtgagctcta gcttactacc tcatcggtgt cgggagtgat
+     4501 ttaggaatgg aagacgcgtt tagtcttcgg cccccagacg gcaccggcag agccactgcc
+     4561 aatgcctttt acgctgaact cttcgacttt ggcatgtgcg actgactata cgccgatggc
+     4621 cctaccctgc agcggaaagg cacagggcca aaaacagtgg aagcgcaccg ctagagcttt
+     4681 actaaatcct ttagggtgaa ccggtgttca gtcaacagaa acatatgact agtccttaat
+     4741 ggcactacta aaggcggccc atctcttttg taggtcacgt ctcatcgttt agcaagcgtc
+     4801 cgccatccga ggagtatcct agtacgtgag agggtgtttt acctcatcac atggtttttg
+     4861 gctagatgtg gcagatgcca gctgatacct tacaacccgc tataacggtt tctggatcga
+     4921 cgatacaacc tgcttcggca tatcataatg gcggcctcat aggacttcca atcatggtta
+     4981 tgcgagtttg atgtgttgaa gattgtgagg ggaaaccttt ttccgagtac gttgaatctg
+     5041 cgactgatgg tgaacaactc atcgagaggg atgtgcgggc agtctccttg atgcgcgaaa
+     5101 aggagtcgcg accgcgtgtt cgtgacgcac ttgatgctag accgtagggg ctcattatct
+     5161 cctgaaacag tagctagctt ttggtgtccg agtcagctta ggcacagtaa ttgaaaagaa
+     5221 ggaaatgcgt gaaaactaaa cgtagacact ccttgctaag aattccctgg tctttttcga
+     5281 gcatagacta ccgtaggtaa aaggcttgtc gtgtcacaaa tagacttgat ctgttcggca
+     5341 tatacacatc ctactgcttc agtaaccaag gacgattctc cggccattgg actgtgggac
+     5401 cacccgcgtt caaacggaat cctctacgaa cggttaagaa aggagcccac tgcttgcgga
+     5461 gacatatcgt tgctgagtgg tacaccggtg agtcaaaaag tactgacact actggtggac
+     5521 tctcgggtac gatgtgtggg gtattggcat actatggcgc taagcgtgga atagtgtttc
+     5581 caatagccct ttacctaaga agcattctga cacatgggtt ggacttttac acagacctat
+     5641 aactcgtatc cggcctggtg atgtatgtcc gcttatcact gaatgcagga ttccgccaat
+     5701 tccgctcgcg ggttctcgga caacgggcca tggagatgga tcaatgagcc atgttgatta
+     5761 ccatttcact acacacggtt agtcaattcc ggagatcata attcgacaat tgaatatgcg
+     5821 tgatacgctt tctgttacca ggatcgttgc taattagttt ccaatgtcac agtgttgggc
+     5881 ggcgaggtat cacggcgctc tgggtagaat ggcggtgcct gactggacct cataactggt
+     5941 aacataccta tgaccaaagg aggtcagaca ccgatgagtc ggtgacatgg gcggtcacag
+     6001 cgtgccctgc atagtaatac agctcgtttc tagacatttg tcctaattcg ccacacaagt
+     6061 acgagagcgg gggtaaccca tcaccatcgt gcccgtaggt acctaatctt catcgagcgc
+     6121 tattgttaaa gtggactcag ggatcggcat ctcgtgtagc ttttattatc cggcatgcat
+     6181 gcggcgttgc atcgcttcat cgtcatcgac atatcgttag cgggacttat cagggtccca
+     6241 tcacggctgt gacagctgtt cataagtgta atagcagtca ccccaccaaa tgcaagactg
+     6301 ttcccaaact aagtgctagg gaggttggct acctatcggc gtggcagttg accgggtttt
+     6361 tcttagtacc tgccttccaa tctccgataa aagcaagatg acttcctgct tgcgctaaag
+     6421 tctgaattcg ctaagggggc agattcatta ccagagactg ccaaagtcaa ccgccgaacg
+     6481 atactggaat atatggaggt aagctcccat aagagcacca cttcgtgtac cttgctaact
+     6541 cccttcatcc ccacccgcga aaacttaaga cgtcacccct gttattatcc cgtgcactcc
+     6601 taaagtgcga tgggcaagaa cgcaaacaat tgtctgagat ttatatgggc ggcggacata
+     6661 gtcagagagc cttatataat ctcccacgtc ttgccagtcc gagttatgag aaacccggga
+     6721 ccgatgacgc tattacggtc gcccagcgag gttcaacaga gcgaggcata ggagtcatta
+     6781 cgcgtgttag cttcaacatg cgtggaagtg aaacggatct ataaaacggc gtggagtcat
+     6841 cagcttgagc agatctaact tactcgccac gcgcgcaaat cgtctttcgc tgtccacgtt
+     6901 atacgtaact
+//
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,2 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,depends_on,enzymes,used_in,parts
+construct_2,construct_2,1,6910,5,,BsaI,construct_4,part_A & part_G & part_H & part_I & part_F
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2_type2s_mix_connections_graph.pdf has changed
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_2/construct_2_type2s_mix_parts_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_A.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,197 @@
+LOCUS       part_A                  4292 bp    DNA     circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_A
+VERSION     part_A
+KEYWORDS    "creator:SynthSys Center".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     RBS             2332..2343
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2208..2238
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     promoter        2289..2323
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    3162..3178
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      228..233
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            1009..2028
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      51..56
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2350..3027
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff00ff"
+     CDS             complement(3376..4191)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_RNA        87..639
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2257
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      3119..3146
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2053..2100
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2278..2281
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_RNA        complement(90..197)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    726..734
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2274..2277
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      51..639
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2161..2185
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      206..211
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    complement(3292..3332)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      760..1008
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      3032..3103
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3158..3161
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3173..3178
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(3376..4191)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2258..2262
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3342..3365
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3204..3227
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2256..2273
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      72..77
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2029..2052
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             1009..2028
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3237..3265
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3154..3157
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    3180..3290
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2212..2236
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1..24
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+ORIGIN
+        1 tcacaggatg gtccaacgaa actaggcttt agacgaggga tgaatgaccg acccccactc
+       61 gtggcactaa cggacagact tccctgacgg ttattcgacc attaaagtca gacatgcggg
+      121 ggtgaataaa ttagccaaat tgtgtcgaag aaaagacgtg cggctggcac ataaggcagt
+      181 cttgatccta gtcttgcagg gatgcacgta agtcgcctca attaactgca gccgagctcc
+      241 aggttaccaa agaccctagt atgccagggc ctaacggttg gagtatatta tgggtacgca
+      301 atagtgcgga agttaacctg ggcaacatcc aggtgagagg ttggacggaa gcgacagtaa
+      361 gtggccatag actgccgagt cgtgttaatg aatcgctata cgcccatgga gttgtggggt
+      421 cgttttatcc gagtaggggc ccgctgacta cttcgtccag acaatatgcc gtcttcaata
+      481 gtctacctga gagtcatgcc ggcatttccg acgctgagtg aaacccgcgt agccaggcga
+      541 aatttgcatc ttgaaatacc actgcagatc agccagtaag gcccatataa gggcgctggt
+      601 gttctggcga cagataaagt gttatctaat gtaacccgcg gacttttaga ggatacttga
+      661 atgcgggcat atcgtcccac cagcgtcacg tggtcgggct agcggcagac aaactctgcc
+      721 gatgtttttc tttgccgcga tagcgggcta gtcaattcac tatccggcga tgaagcatag
+      781 attgttatcg cgcttatgcg gaggataatc aagtcttggc agaacctgct cgctcatgca
+      841 ctggtgaggc gtggttatcc taacaaccgc ctaggacgaa gaatgggctc ggtagggaca
+      901 gttcgtgcgt ttagcttcgt cccatcttaa tgctgtctgg agggaggcta catgcgaaca
+      961 gaagccgtgg gcgaaagttg ttgatccggg tctaacacgg ataagggcca tggtgaacgc
+     1021 atcatgcgat acttcttggt agttcttcta acatgaccgt gccatagccc ttaccctttg
+     1081 aagaagttaa cctatctgcc gtctcctgca cgaatagcga ctggactcgg gtattttgga
+     1141 tacctcacga aagcacttcg atcggccgaa gcatggatat ttcgccggac gggcccgaat
+     1201 agagagcctt gtatgtcggt tagtacaacg cagtcctgga gacatctacg cggatgggcc
+     1261 taggggctgg acttaacatt gggtaacgta cctggtccaa agtgaatgca aagcactttt
+     1321 acaaagcgcg ggtccccgtg ggtgtttagg gtagaagatt ggcggatgct acgaacgatc
+     1381 ccgctttgaa actatcatta catcgtgtaa aagagacact taacaaaggc caataaactg
+     1441 ccagtaagaa tcgctcagtg cggtgctggg gacgctaagt aggggcaaca gccagtgaag
+     1501 gacgtgaccg acctttctca gataagatat gctggcgtct atctaataag catagtgaaa
+     1561 aaccaaccat ttcacttaca cgaagtacat ttgcattgct agtaaagacg cctaaacaga
+     1621 agtgcccttg catgctgtat gtctatagtc cttagggaag catcagccct tctacttatt
+     1681 cgaggtctga gaaaccctgg acaagctccg aattattcaa tgtgcctgtc tccgaggtta
+     1741 gatagcgcta tgctcttaag agttgcacag aatgaccatc ctggaatgtc cctggagggg
+     1801 tctaggtatg ctgatcgaag ggtgctctaa ggacttgacg tgcgtccgag gagggtgctg
+     1861 cctccttcgc ctttagatcc aacgcggatc acatgcgcgt gagctaatag gatcaccttc
+     1921 tgctccgatt tttaccctcc tgggtcactt ccgaatgagg tagcgggcga aatataatgt
+     1981 ctccactcgt aggtgttccc tgtatgtgaa gctctatagt ggacaaaggt ttgatgaact
+     2041 agcccccgta tacgctctca ccgacggacg cgggggtctg ttatttgaag catcatacat
+     2101 gcgaaggtgc cttctcagca acgaaaggta gtgggagtgt acaagttcaa tgcgccgcca
+     2161 taggtctgag tatacaaggg gatgccccca tccacaacgg gattggctac ccggagagct
+     2221 ggctccgctc caacaaataa ttatattaac ctattggaat tccacctgca tatcagagga
+     2281 gagagacctt tacggctatt ctgtttaccg gatccatcgg taccaaggat cagaaagtga
+     2341 cacggtttga acgggttgtt gtaatacttt gagtatacct ctgacgctga gcgtgtcgtc
+     2401 ctgagcgcag actcaataac atagcagtcc gacatcgccg tgatatgtaa atgcaacgaa
+     2461 tttaggtctt gactcggtct accatgtcaa aagggtagcc agatttcagc gcgaaattga
+     2521 actttgtgtt tagtgtgggg tcctcggtta caaaatagga tcagacatgt gtgattttgg
+     2581 taacctagtc tggcagtccg acagacttcg ctatgatttg atggggccgg cctataattg
+     2641 gcttgcgcaa cccgctcatc tcgggcgtgt tttacttcct gcggtcccca cgccctattt
+     2701 tcgggccagc tgtaggtgct agagtgaatg ctggcgaata agattccccg ctatttggcg
+     2761 cctcgccaca gctctggcac tatgggggga gtttctctgt tccttaaaca gcacccgttt
+     2821 ttgaggtgta ttggtttcgg ttctgcatta ggcaattcgt accgtacaat caattacgac
+     2881 acattggcgg cagttatcag ctacccatcg caaagcacac acccacatgt atctattttt
+     2941 cgcaaattcc aaaagcttcg attgagattg catcggtagt ccctcagaca tgtcgtaatc
+     3001 gaatgcctct tgttccatga gagagagaag tatggcgcga accgctctgc ctttaatttg
+     3061 gttctaccat ccacgagttt aaggggcata accctgccca gcactttccg aggctcacgt
+     3121 tcatgctacg gtagcacctt tctgcgggtc tcacgctgtc aatatgcagg tgctgcagga
+     3181 atttgtctcc aatcgacttg agatatcgca agcatgaaat tatattagac acgccagaga
+     3241 acttgggaag cagcactggt agtgatagca acccgagtac agtaacgagt gagcttctga
+     3301 tcatgagctc tcctacggcg tcaatgcgac gaatgcccag catgcactct cgctatccat
+     3361 gcctgctagg gtggcattat gctcaggaac agttgtagct tggatatcgt ctagatgaaa
+     3421 tacctggaca ctggttagcg tcgtcaagca ccaaggacat tcacacgctc gcggtctttc
+     3481 gtctccctaa gcgttcggca gtcgggcgtg aagaggttgt aatcagacgg aacaaagcct
+     3541 gaaaaaattc cagcgacgta gtattcatga tcctgtacca tctgtagccg ccgcggcgca
+     3601 cgattgaatg taggctacta accccatccg tgttagcgat gtgagtttct accgcaacga
+     3661 atgctcaagc gaaccttctt ctttcgtccg caacccacaa gccgtggtta tgacagctaa
+     3721 attgtcccag acatcccttt attacacaag agctccagcg gaatacctag tcacagcggt
+     3781 aatgacacaa agctcttagt tagtccaggg actacttctg tctacagcac atcacactca
+     3841 ttatcagcat cagtgtagag acggagaaca tgggctatcc tataccaaga tccgccatct
+     3901 aaacatttga agtttcccgt cttctataac ttagcactcg acgctattct gctgagtgcg
+     3961 cttagtctgt agcgacttgc gaaatccata aactgagaat tgaaagagag tgcataaccg
+     4021 aaacctttgt ggcatatttc cgttgaaacg taccagaaca gccgtttagt gcggaacata
+     4081 cagtatcctg ataaagcact caacccaaca gacaccctat gccgatagcg ggatgctaac
+     4141 aagtatagtc atgatgattt ctcggacagc ggggtttggt acagctgcaa tccgtgattt
+     4201 aaattcggac ctctgcacac accgacggtt acccatatcc tctacggctg taggaagttt
+     4261 taccttggat gtcattctga tttcggcgta tc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_F.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,74 @@
+LOCUS       part_F                  2470 bp    DNA     circular UNK 20-OCT-2019
+DEFINITION  .
+ACCESSION   part_F
+VERSION     part_F
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     terminator      1991..2034
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(262..850)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             complement(1148..1807)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2054..2462
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(2351..2371)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     terminator      1033..1127
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgctcacgg accgcaagga cgggctaatt aggaggcaac gccgatgggg
+       61 ccgcagttca gcgctgcaat gtttgctgaa cagggatgtc acgcatactc gtctacaccg
+      121 cccgtgaccc gttatcacgg ttgaagtgtc gaggactagt gctgccgctg cgtgagggac
+      181 acaagctgct atttgtccat acgccatgtg ctccgagctc atgctgccat gagacaatga
+      241 gacatgtcgc caataatcga gtgacgagtc agaatgacct ggctccgcat aaccgttcaa
+      301 agttattgac aacgcatctt tcgtagttcg tgcagcagcg gtctttcttc tatagccgac
+      361 tagatgttaa gggactcctg gataccgcta gttttaccct ctccaggaag ccagcgaggg
+      421 cgtgccgcaa gtcccaatag ataccgggca tgatcaaggg gccctgtgct ctgagtctgg
+      481 aggcgacagt gcgctgcagc tcagaggtgg ttattgcgaa ccggcaccgc tggacagcac
+      541 ccacggggac acgtaagtaa tttagggtct gggccaacgg ctcagcgcca gtaggattaa
+      601 caaactcgac taatcaatgt gccagctact tccgccgggt ctgacggggc ggcacccatt
+      661 accatgtgta ctgaataggg attccgagcg accgtaaagg cgttcctaag tgtcatatac
+      721 tggcaactag aggcactcac atcggggtta agggcccacc gtaatggcca cgcaggatac
+      781 caattggccg ggtgaggatc tattcacgcc gatggggagt tctaagcccg agttattggt
+      841 gctagtggct tggacctgtg tgtcgatgat gcgcgatata gaggcgcggg actagctggg
+      901 gtccacaggt gctatgttgg gtgcgctcta tggacgtccg gaaagagact aatgcaacgg
+      961 tatggcatca agcgcgaccg atggggagac tggaaattgt gaaatagtgt actggcgcga
+     1021 tcattaaata ttgcatacgc tgtccgttat gacctagagg ggattatttg aacgagaggt
+     1081 cttgggaact gcattggaga tggtcagatg gaatgcgaaa tgtatcacca cgggcggccg
+     1141 aaggggagac agactatccc tagttggctt cggtaaccgt aatcagatgg aacggcgggt
+     1201 aatgctgata ccgagcgctc gtacggcgcg tggtgatgac acggtctgat gtcgtagcaa
+     1261 acgagccggt cctcgtacaa caggctcaca tctcaatcac gcataccaac cgattacata
+     1321 acgcgatcta tatttgggga actctactta ctaccctgtc tgcagagtgc gttctatgat
+     1381 cctcccctac gtgacggcca acgattagtc ggcctaggtc taacggataa aaggactccc
+     1441 cagtacatgt gaccatatga gccaggccgt cgagcgcgac cactccccag cctatagtga
+     1501 ggaggagcgg tattcggtta aagtttagct agcgactttt ttgtcaccga agtagggacg
+     1561 ggcatattgt ttacccttaa agcggggatc aatccattgg ggtcggcagt cataaaagga
+     1621 tctaagcccc caaagcgcat ggtaaggtac tcccgggttt cccgaaatct aggcaagtct
+     1681 cggtgggtgt cagcctgacg agtagggcac gttaccgagg ccacggtgct tgatgactac
+     1741 gggtgaatcg aaccgatcaa acgcacagca tctaaaccct ggtgtactgg tccacagggg
+     1801 gacaagtctt tgaagtgtcg cttcagatga cggccgcggg ccaatctgaa ttgttagaca
+     1861 ccgacagtag ggtgtgcaac tcgctcgggc aagagtgtaa aggcacatcc tccccgaggt
+     1921 aagttatacc gctctaacgg cgcgggcagc ttttcaactc aacacttccg cggttcagtc
+     1981 ctgagcatta ggctgcatgt ctatcacaag aggtgcgggg aacgacaagg gctctggaat
+     2041 tcggtctctg gtaagctccc ataagagcac cacttcgtgt accttgctaa ctcccttcat
+     2101 ccccacccgc gaaaacttaa gacgtcaccc ctgttattat cccgtgcact cctaaagtgc
+     2161 gatgggcaag aacgcaaaca attgtctgag atttatatgg gcggcggaca tagtcagaga
+     2221 gccttatata atctcccacg tcttgccagt ccgagttatg agaaacccgg gaccgatgac
+     2281 gctattacgg tcgcccagcg aggttcaaca gagcgaggca taggagtcat tacgcgtgtt
+     2341 agcttcaaca tgcgtggaag tgaaacggat ctataaaacg gcgtggagtc atcagcttga
+     2401 gcagatctaa cttactcgcc acgcgcgcaa atcgtctttc gctgtccacg ttatacgtaa
+     2461 ctcgcttgag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_G.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,36 @@
+LOCUS       part_G                  1119 bp    DNA     linear   UNK 25-OCT-2019
+DEFINITION  .
+ACCESSION   part_G
+VERSION     part_G
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     GoldenGate      1..13
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     GoldenGate      1107..1119
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+ORIGIN
+        1 tggctaggtc tccggaggaa cttctatggg acgaaagatg cgcagctcga caaatctcaa
+       61 attggaaacc gtctaaggtc tttgagccca cgctaggcca ccgaatagtt gcgagctcgt
+      121 gggcaattgc tggctagcgg tttgtatcgt atacgtaaca agagattgcg ccggattcat
+      181 tcgtgtgggg tgctttcaca tcggaatact caagagtggg ggtttgcgct ttaatatgac
+      241 ggcctcatgc accccaaaaa taagagcgcc aatttcatcg accacattcc ggacaattct
+      301 gacttccctg tcggatcgac cctcgctcac aactcctaga actccaagac ggtaggacgt
+      361 cagccgaaaa ggaggagtga cgacgggccc tcctagctga agcaatgggg ggcgtcgacc
+      421 ctagcctggt gtgggacttc ggagggtcgg gcgtgtggcc attcctgcac gaggggccct
+      481 tgcagtatcg aactttgacg agaaagtggg gggcgaccta taaacatagc ggagttcaat
+      541 actcctgcaa gtgcatgatg acgttcagcg ttggcacatc gaacgcgtcg ctacacttgc
+      601 tcaccggaag gcaaaataga ccggcagctg gcccgcacgg acgtctagac tcctacgctg
+      661 tcaaatgcac gatgactatt agcatgcgga attcgaggcg gccggtacat cgagacacgc
+      721 tggtcttaat acctgtgtta tgtcaaaaca agtgtctcgg cggctttgta ctacgctgtg
+      781 aatgcgcatg atgttgcgag aagctgaacg ttggtagcag tctacaacag aaccgacgag
+      841 ctacggacgg gttacagcag gatcccctct taaggcatta ttcgacgact ccaggttcta
+      901 accgatcagt aattgcctcg gatggtcgta cgtgttaacc gagacagcaa ggcaccacat
+      961 agacaactgc atagggcgcc tacaggtcca caatcagggt ggcccaagat cctcaaagac
+     1021 ttgttgcagt ctctgcttat tccgtttaac acgttgtgtg agctctagct tactacctca
+     1081 tcggtgtcgg gagtgattta ggaatgtgag acctagcca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_H.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,109 @@
+LOCUS       part_H                  4246 bp    DNA     circular UNK 07-NOV-2019
+DEFINITION  .
+ACCESSION   part_H
+VERSION     part_H
+KEYWORDS    "creator:militzis" "marker:SmR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     primer_bind     1966..1982
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#a020f0"
+     terminator      3774..3860
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(63..651)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             2015..3667
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     promoter        1987..2005
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(744..1535)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    3667..3670
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     terminator      3952..3979
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     primer_bind     complement(3694..3710)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#a020f0"
+ORIGIN
+        1 aacatggatc cgttacacaa ggtctactcc gcgatgtggg ctcaccccct agatcccttt
+       61 tcctaccgcc cgatcgcaaa ctacgcgtag cttcacggct ctctgtctgt cggctgacct
+      121 gcggctcatt tttcatccat ttagtatagg ttgcaagggg tgtgactgat ttctctacat
+      181 aaagaagcct atagtaccac atgcaatgcc gatccggtga gtgctgtagt ccttattccg
+      241 gcttggtggc ctcctgccac ttaggatcgc aacggaattc tagttcctaa cgtcccttct
+      301 acctgattaa gtgagagaaa acggaaccaa cctaagacat ctatgcatcg atgttttaca
+      361 atgacgagag tgctccatgg ttcatactgg ggacatagtt tcgggcattt aggcccgcaa
+      421 gagttcgggt atctagtttt tccgtacgaa aaacaccacc ttagaacagg tcacacgagt
+      481 acagagagta aacccgtaat gttttcaccc attccccgat ttgactgcaa acaaacaagt
+      541 ctccccgtat cgcttcattg ttttatcaac gggggcggaa tcgtagacca ataattaacg
+      601 acaactctag gcttttcaac cgacgggggc aaagtctgaa atgcctgaga aaggcacaac
+      661 gacggtggga ggggcccctg caaatattgt tctagcactc caggattcac accaacctcg
+      721 gggccagcca ttccggtact tttggttata cggcaggata ccacgtccct aagcggagta
+      781 tacacggagt tgccttagcc aggtacccgc ttaaccgtcc aactcccctg agtggtacgt
+      841 ccatcacgcc gcgtaaacgg tttccaaaag agtaagctta ggcattcctc acctgtcacg
+      901 tccctcttaa gatccctgcc tcgaactggg atcttgtaaa aatgtggcca tgggagcagg
+      961 agttcatgtg gggcgacggc gatcggacgc ccctttaaac cagagccctt gacgctagga
+     1021 gatcagtaga gttacccgga atgagatctc taatctaagt ttgatacgac gaaagcggcc
+     1081 tgacgggcgc tactcatgct cttagaatcc gtcacttatt ctgccacaga tccgaggtac
+     1141 tgtggatgtt atttgcggag actggcctcg gattaggggt actaagtccg agatgtcatg
+     1201 agttaagccc aattcactag ttgcattgtc aacgagtgga cctccaaaac gatgttaggg
+     1261 tcactacccc aagcgagcac ctccgctagg accacacacc cccactttca aggtattttg
+     1321 ttcgcatcac ataccgtctt ccctttgcgg tctaatagtg aagcttggga caaggaacgg
+     1381 ccagtcgcag caatactacg agtgagagtc ctaggcgcaa ctacgtaggt tccgcaaacg
+     1441 tgttgtggat tactgttgag gtttgagttt atccggaggg ctgtgtaaga attaccagct
+     1501 agtcaaaagc cctgcatggc ctgatctcat tagatacctc ggccgggccg aggcaaatcc
+     1561 gtgaacaaaa accatgcatt tattctatca tagaaacatt tgttacacat ctactggccg
+     1621 tgtgccgtga acaagaactc aatttagtta tcaagggact gctgtaaacg gagccgcgtc
+     1681 acccgcgtgc acacgtgtag tgcttacgcc ggcccccgtc cagcgacacc gtagtcaagt
+     1741 aaaaaatgcg tattcacgac ctcacgtacc cgtttcggag ggtgccttga cgcatagagt
+     1801 tgtctgtgtg attggaattt gtaaggggtc cgcccatgta aaatagagcc catgtcttac
+     1861 gaggacatga ggaaacatag gttctggtgg ccttccaaga agctgcctct acactccttc
+     1921 tctttaatca ccgaaaacct taccttgaga ggacgtcatt cgtcaaaaca aaatattggt
+     1981 ggcaaattaa gattaccact ataggcggtc tcaaatggaa gacgcgttta gtcttcggcc
+     2041 cccagacggc accggcagag ccactgccaa tgccttttac gctgaactct tcgactttgg
+     2101 catgtgcgac tgactatacg ccgatggccc taccctgcag cggaaaggca cagggccaaa
+     2161 aacagtggaa gcgcaccgct agagctttac taaatccttt agggtgaacc ggtgttcagt
+     2221 caacagaaac atatgactag tccttaatgg cactactaaa ggcggcccat ctcttttgta
+     2281 ggtcacgtct catcgtttag caagcgtccg ccatccgagg agtatcctag tacgtgagag
+     2341 ggtgttttac ctcatcacat ggtttttggc tagatgtggc agatgccagc tgatacctta
+     2401 caacccgcta taacggtttc tggatcgacg atacaacctg cttcggcata tcataatggc
+     2461 ggcctcatag gacttccaat catggttatg cgagtttgat gtgttgaaga ttgtgagggg
+     2521 aaaccttttt ccgagtacgt tgaatctgcg actgatggtg aacaactcat cgagagggat
+     2581 gtgcgggcag tctccttgat gcgcgaaaag gagtcgcgac cgcgtgttcg tgacgcactt
+     2641 gatgctagac cgtaggggct cattatctcc tgaaacagta gctagctttt ggtgtccgag
+     2701 tcagcttagg cacagtaatt gaaaagaagg aaatgcgtga aaactaaacg tagacactcc
+     2761 ttgctaagaa ttccctggtc tttttcgagc atagactacc gtaggtaaaa ggcttgtcgt
+     2821 gtcacaaata gacttgatct gttcggcata tacacatcct actgcttcag taaccaagga
+     2881 cgattctccg gccattggac tgtgggacca cccgcgttca aacggaatcc tctacgaacg
+     2941 gttaagaaag gagcccactg cttgcggaga catatcgttg ctgagtggta caccggtgag
+     3001 tcaaaaagta ctgacactac tggtggactc tcgggtacga tgtgtggggt attggcatac
+     3061 tatggcgcta agcgtggaat agtgtttcca atagcccttt acctaagaag cattctgaca
+     3121 catgggttgg acttttacac agacctataa ctcgtatccg gcctggtgat gtatgtccgc
+     3181 ttatcactga atgcaggatt ccgccaattc cgctcgcggg ttctcggaca acgggccatg
+     3241 gagatggatc aatgagccat gttgattacc atttcactac acacggttag tcaattccgg
+     3301 agatcataat tcgacaattg aatatgcgtg atacgctttc tgttaccagg atcgttgcta
+     3361 attagtttcc aatgtcacag tgttgggcgg cgaggtatca cggcgctctg ggtagaatgg
+     3421 cggtgcctga ctggacctca taactggtaa catacctatg accaaaggag gtcagacacc
+     3481 gatgagtcgg tgacatgggc ggtcacagcg tgccctgcat agtaatacag ctcgtttcta
+     3541 gacatttgtc ctaattcgcc acacaagtac gagagcgggg gtaacccatc accatcgtgc
+     3601 ccgtaggtac ctaatcttca tcgagcgcta ttgttaaagt ggactcaggg atcggcatct
+     3661 cgtgtagctt tgagaccggg gcccgaggat gtatgccttg catggaactt gactaatctc
+     3721 agtaatactg gccgtgtatt ggtgtgtctt ccttggcctc acatgggaac attaccacat
+     3781 ataacatcat ggggttcagt ctattactaa cgaagtcact aaaacgtact cgacggcgca
+     3841 tgcgagtatc gacgtagcgg ttggttacct taagctgact tggtctatgc atacactgat
+     3901 tagcttgtag cggtggcctt cgacgtctgt atcgtaggcg ttgtttgttg caaacacaaa
+     3961 cgacctagcg tcaagacccc ttctagagaa agagagtgac gactcttgtc agttcaactc
+     4021 tgtggtacgc cgctgcgaga tgcgcgttgc cacggcagac cccatgaact cgttcaagct
+     4081 aaactctagt tcacgctaca tgtgtttgtt tctgcgtacg caaaagtact aggtacagct
+     4141 atcttttggg ccccaagtgg gaccacactt tcggtcttcc tagcaaggct ataaaaccgt
+     4201 atggcatgag tccttgatct gcatttcgtt tagacagagc gagatg
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_2/provided_parts_records/part_I.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,69 @@
+LOCUS       part_I                  2396 bp    DNA     circular UNK 29-OCT-2019
+DEFINITION  .
+ACCESSION   part_I
+VERSION     part_I
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     terminator      1991..2034
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(262..850)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2054..2388
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     CDS             complement(1148..1807)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     terminator      1033..1127
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgcatccaa gcttgctggg gcctctatcc gggacctgct tccgtacccc
+       61 gtccgcctat caggctaacg actctgcctg ccattcaggc tcaccggcaa gttggagtga
+      121 cctcttcatc gatacaaata gcgcatacgc cagacatacc gcccacgcac tcgaccataa
+      181 aattccccgt cacggcgcgc acctccacac tccgtggcct aaggaacgtg gcagccggct
+      241 gggccacttt ttagactacc atcggctcat ttttagaagg ccaccggctg tccgtcaatc
+      301 gtacccgttt aggcctcctt aacacagttc cgaatagtta cctcaagatg cggatacagg
+      361 atggctcccc caggggtcta gttcagtctt ttgtcgcctg cgcttgaacc tttatgcagc
+      421 gatccacaaa cggaacaccg agatttgtat ttgggagggc aggctttgga ggaacggtgt
+      481 atgtactttt gcttggtacc ctaggtaccc cacgatctaa tcggtcttcc tgacaggtga
+      541 cagaggaggc cgtaactgcg accacaggct aactgcggcc ttaacttatg gtcgcgaact
+      601 gcataagggc gtcgccgccc gttgtcagtg cgaattctgt tagtcgtcgt gtacaccttc
+      661 cggtctaaca tctcgtagtt actagaagag cggatgggtc ctgtaaagag agcaggttcc
+      721 cgtcttctct cactttaccg gtactggtgt gaccgggtgt gagtgatact gtgattccgc
+      781 tactattgct atgcctgccg tcgtagctag atacgatccc agaacatttt gggctgattt
+      841 caagtctctc cgggattccg taacgacggt tctcgaactg aatagctttg agatatcgca
+      901 atattccttg gttgactctt gtccccggga cacaagtcgt gtgcaatatg tatacgtcag
+      961 tatgctcgag actcctaagg ccgcatatct atgctatcac tattgcctat gcagtaactg
+     1021 gctaagcttg tggggtactt gcacatgact catgtcaagg tcggaggatt cccagacagt
+     1081 tggcatcatc agtgcgttca aggcggggag cgaccagcca gatattgatc gacgaggtgc
+     1141 cacgaagtgt tccaaggtta tttttagtat gttacatcca tcagcgggtc taggccatac
+     1201 cggtctatat tatggtgagt cgtataggct gtaatgccgg ctgcacaatc tacggccgat
+     1261 tgcacataaa atggtcaact aacgacaagc tctgattctc aacttggata aaccttatca
+     1321 caaaaggtcc gacacggttc agccgaggta aatcaaagtg attatgactc caggagcgac
+     1381 acaaagttgc actgtctact gttggtcatc accgtactgc aaacgggtaa agatacttag
+     1441 ctttgttagc tattgcagaa cctaattgct ttcctgccct aaggcgatcc ggatcctcta
+     1501 tttatcaagt taattatcag agcttagctc aagtcaaagg tcttagtcag gtatggttta
+     1561 gtcggcttat ctcgctccga taaacccctc gcgcctcgga ttcattcacg cgtttatatg
+     1621 gtgaggggcg acccgtaggc tagtcgcact cctcggcaat taatcctaca gaaacctaga
+     1681 catgggagtt gcgatcctcg agatacggcc tgagagggtc ggcaaagtgg gtgcttcatt
+     1741 ctcttcggcg gagttcgcag gctctagaat gcctggtttt catctcgaca taaattacga
+     1801 tgttatctcg tgcattatta ccccttttct gcaggtttta agtcgagtct agtcttacta
+     1861 acgctgttct tcccgagaag gtgtccaggt tagatctcgg catattttca ctggcgcgct
+     1921 atccgacagg aagacagcac ccgttaagcg ccccagtcac atcaagatca gtcctatgtt
+     1981 gactcttgct ggaggtcttc tcgaatccag ctaatgttgg attacccgcc cctctggaat
+     2041 tcggtctctg cttttattat ccggcatgca tgcggcgttg catcgcttca tcgtcatcga
+     2101 catatcgtta gcgggactta tcagggtccc atcacggctg tgacagctgt tcataagtgt
+     2161 aatagcagtc accccaccaa atgcaagact gttcccaaac taagtgctag ggaggttggc
+     2221 tacctatcgg cgtggcagtt gaccgggttt ttcttagtac ctgccttcca atctccgata
+     2281 aaagcaagat gacttcctgc ttgcgctaaa gtctgaattc gctaaggggg cagattcatt
+     2341 accagagact gccaaagtca accgccgaac gatactggaa tatatggagg tatgag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,457 @@
+LOCUS       construct_3            11530 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_3
+VERSION     construct_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CAGA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     homology        5..8
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     exon            2009..2206
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     gene            2009..2206
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    9..2206
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     misc_feature    9..2206
+                     /source="part_B"
+                     /indicates_part=True
+                     /note="From part_B"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        2207..2210
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     CDS             2211..5468
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             5469..5597
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    4679
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    5324
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    4271
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    2211..5599
+                     /source="part_C"
+                     /indicates_part=True
+                     /note="From part_C"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        5600..5603
+                     /label="TTCG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6192..6221
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     CDS             5604..6116
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    6126..6191
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     CDS             6168..6191
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    5604..6224
+                     /source="part_D"
+                     /indicates_part=True
+                     /note="From part_D"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6225..6228
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     3'UTR           6232..6541
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    6229..6231
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    6229..6541
+                     /source="part_E"
+                     /indicates_part=True
+                     /note="From part_E"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6542..6545
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6546..6954
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(6843..6863)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    6546..6954
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6955..6958
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3420^3421
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    10374^10375
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    5..6958
+                     /source="construct_1"
+                     /indicates_part=True
+                     /note="From construct_1"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6959..6962
+                     /label="GTCA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6963..6966
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    6963..7004
+                     /source="part_L"
+                     /indicates_part=True
+                     /note="From part_L"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        7005..7008
+                     /label="ACCC"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     CDS             complement(7202..7993)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     CDS             complement(7202..8107)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    7073..7101
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      8418..8423
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    7178..7201
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      8396..8401
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      8241..8246
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        8277..8829
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    7016..7126
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        complement(8280..8387)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    8916..8924
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    complement(7128..7168)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    8191..8214
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      8262..8267
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            complement(7202..8107)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      8241..8829
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    7040..7063
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    7009..7014
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    10219..10242
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    10398..10428
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             9199..10218
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     gene            9199..10218
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    10441..10458
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    10351..10375
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    10402..10426
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    10243..10290
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    10446..10451
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      10441..10443
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    7009..10458
+                     /source="part_J"
+                     /indicates_part=True
+                     /note="From part_J"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        10459..10462
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     promoter        10539..10717
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    11527..11530
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     terminator      11274..11526
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             10719..11269
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    10463..11530
+                     /source="part_K"
+                     /indicates_part=True
+                     /note="From part_K"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cagaggagag catacggtgc tctgggctca cacgtacttc ctcttgtcac gcgcctttgt
+       61 agagcattag ggcggaggtc actgggacgg ggatcagaga gcttaaaatc ccaagtagca
+      121 gtgcctaagg tgtagaatct tgtgcagatc ttcgtctggc ccgaaacctg ggcctccaca
+      181 acaatgtcgg gtcttttata atttgaaaac atcgcgcctt acccgcaccg cgcaggacga
+      241 ttagacacag ggggtcatgt ccatggttcg gggtaagcca aatttacatc gagtgtgggc
+      301 ttcattgagg agagggcgtt acgatacccg ttaaatgaaa acccggacag tctctaactg
+      361 ataggcctga taatcgccaa atgaagtcgc aattagcagt acatgactgg cagatatgtc
+      421 gccggagacg gtatggggga cctatcctag gttggcacgc gagcgcgaat gacgcctatc
+      481 ttatccccct gcacgtgatg gtatcgtccc aactatcttt tacctcatca acgttttcct
+      541 gcataatctg caagatggag agtccgcgag tgcggggagt acgagatcac aaatctgccc
+      601 tgaagacaaa gctcgcaggc cgtactcagg aaatagcatc gactcacaca tatcgggaac
+      661 ggcaaagagt gcatcggcca atgcaaacta ttgaacgtcc atgaaattgt gtcaaactac
+      721 tagtgtgtgg acttgcgtca aggccatggc gcaatactca aagccccggt atttatcccc
+      781 cgcagagtat ccgtgcggat ggagttccac agctctttgg acatgcaatg cgtggcgcta
+      841 catgctccgc tgatacagaa tatctaatgt ctcgcctctt gccgtcgacc ctacaactac
+      901 tgcacgggca gagtggacgc gacccctgag cggtgcagaa ccttagtata aggcaagggt
+      961 ggcacggccg agccgcactt gctcctacta ggccgtgctc gaagctattg atgcaagcac
+     1021 agtattcccg atttgtaaag caaggtgccc gtagccatac acccagctac tcaccggcca
+     1081 atttcgaccc tctctatctc agacctccgc atattcccaa actcctgctc aagtatgaaa
+     1141 tgaccggctc ctcctaaggc ctgcggacat ggagtcatgc gtggaatgcc gtgtaggtag
+     1201 ggtacacaca gccttaccat gtagggcaat aaattataga ctactgacat tgattccttg
+     1261 agggcccgtt cacttgtggg ggaaccagga aggcgccgat agtcatcact taaacacatg
+     1321 cgacgcatcc atttcaagaa agacacgcta cgggtctaca ccgcctatag ttctaatttg
+     1381 ggccccggta cgcacatcga tgtactctcc attacagcat agcacatcag cggccctagt
+     1441 tagcgcttct ttttgttcca acattcaata gcggggactg cattatcctc accctatttg
+     1501 ttgcataggt atttggccgt atacttggga aagagcaacc acgggagtgc actagaaact
+     1561 gattcaccca tgttataacg cgttgctcgc aagtcgtact gtggccacgc acaggtcagg
+     1621 caatcgcaac catgtcttag cagtttgtaa gaagaccttt aaacatgtac ctcacagcaa
+     1681 tctcggaact tttaattttc ctgagtcaat gacatgctag ctccgtccac ttgtaatcac
+     1741 cgtcataaca cagttagcct gcaaaagggc gtgtacacct tgccacttta aagctgaccg
+     1801 aataacctac ctacaggaga tgcttagtgc cacggaatga tctcgcaatg cttagtctta
+     1861 cacccagtga atcaacccaa gacctcgccg actgaacggt attgagtcca atcccgagag
+     1921 gcaatttatg gccgttagtg acagtcggtc gctgatagaa taaggcagac tcgtcttaag
+     1981 cgggctgctt taagagaaaa tggagccctg acgaagaagt ggatgaacca ggttttgaca
+     2041 acgtcccata ttggtaatgt aggctcgtta tcaagagata ggtttagaag gctcaatgct
+     2101 cgacgtaaaa gaagtcttaa gctctatgag ccagtgatga gagctaatta tagggcgcat
+     2161 tcgttggggt aaggttgcga attgtcattt aactaaaacc gacggcaatg gtttcaccgg
+     2221 agctgagatc gcattaaagt cacactacga attatttgtc cccgcggctc cagagacaaa
+     2281 tttctaggag tgggttcatg gagaaccgtg acaagcatgg tagcttcaaa tagcgtcatc
+     2341 ggatcttaaa gtgattgtga catatatggg attgcgcgtc tctcttacac aagctagtgt
+     2401 gcgcgaggtg ctgaacacct attacgtcaa ctcccgggat cccggcgggt tacagagaca
+     2461 taagcagggt gtccatcatt aacttcgatg ttgagcccgt gccctgatca aacacctctc
+     2521 gtagtagtgg gtgccggccg tgtattattt tgggggagag gatgcgccct aagcaatttc
+     2581 tttccatcgg ccagccattc gacgccggca cgcaagttgt tgcgggcact gttgcagttc
+     2641 ccgtactaga gtctcaagtc tagaggtacc agcatcagga agatgggtac ttcgtgtgga
+     2701 tcttctcctg aacctgaaac ctgaagagct aaagcgcgtc gcgctgccat acgataagtc
+     2761 gctctcattt ccggaagacg tcgttgggtg atggcgaaca atcgcgaaac gaaaatcgcg
+     2821 gtcggtatgt tgattcaaga cgggctacgg gcgggttact aacaggtgcg cagaaatgtg
+     2881 atgggtcact tgaccatgaa ctttcgcgcc gtcgcttctg tggactggcc ggctccctga
+     2941 tagtgcacta gcccgttgat atgcccatta ccatttggcg gcgcagtgtg ccagcgggat
+     3001 taagatgcgt ggcgtacaac tatccgcact ttgctgacgc acaaaggcaa ctgatggaca
+     3061 gccttcgggc attcgactgg ttggctgagt tcgcctgcct attaatatgc ttgtggaaat
+     3121 tgatttacag cgcctacttc tacttaggtg tacctattta cggcacaggg ataaaggctg
+     3181 acagaaaagt cctggacagg tcataggtag ttgtcagacc tacaatggta taacttgaga
+     3241 gtcctgtacc gcacatgcgg ttgtagctag atgtccagaa gaccgtagct agcgacgagt
+     3301 gggttgcacg cgcattttgg gaaggggctg cgcgagggtg gggtcacggg ttattccatt
+     3361 tctaaatgct aaaccagcag ttgctttagt tctgacctag caggcatgtc atatgtatgg
+     3421 ctagattatt agtacaatgc aggactaaga aagcctgaga cttaaatgcg ttggtttttc
+     3481 agccgacggg ccgggagggc agatggccga atgcgcactg aggagtgcat tgcgagggaa
+     3541 taggcggacc accaggtccc ctcacatact gtggataaac ctacccaggg acaactcacg
+     3601 ccatcatttt caagagtagc actactttcc actaagtacg gtttgtcgag agccggtggc
+     3661 accgtgcgac gagcttgtgg gcactaggcg aaccgggtta tataggactg ccttgcggtg
+     3721 cgggaatact ttaccccgtg gagaggccat aaaagcttac atttattgta gccgctagcg
+     3781 gtttcgacgc gctcaagtgg ggctttatct tagagtatca aataatgccc tctcagcttc
+     3841 atcttgattt ttgtgtttgg ggtagtgtat ccgatgggtc accttcttga ccttggggag
+     3901 ctccatccat cgtaccaata ctccgtttct ttgtgttgcc taccgagtaa tcgaataccg
+     3961 cacgagggct agaatctaat ttaaggtggg tcttatccct gttgtttgga cctaacgctg
+     4021 taacaaatca cttccgcgac gggtgtcatt acgtcttcta tccgccaccg gttcaacagt
+     4081 gcgtcgaatg ccaagtccct attacccgca ttgtaaagcc attacaatac ctccggtgat
+     4141 ataattgatt gccggttggc aagggatcat ctgtacgggc cgcgattgat tgctgataag
+     4201 gaacggcggt aaggaacgta tcgcgtacga ggttgtacac tggaaccgct aaacaagcgg
+     4261 tatcgctaaa ttaccggcga ttatatcaag ggaatcttag gtagcacgaa gccctacgcc
+     4321 ctggaaacag gatcggcgcg aggccgtgga catattagcc tacgtttttt tacacccaga
+     4381 tttccgacga tgtccacagc taaggctatc ctaaaccgca aacacatata accgcagtat
+     4441 aaagcacggg atgattcctt ggccatcttg caagcagtgc aaggcaattc tggtgatagg
+     4501 ggcaaggcag tgaaccgagt ggtcagcgta ttgtgaccct gcaattgtca tggcagataa
+     4561 ttgtttatga acctgtttca cacacccatc ccttggatct ccagcgtagt tactaatagt
+     4621 acgatttcct ggtgttctgt cacccgcctt gctgccttca cgcctgcccc acgttttgct
+     4681 gtccactgaa tatcgctcta attaataggt gtcacactgt atcaggtaag tccattccgg
+     4741 gtgctattgg atcattcctg agatgtacca ccgatcccat aggcgttagg tcttacatct
+     4801 ggagtgaaaa agatcagcat cgaactatag gtagataaag gtcatgactg ttaacagaga
+     4861 atcgttccta tcgcaacctt cactaactgg aaggcacccc cacactttga ttagtaagcc
+     4921 cctagcgaat gtagtgatcc aagaacatcg agtatacttt agctctcggt tcaggcatgt
+     4981 atgcaatcga ccacccttcc gttcagagta ctctcaacca gcagatttct aaactttata
+     5041 gcctccgccc actaaaattg ccttatctca ggttgactct tggatgtagc tgtaatctaa
+     5101 catacacatg gagctgcggc aaattatcgt acgtccaaac caccaccgga tcagtggcga
+     5161 tactattctc gcaaaaaagc catccagcat tggaacaagt gttaaccagc atttttctga
+     5221 gtcccccgga aagaaagttg actacactac atccataaat gctagagtgt ggattcgcca
+     5281 tgtgttacaa cggtcaaccg aaaggttagc atgatacttc gttgttcaat cggacgttcg
+     5341 agcgccctcc ctgtttatca cttgatcccc cttttgaaac atgtgcgctg cgacgcaggg
+     5401 ctgggagagt caccggaaac caaaagcccg acctcggacg tgtagggccc tccgtttgcc
+     5461 atcaatggcg atgtaggatt ctcttttaat acaacgttca ctcaattaac gtcttggtat
+     5521 aagcgtcgaa cgtgaccgag gttgacacca gtgtcacggc tgcgccgggg tttgttgctc
+     5581 cgcgtgtaca gggtattggt tcgatggtgc ctcctctacg tagatctact ggataaccgt
+     5641 ccccaatatc cgcttcccaa cgtagattgc cgacaggcat aagcttcggg ggcgcaaagg
+     5701 ccgacgtccg cattgcagtg tagctttgtg agcaggaagt gtgatagtct ttcgattatt
+     5761 aaagtctgag ctgaatgaaa aaaggtccaa cgaatggagg acgcgaagac atgggtgtct
+     5821 cttatggccc gagcgggagt aatggcggtt cgtacataaa ggctgaaagg attctggcgt
+     5881 tagctgtctt acgttggatt ggcccttcaa attatcgatg ttagctgatt cggtgtaccg
+     5941 ggcgaggaaa gcgctctcag aacaacttca tatacgaggt tcgactataa tggtctaagc
+     6001 tcctgggcta gtctcaagaa gcgggtacct ttagtagcac gtatcgacgg caaagcaaag
+     6061 aataaaaact tggctttgca tcgtgcaaag atttctaact aggttgttta agggctggta
+     6121 tctatgtccc gctataacag cgcgcctaca gtagaagttt aaccatgaca tacctttgaa
+     6181 gtgttcgtat cacacacaag gaaggagcat gtggacacca ctgagctttg atcagcacgc
+     6241 gtctcagagt ttcaggggga cccaaattac tggtcctcaa ttgggacgcg accgcatctc
+     6301 cccacgaaag cttatgggga ttgcccactg cccagcttca aatctgaagg ttcggcttat
+     6361 tgacagggtc taacacgcag ctcaactgct cgaggttaga ggcgtaatga cgggccccga
+     6421 tagccttcta cgattacgtc cagcaggaac cccacagctt ttccctacgt ctaacaccgt
+     6481 gaaagcaaaa ctgtctgccc ttttacatgg tctttaagga atctctgcac ttatgttatt
+     6541 aggtaagctc ccataagagc accacttcgt gtaccttgct aactcccttc atccccaccc
+     6601 gcgaaaactt aagacgtcac ccctgttatt atcccgtgca ctcctaaagt gcgatgggca
+     6661 agaacgcaaa caattgtctg agatttatat gggcggcgga catagtcaga gagccttata
+     6721 taatctccca cgtcttgcca gtccgagtta tgagaaaccc gggaccgatg acgctattac
+     6781 ggtcgcccag cgaggttcaa cagagcgagg cataggagtc attacgcgtg ttagcttcaa
+     6841 catgcgtgga agtgaaacgg atctataaaa cggcgtggag tcatcagctt gagcagatct
+     6901 aacttactcg ccacgcgcgc aaatcgtctt tcgctgtcca cgttatacgt aactcgctgt
+     6961 cacgctagag accgtatgag gtgggcggat agtggtgact tcaaacccct aagatgccag
+     7021 cgcaatacgg catcgcaggg caagcaacac cgcacagcat gtccctaaag ggaagattta
+     7081 atacggactc agtcaagttg tgagaaacga caatacattg agtggaatgc cctttggtac
+     7141 gttggcgata gatctaacga gaaacttcaa cgagatctag agtatcggac tgagatgcat
+     7201 catggctagg gattgctgaa tggatatctt tgccaaaatg agctcgacta ggaatctcag
+     7261 actgccagct acgaaaagct gggggatatt catttccgct cttgtaaggc gcacgatgac
+     7321 cctgtggagc aaaattcgac gcggcaacgt agtcaaagta cggcctatct gggacggaga
+     7381 tgggattgtt tctgtattca tgccggcctc ttgagattgt aaggataccc ggccacagtc
+     7441 tcgtaagaaa cccgatatcg ctcaaacgaa ttgacatcag ttagggcttg cgctctagca
+     7501 accacgcgtc gggtgttcga ctgaatttaa gatccagcgc aaaccattcc ttaaaggcgg
+     7561 tccaggtgaa accggctctg ataatgtaca gtggattgtc cagttcgctt caaagtgcaa
+     7621 tcaggcaagg tactggcaag tcaccgcttg gggccggttt cagtggagct ttatcgacaa
+     7681 aaggccgggc cctttggcct agagctcact tttggtgtcg ttcacgagtg agaactttgg
+     7741 ctcgcagctt gaatgcttgt cacgtttagg gttatacaac gtttctataa actacctatg
+     7801 acaaatcccg atcttctgaa actccataag gactaagaga gtccgcgaca gtttcacttg
+     7861 gtcggtgcta ttgactatgt cacgcatgcc cggtaaagct tttaagcaaa gcctgatata
+     7921 tcacgggagg ttactcaaag cattttctaa agggacagcg gactcacatt agcctaatat
+     7981 aaacccgatc aggccatgca cctcgattca ccggaaggta gtaccatgca ccggatattt
+     8041 gggacaacag tgaatagtac atcgtaaaat gtcaaggcct agctattttt cactggtgtc
+     8101 ttatctctat tacaacacac acggatgtcc cgagcctaca ctttcaaata tactcaaggt
+     8161 tcgctgttaa gggtaataca agagtgctcg gtttagtatc catatgttgg tacaagtgac
+     8221 tgtgctagcc gtaaattaat tcggcttcca ttccagcttg ggtgtttagg gtctagacgg
+     8281 ttgaaaccag aaagagtaca gacaaaaccg tagctctccc aaggttgatc ctccagacac
+     8341 ctacccacac tagtagcgca ggcctagagg agacgttagg agcggaattg tacattcagt
+     8401 atcgcattaa gcacaaagac agacaaacct agaagccact tatcccctcg taggagtaca
+     8461 acggcagcgc tttcgggagg agttgcctaa ctacgctctg gacagcaagt cccagaatga
+     8521 agaaaatgac ttggcgagaa cccaccacta catgcagggt cttgggaccg gtcagcacag
+     8581 cttatccatg cggcaattcc ggacgaccgc gaatgaggat cacgacactg ccgatgttgc
+     8641 accattgacc ttctcctatg caacaagggc ttaagatggt agatggtaat agagtagcct
+     8701 gcgaccttat gcggtaatac acaaaaaccg gtaaacagtg cgttgatgct gtgtgctggc
+     8761 gcatttgtgt accttgctgg gctcgtataa aattctgtca gcaggacgtt cacctccctt
+     8821 ctgctagtcg ctaggcacaa acggaaaagg tctaatcgcg cgcgtgctcg ttagagtact
+     8881 ggggcctccc accacggatg atcacctcgc cgatacattt ggccttatgt ctcaataaga
+     8941 cctcatggtc tatcctacac catagatttg gaaagtctag ttgctgccta gcaggctgat
+     9001 agcaagcgtc gtacgaggat cgaggaaggg cactcatggg agtgtagcgc tagccatagt
+     9061 tgacctgtca gccggtcaag gttggtccga acctagccag ttagacgacc agctccccca
+     9121 ctattgcaca gtgcctgtat aagcacgtca gtgtctggca ccactgtgcg cggtgtggtc
+     9181 ctcgggacga tcttcctacg gctacccatg cgctagtgat tacagacgat cgttttttct
+     9241 ttttctgtgg tgcaaataca caagatacgt caagagtcct agcagcctca tcttgccaat
+     9301 tgcaggggta ccgattcacc catggtatca gtcacgcaaa aaaagacgac atcggagttg
+     9361 ctggcgactg gcaaaagaaa acatctatct gccgtggcgt tcgtctagcg cagcgagccg
+     9421 actgactact ccgttatctc aaatttagtt tcgtaagatc ttcacgggag ccggccagct
+     9481 gaagaatcta taggtctacc gctagaggaa gcccgtttac aaccgacgta ctagtccgac
+     9541 agcaatcgtc agcatgccaa tttattgtat caggttgaga atgcaccact acggaatcga
+     9601 cgtgccactg gccgcacgat actagtgcgc tggtaaacag gccaggagct ctaaatctgg
+     9661 agtggtgtga atttaaccgc ggaacgattg ttgcacgcgg tccctgtgac tctgttggga
+     9721 gcactgtccc cggctccgga taagtgatgt gaacgaaaag gtgggctgac cagagatagg
+     9781 gttaaggacg ggcgatcgta gtggacgatt actgctgatc ttccgagcac tctgagtcgc
+     9841 gcggcgtatc gggagttacc ccgctcgcta cacatctgaa ttccgccgga tactatgggt
+     9901 gcagagtgga tcaccttttc gtgacccgta tattcgtcgt tctcatcact gtcctccgcg
+     9961 atttatttca atcgtcggtt tcgccagatg cattcctggg gaagtcatcg cgacagtgcg
+    10021 ctgcgcgcac agctcttctt ggtttattcg agattgtggt ttatcaacat ggtctatcta
+    10081 cggactgatt agaatattcc cacgttaagc cgacgtgcat tggtactggc tccttaatta
+    10141 agcgcagagg gtaggcgcct tttcttgtgc aaaccattat atgaggaact agcaaacact
+    10201 atggcgcaat atgtccacgt gactcgagca ttctgtgttg cggtagcgat ttcactagtc
+    10261 acaaacggat agattctacg gcgcacccgg tgcatcgttg tatgttcagc aatttggtca
+    10321 tatcccgctc ctctattcaa tctctttttt cgtcaggggg ggcacatact tggagcagct
+    10381 gcgcctaaca ttacaataag cagtcggagc tcagtacaaa acccttatct tagcggtccg
+    10441 ttctggaatt cggtctcagg agagacactc cttcatcaac agcagaggtt acatacgttt
+    10501 aacctgaccg atggttgccc atcgaaagca aggacccacg ggtaggcagc tgttgtttga
+    10561 tatgcttttg tccccggaag gcgccgataa aattatacgc cgtcccccgc gtccgttacg
+    10621 agcttcgtga tgttgcgggc tgaagttccc tacgagtcaa taggccaact cgaatggcta
+    10681 aatggttgca acccacaggc tcaactttga aggtaatacg ccaaaatcca atatgctctt
+    10741 tcgggtagcg cataaaacct tctgggggcc actgcagaca gtcatggagg actacgtgca
+    10801 acactacgct ctagagtgat gatgtggcag tcaaccgagg gctgttaaga gaagtctgtg
+    10861 cacgaaaatc aatgagtcgg tgtaatcttc accttcctac aaaccaaggc ttgagggcct
+    10921 caatttcgag caccacttct tgaccaagcc gttcgccggt ataggagtta cgaattcggg
+    10981 tcgtctgccg tctttgaacc atagataagt acctcccgag tcgggagaac acgaatcgca
+    11041 tcagaactca tcgaagggtg ttactttgcc catcggcatc cccgaagatt aattgcattc
+    11101 gaaattttaa cttcgagaat catccgtgct aaccaacgtg gacgagctat gaacgtttac
+    11161 gtgttcagta tctaggaatt gacacgtctc cgatagcggg agtcacggca tgagttacgg
+    11221 cttttgtgac cagcgtctgt gtaattttat tgacagtttc atatatagtg tctcgtcttg
+    11281 cctttgagat tcacaggctg taagagggat gccgtcgtgt atatgcctgc agttagagct
+    11341 tccttgtcag gacgagcaac tcactccttc tggtgatgct ttgctagcat gtagcttcgg
+    11401 gtacttgcgg aaaaggacag cctacagtgt ctgcggcggt acgtcactaa tatgacatac
+    11461 gctgtggaca tcgtgaagcg gcgaatcgct ccagattgag gtttacagag tactccatag
+    11521 tcacacaact
+//
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,2 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,depends_on,enzymes,used_in,parts
+construct_3,construct_3,2,11530,4,construct_1,AarI,,construct_1 & part_L & part_J & part_K
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3_type2s_mix_connections_graph.pdf has changed
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_3/construct_3_type2s_mix_parts_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_3/provided_parts_records/construct_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,385 @@
+LOCUS       construct_1            10366 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_1
+VERSION     construct_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(223..1038)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    complement(139..179)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    5..8
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    20..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(223..1038)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    189..212
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    51..74
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    84..112
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    27..137
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3347..3377
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1367..1372
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1190..1195
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        1226..1778
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3396
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3192..3239
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_RNA        complement(1229..1336)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1865..1873
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3413..3416
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      1190..1778
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3300..3324
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1345..1350
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      1899..2147
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3397..3401
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3395..3412
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1211..1216
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3168..3191
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3351..3375
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1140..1163
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    5..3416
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3417..3420
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     exon            5421..5618
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     gene            5421..5618
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3421..5618
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     misc_feature    3421..5618
+                     /source="part_B"
+                     /indicates_part=True
+                     /note="From part_B"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        5619..5622
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     CDS             5623..8880
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             8881..9009
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    8091
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    8736
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    7683
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    5623..9011
+                     /source="part_C"
+                     /indicates_part=True
+                     /note="From part_C"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        9012..9015
+                     /label="TTCG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9604..9633
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     CDS             9016..9528
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    9538..9603
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     CDS             9580..9603
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    9016..9636
+                     /source="part_D"
+                     /indicates_part=True
+                     /note="From part_D"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        9637..9640
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     3'UTR           9644..9953
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    9641..9643
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    9641..9953
+                     /source="part_E"
+                     /indicates_part=True
+                     /note="From part_E"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        9954..9957
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9958..10366
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(10255..10275)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    9958..10366
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cgctgtcaat atgcaggtgc tgcaggaatt tgtctccaat cgacttgaga tatcgcaagc
+       61 atgaaattat attagacacg ccagagaact tgggaagcag cactggtagt gatagcaacc
+      121 cgagtacagt aacgagtgag cttctgatca tgagctctcc tacggcgtca atgcgacgaa
+      181 tgcccagcat gcactctcgc tatccatgcc tgctagggtg gcattatgct caggaacagt
+      241 tgtagcttgg atatcgtcta gatgaaatac ctggacactg gttagcgtcg tcaagcacca
+      301 aggacattca cacgctcgcg gtctttcgtc tccctaagcg ttcggcagtc gggcgtgaag
+      361 aggttgtaat cagacggaac aaagcctgaa aaaattccag cgacgtagta ttcatgatcc
+      421 tgtaccatct gtagccgccg cggcgcacga ttgaatgtag gctactaacc ccatccgtgt
+      481 tagcgatgtg agtttctacc gcaacgaatg ctcaagcgaa ccttcttctt tcgtccgcaa
+      541 cccacaagcc gtggttatga cagctaaatt gtcccagaca tccctttatt acacaagagc
+      601 tccagcggaa tacctagtca cagcggtaat gacacaaagc tcttagttag tccagggact
+      661 acttctgtct acagcacatc acactcatta tcagcatcag tgtagagacg gagaacatgg
+      721 gctatcctat accaagatcc gccatctaaa catttgaagt ttcccgtctt ctataactta
+      781 gcactcgacg ctattctgct gagtgcgctt agtctgtagc gacttgcgaa atccataaac
+      841 tgagaattga aagagagtgc ataaccgaaa cctttgtggc atatttccgt tgaaacgtac
+      901 cagaacagcc gtttagtgcg gaacatacag tatcctgata aagcactcaa cccaacagac
+      961 accctatgcc gatagcggga tgctaacaag tatagtcatg atgatttctc ggacagcggg
+     1021 gtttggtaca gctgcaatcc gtgatttaaa ttcggacctc tgcacacacc gacggttacc
+     1081 catatcctct acggctgtag gaagttttac cttggatgtc attctgattt cggcgtatct
+     1141 cacaggatgg tccaacgaaa ctaggcttta gacgagggat gaatgaccga cccccactcg
+     1201 tggcactaac ggacagactt ccctgacggt tattcgacca ttaaagtcag acatgcgggg
+     1261 gtgaataaat tagccaaatt gtgtcgaaga aaagacgtgc ggctggcaca taaggcagtc
+     1321 ttgatcctag tcttgcaggg atgcacgtaa gtcgcctcaa ttaactgcag ccgagctcca
+     1381 ggttaccaaa gaccctagta tgccagggcc taacggttgg agtatattat gggtacgcaa
+     1441 tagtgcggaa gttaacctgg gcaacatcca ggtgagaggt tggacggaag cgacagtaag
+     1501 tggccataga ctgccgagtc gtgttaatga atcgctatac gcccatggag ttgtggggtc
+     1561 gttttatccg agtaggggcc cgctgactac ttcgtccaga caatatgccg tcttcaatag
+     1621 tctacctgag agtcatgccg gcatttccga cgctgagtga aacccgcgta gccaggcgaa
+     1681 atttgcatct tgaaatacca ctgcagatca gccagtaagg cccatataag ggcgctggtg
+     1741 ttctggcgac agataaagtg ttatctaatg taacccgcgg acttttagag gatacttgaa
+     1801 tgcgggcata tcgtcccacc agcgtcacgt ggtcgggcta gcggcagaca aactctgccg
+     1861 atgtttttct ttgccgcgat agcgggctag tcaattcact atccggcgat gaagcataga
+     1921 ttgttatcgc gcttatgcgg aggataatca agtcttggca gaacctgctc gctcatgcac
+     1981 tggtgaggcg tggttatcct aacaaccgcc taggacgaag aatgggctcg gtagggacag
+     2041 ttcgtgcgtt tagcttcgtc ccatcttaat gctgtctgga gggaggctac atgcgaacag
+     2101 aagccgtggg cgaaagttgt tgatccgggt ctaacacgga taagggccat ggtgaacgca
+     2161 tcatgcgata cttcttggta gttcttctaa catgaccgtg ccatagccct taccctttga
+     2221 agaagttaac ctatctgccg tctcctgcac gaatagcgac tggactcggg tattttggat
+     2281 acctcacgaa agcacttcga tcggccgaag catggatatt tcgccggacg ggcccgaata
+     2341 gagagccttg tatgtcggtt agtacaacgc agtcctggag acatctacgc ggatgggcct
+     2401 aggggctgga cttaacattg ggtaacgtac ctggtccaaa gtgaatgcaa agcactttta
+     2461 caaagcgcgg gtccccgtgg gtgtttaggg tagaagattg gcggatgcta cgaacgatcc
+     2521 cgctttgaaa ctatcattac atcgtgtaaa agagacactt aacaaaggcc aataaactgc
+     2581 cagtaagaat cgctcagtgc ggtgctgggg acgctaagta ggggcaacag ccagtgaagg
+     2641 acgtgaccga cctttctcag ataagatatg ctggcgtcta tctaataagc atagtgaaaa
+     2701 accaaccatt tcacttacac gaagtacatt tgcattgcta gtaaagacgc ctaaacagaa
+     2761 gtgcccttgc atgctgtatg tctatagtcc ttagggaagc atcagccctt ctacttattc
+     2821 gaggtctgag aaaccctgga caagctccga attattcaat gtgcctgtct ccgaggttag
+     2881 atagcgctat gctcttaaga gttgcacaga atgaccatcc tggaatgtcc ctggaggggt
+     2941 ctaggtatgc tgatcgaagg gtgctctaag gacttgacgt gcgtccgagg agggtgctgc
+     3001 ctccttcgcc tttagatcca acgcggatca catgcgcgtg agctaatagg atcaccttct
+     3061 gctccgattt ttaccctcct gggtcacttc cgaatgaggt agcgggcgaa atataatgtc
+     3121 tccactcgta ggtgttccct gtatgtgaag ctctatagtg gacaaaggtt tgatgaacta
+     3181 gcccccgtat acgctctcac cgacggacgc gggggtctgt tatttgaagc atcatacatg
+     3241 cgaaggtgcc ttctcagcaa cgaaaggtag tgggagtgta caagttcaat gcgccgccat
+     3301 aggtctgagt atacaagggg atgcccccat ccacaacggg attggctacc cggagagctg
+     3361 gctccgctcc aacaaataat tatattaacc tattggaatt ccacctgcat atcagaggag
+     3421 agcatacggt gctctgggct cacacgtact tcctcttgtc acgcgccttt gtagagcatt
+     3481 agggcggagg tcactgggac ggggatcaga gagcttaaaa tcccaagtag cagtgcctaa
+     3541 ggtgtagaat cttgtgcaga tcttcgtctg gcccgaaacc tgggcctcca caacaatgtc
+     3601 gggtctttta taatttgaaa acatcgcgcc ttacccgcac cgcgcaggac gattagacac
+     3661 agggggtcat gtccatggtt cggggtaagc caaatttaca tcgagtgtgg gcttcattga
+     3721 ggagagggcg ttacgatacc cgttaaatga aaacccggac agtctctaac tgataggcct
+     3781 gataatcgcc aaatgaagtc gcaattagca gtacatgact ggcagatatg tcgccggaga
+     3841 cggtatgggg gacctatcct aggttggcac gcgagcgcga atgacgccta tcttatcccc
+     3901 ctgcacgtga tggtatcgtc ccaactatct tttacctcat caacgttttc ctgcataatc
+     3961 tgcaagatgg agagtccgcg agtgcgggga gtacgagatc acaaatctgc cctgaagaca
+     4021 aagctcgcag gccgtactca ggaaatagca tcgactcaca catatcggga acggcaaaga
+     4081 gtgcatcggc caatgcaaac tattgaacgt ccatgaaatt gtgtcaaact actagtgtgt
+     4141 ggacttgcgt caaggccatg gcgcaatact caaagccccg gtatttatcc cccgcagagt
+     4201 atccgtgcgg atggagttcc acagctcttt ggacatgcaa tgcgtggcgc tacatgctcc
+     4261 gctgatacag aatatctaat gtctcgcctc ttgccgtcga ccctacaact actgcacggg
+     4321 cagagtggac gcgacccctg agcggtgcag aaccttagta taaggcaagg gtggcacggc
+     4381 cgagccgcac ttgctcctac taggccgtgc tcgaagctat tgatgcaagc acagtattcc
+     4441 cgatttgtaa agcaaggtgc ccgtagccat acacccagct actcaccggc caatttcgac
+     4501 cctctctatc tcagacctcc gcatattccc aaactcctgc tcaagtatga aatgaccggc
+     4561 tcctcctaag gcctgcggac atggagtcat gcgtggaatg ccgtgtaggt agggtacaca
+     4621 cagccttacc atgtagggca ataaattata gactactgac attgattcct tgagggcccg
+     4681 ttcacttgtg ggggaaccag gaaggcgccg atagtcatca cttaaacaca tgcgacgcat
+     4741 ccatttcaag aaagacacgc tacgggtcta caccgcctat agttctaatt tgggccccgg
+     4801 tacgcacatc gatgtactct ccattacagc atagcacatc agcggcccta gttagcgctt
+     4861 ctttttgttc caacattcaa tagcggggac tgcattatcc tcaccctatt tgttgcatag
+     4921 gtatttggcc gtatacttgg gaaagagcaa ccacgggagt gcactagaaa ctgattcacc
+     4981 catgttataa cgcgttgctc gcaagtcgta ctgtggccac gcacaggtca ggcaatcgca
+     5041 accatgtctt agcagtttgt aagaagacct ttaaacatgt acctcacagc aatctcggaa
+     5101 cttttaattt tcctgagtca atgacatgct agctccgtcc acttgtaatc accgtcataa
+     5161 cacagttagc ctgcaaaagg gcgtgtacac cttgccactt taaagctgac cgaataacct
+     5221 acctacagga gatgcttagt gccacggaat gatctcgcaa tgcttagtct tacacccagt
+     5281 gaatcaaccc aagacctcgc cgactgaacg gtattgagtc caatcccgag aggcaattta
+     5341 tggccgttag tgacagtcgg tcgctgatag aataaggcag actcgtctta agcgggctgc
+     5401 tttaagagaa aatggagccc tgacgaagaa gtggatgaac caggttttga caacgtccca
+     5461 tattggtaat gtaggctcgt tatcaagaga taggtttaga aggctcaatg ctcgacgtaa
+     5521 aagaagtctt aagctctatg agccagtgat gagagctaat tatagggcgc attcgttggg
+     5581 gtaaggttgc gaattgtcat ttaactaaaa ccgacggcaa tggtttcacc ggagctgaga
+     5641 tcgcattaaa gtcacactac gaattatttg tccccgcggc tccagagaca aatttctagg
+     5701 agtgggttca tggagaaccg tgacaagcat ggtagcttca aatagcgtca tcggatctta
+     5761 aagtgattgt gacatatatg ggattgcgcg tctctcttac acaagctagt gtgcgcgagg
+     5821 tgctgaacac ctattacgtc aactcccggg atcccggcgg gttacagaga cataagcagg
+     5881 gtgtccatca ttaacttcga tgttgagccc gtgccctgat caaacacctc tcgtagtagt
+     5941 gggtgccggc cgtgtattat tttgggggag aggatgcgcc ctaagcaatt tctttccatc
+     6001 ggccagccat tcgacgccgg cacgcaagtt gttgcgggca ctgttgcagt tcccgtacta
+     6061 gagtctcaag tctagaggta ccagcatcag gaagatgggt acttcgtgtg gatcttctcc
+     6121 tgaacctgaa acctgaagag ctaaagcgcg tcgcgctgcc atacgataag tcgctctcat
+     6181 ttccggaaga cgtcgttggg tgatggcgaa caatcgcgaa acgaaaatcg cggtcggtat
+     6241 gttgattcaa gacgggctac gggcgggtta ctaacaggtg cgcagaaatg tgatgggtca
+     6301 cttgaccatg aactttcgcg ccgtcgcttc tgtggactgg ccggctccct gatagtgcac
+     6361 tagcccgttg atatgcccat taccatttgg cggcgcagtg tgccagcggg attaagatgc
+     6421 gtggcgtaca actatccgca ctttgctgac gcacaaaggc aactgatgga cagccttcgg
+     6481 gcattcgact ggttggctga gttcgcctgc ctattaatat gcttgtggaa attgatttac
+     6541 agcgcctact tctacttagg tgtacctatt tacggcacag ggataaaggc tgacagaaaa
+     6601 gtcctggaca ggtcataggt agttgtcaga cctacaatgg tataacttga gagtcctgta
+     6661 ccgcacatgc ggttgtagct agatgtccag aagaccgtag ctagcgacga gtgggttgca
+     6721 cgcgcatttt gggaaggggc tgcgcgaggg tggggtcacg ggttattcca tttctaaatg
+     6781 ctaaaccagc agttgcttta gttctgacct agcaggcatg tcatatgtat ggctagatta
+     6841 ttagtacaat gcaggactaa gaaagcctga gacttaaatg cgttggtttt tcagccgacg
+     6901 ggccgggagg gcagatggcc gaatgcgcac tgaggagtgc attgcgaggg aataggcgga
+     6961 ccaccaggtc ccctcacata ctgtggataa acctacccag ggacaactca cgccatcatt
+     7021 ttcaagagta gcactacttt ccactaagta cggtttgtcg agagccggtg gcaccgtgcg
+     7081 acgagcttgt gggcactagg cgaaccgggt tatataggac tgccttgcgg tgcgggaata
+     7141 ctttaccccg tggagaggcc ataaaagctt acatttattg tagccgctag cggtttcgac
+     7201 gcgctcaagt ggggctttat cttagagtat caaataatgc cctctcagct tcatcttgat
+     7261 ttttgtgttt ggggtagtgt atccgatggg tcaccttctt gaccttgggg agctccatcc
+     7321 atcgtaccaa tactccgttt ctttgtgttg cctaccgagt aatcgaatac cgcacgaggg
+     7381 ctagaatcta atttaaggtg ggtcttatcc ctgttgtttg gacctaacgc tgtaacaaat
+     7441 cacttccgcg acgggtgtca ttacgtcttc tatccgccac cggttcaaca gtgcgtcgaa
+     7501 tgccaagtcc ctattacccg cattgtaaag ccattacaat acctccggtg atataattga
+     7561 ttgccggttg gcaagggatc atctgtacgg gccgcgattg attgctgata aggaacggcg
+     7621 gtaaggaacg tatcgcgtac gaggttgtac actggaaccg ctaaacaagc ggtatcgcta
+     7681 aattaccggc gattatatca agggaatctt aggtagcacg aagccctacg ccctggaaac
+     7741 aggatcggcg cgaggccgtg gacatattag cctacgtttt tttacaccca gatttccgac
+     7801 gatgtccaca gctaaggcta tcctaaaccg caaacacata taaccgcagt ataaagcacg
+     7861 ggatgattcc ttggccatct tgcaagcagt gcaaggcaat tctggtgata ggggcaaggc
+     7921 agtgaaccga gtggtcagcg tattgtgacc ctgcaattgt catggcagat aattgtttat
+     7981 gaacctgttt cacacaccca tcccttggat ctccagcgta gttactaata gtacgatttc
+     8041 ctggtgttct gtcacccgcc ttgctgcctt cacgcctgcc ccacgttttg ctgtccactg
+     8101 aatatcgctc taattaatag gtgtcacact gtatcaggta agtccattcc gggtgctatt
+     8161 ggatcattcc tgagatgtac caccgatccc ataggcgtta ggtcttacat ctggagtgaa
+     8221 aaagatcagc atcgaactat aggtagataa aggtcatgac tgttaacaga gaatcgttcc
+     8281 tatcgcaacc ttcactaact ggaaggcacc cccacacttt gattagtaag cccctagcga
+     8341 atgtagtgat ccaagaacat cgagtatact ttagctctcg gttcaggcat gtatgcaatc
+     8401 gaccaccctt ccgttcagag tactctcaac cagcagattt ctaaacttta tagcctccgc
+     8461 ccactaaaat tgccttatct caggttgact cttggatgta gctgtaatct aacatacaca
+     8521 tggagctgcg gcaaattatc gtacgtccaa accaccaccg gatcagtggc gatactattc
+     8581 tcgcaaaaaa gccatccagc attggaacaa gtgttaacca gcatttttct gagtcccccg
+     8641 gaaagaaagt tgactacact acatccataa atgctagagt gtggattcgc catgtgttac
+     8701 aacggtcaac cgaaaggtta gcatgatact tcgttgttca atcggacgtt cgagcgccct
+     8761 ccctgtttat cacttgatcc cccttttgaa acatgtgcgc tgcgacgcag ggctgggaga
+     8821 gtcaccggaa accaaaagcc cgacctcgga cgtgtagggc cctccgtttg ccatcaatgg
+     8881 cgatgtagga ttctctttta atacaacgtt cactcaatta acgtcttggt ataagcgtcg
+     8941 aacgtgaccg aggttgacac cagtgtcacg gctgcgccgg ggtttgttgc tccgcgtgta
+     9001 cagggtattg gttcgatggt gcctcctcta cgtagatcta ctggataacc gtccccaata
+     9061 tccgcttccc aacgtagatt gccgacaggc ataagcttcg ggggcgcaaa ggccgacgtc
+     9121 cgcattgcag tgtagctttg tgagcaggaa gtgtgatagt ctttcgatta ttaaagtctg
+     9181 agctgaatga aaaaaggtcc aacgaatgga ggacgcgaag acatgggtgt ctcttatggc
+     9241 ccgagcggga gtaatggcgg ttcgtacata aaggctgaaa ggattctggc gttagctgtc
+     9301 ttacgttgga ttggcccttc aaattatcga tgttagctga ttcggtgtac cgggcgagga
+     9361 aagcgctctc agaacaactt catatacgag gttcgactat aatggtctaa gctcctgggc
+     9421 tagtctcaag aagcgggtac ctttagtagc acgtatcgac ggcaaagcaa agaataaaaa
+     9481 cttggctttg catcgtgcaa agatttctaa ctaggttgtt taagggctgg tatctatgtc
+     9541 ccgctataac agcgcgccta cagtagaagt ttaaccatga catacctttg aagtgttcgt
+     9601 atcacacaca aggaaggagc atgtggacac cactgagctt tgatcagcac gcgtctcaga
+     9661 gtttcagggg gacccaaatt actggtcctc aattgggacg cgaccgcatc tccccacgaa
+     9721 agcttatggg gattgcccac tgcccagctt caaatctgaa ggttcggctt attgacaggg
+     9781 tctaacacgc agctcaactg ctcgaggtta gaggcgtaat gacgggcccc gatagccttc
+     9841 tacgattacg tccagcagga accccacagc ttttccctac gtctaacacc gtgaaagcaa
+     9901 aactgtctgc ccttttacat ggtctttaag gaatctctgc acttatgtta ttaggtaagc
+     9961 tcccataaga gcaccacttc gtgtaccttg ctaactccct tcatccccac ccgcgaaaac
+    10021 ttaagacgtc acccctgtta ttatcccgtg cactcctaaa gtgcgatggg caagaacgca
+    10081 aacaattgtc tgagatttat atgggcggcg gacatagtca gagagcctta tataatctcc
+    10141 cacgtcttgc cagtccgagt tatgagaaac ccgggaccga tgacgctatt acggtcgccc
+    10201 agcgaggttc aacagagcga ggcataggag tcattacgcg tgttagcttc aacatgcgtg
+    10261 gaagtgaaac ggatctataa aacggcgtgg agtcatcagc ttgagcagat ctaacttact
+    10321 cgccacgcgc gcaaatcgtc tttcgctgtc cacgttatac gtaact
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_3/provided_parts_records/part_J.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,196 @@
+LOCUS       part_J                  4380 bp    DNA     circular UNK 31-OCT-2019
+DEFINITION  .
+ACCESSION   part_J
+VERSION     part_J
+KEYWORDS    "Source" "Sequence" "Freezer" "Shelf" "Box" "Concentration" "Use"
+            "creator:SynthSys Center" "marker:SmR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     rep_origin      join(4298..4380,1..166)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     promoter        1442..1476
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    2345..2362
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(2550..3341)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    1187..1210
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1366..1396
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(2550..3455)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    2421..2449
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      3766..3771
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             167..1186
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    2526..2549
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            167..1186
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      3744..3749
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             1503..2222
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    1409..1426
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      3589..3594
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      2227..2298
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    1319..1343
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1370..1394
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_RNA        3625..4177
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      2314..2341
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2364..2474
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        complement(3628..3735)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    4264..4272
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     RBS             1485..1496
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2353..2356
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    complement(2476..2516)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3539..3562
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1427..1430
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     -10_signal      3610..3615
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1211..1258
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     gene            complement(2550..3455)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      3589..4177
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    1414..1419
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    2388..2411
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      1409..1411
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2357..2362
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+ORIGIN
+        1 ctcatgggag tgtagcgcta gccatagttg acctgtcagc cggtcaaggt tggtccgaac
+       61 ctagccagtt agacgaccag ctcccccact attgcacagt gcctgtataa gcacgtcagt
+      121 gtctggcacc actgtgcgcg gtgtggtcct cgggacgatc ttcctacggc tacccatgcg
+      181 ctagtgatta cagacgatcg ttttttcttt ttctgtggtg caaatacaca agatacgtca
+      241 agagtcctag cagcctcatc ttgccaattg caggggtacc gattcaccca tggtatcagt
+      301 cacgcaaaaa aagacgacat cggagttgct ggcgactggc aaaagaaaac atctatctgc
+      361 cgtggcgttc gtctagcgca gcgagccgac tgactactcc gttatctcaa atttagtttc
+      421 gtaagatctt cacgggagcc ggccagctga agaatctata ggtctaccgc tagaggaagc
+      481 ccgtttacaa ccgacgtact agtccgacag caatcgtcag catgccaatt tattgtatca
+      541 ggttgagaat gcaccactac ggaatcgacg tgccactggc cgcacgatac tagtgcgctg
+      601 gtaaacaggc caggagctct aaatctggag tggtgtgaat ttaaccgcgg aacgattgtt
+      661 gcacgcggtc cctgtgactc tgttgggagc actgtccccg gctccggata agtgatgtga
+      721 acgaaaaggt gggctgacca gagatagggt taaggacggg cgatcgtagt ggacgattac
+      781 tgctgatctt ccgagcactc tgagtcgcgc ggcgtatcgg gagttacccc gctcgctaca
+      841 catctgaatt ccgccggata ctatgggtgc agagtggatc accttttcgt gacccgtata
+      901 ttcgtcgttc tcatcactgt cctccgcgat ttatttcaat cgtcggtttc gccagatgca
+      961 ttcctgggga agtcatcgcg acagtgcgct gcgcgcacag ctcttcttgg tttattcgag
+     1021 attgtggttt atcaacatgg tctatctacg gactgattag aatattccca cgttaagccg
+     1081 acgtgcattg gtactggctc cttaattaag cgcagagggt aggcgccttt tcttgtgcaa
+     1141 accattatat gaggaactag caaacactat ggcgcaatat gtccacgtga ctcgagcatt
+     1201 ctgtgttgcg gtagcgattt cactagtcac aaacggatag attctacggc gcacccggtg
+     1261 catcgttgta tgttcagcaa tttggtcata tcccgctcct ctattcaatc tcttttttcg
+     1321 tcaggggggg cacatacttg gagcagctgc gcctaacatt acaataagca gtcggagctc
+     1381 agtacaaaac ccttatctta gcggtccgtt ctggaattcg gtctcaggag atatgcaggt
+     1441 gtttacggct aggcacttac gcgaaatttc agctcgcggc aaactgtgct tatgcgactt
+     1501 cagctagtcg tcatcgagtg ctgacgcgct tgttctacct taaggtgccc gctatcgcat
+     1561 tgtccagggt tcggctatga gggtcggaac cagatcgcac ctacatgatg tcacgatact
+     1621 attattcacg tcgttagaga acggacggtc cttcgtcctc acaggaaaat tattagaaat
+     1681 ggtcaaccgg gtccacaaac gggcaattgc cactttggta gtacggttgc acataagatg
+     1741 atatttacgc cttctgcgtt caggttacga tagtcgttga tggggctcgc tccgggtgaa
+     1801 gttgatccag taaaatgggc gtcgatactt ctcctgtgag ctaagcgtct aaattcattc
+     1861 ctagtctcgt gacgagaaca gaaaagacta aaccacgcgt gatggacctt ggtaagcgct
+     1921 tgtcggtcta acttgtctca tctcacacgg tatgttcttg tgagcgctga ccagcccgtg
+     1981 tccctgacgg ggaattcatt ctaacttacg gcttgggcgt cgtgatgttt cggaatccag
+     2041 gatattacac agtagatgta gcttgtggcc gaacgagtgt atttcctgcg tcggattacc
+     2101 tcatttcttg ttaatctgcc tacaattaag ccctttcagc agccttccct ctcgtttata
+     2161 tttcgacagt caccgtgaca gtgtgatcga gctgtgggaa aatcacaata tagacgttag
+     2221 ttgcttcgac agaaacggcg aatgtacgcg gttgtgatgg atgagacagg ccattcaatt
+     2281 ctattcagcg aagttcagat tggttgctac tgctaaagga tgcgcatttg tcctttctgc
+     2341 gcacctgcat atacccctaa gatgccagcg caatacggca tcgcagggca agcaacaccg
+     2401 cacagcatgt ccctaaaggg aagatttaat acggactcag tcaagttgtg agaaacgaca
+     2461 atacattgag tggaatgccc tttggtacgt tggcgataga tctaacgaga aacttcaacg
+     2521 agatctagag tatcggactg agatgcatca tggctaggga ttgctgaatg gatatctttg
+     2581 ccaaaatgag ctcgactagg aatctcagac tgccagctac gaaaagctgg gggatattca
+     2641 tttccgctct tgtaaggcgc acgatgaccc tgtggagcaa aattcgacgc ggcaacgtag
+     2701 tcaaagtacg gcctatctgg gacggagatg ggattgtttc tgtattcatg ccggcctctt
+     2761 gagattgtaa ggatacccgg ccacagtctc gtaagaaacc cgatatcgct caaacgaatt
+     2821 gacatcagtt agggcttgcg ctctagcaac cacgcgtcgg gtgttcgact gaatttaaga
+     2881 tccagcgcaa accattcctt aaaggcggtc caggtgaaac cggctctgat aatgtacagt
+     2941 ggattgtcca gttcgcttca aagtgcaatc aggcaaggta ctggcaagtc accgcttggg
+     3001 gccggtttca gtggagcttt atcgacaaaa ggccgggccc tttggcctag agctcacttt
+     3061 tggtgtcgtt cacgagtgag aactttggct cgcagcttga atgcttgtca cgtttagggt
+     3121 tatacaacgt ttctataaac tacctatgac aaatcccgat cttctgaaac tccataagga
+     3181 ctaagagagt ccgcgacagt ttcacttggt cggtgctatt gactatgtca cgcatgcccg
+     3241 gtaaagcttt taagcaaagc ctgatatatc acgggaggtt actcaaagca ttttctaaag
+     3301 ggacagcgga ctcacattag cctaatataa acccgatcag gccatgcacc tcgattcacc
+     3361 ggaaggtagt accatgcacc ggatatttgg gacaacagtg aatagtacat cgtaaaatgt
+     3421 caaggcctag ctatttttca ctggtgtctt atctctatta caacacacac ggatgtcccg
+     3481 agcctacact ttcaaatata ctcaaggttc gctgttaagg gtaatacaag agtgctcggt
+     3541 ttagtatcca tatgttggta caagtgactg tgctagccgt aaattaattc ggcttccatt
+     3601 ccagcttggg tgtttagggt ctagacggtt gaaaccagaa agagtacaga caaaaccgta
+     3661 gctctcccaa ggttgatcct ccagacacct acccacacta gtagcgcagg cctagaggag
+     3721 acgttaggag cggaattgta cattcagtat cgcattaagc acaaagacag acaaacctag
+     3781 aagccactta tcccctcgta ggagtacaac ggcagcgctt tcgggaggag ttgcctaact
+     3841 acgctctgga cagcaagtcc cagaatgaag aaaatgactt ggcgagaacc caccactaca
+     3901 tgcagggtct tgggaccggt cagcacagct tatccatgcg gcaattccgg acgaccgcga
+     3961 atgaggatca cgacactgcc gatgttgcac cattgacctt ctcctatgca acaagggctt
+     4021 aagatggtag atggtaatag agtagcctgc gaccttatgc ggtaatacac aaaaaccggt
+     4081 aaacagtgcg ttgatgctgt gtgctggcgc atttgtgtac cttgctgggc tcgtataaaa
+     4141 ttctgtcagc aggacgttca cctcccttct gctagtcgct aggcacaaac ggaaaaggtc
+     4201 taatcgcgcg cgtgctcgtt agagtactgg ggcctcccac cacggatgat cacctcgccg
+     4261 atacatttgg ccttatgtct caataagacc tcatggtcta tcctacacca tagatttgga
+     4321 aagtctagtt gctgcctagc aggctgatag caagcgtcgt acgaggatcg aggaagggca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_3/provided_parts_records/part_K.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,108 @@
+LOCUS       part_K                  3634 bp    DNA     circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_K
+VERSION     part_K
+KEYWORDS    "creator:SynthSys Center" "marker:KanR, BlpR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    1268..1284
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(join(3199..3634,1..380))
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2374..2377
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    2395..2419
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     promoter        1382..1560
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2370..2373
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2389..2393
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    1239..1261
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     rep_origin      complement(2510..3098)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      2117..2369
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             1562..2112
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     rep_origin      671..1106
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+ORIGIN
+        1 accagacagc ttccctgctg cttagagtgc catggggaat tgatctgtgt tcaatgactt
+       61 taccataagc gcgcatcgtc attgcatcac gtgctttatc tctcgtagct agtagggaac
+      121 aagagtttgc gaccactggt ggaatttcta gccgctatgt gaaaagtcac tagtagtatt
+      181 aatagtcggc acatcgcgta cgcagtgctg agattcccct cactgttact tgagctagtc
+      241 gcgccttgac agaccgcctt tcgaaggtgg cagagtgcct aatatattgc cacgttgagc
+      301 gtactccttc ccggagtttc atcttaccgc cgggcgcgcg aagctacgtt tttcgaattt
+      361 actaacgcac gctgacggtg gaagggcgat tggactggtt agattcaggt atgccttaag
+      421 cgtactttac aaccagaggc tttatttgat tgtctaatct tcgtcaaaga acgaatacca
+      481 gcgcttgagg ggtgactaga ctaataggag acaccgtctg tatcactcgt cggctatggc
+      541 cgtactgtga acgcgacggg ccctaccagg ccacagattc ctatgtacgt tgcaagggtg
+      601 ggctttgacc gttgcaacgg cgcactaggt ggcattcttc tctgctgcca atgatccgcc
+      661 tcgccgagct aggggcgaag caggttatga cgcagcggaa cggtagtact atctaatatc
+      721 aactaaaatt gtttctcaaa ggttcaaact agtattcttt attagaaacg atgatggcat
+      781 ccggaacagg gttatggccc aggtgctgga tgaagccttg cctcgaggga cttagtcgcg
+      841 tcgcccctct accaaggcgc taacggctag cgagatggtt gaggcgggag ccccgccact
+      901 ttctagttga attcagagct acgtatcctg atgctaatcc ctcgaagaac tttccgatgc
+      961 agctactatc tctttcgtaa agttagaata ggaacccggt aacggtggaa cgtcccgtca
+     1021 taggaggttg tctcctacac tatctaagta cgtcagaaga tcgatttcct cagccgctga
+     1081 ccccgtccgg catgaccagc gccgaacgta taggccgtat tgctgccgga acgactgctt
+     1141 caaaggtaac catagccgtg gtacagtgac aacccactta gctattaaat catgcgcact
+     1201 ctagacctct tgcacatacg gagcaactat gtatctaatt ggcacgagac atagaggagg
+     1261 gccaatcaca gtagtttact ggtcgaattc cacctgcata tggagagaca ctccttcatc
+     1321 aacagcagag gttacatacg tttaacctga ccgatggttg cccatcgaaa gcaaggaccc
+     1381 acgggtaggc agctgttgtt tgatatgctt ttgtccccgg aaggcgccga taaaattata
+     1441 cgccgtcccc cgcgtccgtt acgagcttcg tgatgttgcg ggctgaagtt ccctacgagt
+     1501 caataggcca actcgaatgg ctaaatggtt gcaacccaca ggctcaactt tgaaggtaat
+     1561 acgccaaaat ccaatatgct ctttcgggta gcgcataaaa ccttctgggg gccactgcag
+     1621 acagtcatgg aggactacgt gcaacactac gctctagagt gatgatgtgg cagtcaaccg
+     1681 agggctgtta agagaagtct gtgcacgaaa atcaatgagt cggtgtaatc ttcaccttcc
+     1741 tacaaaccaa ggcttgaggg cctcaatttc gagcaccact tcttgaccaa gccgttcgcc
+     1801 ggtataggag ttacgaattc gggtcgtctg ccgtctttga accatagata agtacctccc
+     1861 gagtcgggag aacacgaatc gcatcagaac tcatcgaagg gtgttacttt gcccatcggc
+     1921 atccccgaag attaattgca ttcgaaattt taacttcgag aatcatccgt gctaaccaac
+     1981 gtggacgagc tatgaacgtt tacgtgttca gtatctagga attgacacgt ctccgatagc
+     2041 gggagtcacg gcatgagtta cggcttttgt gaccagcgtc tgtgtaattt tattgacagt
+     2101 ttcatatata gtgtctcgtc ttgcctttga gattcacagg ctgtaagagg gatgccgtcg
+     2161 tgtatatgcc tgcagttaga gcttccttgt caggacgagc aactcactcc ttctggtgat
+     2221 gctttgctag catgtagctt cgggtacttg cggaaaagga cagcctacag tgtctgcggc
+     2281 ggtacgtcac taatatgaca tacgctgtgg acatcgtgaa gcggcgaatc gctccagatt
+     2341 gaggtttaca gagtactcca tagtcacaca actcagaata tgcaggtgct gcagtgaccg
+     2401 aatcctctca ggtcgcgctg gcggcccgtt tgagagtgct gaaagcgaag tttatccgca
+     2461 ccgtcatcca gtgcacctcc cccagagaat gattacttgt gaatgcggtt aacctgaggg
+     2521 ccgacgccgc gattaaattt ttaacgtgat gcacaagctg ggggcactct cccctggggt
+     2581 caggttataa ttttaaaccc actacggacc tggactgcaa gatgcttagt ccacgcgtct
+     2641 catagaccgt cggtctatag ccatgttcaa cgccgccagg ctgggcgcat aactgtatgt
+     2701 gactttgtcc acatccaagg cgacgatggc ggcagttggc cggagggctg gctgtcaagg
+     2761 ggccacgcgg atgaagggag ctcatacgca actatggagc gcggtatata gtataggatc
+     2821 cgccgggaca cgcgggaatc aagggacaaa ggagcagtca gcgtgaaatc tttacgggtg
+     2881 aagcgcgctc gtaccaccta gtcccgccta aggcccttgt gtcgtgcaac atcgctgggg
+     2941 cgacggatga caatatgatc aaggcccgag agctttgaat gtaagaggcg tattataaag
+     3001 cctaggtccg catgttgata cggggagcag cccatgcgca gtaggaaggt ccgaccaccc
+     3061 ttttctgagg tctactccaa cctccttgcc gagtgctctc cgctatctcc acgcatagca
+     3121 tactccgctt ctaacatctt cttcaaagca tacacgctac ttagcagagc aaatcgacac
+     3181 gcccatggag tggtccgctc aaaccgcgca attaagtata agctaatgtg acggaccgga
+     3241 cctacgattt cccccaactc gtggggatca gttgactcgt ctcagcttat gagacataat
+     3301 tacggtcata gggtacgcct atgcccctca gagatctcta ggtcatatgc cctatcgggt
+     3361 gctcggtgac cattgtctca tacaaagtca tatttggcag ggcttctatg gacgagtatt
+     3421 atgtgcccaa aagggaacgt ctgagttggg attcgcttct aaccaatact ctaatggtac
+     3481 ctaatttaat gtggtcgctg cgcaccccgc cgggtacaac tgctgagttc ctgagatcgg
+     3541 tacggcaaac atcttttatc cagacgaggg ttctggccag aattgatgtt cagatacgag
+     3601 aaggcatgtc atgtcacaag gattttggag aatt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_3/provided_parts_records/part_L.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,79 @@
+LOCUS       part_L                  2267 bp    DNA     circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_L
+VERSION     part_L
+KEYWORDS    "creator:SynthSys Center" "marker:KanR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    join(2263..2267,1)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      2..59
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(1140..1955)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2206..2209
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2202..2205
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      2139..2182
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(254..842)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2248..2251
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2185..2190
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      1025..1119
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 gtccgatgcg agcaccacct atagataccc taatcagcat ggtcccggtg accattacca
+       61 ccgacggcct tgttttaaac gaaggcgctc actatacaag aaactaatgt ctcccacaag
+      121 gctcagaccc agccggtgct ttcagcgctc cccgttggcg ccccccgaag accatagaga
+      181 ggtgctctgt taacaactat aatgaaaggg attattgagg gagtcggagg tgaattctga
+      241 agccttaccc ctacggtcgt ggtcatcatc acggatcgcg ataagcggcc ggtctgttac
+      301 ggacgccact acgaggaggg tttcttggca atcaaggcta cgcattacaa ccatcggggt
+      361 cggtctggct gaacaatctt gatgttcaac ctttgttacc ggctccttgt gttattatcc
+      421 ggtttttttg atctatatgt ttataaggaa gcggtgcaga ccgtagagaa ataccggcta
+      481 aggcagtcgc tcaatgcaca ccagcatcgc cgagacatat aaagccataa acattaattg
+      541 gaatgctagt cacagcgtgt tgactggacg cttaaaagtt tctacaaaag gtatagtttt
+      601 aacatttctc tgagttagcg ctatcgggtc gactgacatc tagaattgac acgttactca
+      661 cctggatcct agtcacactc cgggaaccgc tcgcttagtg gcagtagcgg ggggcgtccc
+      721 taggatagct gcgcaaagcg tggtttatct aatcgtggct tgtgtggaca tgatgctgtt
+      781 caggcgcatc tgtggccgcc acagcattac caagctaatc agaaaccgcg gcatgtcccc
+      841 gcgatgcgag aggcatctgt tagagccaaa gagtggaggt ctgtaatatc gctagcggag
+      901 attttctaag gggcgtggga ctttatcccg atatggctga acgatccaac ggcaaatggt
+      961 tctgccattg aactttaacc atgaatagac tccaggcgag ggataatgga aataatagca
+     1021 ggaaatgaca atctactagg tgcgcactat caagattgta tgtttgcgta tcgtagttct
+     1081 aatggtcttg tgtcccgtat tgggtcggac ggtgctgttc ctgatcgtag caatgcccgg
+     1141 ttagaatcac gcatcggagc gatcatttcg ggcgatacgc gttcgttctg tccactcttg
+     1201 tgggagtccg acgtatgcct gctcggtatt gttttattca ggcgacagta cctcccattc
+     1261 aaatatacag ggttatacta cacaccacga gtaataaaga cttgtgttgt gccaattcct
+     1321 cgtgggactg ccacgctcgt gagcttcgcg gttacatacc cctatgtccc caactgttgg
+     1381 tggcaaatcc ctaatctaat ctattgtatc acagtcggtc aacgactgaa attggggcaa
+     1441 caccaacagt gctcttacga tattcgtctg tgtctaacaa tccaacaaaa agctgttatt
+     1501 atgatggagg atcttggatt gcgtcagtac tacggtgttg tacgagaatt gcatgatgat
+     1561 tcctcgatgt cgagtccttg caagatcgtg atctatagcc aagctgctgc tgtagatcaa
+     1621 cctcaccggg gcgggggtcc cattactatg ggcggcatta gagtaccata gatgaacgcg
+     1681 agcagagaca tgtcaatgta tcccagtcct gcagtactac gtcagtctct gctcctgggg
+     1741 ccaatgcacg cctgtagaat agggccgtgt tcccatgaga aatttgaggg acttacgatt
+     1801 agatggcctt ggcaggggac tccgcgtacg tgtggggatg aaccggcacc ggccttggcc
+     1861 ctgagtaaat gtaagcgata tcaacttcgc tattcatgat cagtggtatt cgtgtaggca
+     1921 ccgaaagtcc cttggcgaaa gtagagacat acgatacgga ccgcaagcga gcagaatttc
+     1981 agcacatgac agttattagc ttttttctaa tggtgctccc attatgattg tcaagtcccg
+     2041 actgctagct gtaggatgaa acacatccac acacgtgtta ccatactgat tttgacacta
+     2101 cttcctaacc gggccgaatg gtatctgctg cgatgcttag ttacgtaaca gccgaatgtc
+     2161 acgccactgc atattgtggt tctggaattc cacctgcata tgtcacgcta gagaccgtat
+     2221 gaggtgggcg gatagtggtg acttcaaacc catatgcagg tgctgca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,350 @@
+LOCUS       construct_4             8074 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_4
+VERSION     construct_4
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CAGA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     homology        5..8
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9..1093
+                     /source="part_G"
+                     /indicates_part=True
+                     /note="From part_G"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        1094..1097
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    1098..2746
+                     /source="part_H"
+                     /indicates_part=True
+                     /note="From part_H"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        2747..2750
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    2751..3085
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    2751..3085
+                     /source="part_I"
+                     /indicates_part=True
+                     /note="From part_I"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3086..3089
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3090..3498
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(3387..3407)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    3090..3498
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3499..3502
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3420^3421
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    6918^6919
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    5..3502
+                     /source="construct_2"
+                     /indicates_part=True
+                     /note="From construct_2"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3503..3506
+                     /label="GTCA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3507..3510
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    3507..3548
+                     /source="part_L"
+                     /indicates_part=True
+                     /note="From part_L"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3549..3552
+                     /label="ACCC"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     CDS             complement(3746..4537)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     CDS             complement(3746..4651)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3617..3645
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      4962..4967
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3722..3745
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      4940..4945
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      4785..4790
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        4821..5373
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3560..3670
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        complement(4824..4931)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    5460..5468
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    complement(3672..3712)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    4735..4758
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      4806..4811
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            complement(3746..4651)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      4785..5373
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3584..3607
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3553..3558
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    6763..6786
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    6942..6972
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             5743..6762
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     gene            5743..6762
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    6985..7002
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    6895..6919
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    6946..6970
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    6787..6834
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    6990..6995
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      6985..6987
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3553..7002
+                     /source="part_J"
+                     /indicates_part=True
+                     /note="From part_J"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        7003..7006
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     promoter        7083..7261
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    8071..8074
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     terminator      7818..8070
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             7263..7813
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    7007..8074
+                     /source="part_K"
+                     /indicates_part=True
+                     /note="From part_K"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cagaggagga acttctatgg gacgaaagat gcgcagctcg acaaatctca aattggaaac
+       61 cgtctaaggt ctttgagccc acgctaggcc accgaatagt tgcgagctcg tgggcaattg
+      121 ctggctagcg gtttgtatcg tatacgtaac aagagattgc gccggattca ttcgtgtggg
+      181 gtgctttcac atcggaatac tcaagagtgg gggtttgcgc tttaatatga cggcctcatg
+      241 caccccaaaa ataagagcgc caatttcatc gaccacattc cggacaattc tgacttccct
+      301 gtcggatcga ccctcgctca caactcctag aactccaaga cggtaggacg tcagccgaaa
+      361 aggaggagtg acgacgggcc ctcctagctg aagcaatggg gggcgtcgac cctagcctgg
+      421 tgtgggactt cggagggtcg ggcgtgtggc cattcctgca cgaggggccc ttgcagtatc
+      481 gaactttgac gagaaagtgg ggggcgacct ataaacatag cggagttcaa tactcctgca
+      541 agtgcatgat gacgttcagc gttggcacat cgaacgcgtc gctacacttg ctcaccggaa
+      601 ggcaaaatag accggcagct ggcccgcacg gacgtctaga ctcctacgct gtcaaatgca
+      661 cgatgactat tagcatgcgg aattcgaggc ggccggtaca tcgagacacg ctggtcttaa
+      721 tacctgtgtt atgtcaaaac aagtgtctcg gcggctttgt actacgctgt gaatgcgcat
+      781 gatgttgcga gaagctgaac gttggtagca gtctacaaca gaaccgacga gctacggacg
+      841 ggttacagca ggatcccctc ttaaggcatt attcgacgac tccaggttct aaccgatcag
+      901 taattgcctc ggatggtcgt acgtgttaac cgagacagca aggcaccaca tagacaactg
+      961 catagggcgc ctacaggtcc acaatcaggg tggcccaaga tcctcaaaga cttgttgcag
+     1021 tctctgctta ttccgtttaa cacgttgtgt gagctctagc ttactacctc atcggtgtcg
+     1081 ggagtgattt aggaatggaa gacgcgttta gtcttcggcc cccagacggc accggcagag
+     1141 ccactgccaa tgccttttac gctgaactct tcgactttgg catgtgcgac tgactatacg
+     1201 ccgatggccc taccctgcag cggaaaggca cagggccaaa aacagtggaa gcgcaccgct
+     1261 agagctttac taaatccttt agggtgaacc ggtgttcagt caacagaaac atatgactag
+     1321 tccttaatgg cactactaaa ggcggcccat ctcttttgta ggtcacgtct catcgtttag
+     1381 caagcgtccg ccatccgagg agtatcctag tacgtgagag ggtgttttac ctcatcacat
+     1441 ggtttttggc tagatgtggc agatgccagc tgatacctta caacccgcta taacggtttc
+     1501 tggatcgacg atacaacctg cttcggcata tcataatggc ggcctcatag gacttccaat
+     1561 catggttatg cgagtttgat gtgttgaaga ttgtgagggg aaaccttttt ccgagtacgt
+     1621 tgaatctgcg actgatggtg aacaactcat cgagagggat gtgcgggcag tctccttgat
+     1681 gcgcgaaaag gagtcgcgac cgcgtgttcg tgacgcactt gatgctagac cgtaggggct
+     1741 cattatctcc tgaaacagta gctagctttt ggtgtccgag tcagcttagg cacagtaatt
+     1801 gaaaagaagg aaatgcgtga aaactaaacg tagacactcc ttgctaagaa ttccctggtc
+     1861 tttttcgagc atagactacc gtaggtaaaa ggcttgtcgt gtcacaaata gacttgatct
+     1921 gttcggcata tacacatcct actgcttcag taaccaagga cgattctccg gccattggac
+     1981 tgtgggacca cccgcgttca aacggaatcc tctacgaacg gttaagaaag gagcccactg
+     2041 cttgcggaga catatcgttg ctgagtggta caccggtgag tcaaaaagta ctgacactac
+     2101 tggtggactc tcgggtacga tgtgtggggt attggcatac tatggcgcta agcgtggaat
+     2161 agtgtttcca atagcccttt acctaagaag cattctgaca catgggttgg acttttacac
+     2221 agacctataa ctcgtatccg gcctggtgat gtatgtccgc ttatcactga atgcaggatt
+     2281 ccgccaattc cgctcgcggg ttctcggaca acgggccatg gagatggatc aatgagccat
+     2341 gttgattacc atttcactac acacggttag tcaattccgg agatcataat tcgacaattg
+     2401 aatatgcgtg atacgctttc tgttaccagg atcgttgcta attagtttcc aatgtcacag
+     2461 tgttgggcgg cgaggtatca cggcgctctg ggtagaatgg cggtgcctga ctggacctca
+     2521 taactggtaa catacctatg accaaaggag gtcagacacc gatgagtcgg tgacatgggc
+     2581 ggtcacagcg tgccctgcat agtaatacag ctcgtttcta gacatttgtc ctaattcgcc
+     2641 acacaagtac gagagcgggg gtaacccatc accatcgtgc ccgtaggtac ctaatcttca
+     2701 tcgagcgcta ttgttaaagt ggactcaggg atcggcatct cgtgtagctt ttattatccg
+     2761 gcatgcatgc ggcgttgcat cgcttcatcg tcatcgacat atcgttagcg ggacttatca
+     2821 gggtcccatc acggctgtga cagctgttca taagtgtaat agcagtcacc ccaccaaatg
+     2881 caagactgtt cccaaactaa gtgctaggga ggttggctac ctatcggcgt ggcagttgac
+     2941 cgggtttttc ttagtacctg ccttccaatc tccgataaaa gcaagatgac ttcctgcttg
+     3001 cgctaaagtc tgaattcgct aagggggcag attcattacc agagactgcc aaagtcaacc
+     3061 gccgaacgat actggaatat atggaggtaa gctcccataa gagcaccact tcgtgtacct
+     3121 tgctaactcc cttcatcccc acccgcgaaa acttaagacg tcacccctgt tattatcccg
+     3181 tgcactccta aagtgcgatg ggcaagaacg caaacaattg tctgagattt atatgggcgg
+     3241 cggacatagt cagagagcct tatataatct cccacgtctt gccagtccga gttatgagaa
+     3301 acccgggacc gatgacgcta ttacggtcgc ccagcgaggt tcaacagagc gaggcatagg
+     3361 agtcattacg cgtgttagct tcaacatgcg tggaagtgaa acggatctat aaaacggcgt
+     3421 ggagtcatca gcttgagcag atctaactta ctcgccacgc gcgcaaatcg tctttcgctg
+     3481 tccacgttat acgtaactcg ctgtcacgct agagaccgta tgaggtgggc ggatagtggt
+     3541 gacttcaaac ccctaagatg ccagcgcaat acggcatcgc agggcaagca acaccgcaca
+     3601 gcatgtccct aaagggaaga tttaatacgg actcagtcaa gttgtgagaa acgacaatac
+     3661 attgagtgga atgccctttg gtacgttggc gatagatcta acgagaaact tcaacgagat
+     3721 ctagagtatc ggactgagat gcatcatggc tagggattgc tgaatggata tctttgccaa
+     3781 aatgagctcg actaggaatc tcagactgcc agctacgaaa agctggggga tattcatttc
+     3841 cgctcttgta aggcgcacga tgaccctgtg gagcaaaatt cgacgcggca acgtagtcaa
+     3901 agtacggcct atctgggacg gagatgggat tgtttctgta ttcatgccgg cctcttgaga
+     3961 ttgtaaggat acccggccac agtctcgtaa gaaacccgat atcgctcaaa cgaattgaca
+     4021 tcagttaggg cttgcgctct agcaaccacg cgtcgggtgt tcgactgaat ttaagatcca
+     4081 gcgcaaacca ttccttaaag gcggtccagg tgaaaccggc tctgataatg tacagtggat
+     4141 tgtccagttc gcttcaaagt gcaatcaggc aaggtactgg caagtcaccg cttggggccg
+     4201 gtttcagtgg agctttatcg acaaaaggcc gggccctttg gcctagagct cacttttggt
+     4261 gtcgttcacg agtgagaact ttggctcgca gcttgaatgc ttgtcacgtt tagggttata
+     4321 caacgtttct ataaactacc tatgacaaat cccgatcttc tgaaactcca taaggactaa
+     4381 gagagtccgc gacagtttca cttggtcggt gctattgact atgtcacgca tgcccggtaa
+     4441 agcttttaag caaagcctga tatatcacgg gaggttactc aaagcatttt ctaaagggac
+     4501 agcggactca cattagccta atataaaccc gatcaggcca tgcacctcga ttcaccggaa
+     4561 ggtagtacca tgcaccggat atttgggaca acagtgaata gtacatcgta aaatgtcaag
+     4621 gcctagctat ttttcactgg tgtcttatct ctattacaac acacacggat gtcccgagcc
+     4681 tacactttca aatatactca aggttcgctg ttaagggtaa tacaagagtg ctcggtttag
+     4741 tatccatatg ttggtacaag tgactgtgct agccgtaaat taattcggct tccattccag
+     4801 cttgggtgtt tagggtctag acggttgaaa ccagaaagag tacagacaaa accgtagctc
+     4861 tcccaaggtt gatcctccag acacctaccc acactagtag cgcaggccta gaggagacgt
+     4921 taggagcgga attgtacatt cagtatcgca ttaagcacaa agacagacaa acctagaagc
+     4981 cacttatccc ctcgtaggag tacaacggca gcgctttcgg gaggagttgc ctaactacgc
+     5041 tctggacagc aagtcccaga atgaagaaaa tgacttggcg agaacccacc actacatgca
+     5101 gggtcttggg accggtcagc acagcttatc catgcggcaa ttccggacga ccgcgaatga
+     5161 ggatcacgac actgccgatg ttgcaccatt gaccttctcc tatgcaacaa gggcttaaga
+     5221 tggtagatgg taatagagta gcctgcgacc ttatgcggta atacacaaaa accggtaaac
+     5281 agtgcgttga tgctgtgtgc tggcgcattt gtgtaccttg ctgggctcgt ataaaattct
+     5341 gtcagcagga cgttcacctc ccttctgcta gtcgctaggc acaaacggaa aaggtctaat
+     5401 cgcgcgcgtg ctcgttagag tactggggcc tcccaccacg gatgatcacc tcgccgatac
+     5461 atttggcctt atgtctcaat aagacctcat ggtctatcct acaccataga tttggaaagt
+     5521 ctagttgctg cctagcaggc tgatagcaag cgtcgtacga ggatcgagga agggcactca
+     5581 tgggagtgta gcgctagcca tagttgacct gtcagccggt caaggttggt ccgaacctag
+     5641 ccagttagac gaccagctcc cccactattg cacagtgcct gtataagcac gtcagtgtct
+     5701 ggcaccactg tgcgcggtgt ggtcctcggg acgatcttcc tacggctacc catgcgctag
+     5761 tgattacaga cgatcgtttt ttctttttct gtggtgcaaa tacacaagat acgtcaagag
+     5821 tcctagcagc ctcatcttgc caattgcagg ggtaccgatt cacccatggt atcagtcacg
+     5881 caaaaaaaga cgacatcgga gttgctggcg actggcaaaa gaaaacatct atctgccgtg
+     5941 gcgttcgtct agcgcagcga gccgactgac tactccgtta tctcaaattt agtttcgtaa
+     6001 gatcttcacg ggagccggcc agctgaagaa tctataggtc taccgctaga ggaagcccgt
+     6061 ttacaaccga cgtactagtc cgacagcaat cgtcagcatg ccaatttatt gtatcaggtt
+     6121 gagaatgcac cactacggaa tcgacgtgcc actggccgca cgatactagt gcgctggtaa
+     6181 acaggccagg agctctaaat ctggagtggt gtgaatttaa ccgcggaacg attgttgcac
+     6241 gcggtccctg tgactctgtt gggagcactg tccccggctc cggataagtg atgtgaacga
+     6301 aaaggtgggc tgaccagaga tagggttaag gacgggcgat cgtagtggac gattactgct
+     6361 gatcttccga gcactctgag tcgcgcggcg tatcgggagt taccccgctc gctacacatc
+     6421 tgaattccgc cggatactat gggtgcagag tggatcacct tttcgtgacc cgtatattcg
+     6481 tcgttctcat cactgtcctc cgcgatttat ttcaatcgtc ggtttcgcca gatgcattcc
+     6541 tggggaagtc atcgcgacag tgcgctgcgc gcacagctct tcttggttta ttcgagattg
+     6601 tggtttatca acatggtcta tctacggact gattagaata ttcccacgtt aagccgacgt
+     6661 gcattggtac tggctcctta attaagcgca gagggtaggc gccttttctt gtgcaaacca
+     6721 ttatatgagg aactagcaaa cactatggcg caatatgtcc acgtgactcg agcattctgt
+     6781 gttgcggtag cgatttcact agtcacaaac ggatagattc tacggcgcac ccggtgcatc
+     6841 gttgtatgtt cagcaatttg gtcatatccc gctcctctat tcaatctctt ttttcgtcag
+     6901 ggggggcaca tacttggagc agctgcgcct aacattacaa taagcagtcg gagctcagta
+     6961 caaaaccctt atcttagcgg tccgttctgg aattcggtct caggagagac actccttcat
+     7021 caacagcaga ggttacatac gtttaacctg accgatggtt gcccatcgaa agcaaggacc
+     7081 cacgggtagg cagctgttgt ttgatatgct tttgtccccg gaaggcgccg ataaaattat
+     7141 acgccgtccc ccgcgtccgt tacgagcttc gtgatgttgc gggctgaagt tccctacgag
+     7201 tcaataggcc aactcgaatg gctaaatggt tgcaacccac aggctcaact ttgaaggtaa
+     7261 tacgccaaaa tccaatatgc tctttcgggt agcgcataaa accttctggg ggccactgca
+     7321 gacagtcatg gaggactacg tgcaacacta cgctctagag tgatgatgtg gcagtcaacc
+     7381 gagggctgtt aagagaagtc tgtgcacgaa aatcaatgag tcggtgtaat cttcaccttc
+     7441 ctacaaacca aggcttgagg gcctcaattt cgagcaccac ttcttgacca agccgttcgc
+     7501 cggtatagga gttacgaatt cgggtcgtct gccgtctttg aaccatagat aagtacctcc
+     7561 cgagtcggga gaacacgaat cgcatcagaa ctcatcgaag ggtgttactt tgcccatcgg
+     7621 catccccgaa gattaattgc attcgaaatt ttaacttcga gaatcatccg tgctaaccaa
+     7681 cgtggacgag ctatgaacgt ttacgtgttc agtatctagg aattgacacg tctccgatag
+     7741 cgggagtcac ggcatgagtt acggcttttg tgaccagcgt ctgtgtaatt ttattgacag
+     7801 tttcatatat agtgtctcgt cttgcctttg agattcacag gctgtaagag ggatgccgtc
+     7861 gtgtatatgc ctgcagttag agcttccttg tcaggacgag caactcactc cttctggtga
+     7921 tgctttgcta gcatgtagct tcgggtactt gcggaaaagg acagcctaca gtgtctgcgg
+     7981 cggtacgtca ctaatatgac atacgctgtg gacatcgtga agcggcgaat cgctccagat
+     8041 tgaggtttac agagtactcc atagtcacac aact
+//
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,2 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,depends_on,enzymes,used_in,parts
+construct_4,construct_4,2,8074,4,construct_2,AarI,,construct_2 & part_L & part_J & part_K
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4_type2s_mix_connections_graph.pdf has changed
Binary file test-data/init/2-step-golden_gate_plan_simulation/construct_4/construct_4_type2s_mix_parts_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_4/provided_parts_records/construct_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,279 @@
+LOCUS       construct_2             6910 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_2
+VERSION     construct_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1..4
+                     /label="CGCT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    9..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(223..1038)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    complement(139..179)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    5..8
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    20..25
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(223..1038)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    189..212
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    51..74
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    84..112
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    27..137
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3347..3377
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1367..1372
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      1190..1195
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        1226..1778
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3396
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3192..3239
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_RNA        complement(1229..1336)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1865..1873
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3413..3416
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      1190..1778
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3300..3324
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1345..1350
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      1899..2147
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    3397..3401
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3395..3412
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      1211..1216
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3168..3191
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2148..3167
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3351..3375
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1140..1163
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    5..3416
+                     /source="part_A"
+                     /indicates_part=True
+                     /note="From part_A"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3417..3420
+                     /label="GGAG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3421..4505
+                     /source="part_G"
+                     /indicates_part=True
+                     /note="From part_G"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        4506..4509
+                     /label="AATG"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    4510..6158
+                     /source="part_H"
+                     /indicates_part=True
+                     /note="From part_H"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6159..6162
+                     /label="GCTT"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6163..6497
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    6163..6497
+                     /source="part_I"
+                     /indicates_part=True
+                     /note="From part_I"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6498..6501
+                     /label="GGTA"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    6502..6910
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(6799..6819)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    6502..6910
+                     /source="part_F"
+                     /indicates_part=True
+                     /note="From part_F"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cgctgtcaat atgcaggtgc tgcaggaatt tgtctccaat cgacttgaga tatcgcaagc
+       61 atgaaattat attagacacg ccagagaact tgggaagcag cactggtagt gatagcaacc
+      121 cgagtacagt aacgagtgag cttctgatca tgagctctcc tacggcgtca atgcgacgaa
+      181 tgcccagcat gcactctcgc tatccatgcc tgctagggtg gcattatgct caggaacagt
+      241 tgtagcttgg atatcgtcta gatgaaatac ctggacactg gttagcgtcg tcaagcacca
+      301 aggacattca cacgctcgcg gtctttcgtc tccctaagcg ttcggcagtc gggcgtgaag
+      361 aggttgtaat cagacggaac aaagcctgaa aaaattccag cgacgtagta ttcatgatcc
+      421 tgtaccatct gtagccgccg cggcgcacga ttgaatgtag gctactaacc ccatccgtgt
+      481 tagcgatgtg agtttctacc gcaacgaatg ctcaagcgaa ccttcttctt tcgtccgcaa
+      541 cccacaagcc gtggttatga cagctaaatt gtcccagaca tccctttatt acacaagagc
+      601 tccagcggaa tacctagtca cagcggtaat gacacaaagc tcttagttag tccagggact
+      661 acttctgtct acagcacatc acactcatta tcagcatcag tgtagagacg gagaacatgg
+      721 gctatcctat accaagatcc gccatctaaa catttgaagt ttcccgtctt ctataactta
+      781 gcactcgacg ctattctgct gagtgcgctt agtctgtagc gacttgcgaa atccataaac
+      841 tgagaattga aagagagtgc ataaccgaaa cctttgtggc atatttccgt tgaaacgtac
+      901 cagaacagcc gtttagtgcg gaacatacag tatcctgata aagcactcaa cccaacagac
+      961 accctatgcc gatagcggga tgctaacaag tatagtcatg atgatttctc ggacagcggg
+     1021 gtttggtaca gctgcaatcc gtgatttaaa ttcggacctc tgcacacacc gacggttacc
+     1081 catatcctct acggctgtag gaagttttac cttggatgtc attctgattt cggcgtatct
+     1141 cacaggatgg tccaacgaaa ctaggcttta gacgagggat gaatgaccga cccccactcg
+     1201 tggcactaac ggacagactt ccctgacggt tattcgacca ttaaagtcag acatgcgggg
+     1261 gtgaataaat tagccaaatt gtgtcgaaga aaagacgtgc ggctggcaca taaggcagtc
+     1321 ttgatcctag tcttgcaggg atgcacgtaa gtcgcctcaa ttaactgcag ccgagctcca
+     1381 ggttaccaaa gaccctagta tgccagggcc taacggttgg agtatattat gggtacgcaa
+     1441 tagtgcggaa gttaacctgg gcaacatcca ggtgagaggt tggacggaag cgacagtaag
+     1501 tggccataga ctgccgagtc gtgttaatga atcgctatac gcccatggag ttgtggggtc
+     1561 gttttatccg agtaggggcc cgctgactac ttcgtccaga caatatgccg tcttcaatag
+     1621 tctacctgag agtcatgccg gcatttccga cgctgagtga aacccgcgta gccaggcgaa
+     1681 atttgcatct tgaaatacca ctgcagatca gccagtaagg cccatataag ggcgctggtg
+     1741 ttctggcgac agataaagtg ttatctaatg taacccgcgg acttttagag gatacttgaa
+     1801 tgcgggcata tcgtcccacc agcgtcacgt ggtcgggcta gcggcagaca aactctgccg
+     1861 atgtttttct ttgccgcgat agcgggctag tcaattcact atccggcgat gaagcataga
+     1921 ttgttatcgc gcttatgcgg aggataatca agtcttggca gaacctgctc gctcatgcac
+     1981 tggtgaggcg tggttatcct aacaaccgcc taggacgaag aatgggctcg gtagggacag
+     2041 ttcgtgcgtt tagcttcgtc ccatcttaat gctgtctgga gggaggctac atgcgaacag
+     2101 aagccgtggg cgaaagttgt tgatccgggt ctaacacgga taagggccat ggtgaacgca
+     2161 tcatgcgata cttcttggta gttcttctaa catgaccgtg ccatagccct taccctttga
+     2221 agaagttaac ctatctgccg tctcctgcac gaatagcgac tggactcggg tattttggat
+     2281 acctcacgaa agcacttcga tcggccgaag catggatatt tcgccggacg ggcccgaata
+     2341 gagagccttg tatgtcggtt agtacaacgc agtcctggag acatctacgc ggatgggcct
+     2401 aggggctgga cttaacattg ggtaacgtac ctggtccaaa gtgaatgcaa agcactttta
+     2461 caaagcgcgg gtccccgtgg gtgtttaggg tagaagattg gcggatgcta cgaacgatcc
+     2521 cgctttgaaa ctatcattac atcgtgtaaa agagacactt aacaaaggcc aataaactgc
+     2581 cagtaagaat cgctcagtgc ggtgctgggg acgctaagta ggggcaacag ccagtgaagg
+     2641 acgtgaccga cctttctcag ataagatatg ctggcgtcta tctaataagc atagtgaaaa
+     2701 accaaccatt tcacttacac gaagtacatt tgcattgcta gtaaagacgc ctaaacagaa
+     2761 gtgcccttgc atgctgtatg tctatagtcc ttagggaagc atcagccctt ctacttattc
+     2821 gaggtctgag aaaccctgga caagctccga attattcaat gtgcctgtct ccgaggttag
+     2881 atagcgctat gctcttaaga gttgcacaga atgaccatcc tggaatgtcc ctggaggggt
+     2941 ctaggtatgc tgatcgaagg gtgctctaag gacttgacgt gcgtccgagg agggtgctgc
+     3001 ctccttcgcc tttagatcca acgcggatca catgcgcgtg agctaatagg atcaccttct
+     3061 gctccgattt ttaccctcct gggtcacttc cgaatgaggt agcgggcgaa atataatgtc
+     3121 tccactcgta ggtgttccct gtatgtgaag ctctatagtg gacaaaggtt tgatgaacta
+     3181 gcccccgtat acgctctcac cgacggacgc gggggtctgt tatttgaagc atcatacatg
+     3241 cgaaggtgcc ttctcagcaa cgaaaggtag tgggagtgta caagttcaat gcgccgccat
+     3301 aggtctgagt atacaagggg atgcccccat ccacaacggg attggctacc cggagagctg
+     3361 gctccgctcc aacaaataat tatattaacc tattggaatt ccacctgcat atcagaggag
+     3421 gaacttctat gggacgaaag atgcgcagct cgacaaatct caaattggaa accgtctaag
+     3481 gtctttgagc ccacgctagg ccaccgaata gttgcgagct cgtgggcaat tgctggctag
+     3541 cggtttgtat cgtatacgta acaagagatt gcgccggatt cattcgtgtg gggtgctttc
+     3601 acatcggaat actcaagagt gggggtttgc gctttaatat gacggcctca tgcaccccaa
+     3661 aaataagagc gccaatttca tcgaccacat tccggacaat tctgacttcc ctgtcggatc
+     3721 gaccctcgct cacaactcct agaactccaa gacggtagga cgtcagccga aaaggaggag
+     3781 tgacgacggg ccctcctagc tgaagcaatg gggggcgtcg accctagcct ggtgtgggac
+     3841 ttcggagggt cgggcgtgtg gccattcctg cacgaggggc ccttgcagta tcgaactttg
+     3901 acgagaaagt ggggggcgac ctataaacat agcggagttc aatactcctg caagtgcatg
+     3961 atgacgttca gcgttggcac atcgaacgcg tcgctacact tgctcaccgg aaggcaaaat
+     4021 agaccggcag ctggcccgca cggacgtcta gactcctacg ctgtcaaatg cacgatgact
+     4081 attagcatgc ggaattcgag gcggccggta catcgagaca cgctggtctt aatacctgtg
+     4141 ttatgtcaaa acaagtgtct cggcggcttt gtactacgct gtgaatgcgc atgatgttgc
+     4201 gagaagctga acgttggtag cagtctacaa cagaaccgac gagctacgga cgggttacag
+     4261 caggatcccc tcttaaggca ttattcgacg actccaggtt ctaaccgatc agtaattgcc
+     4321 tcggatggtc gtacgtgtta accgagacag caaggcacca catagacaac tgcatagggc
+     4381 gcctacaggt ccacaatcag ggtggcccaa gatcctcaaa gacttgttgc agtctctgct
+     4441 tattccgttt aacacgttgt gtgagctcta gcttactacc tcatcggtgt cgggagtgat
+     4501 ttaggaatgg aagacgcgtt tagtcttcgg cccccagacg gcaccggcag agccactgcc
+     4561 aatgcctttt acgctgaact cttcgacttt ggcatgtgcg actgactata cgccgatggc
+     4621 cctaccctgc agcggaaagg cacagggcca aaaacagtgg aagcgcaccg ctagagcttt
+     4681 actaaatcct ttagggtgaa ccggtgttca gtcaacagaa acatatgact agtccttaat
+     4741 ggcactacta aaggcggccc atctcttttg taggtcacgt ctcatcgttt agcaagcgtc
+     4801 cgccatccga ggagtatcct agtacgtgag agggtgtttt acctcatcac atggtttttg
+     4861 gctagatgtg gcagatgcca gctgatacct tacaacccgc tataacggtt tctggatcga
+     4921 cgatacaacc tgcttcggca tatcataatg gcggcctcat aggacttcca atcatggtta
+     4981 tgcgagtttg atgtgttgaa gattgtgagg ggaaaccttt ttccgagtac gttgaatctg
+     5041 cgactgatgg tgaacaactc atcgagaggg atgtgcgggc agtctccttg atgcgcgaaa
+     5101 aggagtcgcg accgcgtgtt cgtgacgcac ttgatgctag accgtagggg ctcattatct
+     5161 cctgaaacag tagctagctt ttggtgtccg agtcagctta ggcacagtaa ttgaaaagaa
+     5221 ggaaatgcgt gaaaactaaa cgtagacact ccttgctaag aattccctgg tctttttcga
+     5281 gcatagacta ccgtaggtaa aaggcttgtc gtgtcacaaa tagacttgat ctgttcggca
+     5341 tatacacatc ctactgcttc agtaaccaag gacgattctc cggccattgg actgtgggac
+     5401 cacccgcgtt caaacggaat cctctacgaa cggttaagaa aggagcccac tgcttgcgga
+     5461 gacatatcgt tgctgagtgg tacaccggtg agtcaaaaag tactgacact actggtggac
+     5521 tctcgggtac gatgtgtggg gtattggcat actatggcgc taagcgtgga atagtgtttc
+     5581 caatagccct ttacctaaga agcattctga cacatgggtt ggacttttac acagacctat
+     5641 aactcgtatc cggcctggtg atgtatgtcc gcttatcact gaatgcagga ttccgccaat
+     5701 tccgctcgcg ggttctcgga caacgggcca tggagatgga tcaatgagcc atgttgatta
+     5761 ccatttcact acacacggtt agtcaattcc ggagatcata attcgacaat tgaatatgcg
+     5821 tgatacgctt tctgttacca ggatcgttgc taattagttt ccaatgtcac agtgttgggc
+     5881 ggcgaggtat cacggcgctc tgggtagaat ggcggtgcct gactggacct cataactggt
+     5941 aacataccta tgaccaaagg aggtcagaca ccgatgagtc ggtgacatgg gcggtcacag
+     6001 cgtgccctgc atagtaatac agctcgtttc tagacatttg tcctaattcg ccacacaagt
+     6061 acgagagcgg gggtaaccca tcaccatcgt gcccgtaggt acctaatctt catcgagcgc
+     6121 tattgttaaa gtggactcag ggatcggcat ctcgtgtagc ttttattatc cggcatgcat
+     6181 gcggcgttgc atcgcttcat cgtcatcgac atatcgttag cgggacttat cagggtccca
+     6241 tcacggctgt gacagctgtt cataagtgta atagcagtca ccccaccaaa tgcaagactg
+     6301 ttcccaaact aagtgctagg gaggttggct acctatcggc gtggcagttg accgggtttt
+     6361 tcttagtacc tgccttccaa tctccgataa aagcaagatg acttcctgct tgcgctaaag
+     6421 tctgaattcg ctaagggggc agattcatta ccagagactg ccaaagtcaa ccgccgaacg
+     6481 atactggaat atatggaggt aagctcccat aagagcacca cttcgtgtac cttgctaact
+     6541 cccttcatcc ccacccgcga aaacttaaga cgtcacccct gttattatcc cgtgcactcc
+     6601 taaagtgcga tgggcaagaa cgcaaacaat tgtctgagat ttatatgggc ggcggacata
+     6661 gtcagagagc cttatataat ctcccacgtc ttgccagtcc gagttatgag aaacccggga
+     6721 ccgatgacgc tattacggtc gcccagcgag gttcaacaga gcgaggcata ggagtcatta
+     6781 cgcgtgttag cttcaacatg cgtggaagtg aaacggatct ataaaacggc gtggagtcat
+     6841 cagcttgagc agatctaact tactcgccac gcgcgcaaat cgtctttcgc tgtccacgtt
+     6901 atacgtaact
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_4/provided_parts_records/part_J.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,196 @@
+LOCUS       part_J                  4380 bp    DNA     circular UNK 31-OCT-2019
+DEFINITION  .
+ACCESSION   part_J
+VERSION     part_J
+KEYWORDS    "Source" "Sequence" "Freezer" "Shelf" "Box" "Concentration" "Use"
+            "creator:SynthSys Center" "marker:SmR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     rep_origin      join(4298..4380,1..166)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     promoter        1442..1476
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    2345..2362
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(2550..3341)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    1187..1210
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1366..1396
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(2550..3455)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    2421..2449
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      3766..3771
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             167..1186
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    2526..2549
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            167..1186
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      3744..3749
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             1503..2222
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    1409..1426
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      3589..3594
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      2227..2298
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    1319..1343
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1370..1394
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_RNA        3625..4177
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      2314..2341
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2364..2474
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        complement(3628..3735)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    4264..4272
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     RBS             1485..1496
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2353..2356
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    complement(2476..2516)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3539..3562
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1427..1430
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     -10_signal      3610..3615
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1211..1258
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     gene            complement(2550..3455)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      3589..4177
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    1414..1419
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    2388..2411
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      1409..1411
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2357..2362
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+ORIGIN
+        1 ctcatgggag tgtagcgcta gccatagttg acctgtcagc cggtcaaggt tggtccgaac
+       61 ctagccagtt agacgaccag ctcccccact attgcacagt gcctgtataa gcacgtcagt
+      121 gtctggcacc actgtgcgcg gtgtggtcct cgggacgatc ttcctacggc tacccatgcg
+      181 ctagtgatta cagacgatcg ttttttcttt ttctgtggtg caaatacaca agatacgtca
+      241 agagtcctag cagcctcatc ttgccaattg caggggtacc gattcaccca tggtatcagt
+      301 cacgcaaaaa aagacgacat cggagttgct ggcgactggc aaaagaaaac atctatctgc
+      361 cgtggcgttc gtctagcgca gcgagccgac tgactactcc gttatctcaa atttagtttc
+      421 gtaagatctt cacgggagcc ggccagctga agaatctata ggtctaccgc tagaggaagc
+      481 ccgtttacaa ccgacgtact agtccgacag caatcgtcag catgccaatt tattgtatca
+      541 ggttgagaat gcaccactac ggaatcgacg tgccactggc cgcacgatac tagtgcgctg
+      601 gtaaacaggc caggagctct aaatctggag tggtgtgaat ttaaccgcgg aacgattgtt
+      661 gcacgcggtc cctgtgactc tgttgggagc actgtccccg gctccggata agtgatgtga
+      721 acgaaaaggt gggctgacca gagatagggt taaggacggg cgatcgtagt ggacgattac
+      781 tgctgatctt ccgagcactc tgagtcgcgc ggcgtatcgg gagttacccc gctcgctaca
+      841 catctgaatt ccgccggata ctatgggtgc agagtggatc accttttcgt gacccgtata
+      901 ttcgtcgttc tcatcactgt cctccgcgat ttatttcaat cgtcggtttc gccagatgca
+      961 ttcctgggga agtcatcgcg acagtgcgct gcgcgcacag ctcttcttgg tttattcgag
+     1021 attgtggttt atcaacatgg tctatctacg gactgattag aatattccca cgttaagccg
+     1081 acgtgcattg gtactggctc cttaattaag cgcagagggt aggcgccttt tcttgtgcaa
+     1141 accattatat gaggaactag caaacactat ggcgcaatat gtccacgtga ctcgagcatt
+     1201 ctgtgttgcg gtagcgattt cactagtcac aaacggatag attctacggc gcacccggtg
+     1261 catcgttgta tgttcagcaa tttggtcata tcccgctcct ctattcaatc tcttttttcg
+     1321 tcaggggggg cacatacttg gagcagctgc gcctaacatt acaataagca gtcggagctc
+     1381 agtacaaaac ccttatctta gcggtccgtt ctggaattcg gtctcaggag atatgcaggt
+     1441 gtttacggct aggcacttac gcgaaatttc agctcgcggc aaactgtgct tatgcgactt
+     1501 cagctagtcg tcatcgagtg ctgacgcgct tgttctacct taaggtgccc gctatcgcat
+     1561 tgtccagggt tcggctatga gggtcggaac cagatcgcac ctacatgatg tcacgatact
+     1621 attattcacg tcgttagaga acggacggtc cttcgtcctc acaggaaaat tattagaaat
+     1681 ggtcaaccgg gtccacaaac gggcaattgc cactttggta gtacggttgc acataagatg
+     1741 atatttacgc cttctgcgtt caggttacga tagtcgttga tggggctcgc tccgggtgaa
+     1801 gttgatccag taaaatgggc gtcgatactt ctcctgtgag ctaagcgtct aaattcattc
+     1861 ctagtctcgt gacgagaaca gaaaagacta aaccacgcgt gatggacctt ggtaagcgct
+     1921 tgtcggtcta acttgtctca tctcacacgg tatgttcttg tgagcgctga ccagcccgtg
+     1981 tccctgacgg ggaattcatt ctaacttacg gcttgggcgt cgtgatgttt cggaatccag
+     2041 gatattacac agtagatgta gcttgtggcc gaacgagtgt atttcctgcg tcggattacc
+     2101 tcatttcttg ttaatctgcc tacaattaag ccctttcagc agccttccct ctcgtttata
+     2161 tttcgacagt caccgtgaca gtgtgatcga gctgtgggaa aatcacaata tagacgttag
+     2221 ttgcttcgac agaaacggcg aatgtacgcg gttgtgatgg atgagacagg ccattcaatt
+     2281 ctattcagcg aagttcagat tggttgctac tgctaaagga tgcgcatttg tcctttctgc
+     2341 gcacctgcat atacccctaa gatgccagcg caatacggca tcgcagggca agcaacaccg
+     2401 cacagcatgt ccctaaaggg aagatttaat acggactcag tcaagttgtg agaaacgaca
+     2461 atacattgag tggaatgccc tttggtacgt tggcgataga tctaacgaga aacttcaacg
+     2521 agatctagag tatcggactg agatgcatca tggctaggga ttgctgaatg gatatctttg
+     2581 ccaaaatgag ctcgactagg aatctcagac tgccagctac gaaaagctgg gggatattca
+     2641 tttccgctct tgtaaggcgc acgatgaccc tgtggagcaa aattcgacgc ggcaacgtag
+     2701 tcaaagtacg gcctatctgg gacggagatg ggattgtttc tgtattcatg ccggcctctt
+     2761 gagattgtaa ggatacccgg ccacagtctc gtaagaaacc cgatatcgct caaacgaatt
+     2821 gacatcagtt agggcttgcg ctctagcaac cacgcgtcgg gtgttcgact gaatttaaga
+     2881 tccagcgcaa accattcctt aaaggcggtc caggtgaaac cggctctgat aatgtacagt
+     2941 ggattgtcca gttcgcttca aagtgcaatc aggcaaggta ctggcaagtc accgcttggg
+     3001 gccggtttca gtggagcttt atcgacaaaa ggccgggccc tttggcctag agctcacttt
+     3061 tggtgtcgtt cacgagtgag aactttggct cgcagcttga atgcttgtca cgtttagggt
+     3121 tatacaacgt ttctataaac tacctatgac aaatcccgat cttctgaaac tccataagga
+     3181 ctaagagagt ccgcgacagt ttcacttggt cggtgctatt gactatgtca cgcatgcccg
+     3241 gtaaagcttt taagcaaagc ctgatatatc acgggaggtt actcaaagca ttttctaaag
+     3301 ggacagcgga ctcacattag cctaatataa acccgatcag gccatgcacc tcgattcacc
+     3361 ggaaggtagt accatgcacc ggatatttgg gacaacagtg aatagtacat cgtaaaatgt
+     3421 caaggcctag ctatttttca ctggtgtctt atctctatta caacacacac ggatgtcccg
+     3481 agcctacact ttcaaatata ctcaaggttc gctgttaagg gtaatacaag agtgctcggt
+     3541 ttagtatcca tatgttggta caagtgactg tgctagccgt aaattaattc ggcttccatt
+     3601 ccagcttggg tgtttagggt ctagacggtt gaaaccagaa agagtacaga caaaaccgta
+     3661 gctctcccaa ggttgatcct ccagacacct acccacacta gtagcgcagg cctagaggag
+     3721 acgttaggag cggaattgta cattcagtat cgcattaagc acaaagacag acaaacctag
+     3781 aagccactta tcccctcgta ggagtacaac ggcagcgctt tcgggaggag ttgcctaact
+     3841 acgctctgga cagcaagtcc cagaatgaag aaaatgactt ggcgagaacc caccactaca
+     3901 tgcagggtct tgggaccggt cagcacagct tatccatgcg gcaattccgg acgaccgcga
+     3961 atgaggatca cgacactgcc gatgttgcac cattgacctt ctcctatgca acaagggctt
+     4021 aagatggtag atggtaatag agtagcctgc gaccttatgc ggtaatacac aaaaaccggt
+     4081 aaacagtgcg ttgatgctgt gtgctggcgc atttgtgtac cttgctgggc tcgtataaaa
+     4141 ttctgtcagc aggacgttca cctcccttct gctagtcgct aggcacaaac ggaaaaggtc
+     4201 taatcgcgcg cgtgctcgtt agagtactgg ggcctcccac cacggatgat cacctcgccg
+     4261 atacatttgg ccttatgtct caataagacc tcatggtcta tcctacacca tagatttgga
+     4321 aagtctagtt gctgcctagc aggctgatag caagcgtcgt acgaggatcg aggaagggca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_4/provided_parts_records/part_K.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,108 @@
+LOCUS       part_K                  3634 bp    DNA     circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_K
+VERSION     part_K
+KEYWORDS    "creator:SynthSys Center" "marker:KanR, BlpR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    1268..1284
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(join(3199..3634,1..380))
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2374..2377
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    2395..2419
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     promoter        1382..1560
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2370..2373
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2389..2393
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    1239..1261
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     rep_origin      complement(2510..3098)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      2117..2369
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             1562..2112
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     rep_origin      671..1106
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+ORIGIN
+        1 accagacagc ttccctgctg cttagagtgc catggggaat tgatctgtgt tcaatgactt
+       61 taccataagc gcgcatcgtc attgcatcac gtgctttatc tctcgtagct agtagggaac
+      121 aagagtttgc gaccactggt ggaatttcta gccgctatgt gaaaagtcac tagtagtatt
+      181 aatagtcggc acatcgcgta cgcagtgctg agattcccct cactgttact tgagctagtc
+      241 gcgccttgac agaccgcctt tcgaaggtgg cagagtgcct aatatattgc cacgttgagc
+      301 gtactccttc ccggagtttc atcttaccgc cgggcgcgcg aagctacgtt tttcgaattt
+      361 actaacgcac gctgacggtg gaagggcgat tggactggtt agattcaggt atgccttaag
+      421 cgtactttac aaccagaggc tttatttgat tgtctaatct tcgtcaaaga acgaatacca
+      481 gcgcttgagg ggtgactaga ctaataggag acaccgtctg tatcactcgt cggctatggc
+      541 cgtactgtga acgcgacggg ccctaccagg ccacagattc ctatgtacgt tgcaagggtg
+      601 ggctttgacc gttgcaacgg cgcactaggt ggcattcttc tctgctgcca atgatccgcc
+      661 tcgccgagct aggggcgaag caggttatga cgcagcggaa cggtagtact atctaatatc
+      721 aactaaaatt gtttctcaaa ggttcaaact agtattcttt attagaaacg atgatggcat
+      781 ccggaacagg gttatggccc aggtgctgga tgaagccttg cctcgaggga cttagtcgcg
+      841 tcgcccctct accaaggcgc taacggctag cgagatggtt gaggcgggag ccccgccact
+      901 ttctagttga attcagagct acgtatcctg atgctaatcc ctcgaagaac tttccgatgc
+      961 agctactatc tctttcgtaa agttagaata ggaacccggt aacggtggaa cgtcccgtca
+     1021 taggaggttg tctcctacac tatctaagta cgtcagaaga tcgatttcct cagccgctga
+     1081 ccccgtccgg catgaccagc gccgaacgta taggccgtat tgctgccgga acgactgctt
+     1141 caaaggtaac catagccgtg gtacagtgac aacccactta gctattaaat catgcgcact
+     1201 ctagacctct tgcacatacg gagcaactat gtatctaatt ggcacgagac atagaggagg
+     1261 gccaatcaca gtagtttact ggtcgaattc cacctgcata tggagagaca ctccttcatc
+     1321 aacagcagag gttacatacg tttaacctga ccgatggttg cccatcgaaa gcaaggaccc
+     1381 acgggtaggc agctgttgtt tgatatgctt ttgtccccgg aaggcgccga taaaattata
+     1441 cgccgtcccc cgcgtccgtt acgagcttcg tgatgttgcg ggctgaagtt ccctacgagt
+     1501 caataggcca actcgaatgg ctaaatggtt gcaacccaca ggctcaactt tgaaggtaat
+     1561 acgccaaaat ccaatatgct ctttcgggta gcgcataaaa ccttctgggg gccactgcag
+     1621 acagtcatgg aggactacgt gcaacactac gctctagagt gatgatgtgg cagtcaaccg
+     1681 agggctgtta agagaagtct gtgcacgaaa atcaatgagt cggtgtaatc ttcaccttcc
+     1741 tacaaaccaa ggcttgaggg cctcaatttc gagcaccact tcttgaccaa gccgttcgcc
+     1801 ggtataggag ttacgaattc gggtcgtctg ccgtctttga accatagata agtacctccc
+     1861 gagtcgggag aacacgaatc gcatcagaac tcatcgaagg gtgttacttt gcccatcggc
+     1921 atccccgaag attaattgca ttcgaaattt taacttcgag aatcatccgt gctaaccaac
+     1981 gtggacgagc tatgaacgtt tacgtgttca gtatctagga attgacacgt ctccgatagc
+     2041 gggagtcacg gcatgagtta cggcttttgt gaccagcgtc tgtgtaattt tattgacagt
+     2101 ttcatatata gtgtctcgtc ttgcctttga gattcacagg ctgtaagagg gatgccgtcg
+     2161 tgtatatgcc tgcagttaga gcttccttgt caggacgagc aactcactcc ttctggtgat
+     2221 gctttgctag catgtagctt cgggtacttg cggaaaagga cagcctacag tgtctgcggc
+     2281 ggtacgtcac taatatgaca tacgctgtgg acatcgtgaa gcggcgaatc gctccagatt
+     2341 gaggtttaca gagtactcca tagtcacaca actcagaata tgcaggtgct gcagtgaccg
+     2401 aatcctctca ggtcgcgctg gcggcccgtt tgagagtgct gaaagcgaag tttatccgca
+     2461 ccgtcatcca gtgcacctcc cccagagaat gattacttgt gaatgcggtt aacctgaggg
+     2521 ccgacgccgc gattaaattt ttaacgtgat gcacaagctg ggggcactct cccctggggt
+     2581 caggttataa ttttaaaccc actacggacc tggactgcaa gatgcttagt ccacgcgtct
+     2641 catagaccgt cggtctatag ccatgttcaa cgccgccagg ctgggcgcat aactgtatgt
+     2701 gactttgtcc acatccaagg cgacgatggc ggcagttggc cggagggctg gctgtcaagg
+     2761 ggccacgcgg atgaagggag ctcatacgca actatggagc gcggtatata gtataggatc
+     2821 cgccgggaca cgcgggaatc aagggacaaa ggagcagtca gcgtgaaatc tttacgggtg
+     2881 aagcgcgctc gtaccaccta gtcccgccta aggcccttgt gtcgtgcaac atcgctgggg
+     2941 cgacggatga caatatgatc aaggcccgag agctttgaat gtaagaggcg tattataaag
+     3001 cctaggtccg catgttgata cggggagcag cccatgcgca gtaggaaggt ccgaccaccc
+     3061 ttttctgagg tctactccaa cctccttgcc gagtgctctc cgctatctcc acgcatagca
+     3121 tactccgctt ctaacatctt cttcaaagca tacacgctac ttagcagagc aaatcgacac
+     3181 gcccatggag tggtccgctc aaaccgcgca attaagtata agctaatgtg acggaccgga
+     3241 cctacgattt cccccaactc gtggggatca gttgactcgt ctcagcttat gagacataat
+     3301 tacggtcata gggtacgcct atgcccctca gagatctcta ggtcatatgc cctatcgggt
+     3361 gctcggtgac cattgtctca tacaaagtca tatttggcag ggcttctatg gacgagtatt
+     3421 atgtgcccaa aagggaacgt ctgagttggg attcgcttct aaccaatact ctaatggtac
+     3481 ctaatttaat gtggtcgctg cgcaccccgc cgggtacaac tgctgagttc ctgagatcgg
+     3541 tacggcaaac atcttttatc cagacgaggg ttctggccag aattgatgtt cagatacgag
+     3601 aaggcatgtc atgtcacaag gattttggag aatt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/construct_4/provided_parts_records/part_L.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,79 @@
+LOCUS       part_L                  2267 bp    DNA     circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_L
+VERSION     part_L
+KEYWORDS    "creator:SynthSys Center" "marker:KanR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    join(2263..2267,1)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      2..59
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(1140..1955)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2206..2209
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2202..2205
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      2139..2182
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(254..842)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2248..2251
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2185..2190
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      1025..1119
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 gtccgatgcg agcaccacct atagataccc taatcagcat ggtcccggtg accattacca
+       61 ccgacggcct tgttttaaac gaaggcgctc actatacaag aaactaatgt ctcccacaag
+      121 gctcagaccc agccggtgct ttcagcgctc cccgttggcg ccccccgaag accatagaga
+      181 ggtgctctgt taacaactat aatgaaaggg attattgagg gagtcggagg tgaattctga
+      241 agccttaccc ctacggtcgt ggtcatcatc acggatcgcg ataagcggcc ggtctgttac
+      301 ggacgccact acgaggaggg tttcttggca atcaaggcta cgcattacaa ccatcggggt
+      361 cggtctggct gaacaatctt gatgttcaac ctttgttacc ggctccttgt gttattatcc
+      421 ggtttttttg atctatatgt ttataaggaa gcggtgcaga ccgtagagaa ataccggcta
+      481 aggcagtcgc tcaatgcaca ccagcatcgc cgagacatat aaagccataa acattaattg
+      541 gaatgctagt cacagcgtgt tgactggacg cttaaaagtt tctacaaaag gtatagtttt
+      601 aacatttctc tgagttagcg ctatcgggtc gactgacatc tagaattgac acgttactca
+      661 cctggatcct agtcacactc cgggaaccgc tcgcttagtg gcagtagcgg ggggcgtccc
+      721 taggatagct gcgcaaagcg tggtttatct aatcgtggct tgtgtggaca tgatgctgtt
+      781 caggcgcatc tgtggccgcc acagcattac caagctaatc agaaaccgcg gcatgtcccc
+      841 gcgatgcgag aggcatctgt tagagccaaa gagtggaggt ctgtaatatc gctagcggag
+      901 attttctaag gggcgtggga ctttatcccg atatggctga acgatccaac ggcaaatggt
+      961 tctgccattg aactttaacc atgaatagac tccaggcgag ggataatgga aataatagca
+     1021 ggaaatgaca atctactagg tgcgcactat caagattgta tgtttgcgta tcgtagttct
+     1081 aatggtcttg tgtcccgtat tgggtcggac ggtgctgttc ctgatcgtag caatgcccgg
+     1141 ttagaatcac gcatcggagc gatcatttcg ggcgatacgc gttcgttctg tccactcttg
+     1201 tgggagtccg acgtatgcct gctcggtatt gttttattca ggcgacagta cctcccattc
+     1261 aaatatacag ggttatacta cacaccacga gtaataaaga cttgtgttgt gccaattcct
+     1321 cgtgggactg ccacgctcgt gagcttcgcg gttacatacc cctatgtccc caactgttgg
+     1381 tggcaaatcc ctaatctaat ctattgtatc acagtcggtc aacgactgaa attggggcaa
+     1441 caccaacagt gctcttacga tattcgtctg tgtctaacaa tccaacaaaa agctgttatt
+     1501 atgatggagg atcttggatt gcgtcagtac tacggtgttg tacgagaatt gcatgatgat
+     1561 tcctcgatgt cgagtccttg caagatcgtg atctatagcc aagctgctgc tgtagatcaa
+     1621 cctcaccggg gcgggggtcc cattactatg ggcggcatta gagtaccata gatgaacgcg
+     1681 agcagagaca tgtcaatgta tcccagtcct gcagtactac gtcagtctct gctcctgggg
+     1741 ccaatgcacg cctgtagaat agggccgtgt tcccatgaga aatttgaggg acttacgatt
+     1801 agatggcctt ggcaggggac tccgcgtacg tgtggggatg aaccggcacc ggccttggcc
+     1861 ctgagtaaat gtaagcgata tcaacttcgc tattcatgat cagtggtatt cgtgtaggca
+     1921 ccgaaagtcc cttggcgaaa gtagagacat acgatacgga ccgcaagcga gcagaatttc
+     1981 agcacatgac agttattagc ttttttctaa tggtgctccc attatgattg tcaagtcccg
+     2041 actgctagct gtaggatgaa acacatccac acacgtgtta ccatactgat tttgacacta
+     2101 cttcctaacc gggccgaatg gtatctgctg cgatgcttag ttacgtaaca gccgaatgtc
+     2161 acgccactgc atattgtggt tctggaattc cacctgcata tgtcacgcta gagaccgtat
+     2221 gaggtgggcg gatagtggtg acttcaaacc catatgcagg tgctgca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_A.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,197 @@
+LOCUS       part_A                  4292 bp    DNA     circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_A
+VERSION     part_A
+KEYWORDS    "creator:SynthSys Center".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     RBS             2332..2343
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2208..2238
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     promoter        2289..2323
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    3162..3178
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      228..233
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            1009..2028
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      51..56
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             2350..3027
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff00ff"
+     CDS             complement(3376..4191)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_RNA        87..639
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2257
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      3119..3146
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2053..2100
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2278..2281
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_RNA        complement(90..197)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    726..734
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2274..2277
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     rep_origin      51..639
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2161..2185
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      206..211
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    complement(3292..3332)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      760..1008
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      3032..3103
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3158..3161
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3173..3178
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     gene            complement(3376..4191)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2258..2262
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3342..3365
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3204..3227
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2256..2273
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      72..77
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2029..2052
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             1009..2028
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    3237..3265
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    3154..3157
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    3180..3290
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    2212..2236
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1..24
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+ORIGIN
+        1 tcacaggatg gtccaacgaa actaggcttt agacgaggga tgaatgaccg acccccactc
+       61 gtggcactaa cggacagact tccctgacgg ttattcgacc attaaagtca gacatgcggg
+      121 ggtgaataaa ttagccaaat tgtgtcgaag aaaagacgtg cggctggcac ataaggcagt
+      181 cttgatccta gtcttgcagg gatgcacgta agtcgcctca attaactgca gccgagctcc
+      241 aggttaccaa agaccctagt atgccagggc ctaacggttg gagtatatta tgggtacgca
+      301 atagtgcgga agttaacctg ggcaacatcc aggtgagagg ttggacggaa gcgacagtaa
+      361 gtggccatag actgccgagt cgtgttaatg aatcgctata cgcccatgga gttgtggggt
+      421 cgttttatcc gagtaggggc ccgctgacta cttcgtccag acaatatgcc gtcttcaata
+      481 gtctacctga gagtcatgcc ggcatttccg acgctgagtg aaacccgcgt agccaggcga
+      541 aatttgcatc ttgaaatacc actgcagatc agccagtaag gcccatataa gggcgctggt
+      601 gttctggcga cagataaagt gttatctaat gtaacccgcg gacttttaga ggatacttga
+      661 atgcgggcat atcgtcccac cagcgtcacg tggtcgggct agcggcagac aaactctgcc
+      721 gatgtttttc tttgccgcga tagcgggcta gtcaattcac tatccggcga tgaagcatag
+      781 attgttatcg cgcttatgcg gaggataatc aagtcttggc agaacctgct cgctcatgca
+      841 ctggtgaggc gtggttatcc taacaaccgc ctaggacgaa gaatgggctc ggtagggaca
+      901 gttcgtgcgt ttagcttcgt cccatcttaa tgctgtctgg agggaggcta catgcgaaca
+      961 gaagccgtgg gcgaaagttg ttgatccggg tctaacacgg ataagggcca tggtgaacgc
+     1021 atcatgcgat acttcttggt agttcttcta acatgaccgt gccatagccc ttaccctttg
+     1081 aagaagttaa cctatctgcc gtctcctgca cgaatagcga ctggactcgg gtattttgga
+     1141 tacctcacga aagcacttcg atcggccgaa gcatggatat ttcgccggac gggcccgaat
+     1201 agagagcctt gtatgtcggt tagtacaacg cagtcctgga gacatctacg cggatgggcc
+     1261 taggggctgg acttaacatt gggtaacgta cctggtccaa agtgaatgca aagcactttt
+     1321 acaaagcgcg ggtccccgtg ggtgtttagg gtagaagatt ggcggatgct acgaacgatc
+     1381 ccgctttgaa actatcatta catcgtgtaa aagagacact taacaaaggc caataaactg
+     1441 ccagtaagaa tcgctcagtg cggtgctggg gacgctaagt aggggcaaca gccagtgaag
+     1501 gacgtgaccg acctttctca gataagatat gctggcgtct atctaataag catagtgaaa
+     1561 aaccaaccat ttcacttaca cgaagtacat ttgcattgct agtaaagacg cctaaacaga
+     1621 agtgcccttg catgctgtat gtctatagtc cttagggaag catcagccct tctacttatt
+     1681 cgaggtctga gaaaccctgg acaagctccg aattattcaa tgtgcctgtc tccgaggtta
+     1741 gatagcgcta tgctcttaag agttgcacag aatgaccatc ctggaatgtc cctggagggg
+     1801 tctaggtatg ctgatcgaag ggtgctctaa ggacttgacg tgcgtccgag gagggtgctg
+     1861 cctccttcgc ctttagatcc aacgcggatc acatgcgcgt gagctaatag gatcaccttc
+     1921 tgctccgatt tttaccctcc tgggtcactt ccgaatgagg tagcgggcga aatataatgt
+     1981 ctccactcgt aggtgttccc tgtatgtgaa gctctatagt ggacaaaggt ttgatgaact
+     2041 agcccccgta tacgctctca ccgacggacg cgggggtctg ttatttgaag catcatacat
+     2101 gcgaaggtgc cttctcagca acgaaaggta gtgggagtgt acaagttcaa tgcgccgcca
+     2161 taggtctgag tatacaaggg gatgccccca tccacaacgg gattggctac ccggagagct
+     2221 ggctccgctc caacaaataa ttatattaac ctattggaat tccacctgca tatcagagga
+     2281 gagagacctt tacggctatt ctgtttaccg gatccatcgg taccaaggat cagaaagtga
+     2341 cacggtttga acgggttgtt gtaatacttt gagtatacct ctgacgctga gcgtgtcgtc
+     2401 ctgagcgcag actcaataac atagcagtcc gacatcgccg tgatatgtaa atgcaacgaa
+     2461 tttaggtctt gactcggtct accatgtcaa aagggtagcc agatttcagc gcgaaattga
+     2521 actttgtgtt tagtgtgggg tcctcggtta caaaatagga tcagacatgt gtgattttgg
+     2581 taacctagtc tggcagtccg acagacttcg ctatgatttg atggggccgg cctataattg
+     2641 gcttgcgcaa cccgctcatc tcgggcgtgt tttacttcct gcggtcccca cgccctattt
+     2701 tcgggccagc tgtaggtgct agagtgaatg ctggcgaata agattccccg ctatttggcg
+     2761 cctcgccaca gctctggcac tatgggggga gtttctctgt tccttaaaca gcacccgttt
+     2821 ttgaggtgta ttggtttcgg ttctgcatta ggcaattcgt accgtacaat caattacgac
+     2881 acattggcgg cagttatcag ctacccatcg caaagcacac acccacatgt atctattttt
+     2941 cgcaaattcc aaaagcttcg attgagattg catcggtagt ccctcagaca tgtcgtaatc
+     3001 gaatgcctct tgttccatga gagagagaag tatggcgcga accgctctgc ctttaatttg
+     3061 gttctaccat ccacgagttt aaggggcata accctgccca gcactttccg aggctcacgt
+     3121 tcatgctacg gtagcacctt tctgcgggtc tcacgctgtc aatatgcagg tgctgcagga
+     3181 atttgtctcc aatcgacttg agatatcgca agcatgaaat tatattagac acgccagaga
+     3241 acttgggaag cagcactggt agtgatagca acccgagtac agtaacgagt gagcttctga
+     3301 tcatgagctc tcctacggcg tcaatgcgac gaatgcccag catgcactct cgctatccat
+     3361 gcctgctagg gtggcattat gctcaggaac agttgtagct tggatatcgt ctagatgaaa
+     3421 tacctggaca ctggttagcg tcgtcaagca ccaaggacat tcacacgctc gcggtctttc
+     3481 gtctccctaa gcgttcggca gtcgggcgtg aagaggttgt aatcagacgg aacaaagcct
+     3541 gaaaaaattc cagcgacgta gtattcatga tcctgtacca tctgtagccg ccgcggcgca
+     3601 cgattgaatg taggctacta accccatccg tgttagcgat gtgagtttct accgcaacga
+     3661 atgctcaagc gaaccttctt ctttcgtccg caacccacaa gccgtggtta tgacagctaa
+     3721 attgtcccag acatcccttt attacacaag agctccagcg gaatacctag tcacagcggt
+     3781 aatgacacaa agctcttagt tagtccaggg actacttctg tctacagcac atcacactca
+     3841 ttatcagcat cagtgtagag acggagaaca tgggctatcc tataccaaga tccgccatct
+     3901 aaacatttga agtttcccgt cttctataac ttagcactcg acgctattct gctgagtgcg
+     3961 cttagtctgt agcgacttgc gaaatccata aactgagaat tgaaagagag tgcataaccg
+     4021 aaacctttgt ggcatatttc cgttgaaacg taccagaaca gccgtttagt gcggaacata
+     4081 cagtatcctg ataaagcact caacccaaca gacaccctat gccgatagcg ggatgctaac
+     4141 aagtatagtc atgatgattt ctcggacagc ggggtttggt acagctgcaa tccgtgattt
+     4201 aaattcggac ctctgcacac accgacggtt acccatatcc tctacggctg taggaagttt
+     4261 taccttggat gtcattctga tttcggcgta tc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_B.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,124 @@
+LOCUS       part_B                  4259 bp    DNA     circular UNK 29-OCT-2019
+DEFINITION  .
+ACCESSION   part_B
+VERSION     part_B
+KEYWORDS    "Source" "Sequence" "Freezer" "Shelf" "Box" "Concentration" "Use".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     primer_bind     531..550
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      3078..3135
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(join(4216..4259,1..616))
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     exon            2863..3060
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     gene            2863..3060
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      4101..4195
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#9eafd2"
+     primer_bind     complement(3410..3429)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     778..796
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     misc_feature    859..862
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     primer_bind     complement(3159..3176)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    863..3060
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     rep_origin      complement(3330..3918)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    3061..3064
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      800..843
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+ORIGIN
+        1 cgggtctagc cacgcggctg aaaatgcgcc tcaccaagtt cagagagttg taatttaaag
+       61 gaccaaagaa cgtccattat gaagacacca atgagaaaag ttcattgcga tcgcagctta
+      121 gactgacgtg aagttccaac atttggcata cgtacttgtt aagttcctcc ggctatatgc
+      181 gctaggcgca ggtatattag ccggacatct gcaaggttga cgctgaagcc ttatcggtaa
+      241 tgcaagcaca acggtattgc agacacacaa taggaagtta tgttaacagg agagggtgat
+      301 gccgatgatt acgccccgcg tcgacagtac aataaaacag ctagatcatg tcgaaagtgt
+      361 aggcaaaaca ggtaggtgca ggacaggagg gttccctcaa gtcggcttgc tttatgtggc
+      421 gaatctgata cccataccgg ctatacatcg gccagggaat atcacagatt ttaaatgagc
+      481 ggagatagac ctatgggacc gcatcgatgc aagacatcgc ctacagatac ataatctgga
+      541 agacgcagat atcagtacgc tccttcctgg gaggcgtggt ccttggcacc agtcggccac
+      601 cccttagcgt ttcacctaag caacgaatcc aggactcctc ttttagcgtt tgggtgtcag
+      661 gcgcatcagg agtggttaaa tgaacgctgt acttcgcaag ataattgtga agatctctgc
+      721 tattccttaa cattaccacc aactttgcct acatatggcg taatcaaaaa tgcagcgggg
+      781 tgctcgatcg tgaaccctca atcacgatgt gctatggcgt agccacacaa catagttccg
+      841 gtctggaatt cggtctctgg agagcatacg gtgctctggg ctcacacgta cttcctcttg
+      901 tcacgcgcct ttgtagagca ttagggcgga ggtcactggg acggggatca gagagcttaa
+      961 aatcccaagt agcagtgcct aaggtgtaga atcttgtgca gatcttcgtc tggcccgaaa
+     1021 cctgggcctc cacaacaatg tcgggtcttt tataatttga aaacatcgcg ccttacccgc
+     1081 accgcgcagg acgattagac acagggggtc atgtccatgg ttcggggtaa gccaaattta
+     1141 catcgagtgt gggcttcatt gaggagaggg cgttacgata cccgttaaat gaaaacccgg
+     1201 acagtctcta actgataggc ctgataatcg ccaaatgaag tcgcaattag cagtacatga
+     1261 ctggcagata tgtcgccgga gacggtatgg gggacctatc ctaggttggc acgcgagcgc
+     1321 gaatgacgcc tatcttatcc ccctgcacgt gatggtatcg tcccaactat cttttacctc
+     1381 atcaacgttt tcctgcataa tctgcaagat ggagagtccg cgagtgcggg gagtacgaga
+     1441 tcacaaatct gccctgaaga caaagctcgc aggccgtact caggaaatag catcgactca
+     1501 cacatatcgg gaacggcaaa gagtgcatcg gccaatgcaa actattgaac gtccatgaaa
+     1561 ttgtgtcaaa ctactagtgt gtggacttgc gtcaaggcca tggcgcaata ctcaaagccc
+     1621 cggtatttat cccccgcaga gtatccgtgc ggatggagtt ccacagctct ttggacatgc
+     1681 aatgcgtggc gctacatgct ccgctgatac agaatatcta atgtctcgcc tcttgccgtc
+     1741 gaccctacaa ctactgcacg ggcagagtgg acgcgacccc tgagcggtgc agaaccttag
+     1801 tataaggcaa gggtggcacg gccgagccgc acttgctcct actaggccgt gctcgaagct
+     1861 attgatgcaa gcacagtatt cccgatttgt aaagcaaggt gcccgtagcc atacacccag
+     1921 ctactcaccg gccaatttcg accctctcta tctcagacct ccgcatattc ccaaactcct
+     1981 gctcaagtat gaaatgaccg gctcctccta aggcctgcgg acatggagtc atgcgtggaa
+     2041 tgccgtgtag gtagggtaca cacagcctta ccatgtaggg caataaatta tagactactg
+     2101 acattgattc cttgagggcc cgttcacttg tgggggaacc aggaaggcgc cgatagtcat
+     2161 cacttaaaca catgcgacgc atccatttca agaaagacac gctacgggtc tacaccgcct
+     2221 atagttctaa tttgggcccc ggtacgcaca tcgatgtact ctccattaca gcatagcaca
+     2281 tcagcggccc tagttagcgc ttctttttgt tccaacattc aatagcgggg actgcattat
+     2341 cctcacccta tttgttgcat aggtatttgg ccgtatactt gggaaagagc aaccacggga
+     2401 gtgcactaga aactgattca cccatgttat aacgcgttgc tcgcaagtcg tactgtggcc
+     2461 acgcacaggt caggcaatcg caaccatgtc ttagcagttt gtaagaagac ctttaaacat
+     2521 gtacctcaca gcaatctcgg aacttttaat tttcctgagt caatgacatg ctagctccgt
+     2581 ccacttgtaa tcaccgtcat aacacagtta gcctgcaaaa gggcgtgtac accttgccac
+     2641 tttaaagctg accgaataac ctacctacag gagatgctta gtgccacgga atgatctcgc
+     2701 aatgcttagt cttacaccca gtgaatcaac ccaagacctc gccgactgaa cggtattgag
+     2761 tccaatcccg agaggcaatt tatggccgtt agtgacagtc ggtcgctgat agaataaggc
+     2821 agactcgtct taagcgggct gctttaagag aaaatggagc cctgacgaag aagtggatga
+     2881 accaggtttt gacaacgtcc catattggta atgtaggctc gttatcaaga gataggttta
+     2941 gaaggctcaa tgctcgacgt aaaagaagtc ttaagctcta tgagccagtg atgagagcta
+     3001 attatagggc gcattcgttg gggtaaggtt gcgaattgtc atttaactaa aaccgacggc
+     3061 aatgtgagac cctgcagtcc gcctacacct ggctcactga ggcggcaacc gttatcgaag
+     3121 cagcatgtat tggtagtacc tgtcgccgat ttccttggga gtgcgctgtt gcgataacgc
+     3181 ttatttatgg tttgcgcggg atgtatctaa tgcggccgcc gcccgatcag cctgaacact
+     3241 gcggtcatga gccggtccat catgcagttc gcctgtaatt ataacctatt tgttaatggg
+     3301 gcttacagag gagcttccaa cgcatctacg agtaacggct gggatcacaa cttagccacc
+     3361 ttgtagcagg gacataccgc tttgcgacta ctgcgattct ctaacgagtc ttctgattgg
+     3421 tcctatgctc tttcaaaatc tcgataccgt agccaaccct gctgcccacc ttaaactatg
+     3481 acaggacaca ccattgtgcc aacctacacc ttaccagtag ttctgctctc caccactaat
+     3541 acgatgtcag aggccagaag gagcaccgtc aacaaacgcg ataatcaggg cggcgaagat
+     3601 ggaagtagct tgggttgtcg gtgggcaggt caggcgttag tgttatttga ataccaactg
+     3661 ttagaccaca gcgactcgaa cagtccgcaa gtcaagtgcg gtcggctttt acaggtggcg
+     3721 gattttcatt ccaccattcg ggtctaggtg tggtactaac cgcggtcata cgtggagttg
+     3781 aaccgcctga cgcactaagc tatgcgggca acaatatcgc caaagtcatt gtgttgggtt
+     3841 ttcacaacag tcacttcgct cacggccgaa ttaaatatct ctaactatta agccattttc
+     3901 caaccatcgg ctatcccagc ggttcaatcc gaatcgttac cagtgggtag ctgcagagga
+     3961 tcctaagggc gggtcccgct tactgtaact cgtcatgtct cgtggtctac caattcggtt
+     4021 agtattcgtg ccatgtatct cataagggtt gcagtttcgt cattgtcgta gttccttaat
+     4081 ggactggtac gacccggttg ttatacaacc atcaatcgtt aacggacatt agtgagccga
+     4141 ggagaagacc catcagcgga taacccgcca ttatcaccga tactgacata tgagtgccat
+     4201 actgggactg gcttcacgtg agggacctca aagtgagtcg tacaaggcag ctcctcaaa
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_C.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,99 @@
+LOCUS       part_C                  3423 bp    DNA     linear   UNK 20-NOV-2019
+DEFINITION  .
+ACCESSION   part_C
+VERSION     part_C
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     CDS             18..3275
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             3276..3404
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2486
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    3411..3423
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3407..3410
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    14..17
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    1..13
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    3131
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    2078
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    14
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+ORIGIN
+        1 tggctaggtc tccaatggtt tcaccggagc tgagatcgca ttaaagtcac actacgaatt
+       61 atttgtcccc gcggctccag agacaaattt ctaggagtgg gttcatggag aaccgtgaca
+      121 agcatggtag cttcaaatag cgtcatcgga tcttaaagtg attgtgacat atatgggatt
+      181 gcgcgtctct cttacacaag ctagtgtgcg cgaggtgctg aacacctatt acgtcaactc
+      241 ccgggatccc ggcgggttac agagacataa gcagggtgtc catcattaac ttcgatgttg
+      301 agcccgtgcc ctgatcaaac acctctcgta gtagtgggtg ccggccgtgt attattttgg
+      361 gggagaggat gcgccctaag caatttcttt ccatcggcca gccattcgac gccggcacgc
+      421 aagttgttgc gggcactgtt gcagttcccg tactagagtc tcaagtctag aggtaccagc
+      481 atcaggaaga tgggtacttc gtgtggatct tctcctgaac ctgaaacctg aagagctaaa
+      541 gcgcgtcgcg ctgccatacg ataagtcgct ctcatttccg gaagacgtcg ttgggtgatg
+      601 gcgaacaatc gcgaaacgaa aatcgcggtc ggtatgttga ttcaagacgg gctacgggcg
+      661 ggttactaac aggtgcgcag aaatgtgatg ggtcacttga ccatgaactt tcgcgccgtc
+      721 gcttctgtgg actggccggc tccctgatag tgcactagcc cgttgatatg cccattacca
+      781 tttggcggcg cagtgtgcca gcgggattaa gatgcgtggc gtacaactat ccgcactttg
+      841 ctgacgcaca aaggcaactg atggacagcc ttcgggcatt cgactggttg gctgagttcg
+      901 cctgcctatt aatatgcttg tggaaattga tttacagcgc ctacttctac ttaggtgtac
+      961 ctatttacgg cacagggata aaggctgaca gaaaagtcct ggacaggtca taggtagttg
+     1021 tcagacctac aatggtataa cttgagagtc ctgtaccgca catgcggttg tagctagatg
+     1081 tccagaagac cgtagctagc gacgagtggg ttgcacgcgc attttgggaa ggggctgcgc
+     1141 gagggtgggg tcacgggtta ttccatttct aaatgctaaa ccagcagttg ctttagttct
+     1201 gacctagcag gcatgtcata tgtatggcta gattattagt acaatgcagg actaagaaag
+     1261 cctgagactt aaatgcgttg gtttttcagc cgacgggccg ggagggcaga tggccgaatg
+     1321 cgcactgagg agtgcattgc gagggaatag gcggaccacc aggtcccctc acatactgtg
+     1381 gataaaccta cccagggaca actcacgcca tcattttcaa gagtagcact actttccact
+     1441 aagtacggtt tgtcgagagc cggtggcacc gtgcgacgag cttgtgggca ctaggcgaac
+     1501 cgggttatat aggactgcct tgcggtgcgg gaatacttta ccccgtggag aggccataaa
+     1561 agcttacatt tattgtagcc gctagcggtt tcgacgcgct caagtggggc tttatcttag
+     1621 agtatcaaat aatgccctct cagcttcatc ttgatttttg tgtttggggt agtgtatccg
+     1681 atgggtcacc ttcttgacct tggggagctc catccatcgt accaatactc cgtttctttg
+     1741 tgttgcctac cgagtaatcg aataccgcac gagggctaga atctaattta aggtgggtct
+     1801 tatccctgtt gtttggacct aacgctgtaa caaatcactt ccgcgacggg tgtcattacg
+     1861 tcttctatcc gccaccggtt caacagtgcg tcgaatgcca agtccctatt acccgcattg
+     1921 taaagccatt acaatacctc cggtgatata attgattgcc ggttggcaag ggatcatctg
+     1981 tacgggccgc gattgattgc tgataaggaa cggcggtaag gaacgtatcg cgtacgaggt
+     2041 tgtacactgg aaccgctaaa caagcggtat cgctaaatta ccggcgatta tatcaaggga
+     2101 atcttaggta gcacgaagcc ctacgccctg gaaacaggat cggcgcgagg ccgtggacat
+     2161 attagcctac gtttttttac acccagattt ccgacgatgt ccacagctaa ggctatccta
+     2221 aaccgcaaac acatataacc gcagtataaa gcacgggatg attccttggc catcttgcaa
+     2281 gcagtgcaag gcaattctgg tgataggggc aaggcagtga accgagtggt cagcgtattg
+     2341 tgaccctgca attgtcatgg cagataattg tttatgaacc tgtttcacac acccatccct
+     2401 tggatctcca gcgtagttac taatagtacg atttcctggt gttctgtcac ccgccttgct
+     2461 gccttcacgc ctgccccacg ttttgctgtc cactgaatat cgctctaatt aataggtgtc
+     2521 acactgtatc aggtaagtcc attccgggtg ctattggatc attcctgaga tgtaccaccg
+     2581 atcccatagg cgttaggtct tacatctgga gtgaaaaaga tcagcatcga actataggta
+     2641 gataaaggtc atgactgtta acagagaatc gttcctatcg caaccttcac taactggaag
+     2701 gcacccccac actttgatta gtaagcccct agcgaatgta gtgatccaag aacatcgagt
+     2761 atactttagc tctcggttca ggcatgtatg caatcgacca cccttccgtt cagagtactc
+     2821 tcaaccagca gatttctaaa ctttatagcc tccgcccact aaaattgcct tatctcaggt
+     2881 tgactcttgg atgtagctgt aatctaacat acacatggag ctgcggcaaa ttatcgtacg
+     2941 tccaaaccac caccggatca gtggcgatac tattctcgca aaaaagccat ccagcattgg
+     3001 aacaagtgtt aaccagcatt tttctgagtc ccccggaaag aaagttgact acactacatc
+     3061 cataaatgct agagtgtgga ttcgccatgt gttacaacgg tcaaccgaaa ggttagcatg
+     3121 atacttcgtt gttcaatcgg acgttcgagc gccctccctg tttatcactt gatccccctt
+     3181 ttgaaacatg tgcgctgcga cgcagggctg ggagagtcac cggaaaccaa aagcccgacc
+     3241 tcggacgtgt agggccctcc gtttgccatc aatggcgatg taggattctc ttttaataca
+     3301 acgttcactc aattaacgtc ttggtataag cgtcgaacgt gaccgaggtt gacaccagtg
+     3361 tcacggctgc gccggggttt gttgctccgc gtgtacaggg tattggttcg tgagacctag
+     3421 cca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_D.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,96 @@
+LOCUS       part_D                  2682 bp    DNA     circular UNK 30-OCT-2019
+DEFINITION  .
+ACCESSION   part_D
+VERSION     part_D
+KEYWORDS    "Source:Subcloned from vector Andrew" "Sequence" "Freezer" "Shelf"
+            "Box:Mobius box" "Concentration" "Use:Mobius".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     rep_origin      complement(262..850)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2642..2671
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     terminator      1991..2034
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             2054..2566
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    1919..1938
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f58a5e"
+     misc_feature    2050..2053
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    2576..2641
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    143..162
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#75c6a9"
+     misc_feature    2675..2678
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     CDS             2618..2641
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     CDS             complement(1148..1807)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     terminator      1033..1127
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgtgaatta agaccaatcc actggagctc tatacaggac atcagcgatc
+       61 ggtcgagtaa aaccgagttt ctggactccc ttagtctgag aattgtacct tattacgaat
+      121 ccggaaatga agtgcgctca taaaatcttg atcgctaact gttttccgct ttttgaacct
+      181 acagtcagct atttcgccgc aagcgaggtt tatccccttt tgtgtgtgtc agcgggcgaa
+      241 cgtggaggac aattatgacg aatgcctaat aaccaacgta ggcttggctg gtgaggacat
+      301 tgcccttccc cttctactaa ccagtgttgt tcagatcatg taccaagtgc agtaatgcta
+      361 atcccctgaa ttctgacgtt ggatttggag cgtgattggc aattatccgc tgcaaggcgt
+      421 agtatcgcta tctgggaaaa cttagggttg caagcaaggt catcgcccgt ctctagatcc
+      481 gacgggagcc tcaccctgca tgaggaagtc ctaatccgct ctaaacaaga gctgaacact
+      541 ggatgtctcg cagtagattt gctagaatgc aatgctggct cgtgtgcagc ctcaaggtca
+      601 ccatgcttcc gttaaattcc acgctctccg agtctgctgg ttcgggataa atctacgtga
+      661 cattcgcgag gtcccggcct gtagatcgtc tcggcaggag agaacacggt tgatccccca
+      721 cgcggaaccg atagatgcca ggctagatga tgactgaagg tagtttgtac gagtgacctc
+      781 tctagccaag tattttcccg tctcttaagt tatagccgct ctcattccgg gttgtgatat
+      841 ccttcatatc cactctctgt aaaatgctgg gttgttcttc tctccacggt cagggaatcg
+      901 cctcttttcg gataaacgac attatttcgc gccacagaac ggtttggggg tcgaaggacc
+      961 ctagactttg ggtatcccac tcttaccgga tggtaccgct atctccccag ggtccatcgg
+     1021 aatggctagc cacgttaccc ttatctgtca gtatcagtct cagacttaag tataccacgg
+     1081 tagcgacagc tgtcttttaa tggcccgggc agggagccgg gcccaccgtc catggtccac
+     1141 tgtaagggta tctgcaacct tcgccgagct tcttccccaa ggaggtagta ccttaccaaa
+     1201 cttccgagtc agtatcgtca aaggggcccc tagggctcac accatcgagt ttccgcggct
+     1261 taccagtcta gcctgatatg tttcaggtca ggaaataaga ggtatagccc cgtggacacg
+     1321 tactgttcga gcggctagat gtaggttgag ttaagtacag tagacgcgtt ggataccgtc
+     1381 gaacattact ccgtctgcca agggtagccg agtacttctt ccggctcggc cattccgact
+     1441 aagttagttt cgaattgacg tgccaaagcg tggctcccag tcatttgtcc ttaaattaaa
+     1501 cataagtttt ttacctgctc gcgtgccggc cgcttgaggg ggcagcaaga agtcggttca
+     1561 aatggggtgt taagaccggt gttgcaagcg gaccatccag agttagcgtc ctcgacgaaa
+     1621 cgttaacaat cgtgagatta gaggtcgaat atccccttcg tagggggttt tattgtgcaa
+     1681 gatgcgcaaa tgaaccccaa ccttgcgggc ctgtagcgaa caggcgaaaa ggtccaatac
+     1741 ggcgcccgat gcaccgtaaa acaggtcctc taactgtgtg ttctacgctc tccggatcct
+     1801 gtatataaga acgaatcccc ttttcctagg gcccggccgc gtagacccag tacacttgac
+     1861 tttcacgaag atccatccta ctcccatacg cttgagagtg ccaacgtagt ttgtaaccga
+     1921 ccttgcctcg gctagaaagg cattttgtcg catgtggcca gcctgtcagg gcgtgctcta
+     1981 ggcttgacga ttagtgctac gggatgattc gtaaccgagc tgacgggacg cctctggaat
+     2041 tcggtctctt tcgatggtgc ctcctctacg tagatctact ggataaccgt ccccaatatc
+     2101 cgcttcccaa cgtagattgc cgacaggcat aagcttcggg ggcgcaaagg ccgacgtccg
+     2161 cattgcagtg tagctttgtg agcaggaagt gtgatagtct ttcgattatt aaagtctgag
+     2221 ctgaatgaaa aaaggtccaa cgaatggagg acgcgaagac atgggtgtct cttatggccc
+     2281 gagcgggagt aatggcggtt cgtacataaa ggctgaaagg attctggcgt tagctgtctt
+     2341 acgttggatt ggcccttcaa attatcgatg ttagctgatt cggtgtaccg ggcgaggaaa
+     2401 gcgctctcag aacaacttca tatacgaggt tcgactataa tggtctaagc tcctgggcta
+     2461 gtctcaagaa gcgggtacct ttagtagcac gtatcgacgg caaagcaaag aataaaaact
+     2521 tggctttgca tcgtgcaaag atttctaact aggttgttta agggctggta tctatgtccc
+     2581 gctataacag cgcgcctaca gtagaagttt aaccatgaca tacctttgaa gtgttcgtat
+     2641 cacacacaag gaaggagcat gtggacacca ctgagctttg ag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_E.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,38 @@
+LOCUS       part_E                   347 bp    DNA     linear   UNK 20-OCT-2019
+DEFINITION  .
+ACCESSION   part_E
+VERSION     part_E
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     3'UTR           21..330
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    1..13
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    18..20
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b1ff67"
+     misc_feature    14..17
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    331..334
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    14..17
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_feature    335..347
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+ORIGIN
+        1 tggctaggtc tccgctttga tcagcacgcg tctcagagtt tcagggggac ccaaattact
+       61 ggtcctcaat tgggacgcga ccgcatctcc ccacgaaagc ttatggggat tgcccactgc
+      121 ccagcttcaa atctgaaggt tcggcttatt gacagggtct aacacgcagc tcaactgctc
+      181 gaggttagag gcgtaatgac gggccccgat agccttctac gattacgtcc agcaggaacc
+      241 ccacagcttt tccctacgtc taacaccgtg aaagcaaaac tgtctgccct tttacatggt
+      301 ctttaaggaa tctctgcact tatgttatta ggtatgagac ctagcca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_F.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,74 @@
+LOCUS       part_F                  2470 bp    DNA     circular UNK 20-OCT-2019
+DEFINITION  .
+ACCESSION   part_F
+VERSION     part_F
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     terminator      1991..2034
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(262..850)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             complement(1148..1807)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2054..2462
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     primer_bind     complement(2351..2371)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     terminator      1033..1127
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgctcacgg accgcaagga cgggctaatt aggaggcaac gccgatgggg
+       61 ccgcagttca gcgctgcaat gtttgctgaa cagggatgtc acgcatactc gtctacaccg
+      121 cccgtgaccc gttatcacgg ttgaagtgtc gaggactagt gctgccgctg cgtgagggac
+      181 acaagctgct atttgtccat acgccatgtg ctccgagctc atgctgccat gagacaatga
+      241 gacatgtcgc caataatcga gtgacgagtc agaatgacct ggctccgcat aaccgttcaa
+      301 agttattgac aacgcatctt tcgtagttcg tgcagcagcg gtctttcttc tatagccgac
+      361 tagatgttaa gggactcctg gataccgcta gttttaccct ctccaggaag ccagcgaggg
+      421 cgtgccgcaa gtcccaatag ataccgggca tgatcaaggg gccctgtgct ctgagtctgg
+      481 aggcgacagt gcgctgcagc tcagaggtgg ttattgcgaa ccggcaccgc tggacagcac
+      541 ccacggggac acgtaagtaa tttagggtct gggccaacgg ctcagcgcca gtaggattaa
+      601 caaactcgac taatcaatgt gccagctact tccgccgggt ctgacggggc ggcacccatt
+      661 accatgtgta ctgaataggg attccgagcg accgtaaagg cgttcctaag tgtcatatac
+      721 tggcaactag aggcactcac atcggggtta agggcccacc gtaatggcca cgcaggatac
+      781 caattggccg ggtgaggatc tattcacgcc gatggggagt tctaagcccg agttattggt
+      841 gctagtggct tggacctgtg tgtcgatgat gcgcgatata gaggcgcggg actagctggg
+      901 gtccacaggt gctatgttgg gtgcgctcta tggacgtccg gaaagagact aatgcaacgg
+      961 tatggcatca agcgcgaccg atggggagac tggaaattgt gaaatagtgt actggcgcga
+     1021 tcattaaata ttgcatacgc tgtccgttat gacctagagg ggattatttg aacgagaggt
+     1081 cttgggaact gcattggaga tggtcagatg gaatgcgaaa tgtatcacca cgggcggccg
+     1141 aaggggagac agactatccc tagttggctt cggtaaccgt aatcagatgg aacggcgggt
+     1201 aatgctgata ccgagcgctc gtacggcgcg tggtgatgac acggtctgat gtcgtagcaa
+     1261 acgagccggt cctcgtacaa caggctcaca tctcaatcac gcataccaac cgattacata
+     1321 acgcgatcta tatttgggga actctactta ctaccctgtc tgcagagtgc gttctatgat
+     1381 cctcccctac gtgacggcca acgattagtc ggcctaggtc taacggataa aaggactccc
+     1441 cagtacatgt gaccatatga gccaggccgt cgagcgcgac cactccccag cctatagtga
+     1501 ggaggagcgg tattcggtta aagtttagct agcgactttt ttgtcaccga agtagggacg
+     1561 ggcatattgt ttacccttaa agcggggatc aatccattgg ggtcggcagt cataaaagga
+     1621 tctaagcccc caaagcgcat ggtaaggtac tcccgggttt cccgaaatct aggcaagtct
+     1681 cggtgggtgt cagcctgacg agtagggcac gttaccgagg ccacggtgct tgatgactac
+     1741 gggtgaatcg aaccgatcaa acgcacagca tctaaaccct ggtgtactgg tccacagggg
+     1801 gacaagtctt tgaagtgtcg cttcagatga cggccgcggg ccaatctgaa ttgttagaca
+     1861 ccgacagtag ggtgtgcaac tcgctcgggc aagagtgtaa aggcacatcc tccccgaggt
+     1921 aagttatacc gctctaacgg cgcgggcagc ttttcaactc aacacttccg cggttcagtc
+     1981 ctgagcatta ggctgcatgt ctatcacaag aggtgcgggg aacgacaagg gctctggaat
+     2041 tcggtctctg gtaagctccc ataagagcac cacttcgtgt accttgctaa ctcccttcat
+     2101 ccccacccgc gaaaacttaa gacgtcaccc ctgttattat cccgtgcact cctaaagtgc
+     2161 gatgggcaag aacgcaaaca attgtctgag atttatatgg gcggcggaca tagtcagaga
+     2221 gccttatata atctcccacg tcttgccagt ccgagttatg agaaacccgg gaccgatgac
+     2281 gctattacgg tcgcccagcg aggttcaaca gagcgaggca taggagtcat tacgcgtgtt
+     2341 agcttcaaca tgcgtggaag tgaaacggat ctataaaacg gcgtggagtc atcagcttga
+     2401 gcagatctaa cttactcgcc acgcgcgcaa atcgtctttc gctgtccacg ttatacgtaa
+     2461 ctcgcttgag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_G.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,36 @@
+LOCUS       part_G                  1119 bp    DNA     linear   UNK 25-OCT-2019
+DEFINITION  .
+ACCESSION   part_G
+VERSION     part_G
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     GoldenGate      1..13
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     GoldenGate      1107..1119
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+ORIGIN
+        1 tggctaggtc tccggaggaa cttctatggg acgaaagatg cgcagctcga caaatctcaa
+       61 attggaaacc gtctaaggtc tttgagccca cgctaggcca ccgaatagtt gcgagctcgt
+      121 gggcaattgc tggctagcgg tttgtatcgt atacgtaaca agagattgcg ccggattcat
+      181 tcgtgtgggg tgctttcaca tcggaatact caagagtggg ggtttgcgct ttaatatgac
+      241 ggcctcatgc accccaaaaa taagagcgcc aatttcatcg accacattcc ggacaattct
+      301 gacttccctg tcggatcgac cctcgctcac aactcctaga actccaagac ggtaggacgt
+      361 cagccgaaaa ggaggagtga cgacgggccc tcctagctga agcaatgggg ggcgtcgacc
+      421 ctagcctggt gtgggacttc ggagggtcgg gcgtgtggcc attcctgcac gaggggccct
+      481 tgcagtatcg aactttgacg agaaagtggg gggcgaccta taaacatagc ggagttcaat
+      541 actcctgcaa gtgcatgatg acgttcagcg ttggcacatc gaacgcgtcg ctacacttgc
+      601 tcaccggaag gcaaaataga ccggcagctg gcccgcacgg acgtctagac tcctacgctg
+      661 tcaaatgcac gatgactatt agcatgcgga attcgaggcg gccggtacat cgagacacgc
+      721 tggtcttaat acctgtgtta tgtcaaaaca agtgtctcgg cggctttgta ctacgctgtg
+      781 aatgcgcatg atgttgcgag aagctgaacg ttggtagcag tctacaacag aaccgacgag
+      841 ctacggacgg gttacagcag gatcccctct taaggcatta ttcgacgact ccaggttcta
+      901 accgatcagt aattgcctcg gatggtcgta cgtgttaacc gagacagcaa ggcaccacat
+      961 agacaactgc atagggcgcc tacaggtcca caatcagggt ggcccaagat cctcaaagac
+     1021 ttgttgcagt ctctgcttat tccgtttaac acgttgtgtg agctctagct tactacctca
+     1081 tcggtgtcgg gagtgattta ggaatgtgag acctagcca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_H.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,109 @@
+LOCUS       part_H                  4246 bp    DNA     circular UNK 07-NOV-2019
+DEFINITION  .
+ACCESSION   part_H
+VERSION     part_H
+KEYWORDS    "creator:militzis" "marker:SmR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     primer_bind     1966..1982
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#a020f0"
+     terminator      3774..3860
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(63..651)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     CDS             2015..3667
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     promoter        1987..2005
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(744..1535)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    3667..3670
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     terminator      3952..3979
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     primer_bind     complement(3694..3710)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#a020f0"
+ORIGIN
+        1 aacatggatc cgttacacaa ggtctactcc gcgatgtggg ctcaccccct agatcccttt
+       61 tcctaccgcc cgatcgcaaa ctacgcgtag cttcacggct ctctgtctgt cggctgacct
+      121 gcggctcatt tttcatccat ttagtatagg ttgcaagggg tgtgactgat ttctctacat
+      181 aaagaagcct atagtaccac atgcaatgcc gatccggtga gtgctgtagt ccttattccg
+      241 gcttggtggc ctcctgccac ttaggatcgc aacggaattc tagttcctaa cgtcccttct
+      301 acctgattaa gtgagagaaa acggaaccaa cctaagacat ctatgcatcg atgttttaca
+      361 atgacgagag tgctccatgg ttcatactgg ggacatagtt tcgggcattt aggcccgcaa
+      421 gagttcgggt atctagtttt tccgtacgaa aaacaccacc ttagaacagg tcacacgagt
+      481 acagagagta aacccgtaat gttttcaccc attccccgat ttgactgcaa acaaacaagt
+      541 ctccccgtat cgcttcattg ttttatcaac gggggcggaa tcgtagacca ataattaacg
+      601 acaactctag gcttttcaac cgacgggggc aaagtctgaa atgcctgaga aaggcacaac
+      661 gacggtggga ggggcccctg caaatattgt tctagcactc caggattcac accaacctcg
+      721 gggccagcca ttccggtact tttggttata cggcaggata ccacgtccct aagcggagta
+      781 tacacggagt tgccttagcc aggtacccgc ttaaccgtcc aactcccctg agtggtacgt
+      841 ccatcacgcc gcgtaaacgg tttccaaaag agtaagctta ggcattcctc acctgtcacg
+      901 tccctcttaa gatccctgcc tcgaactggg atcttgtaaa aatgtggcca tgggagcagg
+      961 agttcatgtg gggcgacggc gatcggacgc ccctttaaac cagagccctt gacgctagga
+     1021 gatcagtaga gttacccgga atgagatctc taatctaagt ttgatacgac gaaagcggcc
+     1081 tgacgggcgc tactcatgct cttagaatcc gtcacttatt ctgccacaga tccgaggtac
+     1141 tgtggatgtt atttgcggag actggcctcg gattaggggt actaagtccg agatgtcatg
+     1201 agttaagccc aattcactag ttgcattgtc aacgagtgga cctccaaaac gatgttaggg
+     1261 tcactacccc aagcgagcac ctccgctagg accacacacc cccactttca aggtattttg
+     1321 ttcgcatcac ataccgtctt ccctttgcgg tctaatagtg aagcttggga caaggaacgg
+     1381 ccagtcgcag caatactacg agtgagagtc ctaggcgcaa ctacgtaggt tccgcaaacg
+     1441 tgttgtggat tactgttgag gtttgagttt atccggaggg ctgtgtaaga attaccagct
+     1501 agtcaaaagc cctgcatggc ctgatctcat tagatacctc ggccgggccg aggcaaatcc
+     1561 gtgaacaaaa accatgcatt tattctatca tagaaacatt tgttacacat ctactggccg
+     1621 tgtgccgtga acaagaactc aatttagtta tcaagggact gctgtaaacg gagccgcgtc
+     1681 acccgcgtgc acacgtgtag tgcttacgcc ggcccccgtc cagcgacacc gtagtcaagt
+     1741 aaaaaatgcg tattcacgac ctcacgtacc cgtttcggag ggtgccttga cgcatagagt
+     1801 tgtctgtgtg attggaattt gtaaggggtc cgcccatgta aaatagagcc catgtcttac
+     1861 gaggacatga ggaaacatag gttctggtgg ccttccaaga agctgcctct acactccttc
+     1921 tctttaatca ccgaaaacct taccttgaga ggacgtcatt cgtcaaaaca aaatattggt
+     1981 ggcaaattaa gattaccact ataggcggtc tcaaatggaa gacgcgttta gtcttcggcc
+     2041 cccagacggc accggcagag ccactgccaa tgccttttac gctgaactct tcgactttgg
+     2101 catgtgcgac tgactatacg ccgatggccc taccctgcag cggaaaggca cagggccaaa
+     2161 aacagtggaa gcgcaccgct agagctttac taaatccttt agggtgaacc ggtgttcagt
+     2221 caacagaaac atatgactag tccttaatgg cactactaaa ggcggcccat ctcttttgta
+     2281 ggtcacgtct catcgtttag caagcgtccg ccatccgagg agtatcctag tacgtgagag
+     2341 ggtgttttac ctcatcacat ggtttttggc tagatgtggc agatgccagc tgatacctta
+     2401 caacccgcta taacggtttc tggatcgacg atacaacctg cttcggcata tcataatggc
+     2461 ggcctcatag gacttccaat catggttatg cgagtttgat gtgttgaaga ttgtgagggg
+     2521 aaaccttttt ccgagtacgt tgaatctgcg actgatggtg aacaactcat cgagagggat
+     2581 gtgcgggcag tctccttgat gcgcgaaaag gagtcgcgac cgcgtgttcg tgacgcactt
+     2641 gatgctagac cgtaggggct cattatctcc tgaaacagta gctagctttt ggtgtccgag
+     2701 tcagcttagg cacagtaatt gaaaagaagg aaatgcgtga aaactaaacg tagacactcc
+     2761 ttgctaagaa ttccctggtc tttttcgagc atagactacc gtaggtaaaa ggcttgtcgt
+     2821 gtcacaaata gacttgatct gttcggcata tacacatcct actgcttcag taaccaagga
+     2881 cgattctccg gccattggac tgtgggacca cccgcgttca aacggaatcc tctacgaacg
+     2941 gttaagaaag gagcccactg cttgcggaga catatcgttg ctgagtggta caccggtgag
+     3001 tcaaaaagta ctgacactac tggtggactc tcgggtacga tgtgtggggt attggcatac
+     3061 tatggcgcta agcgtggaat agtgtttcca atagcccttt acctaagaag cattctgaca
+     3121 catgggttgg acttttacac agacctataa ctcgtatccg gcctggtgat gtatgtccgc
+     3181 ttatcactga atgcaggatt ccgccaattc cgctcgcggg ttctcggaca acgggccatg
+     3241 gagatggatc aatgagccat gttgattacc atttcactac acacggttag tcaattccgg
+     3301 agatcataat tcgacaattg aatatgcgtg atacgctttc tgttaccagg atcgttgcta
+     3361 attagtttcc aatgtcacag tgttgggcgg cgaggtatca cggcgctctg ggtagaatgg
+     3421 cggtgcctga ctggacctca taactggtaa catacctatg accaaaggag gtcagacacc
+     3481 gatgagtcgg tgacatgggc ggtcacagcg tgccctgcat agtaatacag ctcgtttcta
+     3541 gacatttgtc ctaattcgcc acacaagtac gagagcgggg gtaacccatc accatcgtgc
+     3601 ccgtaggtac ctaatcttca tcgagcgcta ttgttaaagt ggactcaggg atcggcatct
+     3661 cgtgtagctt tgagaccggg gcccgaggat gtatgccttg catggaactt gactaatctc
+     3721 agtaatactg gccgtgtatt ggtgtgtctt ccttggcctc acatgggaac attaccacat
+     3781 ataacatcat ggggttcagt ctattactaa cgaagtcact aaaacgtact cgacggcgca
+     3841 tgcgagtatc gacgtagcgg ttggttacct taagctgact tggtctatgc atacactgat
+     3901 tagcttgtag cggtggcctt cgacgtctgt atcgtaggcg ttgtttgttg caaacacaaa
+     3961 cgacctagcg tcaagacccc ttctagagaa agagagtgac gactcttgtc agttcaactc
+     4021 tgtggtacgc cgctgcgaga tgcgcgttgc cacggcagac cccatgaact cgttcaagct
+     4081 aaactctagt tcacgctaca tgtgtttgtt tctgcgtacg caaaagtact aggtacagct
+     4141 atcttttggg ccccaagtgg gaccacactt tcggtcttcc tagcaaggct ataaaaccgt
+     4201 atggcatgag tccttgatct gcatttcgtt tagacagagc gagatg
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_I.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,69 @@
+LOCUS       part_I                  2396 bp    DNA     circular UNK 29-OCT-2019
+DEFINITION  .
+ACCESSION   part_I
+VERSION     part_I
+KEYWORDS    .
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     terminator      1991..2034
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     terminator      10..67
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(262..850)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2054..2388
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     CDS             complement(1148..1807)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     terminator      1033..1127
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 accctgcagt ccgcatccaa gcttgctggg gcctctatcc gggacctgct tccgtacccc
+       61 gtccgcctat caggctaacg actctgcctg ccattcaggc tcaccggcaa gttggagtga
+      121 cctcttcatc gatacaaata gcgcatacgc cagacatacc gcccacgcac tcgaccataa
+      181 aattccccgt cacggcgcgc acctccacac tccgtggcct aaggaacgtg gcagccggct
+      241 gggccacttt ttagactacc atcggctcat ttttagaagg ccaccggctg tccgtcaatc
+      301 gtacccgttt aggcctcctt aacacagttc cgaatagtta cctcaagatg cggatacagg
+      361 atggctcccc caggggtcta gttcagtctt ttgtcgcctg cgcttgaacc tttatgcagc
+      421 gatccacaaa cggaacaccg agatttgtat ttgggagggc aggctttgga ggaacggtgt
+      481 atgtactttt gcttggtacc ctaggtaccc cacgatctaa tcggtcttcc tgacaggtga
+      541 cagaggaggc cgtaactgcg accacaggct aactgcggcc ttaacttatg gtcgcgaact
+      601 gcataagggc gtcgccgccc gttgtcagtg cgaattctgt tagtcgtcgt gtacaccttc
+      661 cggtctaaca tctcgtagtt actagaagag cggatgggtc ctgtaaagag agcaggttcc
+      721 cgtcttctct cactttaccg gtactggtgt gaccgggtgt gagtgatact gtgattccgc
+      781 tactattgct atgcctgccg tcgtagctag atacgatccc agaacatttt gggctgattt
+      841 caagtctctc cgggattccg taacgacggt tctcgaactg aatagctttg agatatcgca
+      901 atattccttg gttgactctt gtccccggga cacaagtcgt gtgcaatatg tatacgtcag
+      961 tatgctcgag actcctaagg ccgcatatct atgctatcac tattgcctat gcagtaactg
+     1021 gctaagcttg tggggtactt gcacatgact catgtcaagg tcggaggatt cccagacagt
+     1081 tggcatcatc agtgcgttca aggcggggag cgaccagcca gatattgatc gacgaggtgc
+     1141 cacgaagtgt tccaaggtta tttttagtat gttacatcca tcagcgggtc taggccatac
+     1201 cggtctatat tatggtgagt cgtataggct gtaatgccgg ctgcacaatc tacggccgat
+     1261 tgcacataaa atggtcaact aacgacaagc tctgattctc aacttggata aaccttatca
+     1321 caaaaggtcc gacacggttc agccgaggta aatcaaagtg attatgactc caggagcgac
+     1381 acaaagttgc actgtctact gttggtcatc accgtactgc aaacgggtaa agatacttag
+     1441 ctttgttagc tattgcagaa cctaattgct ttcctgccct aaggcgatcc ggatcctcta
+     1501 tttatcaagt taattatcag agcttagctc aagtcaaagg tcttagtcag gtatggttta
+     1561 gtcggcttat ctcgctccga taaacccctc gcgcctcgga ttcattcacg cgtttatatg
+     1621 gtgaggggcg acccgtaggc tagtcgcact cctcggcaat taatcctaca gaaacctaga
+     1681 catgggagtt gcgatcctcg agatacggcc tgagagggtc ggcaaagtgg gtgcttcatt
+     1741 ctcttcggcg gagttcgcag gctctagaat gcctggtttt catctcgaca taaattacga
+     1801 tgttatctcg tgcattatta ccccttttct gcaggtttta agtcgagtct agtcttacta
+     1861 acgctgttct tcccgagaag gtgtccaggt tagatctcgg catattttca ctggcgcgct
+     1921 atccgacagg aagacagcac ccgttaagcg ccccagtcac atcaagatca gtcctatgtt
+     1981 gactcttgct ggaggtcttc tcgaatccag ctaatgttgg attacccgcc cctctggaat
+     2041 tcggtctctg cttttattat ccggcatgca tgcggcgttg catcgcttca tcgtcatcga
+     2101 catatcgtta gcgggactta tcagggtccc atcacggctg tgacagctgt tcataagtgt
+     2161 aatagcagtc accccaccaa atgcaagact gttcccaaac taagtgctag ggaggttggc
+     2221 tacctatcgg cgtggcagtt gaccgggttt ttcttagtac ctgccttcca atctccgata
+     2281 aaagcaagat gacttcctgc ttgcgctaaa gtctgaattc gctaaggggg cagattcatt
+     2341 accagagact gccaaagtca accgccgaac gatactggaa tatatggagg tatgag
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_J.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,196 @@
+LOCUS       part_J                  4380 bp    DNA     circular UNK 31-OCT-2019
+DEFINITION  .
+ACCESSION   part_J
+VERSION     part_J
+KEYWORDS    "Source" "Sequence" "Freezer" "Shelf" "Box" "Concentration" "Use"
+            "creator:SynthSys Center" "marker:SmR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     rep_origin      join(4298..4380,1..166)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     promoter        1442..1476
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#85dae9"
+     misc_feature    2345..2362
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(2550..3341)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    1187..1210
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1366..1396
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(2550..3455)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    2421..2449
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      3766..3771
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             167..1186
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#993366"
+     misc_feature    2526..2549
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     gene            167..1186
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -10_signal      3744..3749
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             1503..2222
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    1409..1426
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     -35_signal      3589..3594
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      2227..2298
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    1319..1343
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1370..1394
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     misc_RNA        3625..4177
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      2314..2341
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2364..2474
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_RNA        complement(3628..3735)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    4264..4272
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     RBS             1485..1496
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2353..2356
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    complement(2476..2516)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    3539..3562
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1427..1430
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     -10_signal      3610..3615
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     misc_feature    1211..1258
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     gene            complement(2550..3455)
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     rep_origin      3589..4177
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    1414..1419
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    2388..2411
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     terminator      1409..1411
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2357..2362
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+ORIGIN
+        1 ctcatgggag tgtagcgcta gccatagttg acctgtcagc cggtcaaggt tggtccgaac
+       61 ctagccagtt agacgaccag ctcccccact attgcacagt gcctgtataa gcacgtcagt
+      121 gtctggcacc actgtgcgcg gtgtggtcct cgggacgatc ttcctacggc tacccatgcg
+      181 ctagtgatta cagacgatcg ttttttcttt ttctgtggtg caaatacaca agatacgtca
+      241 agagtcctag cagcctcatc ttgccaattg caggggtacc gattcaccca tggtatcagt
+      301 cacgcaaaaa aagacgacat cggagttgct ggcgactggc aaaagaaaac atctatctgc
+      361 cgtggcgttc gtctagcgca gcgagccgac tgactactcc gttatctcaa atttagtttc
+      421 gtaagatctt cacgggagcc ggccagctga agaatctata ggtctaccgc tagaggaagc
+      481 ccgtttacaa ccgacgtact agtccgacag caatcgtcag catgccaatt tattgtatca
+      541 ggttgagaat gcaccactac ggaatcgacg tgccactggc cgcacgatac tagtgcgctg
+      601 gtaaacaggc caggagctct aaatctggag tggtgtgaat ttaaccgcgg aacgattgtt
+      661 gcacgcggtc cctgtgactc tgttgggagc actgtccccg gctccggata agtgatgtga
+      721 acgaaaaggt gggctgacca gagatagggt taaggacggg cgatcgtagt ggacgattac
+      781 tgctgatctt ccgagcactc tgagtcgcgc ggcgtatcgg gagttacccc gctcgctaca
+      841 catctgaatt ccgccggata ctatgggtgc agagtggatc accttttcgt gacccgtata
+      901 ttcgtcgttc tcatcactgt cctccgcgat ttatttcaat cgtcggtttc gccagatgca
+      961 ttcctgggga agtcatcgcg acagtgcgct gcgcgcacag ctcttcttgg tttattcgag
+     1021 attgtggttt atcaacatgg tctatctacg gactgattag aatattccca cgttaagccg
+     1081 acgtgcattg gtactggctc cttaattaag cgcagagggt aggcgccttt tcttgtgcaa
+     1141 accattatat gaggaactag caaacactat ggcgcaatat gtccacgtga ctcgagcatt
+     1201 ctgtgttgcg gtagcgattt cactagtcac aaacggatag attctacggc gcacccggtg
+     1261 catcgttgta tgttcagcaa tttggtcata tcccgctcct ctattcaatc tcttttttcg
+     1321 tcaggggggg cacatacttg gagcagctgc gcctaacatt acaataagca gtcggagctc
+     1381 agtacaaaac ccttatctta gcggtccgtt ctggaattcg gtctcaggag atatgcaggt
+     1441 gtttacggct aggcacttac gcgaaatttc agctcgcggc aaactgtgct tatgcgactt
+     1501 cagctagtcg tcatcgagtg ctgacgcgct tgttctacct taaggtgccc gctatcgcat
+     1561 tgtccagggt tcggctatga gggtcggaac cagatcgcac ctacatgatg tcacgatact
+     1621 attattcacg tcgttagaga acggacggtc cttcgtcctc acaggaaaat tattagaaat
+     1681 ggtcaaccgg gtccacaaac gggcaattgc cactttggta gtacggttgc acataagatg
+     1741 atatttacgc cttctgcgtt caggttacga tagtcgttga tggggctcgc tccgggtgaa
+     1801 gttgatccag taaaatgggc gtcgatactt ctcctgtgag ctaagcgtct aaattcattc
+     1861 ctagtctcgt gacgagaaca gaaaagacta aaccacgcgt gatggacctt ggtaagcgct
+     1921 tgtcggtcta acttgtctca tctcacacgg tatgttcttg tgagcgctga ccagcccgtg
+     1981 tccctgacgg ggaattcatt ctaacttacg gcttgggcgt cgtgatgttt cggaatccag
+     2041 gatattacac agtagatgta gcttgtggcc gaacgagtgt atttcctgcg tcggattacc
+     2101 tcatttcttg ttaatctgcc tacaattaag ccctttcagc agccttccct ctcgtttata
+     2161 tttcgacagt caccgtgaca gtgtgatcga gctgtgggaa aatcacaata tagacgttag
+     2221 ttgcttcgac agaaacggcg aatgtacgcg gttgtgatgg atgagacagg ccattcaatt
+     2281 ctattcagcg aagttcagat tggttgctac tgctaaagga tgcgcatttg tcctttctgc
+     2341 gcacctgcat atacccctaa gatgccagcg caatacggca tcgcagggca agcaacaccg
+     2401 cacagcatgt ccctaaaggg aagatttaat acggactcag tcaagttgtg agaaacgaca
+     2461 atacattgag tggaatgccc tttggtacgt tggcgataga tctaacgaga aacttcaacg
+     2521 agatctagag tatcggactg agatgcatca tggctaggga ttgctgaatg gatatctttg
+     2581 ccaaaatgag ctcgactagg aatctcagac tgccagctac gaaaagctgg gggatattca
+     2641 tttccgctct tgtaaggcgc acgatgaccc tgtggagcaa aattcgacgc ggcaacgtag
+     2701 tcaaagtacg gcctatctgg gacggagatg ggattgtttc tgtattcatg ccggcctctt
+     2761 gagattgtaa ggatacccgg ccacagtctc gtaagaaacc cgatatcgct caaacgaatt
+     2821 gacatcagtt agggcttgcg ctctagcaac cacgcgtcgg gtgttcgact gaatttaaga
+     2881 tccagcgcaa accattcctt aaaggcggtc caggtgaaac cggctctgat aatgtacagt
+     2941 ggattgtcca gttcgcttca aagtgcaatc aggcaaggta ctggcaagtc accgcttggg
+     3001 gccggtttca gtggagcttt atcgacaaaa ggccgggccc tttggcctag agctcacttt
+     3061 tggtgtcgtt cacgagtgag aactttggct cgcagcttga atgcttgtca cgtttagggt
+     3121 tatacaacgt ttctataaac tacctatgac aaatcccgat cttctgaaac tccataagga
+     3181 ctaagagagt ccgcgacagt ttcacttggt cggtgctatt gactatgtca cgcatgcccg
+     3241 gtaaagcttt taagcaaagc ctgatatatc acgggaggtt actcaaagca ttttctaaag
+     3301 ggacagcgga ctcacattag cctaatataa acccgatcag gccatgcacc tcgattcacc
+     3361 ggaaggtagt accatgcacc ggatatttgg gacaacagtg aatagtacat cgtaaaatgt
+     3421 caaggcctag ctatttttca ctggtgtctt atctctatta caacacacac ggatgtcccg
+     3481 agcctacact ttcaaatata ctcaaggttc gctgttaagg gtaatacaag agtgctcggt
+     3541 ttagtatcca tatgttggta caagtgactg tgctagccgt aaattaattc ggcttccatt
+     3601 ccagcttggg tgtttagggt ctagacggtt gaaaccagaa agagtacaga caaaaccgta
+     3661 gctctcccaa ggttgatcct ccagacacct acccacacta gtagcgcagg cctagaggag
+     3721 acgttaggag cggaattgta cattcagtat cgcattaagc acaaagacag acaaacctag
+     3781 aagccactta tcccctcgta ggagtacaac ggcagcgctt tcgggaggag ttgcctaact
+     3841 acgctctgga cagcaagtcc cagaatgaag aaaatgactt ggcgagaacc caccactaca
+     3901 tgcagggtct tgggaccggt cagcacagct tatccatgcg gcaattccgg acgaccgcga
+     3961 atgaggatca cgacactgcc gatgttgcac cattgacctt ctcctatgca acaagggctt
+     4021 aagatggtag atggtaatag agtagcctgc gaccttatgc ggtaatacac aaaaaccggt
+     4081 aaacagtgcg ttgatgctgt gtgctggcgc atttgtgtac cttgctgggc tcgtataaaa
+     4141 ttctgtcagc aggacgttca cctcccttct gctagtcgct aggcacaaac ggaaaaggtc
+     4201 taatcgcgcg cgtgctcgtt agagtactgg ggcctcccac cacggatgat cacctcgccg
+     4261 atacatttgg ccttatgtct caataagacc tcatggtcta tcctacacca tagatttgga
+     4321 aagtctagtt gctgcctagc aggctgatag caagcgtcgt acgaggatcg aggaagggca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_K.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,108 @@
+LOCUS       part_K                  3634 bp    DNA     circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_K
+VERSION     part_K
+KEYWORDS    "creator:SynthSys Center" "marker:KanR, BlpR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    1268..1284
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#b4abac"
+     CDS             complement(join(3199..3634,1..380))
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2374..2377
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     misc_feature    2395..2419
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     promoter        1382..1560
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     misc_feature    2370..2373
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2389..2393
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     misc_feature    1239..1261
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#f8d3a9"
+     rep_origin      complement(2510..3098)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     terminator      2117..2369
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             1562..2112
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     rep_origin      671..1106
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+ORIGIN
+        1 accagacagc ttccctgctg cttagagtgc catggggaat tgatctgtgt tcaatgactt
+       61 taccataagc gcgcatcgtc attgcatcac gtgctttatc tctcgtagct agtagggaac
+      121 aagagtttgc gaccactggt ggaatttcta gccgctatgt gaaaagtcac tagtagtatt
+      181 aatagtcggc acatcgcgta cgcagtgctg agattcccct cactgttact tgagctagtc
+      241 gcgccttgac agaccgcctt tcgaaggtgg cagagtgcct aatatattgc cacgttgagc
+      301 gtactccttc ccggagtttc atcttaccgc cgggcgcgcg aagctacgtt tttcgaattt
+      361 actaacgcac gctgacggtg gaagggcgat tggactggtt agattcaggt atgccttaag
+      421 cgtactttac aaccagaggc tttatttgat tgtctaatct tcgtcaaaga acgaatacca
+      481 gcgcttgagg ggtgactaga ctaataggag acaccgtctg tatcactcgt cggctatggc
+      541 cgtactgtga acgcgacggg ccctaccagg ccacagattc ctatgtacgt tgcaagggtg
+      601 ggctttgacc gttgcaacgg cgcactaggt ggcattcttc tctgctgcca atgatccgcc
+      661 tcgccgagct aggggcgaag caggttatga cgcagcggaa cggtagtact atctaatatc
+      721 aactaaaatt gtttctcaaa ggttcaaact agtattcttt attagaaacg atgatggcat
+      781 ccggaacagg gttatggccc aggtgctgga tgaagccttg cctcgaggga cttagtcgcg
+      841 tcgcccctct accaaggcgc taacggctag cgagatggtt gaggcgggag ccccgccact
+      901 ttctagttga attcagagct acgtatcctg atgctaatcc ctcgaagaac tttccgatgc
+      961 agctactatc tctttcgtaa agttagaata ggaacccggt aacggtggaa cgtcccgtca
+     1021 taggaggttg tctcctacac tatctaagta cgtcagaaga tcgatttcct cagccgctga
+     1081 ccccgtccgg catgaccagc gccgaacgta taggccgtat tgctgccgga acgactgctt
+     1141 caaaggtaac catagccgtg gtacagtgac aacccactta gctattaaat catgcgcact
+     1201 ctagacctct tgcacatacg gagcaactat gtatctaatt ggcacgagac atagaggagg
+     1261 gccaatcaca gtagtttact ggtcgaattc cacctgcata tggagagaca ctccttcatc
+     1321 aacagcagag gttacatacg tttaacctga ccgatggttg cccatcgaaa gcaaggaccc
+     1381 acgggtaggc agctgttgtt tgatatgctt ttgtccccgg aaggcgccga taaaattata
+     1441 cgccgtcccc cgcgtccgtt acgagcttcg tgatgttgcg ggctgaagtt ccctacgagt
+     1501 caataggcca actcgaatgg ctaaatggtt gcaacccaca ggctcaactt tgaaggtaat
+     1561 acgccaaaat ccaatatgct ctttcgggta gcgcataaaa ccttctgggg gccactgcag
+     1621 acagtcatgg aggactacgt gcaacactac gctctagagt gatgatgtgg cagtcaaccg
+     1681 agggctgtta agagaagtct gtgcacgaaa atcaatgagt cggtgtaatc ttcaccttcc
+     1741 tacaaaccaa ggcttgaggg cctcaatttc gagcaccact tcttgaccaa gccgttcgcc
+     1801 ggtataggag ttacgaattc gggtcgtctg ccgtctttga accatagata agtacctccc
+     1861 gagtcgggag aacacgaatc gcatcagaac tcatcgaagg gtgttacttt gcccatcggc
+     1921 atccccgaag attaattgca ttcgaaattt taacttcgag aatcatccgt gctaaccaac
+     1981 gtggacgagc tatgaacgtt tacgtgttca gtatctagga attgacacgt ctccgatagc
+     2041 gggagtcacg gcatgagtta cggcttttgt gaccagcgtc tgtgtaattt tattgacagt
+     2101 ttcatatata gtgtctcgtc ttgcctttga gattcacagg ctgtaagagg gatgccgtcg
+     2161 tgtatatgcc tgcagttaga gcttccttgt caggacgagc aactcactcc ttctggtgat
+     2221 gctttgctag catgtagctt cgggtacttg cggaaaagga cagcctacag tgtctgcggc
+     2281 ggtacgtcac taatatgaca tacgctgtgg acatcgtgaa gcggcgaatc gctccagatt
+     2341 gaggtttaca gagtactcca tagtcacaca actcagaata tgcaggtgct gcagtgaccg
+     2401 aatcctctca ggtcgcgctg gcggcccgtt tgagagtgct gaaagcgaag tttatccgca
+     2461 ccgtcatcca gtgcacctcc cccagagaat gattacttgt gaatgcggtt aacctgaggg
+     2521 ccgacgccgc gattaaattt ttaacgtgat gcacaagctg ggggcactct cccctggggt
+     2581 caggttataa ttttaaaccc actacggacc tggactgcaa gatgcttagt ccacgcgtct
+     2641 catagaccgt cggtctatag ccatgttcaa cgccgccagg ctgggcgcat aactgtatgt
+     2701 gactttgtcc acatccaagg cgacgatggc ggcagttggc cggagggctg gctgtcaagg
+     2761 ggccacgcgg atgaagggag ctcatacgca actatggagc gcggtatata gtataggatc
+     2821 cgccgggaca cgcgggaatc aagggacaaa ggagcagtca gcgtgaaatc tttacgggtg
+     2881 aagcgcgctc gtaccaccta gtcccgccta aggcccttgt gtcgtgcaac atcgctgggg
+     2941 cgacggatga caatatgatc aaggcccgag agctttgaat gtaagaggcg tattataaag
+     3001 cctaggtccg catgttgata cggggagcag cccatgcgca gtaggaaggt ccgaccaccc
+     3061 ttttctgagg tctactccaa cctccttgcc gagtgctctc cgctatctcc acgcatagca
+     3121 tactccgctt ctaacatctt cttcaaagca tacacgctac ttagcagagc aaatcgacac
+     3181 gcccatggag tggtccgctc aaaccgcgca attaagtata agctaatgtg acggaccgga
+     3241 cctacgattt cccccaactc gtggggatca gttgactcgt ctcagcttat gagacataat
+     3301 tacggtcata gggtacgcct atgcccctca gagatctcta ggtcatatgc cctatcgggt
+     3361 gctcggtgac cattgtctca tacaaagtca tatttggcag ggcttctatg gacgagtatt
+     3421 atgtgcccaa aagggaacgt ctgagttggg attcgcttct aaccaatact ctaatggtac
+     3481 ctaatttaat gtggtcgctg cgcaccccgc cgggtacaac tgctgagttc ctgagatcgg
+     3541 tacggcaaac atcttttatc cagacgaggg ttctggccag aattgatgtt cagatacgag
+     3601 aaggcatgtc atgtcacaag gattttggag aatt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/2-step-golden_gate_plan_simulation/part_records/part_L.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,79 @@
+LOCUS       part_L                  2267 bp    DNA     circular UNK 28-OCT-2019
+DEFINITION  .
+ACCESSION   part_L
+VERSION     part_L
+KEYWORDS    "creator:SynthSys Center" "marker:KanR".
+SOURCE      
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     misc_feature    join(2263..2267,1)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      2..59
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     CDS             complement(1140..1955)
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#b7e6d7"
+     misc_feature    2206..2209
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2202..2205
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#faac61"
+     terminator      2139..2182
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+     rep_origin      complement(254..842)
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#ffef86"
+     misc_feature    2248..2251
+                     /label="another feature"
+                     /ApEinfo_fwdcolor="#ff0000"
+     misc_feature    2185..2190
+                     /label="yet another feature"
+                     /ApEinfo_fwdcolor="#84b0dc"
+     terminator      1025..1119
+                     /label="feature"
+                     /ApEinfo_fwdcolor="#c6c9d1"
+ORIGIN
+        1 gtccgatgcg agcaccacct atagataccc taatcagcat ggtcccggtg accattacca
+       61 ccgacggcct tgttttaaac gaaggcgctc actatacaag aaactaatgt ctcccacaag
+      121 gctcagaccc agccggtgct ttcagcgctc cccgttggcg ccccccgaag accatagaga
+      181 ggtgctctgt taacaactat aatgaaaggg attattgagg gagtcggagg tgaattctga
+      241 agccttaccc ctacggtcgt ggtcatcatc acggatcgcg ataagcggcc ggtctgttac
+      301 ggacgccact acgaggaggg tttcttggca atcaaggcta cgcattacaa ccatcggggt
+      361 cggtctggct gaacaatctt gatgttcaac ctttgttacc ggctccttgt gttattatcc
+      421 ggtttttttg atctatatgt ttataaggaa gcggtgcaga ccgtagagaa ataccggcta
+      481 aggcagtcgc tcaatgcaca ccagcatcgc cgagacatat aaagccataa acattaattg
+      541 gaatgctagt cacagcgtgt tgactggacg cttaaaagtt tctacaaaag gtatagtttt
+      601 aacatttctc tgagttagcg ctatcgggtc gactgacatc tagaattgac acgttactca
+      661 cctggatcct agtcacactc cgggaaccgc tcgcttagtg gcagtagcgg ggggcgtccc
+      721 taggatagct gcgcaaagcg tggtttatct aatcgtggct tgtgtggaca tgatgctgtt
+      781 caggcgcatc tgtggccgcc acagcattac caagctaatc agaaaccgcg gcatgtcccc
+      841 gcgatgcgag aggcatctgt tagagccaaa gagtggaggt ctgtaatatc gctagcggag
+      901 attttctaag gggcgtggga ctttatcccg atatggctga acgatccaac ggcaaatggt
+      961 tctgccattg aactttaacc atgaatagac tccaggcgag ggataatgga aataatagca
+     1021 ggaaatgaca atctactagg tgcgcactat caagattgta tgtttgcgta tcgtagttct
+     1081 aatggtcttg tgtcccgtat tgggtcggac ggtgctgttc ctgatcgtag caatgcccgg
+     1141 ttagaatcac gcatcggagc gatcatttcg ggcgatacgc gttcgttctg tccactcttg
+     1201 tgggagtccg acgtatgcct gctcggtatt gttttattca ggcgacagta cctcccattc
+     1261 aaatatacag ggttatacta cacaccacga gtaataaaga cttgtgttgt gccaattcct
+     1321 cgtgggactg ccacgctcgt gagcttcgcg gttacatacc cctatgtccc caactgttgg
+     1381 tggcaaatcc ctaatctaat ctattgtatc acagtcggtc aacgactgaa attggggcaa
+     1441 caccaacagt gctcttacga tattcgtctg tgtctaacaa tccaacaaaa agctgttatt
+     1501 atgatggagg atcttggatt gcgtcagtac tacggtgttg tacgagaatt gcatgatgat
+     1561 tcctcgatgt cgagtccttg caagatcgtg atctatagcc aagctgctgc tgtagatcaa
+     1621 cctcaccggg gcgggggtcc cattactatg ggcggcatta gagtaccata gatgaacgcg
+     1681 agcagagaca tgtcaatgta tcccagtcct gcagtactac gtcagtctct gctcctgggg
+     1741 ccaatgcacg cctgtagaat agggccgtgt tcccatgaga aatttgaggg acttacgatt
+     1801 agatggcctt ggcaggggac tccgcgtacg tgtggggatg aaccggcacc ggccttggcc
+     1861 ctgagtaaat gtaagcgata tcaacttcgc tattcatgat cagtggtatt cgtgtaggca
+     1921 ccgaaagtcc cttggcgaaa gtagagacat acgatacgga ccgcaagcga gcagaatttc
+     1981 agcacatgac agttattagc ttttttctaa tggtgctccc attatgattg tcaagtcccg
+     2041 actgctagct gtaggatgaa acacatccac acacgtgtta ccatactgat tttgacacta
+     2101 cttcctaacc gggccgaatg gtatctgctg cgatgcttag ttacgtaaca gccgaatgtc
+     2161 acgccactgc atattgtggt tctggaattc cacctgcata tgtcacgcta gagaccgtat
+     2221 gaggtgggcg gatagtggtg acttcaaacc catatgcagg tgctgca
+//
Binary file test-data/init/example_assembly_plan_simulation/Report.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_1/construct_1_connections_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_1/error.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+assembly_name;message;suggestion;data
+construct_1;Wrong number of constructs;expected_: 1,found: 0
+construct_1;Some parts are unused;unused_parts: partA & partB & partC & receptor
\ No newline at end of file
Binary file test-data/init/example_assembly_plan_simulation/construct_1/fragments_in_construct_1_homology_mix/partA_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_1/fragments_in_construct_1_homology_mix/partB_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_1/fragments_in_construct_1_homology_mix/partC_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_1/fragments_in_construct_1_homology_mix/receptor_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_plots/partA.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_plots/partB.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_plots/partC.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_plots/receptor.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_records/partA.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,95 @@
+LOCUS       Exported                4022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partA
+VERSION     partA
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 4022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..4022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..1001
+                     /label="pA"
+                     /label="nonstandard type: annotation"
+     CDS             1123..2022
+                     /label="AmpR"
+     misc_feature    3023..3522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaatt gtaagataga acagggatat agctcgttgc atccataaat tgcccaccgt
+       61 agggagaacg ccgttggaaa atgagagtta ggcgatgagc ggttgtcgcc cgcacagaca
+      121 aaggatgcct ttataaatag tagcggcctt gtctgcacca gacgtttgtg ggtcgacgtg
+      181 ctattctagc caaaagcaaa atgtatcata ctacaggcaa taggccctat gctgaccaaa
+      241 cttggggacc cttgcgcctt ctctcttacg cataacatgc ataggtacct ctactcatca
+      301 ggcagggcgg cgtgaggtca ctatggctca agatgtgtac gactaaagaa aggtttatgc
+      361 tccttcccca aggacgcatt tgggactgct acttgcccct agcgaattca ctaggatttt
+      421 tgtagaacca tgagcgccct atccgatagc acagagacaa tgctacaagc aactgtgcat
+      481 gcgctcgatc gccgtgcatt aatacgtatt atagcgtatc gtgtacgcta atatcttagt
+      541 gcaccgcacg ctggttggat acaattccgt gaaataattc ctgcttacac aggggctttc
+      601 tggcgcatgg ctgtgtctgg atgtttgtga taagaggctc catgaacccg gcgggaaatg
+      661 aggggaaacc ccggggagca acgacactaa gcctggcagt tgttcagata ggacgctttt
+      721 gtcagtgggc ggttttgcat ccactaacta tcataaacga cacaacgtcg aatgatcatc
+      781 ggcggtttgc atgtagagac agctcctgca acaccatacc ggctcgtgga attacgctgt
+      841 gcgccggccc tcattcgatt gtgtccagcg tcggcgcgaa tgatgattga gatgtgcttc
+      901 ggctcagagc gtgcacaggt agttctcccc ccttacctag ctgatccagc aattccacgc
+      961 tggcccgcgc gtccttgggt aacactggat ctgtacccaa atacaccgtc gggctagaga
+     1021 cgctccacct gcgtctatcg tacagtgcta aaatggcagc agatagtgaa acttccgcta
+     1081 agctagcccc tcagggtaca ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt
+     1141 tgtcggggac ctgccgtcac gcttccgagt gtatatccgg atttagttga cgtcatacag
+     1201 aggcactaag aagaataaac gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct
+     1261 cccttgcgcc gttcggcaag cgtccggtgt cgggctgcaa ggaataaatc tttatggacc
+     1321 agaggggctt gtttcctcat atgggtgcgt gcacttatac gattcaaagg tggatatggc
+     1381 cgcataacac gtagccaggc tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg
+     1441 tttttgtttt tcctttacga cacgaaccgc tctaacctgc tctatttcgc cacgttccag
+     1501 tgaacctctt agcctaccgc ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg
+     1561 gagaaatcgt tcaatattag aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc
+     1621 cgtttaacgg ctgccgtggt cataccgtga ggcaccacga ggggatgcta cgcaacatgc
+     1681 gaggtgtaat cagcagggaa gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat
+     1741 atgcataagg tgtcatttat attacaccta cgacactggt accggctcac agccaaatgc
+     1801 acagtctcaa gatagaattc gcaaaaatta ggcttatcgg gcgcttactc tttgttacac
+     1861 ttctggtctg tgagtgacgc cctgtgtccc atcactgcat gtgaggatgc gtgtactgca
+     1921 cctgtgaatt acagacgttt ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc
+     1981 tctatagggt gatctcgaca taccactatg gtttgcgcgt ttcgggtgct tttggcgagg
+     2041 gccaggtacg gcggtgagac agcgtatttt gcgaataggg tattcggacg cacggtgtat
+     2101 agctcttgga aaacgactct tcgacgggcg tgtagaagta gccaagcagt tcggttgtta
+     2161 tcactaaatg cggaccatgt gcagccgttt aggagaggag tctgcaatgg atcagctggt
+     2221 cagattgtac cactcggttg agcctaaggc acttcaggtg ctcggattgt aatgaaccct
+     2281 caggttacgc cgttgcgctg agatcccaca agccataagc aatgagaatc gagcagctat
+     2341 cgaattacgc agcacttgct gatgaactgg gtgcacctaa agcgcccgat aaaacggagg
+     2401 gagtgaggta actactacat tgcgagtagt gcgaggggcc tccgagacta cattagagca
+     2461 gccatgccga atacgacaaa atctatagcc ttgcgaacgt aggggactga tttatggaca
+     2521 acaggaccga aacaagttgg agccacaacg gagctatgga cgttttcact attgatgggt
+     2581 ggcttgcgtc cgcatcccag gtttctctgg ttaattttca tgacgattct ttgtggtacg
+     2641 atccaggcat aagatagggc acctaacccg atactgtgaa cttatatgac ggctgaacat
+     2701 gccctaatag tctgccaaaa gggaaaccta taacggctct aaacgggccc cgggtacgta
+     2761 acagcaatgt tcctgtccac caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat
+     2821 tccgttttac gccccagatc gcagctccct tgacagtgtc agttgaatcc ccattctagg
+     2881 tttcctgata aaactaagta cggggacgca tcagtcgaaa gcaatcacag ataatagata
+     2941 tcttgagcag aaagacgtct tcacgaatca ggagcgagtg tcccctttga aagtgcgggc
+     3001 aacaataggt gtgaggtttc acggttgctt gatcagtagc tgttcactct ctcgcaggcc
+     3061 tacatagtga ggtggtgaga ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc
+     3121 gggcacgcta acaaggacag gaattcgggt cgtcaaataa caatttacgt catcgcatcc
+     3181 ctcaagggta aggcgtgatc tccatctcgg ttcccaattg gtcattgtga tagccacact
+     3241 gcagttaccg aaggcgattt tatactaccc tgataagtgc tcgcagcccc tcctccctaa
+     3301 taatgtaacg acgagcatta acccaggagt atttctcacg ttgctcgtgc ccagccaagg
+     3361 cgatcaacgc agaccggata gcgttagcta gcccacgggt aaaagcgatt gttgtactct
+     3421 ttcatatgaa tacagcactc gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc
+     3481 acactggagg cgatgatcta gcccgtcttt caccccgtac ctttatactc ggccgcgtat
+     3541 ttctccaccg ggagctctgc ctaccaaagc gtcgtacgcc caggaagccg tttcctttat
+     3601 cctccctcat gtctcaacgc gcgagcatcg gagagtacgc gaaatcgact gtctggccaa
+     3661 cactggacag acgcgcgaga cactgataaa cccccatttt cgtggggtta gtaaatcggt
+     3721 ggcttcaaac ggttcgatcg ctcgcacgag cattagtcag gagtatgatt gcgcatcatc
+     3781 tctactccgt actaggttct gtagctcagg atctccgggg ggatcaagct tttatgtccc
+     3841 gcgggattag aagatatcca tccatatgtt tactttgatg cgggtccgag ctctctatga
+     3901 tgctgctttg acaaaatgtg gaaagcctca gcgaccgctc tggggtcaaa gctctacgac
+     3961 acgttgatgc taaacaagtt ggactactaa gcaaatgaag cggaagagat actgagcgct
+     4021 ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_records/partB.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,111 @@
+LOCUS       Exported                5022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partB
+VERSION     partB
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 5022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..5022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..2001
+                     /label="pB"
+                     /label="nonstandard type: annotation"
+     CDS             2123..3022
+                     /label="AmpR"
+     misc_feature    4023..4522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaggc ttgattgtta actaccgtat ggcggttacg atcgagtgac actattatta
+       61 gaccgctact ccaagtccca acttttcatc gccatacaga agagaacgag aaagtcgaag
+      121 agttatagcg tgtacacttc tgattagcta acgaatcgat gcgtacagca tactcgagca
+      181 actttatggg tcgtctgtct ccttgtaccc cgcttgacga ggatgtgttt gtaggcggct
+      241 tggatatcgg cagtgtatcc gcatggtcaa acactttagc ccgaccggtg ctcaaggtcg
+      301 aaatcctaat atagattggg ataggacccg tccattacta ggcgacattc gcagtcacga
+      361 gcccgcacgg ggtgcctcaa cacggtgaca ctcaattcgc cggcactgag tacgacgatc
+      421 gtgattgcca taccgtcatg ttttgtgtta cccctgataa gaagcgcaga tatggcacgg
+      481 gggcagaggg cggagtagac ccatgcaaaa ctctagcctc tgggcagcat gatcgacgta
+      541 gaacgccgtt gtgactcact agtttcagtt atgatgttca gccaagaatc ctccattttg
+      601 acgtgaacct tctcccttta caccttgaag ctgcaatatt aagtcgaccc tttaagttgc
+      661 cttgtcttgg tctagagccc gcagctcacc gataaaatga gcagtcaatt ttagcggcgg
+      721 ttgtccaggt tacatgcact ttgggctgga accgcgttac gtttggagta cttagaagtg
+      781 tcgtaggcat aggagagccg aaacttgata ttgggtctag ttagtgctct accccgcttc
+      841 ggatccgtaa tagtgatgtt gcataagacg cttgcctcaa ggcgacatac ggtggcggtt
+      901 gctggaaatg acgccccacc ccgtgataat ttggggacga gccgcacgat aacttctgcc
+      961 agcgaccgcc cctcccacgt ccgatggtga ttccgaattt tgattacatg ccagacacgc
+     1021 tttaatctcg ccaccacatt ggcaccccca ccaagtaatg tatgtaagaa gcagctgcgc
+     1081 cccaagttac gtgccgtttc cgatgggagc agcaataatg tcgatagcaa ccacccccct
+     1141 ctctactgac gaagcaacac cggggacacc gtcaccttgg cttcatttcg tattcattca
+     1201 cctacgcaca accgcctgac cgttcgttat cacgagccta tccccttcaa gcaatttccc
+     1261 ccccttgttc agcagcctac actatacgtt ggtacactgt gtgcgacaga tatttggtgc
+     1321 ccgtcttatt ctattctgag agagtttaat agccaaaaga tatgagtagg aacgggaggt
+     1381 acccgactcg cgttgaagca ctcttaagac ctctcttagc acttcgaagg gtaggtgcgt
+     1441 tcaaagaacc tctgctttta actaagatca aaaggattgc gtacaacttc cccgttaact
+     1501 ctccagagga tccgtagaag tctacaccaa aatacgtttg gtttcgccaa ggtgactatc
+     1561 ggtacttgtg cacgtaacag ggtaaagaat tgaaagcctc aaattgtacg acgttacgcc
+     1621 cggacggtcg ccggtgatag ggtgacgcat ttgcgtttgt catatcattt gggattagac
+     1681 ggagctggtg tacctctatg gacgttacaa aaccttgtgg taacagcctg ggtgccatcc
+     1741 acctagtccg aagtttcctt ctaaccgcgg catcagatgg atatgtacct tatggcgctt
+     1801 cccgggaagt ccaattcttc gtgttgaagg gacagctcta caggcctggc cacttgtggc
+     1861 gcatctaagt agtctaggtg catgattctc tcccttgggg gcgctgtcgt gggtcctgcc
+     1921 gagccacacc ctaacctcac gtcgcaagac ttggtaaata gctttttttt ttatgcccaa
+     1981 tctatttacg taacaatcga catcagagga ggggcagaga cgctccacct gcgtctatcg
+     2041 tacagtgcta aaatggcagc agatagtgaa acttccgcta agctagcccc tcagggtaca
+     2101 ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt tgtcggggac ctgccgtcac
+     2161 gcttccgagt gtatatccgg atttagttga cgtcatacag aggcactaag aagaataaac
+     2221 gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct cccttgcgcc gttcggcaag
+     2281 cgtccggtgt cgggctgcaa ggaataaatc tttatggacc agaggggctt gtttcctcat
+     2341 atgggtgcgt gcacttatac gattcaaagg tggatatggc cgcataacac gtagccaggc
+     2401 tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg tttttgtttt tcctttacga
+     2461 cacgaaccgc tctaacctgc tctatttcgc cacgttccag tgaacctctt agcctaccgc
+     2521 ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg gagaaatcgt tcaatattag
+     2581 aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc cgtttaacgg ctgccgtggt
+     2641 cataccgtga ggcaccacga ggggatgcta cgcaacatgc gaggtgtaat cagcagggaa
+     2701 gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat atgcataagg tgtcatttat
+     2761 attacaccta cgacactggt accggctcac agccaaatgc acagtctcaa gatagaattc
+     2821 gcaaaaatta ggcttatcgg gcgcttactc tttgttacac ttctggtctg tgagtgacgc
+     2881 cctgtgtccc atcactgcat gtgaggatgc gtgtactgca cctgtgaatt acagacgttt
+     2941 ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc tctatagggt gatctcgaca
+     3001 taccactatg gtttgcgcgt ttcgggtgct tttggcgagg gccaggtacg gcggtgagac
+     3061 agcgtatttt gcgaataggg tattcggacg cacggtgtat agctcttgga aaacgactct
+     3121 tcgacgggcg tgtagaagta gccaagcagt tcggttgtta tcactaaatg cggaccatgt
+     3181 gcagccgttt aggagaggag tctgcaatgg atcagctggt cagattgtac cactcggttg
+     3241 agcctaaggc acttcaggtg ctcggattgt aatgaaccct caggttacgc cgttgcgctg
+     3301 agatcccaca agccataagc aatgagaatc gagcagctat cgaattacgc agcacttgct
+     3361 gatgaactgg gtgcacctaa agcgcccgat aaaacggagg gagtgaggta actactacat
+     3421 tgcgagtagt gcgaggggcc tccgagacta cattagagca gccatgccga atacgacaaa
+     3481 atctatagcc ttgcgaacgt aggggactga tttatggaca acaggaccga aacaagttgg
+     3541 agccacaacg gagctatgga cgttttcact attgatgggt ggcttgcgtc cgcatcccag
+     3601 gtttctctgg ttaattttca tgacgattct ttgtggtacg atccaggcat aagatagggc
+     3661 acctaacccg atactgtgaa cttatatgac ggctgaacat gccctaatag tctgccaaaa
+     3721 gggaaaccta taacggctct aaacgggccc cgggtacgta acagcaatgt tcctgtccac
+     3781 caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat tccgttttac gccccagatc
+     3841 gcagctccct tgacagtgtc agttgaatcc ccattctagg tttcctgata aaactaagta
+     3901 cggggacgca tcagtcgaaa gcaatcacag ataatagata tcttgagcag aaagacgtct
+     3961 tcacgaatca ggagcgagtg tcccctttga aagtgcgggc aacaataggt gtgaggtttc
+     4021 acggttgctt gatcagtagc tgttcactct ctcgcaggcc tacatagtga ggtggtgaga
+     4081 ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc gggcacgcta acaaggacag
+     4141 gaattcgggt cgtcaaataa caatttacgt catcgcatcc ctcaagggta aggcgtgatc
+     4201 tccatctcgg ttcccaattg gtcattgtga tagccacact gcagttaccg aaggcgattt
+     4261 tatactaccc tgataagtgc tcgcagcccc tcctccctaa taatgtaacg acgagcatta
+     4321 acccaggagt atttctcacg ttgctcgtgc ccagccaagg cgatcaacgc agaccggata
+     4381 gcgttagcta gcccacgggt aaaagcgatt gttgtactct ttcatatgaa tacagcactc
+     4441 gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc acactggagg cgatgatcta
+     4501 gcccgtcttt caccccgtac ctttatactc ggccgcgtat ttctccaccg ggagctctgc
+     4561 ctaccaaagc gtcgtacgcc caggaagccg tttcctttat cctccctcat gtctcaacgc
+     4621 gcgagcatcg gagagtacgc gaaatcgact gtctggccaa cactggacag acgcgcgaga
+     4681 cactgataaa cccccatttt cgtggggtta gtaaatcggt ggcttcaaac ggttcgatcg
+     4741 ctcgcacgag cattagtcag gagtatgatt gcgcatcatc tctactccgt actaggttct
+     4801 gtagctcagg atctccgggg ggatcaagct tttatgtccc gcgggattag aagatatcca
+     4861 tccatatgtt tactttgatg cgggtccgag ctctctatga tgctgctttg acaaaatgtg
+     4921 gaaagcctca gcgaccgctc tggggtcaaa gctctacgac acgttgatgc taaacaagtt
+     4981 ggactactaa gcaaatgaag cggaagagat actgagcgct ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_records/partC.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,111 @@
+LOCUS       Exported                5022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partC
+VERSION     partC
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 5022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..5022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..2001
+                     /label="pC"
+                     /label="nonstandard type: annotation"
+     CDS             2123..3022
+                     /label="AmpR"
+     misc_feature    4023..4522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaggg caaagattac gatagaaaaa cactcgacac agagtagtat gataaaagtt
+       61 gggacggcat gctggactcg agaagtgtcg atccggcaat ccagatacgg caatggtacc
+      121 ggtcacacct cattctaaga gcagtcaggg gctgtcaggt ctacagggca ccggccctga
+      181 ggcccttggg ctagggtctg tcacccctat ctgcactgac tttaaagtaa ccgagcaata
+      241 agacaatcaa tcgcagggct ctggatcggg gtccgaaggc ggggtgcagt gtctccctaa
+      301 ttgttaagct caaaagagca gccactcgtt ctcgatcctt agtccatcgc cgtgaggtac
+      361 aagcagtaca cccacggaag gcccggcatt gaagatgcaa gaaatagagc actggggtga
+      421 cgacggcatg ctaaggtaag aaggcaaatt ctggaggact gacttcccca caagcggcgt
+      481 aagctcggat aagattggga taaacggacc acggcggctg gatcttcacc cctttgcacg
+      541 gtatgaaaac ggatcaggat tctcttccac ctattgcacc tgctgagaag agagcgctgg
+      601 ggggacgtta cttatcccaa tcgcgacgtc acggacaaca tcgtgttaca ggtcaggctc
+      661 gaaatcctag gcagctggta tccgacgcgc aagttatcta ccaaataagt taggcgatcg
+      721 aaatcatagg ctgtttagtg cttttcttgg tatcatcctg aacttctgtc acctccgagg
+      781 ccgaagcaac tattatgagg acgactcgat gattgtccgg agatgttgca ccccggcaag
+      841 cctagaaaac cccggtcctt tgagttttaa tctaatagta gaagttctcg gaaatcagag
+      901 ctggagactc ggtgacgtta tagaaatgtt cgcacgaaga gcgcgacatg tcctacttca
+      961 caagatgctt tctaggaggg gatctggatt ctcaagccct acacatggtc cgtggtgtat
+     1021 gttggatcgt agtgctttta ccgactatgt cgcgttaaat tgtctttcat ttctacaatt
+     1081 cggggagcat ggggccatgt gacttaggtt cagaaggtgc gagcgggcgt actacgtttg
+     1141 gtggtcgtgt ataatcagaa gaatcggcga tatccgctag caagcaaagt gtccttgacg
+     1201 cttgtggaaa tccaactatt tcctgcctct caagtgttta gaaaaatatc ccctggagga
+     1261 gatatcgctc ctctcttctg cgaccaacac cagttcaatt ccgcagtgca gcagtcctat
+     1321 tccgcatgga tcacgctgac gagatgcggg gttgagacta ccccaaaaga tatgttgaga
+     1381 taaattacca ggatggataa tctggtaccg gtgcgaaagg gtggttacac cagagtcgcc
+     1441 tgatgagctt atgcgcaatt tcaagtccct atgttttact atgaaagtac gaccgagccg
+     1501 ctagcctgag tcaaatagcg cagaatttgg gtcgtggaga tcgcgcttgt taacctggtc
+     1561 taggcgcatc tgagtcataa cggggttata acgactgtca acgtgtgacc gcatatcctg
+     1621 caaggcgaac aaataacgcc ccgcccaaaa tattacattt aagtagttat ctaactcccg
+     1681 gcatgcgggg catttggggg cagcgtgccc attccgcccc tatgcctgtt tcaacacgca
+     1741 accgtagaga ttggctagga tgggttttca cgagccaact gccacattag acatagaatt
+     1801 ccgataagta taagagatat cagcgaggtt cagggtagtt tggaacgaca gccggttcag
+     1861 aagttcagta tggtcattca tcatccgttg tgttgagtcc tttagatcgt ggctttatca
+     1921 tgcatgtctc ccgccagccc tcaaactatg tcgtcacgcg catgtttaca ttatatggaa
+     1981 caaaacgaga ggtagaagcc aatcactatc cggcaagaga cgctccacct gcgtctatcg
+     2041 tacagtgcta aaatggcagc agatagtgaa acttccgcta agctagcccc tcagggtaca
+     2101 ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt tgtcggggac ctgccgtcac
+     2161 gcttccgagt gtatatccgg atttagttga cgtcatacag aggcactaag aagaataaac
+     2221 gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct cccttgcgcc gttcggcaag
+     2281 cgtccggtgt cgggctgcaa ggaataaatc tttatggacc agaggggctt gtttcctcat
+     2341 atgggtgcgt gcacttatac gattcaaagg tggatatggc cgcataacac gtagccaggc
+     2401 tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg tttttgtttt tcctttacga
+     2461 cacgaaccgc tctaacctgc tctatttcgc cacgttccag tgaacctctt agcctaccgc
+     2521 ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg gagaaatcgt tcaatattag
+     2581 aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc cgtttaacgg ctgccgtggt
+     2641 cataccgtga ggcaccacga ggggatgcta cgcaacatgc gaggtgtaat cagcagggaa
+     2701 gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat atgcataagg tgtcatttat
+     2761 attacaccta cgacactggt accggctcac agccaaatgc acagtctcaa gatagaattc
+     2821 gcaaaaatta ggcttatcgg gcgcttactc tttgttacac ttctggtctg tgagtgacgc
+     2881 cctgtgtccc atcactgcat gtgaggatgc gtgtactgca cctgtgaatt acagacgttt
+     2941 ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc tctatagggt gatctcgaca
+     3001 taccactatg gtttgcgcgt ttcgggtgct tttggcgagg gccaggtacg gcggtgagac
+     3061 agcgtatttt gcgaataggg tattcggacg cacggtgtat agctcttgga aaacgactct
+     3121 tcgacgggcg tgtagaagta gccaagcagt tcggttgtta tcactaaatg cggaccatgt
+     3181 gcagccgttt aggagaggag tctgcaatgg atcagctggt cagattgtac cactcggttg
+     3241 agcctaaggc acttcaggtg ctcggattgt aatgaaccct caggttacgc cgttgcgctg
+     3301 agatcccaca agccataagc aatgagaatc gagcagctat cgaattacgc agcacttgct
+     3361 gatgaactgg gtgcacctaa agcgcccgat aaaacggagg gagtgaggta actactacat
+     3421 tgcgagtagt gcgaggggcc tccgagacta cattagagca gccatgccga atacgacaaa
+     3481 atctatagcc ttgcgaacgt aggggactga tttatggaca acaggaccga aacaagttgg
+     3541 agccacaacg gagctatgga cgttttcact attgatgggt ggcttgcgtc cgcatcccag
+     3601 gtttctctgg ttaattttca tgacgattct ttgtggtacg atccaggcat aagatagggc
+     3661 acctaacccg atactgtgaa cttatatgac ggctgaacat gccctaatag tctgccaaaa
+     3721 gggaaaccta taacggctct aaacgggccc cgggtacgta acagcaatgt tcctgtccac
+     3781 caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat tccgttttac gccccagatc
+     3841 gcagctccct tgacagtgtc agttgaatcc ccattctagg tttcctgata aaactaagta
+     3901 cggggacgca tcagtcgaaa gcaatcacag ataatagata tcttgagcag aaagacgtct
+     3961 tcacgaatca ggagcgagtg tcccctttga aagtgcgggc aacaataggt gtgaggtttc
+     4021 acggttgctt gatcagtagc tgttcactct ctcgcaggcc tacatagtga ggtggtgaga
+     4081 ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc gggcacgcta acaaggacag
+     4141 gaattcgggt cgtcaaataa caatttacgt catcgcatcc ctcaagggta aggcgtgatc
+     4201 tccatctcgg ttcccaattg gtcattgtga tagccacact gcagttaccg aaggcgattt
+     4261 tatactaccc tgataagtgc tcgcagcccc tcctccctaa taatgtaacg acgagcatta
+     4321 acccaggagt atttctcacg ttgctcgtgc ccagccaagg cgatcaacgc agaccggata
+     4381 gcgttagcta gcccacgggt aaaagcgatt gttgtactct ttcatatgaa tacagcactc
+     4441 gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc acactggagg cgatgatcta
+     4501 gcccgtcttt caccccgtac ctttatactc ggccgcgtat ttctccaccg ggagctctgc
+     4561 ctaccaaagc gtcgtacgcc caggaagccg tttcctttat cctccctcat gtctcaacgc
+     4621 gcgagcatcg gagagtacgc gaaatcgact gtctggccaa cactggacag acgcgcgaga
+     4681 cactgataaa cccccatttt cgtggggtta gtaaatcggt ggcttcaaac ggttcgatcg
+     4741 ctcgcacgag cattagtcag gagtatgatt gcgcatcatc tctactccgt actaggttct
+     4801 gtagctcagg atctccgggg ggatcaagct tttatgtccc gcgggattag aagatatcca
+     4861 tccatatgtt tactttgatg cgggtccgag ctctctatga tgctgctttg acaaaatgtg
+     4921 gaaagcctca gcgaccgctc tggggtcaaa gctctacgac acgttgatgc taaacaagtt
+     4981 ggactactaa gcaaatgaag cggaagagat actgagcgct ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_1/provided_parts_records/receptor.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,75 @@
+LOCUS       Exported                3022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   receptor
+VERSION     receptor
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 3022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..3022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     CDS             523..1222
+                     /label="KanR"
+     misc_feature    2023..2522
+                     /label="RepO_2"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 attgagagac gcgtctcagg cactttcgct atatggcgac gtgcgaaaaa cgcgatttgg
+       61 ccgaaatctc aaataataat gcaatgtgtt ggctaagctc gggcaaactc aggatgtgac
+      121 ctagtaccct ctgccccgtg agtacccata cccaatcaag ccagcccaat tcgcgatagg
+      181 tacagataag ccttactcgt cccgatcctt gactaaaaca ctcatcctcg atagtacgtg
+      241 ccttgtagag tccgacggcc ataggtaaac gaccagttag tgtcgtaggg tcctccactt
+      301 tagctacgat tgcaactccc ttaccttcgt gccggcgcgc tcctcttgct accatcacgc
+      361 ttcaaatcgg gtggaagacc aactgatgaa tgagggtgca gaccccagtg gagcataata
+      421 cgatgcgccc acgatactct agagccacgc gtcgacgttc gtaagatgtc ccgggcccgt
+      481 gggtggccac atcggccgcc catccttgtg tcttccgata agtactccct ttcaaggact
+      541 ctccgatacc ggcttagaac acgaacggac aacgctttca gcgctgagaa atgacggctg
+      601 cttcaaccag aacgatacag ccttctttgc tagatagcct ctagtgtcag ccaccaagtc
+      661 cgccacctaa tccttcgccg agggtcaaag cttctgacca tccaattgtt aggcactctt
+      721 ggaaccttgc aagtacctga tcatgcagaa aatggacttg cccggagcat attcattata
+      781 agtaccattc acggcaggtt atagtatgcg ttgacgcggg gtgatacggt aatgcaagta
+      841 accatcgggc cgcggtatgc acatagaagg gtgtttgact tggtttctta cagtgcaact
+      901 gcatatgtgg accgccattc caagtgaaag gatacgaagg gaggtttcgg actgctatcc
+      961 agagcatgga aagccttcaa ggtggtgcgc actggaatag tgactcgggg attgtatgtc
+     1021 gagccgcgtc cagtctttcc tatacttatg cgagcaaata gaccgagtgg aacttgattg
+     1081 catcagccga atcacgatga aaactcagct tacaattcgt aagcacttca aatatatgcc
+     1141 cggaaaatcg ccgtccagtg acttgtaata gctccagggt cagtagcgct gccctggccg
+     1201 aaccaggtga cggttacgtg gacctcacag tatcaatgtt gcagtgcgcc accagattaa
+     1261 gctggccgtg tcatggtgaa caaccgtgat aaaagaacgg gagtatgaga gtgccaccca
+     1321 agagtggtac tccaggattc ggaaagggga gggggctttt cctgcttaac aaccttcctc
+     1381 ggcacggtct aagggtctca ctcgtcctaa actctaccat catgcagcta ggcgaaagta
+     1441 taactttagg gtctctcagg atgagctatc tgtaccacgg tgatgagata agtagggggt
+     1501 gcgctagggt cgttcgtgtt ttcatcgtct atagtaccta tttctcgtct tccattagcg
+     1561 catacggcca tctcgcggcg gctacgtcag ccagcgtcaa ccccaagtca ctaatttccg
+     1621 ttattatagg tgtagctcat aacttcttct gccgaccaag ccaaaagctt tgcggcagct
+     1681 gcaaggccac gttaggctct cggacggcag atatttatta ataacaccac tgggttccag
+     1741 ctcttaacgc acttcccttc actggatcac ctgtacgccc ataagctaag cctgaagcca
+     1801 cggcctcaat cgtggacatt actcttagca aatccacatt accatgtcac caatccccga
+     1861 accccgcgcc gacctaaggc ggggtacctc gtgcacggca gcatcgaggg aaatatatta
+     1921 caaaagacgc ggcgatccaa cggttgataa aaacagttcc gtggaaggcg gacgtgtgct
+     1981 tagcgcatgc ttctcaccga gtgacagcac cgattccatc tcgctagcac gccgatgagc
+     2041 ctcgctgtgg gactatggtc cagcctatgc ttaactaggc agaacagaga gtatggtggt
+     2101 cctcggtaag gtcgatttgg tggcactcgc aagatacgcg ggttattagt agagcgcagt
+     2161 cagggcccat cgccagcatt tgcatgctcg ccgtacgcta tccttgtact acggttcctc
+     2221 agtggctata aaggaatgtc acaactccat tagccccttt tgttcagcgc ttagtcatgg
+     2281 tgggactgac tcaccgagac tacatacgga ttgtgcccgc agagacctgc ctttcatgct
+     2341 ggggttttgt aagcagctcc acggggtagt gtcaccatgc cttcgaccta tgcttatgaa
+     2401 acccgaggta atgcggcagg atcccgtgga tcctacgctt agcctgttta agccatcgtt
+     2461 ctcctcggcc cccagccagc gcgtattccg cgcattcctc cgagtgcgta tcgcgcaaac
+     2521 cacaagatac ctctcaacga ctagcggtga accaccaagc ttgacatacg tgccccttcg
+     2581 gaaacgttat tagtggtcct gagtggtacg tcccgagtat acggggcagc gatagtaacg
+     2641 ctacaaatag ctaggcgagg ttgcgatacc tgaatgaata tccaacagtg gcaacgaggc
+     2701 gcttagaaag ggaaactaca taccagttca atccgggatg acttcaaaag ggtatgtttg
+     2761 ttttgaagcg aagctttggt tgtcattcag ttcctagagt ttacggcgct gatatggctc
+     2821 taggagtcca gtgaattcgt cagcataagc cccacatcgt aggaaattgc ccggtcgtcg
+     2881 gtctagcaaa tgctcggtaa actgggagtg tactaacacc atgtcgtggt aacccggtgg
+     2941 accggctact agagacatat ttattcatgc tcagttgaac ctgtttcgag ggggccgagt
+     3001 taacataaag tgattagtca ca
+//
Binary file test-data/init/example_assembly_plan_simulation/construct_2/construct_2_connections_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_2/error.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+assembly_name;message;suggestion;data
+construct_2;Wrong number of constructs;expected_: 1,found: 0
+construct_2;Some parts are unused;unused_parts: partA2 & partB2 & partC & receptor
\ No newline at end of file
Binary file test-data/init/example_assembly_plan_simulation/construct_2/fragments_in_construct_2_homology_mix/partA2_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_2/fragments_in_construct_2_homology_mix/partB2_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_2/fragments_in_construct_2_homology_mix/partC_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_2/fragments_in_construct_2_homology_mix/receptor_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_plots/partA2.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_plots/partB2.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_plots/partC.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_plots/receptor.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_records/partA2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,95 @@
+LOCUS       Exported                4022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partA2
+VERSION     partA2
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 4022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..4022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..1001
+                     /label="pA2"
+                     /label="nonstandard type: annotation"
+     CDS             1123..2022
+                     /label="AmpR"
+     misc_feature    3023..3522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaatt gtaagataga acagggatat agctcgttgc atccataaat tgcccaccgt
+       61 agggagaacg ccgttggaaa atgagagtta ggcgatgagc ggttgtcgcc cgcacagaca
+      121 aaggatgcct ttataaatag tagcggcctt gtctgcacca gacgtttgtg ggtcgacgtg
+      181 ctattctagc caaaagcaaa atgtatcata ctacaggcaa taggccctat gctgaccaaa
+      241 cttggggacc cttgcgcctt ctctcttacg cataacatgc ataggtacct ctactcatca
+      301 ggcagggcgg cgtgaggtca ctatggctca agatgtgtac gactaaagaa aggtttatgc
+      361 tccttcccca aggacgcatt tgggactgct acttgcccct agcgaattca ctaggatttt
+      421 tgtagaacca tgagcgccct atccgatagc acagagacaa tgctacaagc aactgtgcat
+      481 gcgctcgatc gccgtgcatt aatacgtatt atagagtatc gtgtacgcta atatcttagt
+      541 gcaccgcacg ctggttggat acaattccgt gaaataattc ctgcttacac aggggctttc
+      601 tggcgcatgg ctgtgtctgg atgtttgtga taagaggctc caagaacccg gcgggaaatg
+      661 aggggaaacc ccggggagca acgacactaa gcctggcagt tgttcagata ggacgctttt
+      721 gtcagtgggc ggttttgcat ccactaacta tcataaacga cacaacgtcg aatgatcatc
+      781 ggcggtttgc atgtagagac agctcctgca acaccatacc ggctcgtgga attacgctgt
+      841 gcgccggccc tcattcgatt gtgtccagcg tcggcgcgaa tgatgattga gatgtgcttc
+      901 ggctcagagc gtgcacaggt agttctcccc ccttacctag ctaatccagc aattccacgc
+      961 tggcccgcgc gtccttgggt aacactggat ctgtacccaa atacaccgtc gggctagaga
+     1021 cgctccacct gcgtctatcg tacagtgcta aaatggcagc agatagtgaa acttccgcta
+     1081 agctagcccc tcagggtaca ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt
+     1141 tgtcggggac ctgccgtcac gcttccgagt gtatatccgg atttagttga cgtcatacag
+     1201 aggcactaag aagaataaac gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct
+     1261 cccttgcgcc gttcggcaag cgtccggtgt cgggctgcaa ggaataaatc tttatggacc
+     1321 agaggggctt gtttcctcat atgggtgcgt gcacttatac gattcaaagg tggatatggc
+     1381 cgcataacac gtagccaggc tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg
+     1441 tttttgtttt tcctttacga cacgaaccgc tctaacctgc tctatttcgc cacgttccag
+     1501 tgaacctctt agcctaccgc ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg
+     1561 gagaaatcgt tcaatattag aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc
+     1621 cgtttaacgg ctgccgtggt cataccgtga ggcaccacga ggggatgcta cgcaacatgc
+     1681 gaggtgtaat cagcagggaa gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat
+     1741 atgcataagg tgtcatttat attacaccta cgacactggt accggctcac agccaaatgc
+     1801 acagtctcaa gatagaattc gcaaaaatta ggcttatcgg gcgcttactc tttgttacac
+     1861 ttctggtctg tgagtgacgc cctgtgtccc atcactgcat gtgaggatgc gtgtactgca
+     1921 cctgtgaatt acagacgttt ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc
+     1981 tctatagggt gatctcgaca taccactatg gtttgcgcgt ttcgggtgct tttggcgagg
+     2041 gccaggtacg gcggtgagac agcgtatttt gcgaataggg tattcggacg cacggtgtat
+     2101 agctcttgga aaacgactct tcgacgggcg tgtagaagta gccaagcagt tcggttgtta
+     2161 tcactaaatg cggaccatgt gcagccgttt aggagaggag tctgcaatgg atcagctggt
+     2221 cagattgtac cactcggttg agcctaaggc acttcaggtg ctcggattgt aatgaaccct
+     2281 caggttacgc cgttgcgctg agatcccaca agccataagc aatgagaatc gagcagctat
+     2341 cgaattacgc agcacttgct gatgaactgg gtgcacctaa agcgcccgat aaaacggagg
+     2401 gagtgaggta actactacat tgcgagtagt gcgaggggcc tccgagacta cattagagca
+     2461 gccatgccga atacgacaaa atctatagcc ttgcgaacgt aggggactga tttatggaca
+     2521 acaggaccga aacaagttgg agccacaacg gagctatgga cgttttcact attgatgggt
+     2581 ggcttgcgtc cgcatcccag gtttctctgg ttaattttca tgacgattct ttgtggtacg
+     2641 atccaggcat aagatagggc acctaacccg atactgtgaa cttatatgac ggctgaacat
+     2701 gccctaatag tctgccaaaa gggaaaccta taacggctct aaacgggccc cgggtacgta
+     2761 acagcaatgt tcctgtccac caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat
+     2821 tccgttttac gccccagatc gcagctccct tgacagtgtc agttgaatcc ccattctagg
+     2881 tttcctgata aaactaagta cggggacgca tcagtcgaaa gcaatcacag ataatagata
+     2941 tcttgagcag aaagacgtct tcacgaatca ggagcgagtg tcccctttga aagtgcgggc
+     3001 aacaataggt gtgaggtttc acggttgctt gatcagtagc tgttcactct ctcgcaggcc
+     3061 tacatagtga ggtggtgaga ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc
+     3121 gggcacgcta acaaggacag gaattcgggt cgtcaaataa caatttacgt catcgcatcc
+     3181 ctcaagggta aggcgtgatc tccatctcgg ttcccaattg gtcattgtga tagccacact
+     3241 gcagttaccg aaggcgattt tatactaccc tgataagtgc tcgcagcccc tcctccctaa
+     3301 taatgtaacg acgagcatta acccaggagt atttctcacg ttgctcgtgc ccagccaagg
+     3361 cgatcaacgc agaccggata gcgttagcta gcccacgggt aaaagcgatt gttgtactct
+     3421 ttcatatgaa tacagcactc gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc
+     3481 acactggagg cgatgatcta gcccgtcttt caccccgtac ctttatactc ggccgcgtat
+     3541 ttctccaccg ggagctctgc ctaccaaagc gtcgtacgcc caggaagccg tttcctttat
+     3601 cctccctcat gtctcaacgc gcgagcatcg gagagtacgc gaaatcgact gtctggccaa
+     3661 cactggacag acgcgcgaga cactgataaa cccccatttt cgtggggtta gtaaatcggt
+     3721 ggcttcaaac ggttcgatcg ctcgcacgag cattagtcag gagtatgatt gcgcatcatc
+     3781 tctactccgt actaggttct gtagctcagg atctccgggg ggatcaagct tttatgtccc
+     3841 gcgggattag aagatatcca tccatatgtt tactttgatg cgggtccgag ctctctatga
+     3901 tgctgctttg acaaaatgtg gaaagcctca gcgaccgctc tggggtcaaa gctctacgac
+     3961 acgttgatgc taaacaagtt ggactactaa gcaaatgaag cggaagagat actgagcgct
+     4021 ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_records/partB2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,111 @@
+LOCUS       Exported                5022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partB2
+VERSION     partB2
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 5022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..5022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..2001
+                     /label="pB2"
+                     /label="nonstandard type: annotation"
+     CDS             2123..3022
+                     /label="AmpR"
+     misc_feature    4023..4522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaggc ttgattgtta actaccgtat ggcggttacg atcgagtgac actattatta
+       61 gaccgctact ccaagtccca acttttcatc gccatacaga agagaacgag aaagtcgaag
+      121 agttatagcg tgtacacttc tgattagcta acgaatcgat gcgtacagca tactcgagca
+      181 actttatggg tcgtctgtct ccttgtaccc cgcttgacga ggatgtgttt gtaggcggct
+      241 tggatatcgg cagtgtatcc gcatggtcaa acactttagc ccgaccggtg ctcaaggtcg
+      301 aaatcctaat atagattggg ataggacccg tccattacta ggcgacattc gcagtcacga
+      361 gcccgcacgg ggtgcctcaa cacggtgaca ctcaattcgc cgacactgag tacgacgatc
+      421 gtgattgcca taccgtcatg ttttgtgtta cccctgataa gaagcgcaga tatggcacgg
+      481 gggcagaggg cggagtagac ccaagcaaaa ctctagcctc tgggcagcat gatcgacgta
+      541 gaacgccgtt gtgactcact agtttcagtt atgatgttca gccaagaatc ctccattttg
+      601 acgtgaacct tctcccttta caccttgaag ctgcaatatt aagtcgaccc tttaagttgc
+      661 cttgtcttgg tctagagccc gcagctcacc gataaaatga gcagtcaatt ttagcggcgg
+      721 ttgtccaggt tacatgcact ttgggctgga accgcgttac gtttggagta cttagaagtg
+      781 tcgtaggcat aggagagccg aaacttgata ttgggtctag ttagtgctct accccgcttc
+      841 ggatccgtaa tagtgatgtt gcataagacg cttgcctcaa ggcgacatac ggtggcggtt
+      901 gctggaaatg acgccccacc ccgtgataat ttggggacga gccacacgat aacttctgcc
+      961 agcgaccgcc cctcccacgt ccgatggtga ttccgaattt tgattacatg ccagacacgc
+     1021 tttaatctcg ccaccacatt ggcaccccca ccaagtaatg tatgtaagaa gcagctgcgc
+     1081 cccaagttac gtgccgtttc cgatgggagc agcaataatg tcgatagcaa ccacccccct
+     1141 ctctactgac gaagcaacac cggggacacc gtcaccttgg cttcatttcg tattcattca
+     1201 cctacgcaca accgcctgac cgttcgttat cacgagccta tccccttcaa gcaatttccc
+     1261 ccccttgttc agcagcctac actatacgtt ggtacactgt gtgcgacaga tatttggtgc
+     1321 ccgtcttatt ctattctgag agagtttaat agccaaaaga tatgagtagg aacgggaggt
+     1381 acccgactcg cgttgaagca ctcttaagac ctctcttagc acttcgaagg gtaggtgcgt
+     1441 tcaaagaacc tctgctttta actaagatca aaaggattgc gtacaacttc cccgttaact
+     1501 ctccagagga tccgtagaag tctacaccaa aatacgtttg gtttcgccaa ggtgactatc
+     1561 ggtacttgtg cacgtaacag ggtaaagaat tgaaagcctc aaattgtacg acgttacgcc
+     1621 cggacggtcg ccggtgatag ggtgacgcat ttgcgtttgt catatcattt gggattagac
+     1681 ggagctggtg tacctctatg gacgttacaa aaccttgtgg taacagcctg ggtgccatcc
+     1741 acctagtccg aagtttcctt ctaaccgcgg catcagatgg atatgtacct tatggcgctt
+     1801 cccgggaagt ccaattcttc gtgttgaagg gacagctcta caggcctggc cacttgtggc
+     1861 gcatctaagt agtctaggtg catgattctc tcccttgggg gcgctgtcgt gggtcctgcc
+     1921 gagccacacc ctaacctcac gtcgcaagac ttggtaaata gctttttttt ttatgcccaa
+     1981 tctatttacg taacaatcga catcagagga ggggcagaga cgctccacct gcgtctatcg
+     2041 tacagtgcta aaatggcagc agatagtgaa acttccgcta agctagcccc tcagggtaca
+     2101 ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt tgtcggggac ctgccgtcac
+     2161 gcttccgagt gtatatccgg atttagttga cgtcatacag aggcactaag aagaataaac
+     2221 gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct cccttgcgcc gttcggcaag
+     2281 cgtccggtgt cgggctgcaa ggaataaatc tttatggacc agaggggctt gtttcctcat
+     2341 atgggtgcgt gcacttatac gattcaaagg tggatatggc cgcataacac gtagccaggc
+     2401 tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg tttttgtttt tcctttacga
+     2461 cacgaaccgc tctaacctgc tctatttcgc cacgttccag tgaacctctt agcctaccgc
+     2521 ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg gagaaatcgt tcaatattag
+     2581 aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc cgtttaacgg ctgccgtggt
+     2641 cataccgtga ggcaccacga ggggatgcta cgcaacatgc gaggtgtaat cagcagggaa
+     2701 gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat atgcataagg tgtcatttat
+     2761 attacaccta cgacactggt accggctcac agccaaatgc acagtctcaa gatagaattc
+     2821 gcaaaaatta ggcttatcgg gcgcttactc tttgttacac ttctggtctg tgagtgacgc
+     2881 cctgtgtccc atcactgcat gtgaggatgc gtgtactgca cctgtgaatt acagacgttt
+     2941 ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc tctatagggt gatctcgaca
+     3001 taccactatg gtttgcgcgt ttcgggtgct tttggcgagg gccaggtacg gcggtgagac
+     3061 agcgtatttt gcgaataggg tattcggacg cacggtgtat agctcttgga aaacgactct
+     3121 tcgacgggcg tgtagaagta gccaagcagt tcggttgtta tcactaaatg cggaccatgt
+     3181 gcagccgttt aggagaggag tctgcaatgg atcagctggt cagattgtac cactcggttg
+     3241 agcctaaggc acttcaggtg ctcggattgt aatgaaccct caggttacgc cgttgcgctg
+     3301 agatcccaca agccataagc aatgagaatc gagcagctat cgaattacgc agcacttgct
+     3361 gatgaactgg gtgcacctaa agcgcccgat aaaacggagg gagtgaggta actactacat
+     3421 tgcgagtagt gcgaggggcc tccgagacta cattagagca gccatgccga atacgacaaa
+     3481 atctatagcc ttgcgaacgt aggggactga tttatggaca acaggaccga aacaagttgg
+     3541 agccacaacg gagctatgga cgttttcact attgatgggt ggcttgcgtc cgcatcccag
+     3601 gtttctctgg ttaattttca tgacgattct ttgtggtacg atccaggcat aagatagggc
+     3661 acctaacccg atactgtgaa cttatatgac ggctgaacat gccctaatag tctgccaaaa
+     3721 gggaaaccta taacggctct aaacgggccc cgggtacgta acagcaatgt tcctgtccac
+     3781 caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat tccgttttac gccccagatc
+     3841 gcagctccct tgacagtgtc agttgaatcc ccattctagg tttcctgata aaactaagta
+     3901 cggggacgca tcagtcgaaa gcaatcacag ataatagata tcttgagcag aaagacgtct
+     3961 tcacgaatca ggagcgagtg tcccctttga aagtgcgggc aacaataggt gtgaggtttc
+     4021 acggttgctt gatcagtagc tgttcactct ctcgcaggcc tacatagtga ggtggtgaga
+     4081 ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc gggcacgcta acaaggacag
+     4141 gaattcgggt cgtcaaataa caatttacgt catcgcatcc ctcaagggta aggcgtgatc
+     4201 tccatctcgg ttcccaattg gtcattgtga tagccacact gcagttaccg aaggcgattt
+     4261 tatactaccc tgataagtgc tcgcagcccc tcctccctaa taatgtaacg acgagcatta
+     4321 acccaggagt atttctcacg ttgctcgtgc ccagccaagg cgatcaacgc agaccggata
+     4381 gcgttagcta gcccacgggt aaaagcgatt gttgtactct ttcatatgaa tacagcactc
+     4441 gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc acactggagg cgatgatcta
+     4501 gcccgtcttt caccccgtac ctttatactc ggccgcgtat ttctccaccg ggagctctgc
+     4561 ctaccaaagc gtcgtacgcc caggaagccg tttcctttat cctccctcat gtctcaacgc
+     4621 gcgagcatcg gagagtacgc gaaatcgact gtctggccaa cactggacag acgcgcgaga
+     4681 cactgataaa cccccatttt cgtggggtta gtaaatcggt ggcttcaaac ggttcgatcg
+     4741 ctcgcacgag cattagtcag gagtatgatt gcgcatcatc tctactccgt actaggttct
+     4801 gtagctcagg atctccgggg ggatcaagct tttatgtccc gcgggattag aagatatcca
+     4861 tccatatgtt tactttgatg cgggtccgag ctctctatga tgctgctttg acaaaatgtg
+     4921 gaaagcctca gcgaccgctc tggggtcaaa gctctacgac acgttgatgc taaacaagtt
+     4981 ggactactaa gcaaatgaag cggaagagat actgagcgct ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_records/partC.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,111 @@
+LOCUS       Exported                5022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partC
+VERSION     partC
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 5022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..5022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..2001
+                     /label="pC"
+                     /label="nonstandard type: annotation"
+     CDS             2123..3022
+                     /label="AmpR"
+     misc_feature    4023..4522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaggg caaagattac gatagaaaaa cactcgacac agagtagtat gataaaagtt
+       61 gggacggcat gctggactcg agaagtgtcg atccggcaat ccagatacgg caatggtacc
+      121 ggtcacacct cattctaaga gcagtcaggg gctgtcaggt ctacagggca ccggccctga
+      181 ggcccttggg ctagggtctg tcacccctat ctgcactgac tttaaagtaa ccgagcaata
+      241 agacaatcaa tcgcagggct ctggatcggg gtccgaaggc ggggtgcagt gtctccctaa
+      301 ttgttaagct caaaagagca gccactcgtt ctcgatcctt agtccatcgc cgtgaggtac
+      361 aagcagtaca cccacggaag gcccggcatt gaagatgcaa gaaatagagc actggggtga
+      421 cgacggcatg ctaaggtaag aaggcaaatt ctggaggact gacttcccca caagcggcgt
+      481 aagctcggat aagattggga taaacggacc acggcggctg gatcttcacc cctttgcacg
+      541 gtatgaaaac ggatcaggat tctcttccac ctattgcacc tgctgagaag agagcgctgg
+      601 ggggacgtta cttatcccaa tcgcgacgtc acggacaaca tcgtgttaca ggtcaggctc
+      661 gaaatcctag gcagctggta tccgacgcgc aagttatcta ccaaataagt taggcgatcg
+      721 aaatcatagg ctgtttagtg cttttcttgg tatcatcctg aacttctgtc acctccgagg
+      781 ccgaagcaac tattatgagg acgactcgat gattgtccgg agatgttgca ccccggcaag
+      841 cctagaaaac cccggtcctt tgagttttaa tctaatagta gaagttctcg gaaatcagag
+      901 ctggagactc ggtgacgtta tagaaatgtt cgcacgaaga gcgcgacatg tcctacttca
+      961 caagatgctt tctaggaggg gatctggatt ctcaagccct acacatggtc cgtggtgtat
+     1021 gttggatcgt agtgctttta ccgactatgt cgcgttaaat tgtctttcat ttctacaatt
+     1081 cggggagcat ggggccatgt gacttaggtt cagaaggtgc gagcgggcgt actacgtttg
+     1141 gtggtcgtgt ataatcagaa gaatcggcga tatccgctag caagcaaagt gtccttgacg
+     1201 cttgtggaaa tccaactatt tcctgcctct caagtgttta gaaaaatatc ccctggagga
+     1261 gatatcgctc ctctcttctg cgaccaacac cagttcaatt ccgcagtgca gcagtcctat
+     1321 tccgcatgga tcacgctgac gagatgcggg gttgagacta ccccaaaaga tatgttgaga
+     1381 taaattacca ggatggataa tctggtaccg gtgcgaaagg gtggttacac cagagtcgcc
+     1441 tgatgagctt atgcgcaatt tcaagtccct atgttttact atgaaagtac gaccgagccg
+     1501 ctagcctgag tcaaatagcg cagaatttgg gtcgtggaga tcgcgcttgt taacctggtc
+     1561 taggcgcatc tgagtcataa cggggttata acgactgtca acgtgtgacc gcatatcctg
+     1621 caaggcgaac aaataacgcc ccgcccaaaa tattacattt aagtagttat ctaactcccg
+     1681 gcatgcgggg catttggggg cagcgtgccc attccgcccc tatgcctgtt tcaacacgca
+     1741 accgtagaga ttggctagga tgggttttca cgagccaact gccacattag acatagaatt
+     1801 ccgataagta taagagatat cagcgaggtt cagggtagtt tggaacgaca gccggttcag
+     1861 aagttcagta tggtcattca tcatccgttg tgttgagtcc tttagatcgt ggctttatca
+     1921 tgcatgtctc ccgccagccc tcaaactatg tcgtcacgcg catgtttaca ttatatggaa
+     1981 caaaacgaga ggtagaagcc aatcactatc cggcaagaga cgctccacct gcgtctatcg
+     2041 tacagtgcta aaatggcagc agatagtgaa acttccgcta agctagcccc tcagggtaca
+     2101 ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt tgtcggggac ctgccgtcac
+     2161 gcttccgagt gtatatccgg atttagttga cgtcatacag aggcactaag aagaataaac
+     2221 gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct cccttgcgcc gttcggcaag
+     2281 cgtccggtgt cgggctgcaa ggaataaatc tttatggacc agaggggctt gtttcctcat
+     2341 atgggtgcgt gcacttatac gattcaaagg tggatatggc cgcataacac gtagccaggc
+     2401 tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg tttttgtttt tcctttacga
+     2461 cacgaaccgc tctaacctgc tctatttcgc cacgttccag tgaacctctt agcctaccgc
+     2521 ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg gagaaatcgt tcaatattag
+     2581 aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc cgtttaacgg ctgccgtggt
+     2641 cataccgtga ggcaccacga ggggatgcta cgcaacatgc gaggtgtaat cagcagggaa
+     2701 gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat atgcataagg tgtcatttat
+     2761 attacaccta cgacactggt accggctcac agccaaatgc acagtctcaa gatagaattc
+     2821 gcaaaaatta ggcttatcgg gcgcttactc tttgttacac ttctggtctg tgagtgacgc
+     2881 cctgtgtccc atcactgcat gtgaggatgc gtgtactgca cctgtgaatt acagacgttt
+     2941 ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc tctatagggt gatctcgaca
+     3001 taccactatg gtttgcgcgt ttcgggtgct tttggcgagg gccaggtacg gcggtgagac
+     3061 agcgtatttt gcgaataggg tattcggacg cacggtgtat agctcttgga aaacgactct
+     3121 tcgacgggcg tgtagaagta gccaagcagt tcggttgtta tcactaaatg cggaccatgt
+     3181 gcagccgttt aggagaggag tctgcaatgg atcagctggt cagattgtac cactcggttg
+     3241 agcctaaggc acttcaggtg ctcggattgt aatgaaccct caggttacgc cgttgcgctg
+     3301 agatcccaca agccataagc aatgagaatc gagcagctat cgaattacgc agcacttgct
+     3361 gatgaactgg gtgcacctaa agcgcccgat aaaacggagg gagtgaggta actactacat
+     3421 tgcgagtagt gcgaggggcc tccgagacta cattagagca gccatgccga atacgacaaa
+     3481 atctatagcc ttgcgaacgt aggggactga tttatggaca acaggaccga aacaagttgg
+     3541 agccacaacg gagctatgga cgttttcact attgatgggt ggcttgcgtc cgcatcccag
+     3601 gtttctctgg ttaattttca tgacgattct ttgtggtacg atccaggcat aagatagggc
+     3661 acctaacccg atactgtgaa cttatatgac ggctgaacat gccctaatag tctgccaaaa
+     3721 gggaaaccta taacggctct aaacgggccc cgggtacgta acagcaatgt tcctgtccac
+     3781 caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat tccgttttac gccccagatc
+     3841 gcagctccct tgacagtgtc agttgaatcc ccattctagg tttcctgata aaactaagta
+     3901 cggggacgca tcagtcgaaa gcaatcacag ataatagata tcttgagcag aaagacgtct
+     3961 tcacgaatca ggagcgagtg tcccctttga aagtgcgggc aacaataggt gtgaggtttc
+     4021 acggttgctt gatcagtagc tgttcactct ctcgcaggcc tacatagtga ggtggtgaga
+     4081 ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc gggcacgcta acaaggacag
+     4141 gaattcgggt cgtcaaataa caatttacgt catcgcatcc ctcaagggta aggcgtgatc
+     4201 tccatctcgg ttcccaattg gtcattgtga tagccacact gcagttaccg aaggcgattt
+     4261 tatactaccc tgataagtgc tcgcagcccc tcctccctaa taatgtaacg acgagcatta
+     4321 acccaggagt atttctcacg ttgctcgtgc ccagccaagg cgatcaacgc agaccggata
+     4381 gcgttagcta gcccacgggt aaaagcgatt gttgtactct ttcatatgaa tacagcactc
+     4441 gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc acactggagg cgatgatcta
+     4501 gcccgtcttt caccccgtac ctttatactc ggccgcgtat ttctccaccg ggagctctgc
+     4561 ctaccaaagc gtcgtacgcc caggaagccg tttcctttat cctccctcat gtctcaacgc
+     4621 gcgagcatcg gagagtacgc gaaatcgact gtctggccaa cactggacag acgcgcgaga
+     4681 cactgataaa cccccatttt cgtggggtta gtaaatcggt ggcttcaaac ggttcgatcg
+     4741 ctcgcacgag cattagtcag gagtatgatt gcgcatcatc tctactccgt actaggttct
+     4801 gtagctcagg atctccgggg ggatcaagct tttatgtccc gcgggattag aagatatcca
+     4861 tccatatgtt tactttgatg cgggtccgag ctctctatga tgctgctttg acaaaatgtg
+     4921 gaaagcctca gcgaccgctc tggggtcaaa gctctacgac acgttgatgc taaacaagtt
+     4981 ggactactaa gcaaatgaag cggaagagat actgagcgct ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_2/provided_parts_records/receptor.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,75 @@
+LOCUS       Exported                3022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   receptor
+VERSION     receptor
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 3022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..3022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     CDS             523..1222
+                     /label="KanR"
+     misc_feature    2023..2522
+                     /label="RepO_2"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 attgagagac gcgtctcagg cactttcgct atatggcgac gtgcgaaaaa cgcgatttgg
+       61 ccgaaatctc aaataataat gcaatgtgtt ggctaagctc gggcaaactc aggatgtgac
+      121 ctagtaccct ctgccccgtg agtacccata cccaatcaag ccagcccaat tcgcgatagg
+      181 tacagataag ccttactcgt cccgatcctt gactaaaaca ctcatcctcg atagtacgtg
+      241 ccttgtagag tccgacggcc ataggtaaac gaccagttag tgtcgtaggg tcctccactt
+      301 tagctacgat tgcaactccc ttaccttcgt gccggcgcgc tcctcttgct accatcacgc
+      361 ttcaaatcgg gtggaagacc aactgatgaa tgagggtgca gaccccagtg gagcataata
+      421 cgatgcgccc acgatactct agagccacgc gtcgacgttc gtaagatgtc ccgggcccgt
+      481 gggtggccac atcggccgcc catccttgtg tcttccgata agtactccct ttcaaggact
+      541 ctccgatacc ggcttagaac acgaacggac aacgctttca gcgctgagaa atgacggctg
+      601 cttcaaccag aacgatacag ccttctttgc tagatagcct ctagtgtcag ccaccaagtc
+      661 cgccacctaa tccttcgccg agggtcaaag cttctgacca tccaattgtt aggcactctt
+      721 ggaaccttgc aagtacctga tcatgcagaa aatggacttg cccggagcat attcattata
+      781 agtaccattc acggcaggtt atagtatgcg ttgacgcggg gtgatacggt aatgcaagta
+      841 accatcgggc cgcggtatgc acatagaagg gtgtttgact tggtttctta cagtgcaact
+      901 gcatatgtgg accgccattc caagtgaaag gatacgaagg gaggtttcgg actgctatcc
+      961 agagcatgga aagccttcaa ggtggtgcgc actggaatag tgactcgggg attgtatgtc
+     1021 gagccgcgtc cagtctttcc tatacttatg cgagcaaata gaccgagtgg aacttgattg
+     1081 catcagccga atcacgatga aaactcagct tacaattcgt aagcacttca aatatatgcc
+     1141 cggaaaatcg ccgtccagtg acttgtaata gctccagggt cagtagcgct gccctggccg
+     1201 aaccaggtga cggttacgtg gacctcacag tatcaatgtt gcagtgcgcc accagattaa
+     1261 gctggccgtg tcatggtgaa caaccgtgat aaaagaacgg gagtatgaga gtgccaccca
+     1321 agagtggtac tccaggattc ggaaagggga gggggctttt cctgcttaac aaccttcctc
+     1381 ggcacggtct aagggtctca ctcgtcctaa actctaccat catgcagcta ggcgaaagta
+     1441 taactttagg gtctctcagg atgagctatc tgtaccacgg tgatgagata agtagggggt
+     1501 gcgctagggt cgttcgtgtt ttcatcgtct atagtaccta tttctcgtct tccattagcg
+     1561 catacggcca tctcgcggcg gctacgtcag ccagcgtcaa ccccaagtca ctaatttccg
+     1621 ttattatagg tgtagctcat aacttcttct gccgaccaag ccaaaagctt tgcggcagct
+     1681 gcaaggccac gttaggctct cggacggcag atatttatta ataacaccac tgggttccag
+     1741 ctcttaacgc acttcccttc actggatcac ctgtacgccc ataagctaag cctgaagcca
+     1801 cggcctcaat cgtggacatt actcttagca aatccacatt accatgtcac caatccccga
+     1861 accccgcgcc gacctaaggc ggggtacctc gtgcacggca gcatcgaggg aaatatatta
+     1921 caaaagacgc ggcgatccaa cggttgataa aaacagttcc gtggaaggcg gacgtgtgct
+     1981 tagcgcatgc ttctcaccga gtgacagcac cgattccatc tcgctagcac gccgatgagc
+     2041 ctcgctgtgg gactatggtc cagcctatgc ttaactaggc agaacagaga gtatggtggt
+     2101 cctcggtaag gtcgatttgg tggcactcgc aagatacgcg ggttattagt agagcgcagt
+     2161 cagggcccat cgccagcatt tgcatgctcg ccgtacgcta tccttgtact acggttcctc
+     2221 agtggctata aaggaatgtc acaactccat tagccccttt tgttcagcgc ttagtcatgg
+     2281 tgggactgac tcaccgagac tacatacgga ttgtgcccgc agagacctgc ctttcatgct
+     2341 ggggttttgt aagcagctcc acggggtagt gtcaccatgc cttcgaccta tgcttatgaa
+     2401 acccgaggta atgcggcagg atcccgtgga tcctacgctt agcctgttta agccatcgtt
+     2461 ctcctcggcc cccagccagc gcgtattccg cgcattcctc cgagtgcgta tcgcgcaaac
+     2521 cacaagatac ctctcaacga ctagcggtga accaccaagc ttgacatacg tgccccttcg
+     2581 gaaacgttat tagtggtcct gagtggtacg tcccgagtat acggggcagc gatagtaacg
+     2641 ctacaaatag ctaggcgagg ttgcgatacc tgaatgaata tccaacagtg gcaacgaggc
+     2701 gcttagaaag ggaaactaca taccagttca atccgggatg acttcaaaag ggtatgtttg
+     2761 ttttgaagcg aagctttggt tgtcattcag ttcctagagt ttacggcgct gatatggctc
+     2821 taggagtcca gtgaattcgt cagcataagc cccacatcgt aggaaattgc ccggtcgtcg
+     2881 gtctagcaaa tgctcggtaa actgggagtg tactaacacc atgtcgtggt aacccggtgg
+     2941 accggctact agagacatat ttattcatgc tcagttgaac ctgtttcgag ggggccgagt
+     3001 taacataaag tgattagtca ca
+//
Binary file test-data/init/example_assembly_plan_simulation/construct_3/construct_3_connections_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_3/error.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+assembly_name;message;suggestion;data
+construct_3;Wrong number of constructs;expected_: 1,found: 0
+construct_3;Some parts are unused;unused_parts: partA & partA2 & partB & partC & receptor
\ No newline at end of file
Binary file test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/partA2_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/partA_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/partB_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/partC_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_3/fragments_in_construct_3_homology_mix/receptor_01.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/partA.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/partA2.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/partB.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/partC.pdf has changed
Binary file test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_plots/receptor.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/partA.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,95 @@
+LOCUS       Exported                4022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partA
+VERSION     partA
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 4022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..4022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..1001
+                     /label="pA"
+                     /label="nonstandard type: annotation"
+     CDS             1123..2022
+                     /label="AmpR"
+     misc_feature    3023..3522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaatt gtaagataga acagggatat agctcgttgc atccataaat tgcccaccgt
+       61 agggagaacg ccgttggaaa atgagagtta ggcgatgagc ggttgtcgcc cgcacagaca
+      121 aaggatgcct ttataaatag tagcggcctt gtctgcacca gacgtttgtg ggtcgacgtg
+      181 ctattctagc caaaagcaaa atgtatcata ctacaggcaa taggccctat gctgaccaaa
+      241 cttggggacc cttgcgcctt ctctcttacg cataacatgc ataggtacct ctactcatca
+      301 ggcagggcgg cgtgaggtca ctatggctca agatgtgtac gactaaagaa aggtttatgc
+      361 tccttcccca aggacgcatt tgggactgct acttgcccct agcgaattca ctaggatttt
+      421 tgtagaacca tgagcgccct atccgatagc acagagacaa tgctacaagc aactgtgcat
+      481 gcgctcgatc gccgtgcatt aatacgtatt atagcgtatc gtgtacgcta atatcttagt
+      541 gcaccgcacg ctggttggat acaattccgt gaaataattc ctgcttacac aggggctttc
+      601 tggcgcatgg ctgtgtctgg atgtttgtga taagaggctc catgaacccg gcgggaaatg
+      661 aggggaaacc ccggggagca acgacactaa gcctggcagt tgttcagata ggacgctttt
+      721 gtcagtgggc ggttttgcat ccactaacta tcataaacga cacaacgtcg aatgatcatc
+      781 ggcggtttgc atgtagagac agctcctgca acaccatacc ggctcgtgga attacgctgt
+      841 gcgccggccc tcattcgatt gtgtccagcg tcggcgcgaa tgatgattga gatgtgcttc
+      901 ggctcagagc gtgcacaggt agttctcccc ccttacctag ctgatccagc aattccacgc
+      961 tggcccgcgc gtccttgggt aacactggat ctgtacccaa atacaccgtc gggctagaga
+     1021 cgctccacct gcgtctatcg tacagtgcta aaatggcagc agatagtgaa acttccgcta
+     1081 agctagcccc tcagggtaca ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt
+     1141 tgtcggggac ctgccgtcac gcttccgagt gtatatccgg atttagttga cgtcatacag
+     1201 aggcactaag aagaataaac gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct
+     1261 cccttgcgcc gttcggcaag cgtccggtgt cgggctgcaa ggaataaatc tttatggacc
+     1321 agaggggctt gtttcctcat atgggtgcgt gcacttatac gattcaaagg tggatatggc
+     1381 cgcataacac gtagccaggc tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg
+     1441 tttttgtttt tcctttacga cacgaaccgc tctaacctgc tctatttcgc cacgttccag
+     1501 tgaacctctt agcctaccgc ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg
+     1561 gagaaatcgt tcaatattag aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc
+     1621 cgtttaacgg ctgccgtggt cataccgtga ggcaccacga ggggatgcta cgcaacatgc
+     1681 gaggtgtaat cagcagggaa gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat
+     1741 atgcataagg tgtcatttat attacaccta cgacactggt accggctcac agccaaatgc
+     1801 acagtctcaa gatagaattc gcaaaaatta ggcttatcgg gcgcttactc tttgttacac
+     1861 ttctggtctg tgagtgacgc cctgtgtccc atcactgcat gtgaggatgc gtgtactgca
+     1921 cctgtgaatt acagacgttt ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc
+     1981 tctatagggt gatctcgaca taccactatg gtttgcgcgt ttcgggtgct tttggcgagg
+     2041 gccaggtacg gcggtgagac agcgtatttt gcgaataggg tattcggacg cacggtgtat
+     2101 agctcttgga aaacgactct tcgacgggcg tgtagaagta gccaagcagt tcggttgtta
+     2161 tcactaaatg cggaccatgt gcagccgttt aggagaggag tctgcaatgg atcagctggt
+     2221 cagattgtac cactcggttg agcctaaggc acttcaggtg ctcggattgt aatgaaccct
+     2281 caggttacgc cgttgcgctg agatcccaca agccataagc aatgagaatc gagcagctat
+     2341 cgaattacgc agcacttgct gatgaactgg gtgcacctaa agcgcccgat aaaacggagg
+     2401 gagtgaggta actactacat tgcgagtagt gcgaggggcc tccgagacta cattagagca
+     2461 gccatgccga atacgacaaa atctatagcc ttgcgaacgt aggggactga tttatggaca
+     2521 acaggaccga aacaagttgg agccacaacg gagctatgga cgttttcact attgatgggt
+     2581 ggcttgcgtc cgcatcccag gtttctctgg ttaattttca tgacgattct ttgtggtacg
+     2641 atccaggcat aagatagggc acctaacccg atactgtgaa cttatatgac ggctgaacat
+     2701 gccctaatag tctgccaaaa gggaaaccta taacggctct aaacgggccc cgggtacgta
+     2761 acagcaatgt tcctgtccac caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat
+     2821 tccgttttac gccccagatc gcagctccct tgacagtgtc agttgaatcc ccattctagg
+     2881 tttcctgata aaactaagta cggggacgca tcagtcgaaa gcaatcacag ataatagata
+     2941 tcttgagcag aaagacgtct tcacgaatca ggagcgagtg tcccctttga aagtgcgggc
+     3001 aacaataggt gtgaggtttc acggttgctt gatcagtagc tgttcactct ctcgcaggcc
+     3061 tacatagtga ggtggtgaga ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc
+     3121 gggcacgcta acaaggacag gaattcgggt cgtcaaataa caatttacgt catcgcatcc
+     3181 ctcaagggta aggcgtgatc tccatctcgg ttcccaattg gtcattgtga tagccacact
+     3241 gcagttaccg aaggcgattt tatactaccc tgataagtgc tcgcagcccc tcctccctaa
+     3301 taatgtaacg acgagcatta acccaggagt atttctcacg ttgctcgtgc ccagccaagg
+     3361 cgatcaacgc agaccggata gcgttagcta gcccacgggt aaaagcgatt gttgtactct
+     3421 ttcatatgaa tacagcactc gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc
+     3481 acactggagg cgatgatcta gcccgtcttt caccccgtac ctttatactc ggccgcgtat
+     3541 ttctccaccg ggagctctgc ctaccaaagc gtcgtacgcc caggaagccg tttcctttat
+     3601 cctccctcat gtctcaacgc gcgagcatcg gagagtacgc gaaatcgact gtctggccaa
+     3661 cactggacag acgcgcgaga cactgataaa cccccatttt cgtggggtta gtaaatcggt
+     3721 ggcttcaaac ggttcgatcg ctcgcacgag cattagtcag gagtatgatt gcgcatcatc
+     3781 tctactccgt actaggttct gtagctcagg atctccgggg ggatcaagct tttatgtccc
+     3841 gcgggattag aagatatcca tccatatgtt tactttgatg cgggtccgag ctctctatga
+     3901 tgctgctttg acaaaatgtg gaaagcctca gcgaccgctc tggggtcaaa gctctacgac
+     3961 acgttgatgc taaacaagtt ggactactaa gcaaatgaag cggaagagat actgagcgct
+     4021 ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/partA2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,95 @@
+LOCUS       Exported                4022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partA2
+VERSION     partA2
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 4022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..4022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..1001
+                     /label="pA2"
+                     /label="nonstandard type: annotation"
+     CDS             1123..2022
+                     /label="AmpR"
+     misc_feature    3023..3522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaatt gtaagataga acagggatat agctcgttgc atccataaat tgcccaccgt
+       61 agggagaacg ccgttggaaa atgagagtta ggcgatgagc ggttgtcgcc cgcacagaca
+      121 aaggatgcct ttataaatag tagcggcctt gtctgcacca gacgtttgtg ggtcgacgtg
+      181 ctattctagc caaaagcaaa atgtatcata ctacaggcaa taggccctat gctgaccaaa
+      241 cttggggacc cttgcgcctt ctctcttacg cataacatgc ataggtacct ctactcatca
+      301 ggcagggcgg cgtgaggtca ctatggctca agatgtgtac gactaaagaa aggtttatgc
+      361 tccttcccca aggacgcatt tgggactgct acttgcccct agcgaattca ctaggatttt
+      421 tgtagaacca tgagcgccct atccgatagc acagagacaa tgctacaagc aactgtgcat
+      481 gcgctcgatc gccgtgcatt aatacgtatt atagagtatc gtgtacgcta atatcttagt
+      541 gcaccgcacg ctggttggat acaattccgt gaaataattc ctgcttacac aggggctttc
+      601 tggcgcatgg ctgtgtctgg atgtttgtga taagaggctc caagaacccg gcgggaaatg
+      661 aggggaaacc ccggggagca acgacactaa gcctggcagt tgttcagata ggacgctttt
+      721 gtcagtgggc ggttttgcat ccactaacta tcataaacga cacaacgtcg aatgatcatc
+      781 ggcggtttgc atgtagagac agctcctgca acaccatacc ggctcgtgga attacgctgt
+      841 gcgccggccc tcattcgatt gtgtccagcg tcggcgcgaa tgatgattga gatgtgcttc
+      901 ggctcagagc gtgcacaggt agttctcccc ccttacctag ctaatccagc aattccacgc
+      961 tggcccgcgc gtccttgggt aacactggat ctgtacccaa atacaccgtc gggctagaga
+     1021 cgctccacct gcgtctatcg tacagtgcta aaatggcagc agatagtgaa acttccgcta
+     1081 agctagcccc tcagggtaca ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt
+     1141 tgtcggggac ctgccgtcac gcttccgagt gtatatccgg atttagttga cgtcatacag
+     1201 aggcactaag aagaataaac gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct
+     1261 cccttgcgcc gttcggcaag cgtccggtgt cgggctgcaa ggaataaatc tttatggacc
+     1321 agaggggctt gtttcctcat atgggtgcgt gcacttatac gattcaaagg tggatatggc
+     1381 cgcataacac gtagccaggc tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg
+     1441 tttttgtttt tcctttacga cacgaaccgc tctaacctgc tctatttcgc cacgttccag
+     1501 tgaacctctt agcctaccgc ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg
+     1561 gagaaatcgt tcaatattag aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc
+     1621 cgtttaacgg ctgccgtggt cataccgtga ggcaccacga ggggatgcta cgcaacatgc
+     1681 gaggtgtaat cagcagggaa gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat
+     1741 atgcataagg tgtcatttat attacaccta cgacactggt accggctcac agccaaatgc
+     1801 acagtctcaa gatagaattc gcaaaaatta ggcttatcgg gcgcttactc tttgttacac
+     1861 ttctggtctg tgagtgacgc cctgtgtccc atcactgcat gtgaggatgc gtgtactgca
+     1921 cctgtgaatt acagacgttt ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc
+     1981 tctatagggt gatctcgaca taccactatg gtttgcgcgt ttcgggtgct tttggcgagg
+     2041 gccaggtacg gcggtgagac agcgtatttt gcgaataggg tattcggacg cacggtgtat
+     2101 agctcttgga aaacgactct tcgacgggcg tgtagaagta gccaagcagt tcggttgtta
+     2161 tcactaaatg cggaccatgt gcagccgttt aggagaggag tctgcaatgg atcagctggt
+     2221 cagattgtac cactcggttg agcctaaggc acttcaggtg ctcggattgt aatgaaccct
+     2281 caggttacgc cgttgcgctg agatcccaca agccataagc aatgagaatc gagcagctat
+     2341 cgaattacgc agcacttgct gatgaactgg gtgcacctaa agcgcccgat aaaacggagg
+     2401 gagtgaggta actactacat tgcgagtagt gcgaggggcc tccgagacta cattagagca
+     2461 gccatgccga atacgacaaa atctatagcc ttgcgaacgt aggggactga tttatggaca
+     2521 acaggaccga aacaagttgg agccacaacg gagctatgga cgttttcact attgatgggt
+     2581 ggcttgcgtc cgcatcccag gtttctctgg ttaattttca tgacgattct ttgtggtacg
+     2641 atccaggcat aagatagggc acctaacccg atactgtgaa cttatatgac ggctgaacat
+     2701 gccctaatag tctgccaaaa gggaaaccta taacggctct aaacgggccc cgggtacgta
+     2761 acagcaatgt tcctgtccac caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat
+     2821 tccgttttac gccccagatc gcagctccct tgacagtgtc agttgaatcc ccattctagg
+     2881 tttcctgata aaactaagta cggggacgca tcagtcgaaa gcaatcacag ataatagata
+     2941 tcttgagcag aaagacgtct tcacgaatca ggagcgagtg tcccctttga aagtgcgggc
+     3001 aacaataggt gtgaggtttc acggttgctt gatcagtagc tgttcactct ctcgcaggcc
+     3061 tacatagtga ggtggtgaga ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc
+     3121 gggcacgcta acaaggacag gaattcgggt cgtcaaataa caatttacgt catcgcatcc
+     3181 ctcaagggta aggcgtgatc tccatctcgg ttcccaattg gtcattgtga tagccacact
+     3241 gcagttaccg aaggcgattt tatactaccc tgataagtgc tcgcagcccc tcctccctaa
+     3301 taatgtaacg acgagcatta acccaggagt atttctcacg ttgctcgtgc ccagccaagg
+     3361 cgatcaacgc agaccggata gcgttagcta gcccacgggt aaaagcgatt gttgtactct
+     3421 ttcatatgaa tacagcactc gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc
+     3481 acactggagg cgatgatcta gcccgtcttt caccccgtac ctttatactc ggccgcgtat
+     3541 ttctccaccg ggagctctgc ctaccaaagc gtcgtacgcc caggaagccg tttcctttat
+     3601 cctccctcat gtctcaacgc gcgagcatcg gagagtacgc gaaatcgact gtctggccaa
+     3661 cactggacag acgcgcgaga cactgataaa cccccatttt cgtggggtta gtaaatcggt
+     3721 ggcttcaaac ggttcgatcg ctcgcacgag cattagtcag gagtatgatt gcgcatcatc
+     3781 tctactccgt actaggttct gtagctcagg atctccgggg ggatcaagct tttatgtccc
+     3841 gcgggattag aagatatcca tccatatgtt tactttgatg cgggtccgag ctctctatga
+     3901 tgctgctttg acaaaatgtg gaaagcctca gcgaccgctc tggggtcaaa gctctacgac
+     3961 acgttgatgc taaacaagtt ggactactaa gcaaatgaag cggaagagat actgagcgct
+     4021 ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/partB.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,111 @@
+LOCUS       Exported                5022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partB
+VERSION     partB
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 5022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..5022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..2001
+                     /label="pB"
+                     /label="nonstandard type: annotation"
+     CDS             2123..3022
+                     /label="AmpR"
+     misc_feature    4023..4522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaggc ttgattgtta actaccgtat ggcggttacg atcgagtgac actattatta
+       61 gaccgctact ccaagtccca acttttcatc gccatacaga agagaacgag aaagtcgaag
+      121 agttatagcg tgtacacttc tgattagcta acgaatcgat gcgtacagca tactcgagca
+      181 actttatggg tcgtctgtct ccttgtaccc cgcttgacga ggatgtgttt gtaggcggct
+      241 tggatatcgg cagtgtatcc gcatggtcaa acactttagc ccgaccggtg ctcaaggtcg
+      301 aaatcctaat atagattggg ataggacccg tccattacta ggcgacattc gcagtcacga
+      361 gcccgcacgg ggtgcctcaa cacggtgaca ctcaattcgc cggcactgag tacgacgatc
+      421 gtgattgcca taccgtcatg ttttgtgtta cccctgataa gaagcgcaga tatggcacgg
+      481 gggcagaggg cggagtagac ccatgcaaaa ctctagcctc tgggcagcat gatcgacgta
+      541 gaacgccgtt gtgactcact agtttcagtt atgatgttca gccaagaatc ctccattttg
+      601 acgtgaacct tctcccttta caccttgaag ctgcaatatt aagtcgaccc tttaagttgc
+      661 cttgtcttgg tctagagccc gcagctcacc gataaaatga gcagtcaatt ttagcggcgg
+      721 ttgtccaggt tacatgcact ttgggctgga accgcgttac gtttggagta cttagaagtg
+      781 tcgtaggcat aggagagccg aaacttgata ttgggtctag ttagtgctct accccgcttc
+      841 ggatccgtaa tagtgatgtt gcataagacg cttgcctcaa ggcgacatac ggtggcggtt
+      901 gctggaaatg acgccccacc ccgtgataat ttggggacga gccgcacgat aacttctgcc
+      961 agcgaccgcc cctcccacgt ccgatggtga ttccgaattt tgattacatg ccagacacgc
+     1021 tttaatctcg ccaccacatt ggcaccccca ccaagtaatg tatgtaagaa gcagctgcgc
+     1081 cccaagttac gtgccgtttc cgatgggagc agcaataatg tcgatagcaa ccacccccct
+     1141 ctctactgac gaagcaacac cggggacacc gtcaccttgg cttcatttcg tattcattca
+     1201 cctacgcaca accgcctgac cgttcgttat cacgagccta tccccttcaa gcaatttccc
+     1261 ccccttgttc agcagcctac actatacgtt ggtacactgt gtgcgacaga tatttggtgc
+     1321 ccgtcttatt ctattctgag agagtttaat agccaaaaga tatgagtagg aacgggaggt
+     1381 acccgactcg cgttgaagca ctcttaagac ctctcttagc acttcgaagg gtaggtgcgt
+     1441 tcaaagaacc tctgctttta actaagatca aaaggattgc gtacaacttc cccgttaact
+     1501 ctccagagga tccgtagaag tctacaccaa aatacgtttg gtttcgccaa ggtgactatc
+     1561 ggtacttgtg cacgtaacag ggtaaagaat tgaaagcctc aaattgtacg acgttacgcc
+     1621 cggacggtcg ccggtgatag ggtgacgcat ttgcgtttgt catatcattt gggattagac
+     1681 ggagctggtg tacctctatg gacgttacaa aaccttgtgg taacagcctg ggtgccatcc
+     1741 acctagtccg aagtttcctt ctaaccgcgg catcagatgg atatgtacct tatggcgctt
+     1801 cccgggaagt ccaattcttc gtgttgaagg gacagctcta caggcctggc cacttgtggc
+     1861 gcatctaagt agtctaggtg catgattctc tcccttgggg gcgctgtcgt gggtcctgcc
+     1921 gagccacacc ctaacctcac gtcgcaagac ttggtaaata gctttttttt ttatgcccaa
+     1981 tctatttacg taacaatcga catcagagga ggggcagaga cgctccacct gcgtctatcg
+     2041 tacagtgcta aaatggcagc agatagtgaa acttccgcta agctagcccc tcagggtaca
+     2101 ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt tgtcggggac ctgccgtcac
+     2161 gcttccgagt gtatatccgg atttagttga cgtcatacag aggcactaag aagaataaac
+     2221 gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct cccttgcgcc gttcggcaag
+     2281 cgtccggtgt cgggctgcaa ggaataaatc tttatggacc agaggggctt gtttcctcat
+     2341 atgggtgcgt gcacttatac gattcaaagg tggatatggc cgcataacac gtagccaggc
+     2401 tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg tttttgtttt tcctttacga
+     2461 cacgaaccgc tctaacctgc tctatttcgc cacgttccag tgaacctctt agcctaccgc
+     2521 ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg gagaaatcgt tcaatattag
+     2581 aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc cgtttaacgg ctgccgtggt
+     2641 cataccgtga ggcaccacga ggggatgcta cgcaacatgc gaggtgtaat cagcagggaa
+     2701 gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat atgcataagg tgtcatttat
+     2761 attacaccta cgacactggt accggctcac agccaaatgc acagtctcaa gatagaattc
+     2821 gcaaaaatta ggcttatcgg gcgcttactc tttgttacac ttctggtctg tgagtgacgc
+     2881 cctgtgtccc atcactgcat gtgaggatgc gtgtactgca cctgtgaatt acagacgttt
+     2941 ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc tctatagggt gatctcgaca
+     3001 taccactatg gtttgcgcgt ttcgggtgct tttggcgagg gccaggtacg gcggtgagac
+     3061 agcgtatttt gcgaataggg tattcggacg cacggtgtat agctcttgga aaacgactct
+     3121 tcgacgggcg tgtagaagta gccaagcagt tcggttgtta tcactaaatg cggaccatgt
+     3181 gcagccgttt aggagaggag tctgcaatgg atcagctggt cagattgtac cactcggttg
+     3241 agcctaaggc acttcaggtg ctcggattgt aatgaaccct caggttacgc cgttgcgctg
+     3301 agatcccaca agccataagc aatgagaatc gagcagctat cgaattacgc agcacttgct
+     3361 gatgaactgg gtgcacctaa agcgcccgat aaaacggagg gagtgaggta actactacat
+     3421 tgcgagtagt gcgaggggcc tccgagacta cattagagca gccatgccga atacgacaaa
+     3481 atctatagcc ttgcgaacgt aggggactga tttatggaca acaggaccga aacaagttgg
+     3541 agccacaacg gagctatgga cgttttcact attgatgggt ggcttgcgtc cgcatcccag
+     3601 gtttctctgg ttaattttca tgacgattct ttgtggtacg atccaggcat aagatagggc
+     3661 acctaacccg atactgtgaa cttatatgac ggctgaacat gccctaatag tctgccaaaa
+     3721 gggaaaccta taacggctct aaacgggccc cgggtacgta acagcaatgt tcctgtccac
+     3781 caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat tccgttttac gccccagatc
+     3841 gcagctccct tgacagtgtc agttgaatcc ccattctagg tttcctgata aaactaagta
+     3901 cggggacgca tcagtcgaaa gcaatcacag ataatagata tcttgagcag aaagacgtct
+     3961 tcacgaatca ggagcgagtg tcccctttga aagtgcgggc aacaataggt gtgaggtttc
+     4021 acggttgctt gatcagtagc tgttcactct ctcgcaggcc tacatagtga ggtggtgaga
+     4081 ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc gggcacgcta acaaggacag
+     4141 gaattcgggt cgtcaaataa caatttacgt catcgcatcc ctcaagggta aggcgtgatc
+     4201 tccatctcgg ttcccaattg gtcattgtga tagccacact gcagttaccg aaggcgattt
+     4261 tatactaccc tgataagtgc tcgcagcccc tcctccctaa taatgtaacg acgagcatta
+     4321 acccaggagt atttctcacg ttgctcgtgc ccagccaagg cgatcaacgc agaccggata
+     4381 gcgttagcta gcccacgggt aaaagcgatt gttgtactct ttcatatgaa tacagcactc
+     4441 gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc acactggagg cgatgatcta
+     4501 gcccgtcttt caccccgtac ctttatactc ggccgcgtat ttctccaccg ggagctctgc
+     4561 ctaccaaagc gtcgtacgcc caggaagccg tttcctttat cctccctcat gtctcaacgc
+     4621 gcgagcatcg gagagtacgc gaaatcgact gtctggccaa cactggacag acgcgcgaga
+     4681 cactgataaa cccccatttt cgtggggtta gtaaatcggt ggcttcaaac ggttcgatcg
+     4741 ctcgcacgag cattagtcag gagtatgatt gcgcatcatc tctactccgt actaggttct
+     4801 gtagctcagg atctccgggg ggatcaagct tttatgtccc gcgggattag aagatatcca
+     4861 tccatatgtt tactttgatg cgggtccgag ctctctatga tgctgctttg acaaaatgtg
+     4921 gaaagcctca gcgaccgctc tggggtcaaa gctctacgac acgttgatgc taaacaagtt
+     4981 ggactactaa gcaaatgaag cggaagagat actgagcgct ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/partC.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,111 @@
+LOCUS       Exported                5022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   partC
+VERSION     partC
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 5022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..5022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     misc_feature    22..2001
+                     /label="pC"
+                     /label="nonstandard type: annotation"
+     CDS             2123..3022
+                     /label="AmpR"
+     misc_feature    4023..4522
+                     /label="RepO_1"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 cgtctcaggg caaagattac gatagaaaaa cactcgacac agagtagtat gataaaagtt
+       61 gggacggcat gctggactcg agaagtgtcg atccggcaat ccagatacgg caatggtacc
+      121 ggtcacacct cattctaaga gcagtcaggg gctgtcaggt ctacagggca ccggccctga
+      181 ggcccttggg ctagggtctg tcacccctat ctgcactgac tttaaagtaa ccgagcaata
+      241 agacaatcaa tcgcagggct ctggatcggg gtccgaaggc ggggtgcagt gtctccctaa
+      301 ttgttaagct caaaagagca gccactcgtt ctcgatcctt agtccatcgc cgtgaggtac
+      361 aagcagtaca cccacggaag gcccggcatt gaagatgcaa gaaatagagc actggggtga
+      421 cgacggcatg ctaaggtaag aaggcaaatt ctggaggact gacttcccca caagcggcgt
+      481 aagctcggat aagattggga taaacggacc acggcggctg gatcttcacc cctttgcacg
+      541 gtatgaaaac ggatcaggat tctcttccac ctattgcacc tgctgagaag agagcgctgg
+      601 ggggacgtta cttatcccaa tcgcgacgtc acggacaaca tcgtgttaca ggtcaggctc
+      661 gaaatcctag gcagctggta tccgacgcgc aagttatcta ccaaataagt taggcgatcg
+      721 aaatcatagg ctgtttagtg cttttcttgg tatcatcctg aacttctgtc acctccgagg
+      781 ccgaagcaac tattatgagg acgactcgat gattgtccgg agatgttgca ccccggcaag
+      841 cctagaaaac cccggtcctt tgagttttaa tctaatagta gaagttctcg gaaatcagag
+      901 ctggagactc ggtgacgtta tagaaatgtt cgcacgaaga gcgcgacatg tcctacttca
+      961 caagatgctt tctaggaggg gatctggatt ctcaagccct acacatggtc cgtggtgtat
+     1021 gttggatcgt agtgctttta ccgactatgt cgcgttaaat tgtctttcat ttctacaatt
+     1081 cggggagcat ggggccatgt gacttaggtt cagaaggtgc gagcgggcgt actacgtttg
+     1141 gtggtcgtgt ataatcagaa gaatcggcga tatccgctag caagcaaagt gtccttgacg
+     1201 cttgtggaaa tccaactatt tcctgcctct caagtgttta gaaaaatatc ccctggagga
+     1261 gatatcgctc ctctcttctg cgaccaacac cagttcaatt ccgcagtgca gcagtcctat
+     1321 tccgcatgga tcacgctgac gagatgcggg gttgagacta ccccaaaaga tatgttgaga
+     1381 taaattacca ggatggataa tctggtaccg gtgcgaaagg gtggttacac cagagtcgcc
+     1441 tgatgagctt atgcgcaatt tcaagtccct atgttttact atgaaagtac gaccgagccg
+     1501 ctagcctgag tcaaatagcg cagaatttgg gtcgtggaga tcgcgcttgt taacctggtc
+     1561 taggcgcatc tgagtcataa cggggttata acgactgtca acgtgtgacc gcatatcctg
+     1621 caaggcgaac aaataacgcc ccgcccaaaa tattacattt aagtagttat ctaactcccg
+     1681 gcatgcgggg catttggggg cagcgtgccc attccgcccc tatgcctgtt tcaacacgca
+     1741 accgtagaga ttggctagga tgggttttca cgagccaact gccacattag acatagaatt
+     1801 ccgataagta taagagatat cagcgaggtt cagggtagtt tggaacgaca gccggttcag
+     1861 aagttcagta tggtcattca tcatccgttg tgttgagtcc tttagatcgt ggctttatca
+     1921 tgcatgtctc ccgccagccc tcaaactatg tcgtcacgcg catgtttaca ttatatggaa
+     1981 caaaacgaga ggtagaagcc aatcactatc cggcaagaga cgctccacct gcgtctatcg
+     2041 tacagtgcta aaatggcagc agatagtgaa acttccgcta agctagcccc tcagggtaca
+     2101 ctgcaccgag gcgtgctgtc aatacttgat taagtcgggt tgtcggggac ctgccgtcac
+     2161 gcttccgagt gtatatccgg atttagttga cgtcatacag aggcactaag aagaataaac
+     2221 gcttacctcc agcaatcgtg tagtgtcagg tgtacgttct cccttgcgcc gttcggcaag
+     2281 cgtccggtgt cgggctgcaa ggaataaatc tttatggacc agaggggctt gtttcctcat
+     2341 atgggtgcgt gcacttatac gattcaaagg tggatatggc cgcataacac gtagccaggc
+     2401 tatagtcccg cggcctaatt ccttcgagtg cgggtgcctg tttttgtttt tcctttacga
+     2461 cacgaaccgc tctaacctgc tctatttcgc cacgttccag tgaacctctt agcctaccgc
+     2521 ccacgtacgg tgggacgcgt cgagcagtta aggtactgtg gagaaatcgt tcaatattag
+     2581 aaaacaggcg gtgtacgaat tactgtgtcc cggtgttgcc cgtttaacgg ctgccgtggt
+     2641 cataccgtga ggcaccacga ggggatgcta cgcaacatgc gaggtgtaat cagcagggaa
+     2701 gatcccgggg atcgaaagcg gtccgcgatt tgcgaccgat atgcataagg tgtcatttat
+     2761 attacaccta cgacactggt accggctcac agccaaatgc acagtctcaa gatagaattc
+     2821 gcaaaaatta ggcttatcgg gcgcttactc tttgttacac ttctggtctg tgagtgacgc
+     2881 cctgtgtccc atcactgcat gtgaggatgc gtgtactgca cctgtgaatt acagacgttt
+     2941 ccctaccagg gcgctacgtt ataatgttcg gttgcaaccc tctatagggt gatctcgaca
+     3001 taccactatg gtttgcgcgt ttcgggtgct tttggcgagg gccaggtacg gcggtgagac
+     3061 agcgtatttt gcgaataggg tattcggacg cacggtgtat agctcttgga aaacgactct
+     3121 tcgacgggcg tgtagaagta gccaagcagt tcggttgtta tcactaaatg cggaccatgt
+     3181 gcagccgttt aggagaggag tctgcaatgg atcagctggt cagattgtac cactcggttg
+     3241 agcctaaggc acttcaggtg ctcggattgt aatgaaccct caggttacgc cgttgcgctg
+     3301 agatcccaca agccataagc aatgagaatc gagcagctat cgaattacgc agcacttgct
+     3361 gatgaactgg gtgcacctaa agcgcccgat aaaacggagg gagtgaggta actactacat
+     3421 tgcgagtagt gcgaggggcc tccgagacta cattagagca gccatgccga atacgacaaa
+     3481 atctatagcc ttgcgaacgt aggggactga tttatggaca acaggaccga aacaagttgg
+     3541 agccacaacg gagctatgga cgttttcact attgatgggt ggcttgcgtc cgcatcccag
+     3601 gtttctctgg ttaattttca tgacgattct ttgtggtacg atccaggcat aagatagggc
+     3661 acctaacccg atactgtgaa cttatatgac ggctgaacat gccctaatag tctgccaaaa
+     3721 gggaaaccta taacggctct aaacgggccc cgggtacgta acagcaatgt tcctgtccac
+     3781 caaggcgttt ttagtaaccg ccgatcgatc tcgatcgaat tccgttttac gccccagatc
+     3841 gcagctccct tgacagtgtc agttgaatcc ccattctagg tttcctgata aaactaagta
+     3901 cggggacgca tcagtcgaaa gcaatcacag ataatagata tcttgagcag aaagacgtct
+     3961 tcacgaatca ggagcgagtg tcccctttga aagtgcgggc aacaataggt gtgaggtttc
+     4021 acggttgctt gatcagtagc tgttcactct ctcgcaggcc tacatagtga ggtggtgaga
+     4081 ttgttcaggt ctgtctcctg cgcggttgtc gagccccgtc gggcacgcta acaaggacag
+     4141 gaattcgggt cgtcaaataa caatttacgt catcgcatcc ctcaagggta aggcgtgatc
+     4201 tccatctcgg ttcccaattg gtcattgtga tagccacact gcagttaccg aaggcgattt
+     4261 tatactaccc tgataagtgc tcgcagcccc tcctccctaa taatgtaacg acgagcatta
+     4321 acccaggagt atttctcacg ttgctcgtgc ccagccaagg cgatcaacgc agaccggata
+     4381 gcgttagcta gcccacgggt aaaagcgatt gttgtactct ttcatatgaa tacagcactc
+     4441 gcgaatgcaa gcctacgtcg gctcgattct cttcctcacc acactggagg cgatgatcta
+     4501 gcccgtcttt caccccgtac ctttatactc ggccgcgtat ttctccaccg ggagctctgc
+     4561 ctaccaaagc gtcgtacgcc caggaagccg tttcctttat cctccctcat gtctcaacgc
+     4621 gcgagcatcg gagagtacgc gaaatcgact gtctggccaa cactggacag acgcgcgaga
+     4681 cactgataaa cccccatttt cgtggggtta gtaaatcggt ggcttcaaac ggttcgatcg
+     4741 ctcgcacgag cattagtcag gagtatgatt gcgcatcatc tctactccgt actaggttct
+     4801 gtagctcagg atctccgggg ggatcaagct tttatgtccc gcgggattag aagatatcca
+     4861 tccatatgtt tactttgatg cgggtccgag ctctctatga tgctgctttg acaaaatgtg
+     4921 gaaagcctca gcgaccgctc tggggtcaaa gctctacgac acgttgatgc taaacaagtt
+     4981 ggactactaa gcaaatgaag cggaagagat actgagcgct ct
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/construct_3/provided_parts_records/receptor.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,75 @@
+LOCUS       Exported                3022 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  natural circular DNA.
+ACCESSION   receptor
+VERSION     receptor
+KEYWORDS    .
+SOURCE      natural DNA sequence
+  ORGANISM  unspecified
+            .
+REFERENCE   1  (bases 1 to 3022)
+  AUTHORS   .
+  TITLE     Direct Submission
+  JOURNAL   Exported Thursday, Oct 17, 2019 from SnapGene Viewer 4.3.11
+            https://www.snapgene.com
+FEATURES             Location/Qualifiers
+     source          1..3022
+                     /organism="unspecified"
+                     /mol_type="genomic DNA"
+     CDS             523..1222
+                     /label="KanR"
+     misc_feature    2023..2522
+                     /label="RepO_2"
+                     /label="nonstandard type: rep._origin"
+ORIGIN
+        1 attgagagac gcgtctcagg cactttcgct atatggcgac gtgcgaaaaa cgcgatttgg
+       61 ccgaaatctc aaataataat gcaatgtgtt ggctaagctc gggcaaactc aggatgtgac
+      121 ctagtaccct ctgccccgtg agtacccata cccaatcaag ccagcccaat tcgcgatagg
+      181 tacagataag ccttactcgt cccgatcctt gactaaaaca ctcatcctcg atagtacgtg
+      241 ccttgtagag tccgacggcc ataggtaaac gaccagttag tgtcgtaggg tcctccactt
+      301 tagctacgat tgcaactccc ttaccttcgt gccggcgcgc tcctcttgct accatcacgc
+      361 ttcaaatcgg gtggaagacc aactgatgaa tgagggtgca gaccccagtg gagcataata
+      421 cgatgcgccc acgatactct agagccacgc gtcgacgttc gtaagatgtc ccgggcccgt
+      481 gggtggccac atcggccgcc catccttgtg tcttccgata agtactccct ttcaaggact
+      541 ctccgatacc ggcttagaac acgaacggac aacgctttca gcgctgagaa atgacggctg
+      601 cttcaaccag aacgatacag ccttctttgc tagatagcct ctagtgtcag ccaccaagtc
+      661 cgccacctaa tccttcgccg agggtcaaag cttctgacca tccaattgtt aggcactctt
+      721 ggaaccttgc aagtacctga tcatgcagaa aatggacttg cccggagcat attcattata
+      781 agtaccattc acggcaggtt atagtatgcg ttgacgcggg gtgatacggt aatgcaagta
+      841 accatcgggc cgcggtatgc acatagaagg gtgtttgact tggtttctta cagtgcaact
+      901 gcatatgtgg accgccattc caagtgaaag gatacgaagg gaggtttcgg actgctatcc
+      961 agagcatgga aagccttcaa ggtggtgcgc actggaatag tgactcgggg attgtatgtc
+     1021 gagccgcgtc cagtctttcc tatacttatg cgagcaaata gaccgagtgg aacttgattg
+     1081 catcagccga atcacgatga aaactcagct tacaattcgt aagcacttca aatatatgcc
+     1141 cggaaaatcg ccgtccagtg acttgtaata gctccagggt cagtagcgct gccctggccg
+     1201 aaccaggtga cggttacgtg gacctcacag tatcaatgtt gcagtgcgcc accagattaa
+     1261 gctggccgtg tcatggtgaa caaccgtgat aaaagaacgg gagtatgaga gtgccaccca
+     1321 agagtggtac tccaggattc ggaaagggga gggggctttt cctgcttaac aaccttcctc
+     1381 ggcacggtct aagggtctca ctcgtcctaa actctaccat catgcagcta ggcgaaagta
+     1441 taactttagg gtctctcagg atgagctatc tgtaccacgg tgatgagata agtagggggt
+     1501 gcgctagggt cgttcgtgtt ttcatcgtct atagtaccta tttctcgtct tccattagcg
+     1561 catacggcca tctcgcggcg gctacgtcag ccagcgtcaa ccccaagtca ctaatttccg
+     1621 ttattatagg tgtagctcat aacttcttct gccgaccaag ccaaaagctt tgcggcagct
+     1681 gcaaggccac gttaggctct cggacggcag atatttatta ataacaccac tgggttccag
+     1741 ctcttaacgc acttcccttc actggatcac ctgtacgccc ataagctaag cctgaagcca
+     1801 cggcctcaat cgtggacatt actcttagca aatccacatt accatgtcac caatccccga
+     1861 accccgcgcc gacctaaggc ggggtacctc gtgcacggca gcatcgaggg aaatatatta
+     1921 caaaagacgc ggcgatccaa cggttgataa aaacagttcc gtggaaggcg gacgtgtgct
+     1981 tagcgcatgc ttctcaccga gtgacagcac cgattccatc tcgctagcac gccgatgagc
+     2041 ctcgctgtgg gactatggtc cagcctatgc ttaactaggc agaacagaga gtatggtggt
+     2101 cctcggtaag gtcgatttgg tggcactcgc aagatacgcg ggttattagt agagcgcagt
+     2161 cagggcccat cgccagcatt tgcatgctcg ccgtacgcta tccttgtact acggttcctc
+     2221 agtggctata aaggaatgtc acaactccat tagccccttt tgttcagcgc ttagtcatgg
+     2281 tgggactgac tcaccgagac tacatacgga ttgtgcccgc agagacctgc ctttcatgct
+     2341 ggggttttgt aagcagctcc acggggtagt gtcaccatgc cttcgaccta tgcttatgaa
+     2401 acccgaggta atgcggcagg atcccgtgga tcctacgctt agcctgttta agccatcgtt
+     2461 ctcctcggcc cccagccagc gcgtattccg cgcattcctc cgagtgcgta tcgcgcaaac
+     2521 cacaagatac ctctcaacga ctagcggtga accaccaagc ttgacatacg tgccccttcg
+     2581 gaaacgttat tagtggtcct gagtggtacg tcccgagtat acggggcagc gatagtaacg
+     2641 ctacaaatag ctaggcgagg ttgcgatacc tgaatgaata tccaacagtg gcaacgaggc
+     2701 gcttagaaag ggaaactaca taccagttca atccgggatg acttcaaaag ggtatgtttg
+     2761 ttttgaagcg aagctttggt tgtcattcag ttcctagagt ttacggcgct gatatggctc
+     2821 taggagtcca gtgaattcgt cagcataagc cccacatcgt aggaaattgc ccggtcgtcg
+     2881 gtctagcaaa tgctcggtaa actgggagtg tactaacacc atgtcgtggt aacccggtgg
+     2941 accggctact agagacatat ttattcatgc tcagttgaac ctgtttcgag ggggccgagt
+     3001 taacataaag tgattagtca ca
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/example_assembly_plan_errors.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,7 @@
+assembly_name;message;suggestion;data;used_in
+construct_1;Wrong number of constructs;expected_: 1,found: 0;
+construct_1;Some parts are unused;unused_parts: partA & partB & partC & receptor;
+construct_2;Wrong number of constructs;expected_: 1,found: 0;
+construct_2;Some parts are unused;unused_parts: partA2 & partB2 & partC & receptor;
+construct_3;Wrong number of constructs;expected_: 1,found: 0;
+construct_3;Some parts are unused;unused_parts: partA & partA2 & partB & partC & receptor;
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/example_assembly_plan_simulation_stats.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+cancelled_assemblies: 0
+errored_assemblies: 3
+valid_assemblies: 0
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/example_assembly_plan_simulation/example_assembly_plan_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,1 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,parts
Binary file test-data/init/gibson_assembly_simulation/Report.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/all_construct_records/construct_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,191 @@
+LOCUS       construct_1             8000 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_1
+VERSION     construct_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1781..1800
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    1781..3581
+                     /source="Frag_3"
+                     /indicates_part=True
+                     /note="From Frag_3"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3582..3599
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3582..4781
+                     /source="Frag_4"
+                     /indicates_part=True
+                     /note="From Frag_4"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        4782..4799
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    4782..6190
+                     /source="Frag_5"
+                     /indicates_part=True
+                     /note="From Frag_5"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    6191..8000
+                     /source="Frag_1"
+                     /indicates_part=True
+                     /note="From Frag_1"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6191..6209
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    8021..9800
+                     /source="Frag_2"
+                     /indicates_part=True
+                     /note="From Frag_2"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cccagatcgc agctcccttg acagtgtcag ttgaatcccc attctaggtt tcctgataaa
+       61 actaagtacg gggacgcatc agtcgaaagc aatcacagat aatagatatc ttgagcagaa
+      121 agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa gtgcgggcaa caataggtgt
+      181 gaggtttcac ggttgcttga tcagtagctg ttcactctct cgcaggccta catagtgagg
+      241 tggtgagatt gttcaggtct gtctcctgcg cggttgtcga gccccgtcgg gcacgctaac
+      301 aaggacagga attcgggtcg tcaaataaca atttacgtca tcgcatccct caagggtaag
+      361 gcgtgatctc catctcggtt cccaattggt cattgtgata gccacactgc agttaccgaa
+      421 ggcgatttta tactaccctg ataagtgctc gcagcccctc ctccctaata atgtaacgac
+      481 gagcattaac ccaggagtat ttctcacgtt gctcgtgccc agccaaggcg atcaacgcag
+      541 accggatagc gttagctagc ccacgggtaa aagcgattgt tgtactcttt catatgaata
+      601 cagcactcgc gaatgcaagc ctacgtcggc tcgattctct tcctcaccac actggaggcg
+      661 atgatctagc ccgtctttca ccccgtacct ttatactcgg ccgcgtattt ctccaccggg
+      721 agctctgcct accaaagcgt cgtacgccca ggaagccgtt tcctttatcc tccctcatgt
+      781 ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt ctggccaaca ctggacagac
+      841 gcgcgagacg ctgataaacc cccattttcg tggggttagt aaatcggtgg cttcaaacgg
+      901 ttcgatcgct cgcacgagca ttagtcagga gtatgattgc gcatcatctc tactccgtac
+      961 taggttctgt agctcaggat ctccgggggg atcaagcttt tatgtcccgc gggattagaa
+     1021 gatatccatc catatgttta ctttgatgcg ggtccgagct ctctatgatg ctgctttgac
+     1081 aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc tctacgacac gttgatgcta
+     1141 aacaagttgg actactaagc aaatgaagcg gaagagatac tgagcgctct ctctatgact
+     1201 ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga aatctcaaat aataatgcaa
+     1261 tgtgttggct aagctcgggc aaactcagga tgtgacctag taccctctgc cccgtgagta
+     1321 cccataccca atcaagccag cccaattcgc gataggtaca gataagcctt actcgtcccg
+     1381 atccttgact aaaacactca tcctcgatag tacgtgcctt gtagagtccg acggccatag
+     1441 gtaaacgacc agttagtgtc gtagggtcct ccactttagc tacgattgca actcccttac
+     1501 cttcgtgccg gcgcgctcct cttgctacca tcacgcttca aatcgggtgg aagaccaact
+     1561 gatgaatgag ggtgcagacc ccagtggagc ataatacgat gcgcccacga tactctagag
+     1621 ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt ggccacatcg gccgcccatc
+     1681 cttgtgtctt ccgataagta ctccctttca aggactctcc gataccggct tagaacacga
+     1741 acggacaacg ctttcagcgc tgagaaatga cggctgcttc aaccagaacg atacagcctt
+     1801 ctttgctaga tagcctctag tgtcagccac caagtccgcc acctaatcct tcgccgaggg
+     1861 tcaaagcttc tgaccatcca attgttaggc actcttggaa ccttgcaagt acctgatcat
+     1921 gcagaaaatg gacttgcccg gagcatattc attataagta ccattcacgg caggttatag
+     1981 tatgcgttga cgcggggtga tacggtaatg caagtaacca tcgggccgcg gtatgcacat
+     2041 agaagggtgt ttgacttggt ttcttacagt gcaactgcat atgtggaccg ccattccaag
+     2101 tgaaaggata cgaagggagg tttcggactg ctatccagag catggaaagc cttcaaggtg
+     2161 gtgcgcactg gaatagtgac tcggggattg tatgtcgagc cgcgtccagt ctttcctata
+     2221 cttatgcgag caaatagacc gagtggaact tgattgcatc agccgaatca cgatgaaaac
+     2281 tcagcttaca attcgtaagc acttcaaata tatgcccgga aaatcgccgt ccagtgactt
+     2341 gtaatagctc cagggtcagt agcgctgccc tggccgaacc aggtgacggt tacgtggacc
+     2401 tcacagtatc aatgttgcag tgcgccacca gattaagctg gccgtgtcat ggtgaacaac
+     2461 cgtgataaaa gaacgggagt atgagagtgc cacccaagag tggtactcca ggattcggaa
+     2521 aggggagggg gcttttcctg cttaacaacc ttcctcggca cggtctaagc gtctcactcg
+     2581 tcctaaactc taccatcatg cagctaggcg aaagtataac tttagggtct atcaggatga
+     2641 gctatctgta ccacggtgat gagataagta gggggtgcgc tagggtcgtt cgtgttttca
+     2701 tcgtctatag tacctatttc tcgtcttcca ttagcgcata cggccatctc gcggcggcta
+     2761 cgtcagccag cgtcaacccc aagtcactaa tttccgttat tataggtgta gctcataact
+     2821 tcttctgccg accaagccaa aagctttgcg gcagctgcaa ggccacgtta ggctctcgga
+     2881 cggcagatat ttattaataa caccactggg ttccagctct taacgcactt cccttcactg
+     2941 gatcacctgt acgcccataa gctaagcctg aagccacggc ctcaatcgtg gacattactc
+     3001 ttagcaaatc cacattacca tgtcaccaat ccccgaaccc cgcgccgacc taaggcgggg
+     3061 tacctcgtgc acggcagcat cgagggaaat atattacaaa agacgcggcg atccaacggt
+     3121 tgataaaaac agttccgtgg aaggcggacg tgtgcttagc gcatgcttct caccgagtga
+     3181 cagcaccgat tccatctcgc tagcacgccg atgagcctcg ctgtgggact atggtccagc
+     3241 ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc ggtaaggtcg atttggtggc
+     3301 actcgcaaga tacgcgggtt attagtagag cgcagtcagg gcccatcgcc agcatttgca
+     3361 tgctcgccgt acgctatcct tgtactacgg ttcctcagtg gctataaagg aatgtcacaa
+     3421 ctccattagc cccttttgtt cagcgcttag tcatggtggg actgactcac cgagactaca
+     3481 tacggattgt gcccgcagag acatgccttt catgctgggg ttttgtaagc agctccacgg
+     3541 ggtagtgtca ccatgccttc gacctatgct tatgaaaccc gaggtaatgc ggcaggatcc
+     3601 cgtggatcct acgcttagcc tgtttaagcc atcgttctcc tcggccccca gccagcgcgt
+     3661 attccgcgca ttcctccgag tgcgtatcgc gcaaaccaca agatacctct caacgactag
+     3721 cggtgaacca ccaagcttga catacgtgcc ccttcggaaa cgttattagt ggtcctgagt
+     3781 ggtacgtccc gagtatacgg ggcagcgata gtaacgctac aaatagctag gcgaggttgc
+     3841 gatacctgaa tgaatatcca acagtggcaa cgagacgctt agaaagggaa actacatacc
+     3901 agttcaatcc gggatgactt caaaagggta tgtttgtttt gaagcgaagc tttggttgtc
+     3961 attcagttcc tagagtttac ggcgctgata tggctctagg agtccagtga attcgtcagc
+     4021 ataagcccca catcgtagga aattgcccgg tcgtcggtct agcaaatgct cggtaaactg
+     4081 ggagtgtact aacaccatgt cgtggtaacc cggtggaccg gctactagag acatatttat
+     4141 tcatgctcag ttgaacctgt ttcgaggggg ccgagttaac ataaagtgat tagtcacagc
+     4201 gcattaagat agaacaggga tatagctcgt tgcatccata aattgcccac cgtagggaga
+     4261 acgccgttgg aaaatgagag ttaggcgatg agcggttgtc gcccgcacag acaaaggatg
+     4321 cctttataaa tagtagcggc cttgtctgca ccagacgttt gtgggtcgac gtgctattct
+     4381 agccaaaagc aaaatgtatc atactacagg caataggccc tatgctgacc aaacttgggg
+     4441 acccttgcgc cttctctctt acgcataaca tgcataggta cctctactca tcaggcaggg
+     4501 cggcgtgagg tcactatggc tcaagatgtg tacgactaaa gaaaggttta tgctccttcc
+     4561 ccaaggacgc atttgggact gctacttgcc cctagcgaat tcactaggat ttttgtagaa
+     4621 ccatgagcgc cctatccgat agcacagaga caatgctaca agcaactgtg catgcgctcg
+     4681 atcgccgtgc attaatacgt attatagcgt atcgtgtacg ctaatatctt agtgcaccgc
+     4741 acgctggttg gatacaattc cgtgaaataa ttcctgctta cacaggggct ttctggcgca
+     4801 tggctgtgtc tggatgtttg tgataagagg ctccatgaac ccggcgggaa atgaggggaa
+     4861 accccgggga gcaacgacac taagcctggc agttgttcag ataggacgct tttgtcagtg
+     4921 ggcggttttg catccactaa ctatcataaa cgacacaacg tcgaatgatc atcggcggtt
+     4981 tgcatgtaga gacagctcct gcaacaccat accggctcgt ggaattacgc tgtgcgccgg
+     5041 ccctcattcg attgtgtcca gcgtcggcgc gaatgatgat tgagatgtgc ttcggctcag
+     5101 agcgtgcaca ggtagttctc cccccttacc tagctgatcc agcaattcca cgctggcccg
+     5161 cgcgtccttg ggtaacactg gatctgtacc caaatacacc gtcgtgattg ttaactaccg
+     5221 tatggcggtt acgatcgagt gacactatta ttagaccgct actccaagtc ccaacttttc
+     5281 atcgccatac agaagagaac gagaaagtcg aagagttata gcgtgtacac ttctgattag
+     5341 ctaacgaatc gatgcgtaca gcatactcga gcaactttat gggtcgtctg tctccttgta
+     5401 ccccgcttga cgaggatgtg tttgtaggcg gcttggatat cggcagtgta tccgcatggt
+     5461 caaacacttt agcccgaccg gtgctcaagg tcgaaatcct aatatagatt gggataggac
+     5521 ccgtccatta ctaggcgaca ttcgcagtca cgagcccgca cggggtgcct caacacggtg
+     5581 acactcaatt cgccggcact gagtacgacg atcgtgattg ccataccgtc atgttttgtg
+     5641 ttacccctga taagaagcgc agatatggca cgggggcaga gggcggagta gacccatgca
+     5701 aaactctagc ctctgggcag catgatcgac gtagaacgcc gttgtgactc actagtttca
+     5761 gttatgatgt tcagccaaga atcctccatt ttgacgtgaa ccttctccct ttacaccttg
+     5821 aagctgcaat attaagtcga ccctttaagt tgccttgtct tggtctagag cccgcagctc
+     5881 accgataaaa tgagcagtca attttagcgg cggttgtcca ggttacatgc actttgggct
+     5941 ggaaccgcgt tacgtttgga gtacttagaa gtgtcgtagg cataggagag ccgaaacttg
+     6001 atattgggtc tagttagtgc tctaccccgc ttcggatccg taatagtgat gttgcatgag
+     6061 acgcttgcct caaggcgaca tacggtggcg gttgctggaa atgacgcccc accccgtgat
+     6121 aatttgggga cgagccgcac gataacttct gccagcgacc gcccctccca cgtccgatgg
+     6181 tgattccgaa ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac
+     6241 ttccgctaag ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta
+     6301 agtcgggttg tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg
+     6361 tcatacagag gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg
+     6421 tacgttctcc cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt
+     6481 tatggaccag aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg
+     6541 gatatggccg cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg
+     6601 ggtgcctgtt tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca
+     6661 cgttccagtg aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag
+     6721 gtactgtgga gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg
+     6781 gtgttgcccg tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg
+     6841 caacatgcga ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg
+     6901 cgaccgatat gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag
+     6961 ccaaatgcac agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt
+     7021 tgttacactt ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt
+     7081 gtactgcacc tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt
+     7141 tgcaaccctc tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt
+     7201 tggcgagggc caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca
+     7261 cggtgtatag ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc
+     7321 ggttgttatc actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat
+     7381 cagctggtca gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa
+     7441 tgaaccctca ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga
+     7501 gcagctatcg aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa
+     7561 aacggaggga gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca
+     7621 ttagagcagc catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt
+     7681 tatggacaac aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat
+     7741 tgatgggtgg cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt
+     7801 gtggtacgat ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg
+     7861 ctgaacatgc cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg
+     7921 ggtacgtaac agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc
+     7981 gatcgaattc cgttttacgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/all_construct_records/construct_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,191 @@
+LOCUS       construct_2             8000 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_2
+VERSION     construct_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1781..1800
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    1781..3581
+                     /source="Frag_3"
+                     /indicates_part=True
+                     /note="From Frag_3"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3582..3599
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3582..4781
+                     /source="Frag_4b"
+                     /indicates_part=True
+                     /note="From Frag_4b"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        4782..4799
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    4782..6190
+                     /source="Frag_5"
+                     /indicates_part=True
+                     /note="From Frag_5"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    6191..8000
+                     /source="Frag_1"
+                     /indicates_part=True
+                     /note="From Frag_1"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6191..6209
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    8021..9800
+                     /source="Frag_2"
+                     /indicates_part=True
+                     /note="From Frag_2"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cccagatcgc agctcccttg acagtgtcag ttgaatcccc attctaggtt tcctgataaa
+       61 actaagtacg gggacgcatc agtcgaaagc aatcacagat aatagatatc ttgagcagaa
+      121 agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa gtgcgggcaa caataggtgt
+      181 gaggtttcac ggttgcttga tcagtagctg ttcactctct cgcaggccta catagtgagg
+      241 tggtgagatt gttcaggtct gtctcctgcg cggttgtcga gccccgtcgg gcacgctaac
+      301 aaggacagga attcgggtcg tcaaataaca atttacgtca tcgcatccct caagggtaag
+      361 gcgtgatctc catctcggtt cccaattggt cattgtgata gccacactgc agttaccgaa
+      421 ggcgatttta tactaccctg ataagtgctc gcagcccctc ctccctaata atgtaacgac
+      481 gagcattaac ccaggagtat ttctcacgtt gctcgtgccc agccaaggcg atcaacgcag
+      541 accggatagc gttagctagc ccacgggtaa aagcgattgt tgtactcttt catatgaata
+      601 cagcactcgc gaatgcaagc ctacgtcggc tcgattctct tcctcaccac actggaggcg
+      661 atgatctagc ccgtctttca ccccgtacct ttatactcgg ccgcgtattt ctccaccggg
+      721 agctctgcct accaaagcgt cgtacgccca ggaagccgtt tcctttatcc tccctcatgt
+      781 ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt ctggccaaca ctggacagac
+      841 gcgcgagacg ctgataaacc cccattttcg tggggttagt aaatcggtgg cttcaaacgg
+      901 ttcgatcgct cgcacgagca ttagtcagga gtatgattgc gcatcatctc tactccgtac
+      961 taggttctgt agctcaggat ctccgggggg atcaagcttt tatgtcccgc gggattagaa
+     1021 gatatccatc catatgttta ctttgatgcg ggtccgagct ctctatgatg ctgctttgac
+     1081 aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc tctacgacac gttgatgcta
+     1141 aacaagttgg actactaagc aaatgaagcg gaagagatac tgagcgctct ctctatgact
+     1201 ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga aatctcaaat aataatgcaa
+     1261 tgtgttggct aagctcgggc aaactcagga tgtgacctag taccctctgc cccgtgagta
+     1321 cccataccca atcaagccag cccaattcgc gataggtaca gataagcctt actcgtcccg
+     1381 atccttgact aaaacactca tcctcgatag tacgtgcctt gtagagtccg acggccatag
+     1441 gtaaacgacc agttagtgtc gtagggtcct ccactttagc tacgattgca actcccttac
+     1501 cttcgtgccg gcgcgctcct cttgctacca tcacgcttca aatcgggtgg aagaccaact
+     1561 gatgaatgag ggtgcagacc ccagtggagc ataatacgat gcgcccacga tactctagag
+     1621 ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt ggccacatcg gccgcccatc
+     1681 cttgtgtctt ccgataagta ctccctttca aggactctcc gataccggct tagaacacga
+     1741 acggacaacg ctttcagcgc tgagaaatga cggctgcttc aaccagaacg atacagcctt
+     1801 ctttgctaga tagcctctag tgtcagccac caagtccgcc acctaatcct tcgccgaggg
+     1861 tcaaagcttc tgaccatcca attgttaggc actcttggaa ccttgcaagt acctgatcat
+     1921 gcagaaaatg gacttgcccg gagcatattc attataagta ccattcacgg caggttatag
+     1981 tatgcgttga cgcggggtga tacggtaatg caagtaacca tcgggccgcg gtatgcacat
+     2041 agaagggtgt ttgacttggt ttcttacagt gcaactgcat atgtggaccg ccattccaag
+     2101 tgaaaggata cgaagggagg tttcggactg ctatccagag catggaaagc cttcaaggtg
+     2161 gtgcgcactg gaatagtgac tcggggattg tatgtcgagc cgcgtccagt ctttcctata
+     2221 cttatgcgag caaatagacc gagtggaact tgattgcatc agccgaatca cgatgaaaac
+     2281 tcagcttaca attcgtaagc acttcaaata tatgcccgga aaatcgccgt ccagtgactt
+     2341 gtaatagctc cagggtcagt agcgctgccc tggccgaacc aggtgacggt tacgtggacc
+     2401 tcacagtatc aatgttgcag tgcgccacca gattaagctg gccgtgtcat ggtgaacaac
+     2461 cgtgataaaa gaacgggagt atgagagtgc cacccaagag tggtactcca ggattcggaa
+     2521 aggggagggg gcttttcctg cttaacaacc ttcctcggca cggtctaagc gtctcactcg
+     2581 tcctaaactc taccatcatg cagctaggcg aaagtataac tttagggtct atcaggatga
+     2641 gctatctgta ccacggtgat gagataagta gggggtgcgc tagggtcgtt cgtgttttca
+     2701 tcgtctatag tacctatttc tcgtcttcca ttagcgcata cggccatctc gcggcggcta
+     2761 cgtcagccag cgtcaacccc aagtcactaa tttccgttat tataggtgta gctcataact
+     2821 tcttctgccg accaagccaa aagctttgcg gcagctgcaa ggccacgtta ggctctcgga
+     2881 cggcagatat ttattaataa caccactggg ttccagctct taacgcactt cccttcactg
+     2941 gatcacctgt acgcccataa gctaagcctg aagccacggc ctcaatcgtg gacattactc
+     3001 ttagcaaatc cacattacca tgtcaccaat ccccgaaccc cgcgccgacc taaggcgggg
+     3061 tacctcgtgc acggcagcat cgagggaaat atattacaaa agacgcggcg atccaacggt
+     3121 tgataaaaac agttccgtgg aaggcggacg tgtgcttagc gcatgcttct caccgagtga
+     3181 cagcaccgat tccatctcgc tagcacgccg atgagcctcg ctgtgggact atggtccagc
+     3241 ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc ggtaaggtcg atttggtggc
+     3301 actcgcaaga tacgcgggtt attagtagag cgcagtcagg gcccatcgcc agcatttgca
+     3361 tgctcgccgt acgctatcct tgtactacgg ttcctcagtg gctataaagg aatgtcacaa
+     3421 ctccattagc cccttttgtt cagcgcttag tcatggtggg actgactcac cgagactaca
+     3481 tacggattgt gcccgcagag acatgccttt catgctgggg ttttgtaagc agctccacgg
+     3541 ggtagtgtca ccatgccttc gacctatgct tatgaaaccc gaggtaatgc ggcaggatcc
+     3601 cgtggatcct acgcttagcc tgttaccccc cccgttctcc tcggccccca gccagcgcgt
+     3661 attccgcgca ttcctccgag tgcgtatcgc gcaaaccaca agatacctct caacgactag
+     3721 cggtgaacca ccaagcttga catacgtgcc ccttcggaaa cgttattagt ggtcctgagt
+     3781 ggtacgtccc gagtatacgg ggcagcgata gtaacgctac aaatagctag accgacgaca
+     3841 aacacagcac tgaatatcca acagtggcaa cgagacgctt agaaagggaa actacatacc
+     3901 agttcaatcc gggatgactt caaaagggta tgtttgtttt gaagcgaagc tttggttgtc
+     3961 attcagttcc tagagtttac ggcgctgata tggctctagg agtccagtga attcgtcagc
+     4021 ataagcccca catcgtagga aattgcccgg tcgtcggtct agcaaatgct cggtaaactg
+     4081 ggagtgtact aacaccatgt cgtggtaacc cggtggaccg gctactagag acatatttat
+     4141 tcatgctcag ttgaacctgt ttcgaggggg ccgagttaac ataaagtgat tagtcacagc
+     4201 gcattaagat agaacaggga tatagctcgt tgcatccata aattgcccac cgtagggaga
+     4261 acgccgttgg aaaatgagag ttaggcgatg agcggttgtc gcccgcacag acaaaggatg
+     4321 cctttataaa tagtagcggc cttgtctgca ccagacgttt gtgggtcgac gtgctattct
+     4381 agccaaaagc aaaatgtatc atactacagg caataggccc tatgctgacc aaacttgggg
+     4441 acccttgcgc cttctctctt acgcataaca tgcataggta cctctactca tcaggcaggg
+     4501 cggcgtgagg tcactatggc tcaagatgtg tacgactaaa gaaaggttta tgctccttcc
+     4561 ccaaggacgc atttgggact gctacttgcc cctagcgaat tcactaggat ttttgtagaa
+     4621 ccatgagcgc cctatccgat agcacagaga caatgctaca agcaactgtg catgcgctcg
+     4681 atcgccgtgc attaatacgt attatagcgt atcgtgtacg ctaatatctt agtgcaccgc
+     4741 acgctggttg gatacaattc cgtgaaataa ttcctgctta cacaggggct ttctggcgca
+     4801 tggctgtgtc tggatgtttg tgataagagg ctccatgaac ccggcgggaa atgaggggaa
+     4861 accccgggga gcaacgacac taagcctggc agttgttcag ataggacgct tttgtcagtg
+     4921 ggcggttttg catccactaa ctatcataaa cgacacaacg tcgaatgatc atcggcggtt
+     4981 tgcatgtaga gacagctcct gcaacaccat accggctcgt ggaattacgc tgtgcgccgg
+     5041 ccctcattcg attgtgtcca gcgtcggcgc gaatgatgat tgagatgtgc ttcggctcag
+     5101 agcgtgcaca ggtagttctc cccccttacc tagctgatcc agcaattcca cgctggcccg
+     5161 cgcgtccttg ggtaacactg gatctgtacc caaatacacc gtcgtgattg ttaactaccg
+     5221 tatggcggtt acgatcgagt gacactatta ttagaccgct actccaagtc ccaacttttc
+     5281 atcgccatac agaagagaac gagaaagtcg aagagttata gcgtgtacac ttctgattag
+     5341 ctaacgaatc gatgcgtaca gcatactcga gcaactttat gggtcgtctg tctccttgta
+     5401 ccccgcttga cgaggatgtg tttgtaggcg gcttggatat cggcagtgta tccgcatggt
+     5461 caaacacttt agcccgaccg gtgctcaagg tcgaaatcct aatatagatt gggataggac
+     5521 ccgtccatta ctaggcgaca ttcgcagtca cgagcccgca cggggtgcct caacacggtg
+     5581 acactcaatt cgccggcact gagtacgacg atcgtgattg ccataccgtc atgttttgtg
+     5641 ttacccctga taagaagcgc agatatggca cgggggcaga gggcggagta gacccatgca
+     5701 aaactctagc ctctgggcag catgatcgac gtagaacgcc gttgtgactc actagtttca
+     5761 gttatgatgt tcagccaaga atcctccatt ttgacgtgaa ccttctccct ttacaccttg
+     5821 aagctgcaat attaagtcga ccctttaagt tgccttgtct tggtctagag cccgcagctc
+     5881 accgataaaa tgagcagtca attttagcgg cggttgtcca ggttacatgc actttgggct
+     5941 ggaaccgcgt tacgtttgga gtacttagaa gtgtcgtagg cataggagag ccgaaacttg
+     6001 atattgggtc tagttagtgc tctaccccgc ttcggatccg taatagtgat gttgcatgag
+     6061 acgcttgcct caaggcgaca tacggtggcg gttgctggaa atgacgcccc accccgtgat
+     6121 aatttgggga cgagccgcac gataacttct gccagcgacc gcccctccca cgtccgatgg
+     6181 tgattccgaa ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac
+     6241 ttccgctaag ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta
+     6301 agtcgggttg tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg
+     6361 tcatacagag gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg
+     6421 tacgttctcc cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt
+     6481 tatggaccag aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg
+     6541 gatatggccg cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg
+     6601 ggtgcctgtt tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca
+     6661 cgttccagtg aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag
+     6721 gtactgtgga gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg
+     6781 gtgttgcccg tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg
+     6841 caacatgcga ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg
+     6901 cgaccgatat gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag
+     6961 ccaaatgcac agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt
+     7021 tgttacactt ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt
+     7081 gtactgcacc tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt
+     7141 tgcaaccctc tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt
+     7201 tggcgagggc caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca
+     7261 cggtgtatag ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc
+     7321 ggttgttatc actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat
+     7381 cagctggtca gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa
+     7441 tgaaccctca ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga
+     7501 gcagctatcg aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa
+     7561 aacggaggga gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca
+     7621 ttagagcagc catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt
+     7681 tatggacaac aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat
+     7741 tgatgggtgg cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt
+     7801 gtggtacgat ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg
+     7861 ctgaacatgc cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg
+     7921 ggtacgtaac agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc
+     7981 gatcgaattc cgttttacgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/all_construct_records/construct_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,191 @@
+LOCUS       construct_3             8000 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_3
+VERSION     construct_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1781..1800
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    1781..3581
+                     /source="Frag_3"
+                     /indicates_part=True
+                     /note="From Frag_3"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3582..3599
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3582..4781
+                     /source="Frag_4c"
+                     /indicates_part=True
+                     /note="From Frag_4c"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        4782..4799
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    4782..6190
+                     /source="Frag_5b"
+                     /indicates_part=True
+                     /note="From Frag_5b"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    6191..8000
+                     /source="Frag_1"
+                     /indicates_part=True
+                     /note="From Frag_1"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6191..6209
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    8021..9800
+                     /source="Frag_2"
+                     /indicates_part=True
+                     /note="From Frag_2"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cccagatcgc agctcccttg acagtgtcag ttgaatcccc attctaggtt tcctgataaa
+       61 actaagtacg gggacgcatc agtcgaaagc aatcacagat aatagatatc ttgagcagaa
+      121 agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa gtgcgggcaa caataggtgt
+      181 gaggtttcac ggttgcttga tcagtagctg ttcactctct cgcaggccta catagtgagg
+      241 tggtgagatt gttcaggtct gtctcctgcg cggttgtcga gccccgtcgg gcacgctaac
+      301 aaggacagga attcgggtcg tcaaataaca atttacgtca tcgcatccct caagggtaag
+      361 gcgtgatctc catctcggtt cccaattggt cattgtgata gccacactgc agttaccgaa
+      421 ggcgatttta tactaccctg ataagtgctc gcagcccctc ctccctaata atgtaacgac
+      481 gagcattaac ccaggagtat ttctcacgtt gctcgtgccc agccaaggcg atcaacgcag
+      541 accggatagc gttagctagc ccacgggtaa aagcgattgt tgtactcttt catatgaata
+      601 cagcactcgc gaatgcaagc ctacgtcggc tcgattctct tcctcaccac actggaggcg
+      661 atgatctagc ccgtctttca ccccgtacct ttatactcgg ccgcgtattt ctccaccggg
+      721 agctctgcct accaaagcgt cgtacgccca ggaagccgtt tcctttatcc tccctcatgt
+      781 ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt ctggccaaca ctggacagac
+      841 gcgcgagacg ctgataaacc cccattttcg tggggttagt aaatcggtgg cttcaaacgg
+      901 ttcgatcgct cgcacgagca ttagtcagga gtatgattgc gcatcatctc tactccgtac
+      961 taggttctgt agctcaggat ctccgggggg atcaagcttt tatgtcccgc gggattagaa
+     1021 gatatccatc catatgttta ctttgatgcg ggtccgagct ctctatgatg ctgctttgac
+     1081 aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc tctacgacac gttgatgcta
+     1141 aacaagttgg actactaagc aaatgaagcg gaagagatac tgagcgctct ctctatgact
+     1201 ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga aatctcaaat aataatgcaa
+     1261 tgtgttggct aagctcgggc aaactcagga tgtgacctag taccctctgc cccgtgagta
+     1321 cccataccca atcaagccag cccaattcgc gataggtaca gataagcctt actcgtcccg
+     1381 atccttgact aaaacactca tcctcgatag tacgtgcctt gtagagtccg acggccatag
+     1441 gtaaacgacc agttagtgtc gtagggtcct ccactttagc tacgattgca actcccttac
+     1501 cttcgtgccg gcgcgctcct cttgctacca tcacgcttca aatcgggtgg aagaccaact
+     1561 gatgaatgag ggtgcagacc ccagtggagc ataatacgat gcgcccacga tactctagag
+     1621 ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt ggccacatcg gccgcccatc
+     1681 cttgtgtctt ccgataagta ctccctttca aggactctcc gataccggct tagaacacga
+     1741 acggacaacg ctttcagcgc tgagaaatga cggctgcttc aaccagaacg atacagcctt
+     1801 ctttgctaga tagcctctag tgtcagccac caagtccgcc acctaatcct tcgccgaggg
+     1861 tcaaagcttc tgaccatcca attgttaggc actcttggaa ccttgcaagt acctgatcat
+     1921 gcagaaaatg gacttgcccg gagcatattc attataagta ccattcacgg caggttatag
+     1981 tatgcgttga cgcggggtga tacggtaatg caagtaacca tcgggccgcg gtatgcacat
+     2041 agaagggtgt ttgacttggt ttcttacagt gcaactgcat atgtggaccg ccattccaag
+     2101 tgaaaggata cgaagggagg tttcggactg ctatccagag catggaaagc cttcaaggtg
+     2161 gtgcgcactg gaatagtgac tcggggattg tatgtcgagc cgcgtccagt ctttcctata
+     2221 cttatgcgag caaatagacc gagtggaact tgattgcatc agccgaatca cgatgaaaac
+     2281 tcagcttaca attcgtaagc acttcaaata tatgcccgga aaatcgccgt ccagtgactt
+     2341 gtaatagctc cagggtcagt agcgctgccc tggccgaacc aggtgacggt tacgtggacc
+     2401 tcacagtatc aatgttgcag tgcgccacca gattaagctg gccgtgtcat ggtgaacaac
+     2461 cgtgataaaa gaacgggagt atgagagtgc cacccaagag tggtactcca ggattcggaa
+     2521 aggggagggg gcttttcctg cttaacaacc ttcctcggca cggtctaagc gtctcactcg
+     2581 tcctaaactc taccatcatg cagctaggcg aaagtataac tttagggtct atcaggatga
+     2641 gctatctgta ccacggtgat gagataagta gggggtgcgc tagggtcgtt cgtgttttca
+     2701 tcgtctatag tacctatttc tcgtcttcca ttagcgcata cggccatctc gcggcggcta
+     2761 cgtcagccag cgtcaacccc aagtcactaa tttccgttat tataggtgta gctcataact
+     2821 tcttctgccg accaagccaa aagctttgcg gcagctgcaa ggccacgtta ggctctcgga
+     2881 cggcagatat ttattaataa caccactggg ttccagctct taacgcactt cccttcactg
+     2941 gatcacctgt acgcccataa gctaagcctg aagccacggc ctcaatcgtg gacattactc
+     3001 ttagcaaatc cacattacca tgtcaccaat ccccgaaccc cgcgccgacc taaggcgggg
+     3061 tacctcgtgc acggcagcat cgagggaaat atattacaaa agacgcggcg atccaacggt
+     3121 tgataaaaac agttccgtgg aaggcggacg tgtgcttagc gcatgcttct caccgagtga
+     3181 cagcaccgat tccatctcgc tagcacgccg atgagcctcg ctgtgggact atggtccagc
+     3241 ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc ggtaaggtcg atttggtggc
+     3301 actcgcaaga tacgcgggtt attagtagag cgcagtcagg gcccatcgcc agcatttgca
+     3361 tgctcgccgt acgctatcct tgtactacgg ttcctcagtg gctataaagg aatgtcacaa
+     3421 ctccattagc cccttttgtt cagcgcttag tcatggtggg actgactcac cgagactaca
+     3481 tacggattgt gcccgcagag acatgccttt catgctgggg ttttgtaagc agctccacgg
+     3541 ggtagtgtca ccatgccttc gacctatgct tatgaaaccc gaggtaatgc ggcaggatcc
+     3601 cgtggatcct acgcttagcc tgttaggggg ggggttctcc tcggccccca gccagcgcgt
+     3661 attccgcgca ttcctccgag tgcgtatcgc gcaaaccaca agatacctct caacgactag
+     3721 cggtgaacca ccaagcttga catacgtgcc ccttcggaaa cgttattagt ggtcctgagt
+     3781 ggtacgtccc gagtatacgg ggcagcgata gtaacgctac aaatagctag accgacgaca
+     3841 aacacagcac tgaatatcca acagtggcaa cgagacgctt agaaagggaa actacatacc
+     3901 agttcaatcc gggatgactt caaaagggta tgtttgtttt gaagcgaagc tttggttgtc
+     3961 attcagttcc tagagtttac ggcgctgata tggctctagg agtccagtga attcgtcagc
+     4021 ataagcccca catcgtagga aattgcccgg tcgtcggtct agcaaatgct cggtaaactg
+     4081 ggagtgtact aacaccatgt cgtggtaacc cggtggaccg gctactagag acatatttat
+     4141 tcatgctcag ttgaacctgt ttcgaggggg ccgagttaac ataaagtgat tagtcacagc
+     4201 gcattaagat agaacaggga tatagctcgt tgcatccata aattgcccac cgtagggaga
+     4261 acgccgttgg aaaatgagag ttaggcgatg agcggttgtc gcccgcacag acaaaggatg
+     4321 cctttataaa tagtagcggc cttgtctgca ccagacgttt gtgggtcgac gtgctattct
+     4381 agccaaaagc aaaatgtatc atactacagg caataggccc tatgctgacc aaacttgggg
+     4441 acccttgcgc cttctctctt acgcataaca tgcataggta cctctactca tcaggcaggg
+     4501 cggcgtgagg tcactatggc tcaagatgtg tacgactaaa gaaaggttta tgctccttcc
+     4561 ccaaggacgc atttgggact gctacttgcc cctagcgaat tcactaggat ttttgtagaa
+     4621 ccatgagcgc cctatccgat agcacagaga caatgctaca agcaactgtg catgcgctcg
+     4681 atcgccgtgc attaatacgt attatagcgt atcgtgtacg ctaatatctt agtgcaccgc
+     4741 acgctggttg gatacaattc cgtgaaataa ttcctgctta cacaggggct ttctggcgca
+     4801 tggctgtgtc tggaaaaaaa aaaaaaaaaa aaacatgaac ccggcgggaa atgaggggaa
+     4861 accccgggga gcaacgacac taagcctggc agttgttcag ataggacgct tttgtcagtg
+     4921 ggcggttttg catccactaa ctatcataaa cgacacaacg tcgaatgatc atcggcggtt
+     4981 tgcatgtaga gacagctcct gcaacaccat accggctcgt ggaattacgc tgtgcgccgg
+     5041 ccctcattcg attgtgtcca gcgtcggcgc gaatgatgat tgagatgtgc ttcggctcag
+     5101 agcgtgcaca ggtagttctc cccccttacc tagctgatcc agcaattcca cgctggcccg
+     5161 cgcgtccttg ggtaacactg gatctgtacc caaatacacc gtcgtgattg ttaactaccg
+     5221 tatggcggtt acgatcgagt gacactatta ttagaccgct actccaagtc ccaacttttc
+     5281 atcgccatac agaagagaac gagaaagtcg aagagttata gcgtgtacac ttctgattag
+     5341 ctaacgaatc gatgcgtaca gcatactcga gcaactttat gggtcgtctg tctccttgta
+     5401 ccccgcttga cgaggatgtg tttgtaggcg gcttggatat cggcagtgta tccgcatggt
+     5461 caaacacttt agcccgaccg gtgctcaagg tcgaaatcct aatatagatt gggataggac
+     5521 ccgtccatta ctaggcgaca ttcgcagtca cgagcccgca cggggtgcct caacacggtg
+     5581 acactcaatt cgccggcact gagtacgacg atcgtgattg ccataccgtc atgttttgtg
+     5641 ttacccctga taagaagcgc agatatggca cgggggcaga gggcggagta gacccatgca
+     5701 aaactctagc ctctgggcag catgatcgac gtagaacgcc gttgtgactc actagtttca
+     5761 gttatgatgt tcagccaaga atcctccatt ttgacgtgaa ccttctccct ttacaccttg
+     5821 aagctgcaat attaagtcga ccctttaagt tgccttgtct tggtctagag cccgcagctc
+     5881 accgataaaa tgagcagtca attttagcgg cggttgtcca ggttacatgc actttgggct
+     5941 ggaaccgcgt tacgtttgga gtacttagaa gtgtcgtagg cataggagag ccgaaacttg
+     6001 atattgggtc tagttagtgc tctaccccgc ttcggatccg taatagtgat gttgcatgag
+     6061 acgcttgcct caaggcgaca tacggtggcg gttgctggaa atgacgcccc accccgtgat
+     6121 aatttgggga cgagccgcac gataacttct gccagcgacc gcccctccca cgtccgatgg
+     6181 tgattccgaa ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac
+     6241 ttccgctaag ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta
+     6301 agtcgggttg tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg
+     6361 tcatacagag gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg
+     6421 tacgttctcc cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt
+     6481 tatggaccag aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg
+     6541 gatatggccg cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg
+     6601 ggtgcctgtt tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca
+     6661 cgttccagtg aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag
+     6721 gtactgtgga gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg
+     6781 gtgttgcccg tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg
+     6841 caacatgcga ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg
+     6901 cgaccgatat gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag
+     6961 ccaaatgcac agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt
+     7021 tgttacactt ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt
+     7081 gtactgcacc tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt
+     7141 tgcaaccctc tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt
+     7201 tggcgagggc caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca
+     7261 cggtgtatag ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc
+     7321 ggttgttatc actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat
+     7381 cagctggtca gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa
+     7441 tgaaccctca ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga
+     7501 gcagctatcg aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa
+     7561 aacggaggga gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca
+     7621 ttagagcagc catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt
+     7681 tatggacaac aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat
+     7741 tgatgggtgg cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt
+     7801 gtggtacgat ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg
+     7861 ctgaacatgc cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg
+     7921 ggtacgtaac agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc
+     7981 gatcgaattc cgttttacgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_1/construct_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,191 @@
+LOCUS       construct_1             8000 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_1
+VERSION     construct_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1781..1800
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    1781..3581
+                     /source="Frag_3"
+                     /indicates_part=True
+                     /note="From Frag_3"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3582..3599
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3582..4781
+                     /source="Frag_4"
+                     /indicates_part=True
+                     /note="From Frag_4"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        4782..4799
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    4782..6190
+                     /source="Frag_5"
+                     /indicates_part=True
+                     /note="From Frag_5"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    6191..8000
+                     /source="Frag_1"
+                     /indicates_part=True
+                     /note="From Frag_1"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6191..6209
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    8021..9800
+                     /source="Frag_2"
+                     /indicates_part=True
+                     /note="From Frag_2"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cccagatcgc agctcccttg acagtgtcag ttgaatcccc attctaggtt tcctgataaa
+       61 actaagtacg gggacgcatc agtcgaaagc aatcacagat aatagatatc ttgagcagaa
+      121 agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa gtgcgggcaa caataggtgt
+      181 gaggtttcac ggttgcttga tcagtagctg ttcactctct cgcaggccta catagtgagg
+      241 tggtgagatt gttcaggtct gtctcctgcg cggttgtcga gccccgtcgg gcacgctaac
+      301 aaggacagga attcgggtcg tcaaataaca atttacgtca tcgcatccct caagggtaag
+      361 gcgtgatctc catctcggtt cccaattggt cattgtgata gccacactgc agttaccgaa
+      421 ggcgatttta tactaccctg ataagtgctc gcagcccctc ctccctaata atgtaacgac
+      481 gagcattaac ccaggagtat ttctcacgtt gctcgtgccc agccaaggcg atcaacgcag
+      541 accggatagc gttagctagc ccacgggtaa aagcgattgt tgtactcttt catatgaata
+      601 cagcactcgc gaatgcaagc ctacgtcggc tcgattctct tcctcaccac actggaggcg
+      661 atgatctagc ccgtctttca ccccgtacct ttatactcgg ccgcgtattt ctccaccggg
+      721 agctctgcct accaaagcgt cgtacgccca ggaagccgtt tcctttatcc tccctcatgt
+      781 ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt ctggccaaca ctggacagac
+      841 gcgcgagacg ctgataaacc cccattttcg tggggttagt aaatcggtgg cttcaaacgg
+      901 ttcgatcgct cgcacgagca ttagtcagga gtatgattgc gcatcatctc tactccgtac
+      961 taggttctgt agctcaggat ctccgggggg atcaagcttt tatgtcccgc gggattagaa
+     1021 gatatccatc catatgttta ctttgatgcg ggtccgagct ctctatgatg ctgctttgac
+     1081 aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc tctacgacac gttgatgcta
+     1141 aacaagttgg actactaagc aaatgaagcg gaagagatac tgagcgctct ctctatgact
+     1201 ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga aatctcaaat aataatgcaa
+     1261 tgtgttggct aagctcgggc aaactcagga tgtgacctag taccctctgc cccgtgagta
+     1321 cccataccca atcaagccag cccaattcgc gataggtaca gataagcctt actcgtcccg
+     1381 atccttgact aaaacactca tcctcgatag tacgtgcctt gtagagtccg acggccatag
+     1441 gtaaacgacc agttagtgtc gtagggtcct ccactttagc tacgattgca actcccttac
+     1501 cttcgtgccg gcgcgctcct cttgctacca tcacgcttca aatcgggtgg aagaccaact
+     1561 gatgaatgag ggtgcagacc ccagtggagc ataatacgat gcgcccacga tactctagag
+     1621 ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt ggccacatcg gccgcccatc
+     1681 cttgtgtctt ccgataagta ctccctttca aggactctcc gataccggct tagaacacga
+     1741 acggacaacg ctttcagcgc tgagaaatga cggctgcttc aaccagaacg atacagcctt
+     1801 ctttgctaga tagcctctag tgtcagccac caagtccgcc acctaatcct tcgccgaggg
+     1861 tcaaagcttc tgaccatcca attgttaggc actcttggaa ccttgcaagt acctgatcat
+     1921 gcagaaaatg gacttgcccg gagcatattc attataagta ccattcacgg caggttatag
+     1981 tatgcgttga cgcggggtga tacggtaatg caagtaacca tcgggccgcg gtatgcacat
+     2041 agaagggtgt ttgacttggt ttcttacagt gcaactgcat atgtggaccg ccattccaag
+     2101 tgaaaggata cgaagggagg tttcggactg ctatccagag catggaaagc cttcaaggtg
+     2161 gtgcgcactg gaatagtgac tcggggattg tatgtcgagc cgcgtccagt ctttcctata
+     2221 cttatgcgag caaatagacc gagtggaact tgattgcatc agccgaatca cgatgaaaac
+     2281 tcagcttaca attcgtaagc acttcaaata tatgcccgga aaatcgccgt ccagtgactt
+     2341 gtaatagctc cagggtcagt agcgctgccc tggccgaacc aggtgacggt tacgtggacc
+     2401 tcacagtatc aatgttgcag tgcgccacca gattaagctg gccgtgtcat ggtgaacaac
+     2461 cgtgataaaa gaacgggagt atgagagtgc cacccaagag tggtactcca ggattcggaa
+     2521 aggggagggg gcttttcctg cttaacaacc ttcctcggca cggtctaagc gtctcactcg
+     2581 tcctaaactc taccatcatg cagctaggcg aaagtataac tttagggtct atcaggatga
+     2641 gctatctgta ccacggtgat gagataagta gggggtgcgc tagggtcgtt cgtgttttca
+     2701 tcgtctatag tacctatttc tcgtcttcca ttagcgcata cggccatctc gcggcggcta
+     2761 cgtcagccag cgtcaacccc aagtcactaa tttccgttat tataggtgta gctcataact
+     2821 tcttctgccg accaagccaa aagctttgcg gcagctgcaa ggccacgtta ggctctcgga
+     2881 cggcagatat ttattaataa caccactggg ttccagctct taacgcactt cccttcactg
+     2941 gatcacctgt acgcccataa gctaagcctg aagccacggc ctcaatcgtg gacattactc
+     3001 ttagcaaatc cacattacca tgtcaccaat ccccgaaccc cgcgccgacc taaggcgggg
+     3061 tacctcgtgc acggcagcat cgagggaaat atattacaaa agacgcggcg atccaacggt
+     3121 tgataaaaac agttccgtgg aaggcggacg tgtgcttagc gcatgcttct caccgagtga
+     3181 cagcaccgat tccatctcgc tagcacgccg atgagcctcg ctgtgggact atggtccagc
+     3241 ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc ggtaaggtcg atttggtggc
+     3301 actcgcaaga tacgcgggtt attagtagag cgcagtcagg gcccatcgcc agcatttgca
+     3361 tgctcgccgt acgctatcct tgtactacgg ttcctcagtg gctataaagg aatgtcacaa
+     3421 ctccattagc cccttttgtt cagcgcttag tcatggtggg actgactcac cgagactaca
+     3481 tacggattgt gcccgcagag acatgccttt catgctgggg ttttgtaagc agctccacgg
+     3541 ggtagtgtca ccatgccttc gacctatgct tatgaaaccc gaggtaatgc ggcaggatcc
+     3601 cgtggatcct acgcttagcc tgtttaagcc atcgttctcc tcggccccca gccagcgcgt
+     3661 attccgcgca ttcctccgag tgcgtatcgc gcaaaccaca agatacctct caacgactag
+     3721 cggtgaacca ccaagcttga catacgtgcc ccttcggaaa cgttattagt ggtcctgagt
+     3781 ggtacgtccc gagtatacgg ggcagcgata gtaacgctac aaatagctag gcgaggttgc
+     3841 gatacctgaa tgaatatcca acagtggcaa cgagacgctt agaaagggaa actacatacc
+     3901 agttcaatcc gggatgactt caaaagggta tgtttgtttt gaagcgaagc tttggttgtc
+     3961 attcagttcc tagagtttac ggcgctgata tggctctagg agtccagtga attcgtcagc
+     4021 ataagcccca catcgtagga aattgcccgg tcgtcggtct agcaaatgct cggtaaactg
+     4081 ggagtgtact aacaccatgt cgtggtaacc cggtggaccg gctactagag acatatttat
+     4141 tcatgctcag ttgaacctgt ttcgaggggg ccgagttaac ataaagtgat tagtcacagc
+     4201 gcattaagat agaacaggga tatagctcgt tgcatccata aattgcccac cgtagggaga
+     4261 acgccgttgg aaaatgagag ttaggcgatg agcggttgtc gcccgcacag acaaaggatg
+     4321 cctttataaa tagtagcggc cttgtctgca ccagacgttt gtgggtcgac gtgctattct
+     4381 agccaaaagc aaaatgtatc atactacagg caataggccc tatgctgacc aaacttgggg
+     4441 acccttgcgc cttctctctt acgcataaca tgcataggta cctctactca tcaggcaggg
+     4501 cggcgtgagg tcactatggc tcaagatgtg tacgactaaa gaaaggttta tgctccttcc
+     4561 ccaaggacgc atttgggact gctacttgcc cctagcgaat tcactaggat ttttgtagaa
+     4621 ccatgagcgc cctatccgat agcacagaga caatgctaca agcaactgtg catgcgctcg
+     4681 atcgccgtgc attaatacgt attatagcgt atcgtgtacg ctaatatctt agtgcaccgc
+     4741 acgctggttg gatacaattc cgtgaaataa ttcctgctta cacaggggct ttctggcgca
+     4801 tggctgtgtc tggatgtttg tgataagagg ctccatgaac ccggcgggaa atgaggggaa
+     4861 accccgggga gcaacgacac taagcctggc agttgttcag ataggacgct tttgtcagtg
+     4921 ggcggttttg catccactaa ctatcataaa cgacacaacg tcgaatgatc atcggcggtt
+     4981 tgcatgtaga gacagctcct gcaacaccat accggctcgt ggaattacgc tgtgcgccgg
+     5041 ccctcattcg attgtgtcca gcgtcggcgc gaatgatgat tgagatgtgc ttcggctcag
+     5101 agcgtgcaca ggtagttctc cccccttacc tagctgatcc agcaattcca cgctggcccg
+     5161 cgcgtccttg ggtaacactg gatctgtacc caaatacacc gtcgtgattg ttaactaccg
+     5221 tatggcggtt acgatcgagt gacactatta ttagaccgct actccaagtc ccaacttttc
+     5281 atcgccatac agaagagaac gagaaagtcg aagagttata gcgtgtacac ttctgattag
+     5341 ctaacgaatc gatgcgtaca gcatactcga gcaactttat gggtcgtctg tctccttgta
+     5401 ccccgcttga cgaggatgtg tttgtaggcg gcttggatat cggcagtgta tccgcatggt
+     5461 caaacacttt agcccgaccg gtgctcaagg tcgaaatcct aatatagatt gggataggac
+     5521 ccgtccatta ctaggcgaca ttcgcagtca cgagcccgca cggggtgcct caacacggtg
+     5581 acactcaatt cgccggcact gagtacgacg atcgtgattg ccataccgtc atgttttgtg
+     5641 ttacccctga taagaagcgc agatatggca cgggggcaga gggcggagta gacccatgca
+     5701 aaactctagc ctctgggcag catgatcgac gtagaacgcc gttgtgactc actagtttca
+     5761 gttatgatgt tcagccaaga atcctccatt ttgacgtgaa ccttctccct ttacaccttg
+     5821 aagctgcaat attaagtcga ccctttaagt tgccttgtct tggtctagag cccgcagctc
+     5881 accgataaaa tgagcagtca attttagcgg cggttgtcca ggttacatgc actttgggct
+     5941 ggaaccgcgt tacgtttgga gtacttagaa gtgtcgtagg cataggagag ccgaaacttg
+     6001 atattgggtc tagttagtgc tctaccccgc ttcggatccg taatagtgat gttgcatgag
+     6061 acgcttgcct caaggcgaca tacggtggcg gttgctggaa atgacgcccc accccgtgat
+     6121 aatttgggga cgagccgcac gataacttct gccagcgacc gcccctccca cgtccgatgg
+     6181 tgattccgaa ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac
+     6241 ttccgctaag ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta
+     6301 agtcgggttg tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg
+     6361 tcatacagag gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg
+     6421 tacgttctcc cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt
+     6481 tatggaccag aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg
+     6541 gatatggccg cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg
+     6601 ggtgcctgtt tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca
+     6661 cgttccagtg aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag
+     6721 gtactgtgga gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg
+     6781 gtgttgcccg tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg
+     6841 caacatgcga ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg
+     6901 cgaccgatat gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag
+     6961 ccaaatgcac agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt
+     7021 tgttacactt ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt
+     7081 gtactgcacc tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt
+     7141 tgcaaccctc tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt
+     7201 tggcgagggc caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca
+     7261 cggtgtatag ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc
+     7321 ggttgttatc actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat
+     7381 cagctggtca gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa
+     7441 tgaaccctca ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga
+     7501 gcagctatcg aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa
+     7561 aacggaggga gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca
+     7621 ttagagcagc catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt
+     7681 tatggacaac aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat
+     7741 tgatgggtgg cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt
+     7801 gtggtacgat ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg
+     7861 ctgaacatgc cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg
+     7921 ggtacgtaac agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc
+     7981 gatcgaattc cgttttacgc
+//
Binary file test-data/init/gibson_assembly_simulation/construct_1/construct_1.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_1/construct_1_connections_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_1/construct_1_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,2 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,depends_on,homology_condition,used_in,parts
+construct_1,construct_1,1,8000,5,,"15-80bp, 0.0-+C Tm",,Frag_2 & Frag_3 & Frag_4 & Frag_5 & Frag_1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_1                  1810 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_1.
+ACCESSION   Frag_1
+VERSION     Frag_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac ttccgctaag
+       61 ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta agtcgggttg
+      121 tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg tcatacagag
+      181 gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg tacgttctcc
+      241 cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt tatggaccag
+      301 aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg gatatggccg
+      361 cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg ggtgcctgtt
+      421 tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca cgttccagtg
+      481 aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag gtactgtgga
+      541 gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg gtgttgcccg
+      601 tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg caacatgcga
+      661 ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg cgaccgatat
+      721 gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag ccaaatgcac
+      781 agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt tgttacactt
+      841 ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt gtactgcacc
+      901 tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt tgcaaccctc
+      961 tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt tggcgagggc
+     1021 caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca cggtgtatag
+     1081 ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc ggttgttatc
+     1141 actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat cagctggtca
+     1201 gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa tgaaccctca
+     1261 ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga gcagctatcg
+     1321 aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa aacggaggga
+     1381 gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca ttagagcagc
+     1441 catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt tatggacaac
+     1501 aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat tgatgggtgg
+     1561 cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt gtggtacgat
+     1621 ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg ctgaacatgc
+     1681 cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg ggtacgtaac
+     1741 agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc gatcgaattc
+     1801 cgttttacgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_2                  1820 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_2.
+ACCESSION   Frag_2
+VERSION     Frag_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 gatcgaattc cgttttacgc cccagatcgc agctcccttg acagtgtcag ttgaatcccc
+       61 attctaggtt tcctgataaa actaagtacg gggacgcatc agtcgaaagc aatcacagat
+      121 aatagatatc ttgagcagaa agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa
+      181 gtgcgggcaa caataggtgt gaggtttcac ggttgcttga tcagtagctg ttcactctct
+      241 cgcaggccta catagtgagg tggtgagatt gttcaggtct gtctcctgcg cggttgtcga
+      301 gccccgtcgg gcacgctaac aaggacagga attcgggtcg tcaaataaca atttacgtca
+      361 tcgcatccct caagggtaag gcgtgatctc catctcggtt cccaattggt cattgtgata
+      421 gccacactgc agttaccgaa ggcgatttta tactaccctg ataagtgctc gcagcccctc
+      481 ctccctaata atgtaacgac gagcattaac ccaggagtat ttctcacgtt gctcgtgccc
+      541 agccaaggcg atcaacgcag accggatagc gttagctagc ccacgggtaa aagcgattgt
+      601 tgtactcttt catatgaata cagcactcgc gaatgcaagc ctacgtcggc tcgattctct
+      661 tcctcaccac actggaggcg atgatctagc ccgtctttca ccccgtacct ttatactcgg
+      721 ccgcgtattt ctccaccggg agctctgcct accaaagcgt cgtacgccca ggaagccgtt
+      781 tcctttatcc tccctcatgt ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt
+      841 ctggccaaca ctggacagac gcgcgagacg ctgataaacc cccattttcg tggggttagt
+      901 aaatcggtgg cttcaaacgg ttcgatcgct cgcacgagca ttagtcagga gtatgattgc
+      961 gcatcatctc tactccgtac taggttctgt agctcaggat ctccgggggg atcaagcttt
+     1021 tatgtcccgc gggattagaa gatatccatc catatgttta ctttgatgcg ggtccgagct
+     1081 ctctatgatg ctgctttgac aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc
+     1141 tctacgacac gttgatgcta aacaagttgg actactaagc aaatgaagcg gaagagatac
+     1201 tgagcgctct ctctatgact ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga
+     1261 aatctcaaat aataatgcaa tgtgttggct aagctcgggc aaactcagga tgtgacctag
+     1321 taccctctgc cccgtgagta cccataccca atcaagccag cccaattcgc gataggtaca
+     1381 gataagcctt actcgtcccg atccttgact aaaacactca tcctcgatag tacgtgcctt
+     1441 gtagagtccg acggccatag gtaaacgacc agttagtgtc gtagggtcct ccactttagc
+     1501 tacgattgca actcccttac cttcgtgccg gcgcgctcct cttgctacca tcacgcttca
+     1561 aatcgggtgg aagaccaact gatgaatgag ggtgcagacc ccagtggagc ataatacgat
+     1621 gcgcccacga tactctagag ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt
+     1681 ggccacatcg gccgcccatc cttgtgtctt ccgataagta ctccctttca aggactctcc
+     1741 gataccggct tagaacacga acggacaacg ctttcagcgc tgagaaatga cggctgcttc
+     1801 aaccagaacg atacagcctt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_3                  1819 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_3.
+ACCESSION   Frag_3
+VERSION     Frag_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aaccagaacg atacagcctt ctttgctaga tagcctctag tgtcagccac caagtccgcc
+       61 acctaatcct tcgccgaggg tcaaagcttc tgaccatcca attgttaggc actcttggaa
+      121 ccttgcaagt acctgatcat gcagaaaatg gacttgcccg gagcatattc attataagta
+      181 ccattcacgg caggttatag tatgcgttga cgcggggtga tacggtaatg caagtaacca
+      241 tcgggccgcg gtatgcacat agaagggtgt ttgacttggt ttcttacagt gcaactgcat
+      301 atgtggaccg ccattccaag tgaaaggata cgaagggagg tttcggactg ctatccagag
+      361 catggaaagc cttcaaggtg gtgcgcactg gaatagtgac tcggggattg tatgtcgagc
+      421 cgcgtccagt ctttcctata cttatgcgag caaatagacc gagtggaact tgattgcatc
+      481 agccgaatca cgatgaaaac tcagcttaca attcgtaagc acttcaaata tatgcccgga
+      541 aaatcgccgt ccagtgactt gtaatagctc cagggtcagt agcgctgccc tggccgaacc
+      601 aggtgacggt tacgtggacc tcacagtatc aatgttgcag tgcgccacca gattaagctg
+      661 gccgtgtcat ggtgaacaac cgtgataaaa gaacgggagt atgagagtgc cacccaagag
+      721 tggtactcca ggattcggaa aggggagggg gcttttcctg cttaacaacc ttcctcggca
+      781 cggtctaagc gtctcactcg tcctaaactc taccatcatg cagctaggcg aaagtataac
+      841 tttagggtct atcaggatga gctatctgta ccacggtgat gagataagta gggggtgcgc
+      901 tagggtcgtt cgtgttttca tcgtctatag tacctatttc tcgtcttcca ttagcgcata
+      961 cggccatctc gcggcggcta cgtcagccag cgtcaacccc aagtcactaa tttccgttat
+     1021 tataggtgta gctcataact tcttctgccg accaagccaa aagctttgcg gcagctgcaa
+     1081 ggccacgtta ggctctcgga cggcagatat ttattaataa caccactggg ttccagctct
+     1141 taacgcactt cccttcactg gatcacctgt acgcccataa gctaagcctg aagccacggc
+     1201 ctcaatcgtg gacattactc ttagcaaatc cacattacca tgtcaccaat ccccgaaccc
+     1261 cgcgccgacc taaggcgggg tacctcgtgc acggcagcat cgagggaaat atattacaaa
+     1321 agacgcggcg atccaacggt tgataaaaac agttccgtgg aaggcggacg tgtgcttagc
+     1381 gcatgcttct caccgagtga cagcaccgat tccatctcgc tagcacgccg atgagcctcg
+     1441 ctgtgggact atggtccagc ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc
+     1501 ggtaaggtcg atttggtggc actcgcaaga tacgcgggtt attagtagag cgcagtcagg
+     1561 gcccatcgcc agcatttgca tgctcgccgt acgctatcct tgtactacgg ttcctcagtg
+     1621 gctataaagg aatgtcacaa ctccattagc cccttttgtt cagcgcttag tcatggtggg
+     1681 actgactcac cgagactaca tacggattgt gcccgcagag acatgccttt catgctgggg
+     1741 ttttgtaagc agctccacgg ggtagtgtca ccatgccttc gacctatgct tatgaaaccc
+     1801 gaggtaatgc ggcaggatc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_4.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+LOCUS       Frag_4                  1218 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_4.
+ACCESSION   Frag_4
+VERSION     Frag_4
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aggtaatgcg gcaggatccc gtggatccta cgcttagcct gtttaagcca tcgttctcct
+       61 cggcccccag ccagcgcgta ttccgcgcat tcctccgagt gcgtatcgcg caaaccacaa
+      121 gatacctctc aacgactagc ggtgaaccac caagcttgac atacgtgccc cttcggaaac
+      181 gttattagtg gtcctgagtg gtacgtcccg agtatacggg gcagcgatag taacgctaca
+      241 aatagctagg cgaggttgcg atacctgaat gaatatccaa cagtggcaac gagacgctta
+      301 gaaagggaaa ctacatacca gttcaatccg ggatgacttc aaaagggtat gtttgttttg
+      361 aagcgaagct ttggttgtca ttcagttcct agagtttacg gcgctgatat ggctctagga
+      421 gtccagtgaa ttcgtcagca taagccccac atcgtaggaa attgcccggt cgtcggtcta
+      481 gcaaatgctc ggtaaactgg gagtgtacta acaccatgtc gtggtaaccc ggtggaccgg
+      541 ctactagaga catatttatt catgctcagt tgaacctgtt tcgagggggc cgagttaaca
+      601 taaagtgatt agtcacagcg cattaagata gaacagggat atagctcgtt gcatccataa
+      661 attgcccacc gtagggagaa cgccgttgga aaatgagagt taggcgatga gcggttgtcg
+      721 cccgcacaga caaaggatgc ctttataaat agtagcggcc ttgtctgcac cagacgtttg
+      781 tgggtcgacg tgctattcta gccaaaagca aaatgtatca tactacaggc aataggccct
+      841 atgctgacca aacttgggga cccttgcgcc ttctctctta cgcataacat gcataggtac
+      901 ctctactcat caggcagggc ggcgtgaggt cactatggct caagatgtgt acgactaaag
+      961 aaaggtttat gctccttccc caaggacgca tttgggactg ctacttgccc ctagcgaatt
+     1021 cactaggatt tttgtagaac catgagcgcc ctatccgata gcacagagac aatgctacaa
+     1081 gcaactgtgc atgcgctcga tcgccgtgca ttaatacgta ttatagcgta tcgtgtacgc
+     1141 taatatctta gtgcaccgca cgctggttgg atacaattcc gtgaaataat tcctgcttac
+     1201 acaggggctt tctggcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_1/provided_parts_records/Frag_5.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,35 @@
+LOCUS       Frag_5                  1428 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_5.
+ACCESSION   Frag_5
+VERSION     Frag_5
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 acaggggctt tctggcgcat ggctgtgtct ggatgtttgt gataagaggc tccatgaacc
+       61 cggcgggaaa tgaggggaaa ccccggggag caacgacact aagcctggca gttgttcaga
+      121 taggacgctt ttgtcagtgg gcggttttgc atccactaac tatcataaac gacacaacgt
+      181 cgaatgatca tcggcggttt gcatgtagag acagctcctg caacaccata ccggctcgtg
+      241 gaattacgct gtgcgccggc cctcattcga ttgtgtccag cgtcggcgcg aatgatgatt
+      301 gagatgtgct tcggctcaga gcgtgcacag gtagttctcc ccccttacct agctgatcca
+      361 gcaattccac gctggcccgc gcgtccttgg gtaacactgg atctgtaccc aaatacaccg
+      421 tcgtgattgt taactaccgt atggcggtta cgatcgagtg acactattat tagaccgcta
+      481 ctccaagtcc caacttttca tcgccataca gaagagaacg agaaagtcga agagttatag
+      541 cgtgtacact tctgattagc taacgaatcg atgcgtacag catactcgag caactttatg
+      601 ggtcgtctgt ctccttgtac cccgcttgac gaggatgtgt ttgtaggcgg cttggatatc
+      661 ggcagtgtat ccgcatggtc aaacacttta gcccgaccgg tgctcaaggt cgaaatccta
+      721 atatagattg ggataggacc cgtccattac taggcgacat tcgcagtcac gagcccgcac
+      781 ggggtgcctc aacacggtga cactcaattc gccggcactg agtacgacga tcgtgattgc
+      841 cataccgtca tgttttgtgt tacccctgat aagaagcgca gatatggcac gggggcagag
+      901 ggcggagtag acccatgcaa aactctagcc tctgggcagc atgatcgacg tagaacgccg
+      961 ttgtgactca ctagtttcag ttatgatgtt cagccaagaa tcctccattt tgacgtgaac
+     1021 cttctccctt tacaccttga agctgcaata ttaagtcgac cctttaagtt gccttgtctt
+     1081 ggtctagagc ccgcagctca ccgataaaat gagcagtcaa ttttagcggc ggttgtccag
+     1141 gttacatgca ctttgggctg gaaccgcgtt acgtttggag tacttagaag tgtcgtaggc
+     1201 ataggagagc cgaaacttga tattgggtct agttagtgct ctaccccgct tcggatccgt
+     1261 aatagtgatg ttgcatgaga cgcttgcctc aaggcgacat acggtggcgg ttgctggaaa
+     1321 tgacgcccca ccccgtgata atttggggac gagccgcacg ataacttctg ccagcgaccg
+     1381 cccctcccac gtccgatggt gattccgaac tccacctgcg tctatcgt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_2/construct_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,191 @@
+LOCUS       construct_2             8000 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_2
+VERSION     construct_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1781..1800
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    1781..3581
+                     /source="Frag_3"
+                     /indicates_part=True
+                     /note="From Frag_3"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3582..3599
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3582..4781
+                     /source="Frag_4b"
+                     /indicates_part=True
+                     /note="From Frag_4b"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        4782..4799
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    4782..6190
+                     /source="Frag_5"
+                     /indicates_part=True
+                     /note="From Frag_5"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    6191..8000
+                     /source="Frag_1"
+                     /indicates_part=True
+                     /note="From Frag_1"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6191..6209
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    8021..9800
+                     /source="Frag_2"
+                     /indicates_part=True
+                     /note="From Frag_2"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cccagatcgc agctcccttg acagtgtcag ttgaatcccc attctaggtt tcctgataaa
+       61 actaagtacg gggacgcatc agtcgaaagc aatcacagat aatagatatc ttgagcagaa
+      121 agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa gtgcgggcaa caataggtgt
+      181 gaggtttcac ggttgcttga tcagtagctg ttcactctct cgcaggccta catagtgagg
+      241 tggtgagatt gttcaggtct gtctcctgcg cggttgtcga gccccgtcgg gcacgctaac
+      301 aaggacagga attcgggtcg tcaaataaca atttacgtca tcgcatccct caagggtaag
+      361 gcgtgatctc catctcggtt cccaattggt cattgtgata gccacactgc agttaccgaa
+      421 ggcgatttta tactaccctg ataagtgctc gcagcccctc ctccctaata atgtaacgac
+      481 gagcattaac ccaggagtat ttctcacgtt gctcgtgccc agccaaggcg atcaacgcag
+      541 accggatagc gttagctagc ccacgggtaa aagcgattgt tgtactcttt catatgaata
+      601 cagcactcgc gaatgcaagc ctacgtcggc tcgattctct tcctcaccac actggaggcg
+      661 atgatctagc ccgtctttca ccccgtacct ttatactcgg ccgcgtattt ctccaccggg
+      721 agctctgcct accaaagcgt cgtacgccca ggaagccgtt tcctttatcc tccctcatgt
+      781 ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt ctggccaaca ctggacagac
+      841 gcgcgagacg ctgataaacc cccattttcg tggggttagt aaatcggtgg cttcaaacgg
+      901 ttcgatcgct cgcacgagca ttagtcagga gtatgattgc gcatcatctc tactccgtac
+      961 taggttctgt agctcaggat ctccgggggg atcaagcttt tatgtcccgc gggattagaa
+     1021 gatatccatc catatgttta ctttgatgcg ggtccgagct ctctatgatg ctgctttgac
+     1081 aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc tctacgacac gttgatgcta
+     1141 aacaagttgg actactaagc aaatgaagcg gaagagatac tgagcgctct ctctatgact
+     1201 ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga aatctcaaat aataatgcaa
+     1261 tgtgttggct aagctcgggc aaactcagga tgtgacctag taccctctgc cccgtgagta
+     1321 cccataccca atcaagccag cccaattcgc gataggtaca gataagcctt actcgtcccg
+     1381 atccttgact aaaacactca tcctcgatag tacgtgcctt gtagagtccg acggccatag
+     1441 gtaaacgacc agttagtgtc gtagggtcct ccactttagc tacgattgca actcccttac
+     1501 cttcgtgccg gcgcgctcct cttgctacca tcacgcttca aatcgggtgg aagaccaact
+     1561 gatgaatgag ggtgcagacc ccagtggagc ataatacgat gcgcccacga tactctagag
+     1621 ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt ggccacatcg gccgcccatc
+     1681 cttgtgtctt ccgataagta ctccctttca aggactctcc gataccggct tagaacacga
+     1741 acggacaacg ctttcagcgc tgagaaatga cggctgcttc aaccagaacg atacagcctt
+     1801 ctttgctaga tagcctctag tgtcagccac caagtccgcc acctaatcct tcgccgaggg
+     1861 tcaaagcttc tgaccatcca attgttaggc actcttggaa ccttgcaagt acctgatcat
+     1921 gcagaaaatg gacttgcccg gagcatattc attataagta ccattcacgg caggttatag
+     1981 tatgcgttga cgcggggtga tacggtaatg caagtaacca tcgggccgcg gtatgcacat
+     2041 agaagggtgt ttgacttggt ttcttacagt gcaactgcat atgtggaccg ccattccaag
+     2101 tgaaaggata cgaagggagg tttcggactg ctatccagag catggaaagc cttcaaggtg
+     2161 gtgcgcactg gaatagtgac tcggggattg tatgtcgagc cgcgtccagt ctttcctata
+     2221 cttatgcgag caaatagacc gagtggaact tgattgcatc agccgaatca cgatgaaaac
+     2281 tcagcttaca attcgtaagc acttcaaata tatgcccgga aaatcgccgt ccagtgactt
+     2341 gtaatagctc cagggtcagt agcgctgccc tggccgaacc aggtgacggt tacgtggacc
+     2401 tcacagtatc aatgttgcag tgcgccacca gattaagctg gccgtgtcat ggtgaacaac
+     2461 cgtgataaaa gaacgggagt atgagagtgc cacccaagag tggtactcca ggattcggaa
+     2521 aggggagggg gcttttcctg cttaacaacc ttcctcggca cggtctaagc gtctcactcg
+     2581 tcctaaactc taccatcatg cagctaggcg aaagtataac tttagggtct atcaggatga
+     2641 gctatctgta ccacggtgat gagataagta gggggtgcgc tagggtcgtt cgtgttttca
+     2701 tcgtctatag tacctatttc tcgtcttcca ttagcgcata cggccatctc gcggcggcta
+     2761 cgtcagccag cgtcaacccc aagtcactaa tttccgttat tataggtgta gctcataact
+     2821 tcttctgccg accaagccaa aagctttgcg gcagctgcaa ggccacgtta ggctctcgga
+     2881 cggcagatat ttattaataa caccactggg ttccagctct taacgcactt cccttcactg
+     2941 gatcacctgt acgcccataa gctaagcctg aagccacggc ctcaatcgtg gacattactc
+     3001 ttagcaaatc cacattacca tgtcaccaat ccccgaaccc cgcgccgacc taaggcgggg
+     3061 tacctcgtgc acggcagcat cgagggaaat atattacaaa agacgcggcg atccaacggt
+     3121 tgataaaaac agttccgtgg aaggcggacg tgtgcttagc gcatgcttct caccgagtga
+     3181 cagcaccgat tccatctcgc tagcacgccg atgagcctcg ctgtgggact atggtccagc
+     3241 ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc ggtaaggtcg atttggtggc
+     3301 actcgcaaga tacgcgggtt attagtagag cgcagtcagg gcccatcgcc agcatttgca
+     3361 tgctcgccgt acgctatcct tgtactacgg ttcctcagtg gctataaagg aatgtcacaa
+     3421 ctccattagc cccttttgtt cagcgcttag tcatggtggg actgactcac cgagactaca
+     3481 tacggattgt gcccgcagag acatgccttt catgctgggg ttttgtaagc agctccacgg
+     3541 ggtagtgtca ccatgccttc gacctatgct tatgaaaccc gaggtaatgc ggcaggatcc
+     3601 cgtggatcct acgcttagcc tgttaccccc cccgttctcc tcggccccca gccagcgcgt
+     3661 attccgcgca ttcctccgag tgcgtatcgc gcaaaccaca agatacctct caacgactag
+     3721 cggtgaacca ccaagcttga catacgtgcc ccttcggaaa cgttattagt ggtcctgagt
+     3781 ggtacgtccc gagtatacgg ggcagcgata gtaacgctac aaatagctag accgacgaca
+     3841 aacacagcac tgaatatcca acagtggcaa cgagacgctt agaaagggaa actacatacc
+     3901 agttcaatcc gggatgactt caaaagggta tgtttgtttt gaagcgaagc tttggttgtc
+     3961 attcagttcc tagagtttac ggcgctgata tggctctagg agtccagtga attcgtcagc
+     4021 ataagcccca catcgtagga aattgcccgg tcgtcggtct agcaaatgct cggtaaactg
+     4081 ggagtgtact aacaccatgt cgtggtaacc cggtggaccg gctactagag acatatttat
+     4141 tcatgctcag ttgaacctgt ttcgaggggg ccgagttaac ataaagtgat tagtcacagc
+     4201 gcattaagat agaacaggga tatagctcgt tgcatccata aattgcccac cgtagggaga
+     4261 acgccgttgg aaaatgagag ttaggcgatg agcggttgtc gcccgcacag acaaaggatg
+     4321 cctttataaa tagtagcggc cttgtctgca ccagacgttt gtgggtcgac gtgctattct
+     4381 agccaaaagc aaaatgtatc atactacagg caataggccc tatgctgacc aaacttgggg
+     4441 acccttgcgc cttctctctt acgcataaca tgcataggta cctctactca tcaggcaggg
+     4501 cggcgtgagg tcactatggc tcaagatgtg tacgactaaa gaaaggttta tgctccttcc
+     4561 ccaaggacgc atttgggact gctacttgcc cctagcgaat tcactaggat ttttgtagaa
+     4621 ccatgagcgc cctatccgat agcacagaga caatgctaca agcaactgtg catgcgctcg
+     4681 atcgccgtgc attaatacgt attatagcgt atcgtgtacg ctaatatctt agtgcaccgc
+     4741 acgctggttg gatacaattc cgtgaaataa ttcctgctta cacaggggct ttctggcgca
+     4801 tggctgtgtc tggatgtttg tgataagagg ctccatgaac ccggcgggaa atgaggggaa
+     4861 accccgggga gcaacgacac taagcctggc agttgttcag ataggacgct tttgtcagtg
+     4921 ggcggttttg catccactaa ctatcataaa cgacacaacg tcgaatgatc atcggcggtt
+     4981 tgcatgtaga gacagctcct gcaacaccat accggctcgt ggaattacgc tgtgcgccgg
+     5041 ccctcattcg attgtgtcca gcgtcggcgc gaatgatgat tgagatgtgc ttcggctcag
+     5101 agcgtgcaca ggtagttctc cccccttacc tagctgatcc agcaattcca cgctggcccg
+     5161 cgcgtccttg ggtaacactg gatctgtacc caaatacacc gtcgtgattg ttaactaccg
+     5221 tatggcggtt acgatcgagt gacactatta ttagaccgct actccaagtc ccaacttttc
+     5281 atcgccatac agaagagaac gagaaagtcg aagagttata gcgtgtacac ttctgattag
+     5341 ctaacgaatc gatgcgtaca gcatactcga gcaactttat gggtcgtctg tctccttgta
+     5401 ccccgcttga cgaggatgtg tttgtaggcg gcttggatat cggcagtgta tccgcatggt
+     5461 caaacacttt agcccgaccg gtgctcaagg tcgaaatcct aatatagatt gggataggac
+     5521 ccgtccatta ctaggcgaca ttcgcagtca cgagcccgca cggggtgcct caacacggtg
+     5581 acactcaatt cgccggcact gagtacgacg atcgtgattg ccataccgtc atgttttgtg
+     5641 ttacccctga taagaagcgc agatatggca cgggggcaga gggcggagta gacccatgca
+     5701 aaactctagc ctctgggcag catgatcgac gtagaacgcc gttgtgactc actagtttca
+     5761 gttatgatgt tcagccaaga atcctccatt ttgacgtgaa ccttctccct ttacaccttg
+     5821 aagctgcaat attaagtcga ccctttaagt tgccttgtct tggtctagag cccgcagctc
+     5881 accgataaaa tgagcagtca attttagcgg cggttgtcca ggttacatgc actttgggct
+     5941 ggaaccgcgt tacgtttgga gtacttagaa gtgtcgtagg cataggagag ccgaaacttg
+     6001 atattgggtc tagttagtgc tctaccccgc ttcggatccg taatagtgat gttgcatgag
+     6061 acgcttgcct caaggcgaca tacggtggcg gttgctggaa atgacgcccc accccgtgat
+     6121 aatttgggga cgagccgcac gataacttct gccagcgacc gcccctccca cgtccgatgg
+     6181 tgattccgaa ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac
+     6241 ttccgctaag ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta
+     6301 agtcgggttg tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg
+     6361 tcatacagag gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg
+     6421 tacgttctcc cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt
+     6481 tatggaccag aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg
+     6541 gatatggccg cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg
+     6601 ggtgcctgtt tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca
+     6661 cgttccagtg aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag
+     6721 gtactgtgga gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg
+     6781 gtgttgcccg tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg
+     6841 caacatgcga ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg
+     6901 cgaccgatat gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag
+     6961 ccaaatgcac agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt
+     7021 tgttacactt ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt
+     7081 gtactgcacc tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt
+     7141 tgcaaccctc tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt
+     7201 tggcgagggc caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca
+     7261 cggtgtatag ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc
+     7321 ggttgttatc actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat
+     7381 cagctggtca gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa
+     7441 tgaaccctca ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga
+     7501 gcagctatcg aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa
+     7561 aacggaggga gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca
+     7621 ttagagcagc catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt
+     7681 tatggacaac aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat
+     7741 tgatgggtgg cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt
+     7801 gtggtacgat ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg
+     7861 ctgaacatgc cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg
+     7921 ggtacgtaac agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc
+     7981 gatcgaattc cgttttacgc
+//
Binary file test-data/init/gibson_assembly_simulation/construct_2/construct_2.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_2/construct_2_connections_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_2/construct_2_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,2 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,depends_on,homology_condition,used_in,parts
+construct_2,construct_2,1,8000,5,,"15-80bp, 0.0-+C Tm",,Frag_2 & Frag_3 & Frag_4b & Frag_5 & Frag_1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_1                  1810 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_1.
+ACCESSION   Frag_1
+VERSION     Frag_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac ttccgctaag
+       61 ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta agtcgggttg
+      121 tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg tcatacagag
+      181 gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg tacgttctcc
+      241 cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt tatggaccag
+      301 aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg gatatggccg
+      361 cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg ggtgcctgtt
+      421 tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca cgttccagtg
+      481 aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag gtactgtgga
+      541 gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg gtgttgcccg
+      601 tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg caacatgcga
+      661 ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg cgaccgatat
+      721 gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag ccaaatgcac
+      781 agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt tgttacactt
+      841 ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt gtactgcacc
+      901 tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt tgcaaccctc
+      961 tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt tggcgagggc
+     1021 caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca cggtgtatag
+     1081 ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc ggttgttatc
+     1141 actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat cagctggtca
+     1201 gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa tgaaccctca
+     1261 ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga gcagctatcg
+     1321 aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa aacggaggga
+     1381 gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca ttagagcagc
+     1441 catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt tatggacaac
+     1501 aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat tgatgggtgg
+     1561 cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt gtggtacgat
+     1621 ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg ctgaacatgc
+     1681 cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg ggtacgtaac
+     1741 agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc gatcgaattc
+     1801 cgttttacgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_2                  1820 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_2.
+ACCESSION   Frag_2
+VERSION     Frag_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 gatcgaattc cgttttacgc cccagatcgc agctcccttg acagtgtcag ttgaatcccc
+       61 attctaggtt tcctgataaa actaagtacg gggacgcatc agtcgaaagc aatcacagat
+      121 aatagatatc ttgagcagaa agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa
+      181 gtgcgggcaa caataggtgt gaggtttcac ggttgcttga tcagtagctg ttcactctct
+      241 cgcaggccta catagtgagg tggtgagatt gttcaggtct gtctcctgcg cggttgtcga
+      301 gccccgtcgg gcacgctaac aaggacagga attcgggtcg tcaaataaca atttacgtca
+      361 tcgcatccct caagggtaag gcgtgatctc catctcggtt cccaattggt cattgtgata
+      421 gccacactgc agttaccgaa ggcgatttta tactaccctg ataagtgctc gcagcccctc
+      481 ctccctaata atgtaacgac gagcattaac ccaggagtat ttctcacgtt gctcgtgccc
+      541 agccaaggcg atcaacgcag accggatagc gttagctagc ccacgggtaa aagcgattgt
+      601 tgtactcttt catatgaata cagcactcgc gaatgcaagc ctacgtcggc tcgattctct
+      661 tcctcaccac actggaggcg atgatctagc ccgtctttca ccccgtacct ttatactcgg
+      721 ccgcgtattt ctccaccggg agctctgcct accaaagcgt cgtacgccca ggaagccgtt
+      781 tcctttatcc tccctcatgt ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt
+      841 ctggccaaca ctggacagac gcgcgagacg ctgataaacc cccattttcg tggggttagt
+      901 aaatcggtgg cttcaaacgg ttcgatcgct cgcacgagca ttagtcagga gtatgattgc
+      961 gcatcatctc tactccgtac taggttctgt agctcaggat ctccgggggg atcaagcttt
+     1021 tatgtcccgc gggattagaa gatatccatc catatgttta ctttgatgcg ggtccgagct
+     1081 ctctatgatg ctgctttgac aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc
+     1141 tctacgacac gttgatgcta aacaagttgg actactaagc aaatgaagcg gaagagatac
+     1201 tgagcgctct ctctatgact ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga
+     1261 aatctcaaat aataatgcaa tgtgttggct aagctcgggc aaactcagga tgtgacctag
+     1321 taccctctgc cccgtgagta cccataccca atcaagccag cccaattcgc gataggtaca
+     1381 gataagcctt actcgtcccg atccttgact aaaacactca tcctcgatag tacgtgcctt
+     1441 gtagagtccg acggccatag gtaaacgacc agttagtgtc gtagggtcct ccactttagc
+     1501 tacgattgca actcccttac cttcgtgccg gcgcgctcct cttgctacca tcacgcttca
+     1561 aatcgggtgg aagaccaact gatgaatgag ggtgcagacc ccagtggagc ataatacgat
+     1621 gcgcccacga tactctagag ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt
+     1681 ggccacatcg gccgcccatc cttgtgtctt ccgataagta ctccctttca aggactctcc
+     1741 gataccggct tagaacacga acggacaacg ctttcagcgc tgagaaatga cggctgcttc
+     1801 aaccagaacg atacagcctt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_3                  1819 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_3.
+ACCESSION   Frag_3
+VERSION     Frag_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aaccagaacg atacagcctt ctttgctaga tagcctctag tgtcagccac caagtccgcc
+       61 acctaatcct tcgccgaggg tcaaagcttc tgaccatcca attgttaggc actcttggaa
+      121 ccttgcaagt acctgatcat gcagaaaatg gacttgcccg gagcatattc attataagta
+      181 ccattcacgg caggttatag tatgcgttga cgcggggtga tacggtaatg caagtaacca
+      241 tcgggccgcg gtatgcacat agaagggtgt ttgacttggt ttcttacagt gcaactgcat
+      301 atgtggaccg ccattccaag tgaaaggata cgaagggagg tttcggactg ctatccagag
+      361 catggaaagc cttcaaggtg gtgcgcactg gaatagtgac tcggggattg tatgtcgagc
+      421 cgcgtccagt ctttcctata cttatgcgag caaatagacc gagtggaact tgattgcatc
+      481 agccgaatca cgatgaaaac tcagcttaca attcgtaagc acttcaaata tatgcccgga
+      541 aaatcgccgt ccagtgactt gtaatagctc cagggtcagt agcgctgccc tggccgaacc
+      601 aggtgacggt tacgtggacc tcacagtatc aatgttgcag tgcgccacca gattaagctg
+      661 gccgtgtcat ggtgaacaac cgtgataaaa gaacgggagt atgagagtgc cacccaagag
+      721 tggtactcca ggattcggaa aggggagggg gcttttcctg cttaacaacc ttcctcggca
+      781 cggtctaagc gtctcactcg tcctaaactc taccatcatg cagctaggcg aaagtataac
+      841 tttagggtct atcaggatga gctatctgta ccacggtgat gagataagta gggggtgcgc
+      901 tagggtcgtt cgtgttttca tcgtctatag tacctatttc tcgtcttcca ttagcgcata
+      961 cggccatctc gcggcggcta cgtcagccag cgtcaacccc aagtcactaa tttccgttat
+     1021 tataggtgta gctcataact tcttctgccg accaagccaa aagctttgcg gcagctgcaa
+     1081 ggccacgtta ggctctcgga cggcagatat ttattaataa caccactggg ttccagctct
+     1141 taacgcactt cccttcactg gatcacctgt acgcccataa gctaagcctg aagccacggc
+     1201 ctcaatcgtg gacattactc ttagcaaatc cacattacca tgtcaccaat ccccgaaccc
+     1261 cgcgccgacc taaggcgggg tacctcgtgc acggcagcat cgagggaaat atattacaaa
+     1321 agacgcggcg atccaacggt tgataaaaac agttccgtgg aaggcggacg tgtgcttagc
+     1381 gcatgcttct caccgagtga cagcaccgat tccatctcgc tagcacgccg atgagcctcg
+     1441 ctgtgggact atggtccagc ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc
+     1501 ggtaaggtcg atttggtggc actcgcaaga tacgcgggtt attagtagag cgcagtcagg
+     1561 gcccatcgcc agcatttgca tgctcgccgt acgctatcct tgtactacgg ttcctcagtg
+     1621 gctataaagg aatgtcacaa ctccattagc cccttttgtt cagcgcttag tcatggtggg
+     1681 actgactcac cgagactaca tacggattgt gcccgcagag acatgccttt catgctgggg
+     1741 ttttgtaagc agctccacgg ggtagtgtca ccatgccttc gacctatgct tatgaaaccc
+     1801 gaggtaatgc ggcaggatc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_4b.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+LOCUS       Frag_4b                 1218 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_4b.
+ACCESSION   Frag_4b
+VERSION     Frag_4b
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aggtaatgcg gcaggatccc gtggatccta cgcttagcct gttacccccc ccgttctcct
+       61 cggcccccag ccagcgcgta ttccgcgcat tcctccgagt gcgtatcgcg caaaccacaa
+      121 gatacctctc aacgactagc ggtgaaccac caagcttgac atacgtgccc cttcggaaac
+      181 gttattagtg gtcctgagtg gtacgtcccg agtatacggg gcagcgatag taacgctaca
+      241 aatagctaga ccgacgacaa acacagcact gaatatccaa cagtggcaac gagacgctta
+      301 gaaagggaaa ctacatacca gttcaatccg ggatgacttc aaaagggtat gtttgttttg
+      361 aagcgaagct ttggttgtca ttcagttcct agagtttacg gcgctgatat ggctctagga
+      421 gtccagtgaa ttcgtcagca taagccccac atcgtaggaa attgcccggt cgtcggtcta
+      481 gcaaatgctc ggtaaactgg gagtgtacta acaccatgtc gtggtaaccc ggtggaccgg
+      541 ctactagaga catatttatt catgctcagt tgaacctgtt tcgagggggc cgagttaaca
+      601 taaagtgatt agtcacagcg cattaagata gaacagggat atagctcgtt gcatccataa
+      661 attgcccacc gtagggagaa cgccgttgga aaatgagagt taggcgatga gcggttgtcg
+      721 cccgcacaga caaaggatgc ctttataaat agtagcggcc ttgtctgcac cagacgtttg
+      781 tgggtcgacg tgctattcta gccaaaagca aaatgtatca tactacaggc aataggccct
+      841 atgctgacca aacttgggga cccttgcgcc ttctctctta cgcataacat gcataggtac
+      901 ctctactcat caggcagggc ggcgtgaggt cactatggct caagatgtgt acgactaaag
+      961 aaaggtttat gctccttccc caaggacgca tttgggactg ctacttgccc ctagcgaatt
+     1021 cactaggatt tttgtagaac catgagcgcc ctatccgata gcacagagac aatgctacaa
+     1081 gcaactgtgc atgcgctcga tcgccgtgca ttaatacgta ttatagcgta tcgtgtacgc
+     1141 taatatctta gtgcaccgca cgctggttgg atacaattcc gtgaaataat tcctgcttac
+     1201 acaggggctt tctggcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_2/provided_parts_records/Frag_5.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,35 @@
+LOCUS       Frag_5                  1428 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_5.
+ACCESSION   Frag_5
+VERSION     Frag_5
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 acaggggctt tctggcgcat ggctgtgtct ggatgtttgt gataagaggc tccatgaacc
+       61 cggcgggaaa tgaggggaaa ccccggggag caacgacact aagcctggca gttgttcaga
+      121 taggacgctt ttgtcagtgg gcggttttgc atccactaac tatcataaac gacacaacgt
+      181 cgaatgatca tcggcggttt gcatgtagag acagctcctg caacaccata ccggctcgtg
+      241 gaattacgct gtgcgccggc cctcattcga ttgtgtccag cgtcggcgcg aatgatgatt
+      301 gagatgtgct tcggctcaga gcgtgcacag gtagttctcc ccccttacct agctgatcca
+      361 gcaattccac gctggcccgc gcgtccttgg gtaacactgg atctgtaccc aaatacaccg
+      421 tcgtgattgt taactaccgt atggcggtta cgatcgagtg acactattat tagaccgcta
+      481 ctccaagtcc caacttttca tcgccataca gaagagaacg agaaagtcga agagttatag
+      541 cgtgtacact tctgattagc taacgaatcg atgcgtacag catactcgag caactttatg
+      601 ggtcgtctgt ctccttgtac cccgcttgac gaggatgtgt ttgtaggcgg cttggatatc
+      661 ggcagtgtat ccgcatggtc aaacacttta gcccgaccgg tgctcaaggt cgaaatccta
+      721 atatagattg ggataggacc cgtccattac taggcgacat tcgcagtcac gagcccgcac
+      781 ggggtgcctc aacacggtga cactcaattc gccggcactg agtacgacga tcgtgattgc
+      841 cataccgtca tgttttgtgt tacccctgat aagaagcgca gatatggcac gggggcagag
+      901 ggcggagtag acccatgcaa aactctagcc tctgggcagc atgatcgacg tagaacgccg
+      961 ttgtgactca ctagtttcag ttatgatgtt cagccaagaa tcctccattt tgacgtgaac
+     1021 cttctccctt tacaccttga agctgcaata ttaagtcgac cctttaagtt gccttgtctt
+     1081 ggtctagagc ccgcagctca ccgataaaat gagcagtcaa ttttagcggc ggttgtccag
+     1141 gttacatgca ctttgggctg gaaccgcgtt acgtttggag tacttagaag tgtcgtaggc
+     1201 ataggagagc cgaaacttga tattgggtct agttagtgct ctaccccgct tcggatccgt
+     1261 aatagtgatg ttgcatgaga cgcttgcctc aaggcgacat acggtggcgg ttgctggaaa
+     1321 tgacgcccca ccccgtgata atttggggac gagccgcacg ataacttctg ccagcgaccg
+     1381 cccctcccac gtccgatggt gattccgaac tccacctgcg tctatcgt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_3/construct_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,191 @@
+LOCUS       construct_3             8000 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  .
+ACCESSION   construct_3
+VERSION     construct_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+     homology        1781..1800
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    1781..3581
+                     /source="Frag_3"
+                     /indicates_part=True
+                     /note="From Frag_3"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        3582..3599
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    3582..4781
+                     /source="Frag_4c"
+                     /indicates_part=True
+                     /note="From Frag_4c"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        4782..4799
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    4782..6190
+                     /source="Frag_5b"
+                     /indicates_part=True
+                     /note="From Frag_5b"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     misc_feature    6191..8000
+                     /source="Frag_1"
+                     /indicates_part=True
+                     /note="From Frag_1"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+     homology        6191..6209
+                     /label="homology"
+                     /color="#f7e8f7"
+                     /ApEinfo_fwdcolor="#f7e8f7"
+     misc_feature    8021..9800
+                     /source="Frag_2"
+                     /indicates_part=True
+                     /note="From Frag_2"
+                     /color="white"
+                     /ApEinfo_fwdcolor="white"
+ORIGIN
+        1 cccagatcgc agctcccttg acagtgtcag ttgaatcccc attctaggtt tcctgataaa
+       61 actaagtacg gggacgcatc agtcgaaagc aatcacagat aatagatatc ttgagcagaa
+      121 agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa gtgcgggcaa caataggtgt
+      181 gaggtttcac ggttgcttga tcagtagctg ttcactctct cgcaggccta catagtgagg
+      241 tggtgagatt gttcaggtct gtctcctgcg cggttgtcga gccccgtcgg gcacgctaac
+      301 aaggacagga attcgggtcg tcaaataaca atttacgtca tcgcatccct caagggtaag
+      361 gcgtgatctc catctcggtt cccaattggt cattgtgata gccacactgc agttaccgaa
+      421 ggcgatttta tactaccctg ataagtgctc gcagcccctc ctccctaata atgtaacgac
+      481 gagcattaac ccaggagtat ttctcacgtt gctcgtgccc agccaaggcg atcaacgcag
+      541 accggatagc gttagctagc ccacgggtaa aagcgattgt tgtactcttt catatgaata
+      601 cagcactcgc gaatgcaagc ctacgtcggc tcgattctct tcctcaccac actggaggcg
+      661 atgatctagc ccgtctttca ccccgtacct ttatactcgg ccgcgtattt ctccaccggg
+      721 agctctgcct accaaagcgt cgtacgccca ggaagccgtt tcctttatcc tccctcatgt
+      781 ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt ctggccaaca ctggacagac
+      841 gcgcgagacg ctgataaacc cccattttcg tggggttagt aaatcggtgg cttcaaacgg
+      901 ttcgatcgct cgcacgagca ttagtcagga gtatgattgc gcatcatctc tactccgtac
+      961 taggttctgt agctcaggat ctccgggggg atcaagcttt tatgtcccgc gggattagaa
+     1021 gatatccatc catatgttta ctttgatgcg ggtccgagct ctctatgatg ctgctttgac
+     1081 aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc tctacgacac gttgatgcta
+     1141 aacaagttgg actactaagc aaatgaagcg gaagagatac tgagcgctct ctctatgact
+     1201 ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga aatctcaaat aataatgcaa
+     1261 tgtgttggct aagctcgggc aaactcagga tgtgacctag taccctctgc cccgtgagta
+     1321 cccataccca atcaagccag cccaattcgc gataggtaca gataagcctt actcgtcccg
+     1381 atccttgact aaaacactca tcctcgatag tacgtgcctt gtagagtccg acggccatag
+     1441 gtaaacgacc agttagtgtc gtagggtcct ccactttagc tacgattgca actcccttac
+     1501 cttcgtgccg gcgcgctcct cttgctacca tcacgcttca aatcgggtgg aagaccaact
+     1561 gatgaatgag ggtgcagacc ccagtggagc ataatacgat gcgcccacga tactctagag
+     1621 ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt ggccacatcg gccgcccatc
+     1681 cttgtgtctt ccgataagta ctccctttca aggactctcc gataccggct tagaacacga
+     1741 acggacaacg ctttcagcgc tgagaaatga cggctgcttc aaccagaacg atacagcctt
+     1801 ctttgctaga tagcctctag tgtcagccac caagtccgcc acctaatcct tcgccgaggg
+     1861 tcaaagcttc tgaccatcca attgttaggc actcttggaa ccttgcaagt acctgatcat
+     1921 gcagaaaatg gacttgcccg gagcatattc attataagta ccattcacgg caggttatag
+     1981 tatgcgttga cgcggggtga tacggtaatg caagtaacca tcgggccgcg gtatgcacat
+     2041 agaagggtgt ttgacttggt ttcttacagt gcaactgcat atgtggaccg ccattccaag
+     2101 tgaaaggata cgaagggagg tttcggactg ctatccagag catggaaagc cttcaaggtg
+     2161 gtgcgcactg gaatagtgac tcggggattg tatgtcgagc cgcgtccagt ctttcctata
+     2221 cttatgcgag caaatagacc gagtggaact tgattgcatc agccgaatca cgatgaaaac
+     2281 tcagcttaca attcgtaagc acttcaaata tatgcccgga aaatcgccgt ccagtgactt
+     2341 gtaatagctc cagggtcagt agcgctgccc tggccgaacc aggtgacggt tacgtggacc
+     2401 tcacagtatc aatgttgcag tgcgccacca gattaagctg gccgtgtcat ggtgaacaac
+     2461 cgtgataaaa gaacgggagt atgagagtgc cacccaagag tggtactcca ggattcggaa
+     2521 aggggagggg gcttttcctg cttaacaacc ttcctcggca cggtctaagc gtctcactcg
+     2581 tcctaaactc taccatcatg cagctaggcg aaagtataac tttagggtct atcaggatga
+     2641 gctatctgta ccacggtgat gagataagta gggggtgcgc tagggtcgtt cgtgttttca
+     2701 tcgtctatag tacctatttc tcgtcttcca ttagcgcata cggccatctc gcggcggcta
+     2761 cgtcagccag cgtcaacccc aagtcactaa tttccgttat tataggtgta gctcataact
+     2821 tcttctgccg accaagccaa aagctttgcg gcagctgcaa ggccacgtta ggctctcgga
+     2881 cggcagatat ttattaataa caccactggg ttccagctct taacgcactt cccttcactg
+     2941 gatcacctgt acgcccataa gctaagcctg aagccacggc ctcaatcgtg gacattactc
+     3001 ttagcaaatc cacattacca tgtcaccaat ccccgaaccc cgcgccgacc taaggcgggg
+     3061 tacctcgtgc acggcagcat cgagggaaat atattacaaa agacgcggcg atccaacggt
+     3121 tgataaaaac agttccgtgg aaggcggacg tgtgcttagc gcatgcttct caccgagtga
+     3181 cagcaccgat tccatctcgc tagcacgccg atgagcctcg ctgtgggact atggtccagc
+     3241 ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc ggtaaggtcg atttggtggc
+     3301 actcgcaaga tacgcgggtt attagtagag cgcagtcagg gcccatcgcc agcatttgca
+     3361 tgctcgccgt acgctatcct tgtactacgg ttcctcagtg gctataaagg aatgtcacaa
+     3421 ctccattagc cccttttgtt cagcgcttag tcatggtggg actgactcac cgagactaca
+     3481 tacggattgt gcccgcagag acatgccttt catgctgggg ttttgtaagc agctccacgg
+     3541 ggtagtgtca ccatgccttc gacctatgct tatgaaaccc gaggtaatgc ggcaggatcc
+     3601 cgtggatcct acgcttagcc tgttaggggg ggggttctcc tcggccccca gccagcgcgt
+     3661 attccgcgca ttcctccgag tgcgtatcgc gcaaaccaca agatacctct caacgactag
+     3721 cggtgaacca ccaagcttga catacgtgcc ccttcggaaa cgttattagt ggtcctgagt
+     3781 ggtacgtccc gagtatacgg ggcagcgata gtaacgctac aaatagctag accgacgaca
+     3841 aacacagcac tgaatatcca acagtggcaa cgagacgctt agaaagggaa actacatacc
+     3901 agttcaatcc gggatgactt caaaagggta tgtttgtttt gaagcgaagc tttggttgtc
+     3961 attcagttcc tagagtttac ggcgctgata tggctctagg agtccagtga attcgtcagc
+     4021 ataagcccca catcgtagga aattgcccgg tcgtcggtct agcaaatgct cggtaaactg
+     4081 ggagtgtact aacaccatgt cgtggtaacc cggtggaccg gctactagag acatatttat
+     4141 tcatgctcag ttgaacctgt ttcgaggggg ccgagttaac ataaagtgat tagtcacagc
+     4201 gcattaagat agaacaggga tatagctcgt tgcatccata aattgcccac cgtagggaga
+     4261 acgccgttgg aaaatgagag ttaggcgatg agcggttgtc gcccgcacag acaaaggatg
+     4321 cctttataaa tagtagcggc cttgtctgca ccagacgttt gtgggtcgac gtgctattct
+     4381 agccaaaagc aaaatgtatc atactacagg caataggccc tatgctgacc aaacttgggg
+     4441 acccttgcgc cttctctctt acgcataaca tgcataggta cctctactca tcaggcaggg
+     4501 cggcgtgagg tcactatggc tcaagatgtg tacgactaaa gaaaggttta tgctccttcc
+     4561 ccaaggacgc atttgggact gctacttgcc cctagcgaat tcactaggat ttttgtagaa
+     4621 ccatgagcgc cctatccgat agcacagaga caatgctaca agcaactgtg catgcgctcg
+     4681 atcgccgtgc attaatacgt attatagcgt atcgtgtacg ctaatatctt agtgcaccgc
+     4741 acgctggttg gatacaattc cgtgaaataa ttcctgctta cacaggggct ttctggcgca
+     4801 tggctgtgtc tggaaaaaaa aaaaaaaaaa aaacatgaac ccggcgggaa atgaggggaa
+     4861 accccgggga gcaacgacac taagcctggc agttgttcag ataggacgct tttgtcagtg
+     4921 ggcggttttg catccactaa ctatcataaa cgacacaacg tcgaatgatc atcggcggtt
+     4981 tgcatgtaga gacagctcct gcaacaccat accggctcgt ggaattacgc tgtgcgccgg
+     5041 ccctcattcg attgtgtcca gcgtcggcgc gaatgatgat tgagatgtgc ttcggctcag
+     5101 agcgtgcaca ggtagttctc cccccttacc tagctgatcc agcaattcca cgctggcccg
+     5161 cgcgtccttg ggtaacactg gatctgtacc caaatacacc gtcgtgattg ttaactaccg
+     5221 tatggcggtt acgatcgagt gacactatta ttagaccgct actccaagtc ccaacttttc
+     5281 atcgccatac agaagagaac gagaaagtcg aagagttata gcgtgtacac ttctgattag
+     5341 ctaacgaatc gatgcgtaca gcatactcga gcaactttat gggtcgtctg tctccttgta
+     5401 ccccgcttga cgaggatgtg tttgtaggcg gcttggatat cggcagtgta tccgcatggt
+     5461 caaacacttt agcccgaccg gtgctcaagg tcgaaatcct aatatagatt gggataggac
+     5521 ccgtccatta ctaggcgaca ttcgcagtca cgagcccgca cggggtgcct caacacggtg
+     5581 acactcaatt cgccggcact gagtacgacg atcgtgattg ccataccgtc atgttttgtg
+     5641 ttacccctga taagaagcgc agatatggca cgggggcaga gggcggagta gacccatgca
+     5701 aaactctagc ctctgggcag catgatcgac gtagaacgcc gttgtgactc actagtttca
+     5761 gttatgatgt tcagccaaga atcctccatt ttgacgtgaa ccttctccct ttacaccttg
+     5821 aagctgcaat attaagtcga ccctttaagt tgccttgtct tggtctagag cccgcagctc
+     5881 accgataaaa tgagcagtca attttagcgg cggttgtcca ggttacatgc actttgggct
+     5941 ggaaccgcgt tacgtttgga gtacttagaa gtgtcgtagg cataggagag ccgaaacttg
+     6001 atattgggtc tagttagtgc tctaccccgc ttcggatccg taatagtgat gttgcatgag
+     6061 acgcttgcct caaggcgaca tacggtggcg gttgctggaa atgacgcccc accccgtgat
+     6121 aatttgggga cgagccgcac gataacttct gccagcgacc gcccctccca cgtccgatgg
+     6181 tgattccgaa ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac
+     6241 ttccgctaag ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta
+     6301 agtcgggttg tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg
+     6361 tcatacagag gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg
+     6421 tacgttctcc cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt
+     6481 tatggaccag aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg
+     6541 gatatggccg cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg
+     6601 ggtgcctgtt tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca
+     6661 cgttccagtg aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag
+     6721 gtactgtgga gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg
+     6781 gtgttgcccg tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg
+     6841 caacatgcga ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg
+     6901 cgaccgatat gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag
+     6961 ccaaatgcac agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt
+     7021 tgttacactt ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt
+     7081 gtactgcacc tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt
+     7141 tgcaaccctc tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt
+     7201 tggcgagggc caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca
+     7261 cggtgtatag ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc
+     7321 ggttgttatc actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat
+     7381 cagctggtca gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa
+     7441 tgaaccctca ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga
+     7501 gcagctatcg aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa
+     7561 aacggaggga gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca
+     7621 ttagagcagc catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt
+     7681 tatggacaac aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat
+     7741 tgatgggtgg cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt
+     7801 gtggtacgat ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg
+     7861 ctgaacatgc cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg
+     7921 ggtacgtaac agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc
+     7981 gatcgaattc cgttttacgc
+//
Binary file test-data/init/gibson_assembly_simulation/construct_3/construct_3.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_3/construct_3_connections_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_3/construct_3_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,2 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,depends_on,homology_condition,used_in,parts
+construct_3,construct_3,1,8000,5,,"15-80bp, 0.0-+C Tm",,Frag_2 & Frag_3 & Frag_4c & Frag_5b & Frag_1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_1                  1810 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_1.
+ACCESSION   Frag_1
+VERSION     Frag_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac ttccgctaag
+       61 ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta agtcgggttg
+      121 tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg tcatacagag
+      181 gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg tacgttctcc
+      241 cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt tatggaccag
+      301 aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg gatatggccg
+      361 cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg ggtgcctgtt
+      421 tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca cgttccagtg
+      481 aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag gtactgtgga
+      541 gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg gtgttgcccg
+      601 tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg caacatgcga
+      661 ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg cgaccgatat
+      721 gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag ccaaatgcac
+      781 agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt tgttacactt
+      841 ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt gtactgcacc
+      901 tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt tgcaaccctc
+      961 tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt tggcgagggc
+     1021 caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca cggtgtatag
+     1081 ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc ggttgttatc
+     1141 actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat cagctggtca
+     1201 gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa tgaaccctca
+     1261 ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga gcagctatcg
+     1321 aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa aacggaggga
+     1381 gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca ttagagcagc
+     1441 catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt tatggacaac
+     1501 aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat tgatgggtgg
+     1561 cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt gtggtacgat
+     1621 ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg ctgaacatgc
+     1681 cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg ggtacgtaac
+     1741 agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc gatcgaattc
+     1801 cgttttacgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_2                  1820 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_2.
+ACCESSION   Frag_2
+VERSION     Frag_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 gatcgaattc cgttttacgc cccagatcgc agctcccttg acagtgtcag ttgaatcccc
+       61 attctaggtt tcctgataaa actaagtacg gggacgcatc agtcgaaagc aatcacagat
+      121 aatagatatc ttgagcagaa agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa
+      181 gtgcgggcaa caataggtgt gaggtttcac ggttgcttga tcagtagctg ttcactctct
+      241 cgcaggccta catagtgagg tggtgagatt gttcaggtct gtctcctgcg cggttgtcga
+      301 gccccgtcgg gcacgctaac aaggacagga attcgggtcg tcaaataaca atttacgtca
+      361 tcgcatccct caagggtaag gcgtgatctc catctcggtt cccaattggt cattgtgata
+      421 gccacactgc agttaccgaa ggcgatttta tactaccctg ataagtgctc gcagcccctc
+      481 ctccctaata atgtaacgac gagcattaac ccaggagtat ttctcacgtt gctcgtgccc
+      541 agccaaggcg atcaacgcag accggatagc gttagctagc ccacgggtaa aagcgattgt
+      601 tgtactcttt catatgaata cagcactcgc gaatgcaagc ctacgtcggc tcgattctct
+      661 tcctcaccac actggaggcg atgatctagc ccgtctttca ccccgtacct ttatactcgg
+      721 ccgcgtattt ctccaccggg agctctgcct accaaagcgt cgtacgccca ggaagccgtt
+      781 tcctttatcc tccctcatgt ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt
+      841 ctggccaaca ctggacagac gcgcgagacg ctgataaacc cccattttcg tggggttagt
+      901 aaatcggtgg cttcaaacgg ttcgatcgct cgcacgagca ttagtcagga gtatgattgc
+      961 gcatcatctc tactccgtac taggttctgt agctcaggat ctccgggggg atcaagcttt
+     1021 tatgtcccgc gggattagaa gatatccatc catatgttta ctttgatgcg ggtccgagct
+     1081 ctctatgatg ctgctttgac aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc
+     1141 tctacgacac gttgatgcta aacaagttgg actactaagc aaatgaagcg gaagagatac
+     1201 tgagcgctct ctctatgact ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga
+     1261 aatctcaaat aataatgcaa tgtgttggct aagctcgggc aaactcagga tgtgacctag
+     1321 taccctctgc cccgtgagta cccataccca atcaagccag cccaattcgc gataggtaca
+     1381 gataagcctt actcgtcccg atccttgact aaaacactca tcctcgatag tacgtgcctt
+     1441 gtagagtccg acggccatag gtaaacgacc agttagtgtc gtagggtcct ccactttagc
+     1501 tacgattgca actcccttac cttcgtgccg gcgcgctcct cttgctacca tcacgcttca
+     1561 aatcgggtgg aagaccaact gatgaatgag ggtgcagacc ccagtggagc ataatacgat
+     1621 gcgcccacga tactctagag ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt
+     1681 ggccacatcg gccgcccatc cttgtgtctt ccgataagta ctccctttca aggactctcc
+     1741 gataccggct tagaacacga acggacaacg ctttcagcgc tgagaaatga cggctgcttc
+     1801 aaccagaacg atacagcctt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_3                  1819 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_3.
+ACCESSION   Frag_3
+VERSION     Frag_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aaccagaacg atacagcctt ctttgctaga tagcctctag tgtcagccac caagtccgcc
+       61 acctaatcct tcgccgaggg tcaaagcttc tgaccatcca attgttaggc actcttggaa
+      121 ccttgcaagt acctgatcat gcagaaaatg gacttgcccg gagcatattc attataagta
+      181 ccattcacgg caggttatag tatgcgttga cgcggggtga tacggtaatg caagtaacca
+      241 tcgggccgcg gtatgcacat agaagggtgt ttgacttggt ttcttacagt gcaactgcat
+      301 atgtggaccg ccattccaag tgaaaggata cgaagggagg tttcggactg ctatccagag
+      361 catggaaagc cttcaaggtg gtgcgcactg gaatagtgac tcggggattg tatgtcgagc
+      421 cgcgtccagt ctttcctata cttatgcgag caaatagacc gagtggaact tgattgcatc
+      481 agccgaatca cgatgaaaac tcagcttaca attcgtaagc acttcaaata tatgcccgga
+      541 aaatcgccgt ccagtgactt gtaatagctc cagggtcagt agcgctgccc tggccgaacc
+      601 aggtgacggt tacgtggacc tcacagtatc aatgttgcag tgcgccacca gattaagctg
+      661 gccgtgtcat ggtgaacaac cgtgataaaa gaacgggagt atgagagtgc cacccaagag
+      721 tggtactcca ggattcggaa aggggagggg gcttttcctg cttaacaacc ttcctcggca
+      781 cggtctaagc gtctcactcg tcctaaactc taccatcatg cagctaggcg aaagtataac
+      841 tttagggtct atcaggatga gctatctgta ccacggtgat gagataagta gggggtgcgc
+      901 tagggtcgtt cgtgttttca tcgtctatag tacctatttc tcgtcttcca ttagcgcata
+      961 cggccatctc gcggcggcta cgtcagccag cgtcaacccc aagtcactaa tttccgttat
+     1021 tataggtgta gctcataact tcttctgccg accaagccaa aagctttgcg gcagctgcaa
+     1081 ggccacgtta ggctctcgga cggcagatat ttattaataa caccactggg ttccagctct
+     1141 taacgcactt cccttcactg gatcacctgt acgcccataa gctaagcctg aagccacggc
+     1201 ctcaatcgtg gacattactc ttagcaaatc cacattacca tgtcaccaat ccccgaaccc
+     1261 cgcgccgacc taaggcgggg tacctcgtgc acggcagcat cgagggaaat atattacaaa
+     1321 agacgcggcg atccaacggt tgataaaaac agttccgtgg aaggcggacg tgtgcttagc
+     1381 gcatgcttct caccgagtga cagcaccgat tccatctcgc tagcacgccg atgagcctcg
+     1441 ctgtgggact atggtccagc ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc
+     1501 ggtaaggtcg atttggtggc actcgcaaga tacgcgggtt attagtagag cgcagtcagg
+     1561 gcccatcgcc agcatttgca tgctcgccgt acgctatcct tgtactacgg ttcctcagtg
+     1621 gctataaagg aatgtcacaa ctccattagc cccttttgtt cagcgcttag tcatggtggg
+     1681 actgactcac cgagactaca tacggattgt gcccgcagag acatgccttt catgctgggg
+     1741 ttttgtaagc agctccacgg ggtagtgtca ccatgccttc gacctatgct tatgaaaccc
+     1801 gaggtaatgc ggcaggatc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_4c.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+LOCUS       Frag_4c                 1218 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_4c.
+ACCESSION   Frag_4c
+VERSION     Frag_4c
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aggtaatgcg gcaggatccc gtggatccta cgcttagcct gttagggggg gggttctcct
+       61 cggcccccag ccagcgcgta ttccgcgcat tcctccgagt gcgtatcgcg caaaccacaa
+      121 gatacctctc aacgactagc ggtgaaccac caagcttgac atacgtgccc cttcggaaac
+      181 gttattagtg gtcctgagtg gtacgtcccg agtatacggg gcagcgatag taacgctaca
+      241 aatagctaga ccgacgacaa acacagcact gaatatccaa cagtggcaac gagacgctta
+      301 gaaagggaaa ctacatacca gttcaatccg ggatgacttc aaaagggtat gtttgttttg
+      361 aagcgaagct ttggttgtca ttcagttcct agagtttacg gcgctgatat ggctctagga
+      421 gtccagtgaa ttcgtcagca taagccccac atcgtaggaa attgcccggt cgtcggtcta
+      481 gcaaatgctc ggtaaactgg gagtgtacta acaccatgtc gtggtaaccc ggtggaccgg
+      541 ctactagaga catatttatt catgctcagt tgaacctgtt tcgagggggc cgagttaaca
+      601 taaagtgatt agtcacagcg cattaagata gaacagggat atagctcgtt gcatccataa
+      661 attgcccacc gtagggagaa cgccgttgga aaatgagagt taggcgatga gcggttgtcg
+      721 cccgcacaga caaaggatgc ctttataaat agtagcggcc ttgtctgcac cagacgtttg
+      781 tgggtcgacg tgctattcta gccaaaagca aaatgtatca tactacaggc aataggccct
+      841 atgctgacca aacttgggga cccttgcgcc ttctctctta cgcataacat gcataggtac
+      901 ctctactcat caggcagggc ggcgtgaggt cactatggct caagatgtgt acgactaaag
+      961 aaaggtttat gctccttccc caaggacgca tttgggactg ctacttgccc ctagcgaatt
+     1021 cactaggatt tttgtagaac catgagcgcc ctatccgata gcacagagac aatgctacaa
+     1081 gcaactgtgc atgcgctcga tcgccgtgca ttaatacgta ttatagcgta tcgtgtacgc
+     1141 taatatctta gtgcaccgca cgctggttgg atacaattcc gtgaaataat tcctgcttac
+     1201 acaggggctt tctggcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_3/provided_parts_records/Frag_5b.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,35 @@
+LOCUS       Frag_5b                 1428 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_5b.
+ACCESSION   Frag_5b
+VERSION     Frag_5b
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 acaggggctt tctggcgcat ggctgtgtct ggaaaaaaaa aaaaaaaaaa aacatgaacc
+       61 cggcgggaaa tgaggggaaa ccccggggag caacgacact aagcctggca gttgttcaga
+      121 taggacgctt ttgtcagtgg gcggttttgc atccactaac tatcataaac gacacaacgt
+      181 cgaatgatca tcggcggttt gcatgtagag acagctcctg caacaccata ccggctcgtg
+      241 gaattacgct gtgcgccggc cctcattcga ttgtgtccag cgtcggcgcg aatgatgatt
+      301 gagatgtgct tcggctcaga gcgtgcacag gtagttctcc ccccttacct agctgatcca
+      361 gcaattccac gctggcccgc gcgtccttgg gtaacactgg atctgtaccc aaatacaccg
+      421 tcgtgattgt taactaccgt atggcggtta cgatcgagtg acactattat tagaccgcta
+      481 ctccaagtcc caacttttca tcgccataca gaagagaacg agaaagtcga agagttatag
+      541 cgtgtacact tctgattagc taacgaatcg atgcgtacag catactcgag caactttatg
+      601 ggtcgtctgt ctccttgtac cccgcttgac gaggatgtgt ttgtaggcgg cttggatatc
+      661 ggcagtgtat ccgcatggtc aaacacttta gcccgaccgg tgctcaaggt cgaaatccta
+      721 atatagattg ggataggacc cgtccattac taggcgacat tcgcagtcac gagcccgcac
+      781 ggggtgcctc aacacggtga cactcaattc gccggcactg agtacgacga tcgtgattgc
+      841 cataccgtca tgttttgtgt tacccctgat aagaagcgca gatatggcac gggggcagag
+      901 ggcggagtag acccatgcaa aactctagcc tctgggcagc atgatcgacg tagaacgccg
+      961 ttgtgactca ctagtttcag ttatgatgtt cagccaagaa tcctccattt tgacgtgaac
+     1021 cttctccctt tacaccttga agctgcaata ttaagtcgac cctttaagtt gccttgtctt
+     1081 ggtctagagc ccgcagctca ccgataaaat gagcagtcaa ttttagcggc ggttgtccag
+     1141 gttacatgca ctttgggctg gaaccgcgtt acgtttggag tacttagaag tgtcgtaggc
+     1201 ataggagagc cgaaacttga tattgggtct agttagtgct ctaccccgct tcggatccgt
+     1261 aatagtgatg ttgcatgaga cgcttgcctc aaggcgacat acggtggcgg ttgctggaaa
+     1321 tgacgcccca ccccgtgata atttggggac gagccgcacg ataacttctg ccagcgaccg
+     1381 cccctcccac gtccgatggt gattccgaac tccacctgcg tctatcgt
+//
Binary file test-data/init/gibson_assembly_simulation/construct_4/construct_4_connections_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_4/error.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+assembly_name;message;suggestion;data
+construct_4;Wrong number of constructs;expected_: 1,found: 0
+construct_4;Some parts are unused;unused_parts: Frag_1 & Frag_2 & Frag_3 & Frag_4
\ No newline at end of file
Binary file test-data/init/gibson_assembly_simulation/construct_4/fragments_in_construct_4_homology_mix/Frag_1_01.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_4/fragments_in_construct_4_homology_mix/Frag_2_01.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_4/fragments_in_construct_4_homology_mix/Frag_3_01.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_4/fragments_in_construct_4_homology_mix/Frag_4_01.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_4/provided_parts_plots/Frag_1.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_4/provided_parts_plots/Frag_2.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_4/provided_parts_plots/Frag_3.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_4/provided_parts_plots/Frag_4.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_4/provided_parts_records/Frag_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_1                  1810 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_1.
+ACCESSION   Frag_1
+VERSION     Frag_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac ttccgctaag
+       61 ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta agtcgggttg
+      121 tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg tcatacagag
+      181 gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg tacgttctcc
+      241 cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt tatggaccag
+      301 aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg gatatggccg
+      361 cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg ggtgcctgtt
+      421 tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca cgttccagtg
+      481 aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag gtactgtgga
+      541 gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg gtgttgcccg
+      601 tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg caacatgcga
+      661 ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg cgaccgatat
+      721 gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag ccaaatgcac
+      781 agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt tgttacactt
+      841 ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt gtactgcacc
+      901 tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt tgcaaccctc
+      961 tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt tggcgagggc
+     1021 caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca cggtgtatag
+     1081 ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc ggttgttatc
+     1141 actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat cagctggtca
+     1201 gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa tgaaccctca
+     1261 ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga gcagctatcg
+     1321 aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa aacggaggga
+     1381 gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca ttagagcagc
+     1441 catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt tatggacaac
+     1501 aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat tgatgggtgg
+     1561 cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt gtggtacgat
+     1621 ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg ctgaacatgc
+     1681 cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg ggtacgtaac
+     1741 agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc gatcgaattc
+     1801 cgttttacgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_4/provided_parts_records/Frag_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_2                  1820 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_2.
+ACCESSION   Frag_2
+VERSION     Frag_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 gatcgaattc cgttttacgc cccagatcgc agctcccttg acagtgtcag ttgaatcccc
+       61 attctaggtt tcctgataaa actaagtacg gggacgcatc agtcgaaagc aatcacagat
+      121 aatagatatc ttgagcagaa agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa
+      181 gtgcgggcaa caataggtgt gaggtttcac ggttgcttga tcagtagctg ttcactctct
+      241 cgcaggccta catagtgagg tggtgagatt gttcaggtct gtctcctgcg cggttgtcga
+      301 gccccgtcgg gcacgctaac aaggacagga attcgggtcg tcaaataaca atttacgtca
+      361 tcgcatccct caagggtaag gcgtgatctc catctcggtt cccaattggt cattgtgata
+      421 gccacactgc agttaccgaa ggcgatttta tactaccctg ataagtgctc gcagcccctc
+      481 ctccctaata atgtaacgac gagcattaac ccaggagtat ttctcacgtt gctcgtgccc
+      541 agccaaggcg atcaacgcag accggatagc gttagctagc ccacgggtaa aagcgattgt
+      601 tgtactcttt catatgaata cagcactcgc gaatgcaagc ctacgtcggc tcgattctct
+      661 tcctcaccac actggaggcg atgatctagc ccgtctttca ccccgtacct ttatactcgg
+      721 ccgcgtattt ctccaccggg agctctgcct accaaagcgt cgtacgccca ggaagccgtt
+      781 tcctttatcc tccctcatgt ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt
+      841 ctggccaaca ctggacagac gcgcgagacg ctgataaacc cccattttcg tggggttagt
+      901 aaatcggtgg cttcaaacgg ttcgatcgct cgcacgagca ttagtcagga gtatgattgc
+      961 gcatcatctc tactccgtac taggttctgt agctcaggat ctccgggggg atcaagcttt
+     1021 tatgtcccgc gggattagaa gatatccatc catatgttta ctttgatgcg ggtccgagct
+     1081 ctctatgatg ctgctttgac aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc
+     1141 tctacgacac gttgatgcta aacaagttgg actactaagc aaatgaagcg gaagagatac
+     1201 tgagcgctct ctctatgact ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga
+     1261 aatctcaaat aataatgcaa tgtgttggct aagctcgggc aaactcagga tgtgacctag
+     1321 taccctctgc cccgtgagta cccataccca atcaagccag cccaattcgc gataggtaca
+     1381 gataagcctt actcgtcccg atccttgact aaaacactca tcctcgatag tacgtgcctt
+     1441 gtagagtccg acggccatag gtaaacgacc agttagtgtc gtagggtcct ccactttagc
+     1501 tacgattgca actcccttac cttcgtgccg gcgcgctcct cttgctacca tcacgcttca
+     1561 aatcgggtgg aagaccaact gatgaatgag ggtgcagacc ccagtggagc ataatacgat
+     1621 gcgcccacga tactctagag ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt
+     1681 ggccacatcg gccgcccatc cttgtgtctt ccgataagta ctccctttca aggactctcc
+     1741 gataccggct tagaacacga acggacaacg ctttcagcgc tgagaaatga cggctgcttc
+     1801 aaccagaacg atacagcctt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_4/provided_parts_records/Frag_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_3                  1819 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_3.
+ACCESSION   Frag_3
+VERSION     Frag_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aaccagaacg atacagcctt ctttgctaga tagcctctag tgtcagccac caagtccgcc
+       61 acctaatcct tcgccgaggg tcaaagcttc tgaccatcca attgttaggc actcttggaa
+      121 ccttgcaagt acctgatcat gcagaaaatg gacttgcccg gagcatattc attataagta
+      181 ccattcacgg caggttatag tatgcgttga cgcggggtga tacggtaatg caagtaacca
+      241 tcgggccgcg gtatgcacat agaagggtgt ttgacttggt ttcttacagt gcaactgcat
+      301 atgtggaccg ccattccaag tgaaaggata cgaagggagg tttcggactg ctatccagag
+      361 catggaaagc cttcaaggtg gtgcgcactg gaatagtgac tcggggattg tatgtcgagc
+      421 cgcgtccagt ctttcctata cttatgcgag caaatagacc gagtggaact tgattgcatc
+      481 agccgaatca cgatgaaaac tcagcttaca attcgtaagc acttcaaata tatgcccgga
+      541 aaatcgccgt ccagtgactt gtaatagctc cagggtcagt agcgctgccc tggccgaacc
+      601 aggtgacggt tacgtggacc tcacagtatc aatgttgcag tgcgccacca gattaagctg
+      661 gccgtgtcat ggtgaacaac cgtgataaaa gaacgggagt atgagagtgc cacccaagag
+      721 tggtactcca ggattcggaa aggggagggg gcttttcctg cttaacaacc ttcctcggca
+      781 cggtctaagc gtctcactcg tcctaaactc taccatcatg cagctaggcg aaagtataac
+      841 tttagggtct atcaggatga gctatctgta ccacggtgat gagataagta gggggtgcgc
+      901 tagggtcgtt cgtgttttca tcgtctatag tacctatttc tcgtcttcca ttagcgcata
+      961 cggccatctc gcggcggcta cgtcagccag cgtcaacccc aagtcactaa tttccgttat
+     1021 tataggtgta gctcataact tcttctgccg accaagccaa aagctttgcg gcagctgcaa
+     1081 ggccacgtta ggctctcgga cggcagatat ttattaataa caccactggg ttccagctct
+     1141 taacgcactt cccttcactg gatcacctgt acgcccataa gctaagcctg aagccacggc
+     1201 ctcaatcgtg gacattactc ttagcaaatc cacattacca tgtcaccaat ccccgaaccc
+     1261 cgcgccgacc taaggcgggg tacctcgtgc acggcagcat cgagggaaat atattacaaa
+     1321 agacgcggcg atccaacggt tgataaaaac agttccgtgg aaggcggacg tgtgcttagc
+     1381 gcatgcttct caccgagtga cagcaccgat tccatctcgc tagcacgccg atgagcctcg
+     1441 ctgtgggact atggtccagc ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc
+     1501 ggtaaggtcg atttggtggc actcgcaaga tacgcgggtt attagtagag cgcagtcagg
+     1561 gcccatcgcc agcatttgca tgctcgccgt acgctatcct tgtactacgg ttcctcagtg
+     1621 gctataaagg aatgtcacaa ctccattagc cccttttgtt cagcgcttag tcatggtggg
+     1681 actgactcac cgagactaca tacggattgt gcccgcagag acatgccttt catgctgggg
+     1741 ttttgtaagc agctccacgg ggtagtgtca ccatgccttc gacctatgct tatgaaaccc
+     1801 gaggtaatgc ggcaggatc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_4/provided_parts_records/Frag_4.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+LOCUS       Frag_4                  1218 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_4.
+ACCESSION   Frag_4
+VERSION     Frag_4
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aggtaatgcg gcaggatccc gtggatccta cgcttagcct gtttaagcca tcgttctcct
+       61 cggcccccag ccagcgcgta ttccgcgcat tcctccgagt gcgtatcgcg caaaccacaa
+      121 gatacctctc aacgactagc ggtgaaccac caagcttgac atacgtgccc cttcggaaac
+      181 gttattagtg gtcctgagtg gtacgtcccg agtatacggg gcagcgatag taacgctaca
+      241 aatagctagg cgaggttgcg atacctgaat gaatatccaa cagtggcaac gagacgctta
+      301 gaaagggaaa ctacatacca gttcaatccg ggatgacttc aaaagggtat gtttgttttg
+      361 aagcgaagct ttggttgtca ttcagttcct agagtttacg gcgctgatat ggctctagga
+      421 gtccagtgaa ttcgtcagca taagccccac atcgtaggaa attgcccggt cgtcggtcta
+      481 gcaaatgctc ggtaaactgg gagtgtacta acaccatgtc gtggtaaccc ggtggaccgg
+      541 ctactagaga catatttatt catgctcagt tgaacctgtt tcgagggggc cgagttaaca
+      601 taaagtgatt agtcacagcg cattaagata gaacagggat atagctcgtt gcatccataa
+      661 attgcccacc gtagggagaa cgccgttgga aaatgagagt taggcgatga gcggttgtcg
+      721 cccgcacaga caaaggatgc ctttataaat agtagcggcc ttgtctgcac cagacgtttg
+      781 tgggtcgacg tgctattcta gccaaaagca aaatgtatca tactacaggc aataggccct
+      841 atgctgacca aacttgggga cccttgcgcc ttctctctta cgcataacat gcataggtac
+      901 ctctactcat caggcagggc ggcgtgaggt cactatggct caagatgtgt acgactaaag
+      961 aaaggtttat gctccttccc caaggacgca tttgggactg ctacttgccc ctagcgaatt
+     1021 cactaggatt tttgtagaac catgagcgcc ctatccgata gcacagagac aatgctacaa
+     1081 gcaactgtgc atgcgctcga tcgccgtgca ttaatacgta ttatagcgta tcgtgtacgc
+     1141 taatatctta gtgcaccgca cgctggttgg atacaattcc gtgaaataat tcctgcttac
+     1201 acaggggctt tctggcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_4/warnings.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,2 @@
+assembly_name;message;suggestion;data
+construct_4;Part(s) with single-sided sticky end;parts: Frag_1 & Frag_4
\ No newline at end of file
Binary file test-data/init/gibson_assembly_simulation/construct_5/construct_5_connections_graph.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_5/error.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+assembly_name;message;suggestion;data
+construct_5;Wrong number of constructs;expected_: 1,found: 0
+construct_5;Some parts are unused;unused_parts: Frag_1 & Frag_2 & Frag_3 & Frag_4 & Frag_4b
\ No newline at end of file
Binary file test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_1_01.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_2_01.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_3_01.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_4_01.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_5/fragments_in_construct_5_homology_mix/Frag_4b_01.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_1.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_2.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_3.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_4.pdf has changed
Binary file test-data/init/gibson_assembly_simulation/construct_5/provided_parts_plots/Frag_4b.pdf has changed
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_1                  1810 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_1.
+ACCESSION   Frag_1
+VERSION     Frag_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac ttccgctaag
+       61 ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta agtcgggttg
+      121 tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg tcatacagag
+      181 gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg tacgttctcc
+      241 cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt tatggaccag
+      301 aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg gatatggccg
+      361 cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg ggtgcctgtt
+      421 tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca cgttccagtg
+      481 aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag gtactgtgga
+      541 gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg gtgttgcccg
+      601 tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg caacatgcga
+      661 ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg cgaccgatat
+      721 gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag ccaaatgcac
+      781 agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt tgttacactt
+      841 ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt gtactgcacc
+      901 tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt tgcaaccctc
+      961 tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt tggcgagggc
+     1021 caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca cggtgtatag
+     1081 ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc ggttgttatc
+     1141 actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat cagctggtca
+     1201 gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa tgaaccctca
+     1261 ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga gcagctatcg
+     1321 aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa aacggaggga
+     1381 gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca ttagagcagc
+     1441 catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt tatggacaac
+     1501 aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat tgatgggtgg
+     1561 cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt gtggtacgat
+     1621 ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg ctgaacatgc
+     1681 cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg ggtacgtaac
+     1741 agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc gatcgaattc
+     1801 cgttttacgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_2                  1820 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_2.
+ACCESSION   Frag_2
+VERSION     Frag_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 gatcgaattc cgttttacgc cccagatcgc agctcccttg acagtgtcag ttgaatcccc
+       61 attctaggtt tcctgataaa actaagtacg gggacgcatc agtcgaaagc aatcacagat
+      121 aatagatatc ttgagcagaa agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa
+      181 gtgcgggcaa caataggtgt gaggtttcac ggttgcttga tcagtagctg ttcactctct
+      241 cgcaggccta catagtgagg tggtgagatt gttcaggtct gtctcctgcg cggttgtcga
+      301 gccccgtcgg gcacgctaac aaggacagga attcgggtcg tcaaataaca atttacgtca
+      361 tcgcatccct caagggtaag gcgtgatctc catctcggtt cccaattggt cattgtgata
+      421 gccacactgc agttaccgaa ggcgatttta tactaccctg ataagtgctc gcagcccctc
+      481 ctccctaata atgtaacgac gagcattaac ccaggagtat ttctcacgtt gctcgtgccc
+      541 agccaaggcg atcaacgcag accggatagc gttagctagc ccacgggtaa aagcgattgt
+      601 tgtactcttt catatgaata cagcactcgc gaatgcaagc ctacgtcggc tcgattctct
+      661 tcctcaccac actggaggcg atgatctagc ccgtctttca ccccgtacct ttatactcgg
+      721 ccgcgtattt ctccaccggg agctctgcct accaaagcgt cgtacgccca ggaagccgtt
+      781 tcctttatcc tccctcatgt ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt
+      841 ctggccaaca ctggacagac gcgcgagacg ctgataaacc cccattttcg tggggttagt
+      901 aaatcggtgg cttcaaacgg ttcgatcgct cgcacgagca ttagtcagga gtatgattgc
+      961 gcatcatctc tactccgtac taggttctgt agctcaggat ctccgggggg atcaagcttt
+     1021 tatgtcccgc gggattagaa gatatccatc catatgttta ctttgatgcg ggtccgagct
+     1081 ctctatgatg ctgctttgac aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc
+     1141 tctacgacac gttgatgcta aacaagttgg actactaagc aaatgaagcg gaagagatac
+     1201 tgagcgctct ctctatgact ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga
+     1261 aatctcaaat aataatgcaa tgtgttggct aagctcgggc aaactcagga tgtgacctag
+     1321 taccctctgc cccgtgagta cccataccca atcaagccag cccaattcgc gataggtaca
+     1381 gataagcctt actcgtcccg atccttgact aaaacactca tcctcgatag tacgtgcctt
+     1441 gtagagtccg acggccatag gtaaacgacc agttagtgtc gtagggtcct ccactttagc
+     1501 tacgattgca actcccttac cttcgtgccg gcgcgctcct cttgctacca tcacgcttca
+     1561 aatcgggtgg aagaccaact gatgaatgag ggtgcagacc ccagtggagc ataatacgat
+     1621 gcgcccacga tactctagag ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt
+     1681 ggccacatcg gccgcccatc cttgtgtctt ccgataagta ctccctttca aggactctcc
+     1741 gataccggct tagaacacga acggacaacg ctttcagcgc tgagaaatga cggctgcttc
+     1801 aaccagaacg atacagcctt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_3                  1819 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_3.
+ACCESSION   Frag_3
+VERSION     Frag_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aaccagaacg atacagcctt ctttgctaga tagcctctag tgtcagccac caagtccgcc
+       61 acctaatcct tcgccgaggg tcaaagcttc tgaccatcca attgttaggc actcttggaa
+      121 ccttgcaagt acctgatcat gcagaaaatg gacttgcccg gagcatattc attataagta
+      181 ccattcacgg caggttatag tatgcgttga cgcggggtga tacggtaatg caagtaacca
+      241 tcgggccgcg gtatgcacat agaagggtgt ttgacttggt ttcttacagt gcaactgcat
+      301 atgtggaccg ccattccaag tgaaaggata cgaagggagg tttcggactg ctatccagag
+      361 catggaaagc cttcaaggtg gtgcgcactg gaatagtgac tcggggattg tatgtcgagc
+      421 cgcgtccagt ctttcctata cttatgcgag caaatagacc gagtggaact tgattgcatc
+      481 agccgaatca cgatgaaaac tcagcttaca attcgtaagc acttcaaata tatgcccgga
+      541 aaatcgccgt ccagtgactt gtaatagctc cagggtcagt agcgctgccc tggccgaacc
+      601 aggtgacggt tacgtggacc tcacagtatc aatgttgcag tgcgccacca gattaagctg
+      661 gccgtgtcat ggtgaacaac cgtgataaaa gaacgggagt atgagagtgc cacccaagag
+      721 tggtactcca ggattcggaa aggggagggg gcttttcctg cttaacaacc ttcctcggca
+      781 cggtctaagc gtctcactcg tcctaaactc taccatcatg cagctaggcg aaagtataac
+      841 tttagggtct atcaggatga gctatctgta ccacggtgat gagataagta gggggtgcgc
+      901 tagggtcgtt cgtgttttca tcgtctatag tacctatttc tcgtcttcca ttagcgcata
+      961 cggccatctc gcggcggcta cgtcagccag cgtcaacccc aagtcactaa tttccgttat
+     1021 tataggtgta gctcataact tcttctgccg accaagccaa aagctttgcg gcagctgcaa
+     1081 ggccacgtta ggctctcgga cggcagatat ttattaataa caccactggg ttccagctct
+     1141 taacgcactt cccttcactg gatcacctgt acgcccataa gctaagcctg aagccacggc
+     1201 ctcaatcgtg gacattactc ttagcaaatc cacattacca tgtcaccaat ccccgaaccc
+     1261 cgcgccgacc taaggcgggg tacctcgtgc acggcagcat cgagggaaat atattacaaa
+     1321 agacgcggcg atccaacggt tgataaaaac agttccgtgg aaggcggacg tgtgcttagc
+     1381 gcatgcttct caccgagtga cagcaccgat tccatctcgc tagcacgccg atgagcctcg
+     1441 ctgtgggact atggtccagc ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc
+     1501 ggtaaggtcg atttggtggc actcgcaaga tacgcgggtt attagtagag cgcagtcagg
+     1561 gcccatcgcc agcatttgca tgctcgccgt acgctatcct tgtactacgg ttcctcagtg
+     1621 gctataaagg aatgtcacaa ctccattagc cccttttgtt cagcgcttag tcatggtggg
+     1681 actgactcac cgagactaca tacggattgt gcccgcagag acatgccttt catgctgggg
+     1741 ttttgtaagc agctccacgg ggtagtgtca ccatgccttc gacctatgct tatgaaaccc
+     1801 gaggtaatgc ggcaggatc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_4.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+LOCUS       Frag_4                  1218 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_4.
+ACCESSION   Frag_4
+VERSION     Frag_4
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aggtaatgcg gcaggatccc gtggatccta cgcttagcct gtttaagcca tcgttctcct
+       61 cggcccccag ccagcgcgta ttccgcgcat tcctccgagt gcgtatcgcg caaaccacaa
+      121 gatacctctc aacgactagc ggtgaaccac caagcttgac atacgtgccc cttcggaaac
+      181 gttattagtg gtcctgagtg gtacgtcccg agtatacggg gcagcgatag taacgctaca
+      241 aatagctagg cgaggttgcg atacctgaat gaatatccaa cagtggcaac gagacgctta
+      301 gaaagggaaa ctacatacca gttcaatccg ggatgacttc aaaagggtat gtttgttttg
+      361 aagcgaagct ttggttgtca ttcagttcct agagtttacg gcgctgatat ggctctagga
+      421 gtccagtgaa ttcgtcagca taagccccac atcgtaggaa attgcccggt cgtcggtcta
+      481 gcaaatgctc ggtaaactgg gagtgtacta acaccatgtc gtggtaaccc ggtggaccgg
+      541 ctactagaga catatttatt catgctcagt tgaacctgtt tcgagggggc cgagttaaca
+      601 taaagtgatt agtcacagcg cattaagata gaacagggat atagctcgtt gcatccataa
+      661 attgcccacc gtagggagaa cgccgttgga aaatgagagt taggcgatga gcggttgtcg
+      721 cccgcacaga caaaggatgc ctttataaat agtagcggcc ttgtctgcac cagacgtttg
+      781 tgggtcgacg tgctattcta gccaaaagca aaatgtatca tactacaggc aataggccct
+      841 atgctgacca aacttgggga cccttgcgcc ttctctctta cgcataacat gcataggtac
+      901 ctctactcat caggcagggc ggcgtgaggt cactatggct caagatgtgt acgactaaag
+      961 aaaggtttat gctccttccc caaggacgca tttgggactg ctacttgccc ctagcgaatt
+     1021 cactaggatt tttgtagaac catgagcgcc ctatccgata gcacagagac aatgctacaa
+     1081 gcaactgtgc atgcgctcga tcgccgtgca ttaatacgta ttatagcgta tcgtgtacgc
+     1141 taatatctta gtgcaccgca cgctggttgg atacaattcc gtgaaataat tcctgcttac
+     1201 acaggggctt tctggcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_5/provided_parts_records/Frag_4b.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+LOCUS       Frag_4b                 1218 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_4b.
+ACCESSION   Frag_4b
+VERSION     Frag_4b
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aggtaatgcg gcaggatccc gtggatccta cgcttagcct gttacccccc ccgttctcct
+       61 cggcccccag ccagcgcgta ttccgcgcat tcctccgagt gcgtatcgcg caaaccacaa
+      121 gatacctctc aacgactagc ggtgaaccac caagcttgac atacgtgccc cttcggaaac
+      181 gttattagtg gtcctgagtg gtacgtcccg agtatacggg gcagcgatag taacgctaca
+      241 aatagctaga ccgacgacaa acacagcact gaatatccaa cagtggcaac gagacgctta
+      301 gaaagggaaa ctacatacca gttcaatccg ggatgacttc aaaagggtat gtttgttttg
+      361 aagcgaagct ttggttgtca ttcagttcct agagtttacg gcgctgatat ggctctagga
+      421 gtccagtgaa ttcgtcagca taagccccac atcgtaggaa attgcccggt cgtcggtcta
+      481 gcaaatgctc ggtaaactgg gagtgtacta acaccatgtc gtggtaaccc ggtggaccgg
+      541 ctactagaga catatttatt catgctcagt tgaacctgtt tcgagggggc cgagttaaca
+      601 taaagtgatt agtcacagcg cattaagata gaacagggat atagctcgtt gcatccataa
+      661 attgcccacc gtagggagaa cgccgttgga aaatgagagt taggcgatga gcggttgtcg
+      721 cccgcacaga caaaggatgc ctttataaat agtagcggcc ttgtctgcac cagacgtttg
+      781 tgggtcgacg tgctattcta gccaaaagca aaatgtatca tactacaggc aataggccct
+      841 atgctgacca aacttgggga cccttgcgcc ttctctctta cgcataacat gcataggtac
+      901 ctctactcat caggcagggc ggcgtgaggt cactatggct caagatgtgt acgactaaag
+      961 aaaggtttat gctccttccc caaggacgca tttgggactg ctacttgccc ctagcgaatt
+     1021 cactaggatt tttgtagaac catgagcgcc ctatccgata gcacagagac aatgctacaa
+     1081 gcaactgtgc atgcgctcga tcgccgtgca ttaatacgta ttatagcgta tcgtgtacgc
+     1141 taatatctta gtgcaccgca cgctggttgg atacaattcc gtgaaataat tcctgcttac
+     1201 acaggggctt tctggcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/construct_5/warnings.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+assembly_name;message;suggestion;data
+construct_5;Part(s) with single-sided sticky end;parts: Frag_1 & Frag_4 & Frag_4b
+construct_5;Warning: parts at graph forking positions;parts: Frag_3
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/gibson_assembly_all_required_parts.txt	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,8 @@
+Frag_1
+Frag_2
+Frag_3
+Frag_4
+Frag_4b
+Frag_4c
+Frag_5
+Frag_5b
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/gibson_assembly_assembly_plan.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,4 @@
+construct,parts
+construct_1,Frag_2,Frag_3,Frag_4,Frag_5,Frag_1
+construct_2,Frag_2,Frag_3,Frag_4b,Frag_5,Frag_1
+construct_3,Frag_2,Frag_3,Frag_4c,Frag_5b,Frag_1
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/gibson_assembly_errors.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,5 @@
+assembly_name;message;suggestion;data;used_in
+construct_4;Wrong number of constructs;expected_: 1,found: 0;
+construct_4;Some parts are unused;unused_parts: Frag_1 & Frag_2 & Frag_3 & Frag_4;
+construct_5;Wrong number of constructs;expected_: 1,found: 0;
+construct_5;Some parts are unused;unused_parts: Frag_1 & Frag_2 & Frag_3 & Frag_4 & Frag_4b;
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/gibson_assembly_simulation_stats.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,3 @@
+cancelled_assemblies: 0
+errored_assemblies: 2
+valid_assemblies: 3
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/gibson_assembly_summary.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,4 @@
+assembly_name,construct_id,assembly_level,construct_size,number_of_parts,depends_on,homology_condition,used_in,parts
+construct_1,construct_1,1,8000,5,,"15-80bp, 0.0-+C Tm",,Frag_2 & Frag_3 & Frag_4 & Frag_5 & Frag_1
+construct_2,construct_2,1,8000,5,,"15-80bp, 0.0-+C Tm",,Frag_2 & Frag_3 & Frag_4b & Frag_5 & Frag_1
+construct_3,construct_3,1,8000,5,,"15-80bp, 0.0-+C Tm",,Frag_2 & Frag_3 & Frag_4c & Frag_5b & Frag_1
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/gibson_assembly_warnings.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,4 @@
+assembly_name;message;suggestion;data;used_in
+construct_4;Part(s) with single-sided sticky end;parts: Frag_1 & Frag_4;
+construct_5;Part(s) with single-sided sticky end;parts: Frag_1 & Frag_4 & Frag_4b;
+construct_5;Warning: parts at graph forking positions;parts: Frag_3;
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/part_records/Frag_1.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_1                  1810 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_1.
+ACCESSION   Frag_1
+VERSION     Frag_1
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 ctccacctgc gtctatcgta cagtgctaaa atggcagcag atagtgaaac ttccgctaag
+       61 ctagcccctc agggtacact gcaccgaggc gtgctgtcaa tacttgatta agtcgggttg
+      121 tcggggacct gccgtcacgc ttccgagtgt atatccggat ttagttgacg tcatacagag
+      181 gcactaagaa gaataaacgc ttacctccag caatcgtgta gtgtcaggtg tacgttctcc
+      241 cttgcgccgt tcggcaagcg tccggtgtcg ggctgcaagg aataaatctt tatggaccag
+      301 aggggcttgt ttcctcatat gggtgcgtgc acttatacga ttcaaaggtg gatatggccg
+      361 cataacacgt agccaggcta tagtcccgcg gcctaattcc ttcgagtgcg ggtgcctgtt
+      421 tttgtttttc ctttacgaca cgaaccgctc taacctgctc tatttcgcca cgttccagtg
+      481 aacctcttag cctaccgccc acgtacggtg ggacgcgtcg agcagttaag gtactgtgga
+      541 gaaatcgttc aatattagaa aacaggcggt gtacgaatta ctgtgtcccg gtgttgcccg
+      601 tttaacggct gccgtggtca taccgtgagg caccacgagg ggatgctacg caacatgcga
+      661 ggtgtaatca gcagggaaga tcccggggat cgaaagcggt ccgcgatttg cgaccgatat
+      721 gcataaggtg tcatttatat tacacctacg acactggtac cggctcacag ccaaatgcac
+      781 agtctcaaga tagaattcgc aaaaattagg cttatcgggc gcttactctt tgttacactt
+      841 ctggtctgtg agtgacgccc tgtgtcccat cactgcatgt gaggatgcgt gtactgcacc
+      901 tgtgaattac agacgtttcc ctaccagggc gctacgttat aatgttcggt tgcaaccctc
+      961 tatagggtga tctcgacata ccactatggt ttgcgcgtct cgggtgcttt tggcgagggc
+     1021 caggtacggc ggtgagacag cgtattttgc gaatagggta ttcggacgca cggtgtatag
+     1081 ctcttggaaa acgactcttc gacgggcgtg tagaagtagc caagcagttc ggttgttatc
+     1141 actaaatgcg gaccatgtgc agccgtttag gagaggagtc tgcaatggat cagctggtca
+     1201 gattgtacca ctcggttgag cctaaggcac ttcaggtgct cggattgtaa tgaaccctca
+     1261 ggttacgccg ttgcgctgag atcccacaag ccataagcaa tgagaatcga gcagctatcg
+     1321 aattacgcag cacttgctga tgaactgggt gcacctaaag cgcccgataa aacggaggga
+     1381 gtgaggtaac tactacattg cgagtagtgc gaggggcctc cgagactaca ttagagcagc
+     1441 catgccgaat acgacaaaat ctatagcctt gcgaacgtag gggactgatt tatggacaac
+     1501 aggaccgaaa caagttggag ccacaacgga gctatggacg ttttcactat tgatgggtgg
+     1561 cttgcgtccg catcccaggt ttctctggtt aattttcatg acgattcttt gtggtacgat
+     1621 ccaggcataa gatagggcac ctaacccgat actgtgaact tatatgacgg ctgaacatgc
+     1681 cctaatagtc tgccaaaagg gaaacctata acggctctaa acgggccccg ggtacgtaac
+     1741 agcaatgttc ctgtccacca aggcgttttt agtaaccgcc gatcgatctc gatcgaattc
+     1801 cgttttacgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/part_records/Frag_2.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_2                  1820 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_2.
+ACCESSION   Frag_2
+VERSION     Frag_2
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 gatcgaattc cgttttacgc cccagatcgc agctcccttg acagtgtcag ttgaatcccc
+       61 attctaggtt tcctgataaa actaagtacg gggacgcatc agtcgaaagc aatcacagat
+      121 aatagatatc ttgagcagaa agacgtcttc acgaatcagg agcgagtgtc ccctttgaaa
+      181 gtgcgggcaa caataggtgt gaggtttcac ggttgcttga tcagtagctg ttcactctct
+      241 cgcaggccta catagtgagg tggtgagatt gttcaggtct gtctcctgcg cggttgtcga
+      301 gccccgtcgg gcacgctaac aaggacagga attcgggtcg tcaaataaca atttacgtca
+      361 tcgcatccct caagggtaag gcgtgatctc catctcggtt cccaattggt cattgtgata
+      421 gccacactgc agttaccgaa ggcgatttta tactaccctg ataagtgctc gcagcccctc
+      481 ctccctaata atgtaacgac gagcattaac ccaggagtat ttctcacgtt gctcgtgccc
+      541 agccaaggcg atcaacgcag accggatagc gttagctagc ccacgggtaa aagcgattgt
+      601 tgtactcttt catatgaata cagcactcgc gaatgcaagc ctacgtcggc tcgattctct
+      661 tcctcaccac actggaggcg atgatctagc ccgtctttca ccccgtacct ttatactcgg
+      721 ccgcgtattt ctccaccggg agctctgcct accaaagcgt cgtacgccca ggaagccgtt
+      781 tcctttatcc tccctcatgt ctcaacgcgc gagcatcgga gagtacgcga aatcgactgt
+      841 ctggccaaca ctggacagac gcgcgagacg ctgataaacc cccattttcg tggggttagt
+      901 aaatcggtgg cttcaaacgg ttcgatcgct cgcacgagca ttagtcagga gtatgattgc
+      961 gcatcatctc tactccgtac taggttctgt agctcaggat ctccgggggg atcaagcttt
+     1021 tatgtcccgc gggattagaa gatatccatc catatgttta ctttgatgcg ggtccgagct
+     1081 ctctatgatg ctgctttgac aaaatgtgga aagcctcagc gaccgctctg gggtcaaagc
+     1141 tctacgacac gttgatgcta aacaagttgg actactaagc aaatgaagcg gaagagatac
+     1201 tgagcgctct ctctatgact ttcgctatat ggcgacgtgc gaaaaacgcg atttggccga
+     1261 aatctcaaat aataatgcaa tgtgttggct aagctcgggc aaactcagga tgtgacctag
+     1321 taccctctgc cccgtgagta cccataccca atcaagccag cccaattcgc gataggtaca
+     1381 gataagcctt actcgtcccg atccttgact aaaacactca tcctcgatag tacgtgcctt
+     1441 gtagagtccg acggccatag gtaaacgacc agttagtgtc gtagggtcct ccactttagc
+     1501 tacgattgca actcccttac cttcgtgccg gcgcgctcct cttgctacca tcacgcttca
+     1561 aatcgggtgg aagaccaact gatgaatgag ggtgcagacc ccagtggagc ataatacgat
+     1621 gcgcccacga tactctagag ccacgcgtcg acgttcgtaa gatgtcccgg gcccgtgggt
+     1681 ggccacatcg gccgcccatc cttgtgtctt ccgataagta ctccctttca aggactctcc
+     1741 gataccggct tagaacacga acggacaacg ctttcagcgc tgagaaatga cggctgcttc
+     1801 aaccagaacg atacagcctt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/part_records/Frag_3.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,42 @@
+LOCUS       Frag_3                  1819 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_3.
+ACCESSION   Frag_3
+VERSION     Frag_3
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aaccagaacg atacagcctt ctttgctaga tagcctctag tgtcagccac caagtccgcc
+       61 acctaatcct tcgccgaggg tcaaagcttc tgaccatcca attgttaggc actcttggaa
+      121 ccttgcaagt acctgatcat gcagaaaatg gacttgcccg gagcatattc attataagta
+      181 ccattcacgg caggttatag tatgcgttga cgcggggtga tacggtaatg caagtaacca
+      241 tcgggccgcg gtatgcacat agaagggtgt ttgacttggt ttcttacagt gcaactgcat
+      301 atgtggaccg ccattccaag tgaaaggata cgaagggagg tttcggactg ctatccagag
+      361 catggaaagc cttcaaggtg gtgcgcactg gaatagtgac tcggggattg tatgtcgagc
+      421 cgcgtccagt ctttcctata cttatgcgag caaatagacc gagtggaact tgattgcatc
+      481 agccgaatca cgatgaaaac tcagcttaca attcgtaagc acttcaaata tatgcccgga
+      541 aaatcgccgt ccagtgactt gtaatagctc cagggtcagt agcgctgccc tggccgaacc
+      601 aggtgacggt tacgtggacc tcacagtatc aatgttgcag tgcgccacca gattaagctg
+      661 gccgtgtcat ggtgaacaac cgtgataaaa gaacgggagt atgagagtgc cacccaagag
+      721 tggtactcca ggattcggaa aggggagggg gcttttcctg cttaacaacc ttcctcggca
+      781 cggtctaagc gtctcactcg tcctaaactc taccatcatg cagctaggcg aaagtataac
+      841 tttagggtct atcaggatga gctatctgta ccacggtgat gagataagta gggggtgcgc
+      901 tagggtcgtt cgtgttttca tcgtctatag tacctatttc tcgtcttcca ttagcgcata
+      961 cggccatctc gcggcggcta cgtcagccag cgtcaacccc aagtcactaa tttccgttat
+     1021 tataggtgta gctcataact tcttctgccg accaagccaa aagctttgcg gcagctgcaa
+     1081 ggccacgtta ggctctcgga cggcagatat ttattaataa caccactggg ttccagctct
+     1141 taacgcactt cccttcactg gatcacctgt acgcccataa gctaagcctg aagccacggc
+     1201 ctcaatcgtg gacattactc ttagcaaatc cacattacca tgtcaccaat ccccgaaccc
+     1261 cgcgccgacc taaggcgggg tacctcgtgc acggcagcat cgagggaaat atattacaaa
+     1321 agacgcggcg atccaacggt tgataaaaac agttccgtgg aaggcggacg tgtgcttagc
+     1381 gcatgcttct caccgagtga cagcaccgat tccatctcgc tagcacgccg atgagcctcg
+     1441 ctgtgggact atggtccagc ctatgcttaa ctaggcagaa cagagagtat ggtggtcctc
+     1501 ggtaaggtcg atttggtggc actcgcaaga tacgcgggtt attagtagag cgcagtcagg
+     1561 gcccatcgcc agcatttgca tgctcgccgt acgctatcct tgtactacgg ttcctcagtg
+     1621 gctataaagg aatgtcacaa ctccattagc cccttttgtt cagcgcttag tcatggtggg
+     1681 actgactcac cgagactaca tacggattgt gcccgcagag acatgccttt catgctgggg
+     1741 ttttgtaagc agctccacgg ggtagtgtca ccatgccttc gacctatgct tatgaaaccc
+     1801 gaggtaatgc ggcaggatc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/part_records/Frag_4.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+LOCUS       Frag_4                  1218 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_4.
+ACCESSION   Frag_4
+VERSION     Frag_4
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aggtaatgcg gcaggatccc gtggatccta cgcttagcct gtttaagcca tcgttctcct
+       61 cggcccccag ccagcgcgta ttccgcgcat tcctccgagt gcgtatcgcg caaaccacaa
+      121 gatacctctc aacgactagc ggtgaaccac caagcttgac atacgtgccc cttcggaaac
+      181 gttattagtg gtcctgagtg gtacgtcccg agtatacggg gcagcgatag taacgctaca
+      241 aatagctagg cgaggttgcg atacctgaat gaatatccaa cagtggcaac gagacgctta
+      301 gaaagggaaa ctacatacca gttcaatccg ggatgacttc aaaagggtat gtttgttttg
+      361 aagcgaagct ttggttgtca ttcagttcct agagtttacg gcgctgatat ggctctagga
+      421 gtccagtgaa ttcgtcagca taagccccac atcgtaggaa attgcccggt cgtcggtcta
+      481 gcaaatgctc ggtaaactgg gagtgtacta acaccatgtc gtggtaaccc ggtggaccgg
+      541 ctactagaga catatttatt catgctcagt tgaacctgtt tcgagggggc cgagttaaca
+      601 taaagtgatt agtcacagcg cattaagata gaacagggat atagctcgtt gcatccataa
+      661 attgcccacc gtagggagaa cgccgttgga aaatgagagt taggcgatga gcggttgtcg
+      721 cccgcacaga caaaggatgc ctttataaat agtagcggcc ttgtctgcac cagacgtttg
+      781 tgggtcgacg tgctattcta gccaaaagca aaatgtatca tactacaggc aataggccct
+      841 atgctgacca aacttgggga cccttgcgcc ttctctctta cgcataacat gcataggtac
+      901 ctctactcat caggcagggc ggcgtgaggt cactatggct caagatgtgt acgactaaag
+      961 aaaggtttat gctccttccc caaggacgca tttgggactg ctacttgccc ctagcgaatt
+     1021 cactaggatt tttgtagaac catgagcgcc ctatccgata gcacagagac aatgctacaa
+     1081 gcaactgtgc atgcgctcga tcgccgtgca ttaatacgta ttatagcgta tcgtgtacgc
+     1141 taatatctta gtgcaccgca cgctggttgg atacaattcc gtgaaataat tcctgcttac
+     1201 acaggggctt tctggcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/part_records/Frag_4b.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+LOCUS       Frag_4b                 1218 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_4b.
+ACCESSION   Frag_4b
+VERSION     Frag_4b
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aggtaatgcg gcaggatccc gtggatccta cgcttagcct gttacccccc ccgttctcct
+       61 cggcccccag ccagcgcgta ttccgcgcat tcctccgagt gcgtatcgcg caaaccacaa
+      121 gatacctctc aacgactagc ggtgaaccac caagcttgac atacgtgccc cttcggaaac
+      181 gttattagtg gtcctgagtg gtacgtcccg agtatacggg gcagcgatag taacgctaca
+      241 aatagctaga ccgacgacaa acacagcact gaatatccaa cagtggcaac gagacgctta
+      301 gaaagggaaa ctacatacca gttcaatccg ggatgacttc aaaagggtat gtttgttttg
+      361 aagcgaagct ttggttgtca ttcagttcct agagtttacg gcgctgatat ggctctagga
+      421 gtccagtgaa ttcgtcagca taagccccac atcgtaggaa attgcccggt cgtcggtcta
+      481 gcaaatgctc ggtaaactgg gagtgtacta acaccatgtc gtggtaaccc ggtggaccgg
+      541 ctactagaga catatttatt catgctcagt tgaacctgtt tcgagggggc cgagttaaca
+      601 taaagtgatt agtcacagcg cattaagata gaacagggat atagctcgtt gcatccataa
+      661 attgcccacc gtagggagaa cgccgttgga aaatgagagt taggcgatga gcggttgtcg
+      721 cccgcacaga caaaggatgc ctttataaat agtagcggcc ttgtctgcac cagacgtttg
+      781 tgggtcgacg tgctattcta gccaaaagca aaatgtatca tactacaggc aataggccct
+      841 atgctgacca aacttgggga cccttgcgcc ttctctctta cgcataacat gcataggtac
+      901 ctctactcat caggcagggc ggcgtgaggt cactatggct caagatgtgt acgactaaag
+      961 aaaggtttat gctccttccc caaggacgca tttgggactg ctacttgccc ctagcgaatt
+     1021 cactaggatt tttgtagaac catgagcgcc ctatccgata gcacagagac aatgctacaa
+     1081 gcaactgtgc atgcgctcga tcgccgtgca ttaatacgta ttatagcgta tcgtgtacgc
+     1141 taatatctta gtgcaccgca cgctggttgg atacaattcc gtgaaataat tcctgcttac
+     1201 acaggggctt tctggcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/part_records/Frag_4c.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,32 @@
+LOCUS       Frag_4c                 1218 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_4c.
+ACCESSION   Frag_4c
+VERSION     Frag_4c
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 aggtaatgcg gcaggatccc gtggatccta cgcttagcct gttagggggg gggttctcct
+       61 cggcccccag ccagcgcgta ttccgcgcat tcctccgagt gcgtatcgcg caaaccacaa
+      121 gatacctctc aacgactagc ggtgaaccac caagcttgac atacgtgccc cttcggaaac
+      181 gttattagtg gtcctgagtg gtacgtcccg agtatacggg gcagcgatag taacgctaca
+      241 aatagctaga ccgacgacaa acacagcact gaatatccaa cagtggcaac gagacgctta
+      301 gaaagggaaa ctacatacca gttcaatccg ggatgacttc aaaagggtat gtttgttttg
+      361 aagcgaagct ttggttgtca ttcagttcct agagtttacg gcgctgatat ggctctagga
+      421 gtccagtgaa ttcgtcagca taagccccac atcgtaggaa attgcccggt cgtcggtcta
+      481 gcaaatgctc ggtaaactgg gagtgtacta acaccatgtc gtggtaaccc ggtggaccgg
+      541 ctactagaga catatttatt catgctcagt tgaacctgtt tcgagggggc cgagttaaca
+      601 taaagtgatt agtcacagcg cattaagata gaacagggat atagctcgtt gcatccataa
+      661 attgcccacc gtagggagaa cgccgttgga aaatgagagt taggcgatga gcggttgtcg
+      721 cccgcacaga caaaggatgc ctttataaat agtagcggcc ttgtctgcac cagacgtttg
+      781 tgggtcgacg tgctattcta gccaaaagca aaatgtatca tactacaggc aataggccct
+      841 atgctgacca aacttgggga cccttgcgcc ttctctctta cgcataacat gcataggtac
+      901 ctctactcat caggcagggc ggcgtgaggt cactatggct caagatgtgt acgactaaag
+      961 aaaggtttat gctccttccc caaggacgca tttgggactg ctacttgccc ctagcgaatt
+     1021 cactaggatt tttgtagaac catgagcgcc ctatccgata gcacagagac aatgctacaa
+     1081 gcaactgtgc atgcgctcga tcgccgtgca ttaatacgta ttatagcgta tcgtgtacgc
+     1141 taatatctta gtgcaccgca cgctggttgg atacaattcc gtgaaataat tcctgcttac
+     1201 acaggggctt tctggcgc
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/part_records/Frag_5.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,35 @@
+LOCUS       Frag_5                  1428 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_5.
+ACCESSION   Frag_5
+VERSION     Frag_5
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 acaggggctt tctggcgcat ggctgtgtct ggatgtttgt gataagaggc tccatgaacc
+       61 cggcgggaaa tgaggggaaa ccccggggag caacgacact aagcctggca gttgttcaga
+      121 taggacgctt ttgtcagtgg gcggttttgc atccactaac tatcataaac gacacaacgt
+      181 cgaatgatca tcggcggttt gcatgtagag acagctcctg caacaccata ccggctcgtg
+      241 gaattacgct gtgcgccggc cctcattcga ttgtgtccag cgtcggcgcg aatgatgatt
+      301 gagatgtgct tcggctcaga gcgtgcacag gtagttctcc ccccttacct agctgatcca
+      361 gcaattccac gctggcccgc gcgtccttgg gtaacactgg atctgtaccc aaatacaccg
+      421 tcgtgattgt taactaccgt atggcggtta cgatcgagtg acactattat tagaccgcta
+      481 ctccaagtcc caacttttca tcgccataca gaagagaacg agaaagtcga agagttatag
+      541 cgtgtacact tctgattagc taacgaatcg atgcgtacag catactcgag caactttatg
+      601 ggtcgtctgt ctccttgtac cccgcttgac gaggatgtgt ttgtaggcgg cttggatatc
+      661 ggcagtgtat ccgcatggtc aaacacttta gcccgaccgg tgctcaaggt cgaaatccta
+      721 atatagattg ggataggacc cgtccattac taggcgacat tcgcagtcac gagcccgcac
+      781 ggggtgcctc aacacggtga cactcaattc gccggcactg agtacgacga tcgtgattgc
+      841 cataccgtca tgttttgtgt tacccctgat aagaagcgca gatatggcac gggggcagag
+      901 ggcggagtag acccatgcaa aactctagcc tctgggcagc atgatcgacg tagaacgccg
+      961 ttgtgactca ctagtttcag ttatgatgtt cagccaagaa tcctccattt tgacgtgaac
+     1021 cttctccctt tacaccttga agctgcaata ttaagtcgac cctttaagtt gccttgtctt
+     1081 ggtctagagc ccgcagctca ccgataaaat gagcagtcaa ttttagcggc ggttgtccag
+     1141 gttacatgca ctttgggctg gaaccgcgtt acgtttggag tacttagaag tgtcgtaggc
+     1201 ataggagagc cgaaacttga tattgggtct agttagtgct ctaccccgct tcggatccgt
+     1261 aatagtgatg ttgcatgaga cgcttgcctc aaggcgacat acggtggcgg ttgctggaaa
+     1321 tgacgcccca ccccgtgata atttggggac gagccgcacg ataacttctg ccagcgaccg
+     1381 cccctcccac gtccgatggt gattccgaac tccacctgcg tctatcgt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/init/gibson_assembly_simulation/part_records/Frag_5b.gb	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,35 @@
+LOCUS       Frag_5b                 1428 bp    DNA     circular UNK 01-JAN-1980
+DEFINITION  Frag_5b.
+ACCESSION   Frag_5b
+VERSION     Frag_5b
+KEYWORDS    .
+SOURCE      .
+  ORGANISM  .
+            .
+FEATURES             Location/Qualifiers
+ORIGIN
+        1 acaggggctt tctggcgcat ggctgtgtct ggaaaaaaaa aaaaaaaaaa aacatgaacc
+       61 cggcgggaaa tgaggggaaa ccccggggag caacgacact aagcctggca gttgttcaga
+      121 taggacgctt ttgtcagtgg gcggttttgc atccactaac tatcataaac gacacaacgt
+      181 cgaatgatca tcggcggttt gcatgtagag acagctcctg caacaccata ccggctcgtg
+      241 gaattacgct gtgcgccggc cctcattcga ttgtgtccag cgtcggcgcg aatgatgatt
+      301 gagatgtgct tcggctcaga gcgtgcacag gtagttctcc ccccttacct agctgatcca
+      361 gcaattccac gctggcccgc gcgtccttgg gtaacactgg atctgtaccc aaatacaccg
+      421 tcgtgattgt taactaccgt atggcggtta cgatcgagtg acactattat tagaccgcta
+      481 ctccaagtcc caacttttca tcgccataca gaagagaacg agaaagtcga agagttatag
+      541 cgtgtacact tctgattagc taacgaatcg atgcgtacag catactcgag caactttatg
+      601 ggtcgtctgt ctccttgtac cccgcttgac gaggatgtgt ttgtaggcgg cttggatatc
+      661 ggcagtgtat ccgcatggtc aaacacttta gcccgaccgg tgctcaaggt cgaaatccta
+      721 atatagattg ggataggacc cgtccattac taggcgacat tcgcagtcac gagcccgcac
+      781 ggggtgcctc aacacggtga cactcaattc gccggcactg agtacgacga tcgtgattgc
+      841 cataccgtca tgttttgtgt tacccctgat aagaagcgca gatatggcac gggggcagag
+      901 ggcggagtag acccatgcaa aactctagcc tctgggcagc atgatcgacg tagaacgccg
+      961 ttgtgactca ctagtttcag ttatgatgtt cagccaagaa tcctccattt tgacgtgaac
+     1021 cttctccctt tacaccttga agctgcaata ttaagtcgac cctttaagtt gccttgtctt
+     1081 ggtctagagc ccgcagctca ccgataaaat gagcagtcaa ttttagcggc ggttgtccag
+     1141 gttacatgca ctttgggctg gaaccgcgtt acgtttggag tacttagaag tgtcgtaggc
+     1201 ataggagagc cgaaacttga tattgggtct agttagtgct ctaccccgct tcggatccgt
+     1261 aatagtgatg ttgcatgaga cgcttgcctc aaggcgacat acggtggcgg ttgctggaaa
+     1321 tgacgcccca ccccgtgata atttggggac gagccgcacg ataacttctg ccagcgaccg
+     1381 cccctcccac gtccgatggt gattccgaac tccacctgcg tctatcgt
+//
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/lcr_assembly_dataset/RFP_GFP_plasmid_BOs.fa	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,29 @@
+> RFP_GFP_BO_10232
+TGGCTCGAGTTTTTCAGCAAGATTCCCTATCAGTGATAGAGATTGACATCC
+
+> RFP_GFP_BO_10233
+CGGATCTGAAAGAGGAGAAAGGATCTATGGCGAGTAGCGAAGACGT
+
+> RFP_GFP_BO_10234
+GTGTTGTTACCGTTACCCAGGACTCCTCCCTGCAAGACGGTG
+
+> RFP_GFP_BO_10235
+GGCCGCGTGTTACAACCAATGAAAGTGAAACGTGATTTCATGCGT
+
+> RFP_GFP_BO_10236
+AATGGTAAACTGACGCTGAAGTTCATCTGTACTACTGGTAAACTGCCGG
+
+> RFP_GFP_BO_10237
+CATAAGCTGGAATACAATTTTAACAGCCACAATGTTTACATCACCGCCGATAAACAAAAAAA
+
+> RFP_GFP_BO_10238
+CGGGTGGGCCTTTCTGCGTTTATAATCTTTCTAGAAGATCTCCTACAATATTCTCAGC
+
+> RFP_GFP_BO_10244
+GGGTGGGCCTTTCTGCGTTTATAATCTTTCTAGAAGATCTCCTACAATATTCTCAGC
+
+> RFP_GFP_BO_10268
+GGCCGCGTGTTACAACCAATGAAAGTGAAACGTGATTTCATGCGTC
+
+> RFP_GFP_BO_10281
+AGCTGGAATACAATTTTAACAGCCACAATGTTTACATCACCGCCGATAAACAA
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/lcr_assembly_dataset/RFP_GFP_plasmid_parts.fa	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,93 @@
+> p1_mRFP1-part1
+TCCCTATCAGTGATAGAGATTGACATCCCTATCAGTGATAGAGATACTGAGCACGGATCTGAAAGAGGAGAAAGGATCT
+
+> p2_mRFP1-part2
+ATGGCGAGTAGCGAAGACGTTATCAAAGAGTTCATGCGTTTCAAAGTTCGTATGGAAGGTTCC
+GTTAACGGTCACGAGTTCGAAATCGAAGGTGAAGGTGAAGGTCGTCCGTACGAAGGTACTCA
+GACCGCTAAACTGAAAGTTACCAAAGGTGGTCCGCTGCCGTTCGCTTGGGACATCCTGTCCCC
+GCAGTTCCAGTACGGTTCCAAAGCTTACGTTAAACACCCGGCTGACATCCCGGACTACCTGAA
+ACTGTCCTTCCCGGAAGGTTTCAAATGGGAACGTGTTATGAACTTCGAAGACGGTGGTGTTGTT
+ACCGTTACCCAGGAC
+
+> p3_mRFP1-part3
+TCCTCCCTGCAAGACGGTGAGTTCATCTACAAAGTTAAACTGCGTGGTACTAACTTCCCGTCCG
+ACGGTCCGGTTATGCAGAAAAAAACCATGGGTTGGGAAGCTTCCACCGAACGTATGTACCCGG
+AAGACGGTGCTCTGAAAGGTGAAATCAAAATGCGTCTGAAACTGAAAGACGGTGGTCACTAC
+GACGCTGAAGTTAAAACCACCTACATGGCTAAAAAACCGGTTCAGCTGCCGGGTGCTTACAAA
+ACCGACATCAAACTGGACATCACCTCCCACAACGAAGACTACACCATCGTTGAACAGTACGAA
+CGTGCTGAAGGTCGTCACTCCACCGGTGCTTAATAAGGATCTCCAGGCATCAAATAAAACGAA
+AGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTA
+GAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATAAGTCGGTCTCACCGAGCGGC
+CGCGTGTTACAACCAAT
+
+> p4_sfGFP-part1
+GAAAGTGAAACGTGATTTCATGCGTCATTTTGAACATTTTGTAAATCTTATTTAATAATGTGTG
+CGGCAATTCACATTTAATTTATGAATGTTTTCTTAACATCGCGGCAACTCAAGAAACGGCAGGT
+TCGGATCTTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGCGAAGAGCTGTTC
+ACTGGTGTCGTCCCTATTCTGGTGGAACTGGATGGTGATGTCAACGGTCATAAGTTTTCCGTGC
+GTGGCGAGGGTGAAGGTGACGCAACTAATGGTAAACTGACGCTGAAGTTCA
+
+> p5_sfGFP-part2
+TCTGTACTACTGGTAAACTGCCGGTTCCTTGGCCGACTCTGGTAACGACGCTGACTTATGGTGT
+TCAGTGCTTTGCTCGTTATCCGGACCATATGAAGCAGCATGACTTCTTCAAGTCCGCCATGCCG
+GAAGGCTATGTGCAGGAACGCACGATTTCCTTTAAGGATGACGGCACGTACAAAACGCGTGCG
+GAAGTGAAATTTGAAGGCGATACCCTGGTAAACCGCATTGAGCTGAAAGGCATTGACTTTAAA
+GAGGACGGCAATATCCTGGGCCATAAGCTGGAATACAATTTTAACAGCCACA
+
+> p6_sfGFP-part3
+ATGTTTACATCACCGCCGATAAACAAAAAAATGGCATTAAAGCGAATTTTAAAATTCGCCACA
+ACGTGGAGGATGGCAGCGTGCAGCTGGCTGATCACTACCAGCAAAACACTCCAATCGGTGATG
+GTCCTGTTCTGCTGCCAGACAATCACTATCTGAGCACGCAAAGCGTTCTGTCTAAAGATCCGA
+ACGAGAAACGCGATCATATGGTTCTGCTGGAGTTCGTAACCGCAGCGGGCATCACGCATGGTA
+TGGATGAACTGTACAAATGACCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGG
+CCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCG
+GGTGGGCCTTTCTGCGTTTATA
+
+> p7_backbone
+ATCTTTCTAGAAGATCTCCTACAATATTCTCAGCTGCCATGGAAAATCGATGTTCTTCTTTTATT
+CTCTCAAGATTTTCAGGCTGTATATTAAAACTTATATTAAGAACTATGCTAACCACCTCATCAG
+GAACCGTTGTAGGTGGCGTGGGTTTTCTTGGCAATCGACTCTCATGAAAACTACGAGCTAAAT
+ATTCAATATGTTCCTCTTGACCAACTTTATTCTGCATTTTTTTTGAACGAGGTTTAGAGCAAGCT
+TCAGGAAACTGAGACAGGAATTTTATTAAAAATTTAAATTTTGAAGAAAGTTCAGGGTTAATA
+GCATCCATTTTTTGCTTTGCAAGTTCCTCAGCATTCTTAACAAAAGACGTCTCTTTTGACATGTT
+TAAAGTTTAAACCTCCTGTGTGAAATTATTATCCGCTCATAATTCCACACATTATACGAGCCGG
+AAGCATAAAGTGTAAAGCCTGGGGTGCCTAATGAGTGAGCTAACTCACATTAATTGCGTTGCG
+CTCACTGCCAATTGCTTTCCAGTCGGGAAACCTGTCGTGCCAGCTGCATTAATGAATCGGCCAA
+CGCGCGGGGAGAGGCGGTTTGCGTATTGGGCGCTCTTCCGCTTCCTCGCTCACTGACTCGCTGC
+GCTCGGTCGTTCGGCTGCGGCGAGCGGTATCAGCTCACTCAAAGGCGGTAATACGGTTATCCA
+CAGAATCAGGGGATAACGCAGGAAAGAACATGTGAGCAAAAGGCCAGCAAAAGGCCAGGAA
+CCGTAAAAAGGCCGCGTTGCTGGCGTTTTTCCATAGGCTCCGCCCCCCTGACGAGCATCACAA
+AAATCGACGCTCAAGTCAGAGGTGGCGAAACCCGACAGGACTATAAAGATACCAGGCGTTTC
+CCCCTGGAAGCTCCCTCGTGCGCTCTCCTGTTCCGACCCTGCCGCTTACCGGATACCTGTCCGC
+CTTTCTCCCTTCGGGAAGCGTGGCGCTTTCTCATAGCTCACGCTGTAGGTATCTCAGTTCGGTG
+TAGGTCGTTCGCTCCAAGCTGGGCTGTGTGCACGAACCCCCCGTTCAGCCCGACCGCTGCGCCT
+TATCCGGTAACTATCGTCTTGAGTCCAACCCGGTAAGACACGACTTATCGCCACTGGCAGCAG
+CCACTGGTAACAGGATTAGCAGAGCGAGGTATGTAGGCGGTGCTACAGAGTTCTTGAAGTGGT
+GGCCTAACTACGGCTACACTAGAAGGACAGTATTTGGTATCTGCGCTCTGCTGAAGCCAGTTA
+CCTTCGGAAAAAGAGTTGGTAGCTCTTGATCCGGCAAACAAACCACCGCTGGTAGCGGTGGTT
+TTTTTGTTTGCAAGCAGCAGATTACGCGCAGAAAAAAAGGATCTCAAGAAGATCCTTTGATCT
+TTTCTACGGGGTCTGACGCTCAGTGGAACGAAAACTCACGTTAAGGGATTTTGGTCATGAGAT
+TATCAAAAAGGATCTTCACCTAGATCCTTTTAAATTAAAAATGAAGTTTTAAATCAATCTAAAG
+TATATATGAGTAAACTTGGTCTGACAGTTACCAATGCTTAATCAGTGAGGCACCTATCTCAGCG
+ATCTGTCTATTTCGTTCATCCATAGTTGCCTGACTCCCCGTCGTGTAGATAACTACGATACGGG
+AGGGCTTACCATCTGGCCCCAGTGCTGCAATGATACCGCGAGACCCACGCTCACCGGCTCCAG
+ATTTATCAGCAATAAACCAGCCAGCCGGAAGGGCCGAGCGCAGAAGTGGTCCTGCAACTTTAT
+CCGCCTCCATCCAGTCTATTAATTGTTGCCGGGAAGCTAGAGTAAGTAGTTCGCCAGTTAATAG
+TTTGCGCAACGTTGTTGCCATTGCTACAGGCATCGTGGTGTCACGCTCGTCGTTTGGTATGGCT
+TCATTCAGCTCCGGTTCCCAACGATCAAGGCGAGTTACATGATCCCCCATGTTGTGCAAAAAA
+GCGGTTAGCTCCTTCGGTCCTCCGATCGTTGTCAGAAGTAAGTTGGCCGCAGTGTTATCACTCA
+TGGTTATGGCAGCACTGCATAATTCTCTTACTGTCATGCCATCCGTAAGATGCTTTTCTGTGAC
+TGGTGAGTACTCAACCAAGTCATTCTGAGAATAGTGTATGCGGCGACCGAGTTGCTCTTGCCC
+GGCGTCAATACGGGATAATACCGCGCCACATAGCAGAACTTTAAAAGTGCTCATCATTGGAAA
+ACGTTCTTCGGGGCGAAAACTCTCAAGGATCTTACCGCTGTTGAGATCCAGTTCGATGTAACCC
+ACTCGTGCACCCAACTGATCTTCAGCATCTTTTACTTTCACCAGCGTTTCTGGGTGAGCAAAAA
+CAGGAAGGCAAAATGCCGCAAAAAAGGGAATAAGGGCGACACGGAAATGTTGAATACTCATA
+CTCTTCCTTTTTCAATATTATTGAAGCATTTATCAGGGTTATTGTCTCATGAGCGGATACATATT
+TGAATGTATTTAGAAAAATAAACAAATAGGGGTTCCGCGCACATTTCCCCGAAAAGTGCCACC
+TGACGTCTAAGAAACCATTATTATCATGACATTAACCTATAAAAATAGGCGTATCACGAGGCC
+GCCCCTGCAGCCGAATTATATTATTTTTGCCAAATAATTTTTAACAAAAGCTCTGAAGTCTTCT
+TCATTTAAATTCTTAGATGATACTTCATCTGGAAAATTGTCCCAATTAGTAGCATCACGCTGTG
+AGTAAGTTCTAAACCATTTTTTTATTGTTGTATTATCTCTAATCTTACTACTCGATGAGTTTTCG
+GTATTATCTCTATTTTTAACTTGGAGCAGGTTCCATTCATTGTTTTTTTCATCATAGTGAATAAA
+ATCAACTGCTTTAACACTTGTGCCTGAACACCATATCCATCCGGCGTAATACGACTCACTATAG
+GGAGAGCGGCCGCCAGATCTTCCGGATGGCTCGAGTTTTTCAGCAAGAT
\ No newline at end of file
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/lcr_assembly_dataset/assembly_plan.csv	Wed Jun 11 09:32:59 2025 +0000
@@ -0,0 +1,2 @@
+Construct1,RFP_GFP_BO_10232,oligo_indicator: _BO_,RFP_GFP_BO_10234,RFP_GFP_BO_10236,RFP_GFP_BO_10244,RFP_GFP_BO_10268,RFP_GFP_BO_10281,p1_mRFP1-part1,p2_mRFP1-part2,p3_mRFP1-part3,p4_sfGFP-part1,p5_sfGFP-part2,p6_sfGFP-part3,p7_backbone
+Construct2_flawed,RFP_GFP_BO_10232,RFP_GFP_BO_10233,RFP_GFP_BO_10244,RFP_GFP_BO_10268,RFP_GFP_BO_10281,p1_mRFP1-part1,p2_mRFP1-part2,p3_mRFP1-part3,p4_sfGFP-part1,p5_sfGFP-part2,p6_sfGFP-part3,p7_backbone,,