diff --git a/SBOL3_simple_library4.nt b/SBOL3_simple_library4.nt index 18df532..72a61cf 100644 --- a/SBOL3_simple_library4.nt +++ b/SBOL3_simple_library4.nt @@ -1,107 +1,176 @@ - "GFPmut3" . + "Green FP (off patent)\nGFPmut3" . "E0040" . . - . - . + . + "GFPmut3" . + . . . - "Green FP (off patent)" . - "mRFP1" . + "E0040_sequence" . + "ATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAA" . + . + . + . + "Red FP (off patent)\nmRFP1" . "E1010" . . - . - . + . + "mRFP1" . + . . . - "Red FP (off patent)" . + "E1010_sequence" . + "ATGGCTTCCTCCGAAGACGTTATCAAAGAGTTCATGCGTTTCAAAGTTCGTATGGAAGGTTCCGTTAACGGTCACGAGTTCGAAATCGAAGGTGAAGGTGAAGGTCGTCCGTACGAAGGTACCCAGACCGCTAAACTGAAAGTTACCAAAGGTGGTCCGCTGCCGTTCGCTTGGGACATCCTGTCCCCGCAGTTCCAGTACGGTTCCAAAGCTTACGTTAAACACCCGGCTGACATCCCGGACTACCTGAAACTGTCCTTCCCGGAAGGTTTCAAATGGGAACGTGTTATGAACTTCGAAGACGGTGGTGTTGTTACCGTTACCCAGGACTCCTCCCTGCAAGACGGTGAGTTCATCTACAAAGTTAAACTGCGTGGTACCAACTTCCCGTCCGACGGTCCGGTTATGCAGAAAAAAACCATGGGTTGGGAAGCTTCCACCGAACGTATGTACCCGGAAGACGGTGCTCTGAAAGGTGAAATCAAAATGCGTCTGAAACTGAAAGACGGTGGTCACTACGACGCTGAAGTTAAAACCACCTACATGGCTAAAAAACCGGTTCAGCTGCCGGGTGCTTACAAAACCGACATCAAACTGGACATCACCTCCCACAACGAAGACTACACCATCGTTGAACAGTACGAACGTGCTGAAGGTCGTCACTCCACCGGTGCTTAATAACGCTGATAGTGCTAGTGTAGATCGC" . + . + . + . + "positive control 2018 interlab" . "I20270" . . - . - . + . + "I20270" . + . . . - "positive control 2018 interlab" . - "mCherry" . + "I20270_sequence" . + "TTGATGGCTAGCTCAGTCCTAGGTACAATGCTAGCTACTAGAGTCACACAGGAAAGTACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "Red FP (off patent)\nmCherry" . "J06504" . . - . - . + . + "J06504" . + . . . - "Red FP (off patent)" . + "J06504_sequence" . + "ATGGTGAGCAAGGGCGAGGAGGATAACATGGCCATCATCAAGGAGTTCATGCGCTTCAAGGTGCACATGGAGGGCTCCGTGAACGGCCACGAGTTCGAGATCGAGGGCGAGGGCGAGGGCCGCCCCTACGAGGGCACCCAGACCGCCAAGCTGAAGGTGACCAAGGGTGGCCCCCTGCCCTTCGCCTGGGACATCCTGTCCCCTCAGTTCATGTACGGCTCCAAGGCCTACGTGAAGCACCCCGCCGACATCCCCGACTACTTGAAGCTGTCCTTCCCCGAGGGCTTCAAGTGGGAGCGCGTGATGAACTTCGAGGACGGCGGCGTGGTGACCGTGACCCAGGACTCCTCCTTGCAGGACGGCGAGTTCATCTACAAGGTGAAGCTGCGCGGCACCAACTTCCCCTCCGACGGCCCCGTAATGCAGAAGAAGACCATGGGCTGGGAGGCCTCCTCCGAGCGGATGTACCCCGAGGACGGCGCCCTGAAGGGCGAGATCAAGCAGAGGCTGAAGCTGAAGGACGGCGGCCACTACGACGCTGAGGTCAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCCCACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGTACAAG" . + . + . + . + "5.5 SLM (high, but variable)" . "J23101" . . - . - . + . + "J23101" . + . . . - "5.5 SLM (high, but variable)" . + "J23101_sequence" . + "TTTACAGCTAGCTCAGTCCTAGGTATTATGCTAGC" . + . + . + . + "TBD SLM (expect 4.5)" . "J23105" . . - . - . + . + "J23105" . + . . . - "TBD SLM (expect 4.5)" . + "J23105_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGACTATGCTAGC" . + . + . + . + "J23106 2018 interlab" . "J364001" . . - . - . + . + "J364001" . + . . . - "J23106 2018 interlab" . + "J364001_sequence" . + "TTTACGGCTAGCTCAGTCCTAGGTATAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23117 2018 interlab" . "J364002" . . - . - . + . + "J364002" . + . . . - "J23117 2018 interlab" . + "J364002_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGATTGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23100 2018 interlab" . "J364007" . . - . - . + . + "J364007" . + . . . - "J23100 2018 interlab" . + "J364007_sequence" . + "TTGACGGCTAGCTCAGTCCTAGGTACAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23116 2018 interlab" . "J364009" . . - . - . + . + "J364009" . + . . . - "J23116 2018 interlab" . - "TagBFP2" . + "J364009_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGACTATGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "Blue FP\nTagBFP2" . "K592100" . . - . - . + . + "K592100" . + . . . - "Blue FP" . + "K592100_sequence" . + "ATGAGCGAACTGATCAAAGAGAACATGCACATGAAGCTGTACATGGAAGGCACCGTTGACAACCACCACTTTAAGTGCACGTCTGAGGGTGAGGGTAAGCCGTACGAAGGCACCCAAACCATGCGTATCAAAGTTGTGGAGGGCGGTCCACTGCCGTTCGCTTTTGACATTCTGGCGACCAGCTTCCTGTACGGTTCCAAAACGTTCATTAACCATACTCAGGGCATTCCGGATTTCTTCAAACAGAGCTTTCCGGAAGGTTTCACCTGGGAGCGTGTCACCACGTATGAAGATGGTGGTGTGTTGACCGCCACCCAAGATACCTCCCTGCAAGATGGCTGTCTGATCTATAACGTGAAAATTCGTGGCGTCAACTTTACGAGCAATGGTCCGGTGATGCAGAAGAAAACCCTGGGTTGGGAGGCGTTTACGGAAACCCTGTATCCGGCCGATGGTGGCCTGGAGGGCCGTAACGACATGGCACTGAAGCTGGTTGGTGGCAGCCATTTGATCGCAAATATCAAGACGACGTACCGCAGCAAGAAACCGGCGAAAAATCTGAAGATGCCGGGTGTTTACTATGTCGACTACCGTCTGGAACGCATTAAAGAAGCGAATAATGAGACTTACGTGGAGCAGCACGAGGTTGCAGTCGCGCGCTATTGCGACTTGCCTAGCAAGCTGGGTCATAAACTGAAT" . + . + . + . + "negative control 2018 interlab" . "R0040" . . - . - . + . + "R0040" . + . . . - "negative control 2018 interlab" . + "R0040_sequence" . + "TCCCTATCAGTGATAGAGATTGACATCCCTATCAGTGATAGAGATACTGAGCAC" . + . + . + . . "VariableFeature1" . . - . - . + . + . + . + . . - . - . - . . . . + . . "All_FPs" . . . + "All FPs" . . . "LocalSubComponent1" . @@ -117,144 +186,148 @@ "B0015" . . . - . + "B0015" . + . . . "B0015_sequence" . - "ccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata" . + "CCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . . . + "Moderate (?)" . "B0032" . . . - . + "B0032" . + . . . - "Moderate (?)" . "B0032_sequence" . - "tcacacaggaaag" . + "TCACACAGGAAAG" . + . . . - "5' UTR including B0032 RBS and BB scars (long and short)" . - "BB_u45_B0032_u45_BB" . - . - . - . - "Constraint1" . - . - . - . - . - "Constraint2" . - . - . - . - . - "SubComponent1" . - . - "Part 0" . - . - . - "SubComponent2" . - . - "Part 1" . - . - . - "SubComponent3" . - . - "Part 2" . - . - . - "BB_u45_B0032_u45_BB_template" . - . - . - . - . - . - . - . - . - "Collection from the Basic Parts sheet" . + "5' UTR including B0032 RBS and BB scars (long and short)" . + "BB_B0032_BB" . + . + "BB-B0032-BB" . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "SubComponent1" . + . + "Part 1" . + . + . + "SubComponent2" . + . + "Part 2" . + . + . + "SubComponent3" . + . + "Part 3" . + . + . + "BB_B0032_BB_template" . + . + . + . + . + . + . + . + . + "Designs for round 1 if iGEM 2021 calibration experimentation" . "Basic_Parts" . . + . + . + . + . + . + . + . + . + . + . + . + . . . . . - . - . . - . - . - . - . - . - . - . - . - . - . - . . . . - . . . . . + . + . + "Fluorescence calibration basic parts" . . + "BioBricks scar including ag (not before CDS)" . "BioBricks_scar_long" . . . - . + "BioBricks_scar_long" . + . . . - "BioBricks scar including ag (not before CDS)" . "BioBricks_scar_long_sequence" . - "tactagag" . + "TACTAGAG" . + . . . + "BioBricks scar (short one, w/o ag, before CDS)" . "BioBricks_scar_short" . . . - . + "BioBricks_scar_short" . + . . . - "BioBricks scar (short one, w/o ag, before CDS)" . "BioBricks_scar_short_sequence" . - "tactag" . + "TACTAG" . + . . . - "Collection from the Composite Parts sheet" . + "Designs for round 1 if iGEM 2021 calibration experimentation" . "Composite_Parts" . . . - . + . . . - . + . . + "Fluorescence calibration devices" . . - "E0040_sequence" . - "atgcgtaaaggagaagaacttttcactggagttgtcccaattcttgttgaattagatggtgatgttaatgggcacaaattttctgtcagtggagagggtgaaggtgatgcaacatacggaaaacttacccttaaatttatttgcactactggaaaactacctgttccatggccaacacttgtcactactttcggttatggtgttcaatgctttgcgagatacccagatcatatgaaacagcatgactttttcaagagtgccatgcccgaaggttatgtacaggaaagaactatatttttcaaagatgacgggaactacaagacacgtgctgaagtcaagtttgaaggtgatacccttgttaatagaatcgagttaaaaggtattgattttaaagaagatggaaacattcttggacacaaattggaatacaactataactcacacaatgtatacatcatggcagacaaacaaaagaatggaatcaaagttaacttcaaaattagacacaacattgaagatggaagcgttcaactagcagaccattatcaacaaaatactccaattggcgatggccctgtccttttaccagacaaccattacctgtccacacaatctgccctttcgaaagatcccaacgaaaagagagaccacatggtccttcttgagtttgtaacagctgctgggattacacatggcatggatgaactatacaaa" . - . - . - "E1010_sequence" . - "atggcttcctccgaagacgttatcaaagagttcatgcgtttcaaagttcgtatggaaggttccgttaacggtcacgagttcgaaatcgaaggtgaaggtgaaggtcgtccgtacgaaggtacccagaccgctaaactgaaagttaccaaaggtggtccgctgccgttcgcttgggacatcctgtccccgcagttccagtacggttccaaagcttacgttaaacacccggctgacatcccggactacctgaaactgtccttcccggaaggtttcaaatgggaacgtgttatgaacttcgaagacggtggtgttgttaccgttacccaggactcctccctgcaagacggtgagttcatctacaaagttaaactgcgtggtaccaacttcccgtccgacggtccggttatgcagaaaaaaaccatgggttgggaagcttccaccgaacgtatgtacccggaagacggtgctctgaaaggtgaaatcaaaatgcgtctgaaactgaaagacggtggtcactacgacgctgaagttaaaaccacctacatggctaaaaaaccggttcagctgccgggtgcttacaaaaccgacatcaaactggacatcacctcccacaacgaagactacaccatcgttgaacagtacgaacgtgctgaaggtcgtcactccaccggtgcttaataacgctgatagtgctagtgtagatcgc" . - . - . - "ECFP" . + "Cyan FP; codon optimized using IDT tool \nECFP" . "ECFP" . . . - . + "ECFP" . + . . . . - "Cyan FP; codon optimized using IDT tool " . "ECFP_sequence" . - "atggttagtaaaggggaagagttgtttacgggcgttgttccaatcttggtggagttggacggggacgttaatgggcacaaattttcggtctctggggaaggcgagggggacgccacgtatggtaagctgaccttgaagttcatttgcactactgggaaattgccggttccctggcctacgcttgttaccacgttgacctggggcgtacaatgtttctcgcgctatcctgaccacatgaaacaacatgatttctttaagtcagctatgcctgagggctacgtgcaggagcgcactatcttcttcaaggatgacgggaattacaaaacccgtgcggaggtaaagttcgagggtgacacgcttgtcaaccgcatcgagttgaagggcattgattttaaggaggatggcaacattttaggacataaattagagtataactatatttcgcataatgtctacattactgctgacaaacaaaagaacggcatcaaggctaatttcaaaattcgccacaacatcgaggatggatcggttcagttagcagatcattaccagcaaaacacgcccatcggtgacggaccagttctgttacctgacaaccactatctttctacacagagtgctcttagcaaggaccctaacgaaaaacgtgaccacatggtcctgctggagtttgtgacagccgcaggtattacattggggatggacgaattgtataag" . + "ATGGTTAGTAAAGGGGAAGAGTTGTTTACGGGCGTTGTTCCAATCTTGGTGGAGTTGGACGGGGACGTTAATGGGCACAAATTTTCGGTCTCTGGGGAAGGCGAGGGGGACGCCACGTATGGTAAGCTGACCTTGAAGTTCATTTGCACTACTGGGAAATTGCCGGTTCCCTGGCCTACGCTTGTTACCACGTTGACCTGGGGCGTACAATGTTTCTCGCGCTATCCTGACCACATGAAACAACATGATTTCTTTAAGTCAGCTATGCCTGAGGGCTACGTGCAGGAGCGCACTATCTTCTTCAAGGATGACGGGAATTACAAAACCCGTGCGGAGGTAAAGTTCGAGGGTGACACGCTTGTCAACCGCATCGAGTTGAAGGGCATTGATTTTAAGGAGGATGGCAACATTTTAGGACATAAATTAGAGTATAACTATATTTCGCATAATGTCTACATTACTGCTGACAAACAAAAGAACGGCATCAAGGCTAATTTCAAAATTCGCCACAACATCGAGGATGGATCGGTTCAGTTAGCAGATCATTACCAGCAAAACACGCCCATCGGTGACGGACCAGTTCTGTTACCTGACAACCACTATCTTTCTACACAGAGTGCTCTTAGCAAGGACCCTAACGAAAAACGTGACCACATGGTCCTGCTGGAGTTTGTGACAGCCGCAGGTATTACATTGGGGATGGACGAATTGTATAAG" . + . . . . @@ -265,23 +338,24 @@ "FPs_small" . . . + "FPs small" . . . . "VariableFeature1" . . - . + . . . "VariableFeature2" . . - . - . + . + . . . "VariableFeature3" . . - . + . . . "VariableFeature4" . @@ -294,7 +368,7 @@ . . . - "FPs_small_ins" . + "FPs small insert" . . . . @@ -345,12 +419,12 @@ . "SubComponent1" . . - "Part 4" . + "Part 5" . . . "SubComponent2" . . - "Part 5" . + "Part 6" . . . "FPs_small_ins_template" . @@ -366,7 +440,6 @@ . . . - "FPs_small_ins_template" . . . "Constraint1" . @@ -380,7 +453,7 @@ . . "LocalSubComponent1" . - "Inserted construct" . + "Inserted Construct" . . . "SubComponent1" . @@ -394,58 +467,20 @@ . . . + "Final products desired for actual fabrication" . "FinalProducts" . . . . - "FinalProducts" . + "Final Products" . . - "I20270_sequence" . - "ttgatggctagctcagtcctaggtacaatgctagctactagagtcacacaggaaagtactagatgcgtaaaggagaagaacttttcactggagttgtcccaattcttgttgaattagatggtgatgttaatgggcacaaattttctgtcagtggagagggtgaaggtgatgcaacatacggaaaacttacccttaaatttatttgcactactggaaaactacctgttccatggccaacacttgtcactactttcggttatggtgttcaatgctttgcgagatacccagatcatatgaaacagcatgactttttcaagagtgccatgcccgaaggttatgtacaggaaagaactatatttttcaaagatgacgggaactacaagacacgtgctgaagtcaagtttgaaggtgatacccttgttaatagaatcgagttaaaaggtattgattttaaagaagatggaaacattcttggacacaaattggaatacaactataactcacacaatgtatacatcatggcagacaaacaaaagaatggaatcaaagttaacttcaaaattagacacaacattgaagatggaagcgttcaactagcagaccattatcaacaaaatactccaattggcgatggccctgtccttttaccagacaaccattacctgtccacacaatctgccctttcgaaagatcccaacgaaaagagagaccacatggtccttcttgagtttgtaacagctgctgggattacacatggcatggatgaactatacaaataataatactagagccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata" . - . - . - "J06504_sequence" . - "atggtgagcaagggcgaggaggataacatggccatcatcaaggagttcatgcgcttcaaggtgcacatggagggctccgtgaacggccacgagttcgagatcgagggcgagggcgagggccgcccctacgagggcacccagaccgccaagctgaaggtgaccaagggtggccccctgcccttcgcctgggacatcctgtcccctcagttcatgtacggctccaaggcctacgtgaagcaccccgccgacatccccgactacttgaagctgtccttccccgagggcttcaagtgggagcgcgtgatgaacttcgaggacggcggcgtggtgaccgtgacccaggactcctccttgcaggacggcgagttcatctacaaggtgaagctgcgcggcaccaacttcccctccgacggccccgtaatgcagaagaagaccatgggctgggaggcctcctccgagcggatgtaccccgaggacggcgccctgaagggcgagatcaagcagaggctgaagctgaaggacggcggccactacgacgctgaggtcaagaccacctacaaggccaagaagcccgtgcagctgcccggcgcctacaacgtcaacatcaagttggacatcacctcccacaacgaggactacaccatcgtggaacagtacgaacgcgccgagggccgccactccaccggcggcatggacgagctgtacaag" . - . - . - "J23101_sequence" . - "tttacagctagctcagtcctaggtattatgctagc" . - . - . - "J23105_sequence" . - "ttgacagctagctcagtcctagggactatgctagc" . - . - . - "J364001_sequence" . - "tttacggctagctcagtcctaggtatagtgctagctactagagaaagaggagaaatactagatgcgtaaaggagaagaacttttcactggagttgtcccaattcttgttgaattagatggtgatgttaatgggcacaaattttctgtcagtggagagggtgaaggtgatgcaacatacggaaaacttacccttaaatttatttgcactactggaaaactacctgttccatggccaacacttgtcactactttcggttatggtgttcaatgctttgcgagatacccagatcatatgaaacagcatgactttttcaagagtgccatgcccgaaggttatgtacaggaaagaactatatttttcaaagatgacgggaactacaagacacgtgctgaagtcaagtttgaaggtgatacccttgttaatagaatcgagttaaaaggtattgattttaaagaagatggaaacattcttggacacaaattggaatacaactataactcacacaatgtatacatcatggcagacaaacaaaagaatggaatcaaagttaacttcaaaattagacacaacattgaagatggaagcgttcaactagcagaccattatcaacaaaatactccaattggcgatggccctgtccttttaccagacaaccattacctgtccacacaatctgccctttcgaaagatcccaacgaaaagagagaccacatggtccttcttgagtttgtaacagctgctgggattacacatggcatggatgaactatacaaataataatactagagccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata" . - . - . - "J364002_sequence" . - "ttgacagctagctcagtcctagggattgtgctagctactagagaaagaggagaaatactagatgcgtaaaggagaagaacttttcactggagttgtcccaattcttgttgaattagatggtgatgttaatgggcacaaattttctgtcagtggagagggtgaaggtgatgcaacatacggaaaacttacccttaaatttatttgcactactggaaaactacctgttccatggccaacacttgtcactactttcggttatggtgttcaatgctttgcgagatacccagatcatatgaaacagcatgactttttcaagagtgccatgcccgaaggttatgtacaggaaagaactatatttttcaaagatgacgggaactacaagacacgtgctgaagtcaagtttgaaggtgatacccttgttaatagaatcgagttaaaaggtattgattttaaagaagatggaaacattcttggacacaaattggaatacaactataactcacacaatgtatacatcatggcagacaaacaaaagaatggaatcaaagttaacttcaaaattagacacaacattgaagatggaagcgttcaactagcagaccattatcaacaaaatactccaattggcgatggccctgtccttttaccagacaaccattacctgtccacacaatctgccctttcgaaagatcccaacgaaaagagagaccacatggtccttcttgagtttgtaacagctgctgggattacacatggcatggatgaactatacaaataataatactagagccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata" . - . - . - "J364007_sequence" . - "ttgacggctagctcagtcctaggtacagtgctagctactagagaaagaggagaaatactagatgcgtaaaggagaagaacttttcactggagttgtcccaattcttgttgaattagatggtgatgttaatgggcacaaattttctgtcagtggagagggtgaaggtgatgcaacatacggaaaacttacccttaaatttatttgcactactggaaaactacctgttccatggccaacacttgtcactactttcggttatggtgttcaatgctttgcgagatacccagatcatatgaaacagcatgactttttcaagagtgccatgcccgaaggttatgtacaggaaagaactatatttttcaaagatgacgggaactacaagacacgtgctgaagtcaagtttgaaggtgatacccttgttaatagaatcgagttaaaaggtattgattttaaagaagatggaaacattcttggacacaaattggaatacaactataactcacacaatgtatacatcatggcagacaaacaaaagaatggaatcaaagttaacttcaaaattagacacaacattgaagatggaagcgttcaactagcagaccattatcaacaaaatactccaattggcgatggccctgtccttttaccagacaaccattacctgtccacacaatctgccctttcgaaagatcccaacgaaaagagagaccacatggtccttcttgagtttgtaacagctgctgggattacacatggcatggatgaactatacaaataataatactagagccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata" . - . - . - "J364009_sequence" . - "ttgacagctagctcagtcctagggactatgctagctactagagaaagaggagaaatactagatgcgtaaaggagaagaacttttcactggagttgtcccaattcttgttgaattagatggtgatgttaatgggcacaaattttctgtcagtggagagggtgaaggtgatgcaacatacggaaaacttacccttaaatttatttgcactactggaaaactacctgttccatggccaacacttgtcactactttcggttatggtgttcaatgctttgcgagatacccagatcatatgaaacagcatgactttttcaagagtgccatgcccgaaggttatgtacaggaaagaactatatttttcaaagatgacgggaactacaagacacgtgctgaagtcaagtttgaaggtgatacccttgttaatagaatcgagttaaaaggtattgattttaaagaagatggaaacattcttggacacaaattggaatacaactataactcacacaatgtatacatcatggcagacaaacaaaagaatggaatcaaagttaacttcaaaattagacacaacattgaagatggaagcgttcaactagcagaccattatcaacaaaatactccaattggcgatggccctgtccttttaccagacaaccattacctgtccacacaatctgccctttcgaaagatcccaacgaaaagagagaccacatggtccttcttgagtttgtaacagctgctgggattacacatggcatggatgaactatacaaataataatactagagccaggcatcaaataaaacgaaaggctcagtcgaaagactgggcctttcgttttatctgttgtttgtcggtgaacgctctctactagagtcacactggctcaccttcgggtgggcctttctgcgtttata" . - . - . - "K592100_sequence" . - "atgagcgaactgatcaaagagaacatgcacatgaagctgtacatggaaggcaccgttgacaaccaccactttaagtgcacgtctgagggtgagggtaagccgtacgaaggcacccaaaccatgcgtatcaaagttgtggagggcggtccactgccgttcgcttttgacattctggcgaccagcttcctgtacggttccaaaacgttcattaaccatactcagggcattccggatttcttcaaacagagctttccggaaggtttcacctgggagcgtgtcaccacgtatgaagatggtggtgtgttgaccgccacccaagatacctccctgcaagatggctgtctgatctataacgtgaaaattcgtggcgtcaactttacgagcaatggtccggtgatgcagaagaaaaccctgggttgggaggcgtttacggaaaccctgtatccggccgatggtggcctggagggccgtaacgacatggcactgaagctggttggtggcagccatttgatcgcaaatatcaagacgacgtaccgcagcaagaaaccggcgaaaaatctgaagatgccgggtgtttactatgtcgactaccgtctggaacgcattaaagaagcgaataatgagacttacgtggagcagcacgaggttgcagtcgcgcgctattgcgacttgcctagcaagctgggtcataaactgaat" . - . - . + "Linear DNA constructs to be fabricated" . "LinearDNAProducts" . . . . - "LinearDNAProducts" . + "Linear DNA Products" . . - "R0040_sequence" . - "tccctatcagtgatagagattgacatccctatcagtgatagagatactgagcac" . - . - . . "VariableFeature1" . . @@ -455,6 +490,7 @@ "Round_1_order" . . . + "Round 1 order" . . . "LocalSubComponent1" . @@ -467,62 +503,69 @@ . . . + "2 stop codons" . "STOP" . . . - . + "STOP" . + . . . - "2 stop codons" . "STOP_sequence" . - "taataa" . + "TAATAA" . + . . . "UNSX" . . . - . + "UNSX" . + . . . + "UNSX_UP" . + . + "UNSX-UP" . + . + . + "Constraint1" . + . + . + . + . + "SubComponent1" . + . + "Part 1" . + . + . + "SubComponent2" . + . + "Part 2" . + . + . + "UNSX_UP_template" . + . + . + . + . + . + . "UNSX_sequence" . - "ccaggatacatagattaccacaactccgagcccttccacc" . + "CCAGGATACATAGATTACCACAACTCCGAGCCCTTCCACC" . + . . . - "UNSX_u45_UP" . - . - . - . - "Constraint1" . - . - . - . - . - "SubComponent1" . - . - "Part 0" . - . - . - "SubComponent2" . - . - "Part 1" . - . - . - "UNSX_u45_UP_template" . - . - . - . - . - . - . + "consensus without runs of As and Ts -59 to -36" . "UP_element_consensus" . . . - . + "UP element consensus" . + . . . - "consensus without runs of As and Ts -59 to -36 https://www.pnas.org/content/pnas/95/17/9761.full.pdf" . "UP_element_consensus_sequence" . - "tgaaatatattttcgaaaagccgc" . + "TGAAATATATTTTCGAAAAGCCGC" . + . . . . @@ -533,23 +576,24 @@ "_2018_Interlab" . . . + "2018 Interlab" . . . - "Swapped R0040 for TwistNeg as the negative control, due to Twist minimum synthesis length" . . "VariableFeature1" . . - . - . - . - . - . - . + . + . + . + . + . + . . + "Swapped R0040 for TwistNeg as the negative control, due to Twist minimum synthesis length" . "_2018_Interlab_ins" . . . - "_2018_Interlab_ins" . + "2018 Interlab insert" . . . . @@ -561,7 +605,6 @@ "_2018_Interlab_ins_template" . . . - "_2018_Interlab_ins_template" . . . "Constraint1" . @@ -575,7 +618,7 @@ . . "LocalSubComponent1" . - "Inserted construct" . + "Inserted Construct" . . . "SubComponent1" . @@ -589,65 +632,72 @@ . . . - "mCerulean3_sequence" . - "atggtgtcgaaaggtgaagaactttttacaggtgtggtccccattttagtcgaattagatggggatgtgaatggtcacaaattctcggtgtctggggagggtgaaggtgacgcgacctacgggaagttgactctgaaattcatttgcactacggggaagttaccagtgccctggcccactctggttacaacactgtcatggggcgtccaatgttttgctcgttatcctgaccacatgaaacagcatgacttcttcaagagcgcaatgccggaaggctatgtccaagagcgtactatctttttcaaagacgatgggaactacaaaacacgcgcagaagtgaagtttgagggagataccctggttaatcgcattgaattgaaaggtatcgacttcaaggaggatggtaatatcctggggcacaaattggagtacaacgctatccacggcaatgtttacattacggcagacaaacagaaaaacggaattaaggccaatttcggacttaactgcaacatcgaagatgggtcggtacaactggcagaccactatcagcaaaatacgcctattggtgacggtcctgtcctgttaccggacaatcattatctttccactcagtcgaaactgagtaaagatccgaacgagaagcgcgatcacatggtattattagagttcgtcacagccgcaggtattacgttagggatggatgagctttacaag" . - . - . + "Blue FP codon optimized" . "mTagBFP2" . . . - . + "mTagBFP2" . + . . . - "Blue FP codon optimized" . "mTagBFP2_sequence" . - "atggtatcgaagggtgaagagttgattaaggaaaacatgcacatgaagttatacatggaagggaccgtggataatcaccatttcaaatgcacatctgaaggagagggaaaaccttacgaagggacccagacaatgcgtatcaaagtggtcgagggtggccctttaccattcgcgttcgacatcctggcgacctcctttttatatgggagcaaaacattcattaaccacacccagggaatcccggatttcttcaagcagtctttccctgaagggtttacgtgggagcgtgtgacaacttatgaggatggcggggttttgacggctacgcaggatacttcgttacaagacggttgcttaatttacaatgtaaagattcgtggagtaaattttacatcaaacggtccggtcatgcaaaagaaaacccttggttgggaggcgtttaccgagacattgtatcctgccgacgggggattagagggtcgcaatgatatggcactgaaacttgtgggggggtctcatttaattgcaaacgctaagacaacttaccgctccaagaagcccgctaagaacctgaaaatgcctggggtctactatgttgactatcgccttgagcgtatcaaggaggcgaacaacgagacttacgtcgagcagcatgaggtagcggttgcccgttactgtgacctgccatctaagttaggacataagttgaat" . + "ATGGTATCGAAGGGTGAAGAGTTGATTAAGGAAAACATGCACATGAAGTTATACATGGAAGGGACCGTGGATAATCACCATTTCAAATGCACATCTGAAGGAGAGGGAAAACCTTACGAAGGGACCCAGACAATGCGTATCAAAGTGGTCGAGGGTGGCCCTTTACCATTCGCGTTCGACATCCTGGCGACCTCCTTTTTATATGGGAGCAAAACATTCATTAACCACACCCAGGGAATCCCGGATTTCTTCAAGCAGTCTTTCCCTGAAGGGTTTACGTGGGAGCGTGTGACAACTTATGAGGATGGCGGGGTTTTGACGGCTACGCAGGATACTTCGTTACAAGACGGTTGCTTAATTTACAATGTAAAGATTCGTGGAGTAAATTTTACATCAAACGGTCCGGTCATGCAAAAGAAAACCCTTGGTTGGGAGGCGTTTACCGAGACATTGTATCCTGCCGACGGGGGATTAGAGGGTCGCAATGATATGGCACTGAAACTTGTGGGGGGGTCTCATTTAATTGCAAACGCTAAGACAACTTACCGCTCCAAGAAGCCCGCTAAGAACCTGAAAATGCCTGGGGTCTACTATGTTGACTATCGCCTTGAGCGTATCAAGGAGGCGAACAACGAGACTTACGTCGAGCAGCATGAGGTAGCGGTTGCCCGTTACTGTGACCTGCCATCTAAGTTAGGACATAAGTTGAAT" . + . . . - "meffCFP" . + "Cyan FP (free); codon optimized using IDT tool \nmeffCFP" . "meffCFP" . . . - . + "meffCFP" . + . . . . - "Cyan FP (free); codon optimized using IDT tool " . "meffCFP_sequence" . - "atggcgctttcaaagcagagtttaccgagtgacatgaagttgatctaccacatggacgggaacgtgaatggtcactctttcgtcattaagggtgaaggcgagggaaaaccctatgaaggaacacatactatcaagctgcaagttgttgagggctcaccgttacctttcagcgccgacattctgtccacagtttttcaatatgggaaccgctgtttcactaagtatccgcctaatatcgtcgattattttaagaatagctgttctggtgggggctacaagtttggacgcagctttctttacgaagacggtgcggtctgtacggcgtcaggcgatattactctgtccgcagacaaaaagagctttgaacacaaatcgaaattcttaggcgtgaacttcccggctgacggtccggtgatgaagaaagagaccaccaactgggaaccatcgtgcgaaaaaatgactccgaatggcatgacactgatcggtgacgttacgggttttttgttgaaggaggacggaaagcgttacaaatgtcaatttcataccttccatgacgctaaagataagtccaaaaagatgccgatgcccgacttccactttgtccagcataaaattgagcgcaaggaccttcctggaagtatgcaaacatggcgtcttaccgagcacgcggcagcatgtaaaacttgttttacggag" . + "ATGGCGCTTTCAAAGCAGAGTTTACCGAGTGACATGAAGTTGATCTACCACATGGACGGGAACGTGAATGGTCACTCTTTCGTCATTAAGGGTGAAGGCGAGGGAAAACCCTATGAAGGAACACATACTATCAAGCTGCAAGTTGTTGAGGGCTCACCGTTACCTTTCAGCGCCGACATTCTGTCCACAGTTTTTCAATATGGGAACCGCTGTTTCACTAAGTATCCGCCTAATATCGTCGATTATTTTAAGAATAGCTGTTCTGGTGGGGGCTACAAGTTTGGACGCAGCTTTCTTTACGAAGACGGTGCGGTCTGTACGGCGTCAGGCGATATTACTCTGTCCGCAGACAAAAAGAGCTTTGAACACAAATCGAAATTCTTAGGCGTGAACTTCCCGGCTGACGGTCCGGTGATGAAGAAAGAGACCACCAACTGGGAACCATCGTGCGAAAAAATGACTCCGAATGGCATGACACTGATCGGTGACGTTACGGGTTTTTTGTTGAAGGAGGACGGAAAGCGTTACAAATGTCAATTTCATACCTTCCATGACGCTAAAGATAAGTCCAAAAAGATGCCGATGCCCGACTTCCACTTTGTCCAGCATAAAATTGAGCGCAAGGACCTTCCTGGAAGTATGCAAACATGGCGTCTTACCGAGCACGCGGCAGCATGTAAAACTTGTTTTACGGAG" . + . . . - "mmilCFP" . + "Blue FP (free); codon optimized using IDT tool \nmmilCFP" . "mmilCFP" . . . - . + "mmilCFP" . + . . . . - "Blue FP (free); codon optimized using IDT tool " . "mmilCFP_sequence" . - "atggctctgcctaaacaaatgaaactgacttatcacatggagggtactgtgaacggtcatttttttatcatcaagggcgaaggagggggagagccgtatgagggtactcatacgatcaagttacaggtggtagagggaagcccgttgcccttttcaccggatattctttccaccgtcttccaatacggcaaccgctgcttcactaaataccctcccaacatcgttgattacttcaaaaactcctgctcgggcggcggttatacttttggacgtagcttcctttatgaggacggagctgtctgtactgcttccggtgacattacgctgagcagcgacaaatcatcctttgagcacaaatctaaatttctgggagtaaactttcctgccgatggcccggtgatgaaaaaagaaaccactaattgggagccttcatgtgagaaaatgacacccaacgggatgaccttaatcggtgatgtgacggagttcctgttgaagaaggacggtaagcgttacaagtgccaattccacacattccacgacgcgaaggagaaaagccgcaatatgccgatgcccgatttccatttcgttcagcacgagattgaacgtaaagatttgccaggaccaatgcaaacatggcagttgaccgagcacgcagcagcctgtaagaactgtttcacagag" . + "ATGGCTCTGCCTAAACAAATGAAACTGACTTATCACATGGAGGGTACTGTGAACGGTCATTTTTTTATCATCAAGGGCGAAGGAGGGGGAGAGCCGTATGAGGGTACTCATACGATCAAGTTACAGGTGGTAGAGGGAAGCCCGTTGCCCTTTTCACCGGATATTCTTTCCACCGTCTTCCAATACGGCAACCGCTGCTTCACTAAATACCCTCCCAACATCGTTGATTACTTCAAAAACTCCTGCTCGGGCGGCGGTTATACTTTTGGACGTAGCTTCCTTTATGAGGACGGAGCTGTCTGTACTGCTTCCGGTGACATTACGCTGAGCAGCGACAAATCATCCTTTGAGCACAAATCTAAATTTCTGGGAGTAAACTTTCCTGCCGATGGCCCGGTGATGAAAAAAGAAACCACTAATTGGGAGCCTTCATGTGAGAAAATGACACCCAACGGGATGACCTTAATCGGTGATGTGACGGAGTTCCTGTTGAAGAAGGACGGTAAGCGTTACAAGTGCCAATTCCACACATTCCACGACGCGAAGGAGAAAAGCCGCAATATGCCGATGCCCGATTTCCATTTCGTTCAGCACGAGATTGAACGTAAAGATTTGCCAGGACCAATGCAAACATGGCAGTTGACCGAGCACGCAGCAGCCTGTAAGAACTGTTTCACAGAG" . + . . . + "pMB1 replicon, 100-300 copy" . "pSB1C3" . . - . + "pSB1C3" . + . . + . . - "pMB1 replicon, 100-300 copy" . "LmrA" . . - . + "LmrA" . . . . - "mCerulean3" . - "ATP07149_u46_1" . - . - . - . - . - . - . - "Cyan FP; codon optimized using IDT tool " . + "Cyan FP; codon optimized using IDT tool \nmCerulean3" . + "ATP07149_1" . + . + . + "mCerulean3" . + . + . + . + . + "ATP07149_1_sequence" . + "ATGGTGTCGAAAGGTGAAGAACTTTTTACAGGTGTGGTCCCCATTTTAGTCGAATTAGATGGGGATGTGAATGGTCACAAATTCTCGGTGTCTGGGGAGGGTGAAGGTGACGCGACCTACGGGAAGTTGACTCTGAAATTCATTTGCACTACGGGGAAGTTACCAGTGCCCTGGCCCACTCTGGTTACAACACTGTCATGGGGCGTCCAATGTTTTGCTCGTTATCCTGACCACATGAAACAGCATGACTTCTTCAAGAGCGCAATGCCGGAAGGCTATGTCCAAGAGCGTACTATCTTTTTCAAAGACGATGGGAACTACAAAACACGCGCAGAAGTGAAGTTTGAGGGAGATACCCTGGTTAATCGCATTGAATTGAAAGGTATCGACTTCAAGGAGGATGGTAATATCCTGGGGCACAAATTGGAGTACAACGCTATCCACGGCAATGTTTACATTACGGCAGACAAACAGAAAAACGGAATTAAGGCCAATTTCGGACTTAACTGCAACATCGAAGATGGGTCGGTACAACTGGCAGACCACTATCAGCAAAATACGCCTATTGGTGACGGTCCTGTCCTGTTACCGGACAATCATTATCTTTCCACTCAGTCGAAACTGAGTAAAGATCCGAACGAGAAGCGCGATCACATGGTATTATTAGAGTTCGTCACAGCCGCAGGTATTACGTTAGGGATGGATGAGCTTTACAAG" . + . + . + . diff --git a/SBOL3_simple_library4.xlsx b/SBOL3_simple_library4.xlsx index 269a7ad..022f8e4 100644 Binary files a/SBOL3_simple_library4.xlsx and b/SBOL3_simple_library4.xlsx differ diff --git a/SampleTemp3Output.nt b/SampleTemp3Output.nt new file mode 100644 index 0000000..4e31d60 --- /dev/null +++ b/SampleTemp3Output.nt @@ -0,0 +1,685 @@ + "Green FP (off patent)\nGFPmut3" . + "E0040" . + . + . + "GFPmut3" . + . + . + . + "E0040_sequence" . + "ATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAA" . + . + . + . + "Red FP (off patent)\nmRFP1" . + "E1010" . + . + . + "mRFP1" . + . + . + . + "E1010_sequence" . + "ATGGCTTCCTCCGAAGACGTTATCAAAGAGTTCATGCGTTTCAAAGTTCGTATGGAAGGTTCCGTTAACGGTCACGAGTTCGAAATCGAAGGTGAAGGTGAAGGTCGTCCGTACGAAGGTACCCAGACCGCTAAACTGAAAGTTACCAAAGGTGGTCCGCTGCCGTTCGCTTGGGACATCCTGTCCCCGCAGTTCCAGTACGGTTCCAAAGCTTACGTTAAACACCCGGCTGACATCCCGGACTACCTGAAACTGTCCTTCCCGGAAGGTTTCAAATGGGAACGTGTTATGAACTTCGAAGACGGTGGTGTTGTTACCGTTACCCAGGACTCCTCCCTGCAAGACGGTGAGTTCATCTACAAAGTTAAACTGCGTGGTACCAACTTCCCGTCCGACGGTCCGGTTATGCAGAAAAAAACCATGGGTTGGGAAGCTTCCACCGAACGTATGTACCCGGAAGACGGTGCTCTGAAAGGTGAAATCAAAATGCGTCTGAAACTGAAAGACGGTGGTCACTACGACGCTGAAGTTAAAACCACCTACATGGCTAAAAAACCGGTTCAGCTGCCGGGTGCTTACAAAACCGACATCAAACTGGACATCACCTCCCACAACGAAGACTACACCATCGTTGAACAGTACGAACGTGCTGAAGGTCGTCACTCCACCGGTGCTTAATAACGCTGATAGTGCTAGTGTAGATCGC" . + . + . + . + "positive control 2018 interlab" . + "I20270" . + . + . + "I20270" . + . + . + . + "I20270_sequence" . + "TTGATGGCTAGCTCAGTCCTAGGTACAATGCTAGCTACTAGAGTCACACAGGAAAGTACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "Red FP (off patent)\nmCherry" . + "J06504" . + . + . + "J06504" . + . + . + . + "J06504_sequence" . + "ATGGTGAGCAAGGGCGAGGAGGATAACATGGCCATCATCAAGGAGTTCATGCGCTTCAAGGTGCACATGGAGGGCTCCGTGAACGGCCACGAGTTCGAGATCGAGGGCGAGGGCGAGGGCCGCCCCTACGAGGGCACCCAGACCGCCAAGCTGAAGGTGACCAAGGGTGGCCCCCTGCCCTTCGCCTGGGACATCCTGTCCCCTCAGTTCATGTACGGCTCCAAGGCCTACGTGAAGCACCCCGCCGACATCCCCGACTACTTGAAGCTGTCCTTCCCCGAGGGCTTCAAGTGGGAGCGCGTGATGAACTTCGAGGACGGCGGCGTGGTGACCGTGACCCAGGACTCCTCCTTGCAGGACGGCGAGTTCATCTACAAGGTGAAGCTGCGCGGCACCAACTTCCCCTCCGACGGCCCCGTAATGCAGAAGAAGACCATGGGCTGGGAGGCCTCCTCCGAGCGGATGTACCCCGAGGACGGCGCCCTGAAGGGCGAGATCAAGCAGAGGCTGAAGCTGAAGGACGGCGGCCACTACGACGCTGAGGTCAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCCCACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGTACAAG" . + . + . + . + "5.5 SLM (high, but variable)" . + "J23101" . + . + . + "J23101" . + . + . + . + "J23101_sequence" . + "TTTACAGCTAGCTCAGTCCTAGGTATTATGCTAGC" . + . + . + . + "TBD SLM (expect 4.5)" . + "J23105" . + . + . + "J23105" . + . + . + . + "J23105_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGACTATGCTAGC" . + . + . + . + "J23106 2018 interlab" . + "J364001" . + . + . + "J364001" . + . + . + . + "J364001_sequence" . + "TTTACGGCTAGCTCAGTCCTAGGTATAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23117 2018 interlab" . + "J364002" . + . + . + "J364002" . + . + . + . + "J364002_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGATTGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23100 2018 interlab" . + "J364007" . + . + . + "J364007" . + . + . + . + "J364007_sequence" . + "TTGACGGCTAGCTCAGTCCTAGGTACAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23116 2018 interlab" . + "J364009" . + . + . + "J364009" . + . + . + . + "J364009_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGACTATGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "Blue FP\nTagBFP2" . + "K592100" . + . + . + "K592100" . + . + . + . + "K592100_sequence" . + "ATGAGCGAACTGATCAAAGAGAACATGCACATGAAGCTGTACATGGAAGGCACCGTTGACAACCACCACTTTAAGTGCACGTCTGAGGGTGAGGGTAAGCCGTACGAAGGCACCCAAACCATGCGTATCAAAGTTGTGGAGGGCGGTCCACTGCCGTTCGCTTTTGACATTCTGGCGACCAGCTTCCTGTACGGTTCCAAAACGTTCATTAACCATACTCAGGGCATTCCGGATTTCTTCAAACAGAGCTTTCCGGAAGGTTTCACCTGGGAGCGTGTCACCACGTATGAAGATGGTGGTGTGTTGACCGCCACCCAAGATACCTCCCTGCAAGATGGCTGTCTGATCTATAACGTGAAAATTCGTGGCGTCAACTTTACGAGCAATGGTCCGGTGATGCAGAAGAAAACCCTGGGTTGGGAGGCGTTTACGGAAACCCTGTATCCGGCCGATGGTGGCCTGGAGGGCCGTAACGACATGGCACTGAAGCTGGTTGGTGGCAGCCATTTGATCGCAAATATCAAGACGACGTACCGCAGCAAGAAACCGGCGAAAAATCTGAAGATGCCGGGTGTTTACTATGTCGACTACCGTCTGGAACGCATTAAAGAAGCGAATAATGAGACTTACGTGGAGCAGCACGAGGTTGCAGTCGCGCGCTATTGCGACTTGCCTAGCAAGCTGGGTCATAAACTGAAT" . + . + . + . + "negative control 2018 interlab" . + "R0040" . + . + . + "R0040" . + . + . + . + "R0040_sequence" . + "TCCCTATCAGTGATAGAGATTGACATCCCTATCAGTGATAGAGATACTGAGCAC" . + . + . + . + . + "VariableFeature1" . + . + . + . + . + . + . + . + . + . + . + . + "" . + "All_FPs" . + . + . + "All FPs" . + . + . + . + "LocalSubComponent1" . + "Part 1" . + . + . + . + "All_FPs_template" . + . + . + . + . + "" . + "B0015" . + . + . + "B0015" . + . + . + . + "B0015_sequence" . + "CCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "Moderate (?)" . + "B0032" . + . + . + "B0032" . + . + . + . + "B0032_sequence" . + "TCACACAGGAAAG" . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "SubComponent1" . + . + . + . + "SubComponent2" . + . + . + . + "SubComponent3" . + . + . + . + "5' UTR including B0032 RBS and BB scars (long and short)" . + "BB_B0032_BB" . + . + . + . + . + . + . + "BB-B0032-BB" . + . + . + . + "Designs for round 1 if iGEM 2021 calibration experimentation" . + "BasicParts" . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + "Fluorescence calibration basic parts" . + . + "BioBricks scar including ag (not before CDS)" . + "BioBricks_scar_long" . + . + . + "BioBricks_scar_long" . + . + . + . + "BioBricks_scar_long_sequence" . + "TACTAGAG" . + . + . + . + "BioBricks scar (short one, w/o ag, before CDS)" . + "BioBricks_scar_short" . + . + . + "BioBricks_scar_short" . + . + . + . + "BioBricks_scar_short_sequence" . + "TACTAG" . + . + . + . + "Designs for round 1 if iGEM 2021 calibration experimentation" . + "CompositeParts" . + . + . + . + . + . + . + . + "Fluorescence calibration devices" . + . + "Cyan FP; codon optimized using IDT tool \nECFP" . + "ECFP" . + . + . + "ECFP" . + . + . + . + . + "ECFP_sequence" . + "ATGGTTAGTAAAGGGGAAGAGTTGTTTACGGGCGTTGTTCCAATCTTGGTGGAGTTGGACGGGGACGTTAATGGGCACAAATTTTCGGTCTCTGGGGAAGGCGAGGGGGACGCCACGTATGGTAAGCTGACCTTGAAGTTCATTTGCACTACTGGGAAATTGCCGGTTCCCTGGCCTACGCTTGTTACCACGTTGACCTGGGGCGTACAATGTTTCTCGCGCTATCCTGACCACATGAAACAACATGATTTCTTTAAGTCAGCTATGCCTGAGGGCTACGTGCAGGAGCGCACTATCTTCTTCAAGGATGACGGGAATTACAAAACCCGTGCGGAGGTAAAGTTCGAGGGTGACACGCTTGTCAACCGCATCGAGTTGAAGGGCATTGATTTTAAGGAGGATGGCAACATTTTAGGACATAAATTAGAGTATAACTATATTTCGCATAATGTCTACATTACTGCTGACAAACAAAAGAACGGCATCAAGGCTAATTTCAAAATTCGCCACAACATCGAGGATGGATCGGTTCAGTTAGCAGATCATTACCAGCAAAACACGCCCATCGGTGACGGACCAGTTCTGTTACCTGACAACCACTATCTTTCTACACAGAGTGCTCTTAGCAAGGACCCTAACGAAAAACGTGACCACATGGTCCTGCTGGAGTTTGTGACAGCCGCAGGTATTACATTGGGGATGGACGAATTGTATAAG" . + . + . + . + . + "VariableFeature1" . + . + . + . + "FPs_small" . + . + . + "FPs small" . + . + . + . + "VariableFeature1" . + . + . + . + . + . + "VariableFeature2" . + . + . + . + "" . + "FPs_small_ins" . + . + . + . + "FPs small insert" . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "Constraint3" . + . + . + . + . + "Constraint4" . + . + . + . + . + "Constraint5" . + . + . + . + . + "LocalSubComponent1" . + "Part 2" . + . + . + . + "LocalSubComponent2" . + "Part 4" . + . + . + . + "SubComponent1" . + . + . + . + "SubComponent2" . + . + . + . + "SubComponent3" . + . + . + . + "SubComponent4" . + . + . + . + "FPs_small_ins_template" . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "LocalSubComponent1" . + "Inserted Construct" . + . + . + "SubComponent1" . + . + . + "FPs_small_template" . + . + . + . + . + . + . + . + "Final products desired for actual fabrication" . + "FinalProducts" . + . + . + . + "Final Products" . + . + "Linear DNA constructs to be fabricated" . + "LinearDNAProducts" . + . + . + . + "Linear DNA Products" . + . + . + "VariableFeature1" . + . + . + . + . + "" . + "Round_1_order" . + . + . + "Round 1 order" . + . + . + . + "LocalSubComponent1" . + "Part 1" . + . + . + . + "Round_1_order_template" . + . + . + . + . + "2 stop codons" . + "STOP" . + . + . + "STOP" . + . + . + . + "STOP_sequence" . + "TAATAA" . + . + . + . + "" . + "UNSX" . + . + . + "UNSX" . + . + . + . + "Constraint1" . + . + . + . + . + "SubComponent1" . + . + . + . + "SubComponent2" . + . + . + . + "" . + "UNSX_UP" . + . + . + . + . + "UNSX-UP" . + . + . + . + "UNSX_sequence" . + "CCAGGATACATAGATTACCACAACTCCGAGCCCTTCCACC" . + . + . + . + "consensus without runs of As and Ts -59 to -36" . + "UP_element_consensus" . + . + . + "UP element consensus" . + . + . + . + "UP_element_consensus_sequence" . + "TGAAATATATTTTCGAAAAGCCGC" . + . + . + . + . + "VariableFeature1" . + . + . + . + "_2018_Interlab" . + . + . + "2018 Interlab" . + . + . + . + "VariableFeature1" . + . + . + . + . + . + . + . + . + "Swapped R0040 for TwistNeg as the negative control, due to Twist minimum synthesis length" . + "_2018_Interlab_ins" . + . + . + "2018 Interlab insert" . + . + . + . + "LocalSubComponent1" . + "Part 1" . + . + . + . + "_2018_Interlab_ins_template" . + . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "LocalSubComponent1" . + "Inserted Construct" . + . + . + "SubComponent1" . + . + . + "_2018_Interlab_template" . + . + . + . + . + . + . + . + "Blue FP codon optimized" . + "mTagBFP2" . + . + . + "mTagBFP2" . + . + . + . + "mTagBFP2_sequence" . + "ATGGTATCGAAGGGTGAAGAGTTGATTAAGGAAAACATGCACATGAAGTTATACATGGAAGGGACCGTGGATAATCACCATTTCAAATGCACATCTGAAGGAGAGGGAAAACCTTACGAAGGGACCCAGACAATGCGTATCAAAGTGGTCGAGGGTGGCCCTTTACCATTCGCGTTCGACATCCTGGCGACCTCCTTTTTATATGGGAGCAAAACATTCATTAACCACACCCAGGGAATCCCGGATTTCTTCAAGCAGTCTTTCCCTGAAGGGTTTACGTGGGAGCGTGTGACAACTTATGAGGATGGCGGGGTTTTGACGGCTACGCAGGATACTTCGTTACAAGACGGTTGCTTAATTTACAATGTAAAGATTCGTGGAGTAAATTTTACATCAAACGGTCCGGTCATGCAAAAGAAAACCCTTGGTTGGGAGGCGTTTACCGAGACATTGTATCCTGCCGACGGGGGATTAGAGGGTCGCAATGATATGGCACTGAAACTTGTGGGGGGGTCTCATTTAATTGCAAACGCTAAGACAACTTACCGCTCCAAGAAGCCCGCTAAGAACCTGAAAATGCCTGGGGTCTACTATGTTGACTATCGCCTTGAGCGTATCAAGGAGGCGAACAACGAGACTTACGTCGAGCAGCATGAGGTAGCGGTTGCCCGTTACTGTGACCTGCCATCTAAGTTAGGACATAAGTTGAAT" . + . + . + . + "Cyan FP (free); codon optimized using IDT tool \nmeffCFP" . + "meffCFP" . + . + . + "meffCFP" . + . + . + . + . + "meffCFP_sequence" . + "ATGGCGCTTTCAAAGCAGAGTTTACCGAGTGACATGAAGTTGATCTACCACATGGACGGGAACGTGAATGGTCACTCTTTCGTCATTAAGGGTGAAGGCGAGGGAAAACCCTATGAAGGAACACATACTATCAAGCTGCAAGTTGTTGAGGGCTCACCGTTACCTTTCAGCGCCGACATTCTGTCCACAGTTTTTCAATATGGGAACCGCTGTTTCACTAAGTATCCGCCTAATATCGTCGATTATTTTAAGAATAGCTGTTCTGGTGGGGGCTACAAGTTTGGACGCAGCTTTCTTTACGAAGACGGTGCGGTCTGTACGGCGTCAGGCGATATTACTCTGTCCGCAGACAAAAAGAGCTTTGAACACAAATCGAAATTCTTAGGCGTGAACTTCCCGGCTGACGGTCCGGTGATGAAGAAAGAGACCACCAACTGGGAACCATCGTGCGAAAAAATGACTCCGAATGGCATGACACTGATCGGTGACGTTACGGGTTTTTTGTTGAAGGAGGACGGAAAGCGTTACAAATGTCAATTTCATACCTTCCATGACGCTAAAGATAAGTCCAAAAAGATGCCGATGCCCGACTTCCACTTTGTCCAGCATAAAATTGAGCGCAAGGACCTTCCTGGAAGTATGCAAACATGGCGTCTTACCGAGCACGCGGCAGCATGTAAAACTTGTTTTACGGAG" . + . + . + . + "Blue FP (free); codon optimized using IDT tool \nmmilCFP" . + "mmilCFP" . + . + . + "mmilCFP" . + . + . + . + . + "mmilCFP_sequence" . + "ATGGCTCTGCCTAAACAAATGAAACTGACTTATCACATGGAGGGTACTGTGAACGGTCATTTTTTTATCATCAAGGGCGAAGGAGGGGGAGAGCCGTATGAGGGTACTCATACGATCAAGTTACAGGTGGTAGAGGGAAGCCCGTTGCCCTTTTCACCGGATATTCTTTCCACCGTCTTCCAATACGGCAACCGCTGCTTCACTAAATACCCTCCCAACATCGTTGATTACTTCAAAAACTCCTGCTCGGGCGGCGGTTATACTTTTGGACGTAGCTTCCTTTATGAGGACGGAGCTGTCTGTACTGCTTCCGGTGACATTACGCTGAGCAGCGACAAATCATCCTTTGAGCACAAATCTAAATTTCTGGGAGTAAACTTTCCTGCCGATGGCCCGGTGATGAAAAAAGAAACCACTAATTGGGAGCCTTCATGTGAGAAAATGACACCCAACGGGATGACCTTAATCGGTGATGTGACGGAGTTCCTGTTGAAGAAGGACGGTAAGCGTTACAAGTGCCAATTCCACACATTCCACGACGCGAAGGAGAAAAGCCGCAATATGCCGATGCCCGATTTCCATTTCGTTCAGCACGAGATTGAACGTAAAGATTTGCCAGGACCAATGCAAACATGGCAGTTGACCGAGCACGCAGCAGCCTGTAAGAACTGTTTCACAGAG" . + . + . + . + "pMB1 replicon, 100-300 copy" . + "pSB1C3" . + . + "pSB1C3" . + . + . + . + . + "" . + "LmrA" . + . + "LmrA" . + . + . + . + "Cyan FP; codon optimized using IDT tool \nmCerulean3" . + "ATP07149_1" . + . + . + "mCerulean3" . + . + . + . + . + "ATP07149_1_sequence" . + "ATGGTGTCGAAAGGTGAAGAACTTTTTACAGGTGTGGTCCCCATTTTAGTCGAATTAGATGGGGATGTGAATGGTCACAAATTCTCGGTGTCTGGGGAGGGTGAAGGTGACGCGACCTACGGGAAGTTGACTCTGAAATTCATTTGCACTACGGGGAAGTTACCAGTGCCCTGGCCCACTCTGGTTACAACACTGTCATGGGGCGTCCAATGTTTTGCTCGTTATCCTGACCACATGAAACAGCATGACTTCTTCAAGAGCGCAATGCCGGAAGGCTATGTCCAAGAGCGTACTATCTTTTTCAAAGACGATGGGAACTACAAAACACGCGCAGAAGTGAAGTTTGAGGGAGATACCCTGGTTAATCGCATTGAATTGAAAGGTATCGACTTCAAGGAGGATGGTAATATCCTGGGGCACAAATTGGAGTACAACGCTATCCACGGCAATGTTTACATTACGGCAGACAAACAGAAAAACGGAATTAAGGCCAATTTCGGACTTAACTGCAACATCGAAGATGGGTCGGTACAACTGGCAGACCACTATCAGCAAAATACGCCTATTGGTGACGGTCCTGTCCTGTTACCGGACAATCATTATCTTTCCACTCAGTCGAAACTGAGTAAAGATCCGAACGAGAAGCGCGATCACATGGTATTATTAGAGTTCGTCACAGCCGCAGGTATTACGTTAGGGATGGATGAGCTTTACAAG" . + . + . + . diff --git a/excelutils/excel_sbol_utils/helpers.py b/excelutils/excel_sbol_utils/helpers.py index 254db55..090c002 100644 --- a/excelutils/excel_sbol_utils/helpers.py +++ b/excelutils/excel_sbol_utils/helpers.py @@ -2,6 +2,7 @@ import string import rdflib from openpyxl.worksheet import cell_range, worksheet +from openpyxl import load_workbook from pathlib import Path def check_name(nm_to_chck): @@ -22,6 +23,11 @@ def check_name(nm_to_chck): for ltr in nm_to_chck: if ord(ltr) == 32: nm_to_chck = nm_to_chck.replace(ltr, "_") + elif ord(ltr) == 45: + # Allow hyphens to be reinterpreted as underscores + nm_to_chck = nm_to_chck.replace(ltr, "_") + elif ord(ltr) == 46: + nm_to_chck = nm_to_chck.replace(ltr, "_") elif ord(ltr) > 122 or ord(ltr) < 48: # 122 is the highest decimal code number # for common latin ltrs or arabic numbers @@ -124,7 +130,7 @@ def read_variant_table(excel_file: Path) -> tuple[str, str, list[list]]: LAST_VARIANT_ROW = 35 print(f'Loading workbook "{excel_file}"') - work_book = openpyxl.load_workbook(excel_file, data_only=True) + work_book = load_workbook(excel_file, data_only=True) sheet = work_book[VARIANTS_SHEET] # First, get the library name @@ -133,7 +139,7 @@ def read_variant_table(excel_file: Path) -> tuple[str, str, list[list]]: # Then get the base sequence print('Extracting base sequence') - first_aa_column = get_column_number(FIRST_AMINO_ACID_COLUMN) + first_aa_column = col_to_num(FIRST_AMINO_ACID_COLUMN) last_aa_column = row_ends(sheet, ORIGINAL_AMINO_ACID_ROW, first_aa_column) # Get row from sheet and concatenate it into a string row_iterator = sheet.iter_rows(min_row=ORIGINAL_AMINO_ACID_ROW, max_row=ORIGINAL_AMINO_ACID_ROW, diff --git a/excelutils/excel_sbol_utils/library2.py b/excelutils/excel_sbol_utils/library2.py index ade6b51..a6eee48 100644 --- a/excelutils/excel_sbol_utils/library2.py +++ b/excelutils/excel_sbol_utils/library2.py @@ -117,8 +117,7 @@ def subcomponents(rowobj): template.assemblePrimaryStructure(comp_list) #template.compile(assembly_method=None) - f#or comp in non_var_comps: - + #or comp in non_var_comps: rowobj.obj.masterTemplate = template for var in variant_comps: diff --git a/excelutils/excel_sbol_utils/library3.py b/excelutils/excel_sbol_utils/library3.py index 7ef244b..9234ff0 100644 --- a/excelutils/excel_sbol_utils/library3.py +++ b/excelutils/excel_sbol_utils/library3.py @@ -3,7 +3,7 @@ import logging import sbol3 import warnings -import excel_sbol_utils.helpers as helpers +import helpers as helpers def objectType(rowobj): @@ -34,6 +34,7 @@ def addToDescription(rowobj): 'different from': sbol3.SBOL_DIFFERENT_FROM, 'same orientation as': sbol3.SBOL_SAME_ORIENTATION_AS, 'different orientation from': sbol3.SBOL_SAME_ORIENTATION_AS} + def make_constraint(constraint, part_list, template): m = constraint_pattern.match(constraint) if not m: @@ -63,16 +64,58 @@ def subcomponents(rowobj): #UPDATE TO WORK WITH CELL DICT, ALLOW CONSTRAINTS if 'backbone' in rowobj.col_cell_dict: - temp = sbol3.Component(identity=f'{rowobj.obj.displayId}_ins_template', types=sbol3.SBO_DNA, name=f'{rowobj.obj.displayId}_ins_template') - newobj = sbol3.CombinatorialDerivation(identity=f'{rowobj.obj.displayId}_ins', template=temp, name=f'{rowobj.obj.displayId}_ins', strategy=sbol3.SBOL_ENUMERATE) - rowobj.doc.add(temp) - rowobj.doc.add(newobj) - rowobj.obj_dict[temp.display_id] = {'uri': temp.type_uri, 'object': temp, - 'displayId': temp.display_id} - backbones = list(rowobj.col_cell_dict['backbone'].values()) - back = True - oldobj = rowobj.obj - rowobj.obj = newobj + # If this row has a backbone, create a new combinatorial derivation + + # Determine if there are multiple comps per part + multiple = False + + for sub in rowobj.col_cell_dict['subcomp']: + if "," in rowobj.col_cell_dict['subcomp'][sub]: + multiple = True + break + else: + multiple = False + + # 1. If there are multiple comps per part, create ins_templat + + if multiple: + temp = sbol3.Component(identity=f'{rowobj.obj.displayId}_ins_template', types=sbol3.SBO_DNA) + + newobj = sbol3.CombinatorialDerivation(identity=f'{rowobj.obj.displayId}_ins', template=temp, name=f'{rowobj.obj.name} insert', \ + strategy=sbol3.SBOL_ENUMERATE, description=rowobj.obj.description) + + rowobj.obj.description = None + + rowobj.doc.add(temp) # Add the template + rowobj.doc.add(newobj) # Add the combdev _ins to the document connected to the template + + rowobj.obj_dict[temp.display_id] = {'uri': temp.type_uri, 'object': temp, + 'displayId': temp.display_id} + backbones = list(rowobj.col_cell_dict['backbone'].values()) + backbones = backbones[0].split(", ") + + back = True + oldobj = rowobj.obj + rowobj.obj = newobj + else: + # 2. Otherwise, create _ins without the template + + # Create new component _ins without the template + newobj = sbol3.Component(identity=f'{rowobj.obj.displayId}_ins', name=f'{rowobj.obj.name} insert', \ + description=rowobj.obj.description, types=sbol3.SBO_DNA, roles=sbol3.SO_ENGINEERED_REGION) + + # Set description to None + rowobj.obj.description = None + + rowobj.doc.add(newobj) + + backbones = list(rowobj.col_cell_dict['backbone'].values()) + backbones = backbones[0].split(", ") + + + back = True + oldobj = rowobj.obj + rowobj.obj = newobj else: back = False @@ -89,19 +132,40 @@ def subcomponents(rowobj): #UPDATE TO WORK WITH CELL DICT, ALLOW CONSTRAINTS variant_comps = [] comp_ind = 0 + # Need to update for multiple backbones, as well as remove hardcoding + # Check SBOL Utilities for reasoning for multiple backbones + if back: + # Currently this code creates a template for the insertion of the backbone into the main combinatorialderivation tempObj = rowobj.obj_dict[f'{oldobj.display_id}_template']['object'] - sub = sbol3.LocalSubComponent(types=sbol3.SBO_DNA, name="Inserted construct") + + sub = sbol3.LocalSubComponent(types=sbol3.SBO_DNA, name="Inserted Construct") tempObj.features.append(sub) backbone_sub = sbol3.VariableFeature(cardinality=sbol3.SBOL_ONE, variable=sub, variant_derivations=rowobj.obj) oldobj.variable_features.append(backbone_sub) - subComp = sbol3.SubComponent(instance_of=rowobj.obj_dict[backbones[0]]['object']) - rowobj.obj_dict[f'{oldobj.display_id}_template']['object'].features.append(subComp) - constr1 = sbol3.Constraint(restriction=sbol3.SBOL_MEETS, object=subComp, subject=sub) - constr2 = sbol3.Constraint(restriction=sbol3.SBOL_MEETS, object=sub, subject=subComp) - rowobj.obj_dict[f'{oldobj.display_id}_template']['object'].constraints.append(constr1) - rowobj.obj_dict[f'{oldobj.display_id}_template']['object'].constraints.append(constr2) + if len(backbones) == 1: + + subComp = sbol3.SubComponent(instance_of=rowobj.obj_dict[backbones[0]]['object']) + rowobj.obj_dict[f'{oldobj.display_id}_template']['object'].features.append(subComp) + constr1 = sbol3.Constraint(restriction=sbol3.SBOL_MEETS, object=subComp, subject=sub) + constr2 = sbol3.Constraint(restriction=sbol3.SBOL_MEETS, object=sub, subject=subComp) + rowobj.obj_dict[f'{oldobj.display_id}_template']['object'].constraints.append(constr1) + rowobj.obj_dict[f'{oldobj.display_id}_template']['object'].constraints.append(constr2) + else: + + newLocalSub = sbol3.LocalSubComponent(name="Vector", types=sbol3.SBO_DNA) + tempObj.features.append(newLocalSub) + + newVarFeature = sbol3.VariableFeature(variable=newLocalSub, variants=(rowobj.obj_dict[i]['object'] for i in backbones), cardinality=sbol3.SBOL_ONE) + oldobj.variable_features.append(newVarFeature) + + constr1 = sbol3.Constraint(restriction=sbol3.SBOL_MEETS, object=newLocalSub, subject=sub) + constr2 = sbol3.Constraint(restriction=sbol3.SBOL_MEETS, object=sub, subject=newLocalSub) + + rowobj.obj_dict[f'{oldobj.display_id}_template']['object'].constraints.append(constr1) + rowobj.obj_dict[f'{oldobj.display_id}_template']['object'].constraints.append(constr2) + else: temp = rowobj.obj_dict[f'{rowobj.obj.display_id}_template']['object'] @@ -124,7 +188,7 @@ def subcomponents(rowobj): #UPDATE TO WORK WITH CELL DICT, ALLOW CONSTRAINTS comp_ind += 1 else: - tempSub = sbol3.SubComponent(name=f'Part {comp_ind}', instance_of=f'{rowobj.obj_dict[comp]["uri"]}', orientation=sbol3.SBOL_INLINE) + tempSub = sbol3.SubComponent(name=f'Part {comp_ind + 1}', instance_of=f'{rowobj.obj_dict[comp]["uri"]}', orientation=sbol3.SBOL_INLINE) temp.features.append(tempSub) variant_comps.append(tempSub) if comp_ind != 0: @@ -202,6 +266,34 @@ def dataSource(rowobj): rowobj.obj.update_all_dependents(id_map) # this function doesn't yet do everything it should rowobj.data_source_id_to_update[old_id] = new_identity + if pref == 'URL for GenBank file' or pref == 'URL for FASTA file': + # Namespace is everything except the last part of the url + # Loop backward through the value until a '/' is found + # Everything before the '/' is the namespace + old_val = val + + # Loop through the string backwards + for i in range(len(val) - 1, 0, -1): + if val[i] == '/': + # Everything before the '/' is the namespace + ns = val[:i] + + # Everything after the '/' is the display id + val = val[i+1:len(val) - 3] + + break + old_id = rowobj.obj.identity + rowobj.doc.change_object_namespace([rowobj.obj], ns) + new_id = rowobj.obj.identity + rowobj.data_source_id_to_update[old_id] = new_id + rowobj.obj.derived_from = [old_val] + if val != rowobj.obj.display_id: + new_identity = str(rowobj.obj.identity).replace(rowobj.obj.display_id, helpers.check_name(val)) + id_map = {rowobj.obj.identity:new_identity} + rowobj.obj.set_identity(new_identity) + rowobj.obj.update_all_dependents(id_map) # this function doesn't yet do everything it should + rowobj.data_source_id_to_update[old_id] = new_identity + def sequence(rowobj): for col in rowobj.col_cell_dict.keys(): val = rowobj.col_cell_dict[col] @@ -218,13 +310,13 @@ def sequence(rowobj): # removes spaces, enters, and makes all lower case val = "".join(val.split()) - val = val.replace(u"\ufeff", "").lower() + val = val.replace(u"\ufeff", "").upper() # create sequence object - sequence = sbol3.Sequence(f"{rowobj.obj.displayId}_sequence", - elements=val) - if rowobj.obj.name is not None: - sequence.name = f"{rowobj.obj.name} Sequence" + sequence = sbol3.Sequence(f"{rowobj.obj.namespace}/{rowobj.obj.display_id}_sequence", + elements=val, encoding=sbol3.IUPAC_DNA_ENCODING, namespace=rowobj.obj.namespace) + # if rowobj.obj.name is not None: + # sequence.name = f"{rowobj.obj.name} Sequence" rowobj.doc.add(sequence) @@ -239,6 +331,11 @@ def sequence(rowobj): def circular(rowobj): # NOT IMPLEMENTED # if false add to linear collection if true add to types + + tempObj = rowobj.obj + if rowobj.col_cell_dict['Circular'] not in tempObj.types: + tempObj.types.append(rowobj.col_cell_dict['Circular']) + pass def finalProduct(rowobj): @@ -253,8 +350,9 @@ def finalProduct(rowobj): sbol_objs = doc.objects sbol_objs_names = [x.name for x in sbol_objs] - if 'FinalProducts' not in sbol_objs_names: - colec = sbol3.Collection('FinalProducts', name='FinalProducts') + if 'Final Products' not in sbol_objs_names: + colec = sbol3.Collection('FinalProducts', name='Final Products') + colec.description = 'Final products desired for actual fabrication' sbol_objs = doc.objects sbol_objs_names = [x.name for x in sbol_objs] @@ -262,11 +360,12 @@ def finalProduct(rowobj): doc.add(colec) colec.members.append(rowobj.obj_uri) else: - colec = sbol_objs[sbol_objs_names.index('FinalProducts')] + colec = sbol_objs[sbol_objs_names.index('Final Products')] colec.members.append(rowobj.obj_uri) - if 'LinearDNAProducts' not in sbol_objs_names: - colec = sbol3.Collection('LinearDNAProducts', name='LinearDNAProducts') + if 'Linear DNA Products' not in sbol_objs_names: + colec = sbol3.Collection('LinearDNAProducts', name='Linear DNA Products') + colec.description = 'Linear DNA constructs to be fabricated' sbol_objs = doc.objects sbol_objs_names = [x.name for x in sbol_objs] @@ -274,7 +373,7 @@ def finalProduct(rowobj): doc.add(colec) colec.members.append(rowobj.obj) else: - colec = sbol_objs[sbol_objs_names.index('LinearDNAProducts')] + colec = sbol_objs[sbol_objs_names.index('Linear DNA Products')] colec.members.append(rowobj.obj) diff --git a/excelutils/excel_sbol_utils/temp.py b/excelutils/excel_sbol_utils/temp.py new file mode 100644 index 0000000..046cf7a --- /dev/null +++ b/excelutils/excel_sbol_utils/temp.py @@ -0,0 +1,21 @@ +import sbol2 +import sbol3 +import excel_sbol_utils.library2 as l2 +import excel_sbol_utils.library3 as l3 +import excel_sbol_utils.helpers as help +import excel2sbol.comp_column_functions2 as ccf +import excel2sbol.converter as conv +import os + +# Build a barebones combinatorial derivation object +# Attempt to build subcomponent on it + +obj = sbol2.combinatorialderivation() + +doc = sbol2.Document() +obj_dict = {} +sheet = 'Composite Parts' + + + + diff --git a/simple_library.nt b/simple_library.nt new file mode 100644 index 0000000..4e31d60 --- /dev/null +++ b/simple_library.nt @@ -0,0 +1,685 @@ + "Green FP (off patent)\nGFPmut3" . + "E0040" . + . + . + "GFPmut3" . + . + . + . + "E0040_sequence" . + "ATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAA" . + . + . + . + "Red FP (off patent)\nmRFP1" . + "E1010" . + . + . + "mRFP1" . + . + . + . + "E1010_sequence" . + "ATGGCTTCCTCCGAAGACGTTATCAAAGAGTTCATGCGTTTCAAAGTTCGTATGGAAGGTTCCGTTAACGGTCACGAGTTCGAAATCGAAGGTGAAGGTGAAGGTCGTCCGTACGAAGGTACCCAGACCGCTAAACTGAAAGTTACCAAAGGTGGTCCGCTGCCGTTCGCTTGGGACATCCTGTCCCCGCAGTTCCAGTACGGTTCCAAAGCTTACGTTAAACACCCGGCTGACATCCCGGACTACCTGAAACTGTCCTTCCCGGAAGGTTTCAAATGGGAACGTGTTATGAACTTCGAAGACGGTGGTGTTGTTACCGTTACCCAGGACTCCTCCCTGCAAGACGGTGAGTTCATCTACAAAGTTAAACTGCGTGGTACCAACTTCCCGTCCGACGGTCCGGTTATGCAGAAAAAAACCATGGGTTGGGAAGCTTCCACCGAACGTATGTACCCGGAAGACGGTGCTCTGAAAGGTGAAATCAAAATGCGTCTGAAACTGAAAGACGGTGGTCACTACGACGCTGAAGTTAAAACCACCTACATGGCTAAAAAACCGGTTCAGCTGCCGGGTGCTTACAAAACCGACATCAAACTGGACATCACCTCCCACAACGAAGACTACACCATCGTTGAACAGTACGAACGTGCTGAAGGTCGTCACTCCACCGGTGCTTAATAACGCTGATAGTGCTAGTGTAGATCGC" . + . + . + . + "positive control 2018 interlab" . + "I20270" . + . + . + "I20270" . + . + . + . + "I20270_sequence" . + "TTGATGGCTAGCTCAGTCCTAGGTACAATGCTAGCTACTAGAGTCACACAGGAAAGTACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "Red FP (off patent)\nmCherry" . + "J06504" . + . + . + "J06504" . + . + . + . + "J06504_sequence" . + "ATGGTGAGCAAGGGCGAGGAGGATAACATGGCCATCATCAAGGAGTTCATGCGCTTCAAGGTGCACATGGAGGGCTCCGTGAACGGCCACGAGTTCGAGATCGAGGGCGAGGGCGAGGGCCGCCCCTACGAGGGCACCCAGACCGCCAAGCTGAAGGTGACCAAGGGTGGCCCCCTGCCCTTCGCCTGGGACATCCTGTCCCCTCAGTTCATGTACGGCTCCAAGGCCTACGTGAAGCACCCCGCCGACATCCCCGACTACTTGAAGCTGTCCTTCCCCGAGGGCTTCAAGTGGGAGCGCGTGATGAACTTCGAGGACGGCGGCGTGGTGACCGTGACCCAGGACTCCTCCTTGCAGGACGGCGAGTTCATCTACAAGGTGAAGCTGCGCGGCACCAACTTCCCCTCCGACGGCCCCGTAATGCAGAAGAAGACCATGGGCTGGGAGGCCTCCTCCGAGCGGATGTACCCCGAGGACGGCGCCCTGAAGGGCGAGATCAAGCAGAGGCTGAAGCTGAAGGACGGCGGCCACTACGACGCTGAGGTCAAGACCACCTACAAGGCCAAGAAGCCCGTGCAGCTGCCCGGCGCCTACAACGTCAACATCAAGTTGGACATCACCTCCCACAACGAGGACTACACCATCGTGGAACAGTACGAACGCGCCGAGGGCCGCCACTCCACCGGCGGCATGGACGAGCTGTACAAG" . + . + . + . + "5.5 SLM (high, but variable)" . + "J23101" . + . + . + "J23101" . + . + . + . + "J23101_sequence" . + "TTTACAGCTAGCTCAGTCCTAGGTATTATGCTAGC" . + . + . + . + "TBD SLM (expect 4.5)" . + "J23105" . + . + . + "J23105" . + . + . + . + "J23105_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGACTATGCTAGC" . + . + . + . + "J23106 2018 interlab" . + "J364001" . + . + . + "J364001" . + . + . + . + "J364001_sequence" . + "TTTACGGCTAGCTCAGTCCTAGGTATAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23117 2018 interlab" . + "J364002" . + . + . + "J364002" . + . + . + . + "J364002_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGATTGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23100 2018 interlab" . + "J364007" . + . + . + "J364007" . + . + . + . + "J364007_sequence" . + "TTGACGGCTAGCTCAGTCCTAGGTACAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23116 2018 interlab" . + "J364009" . + . + . + "J364009" . + . + . + . + "J364009_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGACTATGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "Blue FP\nTagBFP2" . + "K592100" . + . + . + "K592100" . + . + . + . + "K592100_sequence" . + "ATGAGCGAACTGATCAAAGAGAACATGCACATGAAGCTGTACATGGAAGGCACCGTTGACAACCACCACTTTAAGTGCACGTCTGAGGGTGAGGGTAAGCCGTACGAAGGCACCCAAACCATGCGTATCAAAGTTGTGGAGGGCGGTCCACTGCCGTTCGCTTTTGACATTCTGGCGACCAGCTTCCTGTACGGTTCCAAAACGTTCATTAACCATACTCAGGGCATTCCGGATTTCTTCAAACAGAGCTTTCCGGAAGGTTTCACCTGGGAGCGTGTCACCACGTATGAAGATGGTGGTGTGTTGACCGCCACCCAAGATACCTCCCTGCAAGATGGCTGTCTGATCTATAACGTGAAAATTCGTGGCGTCAACTTTACGAGCAATGGTCCGGTGATGCAGAAGAAAACCCTGGGTTGGGAGGCGTTTACGGAAACCCTGTATCCGGCCGATGGTGGCCTGGAGGGCCGTAACGACATGGCACTGAAGCTGGTTGGTGGCAGCCATTTGATCGCAAATATCAAGACGACGTACCGCAGCAAGAAACCGGCGAAAAATCTGAAGATGCCGGGTGTTTACTATGTCGACTACCGTCTGGAACGCATTAAAGAAGCGAATAATGAGACTTACGTGGAGCAGCACGAGGTTGCAGTCGCGCGCTATTGCGACTTGCCTAGCAAGCTGGGTCATAAACTGAAT" . + . + . + . + "negative control 2018 interlab" . + "R0040" . + . + . + "R0040" . + . + . + . + "R0040_sequence" . + "TCCCTATCAGTGATAGAGATTGACATCCCTATCAGTGATAGAGATACTGAGCAC" . + . + . + . + . + "VariableFeature1" . + . + . + . + . + . + . + . + . + . + . + . + "" . + "All_FPs" . + . + . + "All FPs" . + . + . + . + "LocalSubComponent1" . + "Part 1" . + . + . + . + "All_FPs_template" . + . + . + . + . + "" . + "B0015" . + . + . + "B0015" . + . + . + . + "B0015_sequence" . + "CCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "Moderate (?)" . + "B0032" . + . + . + "B0032" . + . + . + . + "B0032_sequence" . + "TCACACAGGAAAG" . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "SubComponent1" . + . + . + . + "SubComponent2" . + . + . + . + "SubComponent3" . + . + . + . + "5' UTR including B0032 RBS and BB scars (long and short)" . + "BB_B0032_BB" . + . + . + . + . + . + . + "BB-B0032-BB" . + . + . + . + "Designs for round 1 if iGEM 2021 calibration experimentation" . + "BasicParts" . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + "Fluorescence calibration basic parts" . + . + "BioBricks scar including ag (not before CDS)" . + "BioBricks_scar_long" . + . + . + "BioBricks_scar_long" . + . + . + . + "BioBricks_scar_long_sequence" . + "TACTAGAG" . + . + . + . + "BioBricks scar (short one, w/o ag, before CDS)" . + "BioBricks_scar_short" . + . + . + "BioBricks_scar_short" . + . + . + . + "BioBricks_scar_short_sequence" . + "TACTAG" . + . + . + . + "Designs for round 1 if iGEM 2021 calibration experimentation" . + "CompositeParts" . + . + . + . + . + . + . + . + "Fluorescence calibration devices" . + . + "Cyan FP; codon optimized using IDT tool \nECFP" . + "ECFP" . + . + . + "ECFP" . + . + . + . + . + "ECFP_sequence" . + "ATGGTTAGTAAAGGGGAAGAGTTGTTTACGGGCGTTGTTCCAATCTTGGTGGAGTTGGACGGGGACGTTAATGGGCACAAATTTTCGGTCTCTGGGGAAGGCGAGGGGGACGCCACGTATGGTAAGCTGACCTTGAAGTTCATTTGCACTACTGGGAAATTGCCGGTTCCCTGGCCTACGCTTGTTACCACGTTGACCTGGGGCGTACAATGTTTCTCGCGCTATCCTGACCACATGAAACAACATGATTTCTTTAAGTCAGCTATGCCTGAGGGCTACGTGCAGGAGCGCACTATCTTCTTCAAGGATGACGGGAATTACAAAACCCGTGCGGAGGTAAAGTTCGAGGGTGACACGCTTGTCAACCGCATCGAGTTGAAGGGCATTGATTTTAAGGAGGATGGCAACATTTTAGGACATAAATTAGAGTATAACTATATTTCGCATAATGTCTACATTACTGCTGACAAACAAAAGAACGGCATCAAGGCTAATTTCAAAATTCGCCACAACATCGAGGATGGATCGGTTCAGTTAGCAGATCATTACCAGCAAAACACGCCCATCGGTGACGGACCAGTTCTGTTACCTGACAACCACTATCTTTCTACACAGAGTGCTCTTAGCAAGGACCCTAACGAAAAACGTGACCACATGGTCCTGCTGGAGTTTGTGACAGCCGCAGGTATTACATTGGGGATGGACGAATTGTATAAG" . + . + . + . + . + "VariableFeature1" . + . + . + . + "FPs_small" . + . + . + "FPs small" . + . + . + . + "VariableFeature1" . + . + . + . + . + . + "VariableFeature2" . + . + . + . + "" . + "FPs_small_ins" . + . + . + . + "FPs small insert" . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "Constraint3" . + . + . + . + . + "Constraint4" . + . + . + . + . + "Constraint5" . + . + . + . + . + "LocalSubComponent1" . + "Part 2" . + . + . + . + "LocalSubComponent2" . + "Part 4" . + . + . + . + "SubComponent1" . + . + . + . + "SubComponent2" . + . + . + . + "SubComponent3" . + . + . + . + "SubComponent4" . + . + . + . + "FPs_small_ins_template" . + . + . + . + . + . + . + . + . + . + . + . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "LocalSubComponent1" . + "Inserted Construct" . + . + . + "SubComponent1" . + . + . + "FPs_small_template" . + . + . + . + . + . + . + . + "Final products desired for actual fabrication" . + "FinalProducts" . + . + . + . + "Final Products" . + . + "Linear DNA constructs to be fabricated" . + "LinearDNAProducts" . + . + . + . + "Linear DNA Products" . + . + . + "VariableFeature1" . + . + . + . + . + "" . + "Round_1_order" . + . + . + "Round 1 order" . + . + . + . + "LocalSubComponent1" . + "Part 1" . + . + . + . + "Round_1_order_template" . + . + . + . + . + "2 stop codons" . + "STOP" . + . + . + "STOP" . + . + . + . + "STOP_sequence" . + "TAATAA" . + . + . + . + "" . + "UNSX" . + . + . + "UNSX" . + . + . + . + "Constraint1" . + . + . + . + . + "SubComponent1" . + . + . + . + "SubComponent2" . + . + . + . + "" . + "UNSX_UP" . + . + . + . + . + "UNSX-UP" . + . + . + . + "UNSX_sequence" . + "CCAGGATACATAGATTACCACAACTCCGAGCCCTTCCACC" . + . + . + . + "consensus without runs of As and Ts -59 to -36" . + "UP_element_consensus" . + . + . + "UP element consensus" . + . + . + . + "UP_element_consensus_sequence" . + "TGAAATATATTTTCGAAAAGCCGC" . + . + . + . + . + "VariableFeature1" . + . + . + . + "_2018_Interlab" . + . + . + "2018 Interlab" . + . + . + . + "VariableFeature1" . + . + . + . + . + . + . + . + . + "Swapped R0040 for TwistNeg as the negative control, due to Twist minimum synthesis length" . + "_2018_Interlab_ins" . + . + . + "2018 Interlab insert" . + . + . + . + "LocalSubComponent1" . + "Part 1" . + . + . + . + "_2018_Interlab_ins_template" . + . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "LocalSubComponent1" . + "Inserted Construct" . + . + . + "SubComponent1" . + . + . + "_2018_Interlab_template" . + . + . + . + . + . + . + . + "Blue FP codon optimized" . + "mTagBFP2" . + . + . + "mTagBFP2" . + . + . + . + "mTagBFP2_sequence" . + "ATGGTATCGAAGGGTGAAGAGTTGATTAAGGAAAACATGCACATGAAGTTATACATGGAAGGGACCGTGGATAATCACCATTTCAAATGCACATCTGAAGGAGAGGGAAAACCTTACGAAGGGACCCAGACAATGCGTATCAAAGTGGTCGAGGGTGGCCCTTTACCATTCGCGTTCGACATCCTGGCGACCTCCTTTTTATATGGGAGCAAAACATTCATTAACCACACCCAGGGAATCCCGGATTTCTTCAAGCAGTCTTTCCCTGAAGGGTTTACGTGGGAGCGTGTGACAACTTATGAGGATGGCGGGGTTTTGACGGCTACGCAGGATACTTCGTTACAAGACGGTTGCTTAATTTACAATGTAAAGATTCGTGGAGTAAATTTTACATCAAACGGTCCGGTCATGCAAAAGAAAACCCTTGGTTGGGAGGCGTTTACCGAGACATTGTATCCTGCCGACGGGGGATTAGAGGGTCGCAATGATATGGCACTGAAACTTGTGGGGGGGTCTCATTTAATTGCAAACGCTAAGACAACTTACCGCTCCAAGAAGCCCGCTAAGAACCTGAAAATGCCTGGGGTCTACTATGTTGACTATCGCCTTGAGCGTATCAAGGAGGCGAACAACGAGACTTACGTCGAGCAGCATGAGGTAGCGGTTGCCCGTTACTGTGACCTGCCATCTAAGTTAGGACATAAGTTGAAT" . + . + . + . + "Cyan FP (free); codon optimized using IDT tool \nmeffCFP" . + "meffCFP" . + . + . + "meffCFP" . + . + . + . + . + "meffCFP_sequence" . + "ATGGCGCTTTCAAAGCAGAGTTTACCGAGTGACATGAAGTTGATCTACCACATGGACGGGAACGTGAATGGTCACTCTTTCGTCATTAAGGGTGAAGGCGAGGGAAAACCCTATGAAGGAACACATACTATCAAGCTGCAAGTTGTTGAGGGCTCACCGTTACCTTTCAGCGCCGACATTCTGTCCACAGTTTTTCAATATGGGAACCGCTGTTTCACTAAGTATCCGCCTAATATCGTCGATTATTTTAAGAATAGCTGTTCTGGTGGGGGCTACAAGTTTGGACGCAGCTTTCTTTACGAAGACGGTGCGGTCTGTACGGCGTCAGGCGATATTACTCTGTCCGCAGACAAAAAGAGCTTTGAACACAAATCGAAATTCTTAGGCGTGAACTTCCCGGCTGACGGTCCGGTGATGAAGAAAGAGACCACCAACTGGGAACCATCGTGCGAAAAAATGACTCCGAATGGCATGACACTGATCGGTGACGTTACGGGTTTTTTGTTGAAGGAGGACGGAAAGCGTTACAAATGTCAATTTCATACCTTCCATGACGCTAAAGATAAGTCCAAAAAGATGCCGATGCCCGACTTCCACTTTGTCCAGCATAAAATTGAGCGCAAGGACCTTCCTGGAAGTATGCAAACATGGCGTCTTACCGAGCACGCGGCAGCATGTAAAACTTGTTTTACGGAG" . + . + . + . + "Blue FP (free); codon optimized using IDT tool \nmmilCFP" . + "mmilCFP" . + . + . + "mmilCFP" . + . + . + . + . + "mmilCFP_sequence" . + "ATGGCTCTGCCTAAACAAATGAAACTGACTTATCACATGGAGGGTACTGTGAACGGTCATTTTTTTATCATCAAGGGCGAAGGAGGGGGAGAGCCGTATGAGGGTACTCATACGATCAAGTTACAGGTGGTAGAGGGAAGCCCGTTGCCCTTTTCACCGGATATTCTTTCCACCGTCTTCCAATACGGCAACCGCTGCTTCACTAAATACCCTCCCAACATCGTTGATTACTTCAAAAACTCCTGCTCGGGCGGCGGTTATACTTTTGGACGTAGCTTCCTTTATGAGGACGGAGCTGTCTGTACTGCTTCCGGTGACATTACGCTGAGCAGCGACAAATCATCCTTTGAGCACAAATCTAAATTTCTGGGAGTAAACTTTCCTGCCGATGGCCCGGTGATGAAAAAAGAAACCACTAATTGGGAGCCTTCATGTGAGAAAATGACACCCAACGGGATGACCTTAATCGGTGATGTGACGGAGTTCCTGTTGAAGAAGGACGGTAAGCGTTACAAGTGCCAATTCCACACATTCCACGACGCGAAGGAGAAAAGCCGCAATATGCCGATGCCCGATTTCCATTTCGTTCAGCACGAGATTGAACGTAAAGATTTGCCAGGACCAATGCAAACATGGCAGTTGACCGAGCACGCAGCAGCCTGTAAGAACTGTTTCACAGAG" . + . + . + . + "pMB1 replicon, 100-300 copy" . + "pSB1C3" . + . + "pSB1C3" . + . + . + . + . + "" . + "LmrA" . + . + "LmrA" . + . + . + . + "Cyan FP; codon optimized using IDT tool \nmCerulean3" . + "ATP07149_1" . + . + . + "mCerulean3" . + . + . + . + . + "ATP07149_1_sequence" . + "ATGGTGTCGAAAGGTGAAGAACTTTTTACAGGTGTGGTCCCCATTTTAGTCGAATTAGATGGGGATGTGAATGGTCACAAATTCTCGGTGTCTGGGGAGGGTGAAGGTGACGCGACCTACGGGAAGTTGACTCTGAAATTCATTTGCACTACGGGGAAGTTACCAGTGCCCTGGCCCACTCTGGTTACAACACTGTCATGGGGCGTCCAATGTTTTGCTCGTTATCCTGACCACATGAAACAGCATGACTTCTTCAAGAGCGCAATGCCGGAAGGCTATGTCCAAGAGCGTACTATCTTTTTCAAAGACGATGGGAACTACAAAACACGCGCAGAAGTGAAGTTTGAGGGAGATACCCTGGTTAATCGCATTGAATTGAAAGGTATCGACTTCAAGGAGGATGGTAATATCCTGGGGCACAAATTGGAGTACAACGCTATCCACGGCAATGTTTACATTACGGCAGACAAACAGAAAAACGGAATTAAGGCCAATTTCGGACTTAACTGCAACATCGAAGATGGGTCGGTACAACTGGCAGACCACTATCAGCAAAATACGCCTATTGGTGACGGTCCTGTCCTGTTACCGGACAATCATTATCTTTCCACTCAGTCGAAACTGAGTAAAGATCCGAACGAGAAGCGCGATCACATGGTATTATTAGAGTTCGTCACAGCCGCAGGTATTACGTTAGGGATGGATGAGCTTTACAAG" . + . + . + . diff --git a/temp.py b/temp.py index 05b230c..5dca460 100644 --- a/temp.py +++ b/temp.py @@ -1,12 +1,17 @@ -import excel2sbol.converter as conv +# import excel2sbol.converter as conv +import sys import os +sys.path.insert(0, '/Users/william/Desktop/Code/GLL/Excel-to-SBOL/excel2sbol/excel2sbol') +import converter as conv + +cwd = os.chdir('/Users/william/Desktop/Code/GLL/Excel-utilities') cwd = os.getcwd() print(cwd) -file_path_in = os.path.join(cwd, 'SBOL3_simple_library4.xlsx') -file_path_out = os.path.join(cwd, 'SBOL3_simple_library4.nt') +file_path_in = os.path.join(cwd, 'two_backbones.xlsx') +file_path_out = os.path.join(cwd, 'two_backbones.nt') conv.converter(file_path_in, file_path_out, file_format='sorted nt') # conv.converter(file_path_in, file_path_out, sbol_version=2, diff --git a/temp3.py b/temp3.py index 0e5c0ad..97c32bf 100644 --- a/temp3.py +++ b/temp3.py @@ -1,57 +1,438 @@ import rdflib import os import sbol3 +import excel_sbol_utils.helpers as h direct = os.path.split(__file__)[0] -file_path_in = os.path.join(direct, 'SBOL3_simple_library4.nt') - - -# read in the document as an rdf graph -g = rdflib.Graph() -result = g.parse(file_path_in) - -# collect all the objects which are combinatorial derivations and their featured components -knows_query = """ -SELECT - ?subject - ?object -WHERE { - ?subject ?template . - ?template ?feature . - ?feature ?object . -}""" -qres = g.query(knows_query) - -# create a tree structure -children = set() # all objects that are referenced by another object -parent_dict = {} # all objects that reference another object and the objects they reference as a set -for row in qres: - s = str(row.subject) - o = str(row.object) - children.add(o) - if s in parent_dict: - parent_dict[s].add(o) - else: - parent_dict[s] = {o} - -# objects that are only children are objects that are not also parents -child_only = children - set(parent_dict).intersection(children) - -# process the children only objects and update the 'tree' -while len(parent_dict) > 0: - # do something to deal with child_only - # for this you probably need to read in the sbol document at the top and perform actions using pysbol - - # remove child only children from dictionary - new_parent_dict = {} - for key in parent_dict: - current_children = parent_dict[key] - remaining_children = current_children - current_children.intersection(child_only) - if len(remaining_children) > 0: - new_parent_dict[key] = remaining_children - parent_dict = new_parent_dict - - # update child_only list - child_only = children - set(parent_dict).intersection(children) - -# return updated sbol document \ No newline at end of file +file_path_in = os.path.join(direct, 'two_backbones.nt') + +# Purpose: After converting the combinatorial derivations, the references to the objects in other parts must be updated +# Input: SBOL3 Document object, SBOL3 Dictionary of combinatorial derivations after conversion +# Output: Updated SBOL3 Document object + +def updateVariableFeatures(doc, combdev): + # 1: Loop through every item in the combdev dictionary + for item in combdev: + # 2 Cases: Has a backbone and therefore variable features located in insert, or located inside the original object + convVar = [] + ins = True # If the object has an insert + edited = False # If the variable features are edited + + insert = item + "_ins" + obj = doc.find(insert) + + if obj == None or type(obj) != sbol3.combderiv.CombinatorialDerivation: + ins = False + obj = doc.find(item) + obj.strategy = sbol3.SBOL_ENUMERATE # Check This line + + if doc.find(f'{insert}_template'): + template = doc.find(f'{insert}_template') + else: + template = doc.find(f'{item}_template') + + + # 2: Go through every variable feature + for variable_feature in list(obj.variable_features): + + # Go through and ensure that variantderivations are correct + + removeList = [] # List of variants to remove + addList = [] # List of variants to add as a subcomponent + + # combdev list of changed from combinatorial derivations to components + for variant in variable_feature.variants: + if str(variant) in combdev: + addList.append(variant) + removeList.append(variant) + + # Check to see if correct reasoning but works + for item in removeList: + variable_feature.variants.remove(item) + for item in addList: + variable_feature.variant_derivations.append(item) + + if len(variable_feature.variants) > 1 or len(variable_feature.variant_derivations) > 0: + continue # Leave as a variable feature + else: + variant = variable_feature.variants[0] + if str(variant) not in combdev: + edited = True + + # 1. Using the variable of the variable feature, find the local subcomponent in the template and retrieve the part number + + localsub = doc.find(variable_feature.variable) + + tempsub = sbol3.SubComponent(instance_of=variant, name=localsub.name, orientation=sbol3.SBOL_INLINE) + + # Add the subcomponent to the template + + template.features.append(tempsub) + + # Change the constriant to the subcomponent + + for constraint in template.constraints: + if constraint.subject == variable_feature.variable: + constraint.subject = tempsub.identity + if constraint.object == variable_feature.variable: + constraint.object = tempsub.identity + + # Remove the localsubcomponent and the variable feature + + template.features.remove(localsub) + obj.variable_features.remove(variable_feature) + + + + if edited: + + + localsubs = [None] * 100 # Used for relabeling + subs = [None] * 100 # subcomponents + variableFeatures = {} + copiedVariableFeatures = [None] * 100 + partsToFeatures = {} + + # Go through remaining variable features and create a dictionary with key = list of variants and value = part # of variants + # From this, delete the variable features and add their copies back to their template + # Then delete the original variable, and add the new variable based on the variants + + for variable_feature in list(obj.variable_features): + variants = [] + for variant in variable_feature.variants: + variants.append(str(variant)) + variants = tuple(variants) + + # Now find the part number from the variable + + localsub = doc.find(variable_feature.variable) + + number = int(localsub.name.split(" ")[1]) + variableFeatures[variants] = number + + # Copy the variable features and add them to copiedVariableFeatures + + copyFeature = sbol3.VariableFeature(variants=variable_feature.variants, variant_derivations=variable_feature.variant_derivations, name=variable_feature.name, variable=variable_feature.variable, cardinality=variable_feature.cardinality) + copiedVariableFeatures[number] = copyFeature + + # Remove the variable feature from the object + + obj.variable_features.remove(variable_feature) + + # Update the references + + + # Add the copied variable features back to the template + + for var in copiedVariableFeatures: + if var != None: + obj.variable_features.append(var) + + + for feature in list(template.features): + if type(feature) == sbol3.LocalSubComponent: + copyFeature = sbol3.LocalSubComponent(types=feature.types, name=feature.name, orientation=feature.orientation) + localsubs[int(feature.name.split(" ")[1])] = copyFeature + template.features.remove(feature) + elif type(feature) == sbol3.SubComponent: + copyFeature = sbol3.SubComponent(instance_of=feature.instance_of, name=feature.name, orientation=feature.orientation) + subs[int(feature.name.split(" ")[1])] = copyFeature + template.features.remove(feature) + + + for item in localsubs: + if item != None: + template.features.append(item) + + for item in subs: + if item != None: + template.features.append(item) + + # Fix variable features to reference the correct localsubcomponent + + for variable_feature in list(obj.variable_features): + variants = [] + for variant in variable_feature.variants: + variants.append(str(variant)) + + variants = tuple(variants) + + number = variableFeatures[variants] + + for feature in list(template.features): + if type(feature) == sbol3.LocalSubComponent: + if int(feature.name.split(" ")[1]) == number: + variable_feature.variable = feature.identity + break + + # Fix all of the constraints + + # Go through every subcomponent and localsubcomponent and do key: part #, value = displayID + + for feature in list(template.features): + if type(feature) == sbol3.LocalSubComponent: + partsToFeatures[int(feature.name.split(" ")[1])] = feature.identity + elif type(feature) == sbol3.SubComponent: + partsToFeatures[int(feature.name.split(" ")[1])] = feature.identity + + # Delete all constraints + + template.constraints.clear() + + # Add constraints one by one with part 1 being the subject and part 2 being the object until the end of the dictionary + + part = 1 + while part < len(partsToFeatures): + constraint = sbol3.Constraint(restriction=sbol3.SBOL_MEETS, subject=partsToFeatures[part], object=partsToFeatures[part + 1]) + template.constraints.append(constraint) + part += 1 + + # Clear the part # from the subcomponents + # Check this + + for feature in list(template.features): + if type(feature) == sbol3.SubComponent: + del feature._properties[sbol3.SBOL_NAME] + + + # For every object in Composite parts collection: + + return None + + +# Purpose: Update the uri references in the LinearDNAProducts to the _ins versions of the parts +# Input: SBOL3 document object +# Output: SBOL3 document object with updated references + +def updateLinearDNAProducts(doc): + # Go through every object in the doc + # If it's a collection, then check if it's the LinearDNAProducts collection + # For every member, get the identity, then replace it with the _ins version of the part + + for obj in doc.objects: + if type(obj) == sbol3.Collection: + if obj.display_id == 'LinearDNAProducts': + tempList = [] + for member in obj.members: + mem = doc.find(member) + memberid = mem.identity + insConstruct = doc.find(memberid + "_ins") + displah_id = insConstruct.identity + tempList.append(displah_id) + obj.members = tempList + + return doc + + +# Purpose: Update the collection names for basic parts and composite parts +# Input: SBOL3 document object +# Output: SBOL3 document object with updated collection names + +def updateCollectionNames(doc): + # Change the basic parts collection name to basicparts (if it exists) + + # Lists to go through to either add or take off of the document once completed + removeList = [] + addList = [] + + for obj in doc.objects: + if type(obj) == sbol3.Collection: + + # Set the namespace for sbol3 so that the collections contain the correct namespace and are named correctly + sbol3.set_namespace(obj.namespace) + + if obj.display_id == 'Basic_Parts': + newCollection = sbol3.Collection(identity='BasicParts', name=obj.name, members=obj.members, description=obj.description) + + removeList.append(obj) + addList.append(newCollection) + + elif obj.display_id == 'Composite_Parts': + newCollection = sbol3.Collection(identity='CompositeParts', name=obj.name, members=obj.members, description=obj.description) + + removeList.append(obj) + # Change components inside of the composite parts collection to their inserted construct if they have one + + removeMember = [] + + for item in newCollection.members: + if doc.find(item + "_ins") != None: + removeMember.append(item) + newCollection.members.append(item + "_ins") + + for item in removeMember: + newCollection.members.remove(item) + + addList.append(newCollection) + + for item in removeList: + doc.remove_object(item) + + for item in addList: + doc.add(item) + + return doc + +# Go through the objects in the document and if they don't have a description, then add a blank +# Input: Document object (sbol3) +# Output: Document object with updated descriptions +# NOT COMPLETE - NEED MORE SPECIFIC IMPLEMENTATION + +def updateDescriptions(doc): + + for obj in doc.objects: + if type(obj) == sbol3.Collection: + for item in list(obj.members): + temp = doc.find(item) + if not temp: + continue + + if "_ins" in temp.name: + continue + if temp.description == None: + if doc.find(item + "_ins") == None: + temp.description = "" + + return doc + + + + +# Purpose: To convert combinatorial derivation objects to component objects if necessary +# Input: SBOL3 file reference +# Output: SBOL3 file in new path, updated document object + +def convCombDeriv(file_path_in): + # read in the document as an rdf graph + g = rdflib.Graph() + result = g.parse(file_path_in) + + # Creating the Sbol document to be changed from the conversion + doc = sbol3.Document() + doc.read(file_path_in) + + # Get all objects from the graph + dictionaryObj = doc._parse_objects(g) + + # Find all combinatorial derivation objects (identity: object) + tempcombdev = {} + combdev = {} + + for item in dictionaryObj: + if type(dictionaryObj[item]) == sbol3.CombinatorialDerivation: + tempcombdev[item] = dictionaryObj[item] + + # 1. Check to see if the object has an inserted construct + # Go through all combinatorial derivations - if has insert, remove insert from tempcombdev and add top level object to combdev + for item in dictionaryObj: + ins = item + "_ins" + if ins in dictionaryObj: + combdev[item] = dictionaryObj[item] + tempcombdev.pop(item) + if ins in tempcombdev: + tempcombdev.pop(ins) + + + # 2. Go through the remaining combinatorial derivation objects and check each variable feature to see if it has more than one variant + for item in tempcombdev: + temp = doc.find(item) + for variable_feature in temp.variable_features: + if len(variable_feature.variants) > 1: + combdev[item] = dictionaryObj[item] + break + + for item in combdev: + if item in tempcombdev: + tempcombdev.pop(item) + + # 3. Go through the remaining objects and check to see if their variable feature contains a combinatorial derivation variant + for item in tempcombdev: + temp = doc.find(item) + for variable_feature in temp.variable_features: + for variant in variable_feature.variants: + if variant in combdev: + combdev[item] = tempcombdev[item] + break + + # Check if need to remove from tempcombdev after adding to combdev + + # 4. For every item in tempcombdev (Not a combinatorial derivation), convert it to a component + + newComponents = {} + for item in tempcombdev: + # From combinatorial derivation: name, displayId, namespace + obj = doc.find(item) + + newComp = sbol3.Component(identity=obj.identity, types=sbol3.component.SBOL_COMPONENT) + newComp.name = obj.name + newComp.displayId = obj.display_id + newComp.namespace = obj.namespace + newComp.roles = [sbol3.SO_ENGINEERED_REGION] + newComp.types = [sbol3.SBO_DNA] + newComp.description = obj.description + + # From template: features, constraints, type + template = doc.find(f'{obj.identity}_template') + + # Need to go through the subcomponents in order from the previous template + # sort the subcomponents by the identity and then create a new list to run through it + + sortedSubcomponents = sorted(template.features, key=lambda x: x.identity) + + for feature in sortedSubcomponents: + if type(feature) != sbol3.LocalSubComponent: + subComp = sbol3.SubComponent(instance_of=feature.instance_of, orientation=feature.orientation) + newComp.features.append(subComp) + + # Attempt to sort the constraints in the same way as subcomponents + + sortedConstraints = sorted(template.constraints, key=lambda x: x.identity) + + + for constraint in sortedConstraints: + newConstraint = sbol3.Constraint(constraint.restriction, constraint.subject.replace('_template', ''), constraint.object.replace('_template', '')) + newConstraint.derived_from = constraint.derived_from + newComp.constraints.append(newConstraint) + + newComponents[item] = newComp + + # 5. Delete the original combinatorial derivation object and template + for item in tempcombdev: + obj_doc = doc.find(item) + doc.remove_object(obj_doc) + + template = doc.find(f'{item}_template') + doc.remove_object(template) + + # 6. Add the new component object to the document + for item in newComponents: + doc.add(newComponents[item]) + + # 7. Update the variable features in each of the combinatorial derivation objects if there are conversions + # Might have to update to make sure that it's the correct logic (If there are any changes to combinatorial derivations) + if tempcombdev != combdev: + updateVariableFeatures(doc, combdev) + + # 8. Update the uri references + # Not sure if this is necessary - doesn't seem to make a difference + # Take a new dictionary mapping the identity of the old objects to the newly created components + # Plug it into the helper function to update the uri refs (Not sure if does anything) + + oldToNew = {} + + for item in tempcombdev: + oldToNew[tempcombdev[item].identity] = newComponents[item].identity + + h.update_uri_refs(doc, oldToNew) + + return doc + + + +doc = convCombDeriv(file_path_in) +doc = updateLinearDNAProducts(doc) +doc = updateCollectionNames(doc) +doc = updateDescriptions(doc) + +file_path_out = "two_backbones_ud.nt" +doc.write(file_path_out, file_format="sorted nt") diff --git a/two_backbones.nt b/two_backbones.nt new file mode 100644 index 0000000..40ac87a --- /dev/null +++ b/two_backbones.nt @@ -0,0 +1,230 @@ + "positive control 2018 interlab" . + "I20270" . + . + . + "I20270" . + . + . + . + "I20270_sequence" . + "TTGATGGCTAGCTCAGTCCTAGGTACAATGCTAGCTACTAGAGTCACACAGGAAAGTACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "5.5 SLM (high, but variable)" . + "J23101" . + . + . + "J23101" . + . + . + . + "J23101_sequence" . + "TTTACAGCTAGCTCAGTCCTAGGTATTATGCTAGC" . + . + . + . + "J23106 2018 interlab" . + "J364001" . + . + . + "J364001" . + . + . + . + "J364001_sequence" . + "TTTACGGCTAGCTCAGTCCTAGGTATAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23117 2018 interlab" . + "J364002" . + . + . + "J364002" . + . + . + . + "J364002_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGATTGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23100 2018 interlab" . + "J364007" . + . + . + "J364007" . + . + . + . + "J364007_sequence" . + "TTGACGGCTAGCTCAGTCCTAGGTACAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23116 2018 interlab" . + "J364009" . + . + . + "J364009" . + . + . + . + "J364009_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGACTATGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "negative control 2018 interlab" . + "R0040" . + . + . + "R0040" . + . + . + . + "R0040_sequence" . + "TCCCTATCAGTGATAGAGATTGACATCCCTATCAGTGATAGAGATACTGAGCAC" . + . + . + . + "Backbone_variants" . + . + "Backbone variants" . + . + . + "SubComponent1" . + . + . + "Backbone_variants_ins" . + . + . + "Backbone variants insert" . + . + . + . + "Backbone_variants_template" . + . + . + . + "Designs for round 1 if iGEM 2021 calibration experimentation" . + "Basic_Parts" . + . + . + . + . + . + . + . + . + . + . + "Fluorescence calibration basic parts" . + . + "Designs for round 1 if iGEM 2021 calibration experimentation" . + "Composite_Parts" . + . + . + . + "Fluorescence calibration devices" . + . + "Final products desired for actual fabrication" . + "FinalProducts" . + . + . + . + "Final Products" . + . + "Linear DNA constructs to be fabricated" . + "LinearDNAProducts" . + . + . + . + "Linear DNA Products" . + . + . + "VariableFeature1" . + . + . + . + . + "VariableFeature2" . + . + . + . + . + "Two_by_six" . + . + . + . + "Two by six" . + . + . + . + "VariableFeature1" . + . + . + . + . + . + . + . + . + "Two_by_six_ins" . + . + . + "Two by six insert" . + . + . + . + "LocalSubComponent1" . + "Part 1" . + . + . + . + "Two_by_six_ins_template" . + . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "LocalSubComponent1" . + "Inserted Construct" . + . + . + "LocalSubComponent2" . + "Vector" . + . + . + "Two_by_six_template" . + . + . + . + . + . + . + . + "pMB1 replicon, 100-300 copy" . + "pSB1C3" . + . + "pSB1C3" . + . + . + . + "BBF10K_000589" . + . + "pOpen_v4" . + . + . + . + . diff --git a/two_backbones.xlsx b/two_backbones.xlsx new file mode 100644 index 0000000..42571ae Binary files /dev/null and b/two_backbones.xlsx differ diff --git a/two_backbones_ud.nt b/two_backbones_ud.nt new file mode 100644 index 0000000..459d4b0 --- /dev/null +++ b/two_backbones_ud.nt @@ -0,0 +1,234 @@ + "positive control 2018 interlab" . + "I20270" . + . + . + "I20270" . + . + . + . + "I20270_sequence" . + "TTGATGGCTAGCTCAGTCCTAGGTACAATGCTAGCTACTAGAGTCACACAGGAAAGTACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "5.5 SLM (high, but variable)" . + "J23101" . + . + . + "J23101" . + . + . + . + "J23101_sequence" . + "TTTACAGCTAGCTCAGTCCTAGGTATTATGCTAGC" . + . + . + . + "J23106 2018 interlab" . + "J364001" . + . + . + "J364001" . + . + . + . + "J364001_sequence" . + "TTTACGGCTAGCTCAGTCCTAGGTATAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23117 2018 interlab" . + "J364002" . + . + . + "J364002" . + . + . + . + "J364002_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGATTGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23100 2018 interlab" . + "J364007" . + . + . + "J364007" . + . + . + . + "J364007_sequence" . + "TTGACGGCTAGCTCAGTCCTAGGTACAGTGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "J23116 2018 interlab" . + "J364009" . + . + . + "J364009" . + . + . + . + "J364009_sequence" . + "TTGACAGCTAGCTCAGTCCTAGGGACTATGCTAGCTACTAGAGAAAGAGGAGAAATACTAGATGCGTAAAGGAGAAGAACTTTTCACTGGAGTTGTCCCAATTCTTGTTGAATTAGATGGTGATGTTAATGGGCACAAATTTTCTGTCAGTGGAGAGGGTGAAGGTGATGCAACATACGGAAAACTTACCCTTAAATTTATTTGCACTACTGGAAAACTACCTGTTCCATGGCCAACACTTGTCACTACTTTCGGTTATGGTGTTCAATGCTTTGCGAGATACCCAGATCATATGAAACAGCATGACTTTTTCAAGAGTGCCATGCCCGAAGGTTATGTACAGGAAAGAACTATATTTTTCAAAGATGACGGGAACTACAAGACACGTGCTGAAGTCAAGTTTGAAGGTGATACCCTTGTTAATAGAATCGAGTTAAAAGGTATTGATTTTAAAGAAGATGGAAACATTCTTGGACACAAATTGGAATACAACTATAACTCACACAATGTATACATCATGGCAGACAAACAAAAGAATGGAATCAAAGTTAACTTCAAAATTAGACACAACATTGAAGATGGAAGCGTTCAACTAGCAGACCATTATCAACAAAATACTCCAATTGGCGATGGCCCTGTCCTTTTACCAGACAACCATTACCTGTCCACACAATCTGCCCTTTCGAAAGATCCCAACGAAAAGAGAGACCACATGGTCCTTCTTGAGTTTGTAACAGCTGCTGGGATTACACATGGCATGGATGAACTATACAAATAATAATACTAGAGCCAGGCATCAAATAAAACGAAAGGCTCAGTCGAAAGACTGGGCCTTTCGTTTTATCTGTTGTTTGTCGGTGAACGCTCTCTACTAGAGTCACACTGGCTCACCTTCGGGTGGGCCTTTCTGCGTTTATA" . + . + . + . + "negative control 2018 interlab" . + "R0040" . + . + . + "R0040" . + . + . + . + "R0040_sequence" . + "TCCCTATCAGTGATAGAGATTGACATCCCTATCAGTGATAGAGATACTGAGCAC" . + . + . + . + "Backbone_variants" . + . + "Backbone variants" . + . + . + . + "SubComponent1" . + . + . + "" . + "Backbone_variants_ins" . + . + . + "Backbone variants insert" . + . + . + . + "Backbone_variants_template" . + . + . + . + "Designs for round 1 if iGEM 2021 calibration experimentation" . + "BasicParts" . + . + . + . + . + . + . + . + . + . + . + "Fluorescence calibration basic parts" . + . + "Designs for round 1 if iGEM 2021 calibration experimentation" . + "CompositeParts" . + . + . + . + "Fluorescence calibration devices" . + . + "Final products desired for actual fabrication" . + "FinalProducts" . + . + . + . + "Final Products" . + . + "Linear DNA constructs to be fabricated" . + "LinearDNAProducts" . + . + . + . + "Linear DNA Products" . + . + . + "VariableFeature1" . + . + . + . + . + "VariableFeature2" . + . + . + . + . + "Two_by_six" . + . + . + . + "Two by six" . + . + . + . + "VariableFeature1" . + . + . + . + . + . + . + . + . + "" . + "Two_by_six_ins" . + . + . + "Two by six insert" . + . + . + . + "LocalSubComponent1" . + "Part 1" . + . + . + . + "Two_by_six_ins_template" . + . + . + . + . + "Constraint1" . + . + . + . + . + "Constraint2" . + . + . + . + . + "LocalSubComponent1" . + "Inserted Construct" . + . + . + "LocalSubComponent2" . + "Vector" . + . + . + "Two_by_six_template" . + . + . + . + . + . + . + . + "pMB1 replicon, 100-300 copy" . + "pSB1C3" . + . + "pSB1C3" . + . + . + . + "" . + "BBF10K_000589" . + . + "pOpen_v4" . + . + . + . + .