Construction of the pMEC9001, 2 and 3 vectors

The vector pMEC1049 vector was used in Romaní et al. 2014 The pMEC1049 expresses a D-xylose metabolic pathway and has a hygromycin selectable marker. The details of the construction of pMEC1049 can be found here.

This document describe the construction of the pMEC9001, 2 and 3 vectors. The pMEC9001 is the pMEC1049 with an additional expression cassette for the Saccharomyces cerevisiae gene HAA1(YPR008W). The pMEC9002 is the pMEC1049 with an additional expression cassette for S. cerevisiae PRS3(YHL011C) and pMEC9003 has both of them.

Vector Relevant property
pMEC9001 HAA1
pMEC9002 PRS3
pMEC9003 HAA1 & PRS3

Normally, this would be done following the yeast pathway kit strategy by adding genes with a set of new promoters and terminators, but in this case a requirement was to retain the native promoters and terminators for HAA1 and PRS3.

The strategy involves linearizing the vector in two locations (before and after the xylose pathway) and adding the HAA1 and PRS3 expression cassettes amplified using tailed primers.

The PRS3 construct

The PRS3 cassette was previously cloned according to the description below in vector YEpJCP according to this description:

"obtained by PCR amplification of fragment carrying PRS3 from Saccharomyces cerevisiae CEN.PK113-7D genomic DNA using appropriate primers and insertion into plasmid pGEM-T Easy. Cloning into YEplac195KanMX using EcoRI digestion sites." Cunha et al. 2015

Primers:

P1: TTATCTTCATCACCGCCATAC
P2: ACAAGAGAAACTTTTGGGTAAAATG

The exact same PRS3 fragment will be cloned in pMEC9002.


In [77]:
from pydna.parsers import parse_primers

In [78]:
p1,p2 = parse_primers('''
>P1
TTATCTTCATCACCGCCATAC
>P2
ACAAGAGAAACTTTTGGGTAAAATG
''')

We gain access to the S. cerevisiae genome through the pygenome module.


In [79]:
from pygenome import sg
from pydna.dseqrecord import Dseqrecord

In [80]:
PRS3_locus = Dseqrecord(sg.stdgene["PRS3"].locus())

The PRS3_locus contain the DNA from the end of the upstream ORF to the beginning of the downstream ORF.


In [81]:
PRS3_locus


Out[81]:
Dseqrecord(-2963)

In [82]:
from pydna.amplify import pcr

In [83]:
PRS3_product = pcr(p1, p2, PRS3_locus)

In [84]:
PRS3_product


Out[84]:
Amplicon(1546)

In [85]:
PRS3_product.figure()


Out[85]:
5TTATCTTCATCACCGCCATAC...CATTTTACCCAAAAGTTTCTCTTGT3
                         ||||||||||||||||||||||||| tm 55.7 (dbd) 63.4
                        3GTAAAATGGGTTTTCAAAGAGAACA5
5TTATCTTCATCACCGCCATAC3
 ||||||||||||||||||||| tm 55.5 (dbd) 62.9
3AATAGAAGTAGTGGCGGTATG...GTAAAATGGGTTTTCAAAGAGAACA5

The primers anneal perfectly to the template, so this is the PCR product we want.

HAA1 construct

We will now do the same with the HAA1 cassette.

Vector: BHUM1737

Construction: obtained by PCR amplification of a SalI/BamHI fragment carrying HAA1 from yeast genomic DNA using appropriate primers and subsequent insertion into plasmid YEplac195.

Primers described in Malcher et al. 2011 supporting information, Table S1

HAA1hc_fw: GTC GAC CCC ATT TCC CCT TTC TTT TCC
HAA1hc_rev: GGA TCC ATA CCT CAT CTC TGC GTG TTC G

In [86]:
from pydna.parsers import parse_primers

In [87]:
h1,h2 = parse_primers('''
>HAA1hc_fw
GTC GAC CCC ATT TCC CCT TTC TTT TCC
>HAA1hc_rev
GGA TCC ATA CCT CAT CTC TGC GTG TTC G
''')

In [88]:
HAA1_locus = Dseqrecord(sg.stdgene["HAA1"].locus())

In [89]:
HAA1_locus


Out[89]:
Dseqrecord(-4085)

In [90]:
HAA1_product = pcr(h1, h2, HAA1_locus)

In [91]:
HAA1_product


Out[91]:
Amplicon(3227)

In [92]:
HAA1_product.figure()


Out[92]:
      5CCCATTTCCCCTTTCTTTTCC...CGAACACGCAGAGATGAGGTAT3
                               |||||||||||||||||||||| tm 59.9 (dbd) 66.7
                              3GCTTGTGCGTCTCTACTCCATACCTAGG5
