рдмрд╛рджрд▓ рдореЗрдВ рдкреНрд░реЛрдЯреАрди рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдкрд╛рдпрдерди рдФрд░ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдпрд╛ $ 360 рдХреЗ рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЯреАрди рдХрд╛ рдирд┐рд░реНрдорд╛рдг рдХреИрд╕реЗ рдХрд░реЗрдВ

рдХреНрдпрд╛ рд╣реЛрдЧрд╛ рдпрджрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рд╢рд╛рдВрдд, рд╕реНрд╡рд╕реНрде рдкреНрд░реЛрдЯреАрди рдХреЗ рд▓рд┐рдП рдПрдХ рд╡рд┐рдЪрд╛рд░ рд╣реИ, рдФрд░ рдЖрдк рдЗрд╕реЗ рд╡рд╛рд╕реНрддрд╡рд┐рдХрддрд╛ рдореЗрдВ рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ? рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдХреНрдпрд╛ рдЖрдк рдПрдЪред рдкрд╛рдЗрд▓реЛрд░реА (рдЬреИрд╕реЗ iGEM тАЛтАЛ2008 рдореЗрдВ рд╕реНрд▓реЛрд╡реЗрдирд┐рдпрд╛рдИ рдЯреАрдо рдХреА рддрд░рд╣) рдХреЗ рдЦрд┐рд▓рд╛рдл рдПрдХ рд╡реИрдХреНрд╕реАрди рдмрдирд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬреЛ рдИред рдХреЛрд▓рд╛рдИ рдлреНрд▓реИрдЧреЗрд▓рд┐рди рдХреЗ рдЯреБрдХрдбрд╝реЛрдВ рдХреЛ рдорд┐рд▓рд╛рдХрд░ рдПрдХ рдРрд╕рд╛ рд╣рд╛рдИ рдкреНрд░реЛрдЯреАрди рдмрдирд╛рддрд╛ рд╣реИ рдЬреЛ рд╕рд╛рдорд╛рдиреНрдп рдПрдЪред рдлрд┐рд▓реЛрд░реА рдлреНрд▓реИрдЧреЗрд▓рд┐рди рдХреЗ рд╕рд╛рде рдкреНрд░рддрд┐рд░рдХреНрд╖рд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдХреЛ рдЙрддреНрддреЗрдЬрд┐рдд рдХрд░рддрд╛ рд╣реИ?

рдПрдЪред рдкрд╛рдЗрд▓реЛрд░реА рд╣рд╛рдЗрдмреНрд░рд┐рдб рдлреНрд▓реИрдЧреЗрд▓рд┐рди рдбрд┐рдЬрд╝рд╛рдЗрди рдЖрдИрдЬреАрдИрдПрдо 2008 рдореЗрдВ рд╕реНрд▓реЛрд╡реЗрдирд┐рдпрд╛рдИ рдЯреАрдо рджреНрд╡рд╛рд░рд╛ рдкреНрд░рд╕реНрддреБрдд рдХрд┐рдпрд╛ рдЧрдпрд╛

рд╣реИрд░рд╛рдиреА рдХреА рдмрд╛рдд рд╣реИ рдХрд┐, рд╣рдо рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЯреАрди рдХреЛ рдмрдирд╛рдиреЗ рдХреЗ рдмрд╣реБрдд рдХрд░реАрдм рд╣реИрдВ рдЬреЛ рд╣рдо рдЬреБрдкрд┐рдЯрд░ рдХреА рдиреЛрдЯрдмреБрдХ рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рдмрд┐рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдЬреАрдиреЛрдорд┐рдХреНрд╕, рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди рдореЗрдВ рдирд╡реАрдирддрдо рдШрдЯрдирд╛рдУрдВ рдХреЗ рд▓рд┐рдП рдзрдиреНрдпрд╡рд╛рдж, рдФрд░ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдХреНрд▓рд╛рдЙрдб рд▓реИрдм рдореЗрдВред

рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ, рдореИрдВ рдПрдХ рдкрд┐рдкреЗрдЯ рдХреЛ рдЫреВрдиреЗ рдпрд╛ рдХрд┐рд╕реА рд╕реЗ рдмрд╛рдд рдХрд┐рдП рдмрд┐рдирд╛, рдПрдХ рдкреНрд░реЛрдЯреАрди рдХреЗ рд╡рд┐рдЪрд╛рд░ рд╕реЗ рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рд╕реЗрд▓ рдореЗрдВ рдЕрдкрдиреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рдкрд╛рдпрдерди рдХреЛрдб рджрд┐рдЦрд╛рдКрдВрдЧрд╛ред рдХреБрд▓ рд▓рд╛рдЧрдд рдХреЗрд╡рд▓ рдХреБрдЫ рд╕реМ рдбреЙрд▓рд░ рд╣реЛрдЧреА! A16Z рд╕реЗ рд╡рд┐рдЬрдпрд╛ рдкрд╛рдВрдбреЗ рдХреА рд╢рдмреНрджрд╛рд╡рд▓реА рдХрд╛ рдкреНрд░рдпреЛрдЧ, рдпрд╣ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди 2.0 рд╣реИред

рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ, рд▓реЗрдЦ рдореЗрдВ, рдХреНрд▓рд╛рдЙрдб рд▓реИрдм рдХрд╛ рдкрд╛рдпрдерди рдХреЛрдб рдирд┐рдореНрди рдХрд╛рд░реНрдп рдХрд░рддрд╛ рд╣реИ:

  • рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо рдХрд╛ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдЬреЛ рдХрд┐рд╕реА рднреА рдкреНрд░реЛрдЯреАрди рдХреЛ рдПрдирдХреЛрдб рдХрд░рддрд╛ рд╣реИ рдЬреЛ рдореБрдЭреЗ рдЪрд╛рд╣рд┐рдПред
  • рдЗрд╕ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдбреАрдПрдирдП рдХреЛ рдПрдХ рд╡реЗрдХреНрдЯрд░ рдореЗрдВ рдХреНрд▓реЛрди рдХрд░рдирд╛ рдЬреЛ рдЗрд╕реЗ рд╡реНрдпрдХреНрдд рдХрд░ рд╕рдХрддрд╛ рд╣реИред
  • рдЗрд╕ рд╡реЗрдХреНрдЯрд░ рдХреЗ рд╕рд╛рде рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдХрд╛ рдкрд░рд┐рд╡рд░реНрддрди рдФрд░ рдкреБрд╖реНрдЯрд┐ рд╣реЛрддреА рд╣реИ рдХрд┐ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рд╣реЛ рд░рд╣реА рд╣реИред

рдЕрдЬрдЧрд░ рдХрд╛ рд╕реЗрдЯрдЕрдк


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╕рд╛рдорд╛рдиреНрдп рдкрд╛рдпрдерди рд╕реЗрдЯрд┐рдВрдЧреНрд╕ рдЬреЛ рдХрд┐рд╕реА рднреА рдЬреНрдпреВрдкрд┐рдЯрд░ рдиреЛрдЯрдкреИрдб рдХреЗ рд▓рд┐рдП рдЖрд╡рд╢реНрдпрдХ рд╣реИрдВред рд╣рдо рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рдкрд╛рдпрдерди рдореЙрдбреНрдпреВрд▓ рдЖрдпрд╛рдд рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдбреЗрдЯрд╛ рд╡рд┐рдЬрд╝реБрдЕрд▓рд╛рдЗрдЬрд╝реЗрд╢рди рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдЙрдкрдпреЛрдЧрд┐рддрд╛ рдлрд╝рдВрдХреНрд╢рдВрд╕ рдмрдирд╛рддреЗ рд╣реИрдВред

рдХреЛрдб
import re import json import logging import requests import itertools import numpy as np import seaborn as sns import pandas as pd import matplotlib as mpl import matplotlib.pyplot as plt from io import StringIO from pprint import pprint from Bio.Seq import Seq from Bio.Alphabet import generic_dna from IPython.display import display, Image, HTML, SVG def uprint(astr): print(astr + "\n" + "-"*len(astr)) def show_html(astr): return display(HTML('{}'.format(astr))) def show_svg(astr, w=1000, h=1000): SVG_HEAD = '''<?xml version="1.0" standalone="no"?><!DOCTYPE svg PUBLIC "-//W3C//DTD SVG 1.1//EN" "http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">''' SVG_START = '''<svg viewBox="0 0 {w:} {h:}" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink= "http://www.w3.org/1999/xlink">''' return display(SVG(SVG_HEAD + SVG_START.format(w=w, h=h) + astr + '</svg>')) def table_print(rows, header=True): html = ["<table>"] html_row = "</td><td>".join(k for k in rows[0]) html.append("<tr style='font-weight:{}'><td>{}</td></tr>".format('bold' if header is True else 'normal', html_row)) for row in rows[1:]: html_row = "</td><td>".join(row) html.append("<tr style='font-family:monospace;'><td>{:}</td></tr>".format(html_row)) html.append("</table>") show_html(''.join(html)) def clean_seq(dna): dna = re.sub("\s","",dna) assert all(nt in "ACGTN" for nt in dna) return Seq(dna, generic_dna) def clean_aas(aas): aas = re.sub("\s","",aas) assert all(aa in "ACDEFGHIKLMNPQRSTVWY*" for aa in aas) return aas def Images(images, header=None, width="100%"): # to match Image syntax if type(width)==type(1): width = "{}px".format(width) html = ["<table style='width:{}'><tr>".format(width)] if header is not None: html += ["<th>{}</th>".format(h) for h in header] + ["</tr><tr>"] for image in images: html.append("<td><img src='{}' /></td>".format(image)) html.append("</tr></table>") show_html(''.join(html)) def new_section(title, color="#66aa33", padding="120px"): style = "text-align:center;background:{};padding:{} 10px {} 10px;".format(color,padding,padding) style += "color:#ffffff;font-size:2.55em;line-height:1.2em;" return HTML('<div style="{}">{}</div>'.format(style, title)) # Show or hide text HTML(""" <style> .section { display:flex;align-items:center;justify-content:center;width:100%; height:400px; background:#6a3;color:#eee;font-size:275%; } .showhide_label { display:block; cursor:pointer; } .showhide { position: absolute; left: -999em; } .showhide + div { display: none; } .showhide:checked + div { display: block; } .shown_or_hidden { font-size:85%; } </style> """) # Plotting style plt.rc("axes", titlesize=20, labelsize=15, linewidth=.25, edgecolor='#444444') sns.set_context("notebook", font_scale=1.2, rc={}) %matplotlib inline %config InlineBackend.figure_format = 'retina' # or 'svg' 

рдХреНрд▓рд╛рдЙрдб рд▓реИрдм


AWS рдпрд╛ рдХрд┐рд╕реА рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдХреНрд▓рд╛рдЙрдб рдХреА рддрд░рд╣, рдХреНрд▓рд╛рдЙрдб рд▓реИрдм рдореЗрдВ рдЖрдгрд╡рд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди рдЙрдкрдХрд░рдг, рд╕рд╛рде рд╣реА рд╕рд╛рде рд░реЛрдмреЛрдЯ рд╣реИрдВ рдЬреЛ рдЗрд╕реЗ рдЗрдВрдЯрд░рдиреЗрдЯ рдкрд░ рдкрдЯреНрдЯреЗ рдкрд░ рджреЗрддреЗ рд╣реИрдВред рдЖрдк рдЗрдВрдЯрд░рдлрд╝реЗрд╕ рдкрд░ рдХреБрдЫ рдмрдЯрди рдХреНрд▓рд┐рдХ рдХрд░рдХреЗ рдпрд╛ рдЕрдкрдиреЗ рдЖрдк рдХреЛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдХреЛрдб рд▓рд┐рдЦрдХрд░ рдЕрдкрдиреЗ рд░реЛрдмреЛрдЯ рдХреЛ рдирд┐рд░реНрджреЗрд╢ рдЬрд╛рд░реА рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рд▓рд┐рдЦрдирд╛ рдЖрд╡рд╢реНрдпрдХ рдирд╣реАрдВ рд╣реИ, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдпрд╣рд╛рдВ рдХрд░реВрдВрдЧрд╛, рдЖрдгрд╡рд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди рдХрд╛ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╣рд┐рд╕реНрд╕рд╛ рдорд╛рдирдХ рдирд┐рдпрдорд┐рдд рдХрд╛рд░реНрдп рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдорддреМрд░ рдкрд░ рдПрдХ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╡рд┐рджреЗрд╢реА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░рдирд╛ рдмреЗрд╣рддрд░ рд╣реЛрддрд╛ рд╣реИ рдЬрд┐рд╕рдиреЗ рд░реЛрдмреЛрдЯ рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫреА рдмрд╛рддрдЪреАрдд рджрд┐рдЦрд╛рдИред

рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдХреНрд▓рд╛рдЙрдб рд▓реИрдм рд╡рд╛рд▓реА рдХрдИ рдХрдВрдкрдирд┐рдпрд╛рдВ рд╕рд╛рдордиреЗ рдЖрдИ рд╣реИрдВ: рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ , рдСрдЯреЛрдбреЗрд╕реНрдХ рд╡реЗрдЯ рд▓реИрдм рдПрдХреНрд╕рд▓реЗрд░реЗрдЯрд░ (рдмреАрдЯрд╛, рдФрд░ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдирд┐рд░реНрдорд┐рдд), рдЖрд░реНрдХрдЯреБрд░рд╕ рдмрд╛рдпреЛрдХреНрд▓рд╛рдЙрдб (рдмреАрдЯрд╛), рдПрдорд░рд╛рд▓реНрдб рдХреНрд▓рд╛рдЙрдб рд▓реИрдм (рдмреАрдЯрд╛), рд╕рд┐рдВрдЯреЗрдЧреЛ (рдЕрднреА рддрдХ рд╢реБрд░реВ рдирд╣реАрдВ рд╣реБрдИ рд╣реИ)ред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдбреЗрд╕реНрдХрдЯреЙрдк рдЬреЗрдиреЗрдЯрд┐рдХреНрд╕ рдЬреИрд╕реЗ рдХреНрд▓рд╛рдЙрдб рд▓реИрдм рдХреЗ рд╢реАрд░реНрд╖ рдкрд░ рдирд┐рд░реНрдорд┐рдд рдХрдВрдкрдирд┐рдпрд╛рдВ рднреА рд╣реИрдВ, рдЬреЛ CRISPR рдореЗрдВ рдорд╛рд╣рд┐рд░ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╡рд┐рдЬреНрдЮрд╛рди рдореЗрдВ рдХреНрд▓рд╛рдЙрдб рд▓реИрдм рдХреЗ рдЙрдкрдпреЛрдЧ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╡реИрдЬреНрдЮрд╛рдирд┐рдХ рд▓реЗрдЦ рджрд┐рдЦрд╛рдИ рджреЗрдиреЗ рд▓рдЧреЗ рд╣реИрдВред

рдЗрд╕ рд▓реЗрдЦрди рдХреЗ рд╕рдордп, рдХреЗрд╡рд▓ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд╕рд╛рд░реНрд╡рдЬрдирд┐рдХ рдбреЛрдореЗрди рдореЗрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рдЕрдзрд┐рдХрд╛рдВрд╢ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд╡реНрдпрд╡рд╕рд╛рдп рд╕рд╛рдорд╛рдиреНрдп рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдХрд░рдиреЗ рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ, рдФрд░ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рдкрд╛рдпрдерди рдореЗрдВ рд▓рд┐рдЦрдирд╛ (рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕ рд▓реЗрдЦ рдореЗрдВ рдХрд░реВрдБрдЧрд╛) рдХрдо рдЖрдо рд╣реИред


рдиреАрдЪреЗ рдХреА рдУрд░ рд░реЗрдлреНрд░рд┐рдЬрд░реЗрдЯрд░ рдФрд░ рд╕реНрдЯреИрдВрдб рдкрд░ рд╡рд┐рднрд┐рдиреНрди рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдЙрдкрдХрд░рдгреЛрдВ рдХреЗ рд╕рд╛рде рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ "рд╡рд░реНрдХрд┐рдВрдЧ рд╕реЗрд▓"

рдореИрдВ рдСрдЯреЛ-рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкрд░ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд░реЛрдмреЛрдЯ рдХреЗ рдирд┐рд░реНрджреЗрд╢ рджреВрдВрдЧрд╛ред рдСрдЯреЛрдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рд░реЛрдмреЛрдЯ (рдФрд░ рдордиреБрд╖реНрдп, рдЬреИрд╕рд╛ рдХрд┐ рдерд╛) рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ JSON- рдЖрдзрд╛рд░рд┐рдд рднрд╛рд╖рд╛ рд╣реИред рдСрдЯреЛрдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЗрд╕ рдкрд╛рдпрдерди рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдкрд░ рдмрдирд╛рдпрд╛ рдЧрдпрд╛ рд╣реИред рднрд╛рд╖рд╛ рдореВрд▓ рд░реВрдк рд╕реЗ рдмрдирд╛рдИ рдЧрдИ рдереА рдФрд░ рдЕрднреА рднреА рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рджреНрд╡рд╛рд░рд╛ рд╕рдорд░реНрдерд┐рдд рд╣реИ, рд▓реЗрдХрд┐рди, рдЬреИрд╕рд╛ рдХрд┐ рдореИрдВ рдЗрд╕реЗ рд╕рдордЭрддрд╛ рд╣реВрдВ, рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЦреБрд▓рд╛ рд╣реИред рдЕрдЪреНрдЫрд╛ рдкреНрд░рд▓реЗрдЦрди рд╣реИ ред

рдПрдХ рджрд┐рд▓рдЪрд╕реНрдк рд╡рд┐рдЪрд╛рд░ рдпрд╣ рд╣реИ рдХрд┐ рдСрдЯреЛ-рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкрд░ рдЖрдк рджреВрд░рджрд░рд╛рдЬ рдХреЗ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛рдУрдВ рдореЗрдВ рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджреЗрд╢ рд▓рд┐рдЦ рд╕рдХрддреЗ рд╣реИрдВ - рдЬреИрд╕реЗ, рдЪреАрди рдпрд╛ рднрд╛рд░рдд рдореЗрдВ - рдФрд░ рд╕рдВрднрд╡рддрдГ рджреЛрдиреЛрдВ рд▓реЛрдЧреЛрдВ (рдЙрдирдХреЗ рдирд┐рд░реНрдгрдп) рдФрд░ рд░реЛрдмреЛрдЯ (рдирд┐рд░реНрдгрдп рдХреА рдХрдореА) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рд╕реЗ рдХреБрдЫ рдлрд╛рдпрджреЗ рдорд┐рд▓рддреЗ рд╣реИрдВред рд╣рдореЗрдВ рдпрд╣рд╛рдВ рдкреНрд░реЛрдЯреЛрдХреЙрд▓рд┐рдпреЛ рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ , рдпрд╣ рдкреНрд░рдЬрдирди рдХреНрд╖рдорддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдорд╛рдирдХреАрдХрд░рдг рдХрд░рдиреЗ рдХрд╛ рдПрдХ рдкреНрд░рдпрд╛рд╕ рд╣реИ, рд▓реЗрдХрд┐рди рдордиреБрд╖реНрдпреЛрдВ рдХреЗ рд▓рд┐рдП, рд░реЛрдмреЛрдЯ рдирд╣реАрдВред

 "instructions": [ { "to": [ { "well": "water/0", "volume": "500.0:microliter" } ], "op": "provision", "resource_id": "rs17gmh5wafm5p" }, ... ] 

рдСрдЯреЛрдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЯреБрдХрдбрд╝рд╛ рдЙрджрд╛рд╣рд░рдг

рдЖрдгрд╡рд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди рдХреЗ рд▓рд┐рдП рдкрд╛рдпрдерди рд╕реЗрдЯрд┐рдВрдЧреНрд╕


рдорд╛рдирдХ рдкреБрд╕реНрддрдХрд╛рд▓рдпреЛрдВ рдХреЗ рдЖрдпрд╛рдд рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореБрдЭреЗ рдХреБрдЫ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЖрдгрд╡рд┐рдХ рдЬреИрд╡рд┐рдХ рдЙрдкрдпреЛрдЧрд┐рддрд╛рдУрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреАред рдпрд╣ рдХреЛрдб рдореБрдЦреНрдпрддрдГ рдСрдЯреЛ-рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдФрд░ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдХреЗ рд▓рд┐рдП рд╣реИред

"рдореГрдд рдорд╛рддреНрд░рд╛" рдХреА рдЕрд╡рдзрд╛рд░рдгрд╛ рдЕрдХреНрд╕рд░ рдХреЛрдб рдореЗрдВ рдкрд╛рдИ рдЬрд╛рддреА рд╣реИред рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рддрд░рд▓ рдХреА рдЖрдЦрд┐рд░реА рдмреВрдВрдж рдЬреЛ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд░реЛрдмреЛрдЯ рдЯреНрдпреВрдмреЛрдВ рд╕реЗ рдПрдХ рд╡рд┐рдВрджреБрдХ рдХреЗ рд╕рд╛рде рдирд╣реАрдВ рд▓реЗ рд╕рдХрддреЗ рд╣реИрдВ (рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЗрд╕реЗ рдирд╣реАрдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ!)ред рдЖрдкрдХреЛ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рд╕рдордп рдмрд┐рддрд╛рдирд╛ рд╣реЛрдЧрд╛ рдХрд┐ рдлреНрд▓рд╛рд╕реНрдХ рдореЗрдВ рдкрд░реНрдпрд╛рдкреНрдд рд╕рд╛рдордЧреНрд░реА рд╣реИред

рдХреЛрдб
 import autoprotocol from autoprotocol import Unit from autoprotocol.container import Container from autoprotocol.protocol import Protocol from autoprotocol.protocol import Ref # "Link a ref name (string) to a Container instance." import requests import logging # Transcriptic authorization org_name = 'hgbrian' tsc_headers = {k:v for k,v in json.load(open("auth.json")).items() if k in ["X_User_Email","X_User_Token"]} # Transcriptic-specific dead volumes _dead_volume = [("96-pcr",3), ("96-flat",25), ("96-flat-uv",25), ("96-deep",15), ("384-pcr",2), ("384-flat",5), ("384-echo",15), ("micro-1.5",15), ("micro-2.0",15)] dead_volume = {k:Unit(v,"microliter") for k,v in _dead_volume} def init_inventory_well(well, headers=tsc_headers, org_name=org_name): """Initialize well (set volume etc) for Transcriptic""" def _container_url(container_id): return 'https://secure.transcriptic.com/{}/samples/{}.json'.format(org_name, container_id) response = requests.get(_container_url(well.container.id), headers=headers) response.raise_for_status() container = response.json() well_data = container['aliquots'][well.index] well.name = "{}/{}".format(container["label"], well_data['name']) if well_data['name'] is not None else container["label"] well.properties = well_data['properties'] well.volume = Unit(well_data['volume_ul'], 'microliter') if 'ERROR' in well.properties: raise ValueError("Well {} has ERROR property: {}".format(well, well.properties["ERROR"])) if well.volume < Unit(20, "microliter"): logging.warn("Low volume for well {} : {}".format(well.name, well.volume)) return True def touchdown(fromC, toC, durations, stepsize=2, meltC=98, extC=72): """Touchdown PCR protocol generator""" assert 0 < stepsize < toC < fromC def td(temp, dur): return {"temperature":"{:2g}:celsius".format(temp), "duration":"{:d}:second".format(dur)} return [{"cycles": 1, "steps": [td(meltC, durations[0]), td(C, durations[1]), td(extC, durations[2])]} for C in np.arange(fromC, toC-stepsize, -stepsize)] def convert_ug_to_pmol(ug_dsDNA, num_nts): """Convert ug dsDNA to pmol""" return float(ug_dsDNA)/num_nts * (1e6 / 660.0) def expid(val): """Generate a unique ID per experiment""" return "{}_{}".format(experiment_name, val) def ┬╡l(microliters): """Unicode function name for creating microliter volumes""" return Unit(microliters,"microliter") 

рдбреАрдПрдирдП рд╕рдВрд╢реНрд▓реЗрд╖рдг рдФрд░ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди


рдЖрдзреБрдирд┐рдХ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди рдХреЗ рд╕рд╛рде рдЗрд╕рдХреЗ рд╕рдВрдмрдВрдз рдХреЗ рдмрд╛рд╡рдЬреВрдж, рдбреАрдПрдирдП рд╕рдВрд╢реНрд▓реЗрд╖рдг рдПрдХ рдХрд╛рдлреА рдкреБрд░рд╛рдиреА рддрдХрдиреАрдХ рд╣реИред рджрд╢рдХреЛрдВ рддрдХ, рд╣рдо рдСрд▓рд┐рдЧреЛрдиреНрдпреВрдХреНрд▓рд┐рдпреЛрдЯрд╛рдЗрдбреНрд╕ (рдпрд╛рдиреА, 200 рдЕрдиреБрдХреНрд░рдо рддрдХ рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо) рдмрдирд╛рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рд╣рдореЗрд╢рд╛ рдорд╣рдВрдЧрд╛ рдерд╛, рдФрд░ рд░рд╕рд╛рдпрди рд╡рд┐рдЬреНрдЮрд╛рди рдиреЗ рдХрднреА рднреА рд▓рдВрдмреЗ рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо рдХреА рдЕрдиреБрдорддрд┐ рдирд╣реАрдВ рджреАред рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдкреВрд░реЗ рдЬреАрди (рд╣рдЬрд╛рд░реЛрдВ рдард┐рдХрд╛рдиреЛрдВ рддрдХ) рдХреЛ рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЙрдЪрд┐рдд рдореВрд▓реНрдп рдкрд░ рдпрд╣ рд╕рдВрднрд╡ рд╣реЛ рдЧрдпрд╛ рд╣реИред рдпрд╣ рдЙрдкрд▓рдмреНрдзрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ "рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдмрд╛рдпреЛрд▓реЙрдЬреА" рдХреЗ рдпреБрдЧ рдХреЛ рдЦреЛрд▓рддреА рд╣реИред

рдХреНрд░реЗрдЧ рд╡реЗрдВрдЯрд░ рдХреЗ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдЬреАрдиреЛрдорд┐рдХреНрд╕ рдиреЗ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди рдХреЛ рдкреВрд░реЗ рдЬреАрд╡ рдХреЛ рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдХрд░рдХреЗ рд╕рдмрд╕реЗ рджреВрд░ рдзрдХреЗрд▓ рджрд┐рдпрд╛ рд╣реИ - рдЬрд┐рд╕рдХреА рд▓рдВрдмрд╛рдИ рдПрдХ рдорд┐рд▓рд┐рдпрди рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдЬреИрд╕реЗ-рдЬреИрд╕реЗ рдбреАрдПрдирдП рдХреА рд▓рдВрдмрд╛рдИ рдмрдврд╝рддреА рд╣реИ, рд╡реИрд╕реЗ-рд╡реИрд╕реЗ рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИ, рдмрд▓реНрдХрд┐ рдЕрд╕реЗрдВрдмрд▓реА (рдпрд╛рдиреА, рдПрдХ рд╕рд╛рде рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреЛ рд╕рд┐рд▓рд╛рдИ рдХрд░рдирд╛)ред рдкреНрд░рддреНрдпреЗрдХ рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рд╕рд╛рде, рдЖрдк рдбреАрдПрдирдП рдХреА рд▓рдВрдмрд╛рдИ (рдпрд╛ рдЕрдзрд┐рдХ) рдХреЛ рджреЛрдЧреБрдирд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдПрдХ рджрд░реНрдЬрди рдпрд╛ рдЗрддрдиреА рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдХреЗ рдмрд╛рдж, рдЖрдкрдХреЛ рдПрдХ рд▓рдВрдмрд╛ рдЕрдгреБ рдорд┐рд▓рддрд╛ рд╣реИ! рд╕рдВрд╢реНрд▓реЗрд╖рдг рдФрд░ рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рдмреАрдЪ рдХрд╛ рдЕрдВрддрд░ рдЬрд▓реНрдж рд╣реА рдЕрдВрддрд┐рдо рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд▓рд┐рдП рд╕реНрдкрд╖реНрдЯ рд╣реЛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

рдореВрд░ рдХрд╛ рдХрд╛рдиреВрди?


рдбреАрдПрдирдП рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреА рдХреАрдордд рдмрд╣реБрдд рддреЗрдЬреА рд╕реЗ рдЧрд┐рд░ рд░рд╣реА рд╣реИ, рдПрдХ рд╕рд╛рд▓ рдкрд╣рд▓реЗ $ 0.30 рд╕реЗ рджреЛ рд╕реЗ рдЖрдЬ рд▓рдЧрднрдЧ $ 0.10 рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдкреНрд░реЛрд╕реЗрд╕рд░ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдХреА рддрд░рд╣ рдЕрдзрд┐рдХ рд╡рд┐рдХрд╕рд┐рдд рд╣реЛ рд░рд╣рд╛ рд╣реИред рдЗрд╕рдХреЗ рд╡рд┐рдкрд░реАрдд, рдореВрд░ рдХреЗ рдирд┐рдпрдо рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдордг рдореВрд▓реНрдп рддреЗрдЬреА рд╕реЗ рдЧрд┐рд░ рд░рд╣реЗ рд╣реИрдВред $ 0.02 рдкреНрд░рддрд┐ рдмреЗрд╕ рдХрд╛ рд▓рдХреНрд╖реНрдп рдПрдХ рд╡рд┐рднрдХреНрддрд┐ рдмрд┐рдВрджреБ рдХреЗ рд░реВрдк рдореЗрдВ рд╕реЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ рдЬрд╣рд╛рдВ рдЖрдк рдмрд╣реБрдд рдЕрдзрд┐рдХ рд╕рдордп рд▓реЗрдиреЗ рд╡рд╛рд▓реА рдбреАрдПрдирдП рдЬреЛрдбрд╝рддреЛрдбрд╝ рдХреЛ рдПрдХ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреЗ рд╕рд╛рде рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЗрд╕ рдХреАрдордд рдкрд░, рдЖрдк $ 60 рдХреЗ рд▓рд┐рдП рдкреВрд░реЗ 3kb рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХреЛ рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдЖрдгрд╡рд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди рдХрд╛ рдПрдХ рдЧреБрдЪреНрдЫрд╛ рдЫреЛрдбрд╝ рд╕рдХрддреЗ рд╣реИрдВред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд╣рдо рдПрдХ-рджреЛ рд╕рд╛рд▓ рдореЗрдВ рдЗрд╕реЗ рд╣рд╛рд╕рд┐рд▓ рдХрд░ рд▓реЗрдВрдЧреЗред


рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдордг рдореВрд▓реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдбреАрдПрдирдП рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреА рдХреАрдорддреЗрдВ, 1 рдмреЗрд╕ рдХреА рдХреАрдордд (рдХрд╛рд░реНрд▓рд╕рди, 2014)

рдбреАрдПрдирдП рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХрдВрдкрдирд┐рдпреЛрдВ


рдбреАрдПрдирдП рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдХрдИ рдмрдбрд╝реА рдХрдВрдкрдирд┐рдпрд╛рдВ рд╣реИрдВ: рдЖрдИрдбреАрдЯреА рдСрд▓рд┐рдЧреЛрдиреНрдпреВрдХреНрд▓рд┐рдпреЛрдЯрд╛рдЗрдбреНрд╕ рдХрд╛ рд╕рдмрд╕реЗ рдмрдбрд╝рд╛ рдЙрддреНрдкрд╛рджрдХ рд╣реИ, рдФрд░ рдпрд╣ рд▓рдВрдмреЗ рд╕рдордп рддрдХ (2kb рддрдХ) "рдЬреАрди рдЯреБрдХрдбрд╝реЗ" ( рдЬреАрдмреНрд▓реЙрдХ ) рдХрд╛ рдЙрддреНрдкрд╛рджрди рднреА рдХрд░ рд╕рдХрддрд╛ рд╣реИред Gen9 , рдЯреНрд╡рд┐рд╕реНрдЯ рдФрд░ рдбреАрдПрдирдП 2.0 рдЖрдорддреМрд░ рдкрд░ рд▓рдВрдмреЗ рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреЗ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╣реИрдВ - рдпреЗ рдЬреАрди рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХрдВрдкрдирд┐рдпрд╛рдВ рд╣реИрдВред рдХреБрдЫ рджрд┐рд▓рдЪрд╕реНрдк рдирдИ рдХрдВрдкрдирд┐рдпрд╛рдВ рднреА рд╣реИрдВ, рдЬреИрд╕реЗ рдХрд┐ рдХреИрдВрдмреНрд░рд┐рдпрди рдЬреАрдиреЛрдорд┐рдХреНрд╕ рдФрд░ рдЬреЗрдиреЗрд╕рд┐рд╕ рдбреАрдПрдирдП , рдЬреЛ рдЕрдЧрд▓реА рдкреАрдврд╝реА рдХреЗ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреЗ рддрд░реАрдХреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░ рд░рд╣реЗ рд╣реИрдВред

рдЕрдиреНрдп рдХрдВрдкрдирд┐рдпрд╛рдВ, рдЬреИрд╕реЗ рдХрд┐ Amyris , Zymergen, рдФрд░ Ginkgo Bioworks , рдЗрди рдХрдВрдкрдирд┐рдпреЛрдВ рджреНрд╡рд╛рд░рд╛ рд╢рд░реАрд░ рд╕реНрддрд░ рдкрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдбреАрдПрдирдП рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреА рд╣реИрдВред рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдЬреАрдиреЛрдорд┐рдХреНрд╕ рднреА рдРрд╕рд╛ рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдбреАрдПрдирдП рдХреЛ рд╣реА рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдХрд░рддрд╛ рд╣реИред

рдЬрд┐рдиреНрдХрдЧреЛ рдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ 100 рдорд┐рд▓рд┐рдпрди рдмреЗрд╕ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдЯреНрд╡рд┐рд╕реНрдЯ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реМрджрд╛ рдХрд┐рдпрд╛ : рд╕рдмрд╕реЗ рдмрдбрд╝реА рдбреАрд▓ рдЬреЛ рдореИрдВрдиреЗ рджреЗрдЦреА рд╣реИред рдпрд╣ рд╕рд╛рдмрд┐рдд рдХрд░рддрд╛ рд╣реИ рдХрд┐ рд╣рдо рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд░рд╣рддреЗ рд╣реИрдВ, рдЯреНрд╡рд┐рд╕реНрдЯ рдиреЗ рднреА рдЯреНрд╡рд┐рдЯрд░ рдкрд░ рдПрдХ рдкреНрд░рдЪрд╛рд░рдХ рдХреЛрдб рдХрд╛ рд╡рд┐рдЬреНрдЮрд╛рдкрди рдХрд┐рдпрд╛: рдЬрдм рдЖрдк 10 рдорд┐рд▓рд┐рдпрди рдбреАрдПрдирдП рдмреЗрд╕ рдЦрд░реАрджрддреЗ рд╣реИрдВ (рд▓рдЧрднрдЧ рдкреВрд░реЗ рдЦрдореАрд░ рдЬреАрдиреЛрдо!), рддреЛ рдЖрдкрдХреЛ рдореБрдлреНрдд рдореЗрдВ 10 рдорд┐рд▓рд┐рдпрди рдорд┐рд▓рддреЗ рд╣реИрдВред


рдЯреНрд╡рд┐рдЯрд░ рдЯреНрд╡рд┐рд╕реНрдЯ рдирд┐рдХреЗ рдСрдлрд░

рднрд╛рдЧ рдПрдХ: рдкреНрд░рдпреЛрдЧ рдбрд┐рдЬрд╛рдЗрди


рд╣рд░реА рдлреНрд▓реЛрд░реЛрд╕реЗрдВрдЯ рдкреНрд░реЛрдЯреАрди


рдЗрд╕ рдкреНрд░рдпреЛрдЧ рдореЗрдВ, рд╣рдо рдПрдХ рд╕рд░рд▓, рд╣рд░реЗ рд░рдВрдЧ рдХреЗ рдлреНрд▓реЛрд░реЛрд╕реЗрдВрдЯ рдкреНрд░реЛрдЯреАрди (GFP) рдХреЗ рд▓рд┐рдП рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо рдХреЛ рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдЬреАрдПрдлрдкреА рдкреНрд░реЛрдЯреАрди рдкрд╣рд▓реА рдмрд╛рд░ рдПрдХ рдЬреЗрд▓реАрдлрд╝рд┐рд╢ рдореЗрдВ рдкрд╛рдпрд╛ рдЧрдпрд╛ рдерд╛ рдЬреЛ рдкрд░рд╛рдмреИрдВрдЧрдиреА рдкреНрд░рдХрд╛рд╢ рдХреЗ рддрд╣рдд рдлреНрд▓реЛрд░реЛрд╕реЗрдВрдЯ рд╣реЛрддрд╛ рд╣реИред рдпрд╣ рдПрдХ рдЕрддреНрдпрдВрдд рдЙрдкрдпреЛрдЧреА рдкреНрд░реЛрдЯреАрди рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдХреЛ рдорд╛рдкрдХрд░ рдЗрд╕рдХреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХрд╛ рдкрддрд╛ рд▓рдЧрд╛рдирд╛ рдЖрд╕рд╛рди рд╣реИред GFP рд╡рд┐рдХрд▓реНрдк рд╣реИрдВ рдЬреЛ рдкреАрд▓реЗ, рд▓рд╛рд▓, рдирд╛рд░рдВрдЧреА рдФрд░ рдЕрдиреНрдп рд░рдВрдЧреЛрдВ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддреЗ рд╣реИрдВред

рдпрд╣ рджреЗрдЦрдирд╛ рджрд┐рд▓рдЪрд╕реНрдк рд╣реИ рдХрд┐ рд╡рд┐рднрд┐рдиреНрди рдореНрдпреВрдЯреЗрд╢рди рдПрдХ рдкреНрд░реЛрдЯреАрди рдХреЗ рд░рдВрдЧ рдХреЛ рдХреИрд╕реЗ рдкреНрд░рднрд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдпрд╣ рдПрдХ рд╕рдВрднрд╛рд╡рд┐рдд рджрд┐рд▓рдЪрд╕реНрдк рдорд╢реАрди рд╕реАрдЦрдиреЗ рдХреА рд╕рдорд╕реНрдпрд╛ рд╣реИред рд╣рд╛рд▓ рд╣реА рдореЗрдВ, рдЖрдкрдХреЛ рдЗрд╕рдХреЗ рд▓рд┐рдП рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рдмрд┐рддрд╛рдирд╛ рд╣реЛрдЧрд╛, рд▓реЗрдХрд┐рди рдЕрдм рдореИрдВ рдЖрдкрдХреЛ рджрд┐рдЦрд╛рдКрдВрдЧрд╛ рдХрд┐ рдпрд╣ (рд▓рдЧрднрдЧ) рдкрд╛рда рдлрд╝рд╛рдЗрд▓ рдХреЛ рд╕рдВрдкрд╛рджрд┐рдд рдХрд░рдирд╛ рдЬрд┐рддрдирд╛ рдЖрд╕рд╛рди рд╣реИ!

рддрдХрдиреАрдХреА рд░реВрдк рд╕реЗ, рдореЗрд░рд╛ рдЬреАрдПрдлрдкреА рдЧреБрдгрд╡рддреНрддрд╛ рдореЗрдВ рд╕реБрдзрд╛рд░ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдмрджрд▓рд╛рд╡реЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╕реБрдкрд░ рдлреЛрд▓реНрдбрд░ рд╡рд┐рдХрд▓реНрдк (sfGFP) рд╣реИред


Superfolder-GFP (sfGFP) рдореЗрдВ, рдХреБрдЫ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрди рдЗрд╕реЗ рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рдЧреБрдг рджреЗрддреЗ рд╣реИрдВред


GFP рд╕рдВрд░рдЪрдирд╛ ( рдкреАрд╡реА рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХрд▓реНрдкрдирд╛ рдХреА рдЧрдИ)

рдЯреНрд╡рд┐рд╕реНрдЯ рдореЗрдВ рдЬреАрдПрдлрдкреА рд╕рдВрд╢реНрд▓реЗрд╖рдг


рдореИрдВ рдЯреНрд╡рд┐рд╕реНрдЯ рдХреЗ рдЕрд▓реНрдлрд╛ рдкрд░реАрдХреНрд╖рдг рдХрд╛рд░реНрдпрдХреНрд░рдо рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рднрд╛рдЧреНрдпрд╢рд╛рд▓реА рдерд╛, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рдЙрдирдХреА рдбреАрдПрдирдП рд╕рдВрд╢реНрд▓реЗрд╖рдг рд╕реЗрд╡рд╛ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ (рдЙрдиреНрд╣реЛрдВрдиреЗ рдХреГрдкрдпрд╛ рдореЗрд░реЗ рдЫреЛрдЯреЗ рдЖрджреЗрд╢ рдХреЛ рд░рдЦрд╛ - рдзрдиреНрдпрд╡рд╛рдж, рдЯреНрд╡рд┐рд╕реНрдЯ!)ред рдпрд╣ рд╣рдорд╛рд░реЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рдПрдХ рдирдИ рдХрдВрдкрдиреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдПрдХ рдирдИ рд╕рд░рд▓реАрдХреГрдд рд╕рдВрд╢реНрд▓реЗрд╖рдг рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рдЙрдирдХреА рдХреАрдорддреЗрдВ $ 0.10 рдкреНрд░рддрд┐ рдмреЗрд╕ рдпрд╛ рдЙрд╕рд╕реЗ рдХрдо рд╣реИрдВ , рд▓реЗрдХрд┐рди рд╡реЗ рдЕрднреА рднреА рдмреАрдЯрд╛ рдореЗрдВ рд╣реИрдВ , рдФрд░ рдЬрд┐рд╕ рдЕрд▓реНрдлрд╛ рдкреНрд░реЛрдЧреНрд░рд╛рдо рдореЗрдВ рдореИрдВрдиреЗ рднрд╛рдЧ рд▓рд┐рдпрд╛ рдерд╛ рд╡рд╣ рдмрдВрдж рд╣реЛ рдЧрдпрд╛ рдерд╛ред рдЯреНрд╡рд┐рд╕реНрдЯ рдиреЗ рд▓рдЧрднрдЧ 150 рдорд┐рд▓рд┐рдпрди рдбреЙрд▓рд░ рдЬреБрдЯрд╛рдП, рдЗрд╕рд▓рд┐рдП рдЙрдирдХреА рддрдХрдиреАрдХ рдЬреАрд╡рдВрдд рд╣реИред

рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо рдХреЛ рдПрдХ рдПрдХреНрд╕реЗрд▓ рд╕реНрдкреНрд░реЗрдбрд╢реАрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЯреНрд╡рд┐рд╕реНрдЯ рдХреЗ рд▓рд┐рдП рднреЗрдЬрд╛ (рдЕрднреА рддрдХ рдХреЛрдИ рдПрдкреАрдЖрдИ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдЬрд▓реНрдж рд╣реА рд╣реЛрдЧрд╛), рдФрд░ рдЙрдиреНрд╣реЛрдВрдиреЗ рдЯреНрд░рд╛рдВрд╕рд╕реЗрдкреНрдЯрд┐рдХ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдореЗрдВ рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдбреАрдПрдирдП рдХреЛ рд╕реАрдзреЗ рдореЗрд░реЗ рдмреЙрдХреНрд╕ рдореЗрдВ рднреЗрдЬрд╛ (рдореИрдВрдиреЗ рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП рдЖрдИрдбреАрдЯреА рдХрд╛ рдЙрдкрдпреЛрдЧ рднреА рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЙрдиреНрд╣реЛрдВрдиреЗ рдирд╣реАрдВ рднреЗрдЬрд╛ред рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдореЗрдВ рдбреАрдПрдирдП рд╕рд╣реА рд╣реИ, рдЬреЛ рдордЬрд╝рд╛ рдХреЛ рдереЛрдбрд╝рд╛ рдЦрд░рд╛рдм рдХрд░рддрд╛ рд╣реИ)ред

рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдЕрднреА рддрдХ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрдкрдпреЛрдЧ рдХрд╛ рдорд╛рдорд▓рд╛ рдирд╣реАрдВ рдмрди рдкрд╛рдИ рд╣реИ рдФрд░ рдЗрд╕реЗ рдХреБрдЫ рд╕рдорд░реНрдерди рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдиреЗ рдХрд╛рдо рдХрд┐рдпрд╛, рддрд╛рдХрд┐ рдкреВрд░реА рдкрд╛рдЗрдкрд▓рд╛рдЗрди рдЖрднрд╛рд╕реА рдмрдиреА рд░рд╣реЗред рдЗрд╕рдХреЗ рдмрд┐рдирд╛, рдореБрдЭреЗ рд╕рдВрднрд╡рддрдГ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рддрдХ рдкрд╣реБрдВрдЪ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрдЧреА - рдХрдИ рдХрдВрдкрдирд┐рдпрд╛рдВ рдЕрдкрдиреЗ рдШрд░ рдХреЗ рдкрддреЗ рдкрд░ рдбреАрдПрдирдП рдпрд╛ рдЕрднрд┐рдХрд░реНрдордХреЛрдВ рдХреЛ рдирд╣реАрдВ рднреЗрдЬреЗрдВрдЧреАред


GFP рд╣рд╛рдирд┐рд░рд╣рд┐рдд рд╣реИ, рдЗрд╕рд▓рд┐рдП рдХрд┐рд╕реА рднреА рдкреНрд░рдХрд╛рд░ рдХреЛ рд╣рд╛рдЗрд▓рд╛рдЗрдЯ рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ

рдкреНрд▓рд╛рд╕реНрдорд┐рдб рд╡реЗрдХреНрдЯрд░


рдЗрд╕ рдкреНрд░реЛрдЯреАрди рдХреЛ рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдореЗрдВ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЬреАрди рдХреЛ рдХрд╣реАрдВ рдФрд░ рд░рд╣рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдЕрдиреНрдпрдерд╛ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдбреАрдПрдирдП рдХреЛ рдЬреАрди рдХреЛ рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рдХрд░рдиреЗ рд╕реЗ рдмрд╕ рддреБрд░рдВрдд рдЦрд╝рд░рд╛рдм рд╣реЛ рдЬрд╛рддрд╛ рд╣реИред рдПрдХ рдирд┐рдпрдо рдХреЗ рд░реВрдк рдореЗрдВ, рдЖрдгрд╡рд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди рдореЗрдВ рд╣рдо рдПрдХ рдкреНрд▓рд╛рд╕реНрдорд┐рдб, рдЧреЛрд▓ рдбреАрдПрдирдП рдХреЗ рдПрдХ рдЯреБрдХрдбрд╝реЗ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ рдЬреЛ рдЬреАрд╡рд╛рдгреБ рдЬреАрдиреЛрдо рдХреЗ рдмрд╛рд╣рд░ рд░рд╣рддрд╛ рд╣реИ рдФрд░ рдкреНрд░реЛрдЯреАрди рд╡реНрдпрдХреНрдд рдХрд░рддрд╛ рд╣реИред рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛, рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ рдкреНрд░рддрд┐рд░реЛрдз рдЬреИрд╕реЗ рдЙрдкрдпреЛрдЧреА, рд╕реНрдЯреИрдВрдб-рдЕрд▓реЛрди рдХрд╛рд░реНрдпрд╛рддреНрдордХ рдореЙрдбреНрдпреВрд▓ рд╕рд╛рдЭрд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдПрдХ рд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рддрд░реАрдХрд╛ рд╣реИред рдПрдХ рд╕реЗрд▓ рдореЗрдВ рд╕реИрдХрдбрд╝реЛрдВ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВред

рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рдЗрд╕реНрддреЗрдорд╛рд▓ рдХреА рдЬрд╛рдиреЗ рд╡рд╛рд▓реА рд╢рдмреНрджрд╛рд╡рд▓реА рдпрд╣ рд╣реИ рдХрд┐ рдПрдХ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдПрдХ рд╡реЗрдХреНрдЯрд░ рд╣реИ , рдФрд░ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдбреАрдПрдирдП рдПрдХ рд╕рдореНрдорд┐рд▓рди (рд╕рдореНрдорд┐рд▓рди) рд╣реИред рддреЛ, рдпрд╣рд╛рдБ рд╣рдо рдПрдХ рд╡реЗрдХреНрдЯрд░ рдореЗрдВ рд╕рдореНрдорд┐рд▓рди рдХреЛ рдХреНрд▓реЛрди рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХрд░ рд░рд╣реЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рд╡реЗрдХреНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдХреЛ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХрд░рддреЗ рд╣реИрдВред


рдмреИрдХреНрдЯреАрд░рд┐рдпрд▓ рдЬреАрдиреЛрдо рдФрд░ рдкреНрд▓рд╛рд╕реНрдорд┐рдб (рдкреИрдорд╛рдиреЗ рдкрд░ рдирд╣реАрдВ!) ( рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛ )

pUC19


рдореИрдВрдиреЗ pUC19 рд╢реНрд░реГрдВрдЦрд▓рд╛ рдореЗрдВ рдХрд╛рдлреА рдорд╛рдирдХ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдЪреБрдирд╛ред рдпрд╣ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдмрд╣реБрдд рдмрд╛рд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рдФрд░ рдЪреВрдВрдХрд┐ рдпрд╣ рдорд╛рдирдХ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдЙрдкрд▓рдмреНрдз рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╣рдореЗрдВ рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рднреА рднреЗрдЬрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИред


PUC19 рдХреА рд╕рдВрд░рдЪрдирд╛: рдореБрдЦреНрдп рдШрдЯрдХ рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдкреНрд░рддрд┐рд░реЛрдз рдЬреАрди, рд▓реИрдХреНрдЬрд╝реЛ, рдПрдорд╕реАрдПрд╕ / рдкреЙрд▓реАрдЗрдиреНрдХреЗрд░, рдФрд░ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХреА рдЙрддреНрдкрддреНрддрд┐ (рд╡рд┐рдХрд┐рдкреАрдбрд┐рдпрд╛) рд╣реИрдВ

PUC19 рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдХрд╛рд░реНрдп рд╣реИ: рдЪреВрдБрдХрд┐ рдЗрд╕рдореЗрдВ рд▓реИрдХреНрдЬрд╝реЛ рдЬреАрди рд╣реЛрддрд╛ рд╣реИ, рдЖрдк рдЗрд╕ рдкрд░ рдиреАрд▓реА-рд╕рдлреЗрдж рдЪрдпрди рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдХреМрди рд╕реА рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдореЗрдВ рд╕рдореНрдорд┐рд▓рди рд╕рдлрд▓ рдерд╛ред рджреЛ рд░рд╕рд╛рдпрдиреЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ: IPTG рдФрд░ X-gal , рдФрд░ рд╕рд░реНрдХрд┐рдЯ рдирд┐рдореНрдирд╛рдиреБрд╕рд╛рд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ:

  • IPTG рд▓реИрдХреНрдЬрд╝реЛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдкреНрд░реЗрд░рд┐рдд рдХрд░рддрд╛ рд╣реИред
  • рдпрджрд┐ рд▓реИрдХреНрдЬрд╝реЛ рдореЗрдВ рдХрдИ рдХреНрд▓реЛрдирд┐рдВрдЧ рд╕рд╛рдЗрдЯ ( MCS / рдкреЙрд▓реАрдЗрдиреНрдХреЗрдпрд░ ) рдкрд░ рдбреАрдПрдирдП рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд▓реИрдХреНрдЬрд╝рдХ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рддреЛ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдПрдХреНрд╕-рдЧреИрд▓ рдХреЛ рд╣рд╛рдЗрдбреНрд░реЛрд▓рд╛рдЗрдЬрд╝ рдирд╣реАрдВ рдХрд░ рд╕рдХрддрд╛ рд╣реИ рдФрд░ рдпреЗ рдХреЙрд▓реЛрдирд┐рдпрд╛рдВ рдиреАрд▓реЗ рдХреА рдмрдЬрд╛рдп рд╕рдлреЗрдж рд╣реЛ рдЬрд╛рдПрдВрдЧреАред
  • рдЗрд╕рд▓рд┐рдП, рдПрдХ рд╕рдлрд▓ рд╕рдореНрдорд┐рд▓рди рд╕рдлреЗрдж рдХрд╛рд▓реЛрдирд┐рдпреЛрдВ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддрд╛ рд╣реИ, рдФрд░ рдПрдХ рдЕрд╕рдлрд▓ рд╕рдореНрдорд┐рд▓рди рдиреАрд▓реЗ рдХрд╛рд▓реЛрдирд┐рдпреЛрдВ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд░рддрд╛ рд╣реИред


рдиреАрд▓реЗ рдФрд░ рд╕рдлреЗрдж рдЪрдпрди рд╕реЗ рдкрддрд╛ рдЪрд▓рддрд╛ рд╣реИ рдХрд┐ рдХрд╣рд╛рдБ рд▓реИрдХреНрдЬрд╝реЛ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдирд┐рд╖реНрдХреНрд░рд┐рдп рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛

рдУрдкрдирд╡реЗрдЯрд╡реЗрдпрд░ рдкреНрд░рд▓реЗрдЦрди рдХрд╣рддрд╛ рд╣реИ:

рдИред рдХреЛрд▓рд╛рдИ DH5╬▒ рдХреЛ рд▓рд╛рдЦ рдкреНрд░рдореЛрдЯрд░ рд╕реЗ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдкреНрд░реЗрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП IPTG рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рдирд╣реАрдВ рд╣реИ, рднрд▓реЗ рд╣реА рдПрдХ рд▓реИрдХ рд░рд┐рдкреНрд░реЗрд╕рд░ рддрдирд╛рд╡ рдореЗрдВ рд╡реНрдпрдХреНрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реЛред рдЕрдзрд┐рдХрд╛рдВрд╢ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХреА рдкреНрд░рддрд┐рд▓рд┐рдкрд┐ рд╕рдВрдЦреНрдпрд╛ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдореЗрдВ рджрдордирдХрд░реНрддрд╛рдУрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдпрджрд┐ рдЖрдкрдХреЛ рдЕрдзрд┐рдХрддрдо рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рддреЛ рдЖрдИрдкреАрдПрдордЬреА рдХреЛ 1 рдорд┐рдореА рдХреЗ рдЕрдВрддрд┐рдо рдПрдХрд╛рдЧреНрд░рддрд╛ рдореЗрдВ рдЬреЛрдбрд╝реЗрдВред

рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо


SfGFP рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо


рдкреНрд░реЛрдЯреАрди рдЕрдиреБрдХреНрд░рдо рдХреЛ рд▓реЗ рдХрд░ sfGFP рдХреЗ рд▓рд┐рдП рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИ рдФрд░ рдЗрд╕реЗ рдореЗрдЬрдмрд╛рди рдЬреАрд╡ (рдпрд╣рд╛рдВ, рдИред рдХреЛрд▓рд╛рдИ ) рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдХреЛрдбрди рдХреЗ рд╕рд╛рде рдПрдиреНрдХреЛрдбрд┐рдВрдЧ рд╣реИ ред рдпрд╣ 236 рдПрдорд┐рдиреЛ рдПрд╕рд┐рдб рдХреЗ рд╕рд╛рде рдПрдХ рдордзреНрдпрдо рдЖрдХрд╛рд░ рдХрд╛ рдкреНрд░реЛрдЯреАрди рд╣реИ, рдЗрд╕рд▓рд┐рдП 10 рд╕реЗрдВрдЯреАрдореАрдЯрд░ рдбреАрдПрдирдП рд╕рдВрд╢реНрд▓реЗрд╖рдг рдкрд░ рд▓рдЧрднрдЧ $ 70 рдкреНрд░рддрд┐ рдмреЗрд╕ рд╣реЛрддрд╛ рд╣реИред


рд╡реЛрд▓реНрдлреНрд░рд╛рдо рдЕрд▓реНрдлрд╛, рд╕рдВрд╢реНрд▓реЗрд╖рдг рд▓рд╛рдЧрдд рдЧрдгрдирд╛

рд╣рдорд╛рд░реЗ sfGFP рдХреЗ рдкрд╣рд▓реЗ 12 рдЖрдзрд╛рд░ рд╢рд╛рдЗрди-рдбреЗрд▓рдЧрд╛рд░реЛ рдЕрдиреБрдХреНрд░рдо рд╣реИрдВ , рдЬреЛ рдореИрдВрдиреЗ рдЦреБрдж рдХреЛ рдЬреЛрдбрд╝рд╛, рдЬреЛ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдмрдврд╝рд╛рдирд╛ рдЪрд╛рд╣рд┐рдП (AGGAGGACAGCT, рдлрд┐рд░ ATG ( рдкреНрд░рд╛рд░рдВрдн рдХреЛрдбрди ) рдкреНрд░реЛрдЯреАрди рд╢реБрд░реВ рдХрд░рддрд╛ рд╣реИ)ред рд╕реЗрд▓рд┐рд╕ рд▓реИрдм ( рд╡реНрдпрд╛рдЦреНрдпрд╛рди рд╕реНрд▓рд╛рдЗрдб ) рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдХрд╕рд┐рдд рдПрдХ рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЙрдкрдХрд░рдг рдХреЗ рдЕрдиреБрд╕рд╛рд░, рд╣рдо рдЕрдкрдиреЗ рдкреНрд░реЛрдЯреАрди рдХреА рдЙрдЪреНрдЪ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ (10,000 "рдордирдорд╛рдирд╛ рдЗрдХрд╛рдЗрдпреЛрдВ" рдХреА рдЕрдиреБрд╡рд╛рдж рджреАрдХреНрд╖рд╛ рджрд░) рдХреА рдЙрдореНрдореАрдж рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

 sfGFP_plus_SD = clean_seq(""" AGGAGGACAGCTATGTCGAAAGGAGAAGAACTGTTTACCGGTGTGGTTCCGATTCTGGTAGAACTGGA TGGGGACGTGAACGGCCATAAATTTAGCGTCCGTGGTGAGGGTGAAGGGGATGCCACAAATGGCAAAC TTACCCTTAAATTCATTTGCACTACCGGCAAGCTGCCGGTCCCTTGGCCGACCTTGGTCACCACACTG ACGTACGGGGTTCAGTGTTTTTCGCGTTATCCAGATCACATGAAACGCCATGACTTCTTCAAAAGCGC CATGCCCGAGGGCTATGTGCAGGAACGTACGATTAGCTTTAAAGATGACGGGACCTACAAAACCCGGG CAGAAGTGAAATTCGAGGGTGATACCCTGGTTAATCGCATTGAACTGAAGGGTATTGATTTCAAGGAA GATGGTAACATTCTCGGTCACAAATTAGAATACAACTTTAACAGTCATAACGTTTATATCACCGCCGA CAAACAGAAAAACGGTATCAAGGCGAATTTCAAAATCCGGCACAACGTGGAGGACGGGAGTGTACAAC TGGCCGACCATTACCAGCAGAACACACCGATCGGCGACGGCCCGGTGCTGCTCCCGGATAATCACTAT TTAAGCACCCAGTCAGTGCTGAGCAAAGATCCGAACGAAAAACGTGACCATATGGTGCTGCTGGAGTT CGTGACCGCCGCGGGCATTACCCATGGAATGGATGAACTGTATAAA""") print("Read in sfGFP plus Shine-Dalgarno: {} bases long".format(len(sfGFP_plus_SD))) sfGFP_aas = clean_aas("""MSKGEELFTGVVPILVELDGDVNGHKFSVRGEGEGDATNGKLTLKFICTTGKLPVPWPTLVTTLTYG VQCFSRYPDHMKRHDFFKSAMPEGYVQERTISFKDDGTYKTRAEVKFEGDTLVNRIELKGIDFKEDGNILGHKLEYNFNSHNVYITADKQKN GIKANFKIRHNVEDGSVQLADHYQQNTPIGDGPVLLPDNHYLSTQSVLSKDPNEKRDHMVLLEFVTAAGITHGMDELYK""") assert sfGFP_plus_SD[12:].translate() == sfGFP_aas print("Translation matches protein with accession 532528641") 

  SfGFP рдкреНрд▓рд╕ рд╢рд╛рдЗрди-рдбреЗрд▓рдЧрд╛рд░реНрдиреЛ рдореЗрдВ рдкрдврд╝реЗрдВ: 726 рдЖрдзрд╛рд░ рд▓рдВрдмреЗ
 рдЕрдиреБрд╡рд╛рдж 532528641 рдкрд░рд┐рдЧреНрд░рд╣рдг рдХреЗ рд╕рд╛рде рдкреНрд░реЛрдЯреАрди рд╕реЗ рдореЗрд▓ рдЦрд╛рддрд╛ рд╣реИ 

PUC19 рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо


рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рдЬрд╛рдБрдЪрддрд╛ рд╣реВрдВ рдХрд┐ NEB рд╕реЗ рдореИрдВрдиреЗ рдЬреЛ pUC19 рдХреНрд░рдо рдбрд╛рдЙрдирд▓реЛрдб рдХрд┐рдпрд╛ рд╣реИ, рдЙрд╕рдХреА рд▓рдВрдмрд╛рдИ рд╕рд╣реА рд╣реИ рдФрд░ рдЗрд╕рдореЗрдВ рдЕрдкреЗрдХреНрд╖рд┐рдд рдкреЙрд▓реАрдЗрдВрдХреЗрд░ тАЛтАЛрд╢рд╛рдорд┐рд▓ рд╣реИрдВ ред

 pUC19_fasta = !cat puc19fsa.txt pUC19_fwd = clean_seq(''.join(pUC19_fasta[1:])) pUC19_rev = pUC19_fwd.reverse_complement() assert all(nt in "ACGT" for nt in pUC19_fwd) assert len(pUC19_fwd) == 2686 pUC19_MCS = clean_seq("GAATTCGAGCTCGGTACCCGGGGATCCTCTAGAGTCGACCTGCAGGCATGCAAGCTT") print("Read in pUC19: {} bases long".format(len(pUC19_fwd))) assert pUC19_MCS in pUC19_fwd print("Found MCS/polylinker") 

  PUC19 рдореЗрдВ рдкрдврд╝реЗрдВ: 2686 рдард┐рдХрд╛рдиреЗ рд▓рдВрдмреЗ
 рдорд┐рд▓реА MCS / рдкреЙрд▓реАрдЗрдВрдХреЗрд░ 

рд╣рдо рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдмреБрдирд┐рдпрд╛рджреА QCs рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ EcoRI рдФрд░ BAMHI рдХреЗрд╡рд▓ рдПрдХ рдмрд╛рд░ pUC19 рдореЗрдВ рдореМрдЬреВрдж рд╣реИрдВ (рдбрд┐рдлрд╝реЙрд▓реНрдЯ рдкреНрд░рддрд┐рдмрдВрдз рд╕реВрдЪреА рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдкреНрд░рддрд┐рдмрдВрдз рдПрдВрдЬрд╛рдЗрдо рдЙрдкрд▓рдмреНрдз рд╣реИрдВ: PstI , PvuII , EcoRI , BAMHI , BbsI , BsmBI )ред

 REs = {"EcoRI":"GAATTC", "BamHI":"GGATTC"} for rename, res in REs.items(): assert (pUC19_fwd.find(res) == pUC19_fwd.rfind(res) and pUC19_rev.find(res) == pUC19_rev.rfind(res)) assert (pUC19_fwd.find(res) == -1 or pUC19_rev.find(res) == -1 or pUC19_fwd.find(res) == len(pUC19_fwd) - pUC19_rev.find(res) - len(res)) print("Asserted restriction enzyme sites present only once: {}".format(REs.keys())) 

рдЕрдм рд╣рдо lacZ╬▒ рдЕрдиреБрдХреНрд░рдо рдХреЛ рджреЗрдЦрддреЗ рд╣реИрдВ рдФрд░ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рддреЗ рд╣реИрдВ рдХрд┐ рдХреБрдЫ рднреА рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдирд╣реАрдВ рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрд╣ рдореЗрдЯ рд╕реЗ рд╢реБрд░реВ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рд╕реНрдЯреЙрдк рдХреЛрдбрди рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдпрд╣ рдкреБрд╖реНрдЯрд┐ рдХрд░рдирд╛ рднреА рдЖрд╕рд╛рди рд╣реИ рдХрд┐ рдпрд╣ рдкреВрд░реНрдг 324bp lacZ╬▒ ORF рд╣реИ рдЬреЛ рдлреНрд░реА рд╕реНрдиреИрдкрдбреАрд▓ рджрд░реНрд╢рдХ рдореЗрдВ pUC19 рдЕрдиреБрдХреНрд░рдо рд▓реЛрдб рдХрд░рдХреЗ рд╣реИред

 lacZ = pUC19_rev[2217:2541] print("lacZ╬▒ sequence:\t{}".format(lacZ)) print("r_MCS sequence:\t{}".format(pUC19_MCS.reverse_complement())) lacZ_p = lacZ.translate() assert lacZ_p[0] == "M" and not "*" in lacZ_p[:-1] and lacZ_p[-1] == "*" assert pUC19_MCS.reverse_complement() in lacZ assert pUC19_MCS.reverse_complement() == pUC19_rev[2234:2291] print("Found MCS once in lacZ sequence") 

  lacZ рдЕрдиреБрдХреНрд░рдо: ATGACCATGATTACGCCAAGCTTGCATGCCTGCAGGTCGACTCTAGAGGATCCCCGGGTACCGAGCTCGAATTCACTGGCCGTCGTTTTACAACGTCGTGACTGGGAAAACCCTGGCGTTACCCAACTTAATCGCCTTGCAGCACATCCCCCTTTCGCCAGCTGGCGTAATAGCGAAGAGGCCCGCACCGATCGCCCTTCCCAACAGTTGCGCAGCCTGAATGGCGAATGGCGCCTGATGCGGTATTTTCTCCTTACGCATCTGTGCGGTATTTCACACCGCATATGGTGCACTCTCAGTACAATCTGCTCTGATGCCGCATAG
 r_MCS рдЕрдиреБрдХреНрд░рдо: AAGCTTGCATGCCTGCAGGTCGACTCTAGGATCCCCGGTTCCGAGCTCGAATTC
 рдПрдХ рдмрд╛рд░ lacZ рдЕрдиреБрдХреНрд░рдо рдореЗрдВ MCS рдорд┐рд▓рд╛ 

рдЧрд┐рдмреНрд╕рди рд╡рд┐рдзрд╛рдирд╕рднрд╛


рдбреАрдПрдирдП рдХреЛ рдЕрд╕реЗрдВрдмрд▓ рдХрд░рдиреЗ рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ рдЯреБрдХрдбрд╝реЗ рдЯреБрдХрдбрд╝реЗ рдХрд░рдирд╛ред рдЖрдорддреМрд░ рдкрд░ рдЖрдк рдПрдХ рд▓рдВрдмреЗ рдЦрдВрдб рдореЗрдВ рдХрдИ рдбреАрдПрдирдП рдЯреБрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ рдЗрд╕реЗ рдПрдХ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдпрд╛ рдЬреАрдиреЛрдо рдореЗрдВ рдХреНрд▓реЛрди рдХрд░рддреЗ рд╣реИрдВред рдЗрд╕ рдкреНрд░рдпреЛрдЧ рдореЗрдВ, рдореИрдВ рдИред рдХреЛрд▓рд╛рдИ рдореЗрдВ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд▓рд┐рдП рд▓рд╛рдЦ рдкреНрд░рдореЛрдЯрд░ рдХреЗ рдиреАрдЪреЗ pUC19 рдкреНрд▓рд╛рдЬреНрдорд┐рдб рдореЗрдВ рдбреАрдПрдирдП рдХреЗ рдПрдХ рдЦрдВрдб рдХреЛ рдХреНрд▓реЛрди рдХрд░рдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВред

рдХрдИ рдХреНрд▓реЛрдирд┐рдВрдЧ рд╡рд┐рдзрд┐рдпрд╛рдБ рд╣реИрдВ (рдЬреИрд╕реЗ рдПрдирдИрдмреА , рдУрдкрдирд╡реЗрдЯрд╡реЗрдпрд░ , рдПрдбрдЬреЗрди )ред рдпрд╣рд╛рдВ рдореИрдВ рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА (2009 рдореЗрдВ рдбреИрдирд┐рдпрд▓ рдЧрд┐рдмреНрд╕рди рджреНрд╡рд╛рд░рд╛ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдЬреАрдиреЛрдорд┐рдХреНрд╕ рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реВрдВрдЧрд╛, рдЬреЛ рдЬрд░реВрд░реА рдирд╣реАрдВ рдХрд┐ рд╕рдмрд╕реЗ рд╕рд╕реНрддрд╛ рддрд░реАрдХрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рд╕рд░рд▓ рдФрд░ рд▓рдЪреАрд▓рд╛ рд╣реИред рдЖрдкрдХреЛ рд╕рд┐рд░реНрдл рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА рдорд╛рд╕реНрдЯрд░ рдорд┐рдХреНрд╕ рдХреЗ рд╕рд╛рде рдПрдХ рдЯреЗрд╕реНрдЯ рдЯреНрдпреВрдм рдореЗрдВ рдбреАрдПрдирдП (рдЬрд┐рд╕реЗ рдЖрдк рдЙрдкрдпреБрдХреНрдд рдУрд╡рд░рд▓реИрдк рдХреЗ рд╕рд╛рде) рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рдФрд░ рдЗрд╕реЗ рдЦреБрдж рдЗрдХрдЯреНрдард╛ рдХрд░рдирд╛ рд╣реЛрдЧрд╛!


рдЧрд┐рдмреНрд╕рди рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреА рд╕рдореАрдХреНрд╖рд╛ ( NEB )

рд╕реНрд░реЛрдд рд╕рд╛рдордЧреНрд░реА


рд╣рдо 10 ╬╝l рддрд░рд▓ рдореЗрдВ рд╕рд┐рдВрдереЗрдЯрд┐рдХ рдбреАрдПрдирдП рдХреЗ 100 рдПрдирдЬреА рдХреЗ рд╕рд╛рде рд╢реБрд░реВ рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдбреАрдПрдирдП рдХреЗ 0.21 picomoles рдпрд╛ 10 рдПрдирдЬреА / ╬╝l рдХреА рдПрдХрд╛рдЧреНрд░рддрд╛ рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИред

 pmol_sfgfp = convert_ug_to_pmol(0.1, len(sfGFP_plus_SD)) print("Insert: 100ng of DNA of length {:4d} equals {:.2f} pmol".format(len(sfGFP_plus_SD), pmol_sfgfp)) 

  рд╕рдореНрдорд┐рд▓рд┐рдд рдХрд░реЗрдВ: рд▓рдВрдмрд╛рдИ 726 рдХреЗ 100ng рдбреАрдПрдирдП 0.21 pmol рдХреЗ рдмрд░рд╛рдмрд░ рд╣реИ 

рдПрдирдИрдмреА рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░, рдпрд╣ рдкрд░реНрдпрд╛рдкреНрдд рд╕реНрд░реЛрдд рд╕рд╛рдордЧреНрд░реА рд╣реИ:

NEB рдбреАрдПрдирдП рдЯреБрдХрдбрд╝реЗ рдХреЗ рдХреБрд▓ 0.02-0.5 picomoles рдХреА рд╕рд┐рдлрд╛рд░рд┐рд╢ рдХрд░рддрд╛ рд╣реИ рдЬрдм 1 рдпрд╛ 2 рдЯреБрдХрдбрд╝реЗ рд╡реЗрдХреНрдЯрд░ рдореЗрдВ рдЗрдХрдЯреНрдареЗ рд╣реЛрддреЗ рд╣реИрдВ, рдпрд╛ 4-6 рдЯреБрдХрдбрд╝реЗ рдПрдХрддреНрд░ рдХрд┐рдП рдЬрд╛рдиреЗ рдкрд░ рдбреАрдПрдирдП рдЯреБрдХрдбрд╝реЗ рдХреЗ 0.2-1.0 picomoles рдПрдХрддреНрд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВред

0.02-0.5 pmoles * рдПрдХреНрд╕ ╬╝l
* рдЕрдиреБрдХреВрд▓рд┐рдд рдХреНрд▓реЛрдирд┐рдВрдЧ рджрдХреНрд╖рддрд╛ рдЖрд╡реЗрд╖рдг рдХреЗ 2-3 рдЧреБрдирд╛ рдЧреБрдирд╛ рдХреЗ рд╕рд╛рде рд╡реИрдХреНрдЯрд░ рдХреА 50-100 рдПрдирдЬреА рд╣реИред рдпрджрд┐ рдЖрдХрд╛рд░ 200 рдмреАрдкреАрдПрд╕ рд╕реЗ рдХрдо рд╣реИ, рддреЛ 5 рдЧреБрдирд╛ рдЕрдзрд┐рдХ рд╕рдореНрдорд┐рд▓рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВред рдЧрд┐рдмреНрд╕рди рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдореЗрдВ рдЕрдирдлрд╝рд┐рд▓реНрдЯрд░реНрдб рдкреАрд╕реАрдЖрд░ рдЯреБрдХрдбрд╝реЗ рдХреА рдХреБрд▓ рдорд╛рддреНрд░рд╛ 20% рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред

рдЧрд┐рдмреНрд╕рди рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд▓рд┐рдП NEBuilder


рдЧрд┐рдмреНрд╕рди рдмрд┐рд▓реНрдб рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдмрдирд╛рдиреЗ рдХреЗ рд▓рд┐рдП Biolab's NEBuilder рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдПрдХ рдорд╣рд╛рди рдЙрдкрдХрд░рдг рд╣реИред рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдпрд╣ рдЖрдкрдХреЛ рд╕рднреА рд╕реВрдЪрдирд╛рдУрдВ рдХреЗ рд╕рд╛рде рдПрдХ рд╡реНрдпрд╛рдкрдХ рдЪрд╛рд░-рдкреГрд╖реНрда рдкреАрдбреАрдПрдл рднреА рдЙрддреНрдкрдиреНрди рдХрд░рддрд╛ рд╣реИред рдЗрд╕ рдЙрдкрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ, рд╣рдо EcoRI рдХреЗ рд╕рд╛рде pUC19 рдХреЛ рдХрд╛рдЯрдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдлрд┐рд░ PCR [PCR, рдкреЛрд▓реАрдорд░реЗрдЬрд╝ рдЪреЗрди рд░рд┐рдПрдХреНрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдЬреИрд╡рд┐рдХ рд╕рд╛рдордЧреНрд░реА рдореЗрдВ рд▓рдЧрднрдЧ рдбреАрдПрдирдП рдЕрдВрд╢реЛрдВ рдХреЗ рдЫреЛрдЯреЗ рд╕рд╛рдВрджреНрд░рддрд╛ рдореЗрдВ рдПрдХ рдорд╣рддреНрд╡рдкреВрд░реНрдг рд╡реГрджреНрдзрд┐ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ - рд▓рдЧрднрдЧред рдкреНрд░рддрд┐] рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рдореЗрдВ рдЙрдкрдпреБрдХреНрдд рдЖрдХрд╛рд░ рдХреЗ рдЯреБрдХрдбрд╝реЗ рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдПред



рднрд╛рдЧ рджреЛ: рдкреНрд░рдпреЛрдЧ


рдкреНрд░рдпреЛрдЧ рдореЗрдВ рдЪрд╛рд░ рдЪрд░рдг рд╣реЛрддреЗ рд╣реИрдВ:

  1. рдкреЙрд▓рд┐рдорд░реЗрдЬрд╝ рд╢реНрд░реГрдВрдЦрд▓рд╛ рд╕рдореНрдорд┐рд▓рди рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рдПрдХ рдлрд╝реНрд▓реИрдВрдХрд┐рдВрдЧ рдЕрдиреБрдХреНрд░рдо рдХреЗ рд╕рд╛рде рд╕рд╛рдордЧреНрд░реА рдЬреЛрдбрд╝рдиреЗ рдХреЗ рд▓рд┐рдПред
  2. рд╕рдореНрдорд┐рд▓рди рдХреЛ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХрд╛рдЯрдирд╛ред
  3. рдЧрд┐рдмреНрд╕рди рд╕рдореНрдорд┐рд▓рди рдФрд░ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рджреНрд╡рд╛рд░рд╛ рд╡рд┐рдзрд╛рдирд╕рднрд╛ред
  4. рдЗрдХрдЯреНрдареЗ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдХрд╛ рдкрд░рд┐рд╡рд░реНрддрдиред

рдЪрд░рдг 1. рдкреАрд╕реАрдЖрд░ рд╕рдореНрдорд┐рд▓рди


рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА рдЖрдкрдХреЗ рджреНрд╡рд╛рд░рд╛ рдПрдХрддреНрд░рд┐рдд рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддреА рд╣реИ, рдЬрд┐рд╕рдореЗрдВ рдХреБрдЫ рдЕрддрд┐рд╡реНрдпрд╛рдкреА рдЕрдиреБрдХреНрд░рдо рд╣реЛрддреЗ рд╣реИрдВ (рдКрдкрд░ рджрд┐рдП рдЧрдП рд╡рд┐рд╕реНрддреГрдд рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреЗ рд╕рд╛рде рдПрдирдИрдмреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рджреЗрдЦреЗрдВ)ред рд╕рд░рд▓ рдкреНрд░рд╡рд░реНрдзрди рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдкреАрд╕реАрдЖрд░ рдЖрдкрдХреЛ рдкреНрд░рд╛рдЗрдорд░реЛрдВ рдореЗрдВ рдПрдХ рдЕрддрд┐рд░рд┐рдХреНрдд рдЕрдиреБрдХреНрд░рдо рдХреЛ рд╢рд╛рдорд┐рд▓ рдХрд░рдХреЗ рдПрдХ рдлрд╝реНрд▓реИрдВрдХрд┐рдВрдЧ рдбреАрдПрдирдП рдЕрдиреБрдХреНрд░рдо рдЬреЛрдбрд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рджреЗрддрд╛ рд╣реИ ( рдХреЗрд╡рд▓ рдУрдИ-рдкреАрд╕реАрдЖрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдХреНрд▓реЛрди рднреА рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ)ред

рд╣рдо рдПрдирдИрдмреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░ рдкреНрд░рд╛рдЗрдорд░реЛрдВ рдХреЛ рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдореИрдВрдиреЗ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд╕рд╛рдЗрдЯ рдкрд░ рдХреНрд╡рд┐рдХрд╕реНрдЯрд╛рд░реНрдЯ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА , рд▓реЗрдХрд┐рди рдЕрднреА рднреА рдПрдХ рдСрдЯреЛ- рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрдорд╛рдВрдб рд╣реИ ред рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд╕реНрд╡рдпрдВ рдСрд▓рд┐рдЧреЛрдиреНрдпреВрдХреНрд▓рд┐рдпреЛрдЯрд╛рдЗрдбреНрд╕ рдХреЛ рд╕рдВрд╢реНрд▓реЗрд╖рд┐рдд рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП 1-2 рджрд┐рдиреЛрдВ рдХреЗ рдЗрдВрддрдЬрд╛рд░ рдХреЗ рдмрд╛рдж, рдпреЗ рдкреНрд░рд╛рдЗрдорд░ рдЬрд╛рджреБрдИ рд░реВрдк рд╕реЗ рдореЗрд░реА рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддреЗ рд╣реИрдВ (рдзреНрдпрд╛рди рджреЗрдВ рдХрд┐ рдкреНрд░рд╛рдЗрдорд░ рдХрд╛ рдЬреАрди-рд╡рд┐рд╢рд┐рд╖реНрдЯ рд╣рд┐рд╕реНрд╕рд╛ рдиреАрдЪреЗ рдХреЗ рдКрдкрд░реА рдорд╛рдорд▓реЗ рдореЗрдВ рдЗрдВрдЧрд┐рдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдпреЗ рд╕рд┐рд░реНрдл рдХреЙрд╕реНрдореЗрдЯрд┐рдХ рдЪреАрдЬреЗрдВ рд╣реИрдВ)ред

 insert_primers = ["aaacgacggccagtgTTTATACAGTTCATCCATTCCATG", "cgggtaccgagctcgAGGAGGACAGCTATGTCG"] 

рдкреНрд░рд╛рдЗрдорд░ рд╡рд┐рд╢реНрд▓реЗрд╖рдг


рдЖрдк IDT OligoAnalyzer рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрди рдкреНрд░рд╛рдЗрдорд░реЛрдВ рдХреЗ рдЧреБрдгреЛрдВ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд░ рд╕рдХрддреЗ рд╣реИрдВредрдЬрдм рдПрдХ рдкреАрд╕реАрдЖрд░ рдкреНрд░рдпреЛрдЧ рдбрд┐рдмрдЧрд┐рдВрдЧ, рдпрд╣ рдкрд┐рдШрд▓рдиреЗ рдмрд┐рдВрджреБрдУрдВ рдФрд░ рдкреНрд░рд╛рдЗрдорд░ рдбрд┐рдорд░ рдХреЗ рд╕рд╛рдЗрдб рдЗрдлреЗрдХреНрдЯ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдЬрд╛рдирдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдкрдпреЛрдЧреА рд╣реИ , рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдирдИрдмреА рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рдЕрдЪреНрдЫреЗ рдЧреБрдгреЛрдВ рд╡рд╛рд▓реЗ рдкреНрд░рд╛рдЗрдорд░реЛрдВ рдХрд╛ рдЪрдпрди рдХрд░реЗрдЧрд╛ред

 рдлреНрд▓реИрдВрдХ (рдЕрдкрд░рдХреЗрд╕) рдХреЗ рдЬреАрди-рд╡рд┐рд╢рд┐рд╖реНрдЯ рднрд╛рдЧ
  рдкрд┐рдШрд▓ рддрд╛рдкрдорд╛рди: 51C, 53.5C
рдкреВрд░реНрдг рдХреНрд░рдо
  рдкрд┐рдШрд▓ рддрд╛рдкрдорд╛рди: 64.5C, 68.5C
  рд╣реЗрдпрд░рдкрд┐рди: -4 рдбреАрдЬреА, -5 рдбреАрдЬреА
  рд╕реНрд╡-рдордВрджрдХ: -9dG, -16dG
  рд╣реЗрдЯреЗрд░реЛрдбрд┐рдорд░: -6 рдбреАрдЬреА 

рдореИрдВ рд╕рдВрддреЛрд╖рдЬрдирдХ рдкрд░рд┐рдгрд╛рдо рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ рдкреАрд╕реАрдЖрд░ рдХреЗ рдХрдИ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рд╕реЗ рдЧреБрдЬрд░рд╛, рдЬрд┐рд╕рдореЗрдВ рдкреАрд╕реАрдЖрд░ рдорд┐рд╢реНрд░рдгреЛрдВ рдХреЗ рдХрдИ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдмреНрд░рд╛рдВрдбреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рд╢рд╛рдорд┐рд▓ рдереЗред рдЪреВрдВрдХрд┐ рдЗрдирдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рдкреБрдирд░рд╛рд╡реГрддреНрддрд┐рдпреЛрдВ рдореЗрдВ рдХрдИ рджрд┐рди рд▓рдЧ рд╕рдХрддреЗ рд╣реИрдВ (рдХрддрд╛рд░ рд╕реЗ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХреА рд▓рдВрдмрд╛рдИ рдХреЗ рдЖрдзрд╛рд░ рдкрд░), рдпрд╣ рдЕрдЧреНрд░рд┐рдо рдореЗрдВ рдбрд┐рдмрдЧрд┐рдВрдЧ рдкрд░ рд╕рдордп рдмрд┐рддрд╛рдиреЗ рдХреЗ рд▓рд╛рдпрдХ рд╣реИ: рдпрд╣ рд▓рдВрдмреЗ рд╕рдордп рдореЗрдВ рдмрд╣реБрдд рд╕рдордп рдмрдЪрд╛рддрд╛ рд╣реИред рдЬреИрд╕реЗ рд╣реА рдХреНрд▓рд╛рдЙрдб рд▓реИрдм рдХреА рд╢рдХреНрддрд┐ рдмрдврд╝рддреА рд╣реИ, рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдХрдо рддреАрд╡реНрд░ рд╣реЛ рдЬрд╛рддреА рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдпрд╣ рд╕рдВрднрд╛рд╡рдирд╛ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЖрдкрдХрд╛ рдкрд╣рд▓рд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рдлрд▓ рд╣реЛрдЧрд╛ - рдмрд╣реБрдд рдЕрдзрд┐рдХ рдЪрд░ рд╣реИрдВред

рдХреЛрдб
 """ PCR overlap extension of sfGFP according to NEB protocol. v5: Use 3/10ths as much primer as the v4 protocol. v6: more complex touchdown pcr procedure. The Q5 temperature was probably too hot v7: more time at low temperature to allow gene-specific part to anneal v8: correct dNTP concentration, real touchdown """ p = Protocol() # --------------------------------------------------- # Set up experiment # experiment_name = "sfgfp_pcroe_v8" template_length = 740 _options = {'dilute_primers' : False, # if working stock has not been made 'dilute_template': False, # if working stock has not been made 'dilute_dNTP' : False, # if working stock has not been made 'run_gel' : True, # run a gel to see the plasmid size 'run_absorbance' : False, # check absorbance at 260/280/320 'run_sanger' : False} # sanger sequence the new sequence options = {k for k,v in _options.items() if v is True} # --------------------------------------------------- # Inventory and provisioning # https://developers.transcriptic.com/v1.0/docs/containers # # 'sfgfp2': 'ct17yx8h77tkme', # inventory; sfGFP tube #2, micro-1.5, cold_20 # 'sfgfp_puc19_primer1': 'ct17z9542mrcfv', # inventory; micro-2.0, cold_4 # 'sfgfp_puc19_primer2': 'ct17z9542m5ntb', # inventory; micro-2.0, cold_4 # 'sfgfp_idt_1ngul': 'ct184nnd3rbxfr', # inventory; micro-1.5, cold_4, (ERROR: no template) # inv = { 'Q5 Polymerase': 'rs16pcce8rdytv', # catalog; Q5 High-Fidelity DNA Polymerase 'Q5 Buffer': 'rs16pcce8rmke3', # catalog; Q5 Reaction Buffer 'dNTP Mixture': 'rs16pcb542c5rd', # catalog; dNTP Mixture (25mM?) 'water': 'rs17gmh5wafm5p', # catalog; Autoclaved MilliQ H2O 'sfgfp_pcroe_v5_puc19_primer1_10uM': 'ct186cj5cqzjmr', # inventory; micro-1.5, cold_4 'sfgfp_pcroe_v5_puc19_primer2_10uM': 'ct186cj5cq536x', # inventory; micro-1.5, cold_4 'sfgfp1': 'ct17yx8h759dk4', # inventory; sfGFP tube #1, micro-1.5, cold_20 } # Existing inventory template_tube = p.ref("sfgfp1", id=inv['sfgfp1'], cont_type="micro-1.5", storage="cold_4").well(0) dilute_primer_tubes = [p.ref('sfgfp_pcroe_v5_puc19_primer1_10uM', id=inv['sfgfp_pcroe_v5_puc19_primer1_10uM'], cont_type="micro-1.5", storage="cold_4").well(0), p.ref('sfgfp_pcroe_v5_puc19_primer2_10uM', id=inv['sfgfp_pcroe_v5_puc19_primer2_10uM'], cont_type="micro-1.5", storage="cold_4").well(0)] # New inventory resulting from this experiment dilute_template_tube = p.ref("sfgfp1_0.25ngul", cont_type="micro-1.5", storage="cold_4").well(0) dNTP_10uM_tube = p.ref("dNTP_10uM", cont_type="micro-1.5", storage="cold_4").well(0) sfgfp_pcroe_out_tube = p.ref(expid("amplified"), cont_type="micro-1.5", storage="cold_4").well(0) # Temporary tubes for use, then discarded mastermix_tube = p.ref("mastermix", cont_type="micro-1.5", storage="cold_4", discard=True).well(0) water_tube = p.ref("water", cont_type="micro-1.5", storage="ambient", discard=True).well(0) pcr_plate = p.ref("pcr_plate", cont_type="96-pcr", storage="cold_4", discard=True) if 'run_absorbance' in options: abs_plate = p.ref("abs_plate", cont_type="96-flat", storage="cold_4", discard=True) # Initialize all existing inventory all_inventory_wells = [template_tube] + dilute_primer_tubes for well in all_inventory_wells: init_inventory_well(well) print(well.name, well.volume, well.properties) # ----------------------------------------------------- # Provision water once, for general use # p.provision(inv["water"], water_tube, ┬╡l(500)) # ----------------------------------------------------- # Dilute primers 1/10 (100uM->10uM) and keep at 4C # if 'dilute_primers' in options: for primer_num in (0,1): p.transfer(water_tube, dilute_primer_tubes[primer_num], ┬╡l(90)) p.transfer(primer_tubes[primer_num], dilute_primer_tubes[primer_num], ┬╡l(10), mix_before=True, mix_vol=┬╡l(50)) p.mix(dilute_primer_tubes[primer_num], volume=┬╡l(50), repetitions=10) # ----------------------------------------------------- # Dilute template 1/10 (10ng/ul->1ng/ul) and keep at 4C # OR # Dilute template 1/40 (10ng/ul->0.25ng/ul) and keep at 4C # if 'dilute_template' in options: p.transfer(water_tube, dilute_template_tube, ┬╡l(195)) p.mix(dilute_template_tube, volume=┬╡l(100), repetitions=10) # Dilute dNTP to exactly 10uM if 'dilute_DNTP' in options: p.transfer(water_tube, dNTP_10uM_tube, ┬╡l(6)) p.provision(inv["dNTP Mixture"], dNTP_10uM_tube, ┬╡l(4)) # ----------------------------------------------------- # Q5 PCR protocol # www.neb.com/protocols/2013/12/13/pcr-using-q5-high-fidelity-dna-polymerase-m0491 # # 25ul reaction # ------------- # Q5 reaction buffer 5 ┬╡l # Q5 polymerase 0.25 ┬╡l # 10mM dNTP 0.5 ┬╡l -- 1┬╡l = 4x12.5mM # 10uM primer 1 1.25 ┬╡l # 10uM primer 2 1.25 ┬╡l # 1pg-1ng Template 1 ┬╡l -- 0.5 or 1ng/ul concentration # ------------------------------- # Sum 9.25 ┬╡l # # # Mastermix tube will have 96ul of stuff, leaving space for 4x1ul aliquots of template p.transfer(water_tube, mastermix_tube, ┬╡l(64)) p.provision(inv["Q5 Buffer"], mastermix_tube, ┬╡l(20)) p.provision(inv['Q5 Polymerase'], mastermix_tube, ┬╡l(1)) p.transfer(dNTP_10uM_tube, mastermix_tube, ┬╡l(1), mix_before=True, mix_vol=┬╡l(2)) p.transfer(dilute_primer_tubes[0], mastermix_tube, ┬╡l(5), mix_before=True, mix_vol=┬╡l(10)) p.transfer(dilute_primer_tubes[1], mastermix_tube, ┬╡l(5), mix_before=True, mix_vol=┬╡l(10)) p.mix(mastermix_tube, volume="48:microliter", repetitions=10) # Transfer mastermix to pcr_plate without template p.transfer(mastermix_tube, pcr_plate.wells(["A1","B1","C1"]), ┬╡l(24)) p.transfer(mastermix_tube, pcr_plate.wells(["A2"]), ┬╡l(24)) # acknowledged dead volume problems p.mix(pcr_plate.wells(["A1","B1","C1","A2"]), volume=┬╡l(12), repetitions=10) # Finally add template p.transfer(template_tube, pcr_plate.wells(["A1","B1","C1"]), ┬╡l(1)) p.mix(pcr_plate.wells(["A1","B1","C1"]), volume=┬╡l(12.5), repetitions=10) # --------------------------------------------------------- # Thermocycle with Q5 and hot start # 61.1 annealing temperature is recommended by NEB protocol # p.seal is enforced by transcriptic # extension_time = int(max(2, np.ceil(template_length * (11.0/1000)))) assert 0 < extension_time < 60, "extension time should be reasonable for PCR" cycles = [{"cycles": 1, "steps": [{"temperature": "98:celsius", "duration": "30:second"}]}] + \ touchdown(70, 61, [8, 25, extension_time], stepsize=0.5) + \ [{"cycles": 16, "steps": [{"temperature": "98:celsius", "duration": "8:second"}, {"temperature": "61.1:celsius", "duration": "25:second"}, {"temperature": "72:celsius", "duration": "{:d}:second".format(extension_time)}]}, {"cycles": 1, "steps": [{"temperature": "72:celsius", "duration": "2:minute"}]}] p.seal(pcr_plate) p.thermocycle(pcr_plate, cycles, volume=┬╡l(25)) # -------------------------------------------------------- # Run a gel to hopefully see a 740bp fragment # if 'run_gel' in options: p.unseal(pcr_plate) p.mix(pcr_plate.wells(["A1","B1","C1","A2"]), volume=┬╡l(12.5), repetitions=10) p.transfer(pcr_plate.wells(["A1","B1","C1","A2"]), pcr_plate.wells(["D1","E1","F1","D2"]), [┬╡l(2), ┬╡l(4), ┬╡l(8), ┬╡l(8)]) p.transfer(water_tube, pcr_plate.wells(["D1","E1","F1","D2"]), [┬╡l(18),┬╡l(16),┬╡l(12),┬╡l(12)], mix_after=True, mix_vol=┬╡l(10)) p.gel_separate(pcr_plate.wells(["D1","E1","F1","D2"]), ┬╡l(20), "agarose(10,2%)", "ladder1", "10:minute", expid("gel")) #--------------------------------------------------------- # Absorbance dilution series. Take 1ul out of the 25ul pcr plate wells # if 'run_absorbance' in options: p.unseal(pcr_plate) abs_wells = ["A1","B1","C1","A2","B2","C2","A3","B3","C3"] p.transfer(water_tube, abs_plate.wells(abs_wells[0:6]), ┬╡l(10)) p.transfer(water_tube, abs_plate.wells(abs_wells[6:9]), ┬╡l(9)) p.transfer(pcr_plate.wells(["A1","B1","C1"]), abs_plate.wells(["A1","B1","C1"]), ┬╡l(1), mix_after=True, mix_vol=┬╡l(5)) p.transfer(abs_plate.wells(["A1","B1","C1"]), abs_plate.wells(["A2","B2","C2"]), ┬╡l(1), mix_after=True, mix_vol=┬╡l(5)) p.transfer(abs_plate.wells(["A2","B2","C2"]), abs_plate.wells(["A3","B3","C3"]), ┬╡l(1), mix_after=True, mix_vol=┬╡l(5)) for wavelength in [260, 280, 320]: p.absorbance(abs_plate, abs_plate.wells(abs_wells), "{}:nanometer".format(wavelength), exp_id("abs_{}".format(wavelength)), flashes=25) # ----------------------------------------------------------------------------- # Sanger sequencing: https://developers.transcriptic.com/docs/sanger-sequencing # "Each reaction should have a total volume of 15 ┬╡l and we recommend the following composition of DNA and primer: # PCR product (40 ng), primer (1 ┬╡l of a 10 ┬╡M stock)" # # By comparing to the gel ladder concentration (175ng/lane), it looks like 5ul of PCR product has approximately 30ng of DNA # if 'run_sanger' in options: p.unseal(pcr_plate) seq_wells = ["G1","G2"] for primer_num, seq_well in [(0, seq_wells[0]),(1, seq_wells[1])]: p.transfer(dilute_primer_tubes[primer_num], pcr_plate.wells([seq_well]), ┬╡l(1), mix_before=True, mix_vol=┬╡l(50)) p.transfer(pcr_plate.wells(["A1"]), pcr_plate.wells([seq_well]), ┬╡l(5), mix_before=True, mix_vol=┬╡l(10)) p.transfer(water_tube, pcr_plate.wells([seq_well]), ┬╡l(9)) p.mix(pcr_plate.wells(seq_wells), volume=┬╡l(7.5), repetitions=10) p.sangerseq(pcr_plate, pcr_plate.wells(seq_wells[0]).indices(), expid("seq1")) p.sangerseq(pcr_plate, pcr_plate.wells(seq_wells[1]).indices(), expid("seq2")) # ------------------------------------------------------------------------- # Then consolidate to one tube. Leave at least 3ul dead volume in each tube # remaining_volumes = [well.volume - dead_volume['96-pcr'] for well in pcr_plate.wells(["A1","B1","C1"])] print("Consolidated volume", sum(remaining_volumes, ┬╡l(0))) p.consolidate(pcr_plate.wells(["A1","B1","C1"]), sfgfp_pcroe_out_tube, remaining_volumes, allow_carryover=True) uprint("\nProtocol 1. Amplify the insert (oligos previously synthesized)") jprotocol = json.dumps(p.as_dict(), indent=2) !echo '{jprotocol}' | transcriptic analyze open("protocol_{}.json".format(experiment_name),'w').write(jprotocol) 

 рдЪреЗрддрд╛рд╡рдиреА: рдЬрдбрд╝: рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ sfGFP 1 / sfGFP 1 рдХреЗ рд▓рд┐рдП рдХрдо рдорд╛рддреНрд░рд╛ 1: 2.0: microliter 

 sfGFP 1 / sfGFP 1 2.0: рдорд╛рдЗрдХреНрд░реЛрд▓рд┐рдЯрд░ {'рдХрдордЬреЛрд░ рдкрдбрд╝рдирд╛': '0.25ng / ul'}
sfgfp_pcroe_v5_puc19_primer1_10uM 75.0: рдорд╛рдЗрдХреНрд░реЛрдПрдЯрд░ {}
sfgfp_pcroe_v5_puc19_primer2_10uM 75.0: miciteriter {}
рд╕рдореЗрдХрд┐рдд рдорд╛рддреНрд░рд╛ 52.0: рдорд╛рдЗрдХреНрд░реЛрд▓рд┐рдЯрд░

Protocol 1. Amplify the insert (oligos previously synthesized)
---------------------------------------------------------------

  
тЬУ Protocol analyzed
  11 instructions
  8 containers
  Total Cost: $32.18
  Workcell Time: $4.32
  Reagents & Consumables: $27.86 

: PCR



рдЬреЗрд▓ рдореЗрдВ, рдЖрдк рдПрдХрд╛рдЧреНрд░рддрд╛ (рдЬреЗрд▓ рдореЗрдВ рдкрдЯреНрдЯреА рдХреА рд╕реНрдерд┐рддрд┐) рдФрд░ рд╕рд╣реА рдорд╛рддреНрд░рд╛ (рдбрд╛рд░реНрдХ рд╕реНрдЯреНрд░рд┐рдк) рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рдмрд╛рдж рдЙрддреНрдкрд╛рдж рдХреЗ рд╕рд╣реА рдЖрдХрд╛рд░ рдХрд╛ рдореВрд▓реНрдпрд╛рдВрдХрди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ред рдЬреЗрд▓ рдореЗрдВ рдбреАрдПрдирдП рдХреА рд╡рд┐рднрд┐рдиреНрди рд▓рдВрдмрд╛рдИ рдФрд░ рдорд╛рддреНрд░рд╛ рдХреЗ рдЕрдиреБрд░реВрдк рдПрдХ рд╕реАрдврд╝реА рд╣реЛрддреА рд╣реИ рдЬрд┐рд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рддреБрд▓рдирд╛ рдХреЗ рд▓рд┐рдП рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдиреАрдЪреЗ рджрд┐рдП рдЧрдП рдЬреЗрд▓ рдХреА рддрд╕реНрд╡реАрд░ рдореЗрдВ, рдмреИрдВрдб рдбреА 1, рдИ 1, рдПрдл 1 рдореЗрдВ рдХреНрд░рдорд╢рдГ 2 ╬╝l, 4 ╬╝l рдФрд░ рдкреНрд░рд╡рд░реНрдзрд┐рдд рдЙрддреНрдкрд╛рдж рдХреЗ 8 ╬╝l рд╣реЛрддреЗ рд╣реИрдВред рдореИрдВ рд╕реАрдврд╝реА рдореЗрдВ рдбреАрдПрдирдП рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдкреНрд░рддреНрдпреЗрдХ рд▓реЗрди рдореЗрдВ рдбреАрдПрдирдП рдХреА рдорд╛рддреНрд░рд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реВрдВ (рд╕реАрдврд╝реА рдореЗрдВ 50 рдПрдирдЬреА рдбреАрдПрдирдП рдкреНрд░рддрд┐ рд╕реАрдврд╝реА)ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдкрд░рд┐рдгрд╛рдо рдмрд╣реБрдд рд╕рд╛рдл рджрд┐рдЦрддреЗ рд╣реИрдВред рдореИрдВрдиреЗ рдЫрд╡рд┐ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдФрд░ рдПрдХрд╛рдЧреНрд░рддрд╛ рдЕрдиреБрдорд╛рди рдХреЗ рд▓рд┐рдП GelEval рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА



, рдФрд░ рдХрд╛рдлреА рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдореБрдЭреЗ рдпрдХреАрди рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдЕрдзрд┐рдХ рднреЛрд▓реА рд╡рд┐рдзрд┐ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмрд╣реБрдд рд╕рдЯреАрдХ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдмреИрдВрдб рдХреЗ рд╕реНрдерд╛рди рдФрд░ рдЖрдХрд╛рд░ рдореЗрдВ рдЫреЛрдЯреЗ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдбреАрдПрдирдП рдХреА рдорд╛рддреНрд░рд╛ рдХреЗ рдЕрдиреБрдорд╛рди рдореЗрдВ рдмрдбрд╝реЗ рдмрджрд▓рд╛рд╡ рд╣реБрдПред GelEval рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдореЗрд░реЗ рдкреНрд░рд╡рд░реНрдзрд┐рдд рдЙрддреНрдкрд╛рдж рдореЗрдВ рдбреАрдПрдирдП рдХреА рдорд╛рддреНрд░рд╛ рдХрд╛ рдореЗрд░рд╛ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЕрдиреБрдорд╛рди 40 рдПрдирдЬреА / ╬╝l рд╣реИред

рдпрд╣ рдорд╛рдирддреЗ рд╣реБрдП рдХрд┐ рд╣рдо рдорд┐рд╢реНрд░рдг рдореЗрдВ рдкреНрд░рд╛рдЗрдорд░ рдХреА рдорд╛рддреНрд░рд╛ рддрдХ рд╕реАрдорд┐рдд рд╣реИрдВ рдФрд░ dNTP рдпрд╛ рдПрдВрдЬрд╛рдЗрдо рдХреА рдорд╛рддреНрд░рд╛ рд╕реЗ рдирд╣реАрдВ, рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд░рд╛рдЗрдорд░ рдХрд╛ 12.5 pmol рд╣реИ, рдЗрд╕рдХрд╛ рдорддрд▓рдм рд╣реИ рдХрд┐ 25 ╬╝l рдореЗрдВ 740bp рдбреАрдПрдирдП рдХрд╛ 6 ofg рдХрд╛ рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рдЕрдзрд┐рдХрддрдоред рдЪреВрдВрдХрд┐ GelEval рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдбреАрдПрдирдП рдХреА рдХреБрд▓ рдорд╛рддреНрд░рд╛ рдХрд╛ рдореЗрд░рд╛ рдЕрдиреБрдорд╛рди 40 рдПрдирдЬреА 25 ╬╝l (1 ╬╝g рдпрд╛ 2 pmol) рд╣реИ, рдпреЗ рдкрд░рд┐рдгрд╛рдо рдмрд╣реБрдд рд╣реА рдЙрдЪрд┐рдд рд╣реИрдВ рдФрд░ рдЖрджрд░реНрд╢ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдореБрдЭреЗ рдЬреЛ рдЙрдореНрдореАрдж рдХрд░рдиреА рдЪрд╛рд╣рд┐рдП, рдЙрд╕рдХреЗ рдХрд░реАрдм рд╣реИрдВред


- EcoRI- pUC19, (D1, E1, F1), (D2)

PCR


рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдиреЗ рд╣рд╛рд▓ рд╣реА рдореЗрдВ рдЕрдкрдиреЗ рд░реЛрдмреЛрдЯ рд╕реЗ рджрд┐рд▓рдЪрд╕реНрдк рдФрд░ рдЙрдкрдпреЛрдЧреА рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрдбреЗрдЯрд╛ рдкреНрд░рджрд╛рди рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд┐рдпрд╛ред рд▓реЗрдЦрди рдХреЗ рд╕рдордп, рд╡реЗ рдбрд╛рдЙрдирд▓реЛрдб рдХреЗ рд▓рд┐рдП рдЙрдкрд▓рдмреНрдз рдирд╣реАрдВ рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдЕрдм рдореЗрд░реЗ рдкрд╛рд╕ рдХреЗрд╡рд▓ рдерд░реНрдорд▓ рд╕рд╛рдЗрдХрд▓рд┐рдВрдЧ рдХреЗ рджреМрд░рд╛рди рддрд╛рдкрдорд╛рди рдХреА рдПрдХ рдЫрд╡рд┐ рд╣реИред

рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рдЪреЛрдЯрд┐рдпреЛрдВ рдпрд╛ рдЧрд░реНрддреЛрдВ рдХреЗ рдмрд┐рдирд╛ рдбреЗрдЯрд╛ рдЕрдЪреНрдЫрд╛ рджрд┐рдЦрддрд╛ рд╣реИред рдХреБрд▓ 35 рдкреАрд╕реАрдЖрд░ рдЪрдХреНрд░, рд▓реЗрдХрд┐рди рдЗрдирдореЗрдВ рд╕реЗ рдХреБрдЫ рдЪрдХреНрд░ рдкреАрд╕реАрдЖрд░ рдЯрдЪрдбрд╛рдЙрди рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЗ рд░реВрдк рдореЗрдВ рдмрд╣реБрдд рдЙрдЪреНрдЪ рддрд╛рдкрдорд╛рди рдкрд░ рдХрд┐рдП рдЬрд╛рддреЗ рд╣реИрдВ ред рдЗрд╕ рдЦрдВрдб рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рдореЗрд░реЗ рдкрд┐рдЫрд▓реЗ рдкреНрд░рдпрд╛рд╕реЛрдВ рдореЗрдВ - рдЬрд┐рдирдореЗрдВ рд╕реЗ рдХрдИ рдереЗ! - рдкреНрд░рд╛рдЗрдорд░реЛрдВ рдХреЗ рд╕рдВрдХрд░рдг рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛рдПрдВ рдереАрдВ, рдЗрд╕рд▓рд┐рдП рдпрд╣рд╛рдВ рдкреАрд╕реАрдЖрд░ рдЙрдЪреНрдЪ рддрд╛рдкрдорд╛рди рдкрд░ рдмрд╣реБрдд рд╕рдордп рддрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдЬрд┐рд╕рд╕реЗ рд╕рдЯреАрдХрддрд╛ рдореЗрдВ рд╡реГрджреНрдзрд┐ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред


рдЯрдЪрдбрд╛рдЙрди рдкреАрд╕реАрдЖрд░ рдХреЗ рд▓рд┐рдП рдерд░реНрдореЛрдХрд╛рдЗрдХреНрд▓рд┐рдХ рдбрд╛рдпрдЧреНрдиреЛрд╕реНрдЯрд┐рдХреНрд╕: 35 рдЪрдХреНрд░ рдФрд░ 42 рдорд┐рдирдЯ рдХреЗ рд▓рд┐рдП рдмреНрд▓реЙрдХ, рдирдореВрдирд╛ рдФрд░ рдХрд╡рд░ рддрд╛рдкрдорд╛рди

рдЪрд░рдг 2. рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХрд╛рдЯрдирд╛


рд╣рдорд╛рд░реЗ sfGFP рдбреАрдПрдирдП рдХреЛ pUC19 рдореЗрдВ рдбрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХреЛ рдХрд╛рдЯрдирд╛ рд╣реЛрдЧрд╛ред NEB рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдмрд╛рдж, рдореИрдВ EcoRI рдкреНрд░рддрд┐рдмрдВрдз рдПрдВрдЬрд╛рдЗрдо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ ред рдРрд╕реЗ рдЕрднрд┐рдХрд░реНрдордХ рд╣реИрдВ рдЬреЛ рдореБрдЭреЗ рдорд╛рдирдХ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрд╢рдирд▓ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдореЗрдВ рдЪрд╛рд╣рд┐рдП: рдпрд╣ NEB EcoRI рдФрд░ 10x CutSmart рдмрдлрд░ рд╣реИ , рд╕рд╛рде рд╣реА NEB pUC19 рдкреНрд▓рд╛рд╕реНрдорд┐рдб рднреА рд╣реИ ред

рдЬрд╛рдирдХрд╛рд░реА рдХреЗ рд▓рд┐рдП, рдиреАрдЪреЗ рдЙрдирдХреА рд╕реВрдЪреА рд╕реЗ рдХреАрдорддреЗрдВ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореИрдВ рдХреАрдордд рдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рднрд╛рдЧ рдХрд╛ рднреБрдЧрддрд╛рди рдХрд░рддрд╛ рд╣реВрдВ, рдХреНрдпреЛрдВрдХрд┐ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдЦрдкрдд рд░рд╛рд╢рд┐ рдХреЗ рд▓рд┐рдП рднреБрдЧрддрд╛рди рдХрд░рддрд╛ рд╣реИ:

 рдЖрдЗрдЯрдо рдЖрдИрдбреА рд░рд╛рд╢рд┐ рдПрдХрд╛рдЧреНрд░рддрд╛ рдореВрд▓реНрдп
------------ ------ ------------- ----------------- - ----
рдХрдЯрд╕реНрдорд╛рд░реНрдЯ 10x B7204S 5 рдорд┐рд▓реА 10 X $ 19.00
EcoRI R3101L 50,000 рдЗрдХрд╛рдЗрдпрд╛рдБ 20,000 рдЗрдХрд╛рдЗрдпрд╛рдБ / рдПрдордПрд▓ $ 225.00
pUC19 N3041L 250 ╬╝g 1,000 ╬╝g / ml $ 268.00 

рдореИрдВрдиреЗ NEB рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдпрдерд╛рд╕рдВрднрд╡ рдкрд╛рд▓рди рдХрд┐рдпрд╛:

. 10X dH2O 1X. , , , , . 50 5 10x NEBuffer , dH2O.

, 1 ╬╗ 1 37┬░C 50 . , 5-10 10-20 1- .

1 50 .

рдХреЛрдб
 """Protocol for cutting pUC19 with EcoRI.""" p = Protocol() experiment_name = "puc19_ecori_v3" options = {} inv = { 'water': "rs17gmh5wafm5p", # catalog; Autoclaved MilliQ H2O; ambient "pUC19": "rs17tcqmncjfsh", # catalog; pUC19; cold_20 "EcoRI": "rs17ta8xftpdk6", # catalog; EcoRI-HF; cold_20 "CutSmart": "rs17ta93g3y85t", # catalog; CutSmart Buffer 10x; cold_20 "ecori_p10x": "ct187v4ea85k2h", # inventory; EcoRI diluted 10x } # Tubes and plates I use then discard re_tube = p.ref("re_tube", cont_type="micro-1.5", storage="cold_4", discard=True).well(0) water_tube = p.ref("water_tube", cont_type="micro-1.5", storage="cold_4", discard=True).well(0) pcr_plate = p.ref("pcr_plate", cont_type="96-pcr", storage="cold_4", discard=True) # The result of the experiment, a pUC19 cut by EcoRI, goes in this tube for storage puc19_cut_tube = p.ref(expid("puc19_cut"), cont_type="micro-1.5", storage="cold_20").well(0) # ------------------------------------------------------------- # Provisioning and diluting. # Diluted EcoRI can be used more than once # p.provision(inv["water"], water_tube, ┬╡l(500)) if 'dilute_ecori' in options: ecori_p10x_tube = p.ref("ecori_p10x", cont_type="micro-1.5", storage="cold_20").well(0) p.transfer(water_tube, ecori_p10x_tube, ┬╡l(45)) p.provision(inv["EcoRI"], ecori_p10x_tube, ┬╡l(5)) else: # All "inventory" (stuff I own at transcriptic) must be initialized ecori_p10x_tube = p.ref("ecori_p10x", id=inv["ecori_p10x"], cont_type="micro-1.5", storage="cold_20").well(0) init_inventory_well(ecori_p10x_tube) # ------------------------------------------------------------- # Restriction enzyme cutting pUC19 # # 50ul total reaction volume for cutting 1ug of DNA: # 5ul CutSmart 10x # 1ul pUC19 (1ug of DNA) # 1ul EcoRI (or 10ul diluted EcoRI, 20 units, >10 units per ug DNA) # p.transfer(water_tube, re_tube, ┬╡l(117)) p.provision(inv["CutSmart"], re_tube, ┬╡l(15)) p.provision(inv["pUC19"], re_tube, ┬╡l(3)) p.mix(re_tube, volume=┬╡l(60), repetitions=10) assert re_tube.volume == ┬╡l(120) + dead_volume["micro-1.5"] print("Volumes: re_tube:{} water_tube:{} EcoRI:{}".format(re_tube.volume, water_tube.volume, ecori_p10x_tube.volume)) p.distribute(re_tube, pcr_plate.wells(["A1","B1","A2"]), ┬╡l(40)) p.distribute(water_tube, pcr_plate.wells(["A2"]), ┬╡l(10)) p.distribute(ecori_p10x_tube, pcr_plate.wells(["A1","B1"]), ┬╡l(10)) assert all(well.volume == ┬╡l(50) for well in pcr_plate.wells(["A1","B1","A2"])) p.mix(pcr_plate.wells(["A1","B1","A2"]), volume=┬╡l(25), repetitions=10) # Incubation to induce cut, then heat inactivation of EcoRI p.seal(pcr_plate) p.incubate(pcr_plate, "warm_37", "60:minute", shaking=False) p.thermocycle(pcr_plate, [{"cycles": 1, "steps": [{"temperature": "65:celsius", "duration": "21:minute"}]}], volume=┬╡l(50)) # -------------------------------------------------------------- # Gel electrophoresis, to ensure the cutting worked # p.unseal(pcr_plate) p.mix(pcr_plate.wells(["A1","B1","A2"]), volume=┬╡l(25), repetitions=5) p.transfer(pcr_plate.wells(["A1","B1","A2"]), pcr_plate.wells(["D1","E1","D2"]), ┬╡l(8)) p.transfer(water_tube, pcr_plate.wells(["D1","E1","D2"]), ┬╡l(15), mix_after=True, mix_vol=┬╡l(10)) assert all(well.volume == ┬╡l(20) + dead_volume["96-pcr"] for well in pcr_plate.wells(["D1","E1","D2"])) p.gel_separate(pcr_plate.wells(["D1","E1","D2"]), ┬╡l(20), "agarose(10,2%)", "ladder2", "15:minute", expid("gel")) # ---------------------------------------------------------------------------- # Then consolidate all cut plasmid to one tube (puc19_cut_tube). # remaining_volumes = [well.volume - dead_volume['96-pcr'] for well in pcr_plate.wells(["A1","B1"])] print("Consolidated volume: {}".format(sum(remaining_volumes, ┬╡l(0)))) p.consolidate(pcr_plate.wells(["A1","B1"]), puc19_cut_tube, remaining_volumes, allow_carryover=True) assert all(tube.volume >= dead_volume['micro-1.5'] for tube in [water_tube, re_tube, puc19_cut_tube, ecori_p10x_tube]) # --------------------------------------------------------------- # Test protocol # jprotocol = json.dumps(p.as_dict(), indent=2) !echo '{jprotocol}' | transcriptic analyze #print("Protocol {}\n\n{}".format(experiment_name, jprotocol)) open("protocol_{}.json".format(experiment_name),'w').write(jprotocol) 

 Volumes: re_tube:135.0:microliter water_tube:383.0:microliter EcoRI:30.0:microliter
Consolidated volume: 78.0:microliter

  
тЬУ Protocol analyzed
  12 instructions
  5 containers
  Total Cost: $30.72
  рдХрд╛рд░реНрдп рд╕рдордп: $ 3.38
  рдЕрднрд┐рдХрд░реНрдордХ рдФрд░ рдЙрдкрднреЛрдЧреНрдп: $ 27.34 

рдкрд░рд┐рдгрд╛рдо: рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХрдЯрд┐рдВрдЧ


рдореИрдВрдиреЗ рдЗрд╕ рдкреНрд░рдпреЛрдЧ рдХреЛ рджреЛ рдмрд╛рд░ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдкрд░рд┐рд╕реНрдерд┐рддрд┐рдпреЛрдВ рдореЗрдВ рдФрд░ рд╡рд┐рднрд┐рдиреНрди рдЖрдХрд╛рд░реЛрдВ рдХреЗ рдЬреИрд▓ рдХреЗ рд╕рд╛рде рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдкрд░рд┐рдгрд╛рдо рд▓рдЧрднрдЧ рд╕рдорд╛рди рд╣реИрдВред рдореБрдЭреЗ рджреЛрдиреЛрдВ рдЬреИрд▓ рдкрд╕рдВрдж рд╣реИрдВред

рдкреНрд░рд╛рд░рдВрдн рдореЗрдВ, рдореИрдВрдиреЗ "рдореГрдд" рдорд╛рддреНрд░рд╛ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд╕реНрдерд╛рди рдЖрд╡рдВрдЯрд┐рдд рдирд╣реАрдВ рдХрд┐рдпрд╛ рдерд╛ (1.5 рдорд┐рд▓реАрд▓реАрдЯрд░ рдХреЗ рдкрд░реАрдХреНрд╖рдг рдЯреНрдпреВрдмреЛрдВ рдореЗрдВ, рдореГрдд рдорд╛рддреНрд░рд╛ 60 ╬╝l рд╣реИ!)ред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдпрд╣ рдбреА 1 рдФрд░ рдИ 1 рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдмрддрд╛рддрд╛ рд╣реИ (рджреЛ рдмреИрдВрдб рд╕рдорд╛рди рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП)ред рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреА рд╢реБрд░реБрдЖрдд рдореЗрдВ рдкрддрд▓рд╛ EcoRI рдХреА рдЙрдЪрд┐рдд рдХрд╛рд░реНрдп рдЖрдкреВрд░реНрддрд┐ рдмрдирд╛рдХрд░ рдореГрдд рдорд╛рддреНрд░рд╛ рдХреА рд╕рдорд╕реНрдпрд╛ рдХреЛ рд╣рд▓ рдХрд░рдирд╛ рдЖрд╕рд╛рди рд╣реИред

рдЗрд╕ рддреНрд░реБрдЯрд┐ рдХреЗ рдмрд╛рд╡рдЬреВрдж, рджреЛрдиреЛрдВ рдЬреИрд▓ рдореЗрдВ рдбреА 1 рдФрд░ рдИ 1 рдмреИрдВрдб рдореЗрдВ 2.6kb рдХреА рд╕рд╣реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдордЬрдмреВрдд рдмреИрдВрдб рд╣реИрдВред рдмреИрдВрдб рдбреА 2 рдкрд░, рдПрдХ рдЕрдирдХрдЯ рдкреНрд▓рд╛рд╕реНрдорд┐рдб: рдЬреИрд╕рд╛ рдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реИ, рдпрд╣ рдПрдХ рдЬреЗрд▓ рдореЗрдВ рджрд┐рдЦрд╛рдИ рдирд╣реАрдВ рджреЗрддрд╛ рд╣реИ рдФрд░ рдореБрд╢реНрдХрд┐рд▓ рд╕реЗ рджреВрд╕рд░реЗ рдореЗрдВ рджрд┐рдЦрд╛рдИ рджреЗрддрд╛ рд╣реИред

рджреЛ рдЬреЗрд▓ рддрд╕реНрд╡реАрд░реЗрдВ рдХрд╛рдлреА рдЕрд▓рдЧ рджрд┐рдЦрддреА рд╣реИрдВред рдпрд╣ рдЖрдВрд╢рд┐рдХ рд░реВрдк рд╕реЗ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рд╣реИ рдХрд┐ рдпрд╣ рдХрджрдо рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдЕрднреА рддрдХ рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдирд╣реАрдВ рд╣реИред


рдмреИрдВрдб D1 рдФрд░ E1 рдореЗрдВ рдХрдЯ pUC19 (2.6kb) рджрд┐рдЦрд╛рдиреЗ рд╡рд╛рд▓реЗ рджреЛ рдЬреИрд▓ рдФрд░ D2 рдореЗрдВ pUC19 рдХреЛ рдЕрдирдЪреЗрдХ рдХрд░реЗрдВ

рдЪрд░рдг 3. рдЧрд┐рдмреНрд╕рди рд╡рд┐рдзрд╛рдирд╕рднрд╛


рдпрд╣ рдЬрд╛рдВрдЪрдиреЗ рдХрд╛ рд╕рдмрд╕реЗ рдЖрд╕рд╛рди рддрд░реАрдХрд╛ рд╣реИ рдХрд┐ рдЕрдЧрд░ рдореЗрд░реА рдЕрд╕реЗрдВрдмрд▓реА рдЧрд┐рдмреНрд╕рди рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдореНрдорд┐рд▓рди рдФрд░ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдПрдХрддреНрд░ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╣реИ, рддреЛ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдФрд░ рд╕рдореНрдорд┐рд▓рд┐рдд рдбреАрдПрдирдП рдХреЗ рд╣рд┐рд╕реНрд╕реЗ рдХреЛ рдмрдврд╝рд╛рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдирдХ M13 рдкреНрд░рд╛рдЗрдорд░реЛрдВ (рдЬреЛ рд╕рдореНрдорд┐рд▓рди рдХреЛ рдлреНрд▓реИрдВрдХ рдХрд░реЗрдВ) рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ рдФрд░ рдкреНрд░рд╡рд░реНрдзрди рдХрд╛рд░реНрдпреЛрдВ рдХреЛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП qcCRCR рдФрд░ рдЬреЗрд▓ рдЪрд▓рд╛рдПрдВ ред рдЖрдк рдпрд╣ рдкреБрд╖реНрдЯрд┐ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдЕрдиреБрдХреНрд░рдордг рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рднреА рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рд╕рдм рдХреБрдЫ рдЕрдкреЗрдХреНрд╖рд┐рдд рд░реВрдк рд╕реЗ рдбрд╛рд▓рд╛ рдЧрдпрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдмрд╛рдж рдореЗрдВ рдЗрд╕реЗ рдЫреЛрдбрд╝рдиреЗ рдХрд╛ рдлреИрд╕рд▓рд╛ рдХрд┐рдпрд╛ред

рдпрджрд┐ рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддреА рд╣реИ, рддреЛ рдПрдо 13 рдХрд╛ рдкреНрд░рд╡рд░реНрдзрди рдХрд╛рдо рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХреЛ рджреЛ рдПрдо 13 рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреЗ рдмреАрдЪ рдХрд╛рдЯ рджрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ред

рдХреЛрдб
 """Debugging transformation protocol: Gibson assembly followed by qPCR and a gel v2: include v3 Gibson assembly""" p = Protocol() options = {} experiment_name = "debug_sfgfp_puc19_gibson_seq_v2" inv = { "water" : "rs17gmh5wafm5p", # catalog; Autoclaved MilliQ H2O; ambient "M13_F" : "rs17tcpqwqcaxe", # catalog; M13 Forward (-41); cold_20 (1ul = 100pmol) "M13_R" : "rs17tcph6e2qzh", # catalog; M13 Reverse (-48); cold_20 (1ul = 100pmol) "SensiFAST_SYBR_No-ROX" : "rs17knkh7526ha", # catalog; SensiFAST SYBR for qPCR "sfgfp_puc19_gibson_v1_clone" : "ct187rzdq9kd7q", # inventory; assembled sfGFP; cold_4 "sfgfp_puc19_gibson_v3_clone" : "ct188ejywa8jcv", # inventory; assembled sfGFP; cold_4 } # --------------------------------------------------------------- # First get my sfGFP pUC19 clones, assembled with Gibson assembly # clone_plate1 = p.ref("sfgfp_puc19_gibson_v1_clone", id=inv["sfgfp_puc19_gibson_v1_clone"], cont_type="96-pcr", storage="cold_4", discard=False) clone_plate2 = p.ref("sfgfp_puc19_gibson_v3_clone", id=inv["sfgfp_puc19_gibson_v3_clone"], cont_type="96-pcr", storage="cold_4", discard=False) water_tube = p.ref("water", cont_type="micro-1.5", storage="cold_4", discard=True).well(0) master_tube = p.ref("master", cont_type="micro-1.5", storage="cold_4", discard=True).well(0) primer_tube = p.ref("primer", cont_type="micro-1.5", storage="cold_4", discard=True).well(0) pcr_plate = p.ref(expid("pcr_plate"), cont_type="96-pcr", storage="cold_4", discard=False) init_inventory_well(clone_plate1.well("A1")) init_inventory_well(clone_plate2.well("A1")) seq_wells = ["B2","B4","B6", # clone_plate1 "D2","D4","D6", # clone_plate2 "F2","F4"] # control # clone_plate2 was diluted 4X (20ul->80ul), according to NEB instructions assert clone_plate1.well("A1").volume == ┬╡l(18), clone_plate1.well("A1").volume assert clone_plate2.well("A1").volume == ┬╡l(78), clone_plate2.well("A1").volume # -------------------------------------------------------------- # Provisioning # p.provision(inv["water"], water_tube, ┬╡l(500)) # primers, diluted 2X, discarded at the end p.provision(inv["M13_F"], primer_tube, ┬╡l(13)) p.provision(inv["M13_R"], primer_tube, ┬╡l(13)) p.transfer(water_tube, primer_tube, ┬╡l(26), mix_after=True, mix_vol=┬╡l(20), repetitions=10) # ------------------------------------------------------------------- # PCR Master mix -- 10ul SYBR mix, plus 1ul each undiluted primer DNA (100pmol) # Also add 15ul of dead volume # p.provision(inv['SensiFAST_SYBR_No-ROX'], master_tube, ┬╡l(11+len(seq_wells)*10)) p.transfer(primer_tube, master_tube, ┬╡l(4+len(seq_wells)*4)) p.mix(master_tube, volume=┬╡l(63), repetitions=10) assert master_tube.volume == ┬╡l(127) # 15ul dead volume p.distribute(master_tube, pcr_plate.wells(seq_wells), ┬╡l(14), allow_carryover=True) p.distribute(water_tube, pcr_plate.wells(seq_wells), [┬╡l(ul) for ul in [5,4,2, 4,2,0, 6,6]], allow_carryover=True) # Template -- starting with some small, unknown amount of DNA produced by Gibson p.transfer(clone_plate1.well("A1"), pcr_plate.wells(seq_wells[0:3]), [┬╡l(1),┬╡l(2),┬╡l(4)], one_tip=True) p.transfer(clone_plate2.well("A1"), pcr_plate.wells(seq_wells[3:6]), [┬╡l(2),┬╡l(4),┬╡l(6)], one_tip=True) assert all(pcr_plate.well(w).volume == ┬╡l(20) for w in seq_wells) assert clone_plate1.well("A1").volume == ┬╡l(11) assert clone_plate2.well("A1").volume == ┬╡l(66) # -------------------------------------------------------------- # qPCR # standard melting curve parameters # p.seal(pcr_plate) p.thermocycle(pcr_plate, [{"cycles": 1, "steps": [{"temperature": "95:celsius","duration": "2:minute"}]}, {"cycles": 40, "steps": [{"temperature": "95:celsius","duration": "5:second"}, {"temperature": "60:celsius","duration": "20:second"}, {"temperature": "72:celsius","duration": "15:second", "read": True}]}], volume=┬╡l(20), # volume is optional dataref=expid("qpcr"), dyes={"SYBR": seq_wells}, # dye must be specified (tells transcriptic what aborbance to use?) melting_start="65:celsius", melting_end="95:celsius", melting_increment="0.5:celsius", melting_rate="5:second") # -------------------------------------------------------------- # Gel -- 20ul required # Dilute such that I have 11ul for sequencing # p.unseal(pcr_plate) p.distribute(water_tube, pcr_plate.wells(seq_wells), ┬╡l(11)) p.gel_separate(pcr_plate.wells(seq_wells), ┬╡l(20), "agarose(8,0.8%)", "ladder1", "10:minute", expid("gel")) # This appears to be a bug in Transcriptic. The actual volume should be 11ul # but it is not updating after running a gel with 20ul. # Primer tube should be equal to dead volume, or it's a waste assert all(pcr_plate.well(w).volume==┬╡l(31) for w in seq_wells) assert primer_tube.volume == ┬╡l(16) == dead_volume['micro-1.5'] + ┬╡l(1) assert water_tube.volume > ┬╡l(25) # --------------------------------------------------------------- # Test and run protocol # jprotocol = json.dumps(p.as_dict(), indent=2) !echo '{jprotocol}' | transcriptic analyze open("protocol_{}.json".format(experiment_name),'w').write(jprotocol) 

 рдЪреЗрддрд╛рд╡рдиреА: рд░реВрдЯ: рдЕрдЪреНрдЫреА рдорд╛рддреНрд░рд╛ рдореЗрдВ sfgfp_puc19_gibson_v1_clone / sfgfp_puc19_gibson_v1_clone: тАЛтАЛ11.0: microliter 

 Zed рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛
  11 рдирд┐рд░реНрджреЗрд╢
  6 рдХрдВрдЯреЗрдирд░
  рдХреБрд▓ рд▓рд╛рдЧрдд: $ 32.09
  рдХрд╛рд░реНрдп рд╕рдордп: $ 6.98
  рдЕрднрд┐рдХрд░реНрдордХ рдФрд░ рдЙрдкрднреЛрдЧреНрдп: $ 25.11 

рдкрд░рд┐рдгрд╛рдо: рдЧрд┐рдмреНрд╕рди рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рд▓рд┐рдП qPCR


рдореИрдВ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдПрдкреАрдЖрдИ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ JSON рдкреНрд░рд╛рд░реВрдк рдореЗрдВ qPCR рдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪ рд╕рдХрддрд╛ рд╣реВрдВред рдпрд╣ рд╕реБрд╡рд┐рдзрд╛ рдЕрдЪреНрдЫреА рддрд░рд╣ рд╕реЗ рдкреНрд░рд▓реЗрдЦрд┐рдд рдирд╣реАрдВ рд╣реИ , рд▓реЗрдХрд┐рди рдмреЗрд╣рдж рдЙрдкрдпреЛрдЧреА рд╣реЛ рд╕рдХрддреА рд╣реИред рдПрдкреАрдЖрдИ рдЖрдкрдХреЛ рд░реЛрдмреЛрдЯ рд╕реЗ рдХреБрдЫ рдиреИрджрд╛рдирд┐рдХ тАЛтАЛрдбреЗрдЯрд╛ рддрдХ рдкрд╣реБрдВрдЪ рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВ, рдЬреЛ рдбреАрдмрдЧрд┐рдВрдЧ рдореЗрдВ рдорджрдж рдХрд░ рд╕рдХрддрд╛ рд╣реИред

рд╕рдмрд╕реЗ рдкрд╣рд▓реЗ, рд╣рдо рд▓реЙрдиреНрдЪ рдбреЗрдЯрд╛ рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░рддреЗ рд╣реИрдВ:

 project_id, run_id = "p16x6gna8f5e9", "r18mj3cz3fku7" api_url = "https://secure.transcriptic.com/hgbrian/{}/runs/{}/data.json".format(project_id, run_id) data_response = requests.get(api_url, headers=tsc_headers) data = data_response.json() 

рдлрд┐рд░ рд╣рдо рдЗрд╕ рдЖрдИрдбреА рдХреЛ qPCR "рдкреЛрд╕реНрдЯ-рдкреНрд░реЛрд╕реЗрд╕рд┐рдВрдЧ" рдбреЗрдЯрд╛ рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рддреЗ рд╣реИрдВ:

 qpcr_id = data['debug_sfgfp_puc19_gibson_seq_v1_qpcr']['id'] pp_api_url = "https://secure.transcriptic.com/data/{}.json?key=postprocessed_data".format(qpcr_id) data_response = requests.get(pp_api_url, headers=tsc_headers) pp_data = data_response.json() 

рдпрд╣рд╛рдВ рдкреНрд░рддреНрдпреЗрдХ рдЯреНрдпреВрдм рдХреЗ рд▓рд┐рдП рд╕реАрдЯреА рдорд╛рди (рдЪрдХреНрд░ рджрд╣рд▓реАрдЬ) рд╣реИрдВред рд╕реАрдЯреА рдмрд╕ рд╡рд╣ рдмрд┐рдВрджреБ рд╣реИ рдЬрд┐рд╕ рдкрд░ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдПрдХ рдирд┐рд╢реНрдЪрд┐рдд рдореВрд▓реНрдп рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рд╡рд╣ рдХрд╣рддреА рд╣реИрдВ рдХрд┐ рдлрд┐рд▓рд╣рд╛рд▓ рдбреАрдПрдирдП рдХрд┐рддрдирд╛ рд╣реИ (рдФрд░ рдЗрд╕рд▓рд┐рдП, рдореЛрдЯреЗ рддреМрд░ рдкрд░ рдЬрд╣рд╛рдВ рд╣рдордиреЗ рд╢реБрд░реБрдЖрдд рдХреА рдереА)ред

 # Simple util to convert wellnum to wellname n_w = {str(wellnum):'ABCDEFGH'[wellnum//12]+str(1+wellnum%12) for wellnum in range(96)} w_n = {v: k for k, v in n_w.items()} ct_vals = {n_w[k]:v for k,v in pp_data["amp0"]["SYBR"]["cts"].items()} ct_df = pd.DataFrame(ct_vals, index=["Ct"]).T ct_df["well"] = ct_df.index f, ax = plt.subplots(figsize=(16,6)) _ = sns.barplot(y="well", x="Ct", data=ct_df) 



рдЬреИрд╕рд╛ рдХрд┐ рдЖрдк рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ, рдкреНрд░рд╡рд░реНрдзрди рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдЯреЗрд╕реНрдЯ рдЯреНрдпреВрдм рдбреА 2 / 4/6 рдореЗрдВ рд╣реЛрддрд╛ рд╣реИ (рдЬрд╣рд╛рдВ рдореЗрд░реЗ рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА рд╕реЗ рдбреАрдПрдирдП "v3" рд╣реИ), рдлрд┐рд░ рдмреА 2 / 4/6 (рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА "v1")ред V1 рдФрд░ v3 рдХреЗ рдмреАрдЪ рдЕрдВрддрд░ рдореВрд▓ рд░реВрдк рд╕реЗ рд╣реИ рдХрд┐ v3 рдбреАрдПрдирдП NEB рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░ 4X рдкрддрд▓рд╛ рд╣реИ, рд▓реЗрдХрд┐рди рджреЛрдиреЛрдВ рд╡рд┐рдХрд▓реНрдкреЛрдВ рдкрд░ рдХрд╛рдо рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рдирд┐рдпрдВрддреНрд░рдг рдЯреНрдпреВрдмреЛрдВ рдореЗрдВ рдЪрдХреНрд░ 30 (рдПрдл 2, рдПрдл 4) рдХреЗ рдмрд╛рдж рдбреАрдПрдирдП рдЯреЗрдореНрдкреНрд▓реЗрдЯ рдХреА рдХрдореА рдХреЗ рдХрд╛рд░рдг рдХреБрдЫ рдкреНрд░рд╡рд░реНрдзрди рд╣реИ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрд╕рд╛рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЙрдирдореЗрдВ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдкреНрд░рд╛рдЗрдорд░ рдбреАрдПрдирдП рд╢рд╛рдорд┐рд▓ рд╣реИрдВред

рдореИрдВ рднреА рдкреНрд░рд╡рд░реНрдзрди рдХреА рдЧрддрд┐рд╢реАрд▓рддрд╛ рдХреЛ рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП qPCR рдкреНрд░рд╡рд░реНрдзрди рд╡рдХреНрд░ рдХреА рд╕рд╛рдЬрд┐рд╢ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдБред

 f, ax = plt.subplots(figsize=(16,6)) ax.set_color_cycle(['#fb6a4a', '#de2d26', '#a50f15', '#74c476', '#31a354', '#006d2c', '#08519c', '#6baed6']) amp0 = pp_data['amp0']['SYBR']['baseline_subtracted'] _ = [plt.plot(amp0[w_n[well]], label=well) for well in ['B2', 'B4', 'B6', 'D2', 'D4', 'D6', 'F2', 'F4']] _ = ax.set_ylim(0,) _ = plt.title("qPCR (reds=Gibson v1, greens=Gibson v3, blues=control)") _ = plt.legend(bbox_to_anchor=(1, .75), bbox_transform=plt.gcf().transFigure) 



рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, qPCR рдкрд░рд┐рдгрд╛рдо рдореЗрд░реЗ рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рджреЛрдиреЛрдВ рд╕рдВрд╕реНрдХрд░рдгреЛрдВ рдХреЗ рдЕрдЪреНрдЫреЗ рдкреНрд░рд╡рд░реНрдзрди рдФрд░ рдирд┐рдпрдВрддреНрд░рдг рд╕рдореВрд╣ рдореЗрдВ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рдкреНрд░рд╡рд░реНрдзрди рдХреЗ рдмрд┐рдирд╛ рдмрд╣реБрдд рдЕрдЪреНрдЫреЗ рд▓рдЧрддреЗ рд╣реИрдВред рдЪреВрдВрдХрд┐ рдЕрд╕реЗрдВрдмрд▓реА v3 рдиреЗ v1 рд╕реЗ рдереЛрдбрд╝рд╛ рдмреЗрд╣рддрд░ рдкрд░рд┐рдгрд╛рдо рджрд┐рдЦрд╛рдпрд╛ рдерд╛, рдЕрдм рд╣рдо рдЗрд╕рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВрдЧреЗред

рдкрд░рд┐рдгрд╛рдо: рдЬреЗрд▓ рдореЗрдВ рдЧрд┐рдмреНрд╕рди рд╡рд┐рдзрд╛рдирд╕рднрд╛


рдЬреЗрд▓ рднреА рдмрд╣реБрдд рд╕рд╛рдл рд╣реИ, рдмреИрдВрдб рдмреА 2, рдмреА 4, рдмреА 6, рдбреА 2, рдбреА 4, рдбреА 6 рдореЗрдВ 1kb рдХреЗ рдиреАрдЪреЗ рдордЬрдмреВрдд рдмреИрдВрдб рджрд┐рдЦрд╛ рд░рд╣рд╛ рд╣реИ: рдпрд╣ рдареАрдХ рдЙрд╕реА рдЖрдХрд╛рд░ рдХрд╛ рд╣реИ рдЬрд┐рд╕рдХреА рд╣рдо рдЙрдореНрдореАрдж рдХрд░рддреЗ рд╣реИрдВ (рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ 740bp рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рд╣реИ, рдФрд░ M13 рдкреНрд░рд╛рдЗрдорд░ 40bp рдКрдкрд░ рдФрд░ рдиреАрдЪреЗ рд╣реИрдВ)ред рджреВрд╕рд░реА рд▓реЗрди рдкреНрд░рд╛рдЗрдорд░реЛрдВ рд╕реЗ рдореЗрд▓ рдЦрд╛рддреА рд╣реИред рдЖрдк рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ, рдХреНрдпреЛрдВрдХрд┐ F2 рдФрд░ F4 рдмреИрдВрдб рдореЗрдВ рдХреЗрд╡рд▓ рдкреНрд░рд╛рдЗрдорд░ рдбреАрдПрдирдП рд╣реЛрддрд╛ рд╣реИред


Polyacrylamide gel рд╡реИрджреНрдпреБрддрдХрдгрд╕рдВрдЪрд▓рди: c рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА v3 рдордЬрдмреВрдд рдмреИрдВрдб (D2, D4, D6) рджрд┐рдЦрд╛рддрд╛ рд╣реИ, рдКрдкрд░ qPCR рдбреЗрдЯрд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░

рдЪрд░рдг 4. рдкрд░рд┐рд╡рд░реНрддрди


рдкрд░рд┐рд╡рд░реНрддрди рдбреАрдПрдирдП рдХреЛ рдЬреЛрдбрд╝рдХрд░ рд╢рд░реАрд░ рдХреЛ рдмрджрд▓рдиреЗ рдХреА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рд╣реИред рдЗрд╕ рдкреНрд░рдпреЛрдЧ рдореЗрдВ, рд╣рдо рдмрджрд▓ рд╕рдХрддреЗ рд╣реИрдВ рдИ рдХреЛрд▓рд╛рдИ sfGFP-рд╡реНрдпрдХреНрдд рдкреНрд▓рд╛рдЬреНрдорд┐рдб pUC19 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ред

рд╣рдо рдЖрд╕рд╛рдиреА рд╕реЗ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ Zymo DH5╬▒ рдорд┐рдХреНрд╕ рдПрдВрдб рдЧреЛ рд╕реНрдЯреНрд░реЗрди рдФрд░ рдЕрдиреБрд╢рдВрд╕рд┐рдд рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВ ред рдпрд╣ рддрдирд╛рд╡ рдорд╛рдирдХ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрд╢рдирд▓ рдЗрдиреНрд╡реЗрдВрдЯреНрд░реА рдХрд╛ рд╣рд┐рд╕реНрд╕рд╛ рд╣реИред рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рд░реВрдкрд╛рдВрддрд░рдг рдЬрдЯрд┐рд▓ рд╣реЛ рд╕рдХрддреЗ рд╣реИрдВ рдХреНрдпреЛрдВрдХрд┐ рд╕рдХреНрд╖рдо рдХреЛрд╢рд┐рдХрд╛рдПрдВ рдирд╛рдЬреБрдХ рд╣реЛрддреА рд╣реИрдВ, рдЗрд╕рд▓рд┐рдП рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЬрд┐рддрдирд╛ рд╕рд░рд▓ рдФрд░ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реЛрдЧрд╛, рдЙрддрдирд╛ рд╣реА рдмреЗрд╣рддрд░ рд╣реЛрдЧрд╛ред рдЖрдо рдЖрдгрд╡рд┐рдХ рдЬреАрд╡ рд╡рд┐рдЬреНрдЮрд╛рди рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛рдУрдВ рдореЗрдВ, рдпреЗ рд╕рдХреНрд╖рдо рдХреЛрд╢рд┐рдХрд╛рдПрдВ рд╢рд╛рдпрдж рд╕рд╛рдорд╛рдиреНрдп рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдмрд╣реБрдд рдорд╣рдВрдЧреА рд╣реЛрдВрдЧреАред


рд╕рд░рд▓ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рд╛рде Zymo рдорд┐рдХреНрд╕ рдПрдВрдб рдЧреЛ рд╕реЗрд▓

рд░реЛрдмреЛрдЯ рдХреЗ рд╕рд╛рде рд╕рдорд╕реНрдпрд╛


рдпрд╣ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЗрд╕ рдмрд╛рдд рдХрд╛ рдПрдХ рдЕрдЪреНрдЫрд╛ рдЙрджрд╛рд╣рд░рдг рд╣реИ рдХрд┐ рд░реЛрдмреЛрдЯ рджреНрд╡рд╛рд░рд╛ рдЙрдкрдпреЛрдЧ рдХреЗ рд▓рд┐рдП рдорд╛рдирд╡ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдирд╛ рдХрд┐рддрдирд╛ рдореБрд╢реНрдХрд┐рд▓ рд╣реИ рдФрд░ рдпрд╣ рдЕрдкреНрд░рддреНрдпрд╛рд╢рд┐рдд рд░реВрдк рд╕реЗ рдХреИрд╕реЗ рд╡рд┐рдлрд▓ рд╣реЛ рд╕рдХрддрд╛ рд╣реИред рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрднреА-рдХрднреА рдЖрдгрд╡рд┐рдХ рдЬреАрд╡рд╡рд┐рдЬреНрдЮрд╛рдиреА рдХреЗ рд╕рд╛рдорд╛рдиреНрдп рд╕рдВрджрд░реНрдн рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд░реВрдк рд╕реЗ рдЕрд╕реНрдкрд╖реНрдЯ ("рд╕рд╛рдЗрдб рд╕реЗ рдЯреНрдпреВрдм рдХреЛ рд╕реНрд╡рд┐рдВрдЧ рдХрд░рддреЗ рд╣реИрдВ") рд╣реЛрддреЗ рд╣реИрдВ, рдпрд╛ рд╡реЗ рдЕрдЪрд╛рдирдХ рдЙрдиреНрдирдд рдЫрд╡рд┐ рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЕрдиреБрд░реЛрдз рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ ("рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдХрд┐ рдЧреЛрд▓реА рдорд┐рд╢реНрд░рд┐рдд рд╣реИ")ред рд▓реЛрдЧреЛрдВ рдХреЛ рдЗрд╕ рддрд░рд╣ рдХреЗ рдХрд╛рд░реНрдпреЛрдВ рдореЗрдВ рдХреЛрдИ рдЖрдкрддреНрддрд┐ рдирд╣реАрдВ рд╣реИ, рд▓реЗрдХрд┐рди рд░реЛрдмреЛрдЯ рдХреЛ рд╕реНрдкрд╖реНрдЯ рдирд┐рд░реНрджреЗрд╢реЛрдВ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдЗрд╕ рдкрд░рд┐рд╡рд░реНрддрди рдиреЗ рджрд┐рд▓рдЪрд╕реНрдк рд╕рдордп рдХреЗ рдореБрджреНрджреЛрдВ рдХреЛ рджрд┐рдЦрд╛рдпрд╛ред рдкрд░рд┐рд╡рд░реНрддрди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рд▓рд╛рд╣ рджреЗрддрд╛ рд╣реИ рдХрд┐ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рдХрдорд░реЗ рдХреЗ рддрд╛рдкрдорд╛рди рдкрд░ рдХреБрдЫ рд╕реЗрдХрдВрдб рд╕реЗ рдЕрдзрд┐рдХ рдирд╣реАрдВ рд░рд╣рдирд╛ рдЪрд╛рд╣рд┐рдП рдФрд░ рдЯреНрдпреВрдмреЛрдВ рдХреЗ рд╕рд╛рде рдкреНрд▓реЗрдЯ рдХреЛ 37 рдбрд┐рдЧреНрд░реА рд╕реЗрд▓реНрд╕рд┐рдпрд╕ рддрдХ рдкреНрд░реАрд╣реАрдЯ рдХрд░рдирд╛ рдЪрд╛рд╣рд┐рдПред рд╕реИрджреНрдзрд╛рдВрддрд┐рдХ рд░реВрдк рд╕реЗ, рдЖрдк рдкрд╣рд▓реЗ рд╕реЗ рдЧрд░рдо рдХрд░рдирд╛ рд╢реБрд░реВ рдХрд░рдирд╛ рдЪрд╛рд╣реЗрдВрдЧреЗ рддрд╛рдХрд┐ рдпрд╣ рдПрдХ рд╕рд╛рде рдкрд░рд┐рд╡рд░реНрддрди рдХреЗ рд╕рд╛рде рд╕рдорд╛рдкреНрдд рд╣реЛ рдЬрд╛рдП, рд▓реЗрдХрд┐рди рдпрд╣ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реИ рдХрд┐ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд░реЛрдмреЛрдЯ рдЗрд╕ рд╕реНрдерд┐рддрд┐ рд╕реЗ рдХреИрд╕реЗ рдирд┐рдкрдЯреЗрдВрдЧреЗ - рдЬрд╣рд╛рдВ рддрдХ тАЛтАЛрдореБрдЭреЗ рдкрддрд╛ рд╣реИ, рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдЪрд░рдгреЛрдВ рдХреЛ рдареАрдХ рд╕реЗ рд╕рд┐рдВрдХреНрд░рдирд╛рдЗрдЬрд╝ рдХрд░рдиреЗ рдХрд╛ рдХреЛрдИ рддрд░реАрдХрд╛ рдирд╣реАрдВ рд╣реИред рд╕рдЯреАрдХ рд╕рдордп рдирд┐рдпрдВрддреНрд░рдг рдХреА рдХрдореА рд░реЛрдмреЛрдЯ рдмрд╛рдВрд╣ рдХреА рд╕рд╛рдкреЗрдХреНрд╖ рдЕрдирдореНрдпрддрд╛ рдХреЗ рдХрд╛рд░рдг рд░реЛрдмреЛрдЯ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд╕рд╛рде рдПрдХ рдЖрдо рд╕рдорд╕реНрдпрд╛ рд╣реИ, рд╕рдордпрдмрджреНрдзрди рд╕рдВрдШрд░реНрд╖, рдЖрджрд┐ред рд╣рдореЗрдВ рддрджрдиреБрд╕рд╛рд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕рдорд╛рдпреЛрдЬрд┐рдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред

рдЖрдорддреМрд░ рдкрд░ рдЙрдЪрд┐рдд рд╕рдорд╛рдзрд╛рди рд╣реЛрддреЗ рд╣реИрдВ: рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рдЕрд▓рдЧ-рдЕрд▓рдЧ рдЕрднрд┐рдХрд░реНрдордХреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЕрдзрд┐рдХ рд╣рд╛рд░реНрдбреА рдХреЛрд╢рд┐рдХрд╛рдПрдВ, рдЬреИрд╕реЗ рдорд┐рдХреНрд╕ рдПрдВрдб рдЧреЛ рдКрдкрд░); рдХрднреА-рдХрднреА рдЖрдк рдмрд╕ рдорд╛рд░реНрдЬрд┐рди рдХреЗ рд╕рд╛рде рдХрд╛рд░реНрд░рд╡рд╛рдИ рдХрд░рддреЗ рд╣реИрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рддреАрди рдХреЗ рдмрдЬрд╛рдп рджрд╕ рдмрд╛рд░ рд╣рд┐рд▓рд╛рдПрдВ); рдХрднреА-рдХрднреА рдЖрдкрдХреЛ рд░реЛрдмреЛрдЯ рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢реЗрд╖ рдЯреНрд░рд┐рдХ рдХреЗ рд╕рд╛рде рдЖрдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рд╣реАрдЯ рд╕реНрдЯреНрд░реЛрдХ рдХреЗ рд▓рд┐рдП рдкреАрд╕реАрдЖрд░ рдорд╢реАрди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ)ред