5GTCGACCCCATTTCCCCTTTCTTTTCC3
       ||||||||||||||||||||| tm 57.0 (dbd) 67.6
      3GGGTAAAGGGGAAAGAAAAGG...GCTTGTGCGTCTCTACTCCATA5

These primers are tailed, but we have no reason to include these tails (containing restriction sites). We therefore cut six bp from the beginning and six bp from the end of the sequence:


In [93]:
h1 = h1[6:]
h2 = h2[6:]

In [94]:
HAA1_product = pcr(h1, h2, HAA1_locus)

In [95]:
HAA1_product.figure()


Out[95]:
5CCCATTTCCCCTTTCTTTTCC...CGAACACGCAGAGATGAGGTAT3
                         |||||||||||||||||||||| tm 59.9 (dbd) 66.7
                        3GCTTGTGCGTCTCTACTCCATA5
5CCCATTTCCCCTTTCTTTTCC3
 ||||||||||||||||||||| tm 57.0 (dbd) 67.6
3GGGTAAAGGGGAAAGAAAAGG...GCTTGTGCGTCTCTACTCCATA5

In [96]:
HAA1_product.seq


Out[96]:
Dseq(-3215)
CCCA..GTAT
GGGT..CATA

Now we will have to design tailed primers for the HAA1_product and the PRS3_product sequences so that we can add them to pMEC1049 by gap repair. First we have to decide with which restriction enzymes we should open the pMEC1049 vector.

The restriction enzymes below are candidates for linearizing the pMEC1049 before an after the cassette.

XhoI AleI OliI

These enzymes are also unique in the pYPK0 based vectors, so we can use tha same strategy to create vectors expressing only the pRS3 and/or HAA1 but without the xylose pathway if needed.


In [97]:
from pydna.readers import read

In [98]:
pMEC1049 = read("pMEC1049.gb")

In [99]:
pMEC1049


Out[99]:

In [100]:
from Bio.Restriction import XhoI, AleI, OliI

In [101]:
pMEC1049_xho = pMEC1049.linearize(XhoI)

We design gap repair primers using the pydna assembly primers function


In [102]:
from pydna.design import assembly_fragments

In [103]:
fragments = assembly_fragments( [pMEC1049_xho, HAA1_product, pMEC1049_xho] )

In [104]:
Hfw = fragments[1].forward_primer
Hrv = fragments[1].reverse_primer

In [105]:
Hfw.id = "Hfw"
Hrv.id = "Hrv"

In [106]:
Hfw = Hfw[1:]
Hrv = Hrv[:-1]

In [107]:
Hfw = Hfw[:50] # we limit the length to 50 bp since these are less expensive from our provider
Hrv = Hrv[:50]

In [108]:
print( Hfw.format("tab") )


part_part_Hfw	GGTTTTACCGTGTGCGGAGATCAGGTTCTGATCCCCCATTTCCCCTTTCT


In [109]:
print( Hrv.format("tab") )


part_part_Hrv	AGACAAACCGTGGGACGAATTCTTAAGATGCTCGAATACCTCATCTCTGC


In [110]:
HAA1_recombination_product = pcr(Hfw, Hrv, HAA1_locus)

In [111]:
HAA1_recombination_product


Out[111]:
Amplicon(3284)

In [112]:
HAA1_recombination_product.figure()


Out[112]:
                                  5CCCATTTCCCCTTTCT...GCAGAGATGAGGTATT3
                                                      |||||||||||||||| tm 47.7 (dbd) 48.8
                                                     3CGTCTCTACTCCATAAGCTCGTAGAATTCTTAAGCAGGGTGCCAAACAGA5
5GGTTTTACCGTGTGCGGAGATCAGGTTCTGATCCCCCATTTCCCCTTTCT3
                                   |||||||||||||||| tm 51.1 (dbd) 59.1
                                  3GGGTAAAGGGGAAAGA...CGTCTCTACTCCATAA5

In [113]:
from pydna.assembly import Assembly

In [114]:
asm_haa1 = Assembly((pMEC1049_xho, HAA1_recombination_product))

In [115]:
asm_haa1


Out[115]:
Assembly
fragments..: 15492bp 3284bp
limit(bp)..: 25
G.nodes....: 4
algorithm..: common_sub_strings

In [116]:
candidate = asm_haa1.assemble_circular()[0]

In [117]:
candidate.figure()


Out[117]:
 -|pMEC1049_lin|34
|               \/
|               /\
|               34|3284bp_PCR_prod|35
|                                  \/
|                                  /\
|                                  35-
|                                     |
 -------------------------------------

In [118]:
pMEC9001 = candidate.synced(pMEC1049)

In [119]:
pMEC9001.stamp()


Out[119]:
cSEGUID_BgBOlNv8lWGLExKGOpZa8J83H9I