рдмреЗрд╢рдХ, рдмрдбрд╝рд╛ рдлрд╛рдпрджрд╛ рдпрд╣ рд╣реИ рдХрд┐ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкрд░ рдПрдХ рдмрд╛рд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдЖрдк рдЖрдо рддреМрд░ рдкрд░ рдмрд╛рд░-рдмрд╛рд░ рдЗрд╕ рдкрд░ рднрд░реЛрд╕рд╛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЖрдк рдпрд╣ рднреА рдмрддрд╛ рд╕рдХрддреЗ рд╣реИрдВ рдХрд┐ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд┐рддрдирд╛ рд╡рд┐рд╢реНрд╡рд╕рдиреАрдп рд╣реИ рдФрд░ рд╕рдордп рдХреЗ рд╕рд╛рде рдЗрд╕рдореЗрдВ рд╕реБрдзрд╛рд░ рд╣реЛрддрд╛ рд╣реИ!

рдкрд░реАрдХреНрд╖рдг рдкрд░рд┐рд╡рд░реНрддрди


рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЗрдХрдЯреНрдареЗ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХреЗ рд╕рд╛рде рдкрд░рд┐рд╡рд░реНрддрди рд╢реБрд░реВ рдХрд░рдиреЗ рд╕реЗ рдкрд╣рд▓реЗ, рдореИрдВ рдпрд╣ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рд╕рд╛рдзрд╛рд░рдг рдкреНрд░рдпреЛрдЧ рдХрд░рддрд╛ рд╣реВрдВ рдХрд┐ рдкрд░рд┐рд╡рд░реНрддрди рд╕рд╛рдорд╛рдиреНрдп pUC19 (рдЕрд░реНрдерд╛рдд рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА рдХреЗ рдмрд┐рдирд╛ рдФрд░ sfGFP рдбреАрдПрдирдП рд╕рдореНрдорд┐рд▓рди рдХреЗ рдмрд┐рдирд╛) рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред pUC19 рдореЗрдВ рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдкреНрд░рддрд┐рд░реЛрдз рдЬреАрди рд╣реЛрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд╕рдлрд▓ рдкрд░рд┐рд╡рд░реНрддрди рд╕реЗ рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдХреЛ рдЗрд╕ рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ рдпреБрдХреНрдд рдкреНрд▓реЗрдЯреЛрдВ рдкрд░ рдмрдврд╝рдиреЗ рдХреА рдЕрдиреБрдорддрд┐ рдорд┐рд▓рдиреА рдЪрд╛рд╣рд┐рдПред

рдореИрдВ рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдХреЛ рд╕реАрдзреЗ рдЧреЛрд▓реА ("6-рдлреНрд▓реИрдЯ" рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд╢рдмреНрджрд╛рд╡рд▓реА) рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рддрд╛ рд╣реВрдВ, рдЬрд╣рд╛рдВ рдпрд╛ рддреЛ рдПрдореНрдкреАрд╕рд┐рд▓реАрди рд╣реИ рдпрд╛ рдирд╣реАрдВред рдореБрдЭреЗ рдЙрдореНрдореАрдж рд╣реИ рдХрд┐ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдореЗрдВ рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдкреНрд░рддрд┐рд░реЛрдз рдЬреАрди рд╣реЛрддрд╛ рд╣реИ рдФрд░ рдЗрд╕рд▓рд┐рдП рдмрдврд╝реЗрдЧрд╛ред рдмрд┐рдирд╛ рд░реВрдкрд╛рдВрддрд░рд┐рдд рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдирд╣реАрдВ рдЙрдЧрдирд╛ рдЪрд╛рд╣рд┐рдПред

рдХреЛрдб
 """Simple transformation protocol: transformation with unaltered pUC19""" p = Protocol() experiment_name = "debug_sfgfp_puc19_gibson_v1" inv = { "water" : "rs17gmh5wafm5p", # catalog; Autoclaved MilliQ H2O; ambient "DH5a" : "rs16pbj944fnny", # catalog; Zymo DH5╬▒; cold_80 "LB Miller" : "rs17bafcbmyrmh", # catalog; LB Broth Miller; cold_4 "Amp 100mgml" : "rs17msfk8ujkca", # catalog; Ampicillin 100mg/ml; cold_20 "pUC19" : "rs17tcqmncjfsh", # catalog; pUC19; cold_20 } # Catalog transform_plate = p.ref("transform_plate", cont_type="96-pcr", storage="ambient", discard=True) transform_tube = transform_plate.well(0) # ------------------------------------------------------------------------------------ # Plating transformed bacteria according to Tali's protocol (requires different code!) # http://learn.transcriptic.com/blog/2015/9/9/provisioning-commercial-reagents # Add 1-5ul plasmid and pre-warm culture plates to 37C before starting. # # # Extra inventory for plating # inv["lb-broth-100ug-ml-amp_6-flat"] = "ki17sbb845ssx9" # (kit, not normal ref) from blogpost inv["noAB-amp_6-flat"] = "ki17reefwqq3sq" # kit id inv["LB Miller"] = "rs17bafcbmyrmh" # # Ampicillin and no ampicillin plates # amp_6_flat = Container(None, p.container_type('6-flat')) p.refs["amp_6_flat"] = Ref('amp_6_flat', {"reserve": inv['lb-broth-100ug-ml-amp_6-flat'], "store": {"where": 'cold_4'}}, amp_6_flat) noAB_6_flat = Container(None, p.container_type('6-flat')) p.refs["noAB_6_flat"] = Ref('noAB_6_flat', {"reserve": inv['noAB-amp_6-flat'], "store": {"where": 'cold_4'}}, noAB_6_flat) # # Provision competent bacteria # p.provision(inv["DH5a"], transform_tube, ┬╡l(50)) p.provision(inv["pUC19"], transform_tube, ┬╡l(2)) # # Heatshock the bacteria to transform using a PCR machine # p.seal(transform_plate) p.thermocycle(transform_plate, [{"cycles": 1, "steps": [{"temperature": "4:celsius", "duration": "5:minute"}]}, {"cycles": 1, "steps": [{"temperature": "37:celsius", "duration": "30:minute"}]}], volume=┬╡l(50)) p.unseal(transform_plate) # # Then dilute bacteria and spread onto 6-flat plates # Put more on ampicillin plates for more opportunities to get a colony # p.provision(inv["LB Miller"], transform_tube, ┬╡l(355)) p.mix(transform_tube, ┬╡l(150), repetitions=5) for i in range(6): p.spread(transform_tube, amp_6_flat.well(i), ┬╡l(55)) p.spread(transform_tube, noAB_6_flat.well(i), ┬╡l(10)) assert transform_tube.volume >= ┬╡l(15), transform_tube.volume # # Incubate and image 6-flat plates over 18 hours # for flat_name, flat in [("amp_6_flat", amp_6_flat), ("noAB_6_flat", noAB_6_flat)]: for timepoint in [6,12,18]: p.cover(flat) p.incubate(flat, "warm_37", "6:hour") p.uncover(flat) p.image_plate(flat, mode="top", dataref=expid("{}_t{}".format(flat_name, timepoint))) # --------------------------------------------------------------- # Analyze protocol # jprotocol = json.dumps(p.as_dict(), indent=2) !echo '{jprotocol}' | transcriptic analyze #print("Protocol {}\n\n{}".format(experiment_name, protocol)) open("protocol_{}.json".format(experiment_name),'w').write(jprotocol) 

 Zed рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛
  43 рдирд┐рд░реНрджреЗрд╢
  3 рдХрдВрдЯреЗрдирд░
  $ 45.43 

рдкрд░рд┐рдгрд╛рдо: рдкрд░реАрдХреНрд╖рдг рдкрд░рд┐рд╡рд░реНрддрди


рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рддрд╕реНрд╡реАрд░реЛрдВ рдореЗрдВ, рд╣рдо рджреЗрдЦрддреЗ рд╣реИрдВ рдХрд┐ рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ (рдмрд╛рдИрдВ рдУрд░ рдХреА рдкреНрд▓реЗрдЯ) рдХреЗ рдмрд┐рдирд╛, рд╡рд┐рдХрд╛рд╕ рд╕рднреА рдЫрд╣ рдкреНрд▓реЗрдЯреЛрдВ рдкрд░ рдордирд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдПрдХ рдЕрд▓рдЧ рдбрд┐рдЧреНрд░реА рддрдХ, рдЬреЛ рдЪрд┐рдВрддрд╛ рдХрд╛ рдХрд╛рд░рдг рдмрдирддрд╛ рд╣реИред рдРрд╕рд╛ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд░реЛрдмреЛрдЯ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд╕рдорд╛рди рд╡рд┐рддрд░рдг рдХреЗ рд╕рд╛рде рд╕рд╛рдордирд╛ рдирд╣реАрдВ рдХрд░рддреЗ рд╣реИрдВ, рдЬрд┐рд╕рдХреЗ рд▓рд┐рдП рдХреБрдЫ рдирд┐рдкреБрдгрддрд╛ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИред

рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ (рджрд╛рдИрдВ рдУрд░ рдкреНрд▓реЗрдЯ) рдХреА рдЙрдкрд╕реНрдерд┐рддрд┐ рдореЗрдВ, рд╡реГрджреНрдзрд┐ рднреА рд╣реЛрддреА рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдлрд┐рд░ рд╕реЗ рдпрд╣ рдЕрд╕рдВрдЧрдд рд╣реИред рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ рджрд╡рд╛рдУрдВ рдХреЗ рд╕рд╛рде рдкрд╣рд▓реА рджреЛ рдкреНрд▓реЗрдЯреЗрдВ рдмрдбрд╝реА рд╡реГрджреНрдзрд┐ рдХреЗ рд╕рд╛рде рдЕрдЬреАрдм рд▓рдЧрддреА рд╣реИрдВ, рдЬреЛ рд╕рдВрднрд╡рддрдГ рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ рджрд╡рд╛рдУрдВ рдХреЗ рдмрд┐рдирд╛ рдкреНрд▓реЗрдЯреЛрдВ рдкрд░ 10 ╬╝l рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдЗрди рдкреНрд▓реЗрдЯреЛрдВ рдореЗрдВ 55 ╬╝l рдЬреЛрдбрд╝рдиреЗ рдХрд╛ рдкрд░рд┐рдгрд╛рдо рд╣реИред рддреАрд╕рд░реА рдкреНрд▓реЗрдЯ рдкрд░ рдХрдИ рдЙрдкрдирд┐рд╡реЗрд╢ рд╣реИрдВ, рдФрд░ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рдпрд╣ рд╣реИ рдХрд┐ рдореБрдЭреЗ рд╕рднреА рдкреНрд▓реЗрдЯреЛрдВ рдкрд░ рджреЗрдЦрдиреЗ рдХреА рдЙрдореНрдореАрдж рдереАред рдЕрдВрддрд┐рдо рддреАрди рдкреНрд▓реЗрдЯреЛрдВ рдкрд░ рдХреБрдЫ рд╡реГрджреНрдзрд┐ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП, рд▓реЗрдХрд┐рди рдРрд╕рд╛ рдирд╣реАрдВ рд╣реЛрддрд╛ рд╣реИред рдЗрди рдЕрдЬреАрдм рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд▓рд┐рдП рдореЗрд░рд╛ рдПрдХрдорд╛рддреНрд░ рд╕реНрдкрд╖реНрдЯреАрдХрд░рдг рдпрд╣ рд╣реИ рдХрд┐ рдореИрдВрдиреЗ рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдФрд░ рдорд╛рдзреНрдпрдореЛрдВ рдХреЛ рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдирд╣реАрдВ рдорд┐рд▓рд╛рдпрд╛, рдЗрд╕рд▓рд┐рдП рд▓рдЧрднрдЧ рд╕рднреА рдХреЛрд╢рд┐рдХрд╛рдПрдВ рдкрд╣рд▓реЗ рджреЛ рдкреНрд▓реЗрдЯреЛрдВ рдореЗрдВ рдорд┐рд▓ рдЧрдИрдВред

(рдореБрдЭреЗ рдЕрднреА рднреА рдПрдХ рдЕрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдЬреАрд╡рд╛рдгреБ рдХреЗ рд╕рд╛рде рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдкрд░ рдПрдХ рд╕рдХрд╛рд░рд╛рддреНрдордХ рдирд┐рдпрдВрддреНрд░рдг рдмрдирд╛рдирд╛ рдерд╛, рд▓реЗрдХрд┐рди рдореИрдВрдиреЗ рдкрд╣рд▓реЗ рд╣реА рдПрдХ рдкрд┐рдЫрд▓реЗ рдкреНрд░рдпреЛрдЧ рдореЗрдВ рдРрд╕рд╛ рдХрд┐рдпрд╛ рдерд╛, рдЗрд╕рд▓рд┐рдП рдореБрдЭреЗ рдкрддрд╛ рд╣реИ рдХрд┐ рд╕реНрдЯреЙрдХ рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдХреЛ рдЗрд╕ рддрдирд╛рд╡ рдХреЛ рдорд╛рд░рдирд╛ рдЪрд╛рд╣рд┐рдПрдИред рдХреЛрд▓рд╛рдИ ред рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдкреНрд▓реЗрдЯреЛрдВ рдкрд░ рд╡рд┐рдХрд╛рд╕ рдмрд╣реБрдд рдХрдордЬреЛрд░ рд╣реИ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рд╡рд╣рд╛рдБ рдмрд╣реБрдд рдЕрдзрд┐рдХ рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рд╣реИрдВ, рдЬреИрд╕рд╛ рдХрд┐ рдЕрдкреЗрдХреНрд╖рд┐рдд рд╣реИ)ред

рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░, рдкрд░рд┐рд╡рд░реНрддрди рдиреЗ рдЬрд╛рд░реА рд░рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкрд░реНрдпрд╛рдкреНрдд рд░реВрдк рд╕реЗ рдХрд╛рдо рдХрд┐рдпрд╛, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреБрдЫ рдЦрд╛рдорд┐рдпрд╛рдВ рд╣реИрдВред


рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреЗ рдкреНрд▓реЗрдЯреНрд╕ 18 рдШрдВрдЯреЗ рдХреЗ рдмрд╛рдж pUC19 рдХреЗ рд╕рд╛рде рдмрджрд▓ рдЧрдП: рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ (рдмрд╛рдПрдВ) рдФрд░ рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ (рджрд╛рдПрдВ) рдХреЗ рдмрд┐рдирд╛

рд╡рд┐рдзрд╛рдирд╕рднрд╛ рдХреЗ рдмрд╛рдж рдЙрддреНрдкрд╛рдж рдкрд░рд┐рд╡рд░реНрддрди


рдЪреВрдВрдХрд┐ рдЧрд┐рдмреНрд╕рди рдЕрд╕реЗрдВрдмрд▓реА рдФрд░ рд╕рд┐рдВрдкрд▓ pUC19 рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдореЗрд╢рди рдХрд╛рдо рдХрд░рдиреЗ рд▓рдЧрддрд╛ рд╣реИ, рдЕрдм рдЖрдк sfGFP рдХреЛ рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рдПрдХ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рдЗрдХрдЯреНрдареЗ рд╣реБрдП рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХреЗ рд╕рд╛рде рдЯреНрд░рд╛рдВрд╕рдлреЙрд░реНрдореЗрд╢рди рдХреЛ рдЖрдЬрдорд╛ рд╕рдХрддреЗ рд╣реИрдВред

рдПрдХрддреНрд░рд┐рдд рд╕рдореНрдорд┐рд▓рди рдХреЗ рдЕрд▓рд╛рд╡рд╛, рдореИрдВ рд╕рдлреЗрдж-рдиреАрд▓реЗ рдЪрдпрди рд╡рд┐рдзрд┐ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рд╕рдлрд▓ рд░реВрдкрд╛рдВрддрд░рдг рджреЗрдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд▓реЗрдЯреЛрдВ рдореЗрдВ рдереЛрдбрд╝рд╛ рдЖрдИрдкреАрдЯреАрдЬреА рдФрд░ рдПрдХреНрд╕-рдЧреИрд▓ рднреА рдЬреЛрдбрд╝реВрдВрдЧрд╛ ред рдпрд╣ рдЕрддрд┐рд░рд┐рдХреНрдд рдЬрд╛рдирдХрд╛рд░реА рдЙрдкрдпреЛрдЧреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрджрд┐ рдкрд░рд┐рд╡рд░реНрддрди рд╕рд╛рдорд╛рдиреНрдп pUC19 рдХреЗ рд╕рд╛рде рд╣реЛрддрд╛ рд╣реИ, рдЬрд┐рд╕рдореЗрдВ sfGFP рдирд╣реАрдВ рд╣реИ, рддреЛ рдпрд╣ рдЕрднреА рднреА рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ рдкреНрд░рддрд┐рд░реЛрдз рджреЗрдЧрд╛ред

рдЕрд╡рд╢реЛрд╖рдг рдФрд░ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐


рдЗрд╕ рддрд╛рд▓рд┐рдХрд╛ рдХреЗ рдЕрдиреБрд╕рд╛рд░ , sfGFP 485 рдПрдирдПрдо / 510 рдПрдирдПрдо рдХреЗ рдЙрддреНрддреЗрдЬрдирд╛ рддрд░рдВрдЧ рджреИрд░реНрдзреНрдп рдореЗрдВ рд╕рдмрд╕реЗ рдЕрдЪреНрдЫрд╛ рдЪрдордХрддрд╛ рд╣реИред рдореИрдВрдиреЗ рдкрд╛рдпрд╛ рдХрд┐ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдореЗрдВ, 485/535 рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ 485 рдФрд░ 510 рдмрд╣реБрдд рд╕рдорд╛рди рд╣реИрдВред рдореИрдВ 600 рдПрдирдПрдо ( OD600 ) рдкрд░ рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдХреЗ рд╡рд┐рдХрд╛рд╕ рдХреЛ рдорд╛рдкрддрд╛ рд╣реВрдВ ред


GFP рдХреА рд╡рд┐рд╡рд┐рдзрддрд╛ ( рдмрд╛рдпреЛрдЯреЗрдХ )

IPTG рдФрд░ X-gal


рдореЗрд░рд╛ IPTG 1M рдХреА рдПрдХрд╛рдЧреНрд░рддрд╛ рдкрд░ рд╣реИ рдФрд░ рдЗрд╕реЗ 1: 1000 рдкрддрд▓рд╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдмрджрд▓реЗ рдореЗрдВ, 20 рдорд┐рд▓реАрдЧреНрд░рд╛рдо / рдПрдордПрд▓ рдХреА рдПрдХрд╛рдЧреНрд░рддрд╛ рдкрд░ рдПрдХреНрд╕-рдЧреИрд▓ рдХреЛ рднреА 1: 1000 (20 рдорд┐рд▓реАрдЧреНрд░рд╛рдо / ╬╝l) рдкрддрд▓рд╛ рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдПред рдЗрд╕рд▓рд┐рдП, 2000 each рдПрд▓рдмреА рдореЗрдВ рдореИрдВ рдкреНрд░рддреНрдпреЗрдХ рдореЗрдВ 2 рдПрд▓рдПрд▓ рдЬреЛрдбрд╝рддрд╛ рд╣реВрдВред

рдПрдХ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдЕрдиреБрд╕рд╛рд░ , рдЖрдкрдХреЛ рдкрд╣рд▓реЗ X-gal рдХреЗ 40 you l рдХреЛ 20 mg / ml рдХреА рд╕рдШрдирддрд╛ рдФрд░ 0.1 mM рдХреА IPTG рдПрдХрд╛рдЧреНрд░рддрд╛ рдХреЗ 40 you l (рдпрд╛ 1M рдкреНрд░рддрд┐ IPTG рдХреЗ 4 you l) рдХреЛ рд▓реЗрдирд╛ рдЪрд╛рд╣рд┐рдП, рдФрд░ 30 рдорд┐рдирдЯ рдХреЗ рд▓рд┐рдП рд╕реЗрддреЗ рд╣реИрдВред рдпрд╣ рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдореЗрд░реЗ рдХрд╛рдо рдирд╣реАрдВ рдЖрдИ, рдЗрд╕рд▓рд┐рдП рдореИрдВрдиреЗ рд╕рд┐рд░реНрдл IPTG, X-gal рдФрд░ рд╕рдВрдмрдВрдзрд┐рдд рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХреЛ рдорд┐рд▓рд╛рдпрд╛ рдФрд░ рд╕реАрдзреЗ рдЗрд╕ рдорд┐рд╢реНрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛ред

рдХреЛрдб
 """Full Gibson assembly and transformation protocol for sfGFP and pUC19 v1: Spread IPTG and X-gal onto plates, then spread cells v2: Mix IPTG, X-gal and cells; spread the mixture v3: exclude X-gal so I can do colony picking better v4: repeat v3 to try other excitation/emission wavelengths""" p = Protocol() options = { "gibson" : False, # do a new gibson assembly "sanger" : False, # sanger sequence product "control_pUC19" : True, # unassembled pUC19 "XGal" : False # excluding X-gal should make the colony picking easier } for k, v in list(options.items()): if v is False: del options[k] experiment_name = "sfgfp_puc19_gibson_plates_v4" # ----------------------------------------------------------------------- # Inventory # inv = { # catalog "water" : "rs17gmh5wafm5p", # catalog; Autoclaved MilliQ H2O; ambient "DH5a" : "rs16pbj944fnny", # catalog; Zymo DH5╬▒; cold_80 "Gibson Mix" : "rs16pfatkggmk5", # catalog; Gibson Mix (2X); cold_20 "LB Miller" : "rs17bafcbmyrmh", # catalog; LB Broth Miller; cold_4 "Amp 100mgml" : "rs17msfk8ujkca", # catalog; Ampicillin 100mg/ml; cold_20 "pUC19" : "rs17tcqmncjfsh", # catalog; pUC19; cold_20 # my inventory "puc19_cut_v2": "ct187v4ea7vvca", # inventory; pUC19 cut with EcoRI; cold_20 "IPTG" : "ct18a2r5wn6tqz", # inventory; IPTG at 1M (conc semi-documented); cold_20 "XGal" : "ct18a2r5wp5hcv", # inventory; XGal at 0.1M (conc not documented); cold_20 "sfgfp_pcroe_v8_amplified" : "ct1874zqh22pab", # inventory; sfGFP amplified to 40ng/ul; cold_4 "sfgfp_puc19_gibson_v3_clone" : "ct188ejywa8jcv", # inventory; assembled sfGFP; cold_4 # kits (must be used differently) "lb-broth-100ug-ml-amp_6-flat" : "ki17sbb845ssx9", # catalog; ampicillin plates "noAB-amp_6-flat" : "ki17reefwqq3sq" # catalog; no antibiotic plates } # # Catalog (all to be discarded afterward) # water_tube = p.ref("water", cont_type="micro-1.5", storage="ambient", discard=True).well(0) transform_plate = p.ref("trn_plate", cont_type="96-pcr", storage="ambient", discard=True) transform_tube = transform_plate.well(39) # experiment transform_tube_L = p.ref("trn_tubeL", cont_type="micro-1.5", storage="ambient", discard=True).well(0) transctrl_tube = transform_plate.well(56) # control transctrl_tube_L = p.ref("trc_tubeL", cont_type="micro-1.5", storage="ambient", discard=True).well(0) # # Plating according to Tali's protocol # http://learn.transcriptic.com/blog/2015/9/9/provisioning-commercial-reagents # amp_6_flat = Container(None, p.container_type('6-flat')) p.refs[expid("amp_6_flat")] = Ref(expid("amp_6_flat"), {"reserve": inv['lb-broth-100ug-ml-amp_6-flat'], "store": {"where": 'cold_4'}}, amp_6_flat) noAB_6_flat = Container(None, p.container_type('6-flat')) p.refs[expid("noAB_6_flat")] = Ref(expid("noAB_6_flat"), {"reserve": inv['noAB-amp_6-flat'], "store": {"where": 'cold_4'}}, noAB_6_flat) # # My inventory: EcoRI-cut pUC19, oePCR'd sfGFP, Gibson-assembled pUC19, IPTG and X-Gal # if "gibson" in options: puc19_cut_tube = p.ref("puc19_ecori_v2_puc19_cut", id=inv["puc19_cut_v2"], cont_type="micro-1.5", storage="cold_20").well(0) sfgfp_pcroe_amp_tube = p.ref("sfgfp_pcroe_v8_amplified", id=inv["sfgfp_pcroe_v8_amplified"], cont_type="micro-1.5", storage="cold_4").well(0) clone_plate = p.ref(expid("clone"), cont_type="96-pcr", storage="cold_4", discard=False) else: clone_plate = p.ref("sfgfp_puc19_gibson_v3_clone", id=inv["sfgfp_puc19_gibson_v3_clone"], cont_type="96-pcr", storage="cold_4", discard=False) IPTG_tube = p.ref("IPTG", id=inv["IPTG"], cont_type="micro-1.5", storage="cold_20").well(0) if "XGal" in options: XGal_tube = p.ref("XGal", id=inv["XGal"], cont_type="micro-1.5", storage="cold_20").well(0) # # Initialize inventory # if "gibson" in options: all_inventory_wells = [puc19_cut_tube, sfgfp_pcroe_amp_tube, IPTG_tube] assert puc19_cut_tube.volume == ┬╡l(66), puc19_cut_tube.volume assert sfgfp_pcroe_amp_tube.volume == ┬╡l(36), sfgfp_pcroe_amp_tube.volume else: all_inventory_wells = [IPTG_tube, clone_plate.well(0)] if "XGal" in options: all_inventory_wells.append(XGal_tube) for well in all_inventory_wells: init_inventory_well(well) print("Inventory: {} {} {}".format(well.name, well.volume, well.properties)) # # Provisioning. Water is used all over the protocol. Provision an excess since it's cheap # p.provision(inv["water"], water_tube, ┬╡l(500)) # ----------------------------------------------------------------------------- # Cloning/assembly (see NEBuilder protocol above) # # "Optimized efficiency is 50тАУ100 ng of vectors with 2 fold excess of inserts." # pUC19 is 20ng/ul (78ul total). # sfGFP is ~40ng/ul (48ul total) # Therefore 4ul of each gives 80ng and 160ng of vector and insert respectively # def do_gibson_assembly(): # # Combine all the Gibson reagents in one tube and thermocycle # p.provision(inv["Gibson Mix"], clone_plate.well(0), ┬╡l(10)) p.transfer(water_tube, clone_plate.well(0), ┬╡l(2)) p.transfer(puc19_cut_tube, clone_plate.well(0), ┬╡l(4)) p.transfer(sfgfp_pcroe_amp_tube, clone_plate.well(0), ┬╡l(4), mix_after=True, mix_vol=┬╡l(10), repetitions=10) p.seal(clone_plate) p.thermocycle(clone_plate, [{"cycles": 1, "steps": [{"temperature": "50:celsius", "duration": "16:minute"}]}], volume=┬╡l(50)) # # Dilute assembled plasmid 4X according to the NEB Gibson assembly protocol (20ul->80ul) # p.unseal(clone_plate) p.transfer(water_tube, clone_plate.well(0), ┬╡l(60), mix_after=True, mix_vol=┬╡l(40), repetitions=5) return # -------------------------------------------------------------------------------------------------- # Transformation # "Transform NEB 5-alpha Competent E. coli cells with 2 ╬╝l of the # assembled product, following the appropriate transformation protocol." # # Mix & Go http://www.zymoresearch.com/downloads/dl/file/id/173/t3015i.pdf # "[After mixing] Immediately place on ice and incubate for 2-5 minutes" # "The highest transformation efficiencies can be obtained by incubating Mix & Go cells with DNA on # ice for 2-5 minutes (60 minutes maximum) prior to plating." # "It is recommended that culture plates be pre-warmed to >20┬░C (preferably 37┬░C) prior to plating." # "Avoid exposing the cells to room temperature for more than a few seconds at a time." # # "If competent cells are purchased from other manufacture, dilute assembled products 4-fold # with H2O prior transformation. This can be achieved by mixing 5 ╬╝l of assembled products with # 15 ╬╝l of H2O. Add 2 ╬╝l of the diluted assembled product to competent cells." # def _do_transformation(): # # Combine plasmid and competent bacteria in a pcr_plate and shock # p.provision(inv["DH5a"], transform_tube, ┬╡l(50)) p.transfer(clone_plate.well(0), transform_tube, ┬╡l(3), dispense_speed="10:microliter/second") assert clone_plate.well(0).volume == ┬╡l(54), clone_plate.well(0).volume if 'control_pUC19' in options: p.provision(inv["DH5a"], transctrl_tube, ┬╡l(50)) p.provision(inv["pUC19"], transctrl_tube, ┬╡l(1)) # # Heatshock the bacteria to transform using a PCR machine # p.seal(transform_plate) p.thermocycle(transform_plate, [{"cycles": 1, "steps": [{"temperature": "4:celsius", "duration": "5:minute"}]}, {"cycles": 1, "steps": [{"temperature": "37:celsius", "duration": "30:minute"}]}], volume=┬╡l(50)) return def _transfer_transformed_to_plates(): assert transform_tube.volume == ┬╡l(53), transform_tube.volume p.unseal(transform_plate) num_ab_plates = 4 # antibiotic places # # Transfer bacteria to a bigger tube for diluting # Then spread onto 6-flat plates # Generally you would spread 50-100ul of diluted bacteria # Put more on ampicillin plates for more opportunities to get a colony # I use a dilution series since it's unclear how much to plate # p.provision(inv["LB Miller"], transform_tube_L, ┬╡l(429)) # # Add all IPTG and XGal to the master tube # 4ul (1M) IPTG on each plate; 40ul XGal on each plate # p.transfer(IPTG_tube, transform_tube_L, ┬╡l(4*num_ab_plates)) if 'XGal' in options: p.transfer(XGal_tube, transform_tube_L, ┬╡l(40*num_ab_plates)) # # Add the transformed cells and mix (use new mix op in case of different pipette) # p.transfer(transform_tube, transform_tube_L, ┬╡l(50)) p.mix(transform_tube_L, volume=transform_tube_L.volume/2, repetitions=10) assert transform_tube.volume == dead_volume['96-pcr'] == ┬╡l(3), transform_tube.volume assert transform_tube_L.volume == ┬╡l(495), transform_tube_L.volume # # Spread an average of 60ul on each plate == 480ul total # for i in range(num_ab_plates): p.spread(transform_tube_L, amp_6_flat.well(i), ┬╡l(51+i*6)) p.spread(transform_tube_L, noAB_6_flat.well(i), ┬╡l(51+i*6)) assert transform_tube_L.volume == dead_volume["micro-1.5"], transform_tube_L.volume # # Controls: include 2 ordinary pUC19-transformed plates as a control # if 'control_pUC19' in options: num_ctrl = 2 assert num_ab_plates + num_ctrl <= 6 p.provision(inv["LB Miller"], transctrl_tube_L, ┬╡l(184)+dead_volume["micro-1.5"]) p.transfer(IPTG_tube, transctrl_tube_L, ┬╡l(4*num_ctrl)) if "XGal" in options: p.transfer(XGal_tube, transctrl_tube_L, ┬╡l(40*num_ctrl)) p.transfer(transctrl_tube, transctrl_tube_L, ┬╡l(48)) p.mix(transctrl_tube_L, volume=transctrl_tube_L.volume/2, repetitions=10) for i in range(num_ctrl): p.spread(transctrl_tube_L, amp_6_flat.well(num_ab_plates+i), ┬╡l(55+i*10)) p.spread(transctrl_tube_L, noAB_6_flat.well(num_ab_plates+i), ┬╡l(55+i*10)) assert transctrl_tube_L.volume == dead_volume["micro-1.5"], transctrl_tube_L.volume assert IPTG_tube.volume == ┬╡l(808), IPTG_tube.volume if "XGal" in options: assert XGal_tube.volume == ┬╡l(516), XGal_tube.volume return def do_transformation(): _do_transformation() _transfer_transformed_to_plates() # ------------------------------------------------------ # Measure growth in plates (photograph) # def measure_growth(): # # Incubate and photograph 6-flat plates over 18 hours # to see blue or white colonies # for flat_name, flat in [(expid("amp_6_flat"), amp_6_flat), (expid("noAB_6_flat"), noAB_6_flat)]: for timepoint in [9,18]: p.cover(flat) p.incubate(flat, "warm_37", "9:hour") p.uncover(flat) p.image_plate(flat, mode="top", dataref=expid("{}_t{}".format(flat_name, timepoint))) return # --------------------------------------------------------------- # Sanger sequencing, TURNED OFF # Sequence to make sure assembly worked # 500ng plasmid, 1 ┬╡l of a 10 ┬╡M stock primer # "M13_F" : "rs17tcpqwqcaxe", # catalog; M13 Forward (-41); cold_20 (1ul = 100pmol) # "M13_R" : "rs17tcph6e2qzh", # catalog; M13 Reverse (-48); cold_20 (1ul = 100pmol) # def do_sanger_seq(): seq_primers = [inv["M13_F"], inv["M13_R"]] seq_wells = ["G1","G2"] p.unseal(pcr_plate) for primer_num, seq_well in [(0, seq_wells[0]),(1, seq_wells[1])]: p.provision(seq_primers[primer_num], pcr_plate.wells([seq_well]), ┬╡l(1)) p.transfer(pcr_plate.wells(["A1"]), pcr_plate.wells(seq_wells), ┬╡l(5), mix_before=True, mix_vol=┬╡l(10)) p.transfer(water_tube, pcr_plate.wells(seq_wells), ┬╡l(9)) p.mix(pcr_plate.wells(seq_wells), volume=┬╡l(7.5), repetitions=10) p.sangerseq(pcr_plate, pcr_plate.wells(seq_wells[0]).indices(), expid("seq1")) p.sangerseq(pcr_plate, pcr_plate.wells(seq_wells[1]).indices(), expid("seq2")) return # --------------------------------------------------------------- # Generate protocol # # Skip Gibson since I already did it if 'gibson' in options: do_gibson_assembly() do_transformation() measure_growth() if 'sanger' in options: do_sanger_seq() # --------------------------------------------------------------- # Output protocol # jprotocol = json.dumps(p.as_dict(), indent=2) !echo '{jprotocol}' | transcriptic analyze #print("\nProtocol {}\n\n{}".format(experiment_name, jprotocol)) open("protocol_{}.json".format(experiment_name),'w').write(jprotocol) 

 рдЗрдиреНрд╡реЗрдВрдЯрд░реА: IPTG / IPTG / IPTG / IPTG / IPTG / IPTG 832.0: microliter {}
рдЗрдиреНрд╡реЗрдВрдЯрд░реА: sfgfp_puc19_gibson_v3_clone / sfgfp_puc19_gibson_v3_clone / sfgfp_puc19_gibsonson -v3_clone / sfgfp_puc19_gibson_v3clone/cfone/fone/

  
Zed рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛
  40 рдирд┐рд░реНрджреЗрд╢
  8 рдХрдВрдЯреЗрдирд░
  рдХреБрд▓ рд▓рд╛рдЧрдд: $ 53.20
  рдХрд╛рд░реНрдп рд╕рдордп: $ 17.35
  рдЕрднрд┐рдХрд░реНрдордХ рдФрд░ рдЙрдкрднреЛрдЧреНрдп: $ 35.86 

рдХреЙрд▓реЛрдиреА рд╕рдВрдЧреНрд░рд╣


рдЬрдм рдХреЙрд▓реЛрдирд┐рдпрд╛рдВ рдПрдХ рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдкреНрд▓реЗрдЯ рдкрд░ рдмрдврд╝рддреА рд╣реИрдВ, рддреЛ рдореИрдВ рд╡реНрдпрдХреНрддрд┐рдЧрдд рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЛ "рдЗрдХрдЯреНрдард╛" рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдФрд░ рдЙрдиреНрд╣реЗрдВ 96-рдЯреНрдпреВрдм рдкреНрд▓реЗрдЯ рдкрд░ рд▓рдЧрд╛ рд╕рдХрддрд╛ рд╣реВрдВред рдЗрд╕рдХреЗ рд▓рд┐рдП, рдСрдЯреЛ- рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдореЗрдВ рдПрдХ рд╡рд┐рд╢реЗрд╖ рдХрдорд╛рдВрдб ( рдСрдЯреЛрдкрд┐рдХ ) рд╣реИ ред

рдХреЛрдб
 """Pick colonies from plates and grow in amp media and check for fluorescence. v2: try again with a new plate (no blue colonies) v3: repeat with different emission and excitation wavelengths""" p = Protocol() options = {} for k, v in list(options.items()): if v is False: del options[k] experiment_name = "sfgfp_puc19_gibson_pick_v3" def plate_expid(val): """refer to the previous plating experiment's outputs""" plate_exp = "sfgfp_puc19_gibson_plates_v4" return "{}_{}".format(plate_exp, val) # ----------------------------------------------------------------------- # Inventory # inv = { # catalog "water" : "rs17gmh5wafm5p", # catalog; Autoclaved MilliQ H2O; ambient "LB Miller" : "rs17bafcbmyrmh", # catalog; LB Broth Miller; cold_4 "Amp 100mgml" : "rs17msfk8ujkca", # catalog; Ampicillin 100mg/ml; cold_20 "IPTG" : "ct18a2r5wn6tqz", # inventory; IPTG at 1M (conc semi-documented); cold_20 # plates from previous experiment, must be changed every new experiment plate_expid("amp_6_flat") : "ct18snmr9avvg9", # inventory; Ampicillin plates with blue-white screening of pUC19 plate_expid("noAB_6_flat") : "ct18snmr9dxfw2", # inventory; no AB plates with blue-white screening of pUC19 } # Tubes and plates lb_amp_tubes = [p.ref("lb_amp_{}".format(i+1), cont_type="micro-2.0", storage="ambient", discard=True).well(0) for i in range(4)] lb_xab_tube = p.ref("lb_xab", cont_type="micro-2.0", storage="ambient", discard=True).well(0) growth_plate = p.ref(expid("growth"), cont_type="96-flat", storage="cold_4", discard=False) # My inventory IPTG_tube = p.ref("IPTG", id=inv["IPTG"], cont_type="micro-1.5", storage="cold_20").well(0) # ampicillin plate amp_6_flat = Container(None, p.container_type('6-flat')) p.refs[plate_expid("amp_6_flat")] = Ref(plate_expid("amp_6_flat"), {"id":inv[plate_expid("amp_6_flat")], "store": {"where": 'cold_4'}}, amp_6_flat) # Use a total of 50 wells abs_wells = ["{}{}".format(row,col) for row in "BCDEF" for col in range(1,11)] abs_wells_T = ["{}{}".format(row,col) for col in range(1,11) for row in "BCDEF"] assert abs_wells[:3] == ["B1","B2","B3"] and abs_wells_T[:3] == ["B1","C1","D1"] def prepare_growth_wells(): # # To LB, add ampicillin at ~1/1000 concentration # Mix slowly in case of overflow # p.provision(inv["LB Miller"], lb_xab_tube, ┬╡l(1913)) for lb_amp_tube in lb_amp_tubes: p.provision(inv["Amp 100mgml"], lb_amp_tube, ┬╡l(2)) p.provision(inv["LB Miller"], lb_amp_tube, ┬╡l(1911)) p.mix(lb_amp_tube, volume=┬╡l(800), repetitions=10) # # Add IPTG but save on X-Gal # http://openwetware.org/images/f/f1/Dh5a_sub.pdf # "If you are concerned about obtaining maximal levels of expression, add IPTG to a final concentration of 1 mM." # 2ul of IPTG in 2000ul equals 1mM # p.transfer(IPTG_tube, [lb_xab_tube] + lb_amp_tubes, ┬╡l(2), one_tip=True) # # Distribute LB among wells, row D is control (no ampicillin) # cols = range(1,11) row = "D" # control, no AB cwells = ["{}{}".format(row,col) for col in cols] assert set(cwells).issubset(set(abs_wells)) p.distribute(lb_xab_tube, growth_plate.wells(cwells), ┬╡l(190), allow_carryover=True) rows = "BCEF" for row, lb_amp_tube in zip(rows, lb_amp_tubes): cwells = ["{}{}".format(row,col) for col in cols] assert set(cwells).issubset(set(abs_wells)) p.distribute(lb_amp_tube, growth_plate.wells(cwells), ┬╡l(190), allow_carryover=True) assert all(lb_amp_tube.volume == lb_xab_tube.volume == dead_volume['micro-2.0'] for lb_amp_tube in lb_amp_tubes) return def measure_growth_wells(): # # Growth: absorbance and fluorescence over 24 hours # Absorbance at 600nm: cell growth # Absorbance at 615nm: X-gal, in theory # Fluorescence at 485nm/510nm: sfGFP # or 450nm/508nm (http://www.ncbi.nlm.nih.gov/pmc/articles/PMC2695656/) # hr = 4 for t in range(0,24,hr): if t > 0: p.cover(growth_plate) p.incubate(growth_plate, "warm_37", "{}:hour".format(hr), shaking=True) p.uncover(growth_plate) p.fluorescence(growth_plate, growth_plate.wells(abs_wells).indices(), excitation="485:nanometer", emission="535:nanometer", dataref=expid("fl2_{}".format(t)), flashes=25) p.fluorescence(growth_plate, growth_plate.wells(abs_wells).indices(), excitation="450:nanometer", emission="508:nanometer", dataref=expid("fl1_{}".format(t)), flashes=25) p.fluorescence(growth_plate, growth_plate.wells(abs_wells).indices(), excitation="395:nanometer", emission="508:nanometer", dataref=expid("fl0_{}".format(t)), flashes=25) p.absorbance(growth_plate, growth_plate.wells(abs_wells).indices(), wavelength="600:nanometer", dataref=expid("abs_{}".format(t)), flashes=25) return # --------------------------------------------------------------- # Protocol steps # prepare_growth_wells() batch = 10 for i in range(5): p.autopick(amp_6_flat.well(i), growth_plate.wells(abs_wells_T[i*batch:i*batch+batch]), dataref=expid("autopick_{}".format(i))) p.image_plate(amp_6_flat, mode="top", dataref=expid("autopicked_{}".format(i))) measure_growth_wells() # --------------------------------------------------------------- # Output protocol # jprotocol = json.dumps(p.as_dict(), indent=2) !echo '{jprotocol}' | transcriptic analyze open("protocol_{}.json".format(experiment_name),'w').write(jprotocol) 

 Zed рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХрд┐рдпрд╛
  62 рдирд┐рд░реНрджреЗрд╢
  8 рдХрдВрдЯреЗрдирд░
  рдХреБрд▓ рд▓рд╛рдЧрдд: $ 66.38
  рдХрд╛рд░реНрдп рд╕рдордп: $ 57.59
  рдЕрднрд┐рдХрд░реНрдордХреЛрдВ рдФрд░ рдЙрдкрднреЛрдЧреНрдп: $ 8.78 

рдкрд░рд┐рдгрд╛рдо: рдХреЙрд▓реЛрдиреА рдХреА рдлрд╕рд▓


рдиреАрд▓реА-рд╕рдлреЗрдж рд╕реНрдХреНрд░реАрди рдкреВрд░реА рддрд░рд╣ рд╕реЗ рджрд┐рдЦрд╛рдИ рджреЗрддреА рд╣реИ, рдореБрдЦреНрдп рд░реВрдк рд╕реЗ, рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ (1-4) рдХреЗ рд╕рд╛рде рдкреНрд▓реЗрдЯреЛрдВ рдкрд░ рд╕рдлреЗрдж рдХреЙрд▓реЛрдирд┐рдпрд╛рдВ рдФрд░ рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ (5-6) рдХреЗ рдмрд┐рдирд╛ рдкреНрд▓реЗрдЯреЛрдВ рдкрд░ рдХреЗрд╡рд▓ рдиреАрд▓рд╛ред рдпрд╣ рд╡рд╣реА рд╣реИ рдЬреЛ рдореИрдВрдиреЗ рдЙрдореНрдореАрдж рдХреА рдереА, рдФрд░ рдореБрдЭреЗ рдпрд╣ рджреЗрдЦрдХрд░ рдЦреБрд╢реА рд╣реБрдИ, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рдореИрдВрдиреЗ рдЕрдкрдиреЗ рдЦреБрдж рдХреЗ рдЖрдИрдкреАрдЯреАрдЬреА рдФрд░ рдПрдХреНрд╕-рдЧреИрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд┐рдпрд╛, рдЬрд┐рд╕реЗ рдореИрдВрдиреЗ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдХреЛ рднреЗрдЬрд╛ред


рдПрдореНрдкреАрд╕рд┐рд▓реАрди (1-4) рдФрд░ рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ (5-6) рдХреЗ рд╕рд╛рде рдкреНрд▓реЗрдЯреЛрдВ рдХреЗ рд╕рдлреЗрдж-рдиреАрд▓реЗ рдЪрдпрди рджреНрд╡рд╛рд░рд╛ рд╕реНрдХреНрд░реАрдирд┐рдВрдЧ

рд╣рд╛рд▓рд╛рдВрдХрд┐, рдХреЙрд▓реЛрдиреА-рд╕рдВрдЧреНрд░рд╣ рдХрд░рдиреЗ рд╡рд╛рд▓реЗ рд░реЛрдмреЛрдЯ рдиреЗ рдЗрди рд╕рдлреЗрдж-рдиреАрд▓реЗ рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдЕрдЪреНрдЫрд╛ рдХрд╛рдо рдирд╣реАрдВ рдХрд┐рдпрд╛ред рдиреАрдЪреЗ рдХреА рдЫрд╡рд┐ рдкреНрд▓реЗрдЯ рдЪрдпрди рдХреЗ рдкреНрд░рддреНрдпреЗрдХ рджреМрд░ рдХреЗ рдмрд╛рдж рдкреНрд▓реЗрдЯреЛрдВ рдХреА рдХреНрд░рдорд┐рдХ рддрд╕реНрд╡реАрд░реЛрдВ рдХреЛ рдШрдЯрд╛рдХрд░ рдмрдирд╛рдИ рдЧрдИ рдереА рдФрд░ рдЕрдВрддрд░ рдХреЗ рд╡рд┐рдкрд░реАрдд ( рдЧреНрд░рд╛рдлрд┐рдХреНрд╕рдореИрдЬрд┐рдХ рдореЗрдВ ) рдХреЛ рдмрдврд╝рд╛рдХрд░ рдмрдирд╛рдИ рдЧрдИ рдереА ред рдЗрд╕ рддрд░рд╣, рдореИрдВ рдХрд▓реНрдкрдирд╛ рдХрд░ рд╕рдХрддрд╛ рд╣реВрдВ рдХрд┐ рдХреМрди рд╕реА рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛ (рд╣рд╛рд▓рд╛рдВрдХрд┐ рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ рдирд╣реАрдВ, рдХреНрдпреЛрдВрдХрд┐ рдПрдХрддреНрд░рд┐рдд рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЛ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╣рдЯрд╛рдпрд╛ рдирд╣реАрдВ рдЧрдпрд╛ рд╣реИ)ред

рдореИрдВрдиреЗ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд░реЛрдмреЛрдЯ рджреНрд╡рд╛рд░рд╛ рдПрдХрддреНрд░ рдХреА рдЧрдИ рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХреЗ рд╕рд╛рде рдЫрд╡рд┐ рдкрд░ рднреА рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рдХрд┐рдПред рдпрд╣ рдорд╛рдирд╛ рдЬрд╛рддрд╛ рдерд╛ рдХрд┐ рд╡рд╣ рдкрд╣рд▓реЗ рдкрд╛рдВрдЪ рдкреНрд▓реЗрдЯреЛрдВ рд╕реЗ рдЕрдзрд┐рдХрддрдо 10 рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░реЗрдЧрд╛ред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╕рд╛рдорд╛рдиреНрдп рддреМрд░ рдкрд░, рдХрдИ рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЧрдпрд╛ рдерд╛, рдФрд░ рдпреЗ рдЖрдорддреМрд░ рдкрд░ рдиреАрд▓реА рдХреЙрд▓реЛрдирд┐рдпрд╛рдВ рд╣реИрдВред рд░реЛрдмреЛрдЯ рдХреЗрд╡рд▓ рдмреНрд▓реВ рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рдПрдХ рдирд┐рдпрдВрддреНрд░рдг рдкреНрд▓реЗрдЯ рдкрд░ рджрд╕ рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЛ рдЦреЛрдЬрдиреЗ рдореЗрдВ рдХрд╛рдордпрд╛рдм рд░рд╣рд╛ред рдореЗрд░рд╛ рдХрд╛рдо рдХрд░рдиреЗ рдХрд╛ рд╕рд┐рджреНрдзрд╛рдВрдд рд╣реИ рдХрд┐ рдПрдХ рдХреЙрд▓реЛрдиреА рд░реЛрдмреЛрдЯ рдХреЛ рдЕрдзрд┐рдорд╛рдирддрдГ рдиреАрд▓реЗ рд░рдВрдЧ рдХреА рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЛ рдЗрдХрдЯреНрдард╛ рдХрд░рддрд╛ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рд╡реЗ рдЕрдзрд┐рдХ рд╡рд┐рдкрд░реАрдд рд╣реИрдВред


рдПрдореНрдкреАрд╕рд┐рд▓реАрди (1-4) рдФрд░ рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ (5-6) рдХреЗ рд╕рд╛рде рдиреАрд▓реЗ-рд╕рдлреЗрдж рдЪрдпрди рдХреЗ рд▓рд┐рдП рд╕реНрдХреНрд░реАрдирд┐рдВрдЧ рдкреНрд▓реЗрдЯреЗрдВ, рдПрдХрддреНрд░рд┐рдд рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреА рд╕рдВрдЦреНрдпрд╛ рдХрд╛ рд╕рдВрдХреЗрдд рджреЗрддреА рд╣реИрдВ

рдиреАрд▓реЗ рдФрд░ рд╕рдлреЗрдж рд╕реНрдХреНрд░реАрдирд┐рдВрдЧ рдиреЗ рдПрдХ рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЙрджреНрджреЗрд╢реНрдп рдкреВрд░рд╛ рдХрд┐рдпрд╛ред рдЙрдиреНрд╣реЛрдВрдиреЗ рджрд┐рдЦрд╛рдпрд╛ рдХрд┐ рдЬреНрдпрд╛рджрд╛рддрд░ рдХреЙрд▓реЛрдирд┐рдпрд╛рдБ рд╕рд╣реА рдврдВрдЧ рд╕реЗ рд░реВрдкрд╛рдВрддрд░рд┐рдд рд╣реЛрддреА рд╣реИрдВред рдХрдо рд╕реЗ рдХрдо рдПрдХ рдкреНрд░рд╡рд┐рд╖реНрдЯрд┐ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдмреЗрд╣рддрд░ рдХреЙрд▓реЛрдиреА рд╕рдВрдЧреНрд░рд╣ рдХреЗ рд▓рд┐рдП, рдореИрдВрдиреЗ рдПрдХреНрд╕-рдЧреИрд▓ рдХреЗ рдмрд┐рдирд╛ рдкреНрд░рдпреЛрдЧ рдХреЛ рджреЛрд╣рд░рд╛рдпрд╛ред

рдХреЗрд╡рд▓ рд╕рдлреЗрдж рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЗ рд╕рд╛рде рд░реЛрдмреЛрдЯ рдХрд▓реЗрдХреНрдЯрд░ рдиреЗ рдкрд╣рд▓реЗ рдкрд╛рдВрдЪ рдкреНрд▓реЗрдЯреЛрдВ рдореЗрдВ рд╕реЗ рдкреНрд░рддреНрдпреЗрдХ рд╕реЗ рджрд╕ рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХреЛ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ред рдпрд╣ рдорд╛рдирд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдЕрдзрд┐рдХрд╛рдВрд╢ рдПрдХрддреНрд░рд┐рдд рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдореЗрдВ рд╕рдлрд▓ рд╕рдореНрдорд┐рд▓рди рд╣реИрдВред


рдПрдореНрдкреАрд╕рд┐рд▓реАрди (1-4) рдФрд░ рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ рдХреЗ рдмрд┐рдирд╛ (5-6) рдкреНрд▓реЗрдЯреЛрдВ рдкрд░ рдмрдврд╝рдиреЗ рд╡рд╛рд▓реА рдХреЙрд▓реЛрдирд┐рдпрд╛рдВ

рдкрд░рд┐рдгрд╛рдо: рдЗрдХрдЯреНрдареЗ рдЙрддреНрдкрд╛рдж рдХреЗ рд╕рд╛рде рдкрд░рд┐рд╡рд░реНрддрди


20 рдШрдВрдЯреЗ рдХреЗ рд▓рд┐рдП 96-рдЯреНрдпреВрдм рдкреНрд▓реЗрдЯ рдкрд░ 50 рдЪрдпрдирд┐рдд рдХрд╛рд▓реЛрдирд┐рдпреЛрдВ рдХреЛ рдмрдврд╝рдиреЗ рдХреЗ рдмрд╛рдж, рдореИрдВ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдХреЛ sfGFP рдХреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреА рдЬрд╛рдВрдЪ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдорд╛рдкрддрд╛ рд╣реВрдВред рдкреНрд░рддрд┐рд▓реЗрдЦреА рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдФрд░ рдЕрд╡рд╢реЛрд╖рдг (рдФрд░ рдпрджрд┐ рдЖрдк рдЪрд╛рд╣реЗрдВ рддреЛ) рдХреЗ рд▓рд┐рдП рд▓реАрдирд╛рди рдЕрдирдВрдд рдкрд╛рдардХ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддрд╛ рд╣реИ ред

рд╕рд┐рджреНрдзрд╛рдВрдд рд░реВрдк рдореЗрдВ, рдХрд┐рд╕реА рднреА рдХреЙрд▓реЛрдиреА рдореЗрдВ, рдПрдХ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдХреЛ рд╡рд┐рдХрд╛рд╕ рдХреЗ рд╕рд╛рде рдЗрдХрдЯреНрдард╛ рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕реЗ рдмрдврд╝рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдВрдЯреАрдмрд╛рдпреЛрдЯрд┐рдХ рдкреНрд░рддрд┐рд░реЛрдз рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реЛрддреА рд╣реИ, рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рдПрдХрддреНрд░рд┐рдд sfGFP рд╡реНрдпрдХреНрдд рдХрд░рддрд╛ рд╣реИред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХрдИ рдХрд╛рд░рдг рд╣реИрдВ рдХрд┐ рдпрд╣ рдорд╛рдорд▓рд╛ рдХреНрдпреЛрдВ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рдХрдо рд╕реЗ рдХрдо рдирд╣реАрдВ рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдкреНрд░рддрд┐рд░реЛрдз рдЦреЛрдП рдмрд┐рдирд╛ рдкреНрд▓рд╛рд╕реНрдорд┐рдб рд╕реЗ рдПрд╕рдПрдлрдЬреАрдПрдлрдкреА рдЬреАрди рдЦреЛ рд╕рдХрддреЗ рд╣реИрдВред рдПрдХ рдЬреАрд╡рд╛рдгреБ рдЬреЛ sfGFP рдЬреАрди рдХреЛ рдЦреЛ рджреЗрддрд╛ рд╣реИ, рдЙрд╕реЗ рдЕрдкрдиреЗ рдкреНрд░рддрд┐рджреНрд╡рдВрджреНрд╡рд┐рдпреЛрдВ рдХреЗ рдЪрдпрди рдореЗрдВ рдПрдХ рдлрд╛рдпрджрд╛ рд╣реЛрддрд╛ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рдЕрддрд┐рд░рд┐рдХреНрдд рдКрд░реНрдЬрд╛ рдЦрд░реНрдЪ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдФрд░ рд╡рд┐рдХрд╛рд╕ рдХреА рдкрд░реНрдпрд╛рдкреНрдд рд╕рдВрдЦреНрдпрд╛ рдореЗрдВ рдкреАрдврд╝рд┐рдпреЛрдВ рдХреЛ рдзреНрдпрд╛рди рдореЗрдВ рд░рдЦрддреЗ рд╣реБрдП, рдпрд╣ рдирд┐рд╢реНрдЪрд┐рдд рд░реВрдк рд╕реЗ рд╣реЛрдЧрд╛ред

рдореИрдВ 20 рдШрдВрдЯреЗ (рд▓рдЧрднрдЧ 60 рдкреАрдврд╝рд┐рдпреЛрдВ) рдХреЗ рд▓рд┐рдП рд╣рд░ рдЪрд╛рд░ рдШрдВрдЯреЗ рдореЗрдВ рдЕрд╡рд╢реЛрд╖рдг рдбреЗрдЯрд╛ (OD600) рдФрд░ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдПрдХрддреНрд░ рдХрд░рддрд╛ рд╣реВрдВред

 for t in [0,4,8,12,16,20]: abs_data = pd.read_csv("glow/sfgfp_puc19_gibson_pick_v3_abs_{}.csv".format(t), index_col="Well") flr_data = pd.read_csv("glow/sfgfp_puc19_gibson_pick_v3_fl2_{}.csv".format(t), index_col="Well") if t == 0: new_data = abs_data.join(flr_data) else: new_data = new_data.join(abs_data, rsuffix='_{}'.format(t)) new_data = new_data.join(flr_data, rsuffix='_{}'.format(t)) new_data.columns = ["OD 600:nanometer_0", "Fluorescence_0"] + list(new_data.columns[2:]) 

рд╣рдо рдЪрд╛рд░реНрдЯ рдкрд░ 20 рд╡реЗрдВ рдШрдВрдЯреЗ рдХреЗ рдбреЗрдЯрд╛ рдФрд░ рдкрд┐рдЫрд▓реЗ рдорд╛рдкреЛрдВ рдХреЗ рдирд┐рд╢рд╛рди рд░рдЦрддреЗ рд╣реИрдВред рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ, рдореБрдЭреЗ рдХреЗрд╡рд▓ рдирд╡реАрдирддрдо рдЖрдВрдХрдбрд╝реЛрдВ рдореЗрдВ рджрд┐рд▓рдЪрд╕реНрдкреА рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдпрд╣ рддрдм рд╣реИ рдХрд┐ рдПрдХ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рд╢рд┐рдЦрд░ рдордирд╛рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред

 svg = [] W, H = 800, 500 min_x, max_x = 0, 0.8 min_y, max_y = 0, 50000 def _toxy(x, y): return W*(x-min_x)/(max_x-min_x), HH*(y-min_y)/(max_y-min_y) def _topt(x, y): return ','.join(map(str,_toxy(x,y))) ab_fls = [[row[0]] + [list(row[1])] for row in new_data.iterrows()] # axes svg.append('<g fill="#888" font-size="18" transform="translate(20,0),scale(.95)">') svg.append('<text x="0" y="{}">OD600 тЖТ</text>'.format(H+20)) svg.append('<text x="0" y="0" transform="rotate(-90),translate(-{},-8)">Fluorescence тЖТ</text>'.format(H)) svg.append('<line x1="0" y1="{}" x2="{}" y2="{}" style="stroke:#888;stroke-width:2" />'.format(H,W,H)) svg.append('<line x1="0" y1="0" x2="0" y2="{}" style="stroke:#888;stroke-width:2" />'.format(H)) # glow filter svg.append("""<filter id="glow" x="-200%" y="-200%" height="400%" width="400%"> <feColorMatrix type="matrix" values="0 0 0 0 0 255 0 0 0 0 0 0 0 0 0 0 0 0 1 0"/> <feGaussianBlur stdDeviation="10" result="coloredBlur"/> <feMerge><feMergeNode in="coloredBlur"/><feMergeNode in="SourceGraphic"/></feMerge> </filter>""") for n, (well, vals) in enumerate(ab_fls): fill = "#444" if not well.startswith("D") else "#aaa" gfilter = 'filter="url(#glow)"' if well in ["C3", "D1", "D3"] else "" cx, cy = _toxy(*vals[-2:]) svg.append('''<g id="point{n:d}"><circle {gfilter:s} r="12" cx="{cx:f}" cy="{cy:f}" fill="{fill:s}" /> <text x="{cx:f}" y="{cy:f}" font-size="10" text-anchor="middle" fill="#fff" alignment-baseline="middle">{txt:s}</text></g> '''.format(n=n, cx=cx, cy=cy, fill=fill, txt=well, gfilter=gfilter)) pathd = 'M{} '.format(_topt(*vals[:2])) pathd += ' '.join("L{}".format(_topt(*vals[i:i+2])) for i in range(2,len(vals),2)) svg.append('''<path d="{pathd:}" stroke="#ccc" stroke-width=".2" fill="none" id="path{n:d}"/>'''.format(pathd=pathd, n=n)) svg.append("</g>") # entire chart group show_svg(''.join(svg), w=W, h=H) 



рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдФрд░ OD600: рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдХреЗ рд╕рд╛рде рдЙрдкрдирд┐рд╡реЗрд╢ рдХрд╛рд▓реЗ рд░рдВрдЧ рдХреЗ рд╣реЛрддреЗ рд╣реИрдВ, рдПрдореНрдкреАрд╕рд┐рд▓рд┐рди рдХреЗ рдмрд┐рдирд╛ рдирд┐рдпрдВрддреНрд░рдг рдХрд╛рд▓реЛрдирд┐рдпрд╛рдБ рдзреВрд╕рд░ рд╣реЛрддреА рд╣реИрдВред рдЧреНрд░реАрди рдкреНрд░рдХрд╛рд╢рд┐рдд рдХреЙрд▓реЛрдиреА, рдЬрд╣рд╛рдВ рдореИрдВ рдкреНрд░реЛрдЯреАрди рдЕрдиреБрдХреНрд░рдо sfGFP рдХреЗ рд╕рд╣реА рд╣реЛрдиреЗ рдХреА рдкреБрд╖реНрдЯрд┐ рдХреА

рднрд╛рдЧреЛ Miniprep рдХрд┐рдЯ , рдкреНрд▓рд╛рдЬреНрдорд┐рдб рдбреАрдПрдирдП рдирд┐рдХрд╛рд▓рдиреЗ рдХреЗ рд▓рд┐рдП, рдФрд░ рдлрд┐рд░ M13 рдкреНрд░рд╛рдЗрдорд░реЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд╕реЗрдВрдЧрд░ рдЙрдиреНрд╣реЗрдВ рдХреНрд░рдордмрджреНрдзред рджреБрд░реНрднрд╛рдЧреНрдп рд╕реЗ, рдХрд┐рд╕реА рдХрд╛рд░рдг рдХреЗ рд▓рд┐рдП, рдорд┐рдиреАрдкреНрд░реЗрдк рд╡рд░реНрддрдорд╛рди рдореЗрдВ рдХреЗрд╡рд▓ рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рд╡реЗрдм рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдЙрдкрд▓рдмреНрдз рд╣реИ, рдФрд░ рдСрдЯреЛ-рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рдирд╣реАрдВред рдореИрдВ рдЙрдЪреНрдЪрддрдо рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рд░реАрдбрд┐рдВрдЧ (рд╕реА 1, рдбреА 1, рдбреА 3) рдФрд░ рдЕрдиреНрдп рддреАрди (рдмреА 1, рдмреА 3, рдИ 1) рдХреЗ рд╕рд╛рде рддреАрди рдЯреНрдпреВрдмреЛрдВ рдХрд╛ рдЕрдиреБрдХреНрд░рдо рдХрд░реВрдВрдЧрд╛, рдорд╛рдВрд╕рдкреЗрд╢рд┐рдпреЛрдВ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдПрд╕рдПрдлрдЬреАрдПрдлрдкреА рдХреЗ рд╕рд╛рде рдЕрдиреБрдХреНрд░рдореЛрдВ рдХреЛ рд╕рдВрд░реЗрдЦрд┐рдд рдХрд░рдирд╛ред

рдЯреНрдпреВрдм рд╕реА 1, рдбреА 3, рдФрд░ рдбреА 3 рдореЗрдВ, рдореЗрд░реЗ рдореВрд▓ sfGFP рдЕрдиреБрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рдПрдХрджрдо рд╕рд╣реА рдорд┐рд▓рд╛рди рд╣реИ, рдЬрдмрдХрд┐ рдмреА 1, рдмреА 3 рдФрд░ рдИ 1 рдореЗрдВ, рдореЛрдЯреЗ рдореНрдпреВрдЯреЗрд╢рди рдпрд╛ рд╕рдВрд░реЗрдЦрдг рдмрд╕ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рддреЗ рд╣реИрдВред

рддреАрди рдЪрдордХрджрд╛рд░ рдХреЙрд▓реЛрдирд┐рдпрд╛рдВ


рдкрд░рд┐рдгрд╛рдо рдЕрдЪреНрдЫреЗ рд╣реИрдВ, рд╣рд╛рд▓рд╛рдВрдХрд┐ рдХреБрдЫ рдкрд╣рд▓реВ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдкрд╛рдардХ, рдмрд┐рдирд╛ рдХрд┐рд╕реА рд╕реНрдкрд╖реНрдЯ рдХрд╛рд░рдг рдХреЗ, рдмрд╣реБрдд рдЙрдЪреНрдЪ рдореВрд▓реНрдпреЛрдВ (40,000 рдмреНрд▓реЙрдХреЛрдВ) рдХреЗ рд╕рд╛рде рд╕рдордп 0 рдкрд░ рд╢реБрд░реВ рд╣реЛрддрд╛ рд╣реИред 20 рд╡реЗрдВ рдШрдВрдЯреЗ рддрдХ, рдЙрдиреНрд╣реЛрдВрдиреЗ OD600 рдФрд░ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ (рдореИрдВ рд╕реНрдкреЗрдХреНрдЯреНрд░рд╛ рдореЗрдВ рдПрдХ рдЫреЛрдЯреЗ рд╕реЗ рдУрд╡рд░рд▓реИрдк рдХреЗ рдХрд╛рд░рдг рдорд╛рди рд▓рд┐рдпрд╛) рдХреЗ рдмреАрдЪ рдПрдХ рд╕реНрдкрд╖реНрдЯ рд╕рд╣рд╕рдВрдмрдВрдз рдХреЗ рд╕рд╛рде рдПрдХ рдЕрдзрд┐рдХ рдЙрдЪрд┐рдд рдкреИрдЯрд░реНрди рдХреЛ рд╢рд╛рдВрдд рдХрд░ рджрд┐рдпрд╛ рдерд╛, рд╕рд╛рде рд╣реА рдЙрдЪреНрдЪ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдХреЗ рд╕рд╛рде рдХреБрдЫ рдЙрддреНрд╕рд░реНрдЬрдиред рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд░реВрдк рд╕реЗ, рдпрд╣ рдПрдХ, рддреАрди рдпрд╛, рд╕рдВрднрд╡рддрдГ, 11-15 рдЙрддреНрд╕рд░реНрдЬрди рд╣реЛ рд╕рдХрддрд╛ рд╣реИред

рдЙрдЪреНрдЪ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдорд╛рди рд╡рд╛рд▓реЗ рдХреБрдЫ рдЯреНрдпреВрдм рдирд┐рдпрдВрддреНрд░рдг рдЯреНрдпреВрдмреЛрдВ рдореЗрдВ рд╕реНрдерд┐рдд рд╣реЛрддреЗ рд╣реИрдВ (рдпрд╛рдиреА рдПрдореНрдкреАрд╕рд┐рд▓реАрди рдХреЗ рдмрд┐рдирд╛, рд╡реЗ рднреВрд░реЗ рд░рдВрдЧ рдХреЗ рд╣реЛрддреЗ рд╣реИрдВ), рдЬреЛ рдХрд┐ рдЖрд╢реНрдЪрд░реНрдпрдЬрдирдХ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЗрди рдЯреНрдпреВрдмреЛрдВ рдореЗрдВ рдХреЛрдИ рдЪрдпрди рджрдмрд╛рд╡ рдирд╣реАрдВ рд╣реИ, рдЗрд╕рд▓рд┐рдП, рдкреНрд▓рд╛рд╕реНрдорд┐рдб рд╣рд╛рдирд┐ рдХреА рдЙрдореНрдореАрдж рдХреА рдЬрд╛ рд╕рдХрддреА рд╣реИ)ред

рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдбреЗрдЯрд╛ рдФрд░ рдЕрдиреБрдХреНрд░рдордг рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдРрд╕рд╛ рдкреНрд░рддреАрдд рд╣реЛрддрд╛ рд╣реИ рдХрд┐ 50 рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдореЗрдВ рд╕реЗ рдХреЗрд╡рд▓ рддреАрди рд╣реА sfGFP рдФрд░ рдкреНрд░рддрд┐рджреАрдкреНрддрд┐ рдЙрддреНрдкрдиреНрди рдХрд░рддреА рд╣реИрдВред рдпрд╣ рдЙрддрдирд╛ рдирд╣реАрдВ рд╣реИ рдЬрд┐рддрдирд╛ рдореИрдВрдиреЗ рдЕрдкреЗрдХреНрд╖рд╛ рдХреА рдереАред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдЪреВрдВрдХрд┐ рддреАрди рдЕрд▓рдЧ-рдЕрд▓рдЧ рд╡рд┐рдХрд╛рд╕ рдЪрд░рдг (рдкреНрд▓реЗрдЯ рдкрд░, рдЗрди рд╡рд┐рдЯреНрд░реЛ рдореЗрдВ, рдорд┐рдиреАрдкреНрд░реЗрдк рдХреЗ рд▓рд┐рдП) рд╣реБрдП рд╣реИрдВ, рд╡рд┐рдХрд╛рд╕ рдХреА рд▓рдЧрднрдЧ 200 рдкреАрдврд╝рд┐рдпреЛрдВ рдХреЛ рд╕реЗрд▓ рдХреЗ рдЗрд╕ рдЪрд░рдг рд╕реЗ рдЧреБрдЬрд░рдирд╛ рдкрдбрд╝рд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрди рд╣реЛрдиреЗ рдХреЗ рд▓рд┐рдП рдХрд╛рдлреА рдЕрд╡рд╕рд░ рдереЗред

рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рдФрд░ рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рдмрдирд╛рдиреЗ рдХреЗ рддрд░реАрдХреЗ рд╣реЛрдиреЗ рдЪрд╛рд╣рд┐рдП, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рдореИрдВ рдЗрди рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдкрд░ рдПрдХ рд╡рд┐рд╢реЗрд╖рдЬреНрдЮ рд╕реЗ рджреВрд░ рд╣реВрдВред рд╣рд╛рд▓рд╛рдВрдХрд┐, рд╣рдордиреЗ рд╕рдлрд▓рддрд╛рдкреВрд░реНрд╡рдХ рдХреЗрд╡рд▓ Gththon рдХреЛрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрдВрдЬреАрдирд┐рдпрд░ GFP рдХреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд╕рд╛рде рд░реВрдкрд╛рдВрддрд░рд┐рдд рдХреЛрд╢рд┐рдХрд╛рдУрдВ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд┐рдпрд╛!

рднрд╛рдЧ рддреАрди: рдирд┐рд╖реНрдХрд░реНрд╖


рдХреАрдордд


рдорд╛рдкрдиреЗ рдХреЗ рддрд░реАрдХреЗ рдХреЗ рдЖрдзрд╛рд░ рдкрд░, рдЗрд╕ рдкреНрд░рдпреЛрдЧ рдХреА рд▓рд╛рдЧрдд рд▓рдЧрднрдЧ $ 360 рдереА, рдЬрд┐рд╕рдореЗрдВ рдбрд┐рдмрдЧрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдкреИрд╕реЗ рд╢рд╛рдорд┐рд▓ рдирд╣реАрдВ рдереЗ:

  • рдбреАрдПрдирдП рд╕рдВрд╢реНрд▓реЗрд╖рдг рдХреЗ рд▓рд┐рдП $ 70
  • $32 PCR
  • $31
  • $32
  • $53
  • $67
  • $75 3 miniprep'

рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рд╕реБрдзрд╛рд░реЛрдВ рдХреЗ рд╕рд╛рде рд▓рд╛рдЧрдд $ 250-300 рддрдХ рдШрдЯрд╛рдИ рдЬрд╛ рд╕рдХрддреА рд╣реИред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, 50 рдХреЙрд▓реЛрдирд┐рдпреЛрдВ рдХрд╛ рд░реЛрдмреЛрдЯ рд╕рдВрдЧреНрд░рд╣ рд╕рдВрджрд┐рдЧреНрдз рд░реВрдк рд╕реЗ рдорд╣рдВрдЧрд╛ рд╣реИ рдФрд░ рд╢рд╛рдпрдж рдЗрд╕реЗ рдЫреЛрдбрд╝ рджрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред

рдореЗрд░реЗ рдЕрдиреБрднрд╡ рдореЗрдВ, рдпрд╣ рдХреАрдордд рдХреБрдЫ (рдЖрдгрд╡рд┐рдХ рдЬреАрд╡рд╡рд┐рдЬреНрдЮрд╛рдиреА) рдХреЗ рд▓рд┐рдП рдЕрдзрд┐рдХ рд╣реИ рдФрд░ рдЕрдиреНрдп (рдЖрдИрдЯреА рд▓реЛрдЧреЛрдВ) рдХреЗ рд▓рд┐рдП рдХрдо рд╣реИред рдЪреВрдВрдХрд┐ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдореВрд▓ рд░реВрдк рд╕реЗ рд╕рд┐рд░реНрдл рдореВрд▓реНрдп рд╕реВрдЪреА рдЕрднрд┐рдХрд░реНрдордХреЛрдВ рдХрд╛ рд╢реБрд▓реНрдХ рд▓реЗрддрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рд▓рд╛рдЧрддреЛрдВ рдореЗрдВ рдореБрдЦреНрдп рдЕрдВрддрд░ рд╢реНрд░рдо рдХрд╛ рд╣реЛрддрд╛ рд╣реИред рд░реЛрдмреЛрдЯ рдкрд╣рд▓реЗ рд╕реЗ рд╣реА рдПрдХ рдШрдВрдЯреЗ рдореЗрдВ рдХрд╛рдлреА рд╕рд╕реНрддрд╛ рд╣реИ, рдФрд░ рд╡рд╣ рд░рд╛рдд рдХреЗ рдмреАрдЪ рдореЗрдВ рдПрдХ рдкреНрд▓реЗрдЯ рдХреА рддрд╕реНрд╡реАрд░ рд▓реЗрдиреЗ рдХреЗ рд▓рд┐рдП рдЙрдардиреЗ рдХрд╛ рдорди рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ред рдПрдХ рдмрд╛рд░ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рд╕реНрд╡реАрдХреГрдд рд╣реЛ рдЬрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рдпрд╣ рдХрд▓реНрдкрдирд╛ рдХрд░рдирд╛ рдХрдард┐рди рд╣реИ рдХрд┐ рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рдПрдХ рд╕реНрдирд╛рддрдХ рдЫрд╛рддреНрд░ рднреА рд╕рд╕реНрддрд╛ рд╣реЛрдЧрд╛, рдЦрд╛рд╕рдХрд░ рдЕрд╡рд╕рд░ рд▓рд╛рдЧрдд рдХреЛ рджреЗрдЦрддреЗ рд╣реБрдПред

рд╕реНрдкрд╖реНрдЯрддрд╛ рдХреЗ рд▓рд┐рдП, рдореИрдВ рдХреЗрд╡рд▓ рдирд┐рдпрдорд┐рдд рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рдмрджрд▓рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ рдмрд╛рдд рдХрд░ рд░рд╣рд╛ рд╣реВрдВред рдмреЗрд╢рдХ, рдЙрдиреНрдирдд рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рдпреЛрдЧреНрдп рдЖрдгрд╡рд┐рдХ рдЬреАрд╡рд╡рд┐рдЬреНрдЮрд╛рдиреА рджреНрд╡рд╛рд░рд╛ рдЬрд╛рд░реА рд░рдЦрд╛ рдЬрд╛рдПрдЧрд╛, рд▓реЗрдХрд┐рди рд╡рд┐рдЬреНрдЮрд╛рди рдХреЗ рдХрдИ рд░реЛрдорд╛рдВрдЪрдХ рдХреНрд╖реЗрддреНрд░ рдЙрдмрд╛рдК рджрд┐рдирдЪрд░реНрдпрд╛ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рддреЗ рд╣реИрдВред рд╣рд╛рд▓ рддрдХ рддрдХ, рдХрдИ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛рдУрдВ рдиреЗ рдЕрдкрдиреЗ рд╕реНрд╡рдпрдВ рдХреЗ рдУрд▓рд┐рдЧреЛрдиреНрдпреВрдХреНрд▓рд┐рдпреЛрдЯрд╛рдЗрдбреНрд╕ рдХрд╛ рдЙрддреНрдкрд╛рджрди рдХрд┐рдпрд╛, рд▓реЗрдХрд┐рди рдЕрдм рдХреБрдЫ рд▓реЛрдЧ рдЗрд╕ рдмрд╛рд░реЗ рдореЗрдВ рдЪрд┐рдВрддрд╛ рдХрд░рддреЗ рд╣реИрдВ: рдпрд╣ рд╕рд┐рд░реНрдл рдХрд┐рд╕реА рднреА рд╕рдордп рдЦрд░реНрдЪ рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИ, рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ рд╕реНрдирд╛рддрдХ рдЫрд╛рддреНрд░реЛрдВ рдХреЛ рднреА рдирд╣реАрдВ, рдЬрдм рдЖрдИрдбреАрдЯреА рдЙрдиреНрд╣реЗрдВ рдХреБрдЫ рджрд┐рдиреЛрдВ рдХреЗ рднреАрддрд░ рдЖрдкрдХреЛ рднреЗрдЬрддрд╛ рд╣реИред

рд░реЛрдмреЛрдЯ рд▓реИрдмреНрд╕: рдкреЗрд╢реЗрд╡рд░реЛрдВ рдФрд░ рд╡рд┐рдкрдХреНрд╖


рдЬрд╛рд╣рд┐рд░ рд╣реИ, рдореИрдВ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рд░реЛрдмреЛрдЯ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛рдУрдВ рдХреЗ рднрд╡рд┐рд╖реНрдп рдореЗрдВ рд╡рд┐рд╢реНрд╡рд╛рд╕ рдХрд░рддрд╛ рд╣реВрдВред рд░реЛрдмреЛрдЯ рдХреЗ рд╕рд╛рде рдкреНрд░рдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рдХреБрдЫ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдордЬреЗрджрд╛рд░ рдФрд░ рдЙрдкрдпреЛрдЧреА рдЪреАрдЬреЗрдВ рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдпрджрд┐ рдЖрдк рдореБрдЦреНрдп рд░реВрдк рд╕реЗ рдХрдВрдкреНрдпреВрдЯрд┐рдВрдЧ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реИрдВ рдФрд░ рд▓реЗрдЯреЗрдХреНрд╕ рджрд╕реНрддрд╛рдиреЗ рдФрд░ рдореИрдиреБрдЕрд▓ рдЙрдкрдХрд░рдг рд╕реЗ рдПрд▓рд░реНрдЬреА рд╣реИ:

  • ! , . autoprotocol, .
  • . 100 , .
  • , , PCR. , , ? / ? , , , ┬л 2-3 ┬╗. ?
  • . . , .
  • . .
  • рд╡реНрдпрдХреНрдд рдХрд░рдиреЗ рдХреА рдХреНрд░рд┐рдпрд╛ ред рдЖрдк рдкреНрд░реЛрдЧреНрд░рд╛рдорд┐рдВрдЧ рд╕рд┐рдВрдЯреИрдХреНрд╕ рдХрд╛ рдЙрдкрдпреЛрдЧ рджреЛрд╣рд░рд╛рдП рдЬрд╛рдиреЗ рд╡рд╛рд▓реЗ рдХрджрдореЛрдВ рдпрд╛ рдмреНрд░рд╛рдиреНрдЪрд┐рдВрдЧ рд▓реЙрдЬрд┐рдХ рдХреЛ рдПрдирдХреЛрдб рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдпрджрд┐ рдЖрдк рдЕрднрд┐рдХрд░реНрдордХ рдХреЗ 1 рд╕реЗ 96 ╬╝l рдФрд░ (96 - x) рдкрд╛рдиреА рдХреЗ ╬╝l рдХреЛ 96-рдЯреНрдпреВрдм рдкреНрд▓реЗрдЯ рдореЗрдВ рдлреИрд▓рд╛рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ, рддреЛ рдпрд╣ рд╕рдВрдХреНрд╖реЗрдк рдореЗрдВ рд▓рд┐рдЦрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред
  • рдорд╢реАрди рдкрдардиреАрдп рдбреЗрдЯрд╛ ред рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЗ рд╕рд╛рде рдбреЗрдЯрд╛ рд▓рдЧрднрдЧ рд╣рдореЗрд╢рд╛ рд╕реАрдПрд╕рд╡реА рдкреНрд░рд╛рд░реВрдк рдпрд╛ рдорд╢реАрди рдкреНрд░рд╕рдВрд╕реНрдХрд░рдг рдХреЗ рд▓рд┐рдП рдЙрдкрдпреБрдХреНрдд рдПрдХ рдЕрдиреНрдп рдкреНрд░рд╛рд░реВрдк рдореЗрдВ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддрд╛ рд╣реИред
  • рдЕрдореВрд░реНрддрди ред рдЖрджрд░реНрд╢ рд░реВрдк рд╕реЗ, рдЖрдк рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЕрднрд┐рдХрд░реНрдордХреЛрдВ рдпрд╛ рдХреНрд▓реЛрдирд┐рдВрдЧ рдХреА рд╢реИрд▓реА рдХреА рдкрд░рд╡рд╛рд╣ рдХрд┐рдП рдмрд┐рдирд╛ рдкреВрд░реЗ рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЛ рдЪрд▓рд╛ рд╕рдХрддреЗ рд╣реИрдВ рдФрд░ рдпрджрд┐ рдЖрд╡рд╢реНрдпрдХ рд╣реЛ рддреЛ рдХреБрдЫ рдХреЛ рдкреНрд░рддрд┐рд╕реНрдерд╛рдкрд┐рдд рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдЕрдЧрд░ рдпрд╣ рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред

рдмреЗрд╢рдХ, рдХреБрдЫ рдХрдорд┐рдпрд╛рдВ рд╣реИрдВ, рдЦрд╛рд╕рдХрд░ рдЬрдм рд╕реЗ рдЙрдкрдХрд░рдг рдЕрднреА рд╡рд┐рдХрд╕рд┐рдд рд╣реЛрдирд╛ рд╢реБрд░реВ рд╣реБрдП рд╣реИрдВред рдЕрдЧрд░ рд╣рдо рдЗрдВрдЯрд░рдиреЗрдЯ рд╕реЗ рддреБрд▓рдирд╛ рдХрд░рддреЗ рд╣реИрдВ, рддреЛ рд╣рдо 1994 рдХреЗ рдХреНрд╖реЗрддреНрд░ рдореЗрдВ рд╣реИрдВ:

  • Transcriptic тАФ . , , , . , , .
  • тАФ Transcriptic.
  • , . Transcriptic ( , , ).
  • рдХрдИ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛рдУрдВ рдХреЗ рд▓рд┐рдП, рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕реНрдирд╛рддрдХ рдЫрд╛рддреНрд░ рд▓реЗрдиреЗ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдХреНрд▓рд╛рдЙрдб рд▓реИрдм рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдЕрдзрд┐рдХ рдорд╣рдВрдЧрд╛ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ (рдкреНрд░рддрд┐ рдШрдВрдЯреЗ рд╕реАрдорд╛рдВрдд рд▓рд╛рдЧрдд: ~ $ 0)ред рдпрд╣ рдЗрд╕ рдмрд╛рдд рдкрд░ рдирд┐рд░реНрднрд░ рдХрд░рддрд╛ рд╣реИ рдХрд┐ рдкреНрд░рдпреЛрдЧрд╢рд╛рд▓рд╛ рдХреЛ рд╕реНрдирд╛рддрдХ рдЫрд╛рддреНрд░ рдХреЗ рд╣рд╛рде рдпрд╛ рдЙрд╕рдХреА рдмреБрджреНрдзрд┐ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ рдпрд╛ рдирд╣реАрдВред
  • рд╕рдкреНрддрд╛рд╣рд╛рдВрдд рдореЗрдВ рдЕрднреА рддрдХ рдЯреНрд░рд╛рдВрд╕рд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдкреНрд░рдпреЛрдЧ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реИред рдЖрдк рдЙрдиреНрд╣реЗрдВ рд╕рдордЭ рд╕рдХрддреЗ рд╣реИрдВ, рд▓реЗрдХрд┐рди рдпрд╣ рдЕрд╕реБрд╡рд┐рдзрд╛рдЬрдирдХ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ, рднрд▓реЗ рд╣реА рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдЫреЛрдЯреА рдкрд░рд┐рдпреЛрдЬрдирд╛ рд╣реЛред

рдкреНрд░реЛрдЯреАрди рдмрдирд╛рдиреЗ рдХрд╛ рд╕реЙрдлреНрдЯрд╡реЗрдпрд░


рд╣рд╛рд▓рд╛рдВрдХрд┐ рдмрд╣реБрдд рд╕рд╛рд░реЗ рдХреЛрдб рд╣реИрдВ рдФрд░ рдХрд╛рдлреА рдбрд┐рдмрдЧрд┐рдВрдЧ рд╣реИ, рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ рдХрд┐ рдХреБрдЫ рдкреНрд░рдХрд╛рд░ рдХреЗ рд╕реЙрдлрд╝реНрдЯрд╡реЗрдпрд░ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ рдЬреЛ рдЗрдирдкреБрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдкреНрд░реЛрдЯреАрди рдХрд╛ рдЕрдиреБрдХреНрд░рдо рд▓реЗрддрд╛ рд╣реИ рдФрд░ рдЖрдЙрдЯрдкреБрдЯ рдкрд░ рдЗрд╕ рдкреНрд░реЛрдЯреАрди рдХреА рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЗ рд╕рд╛рде рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдмрдирд╛рддрд╛ рд╣реИред

рдпрд╣ рдХрд╛рдо рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдХрдИ рдЪреАрдЬреЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдП:

  • рдЯреНрд░рд╛рдВрд╕реНрдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдХреЗ рд╕рд╛рде рдЯреНрд╡рд┐рд╕реНрдЯ / рдЖрдИрдбреАрдЯреА / рдЬреЗрди 9 рдХрд╛ рд╕рдЪреНрдЪрд╛ рдПрдХреАрдХрд░рдг (рд╢рд╛рдпрдж рдпрд╣ рдХрдо рдЪрд╛рд▓реВ рдорд╛рдВрдЧ рдХреЗ рдХрд╛рд░рдг рдзреАрдорд╛ рд╣реЛрдЧрд╛)ред
  • , , , , . .
  • ( NEB, IDT) (, primer3 ).

рдХрдИ рдЕрдиреБрдкреНрд░рдпреЛрдЧреЛрдВ рдореЗрдВ, рдЖрдк рдЕрдкрдиреЗ рдкреНрд░реЛрдЯреАрди (рдПрдХ рд╕реНрддрдВрдн рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ ) рдХреЛ рд╢реБрджреНрдз рдХрд░рдирд╛ рдЪрд╛рд╣рддреЗ рд╣реИрдВ , рдпрд╛ рд╢рд╛рдпрдж рдмреИрдХреНрдЯреАрд░рд┐рдпрд╛ рдХреЛ рдЗрд╕реЗ рд╕реНрд░рд╛рд╡рд┐рдд рдХрд░рддреЗ рд╣реИрдВред рдорд╛рди рд▓реАрдЬрд┐рдП рдХрд┐ рд╣рдо рдЬрд▓реНрдж рд╣реА рдЗрд╕реЗ рдХреНрд▓рд╛рдЙрдб рд▓реИрдм рдореЗрдВ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ, рдпрд╛ рдХрд┐ рд╣рдо рдЗрди рд╡рд┐рд╡реЛ рдкреНрд░рдпреЛрдЧреЛрдВ (рдпрд╛рдиреА, рдПрдХ рдмреИрдХреНрдЯреАрд░рд┐рдпрд▓ рд╕реЗрд▓ рдХреЗ рдЕрдВрджрд░) рдХрд╛ рд╕рдВрдЪрд╛рд▓рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВред

рдкреНрд░реЛрдЯреЛрдХреЙрд▓ рдХреЗ рд▓рд┐рдП рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдордиреБрд╖реНрдпреЛрдВ рдХреА рддреБрд▓рдирд╛ рдореЗрдВ рдмреЗрд╣рддрд░ рдХрд╛рдо рдХрд░рдиреЗ рдХреА рдХрдИ рд╕рдВрднрд╛рд╡рдирд╛рдПрдВ рд╣реИрдВ, рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП: рдЖрдкрдХреЗ рдЕрдиреБрдХреНрд░рдо рдХреЗ рд▓рд┐рдП рд╡рд┐рд╢рд┐рд╖реНрдЯ рдЕрднрд┐рд╡реНрдпрдХреНрддрд┐ рдХреЛ рдЕрдиреБрдХреВрд▓рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдкреНрд░рдореЛрдЯрд░реЛрдВ рдФрд░ рдЖрд░рдмреАрдПрд╕ рдХрд╛ рдбрд┐рдЬрд╝рд╛рдЗрди; рддреБрд▓рдиреАрдп рдкреНрд░рдпреЛрдЧреЛрдВ рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдПрдХ рдкреНрд░рдпреЛрдЧ рдХреА рд╕рдлрд▓рддрд╛ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдХреЗ рдЖрдБрдХрдбрд╝реЗ; рд╕реНрд╡рдЪрд╛рд▓рд┐рдд рдЬреЗрд▓ рд╡рд┐рд╢реНрд▓реЗрд╖рдгред

рдпрд╣ рд╕рдм рдХреНрдпреЛрдВ?


рдЗрд╕ рд╕рдм рдХреЗ рдмрд╛рдж, рдпрд╣ рдкреВрд░реА рддрд░рд╣ рд╕реЗ рд╕реНрдкрд╖реНрдЯ рдирд╣реАрдВ рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ рдРрд╕рд╛ рдкреНрд░реЛрдЯреАрди рдХреНрдпреЛрдВ рдмрдирд╛рдпрд╛ рдЬрд╛рдПред рдпрд╣рд╛рдБ рдХреБрдЫ рд╡рд┐рдЪрд╛рд░ рд╣реИрдВ:

  • - //, .
  • , , .
  • in vivo split-GFP .
  • scFv . scFvs - .
  • BiTE , ( , ).
  • рдПрдХ рд╕реНрдерд╛рдиреАрдп рдЯреАрдХрд╛ рдмрдирд╛рдПрдВ рдЬреЛ рдмрд╛рд▓реЛрдВ рдХреЗ рд░реЛрдо рдХреЗ рдорд╛рдзреНрдпрдо рд╕реЗ рд╢рд░реАрд░ рдореЗрдВ рдкреНрд░рд╡реЗрд╢ рдХрд░рддрд╛ рд╣реИ (рдореИрдВ рдШрд░ рдкрд░ рдпрд╣ рдХреЛрд╢рд┐рд╢ рдХрд░рдиреЗ рдХреА рд╕рд▓рд╛рд╣ рдирд╣реАрдВ рджреЗрддрд╛)ред
  • рд╕реИрдХрдбрд╝реЛрдВ рдЕрд▓рдЧ-рдЕрд▓рдЧ рддрд░реАрдХреЛрдВ рд╕реЗ рдЕрдкрдиреЗ рдкреНрд░реЛрдЯреАрди рдХреЛ рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрд┐рдд рдХрд░реЗрдВ рдФрд░ рджреЗрдЦреЗрдВ рдХрд┐ рдХреНрдпрд╛ рд╣реЛрддрд╛ рд╣реИред рдлрд┐рд░ 1000 рдпрд╛ 10,000 рдореНрдпреВрдЯреЗрд╢рди рдХреЗ рдкреИрдорд╛рдиреЗ? рд╢рд╛рдпрдж GFP рдЙрддреНрдкрд░рд┐рд╡рд░реНрддрди рд╡рд┐рд╢реЗрд╖рддрд╛?

рдкреНрд░реЛрдЯреАрди рдбрд┐рдЬрд╛рдЗрди рдХреЗ рд╕рд╛рде рдХреНрдпрд╛ рд╕рдВрднрд╡ рд╣реИ, рдЗрд╕ рдкрд░ рдирдП рд╡рд┐рдЪрд╛рд░реЛрдВ рдХреЗ рд▓рд┐рдП, рд╕реИрдХрдбрд╝реЛрдВ рдЖрдИрдЬреАрдИрдПрдо рдкрд░рд┐рдпреЛрдЬрдирд╛рдУрдВ рдХреЛ рджреЗрдЦреЗрдВ ред

рдЕрдВрдд рдореЗрдВ, рдореИрдВ рдЗрд╕ рдкрд░рд┐рдпреЛрдЬрдирд╛ рдХреЛ рдкреВрд░рд╛ рдХрд░рдиреЗ рдореЗрдВ рдЙрдирдХреА рдорджрдж рдХреЗ рд▓рд┐рдП рдЯреНрд░рд╛рдВрд╕рдХреНрд░рд┐рдкреНрдЯрд┐рдХ рдмреЗрди рдорд╛рдЗрд▓реНрд╕ рдХреЛ рдзрдиреНрдпрд╡рд╛рдж рджреЗрдирд╛ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ ред

Source: https://habr.com/ru/post/hi451124/


All Articles