In [120]:
pMEC9001.locus="pMEC9001"

The pMEC9001 is the pMEC1049 with HAA1. The sequence can be downloaded using the link below.


In [121]:
pMEC9001.write("pMEC9001.gb")




PRS3

We will now make a pMEC1049 with PRS3 called pMEC9002.


In [122]:
pMEC1049_oli = pMEC1049.linearize(OliI)

The integration site was chosen to be the uniqie OliI site.


In [123]:
fragments2 = assembly_fragments((pMEC1049_oli, PRS3_product, pMEC1049_oli))

In [124]:
Pfw = fragments2[1].forward_primer
Prv = fragments2[1].reverse_primer

In [125]:
Pfw.id = "Pfw"
Prv.id = "Prv"

In [126]:
Prv=Prv[:-2]

In [127]:
Pfw = Pfw[:51]
Prv = Prv[:51]

In [128]:
print( Pfw.format("tab"))
print( Prv.format("tab"))


part_Pfw	TAACGATGTAGTACAGCGTTTCCGCTTTTTCACCCTTATCTTCATCACCGC

part_part_Prv	CATAAGTACCCATCCAAGAGCACGCTTATTCACCAACAAGAGAAACTTTTG


In [129]:
PRS3_recombination_product = pcr(Pfw, Prv, PRS3_locus)

In [130]:
PRS3_recombination_product


Out[130]:
Amplicon(1616)

The recombination was designed for OliI but AleI was used.


In [131]:
pMEC1049_ale = pMEC1049.linearize(AleI)

In [132]:
asm_prs3 = Assembly((pMEC1049_ale, PRS3_recombination_product))

In [133]:
asm_prs3


Out[133]:
Assembly
fragments..: 15488bp 1616bp
limit(bp)..: 25
G.nodes....: 4
algorithm..: common_sub_strings

In [134]:
candidate = asm_prs3.assemble_circular()[0]

In [135]:
candidate


Out[135]:
 -|pMEC1049_lin|35
|               \/
|               /\
|               35|1616bp_PCR_prod|35
|                                  \/
|                                  /\
|                                  35-
|                                     |
 -------------------------------------

In [136]:
pMEC9002 = candidate.synced(pMEC1049)

In [137]:
pMEC9002.locus = "pMEC9002"

In [138]:
pMEC9002.stamp()


Out[138]:
cSEGUID_5qldWd2jGxUyMnMKECLGpNvJv2M

The pMEC9002 vector is the pMEC1049 with PRS3


In [139]:
pMEC9002.write("pMEC9002.gb")




pMEC9003

The HAA1 and PRS3 cassettes were added to the plasmid in one step to the plasmid digested with both XhoI and AleI. Cutting with XhoI and AleI makes two fragments about 6 and 9 kb.


In [140]:
pMEC1049_9kbp, pMEC1049_6kb = pMEC1049.cut(XhoI, AleI)

In [141]:
pMEC1049_6kb


Out[141]:
Dseqrecord(-6017)

In [142]:
pMEC1049_9kbp


Out[142]:
Dseqrecord(-9475)

In [143]:
pMEC1049_6kb.locus = "pMEC1049_6kb"
pMEC1049_9kbp.locus = "pMEC1049_9kbp"

In [144]:
asm_prs_haa = Assembly((pMEC1049_6kb, pMEC1049_9kbp, HAA1_recombination_product, PRS3_recombination_product))

In [145]:
asm_prs_haa


Out[145]:
Assembly
fragments..: 6017bp 9475bp 3284bp 1616bp
limit(bp)..: 25
G.nodes....: 8
algorithm..: common_sub_strings

In [146]:
candidate = asm_prs_haa.assemble_circular()[0]

In [147]:
candidate


Out[147]:
 -|pMEC1049_6kb|34
|               \/
|               /\
|               34|3284bp_PCR_prod|35
|                                  \/
|                                  /\
|                                  35|pMEC1049_9kbp|35
|                                                   \/
|                                                   /\
|                                                   35|1616bp_PCR_prod|35
|                                                                      \/
|                                                                      /\
|                                                                      35-
|                                                                         |
 -------------------------------------------------------------------------

In [148]:
pMEC9003 = candidate.synced(pMEC1049)

In [149]:
pMEC9003.stamp()


Out[149]:
cSEGUID_hhymwO1hS1IXp9n4XX4eODGWuhU

In [150]:
pMEC9003.locus="pMEC9003"

pMEC9003 is the pMEC1049 with both HAA1 and PRS3. The sequence can be downloaded from the link below.


In [151]:
pMEC9003


Out[151]:
Dseqrecord(o20249)

In [152]:
pMEC9003.write("pMEC9003.gb")