Difference between revisions of "Team:Fudan-TSI/Heritage"

(LC after)
 
m
Line 10: Line 10:
 
   #home_logo, #sideMenu { display:none; }
 
   #home_logo, #sideMenu { display:none; }
 
   #sideMenu, #top_title, .patrollink { display:none; }
 
   #sideMenu, #top_title, .patrollink { display:none; }
   #content { margin-left: 0; padding:0px; width:100%; }
+
   #content { margin-left: 0; padding:0px; width:100%;}
 
   .judges-will-not-evaluate { border: 4px solid #e4dede; padding: 2% !important; width: 92%!important; }
 
   .judges-will-not-evaluate { border: 4px solid #e4dede; padding: 2% !important; width: 92%!important; }
 
/* css clean * */
 
/* css clean * */
   .Off {display:none !important}
+
   #FudanTSIBody li { list-style: none; }
 
     </style>
 
     </style>
     <title>Software | 2019 iGEM Team:Fudan-TSI</title>
+
     <title>Heritage | 2019 iGEM Team:Fudan-TSI</title>
 
</head>
 
</head>
 
<body>
 
<body>
Line 66: Line 66:
 
     <li style="padding: 0"><div class="sidenavBanner">
 
     <li style="padding: 0"><div class="sidenavBanner">
 
       <div class="background"></div>
 
       <div class="background"></div>
       <p class="flow-text" style="width:100%;text-align:center"><span class="white-text">Software</span></p>
+
       <p class="flow-text" style="width:100%;text-align:center"><span class="white-text">Heritage</span></p>
 
     </div></li>
 
     </div></li>
 
     <li>
 
     <li>
 
       <ul class="collapsible expandable">
 
       <ul class="collapsible expandable">
        <li class="onThisPageNav"><span>On this page</span></li>
+
         <li><span class="pageSidebar">Team: Fudan-TSI</span></li><li><div class="collapsible-header"><span class="pageSidebar">Project</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Description">Background</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Design">Design</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Experiments">Experiments</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Applied_Design">Applied design</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Judging">Judging</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Results</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate#ReverseTranscription">Reverse transcription</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate#Recombination">Recombination</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate">Demonstration</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Measurement">Measurement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Notebook">Notebook</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Model</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Model">Modeling</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Software">Software</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Hardware">Hardware</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Parts</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Basic_Part">Basic parts</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Composite_Part">Composite parts</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Improve">Part improvement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Part_Collection">Part collection</a></li></ul></div></li><li><div class="collapsible-header active"><span class="pageSidebar">Human practices</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Public_Engagement">Public engagement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Human_Practices#IntegratedHumanPractice">Integrated HP</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Collaborations">Collaborations</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Safety">Safety</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Team</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Team">Members</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Attributions">Attributions</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Heritage">Heritage</a></li></ul></div></li>
        <li class="onThisPageNav"><a href="#section1">Motivation</a></li>
+
        <li class="onThisPageNav"><a href="#section2">Theoretical basis</a></li>
+
        <li class="onThisPageNav"><a href="#section3">User guidelines</a></li>
+
        <li class="onThisPageNav"><a href="#section4">References</a></li>
+
        <li class="onThisPageNav"><a href="#section5">Demo</a></li>
+
 
+
         <li><span class="pageSidebar">Team: Fudan-TSI</span></li><li><div class="collapsible-header"><span class="pageSidebar">Project</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Description">Background</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Design">Design</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Experiments">Experiments</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Applied_Design">Applied design</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Judging">Judging</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Results</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate#ReverseTranscription">Reverse transcription</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate#Recombination">Recombination</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Demonstrate">Demonstration</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Measurement">Measurement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Notebook">Notebook</a></li></ul></div></li><li><div class="collapsible-header active"><span class="pageSidebar">Model</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Model">Modeling</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Software">Software</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Hardware">Hardware</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Parts</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Basic_Part">Basic parts</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Composite_Part">Composite parts</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Improve">Part improvement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Part_Collection">Part collection</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Human practices</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Public_Engagement">Public engagement</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Human_Practices#IntegratedHumanPractice">Integrated HP</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Collaborations">Collaborations</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Safety">Safety</a></li></ul></div></li><li><div class="collapsible-header"><span class="pageSidebar">Team</span></div><div class="collapsible-body"><ul><li><a class="pageSidebar" href="/Team:Fudan-TSI/Team">Members</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Attributions">Attributions</a></li><li><a class="pageSidebar" href="/Team:Fudan-TSI/Heritage">Heritage</a></li></ul></div></li>
+
 
       </ul><!-- .expandable -->
 
       </ul><!-- .expandable -->
 
     </li>
 
     </li>
Line 88: Line 81:
 
           <div class="row">
 
           <div class="row">
 
               <div class="col s12 hide-on-med-and-up">
 
               <div class="col s12 hide-on-med-and-up">
                   <h1><br/>Software</h1>
+
                   <h1><br/>Heritage</h1>
                  <p class="flow-text">Our software simplifies the primer design process for target-specific mutagenesis via reverse transcriptase (RT). We called it tRNA primer designer. Users could design their tRNA primers even for eukaryotic experiments. In addition, we calculate and output the tRNA acceptor stem annealing temperature, as this might be used as an indicator for likelihood to success.</p>
+
 
               </div>
 
               </div>
 
           </div>
 
           </div>
Line 118: Line 110:
 
<script>function bkgFunction(e){if(e){var t=new Stats;t.domElement.style.position="absolute",t.domElement.style.left="0",t.domElement.style.top="0",document.body.appendChild(t.domElement),requestAnimationFrame(function e(){t.update(),requestAnimationFrame(e)})}var n=document.getElementById("demo");tesselation.setup(n),gradients.setup();var o,r=1e4,a=3e3;window.requestAnimationFrame(function e(t){(!o||r<t-o)&&(o=t,tesselation.next(a),gradients.next(a)),window.requestAnimationFrame(e)})}var calcDelaunayTriangulation=function(){var E=1/1048576;function p(e,t,n,o){var r,a,i,l,c,u,s,d,h,f,p=e[t][0],m=e[t][1],g=e[n][0],y=e[n][1],w=e[o][0],I=e[o][1],b=Math.abs(m-y),v=Math.abs(y-I);if(b<E&&v<E)throw new Error("Can't get circumcircle since all 3 points are y-aligned");return i=-(g-p)/(y-m),l=-(w-g)/(I-y),c=(p+g)/2,u=(g+w)/2,s=(m+y)/2,d=(y+I)/2,{i:t,j:n,k:o,x:r=b<E?c:v<E?u:(i*c-l*u+d-s)/(i-l),y:a=v<b?i*(r-c)+s:l*(r-u)+d,r:(h=g-r)*h+(f=y-a)*f}}function m(e){var t,n,o,r,a,i;for(n=e.length;n;)for(r=e[--n],o=e[--n],t=n;t;){if(i=e[--t],o===(a=e[--t])&&r===i){e.splice(n,2),e.splice(t,2);break}if(o===i&&r===a){e.splice(n,2),e.splice(t,2);break}}}return function(n){var e,t,o,r,a,i,l,c,u,s,d,h,f=n.length;if(f<3||2e3<f)return[];for(n=n.slice(0),o=new Array(f),e=f;e--;)o[e]=e;for(o.sort(function(e,t){return n[t][0]-n[e][0]}),r=function(e){var t,n,o,r,a,i,l=Number.POSITIVE_INFINITY,c=Number.POSITIVE_INFINITY,u=Number.NEGATIVE_INFINITY,s=Number.NEGATIVE_INFINITY;for(t=e.length;t--;)e[t][0]<l&&(l=e[t][0]),e[t][0]>u&&(u=e[t][0]),e[t][1]<c&&(c=e[t][1]),e[t][1]>s&&(s=e[t][1]);return o=s-c,[[(a=l+.5*(n=u-l))-20*(r=Math.max(n,o)),(i=c+.5*o)-r],[a,i+20*r],[a+20*r,i-r]]}(n),n.push(r[0],r[1],r[2]),a=[p(n,f+0,f+1,f+2)],i=[],l=[],e=o.length;e--;l.length=0){for(h=o[e],t=a.length;t--;)0<(c=n[h][0]-a[t].x)&&c*c>a[t].r?(i.push(a[t]),a.splice(t,1)):c*c+(u=n[h][1]-a[t].y)*u-a[t].r>E||(l.push(a[t].i,a[t].j,a[t].j,a[t].k,a[t].k,a[t].i),a.splice(t,1));for(m(l),t=l.length;t;)d=l[--t],s=l[--t],a.push(p(n,s,d,h))}for(e=a.length;e--;)i.push(a[e]);for(a.length=0,e=i.length;e--;)i[e].i<f&&i[e].j<f&&i[e].k<f&&a.push(i[e].i,i[e].j,i[e].k);return a}}(),tesselation=function(){var a,h,f,i;return{setup:function(e){var t=(a=e).getAttribute("viewBox").split(/\D/g);h=t[2],f=t[3]},next:function(e){var t,n,o;if(e/=1e3,i&&i.children&&i.children.length){for(n=o=(t=i).children.length;n--;)TweenMax.to(t.children[n],.4*e,{opacity:0,delay:e*(.3*n/o)});TweenMax.delayedCall(.75*e,function(e){a.removeChild(e)},[t],this)}var r=function(){var e,t,n,o,r=window.innerWidth,a=window.innerHeight,i=[],l=h%(e=h/f<r/a?250*h/r:250*f/a)/2,c=f%e/2;for(n=Math.floor(h/e)+1;-1<=n;n--)for(o=Math.floor(f/e)+1;-1<=o;o--)i.push([l+e*(n+.75*(Math.random()-.5)),c+e*(o+.75*(Math.random()-.5))]);var u,s=calcDelaunayTriangulation(i),d=document.createElementNS("http://www.w3.org/2000/svg","g");for(t=s.length;t;)(u=document.createElementNS("http://www.w3.org/2000/svg","polygon")).setAttribute("points",i[s[--t]][0]+","+i[s[t]][1]+" "+i[s[--t]][0]+","+i[s[t]][1]+" "+i[s[--t]][0]+","+i[s[t]][1]),d.appendChild(u);return d}();for(n=o=r.children.length;n--;)TweenMax.fromTo(r.children[n],.4*e,{opacity:0},{opacity:.3+.25*Math.random(),delay:e*(.3*n/o+.3),ease:Back.easeOut});a.appendChild(r),i=r}}}(),gradients=function(){var o,r,a,i=["#3c6df0","#12a3b4","#00a78f","#00aa5e","#81b532","#e3bc13","#ffb000","#fe8500","#fe6100","#e62325","#dc267f","#c22dd5","#9753e1","#5a3ec8"];return{setup:function(){a=!1,o={stopA:document.getElementById("stop1a"),stopB:document.getElementById("stop1b"),rect:document.getElementById("rect1")},r={stopA:document.getElementById("stop2a"),stopB:document.getElementById("stop2b"),rect:document.getElementById("rect2")},o.rect.style.opacity=0,r.rect.style.opacity=0},next:function(e){var t,n;e/=1e3,t=a?(n=o,r):(n=r,o),a=!a,TweenMax.to(n.rect,.55*e,{opacity:0,delay:.2*e,ease:Sine.easeOut}),function(e){var t=Math.floor(i.length*Math.random()),n=Math.floor(3*Math.random())+3;n=(t+n*(Math.random()<.5?-1:1)+i.length)%i.length,e.stopA.setAttribute("stop-color",i[t]),e.stopB.setAttribute("stop-color",i[n])}(t),TweenMax.to(t.rect,.65*e,{opacity:1,ease:Sine.easeIn})}}}();bkgFunction();
 
<script>function bkgFunction(e){if(e){var t=new Stats;t.domElement.style.position="absolute",t.domElement.style.left="0",t.domElement.style.top="0",document.body.appendChild(t.domElement),requestAnimationFrame(function e(){t.update(),requestAnimationFrame(e)})}var n=document.getElementById("demo");tesselation.setup(n),gradients.setup();var o,r=1e4,a=3e3;window.requestAnimationFrame(function e(t){(!o||r<t-o)&&(o=t,tesselation.next(a),gradients.next(a)),window.requestAnimationFrame(e)})}var calcDelaunayTriangulation=function(){var E=1/1048576;function p(e,t,n,o){var r,a,i,l,c,u,s,d,h,f,p=e[t][0],m=e[t][1],g=e[n][0],y=e[n][1],w=e[o][0],I=e[o][1],b=Math.abs(m-y),v=Math.abs(y-I);if(b<E&&v<E)throw new Error("Can't get circumcircle since all 3 points are y-aligned");return i=-(g-p)/(y-m),l=-(w-g)/(I-y),c=(p+g)/2,u=(g+w)/2,s=(m+y)/2,d=(y+I)/2,{i:t,j:n,k:o,x:r=b<E?c:v<E?u:(i*c-l*u+d-s)/(i-l),y:a=v<b?i*(r-c)+s:l*(r-u)+d,r:(h=g-r)*h+(f=y-a)*f}}function m(e){var t,n,o,r,a,i;for(n=e.length;n;)for(r=e[--n],o=e[--n],t=n;t;){if(i=e[--t],o===(a=e[--t])&&r===i){e.splice(n,2),e.splice(t,2);break}if(o===i&&r===a){e.splice(n,2),e.splice(t,2);break}}}return function(n){var e,t,o,r,a,i,l,c,u,s,d,h,f=n.length;if(f<3||2e3<f)return[];for(n=n.slice(0),o=new Array(f),e=f;e--;)o[e]=e;for(o.sort(function(e,t){return n[t][0]-n[e][0]}),r=function(e){var t,n,o,r,a,i,l=Number.POSITIVE_INFINITY,c=Number.POSITIVE_INFINITY,u=Number.NEGATIVE_INFINITY,s=Number.NEGATIVE_INFINITY;for(t=e.length;t--;)e[t][0]<l&&(l=e[t][0]),e[t][0]>u&&(u=e[t][0]),e[t][1]<c&&(c=e[t][1]),e[t][1]>s&&(s=e[t][1]);return o=s-c,[[(a=l+.5*(n=u-l))-20*(r=Math.max(n,o)),(i=c+.5*o)-r],[a,i+20*r],[a+20*r,i-r]]}(n),n.push(r[0],r[1],r[2]),a=[p(n,f+0,f+1,f+2)],i=[],l=[],e=o.length;e--;l.length=0){for(h=o[e],t=a.length;t--;)0<(c=n[h][0]-a[t].x)&&c*c>a[t].r?(i.push(a[t]),a.splice(t,1)):c*c+(u=n[h][1]-a[t].y)*u-a[t].r>E||(l.push(a[t].i,a[t].j,a[t].j,a[t].k,a[t].k,a[t].i),a.splice(t,1));for(m(l),t=l.length;t;)d=l[--t],s=l[--t],a.push(p(n,s,d,h))}for(e=a.length;e--;)i.push(a[e]);for(a.length=0,e=i.length;e--;)i[e].i<f&&i[e].j<f&&i[e].k<f&&a.push(i[e].i,i[e].j,i[e].k);return a}}(),tesselation=function(){var a,h,f,i;return{setup:function(e){var t=(a=e).getAttribute("viewBox").split(/\D/g);h=t[2],f=t[3]},next:function(e){var t,n,o;if(e/=1e3,i&&i.children&&i.children.length){for(n=o=(t=i).children.length;n--;)TweenMax.to(t.children[n],.4*e,{opacity:0,delay:e*(.3*n/o)});TweenMax.delayedCall(.75*e,function(e){a.removeChild(e)},[t],this)}var r=function(){var e,t,n,o,r=window.innerWidth,a=window.innerHeight,i=[],l=h%(e=h/f<r/a?250*h/r:250*f/a)/2,c=f%e/2;for(n=Math.floor(h/e)+1;-1<=n;n--)for(o=Math.floor(f/e)+1;-1<=o;o--)i.push([l+e*(n+.75*(Math.random()-.5)),c+e*(o+.75*(Math.random()-.5))]);var u,s=calcDelaunayTriangulation(i),d=document.createElementNS("http://www.w3.org/2000/svg","g");for(t=s.length;t;)(u=document.createElementNS("http://www.w3.org/2000/svg","polygon")).setAttribute("points",i[s[--t]][0]+","+i[s[t]][1]+" "+i[s[--t]][0]+","+i[s[t]][1]+" "+i[s[--t]][0]+","+i[s[t]][1]),d.appendChild(u);return d}();for(n=o=r.children.length;n--;)TweenMax.fromTo(r.children[n],.4*e,{opacity:0},{opacity:.3+.25*Math.random(),delay:e*(.3*n/o+.3),ease:Back.easeOut});a.appendChild(r),i=r}}}(),gradients=function(){var o,r,a,i=["#3c6df0","#12a3b4","#00a78f","#00aa5e","#81b532","#e3bc13","#ffb000","#fe8500","#fe6100","#e62325","#dc267f","#c22dd5","#9753e1","#5a3ec8"];return{setup:function(){a=!1,o={stopA:document.getElementById("stop1a"),stopB:document.getElementById("stop1b"),rect:document.getElementById("rect1")},r={stopA:document.getElementById("stop2a"),stopB:document.getElementById("stop2b"),rect:document.getElementById("rect2")},o.rect.style.opacity=0,r.rect.style.opacity=0},next:function(e){var t,n;e/=1e3,t=a?(n=o,r):(n=r,o),a=!a,TweenMax.to(n.rect,.55*e,{opacity:0,delay:.2*e,ease:Sine.easeOut}),function(e){var t=Math.floor(i.length*Math.random()),n=Math.floor(3*Math.random())+3;n=(t+n*(Math.random()<.5?-1:1)+i.length)%i.length,e.stopA.setAttribute("stop-color",i[t]),e.stopB.setAttribute("stop-color",i[n])}(t),TweenMax.to(t.rect,.65*e,{opacity:1,ease:Sine.easeIn})}}}();bkgFunction();
 
</script>
 
</script>
               <div style="position:absolute;top:100px;left:9%"><center><img style="height:120px;width:auto" alt="cover gif 1st added" src="https://static.igem.org/mediawiki/2019/6/6f/T--Fudan-TSI--coverSoftware.gif" /></center></div>
+
               <div style="position:absolute;top:100px;left:9%"><center><img style="height:120px;width:auto" alt="cover gif 1st added" src="https://static.igem.org/mediawiki/2019/a/aa/T--Fudan-TSI--coverTeam.gif" /></center></div>
 
           </div>
 
           </div>
 
       </div>
 
       </div>
Line 127: Line 119:
 
       <div class="container">
 
       <div class="container">
 
           <!-- side navigator of page content -->
 
           <!-- side navigator of page content -->
          <ul id="pageContentNav" class="hide-on-med-and-down z-depth-0">
 
              <li class="onThisPageNav"><a href="#section1">Motivation</a></li>
 
              <li class="onThisPageNav"><a href="#section2">Theoretical&nbsp;basis</a></li>
 
              <li class="onThisPageNav"><a href="#section3">User&nbsp;guidelines</a></li>
 
              <li class="onThisPageNav"><a href="#section4">References</a></li>
 
              <li class="onThisPageNav"><a href="#section5">Demo</a></li>
 
          </ul>
 
 
           <!-- main content of the page -->
 
           <!-- main content of the page -->
           <main><article>
+
           <main style="margin:0"><article>
 
+
<div id="section1" class="section container scrolSpy">
+
<p class="flow-text">Our software simplifies the primer design process for target-specific mutagenesis via reverse transcriptase (RT). We called it tRNA primer designer. Studies have shown that tRNA functions as the primer for <i>in vivo</i> reverse transcription initiation: the 5' end of the tRNA interacts with RT, and the 3' end matches with the mRNA encoding the target.  The software consists of 4 parts: reverse transcriptase selection, target sequence input, designed-tRNA visualization, and primer output. Although we only test MMLV-RT experimentally, the software can adjust its designing method based on the properties of well-studied RT from 3 species, MMLV, HIV-1 and RSV. Users could design their tRNA primers even for eukaryotic experiments. In addition, we calculate and output the tRNA acceptor stem annealing temperature, as this might be used as an indicator for likelihood to success.</p>
+
 
+
  <h2>Motivation</h2>
+
  <p class="flow-text">Previous studies have shown that a tRNA primer is required for the initiation of reverse transcription <a href="#Ref1">(Dahlberg et al.)</a>. In our system, we express the tRNA primer in <i>E. coli</i> by cloning it onto the plasmid that is used for generating the tools for mutation, i.e. P_mutant. However, designing the primer sequence according to different target sequences is time-consuming and needs many adjustments to find the perfect match. This motivates us to build a software for tRNA primer designing.</p>
+
</div>
+
 
+
<div id="section2" class="section container scrolSpy">
+
  <h2>Theoretical basis</h2>
+
  <p class="flow-text">Previous studies have reported that the interactions between tRNA primer and mRNA template as well as the reverse transcriptase are crucial in directing subsequent cDNA synthesis <a href="#Ref1">(James E. Dahlberg et al.)</a>. Specifically, according to the model for reverse transcription proposed by <a href="#Ref2">Kulpa et al.</a>, reverse transcription includes 5 steps <a href="#Fig1">(Figure 1)</a>, in which the annealing of tRNA primer to the primer binding site (PBS) region on mRNA template is crucial for the synthesis of minus strand strong stop DNA (–ssDNA) and the following cDNA synthesis process.</p>
+
 
+
  <div class="figureHolder" id="Fig1">
+
    <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/e/e9/T--Fudan-TSI--SFig1.gif" />
+
    <p>Figure 1. Model for the whole process of reverse transcription.</p>
+
  </div>
+
 
+
  <p class="flow-text">Many researchers have studied the reverse transcription process in viruses, from which we find two critical properties in the annealing process of tRNA primer and PBS that should be taken into consideration when building the tRNA primer designer.</p>
+
  <p class="flow-text">The first property is that the 3'-terminal of the tRNA primer should be complementary to the PBS on mRNA template <a href="#Ref2">(Kosloff et al.)</a>. The second one is that different viruses prefer specific type of tRNA primer for reverse transcription <a>(Kulpa et al.,</a><a> Kosloff et al.)</a>. What should also be noted is that for different viruses, the lengths of PBS as well as the types of tRNA primer are different. The PBS lengths and the preferred tRNA types of 3 most well-studied retroviruses are listed in Table 1.</p>
+
 
+
  <div class="tableHolder">
+
    <table>
+
    <tr>
+
      <th>Name of retrovirus</th>
+
      <th>Length of PBS</th>
+
      <th>Preferred tRNA</th>
+
    </tr>
+
    <tr>
+
      <td>Moloney murine leukemia virus (MMLV)</td>
+
      <td>18</td>
+
      <td>tRNA<sup>Pro</sup></td>
+
    </tr>
+
    <tr>
+
      <td>Human immunodeficiency virus type 1(HIV-1)</td>
+
      <td>18</td>
+
      <td>tRNA<sup>Lys</sup></td>
+
    </tr>
+
    <tr>
+
      <td>Rous sarcoma virus (RSV)</td>
+
      <td>17</td>
+
      <td>tRNA<sup>Trp</sup></td>
+
    </tr>
+
    </table>
+
    <p>Table 1. PBS length and preferred tRNA types of well-studied retroviruses.</p>
+
  </div>
+
 
+
  <p class="flow-text">These discoveries serve as the theoretical basis for our tRNA primer designer. So basically, the function of our tRNA primer designer is to change the tRNA template in order to suit the basic properties of the reverse transcriptase (MMLV RT / HIV-1 RT / RSV RT) selected by the user as well as to replace several nucleotides (17 or 18) on 3'-terminal of the tRNA templates to match with nucleotides at the 5'-terminal of the GOI which users input. Also, to make sure that the RNA sequence is a tRNA sequence, the secondary structure should be revealed. We achieve this goal by using the similar tRNA secondary structure prediction scheme as the one implemented in the opensource software tRNAfinder <a>(Kurokawa et al.)</a>.</p>
+
  <p class="flow-text">Studies have shown that the primary factor guiding the selection of tRNA primer for MMLV-RT is the PBS sequence instead of the inherent nature of reverse transcriptase <a>(A. H. Lund et al.,</a><a> S. P. Goff et al.)</a>. So, by making mutations on both the PBS and tRNA sequence, the researchers have found that reverse transcription could still successfully take place while the virus’ titer is not greatly affected. Also, after several cycles of replication, the mutated sequence is not changed back to its original version <a>(Pedersen et al., 1997)</a>. Even though it is found that the primer is not stringent for MMLV, studies have revealed that the tRNA-like structure is necessary. A study that the inclusion of one single non-Watson-Crick base pair between PBS and tRNA primer would improve the replication efficiency (F. S. Pedersen et al., 1993), but we didn’t adopt this construct as the one base pair mismatch would often be changed to the full-complementary version after the first cycle of replication <a>(Pedersen et al., 1997)</a>, making this addition unnecessary.</p>
+
</div>
+
 
+
 
+
<div id="section3" class="section container scrolSpy">
+
  <h2>User guidelines</h2>
+
  <p class="flow-text">Our tRNA primer designer is <a href="http://9.cail.cn/tRNA_primer" target=_blank>a web tool</a> for potential users of our mutagenesis system to design their own tRNA primers according to their experimental setups. Here we provide a step-by-step guide to using this software.</p>
+
  <p class="flow-text">Step 1. Select the type of reverse transcriptase (RT) that you want to use based on your experimental design, as shown in the figure below. Note that this software only allows you to choose from MMLV RT / HIV-1 RT / RSV RT.</p>
+
 
+
  <div class="figureHolder" id="Fig2">
+
    <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/archive/5/53/20191020091814%21T--Fudan-TSI--SFig2.gif" />
+
  </div>
+
 
+
  <p class="flow-text">Step 2. Input a DNA sequence that you want to mutate, as shown in the figure below (upper panel). You can find a demo for it if you click on the icon on the right side of the web page, as shown in the figure below (lower panel). The last 17/18 nucleotides (nt) of the sequence are selected to be PBS, depending on the type of RT that you have chosen in <a href="#Fig2">Step 1</a>. The length of PBS is 18nt if MMLV RT / HIV-1 RT is selected, and is 17nt if RSV RT is selected.</p>
+
 
+
  <div class="figureHolder" id="Fig3">
+
    <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/archive/2/29/20191020091155%21T--Fudan-TSI--SFig3.gif" />
+
  </div>
+
 
+
  <p class="flow-text">Note that the target sequence should be longer than 17 or 18 nucleotides based on your selected RT. Besides, it shouldn't contain any characters other than A/T/C/G. If any occurs, there will be an error message.</p>
+
 
+
  <p class="flow-text">Step 3. Click on the "submit" button and see the result, as shown in the figure below (upper panel). The result is composed of two parts. The first part shows you the secondary structure of the template tRNA that you will be using as well as the designed tRNA primer. The fragment that can be annealed to PBS of the input DNA sequence is shown in red. The second part will give you the DNA sequence encoding the tRNA primer that satisfies your need. You can just copy it and use it elsewhere. These two parts are demonstrated in the figure below (lower panel).</p>
+
 
+
  <div class="figureHolder" id="Fig4">
+
    <img class="responsive-img" src="https://static.igem.org/mediawiki/2019/2/2d/T--Fudan-TSI--SFig_end.gif" />
+
  </div>
+
</div>
+
 
+
<div id="section4" class="section container scrolSpy">
+
  <h2>References</h2>
+
  <ol id="ref" style="margin: 23px 0 0 0;">
+
    <li id="Ref1">[1]. Peters G , Dahlberg J E . RNA-directed DNA synthesis in Moloney murine leukemia virus: interaction between the primer tRNA and the genome RNA.[J]. Journal of Virology, 1979, 31(2):398-407.</li>
+
    <li id="Ref2">[2]. Kulpa, D. Determination of the site of first strand transfer during Moloney murine leukemia virus reverse transcription and identification of strand transfer-associated reverse transcriptase errors[J]. EMBO (European Molecular Biology Organization) Journal, 1997, 16(4):856-865.</li>
+
    <li id="Ref3">[3]. Palmer M T , Kirkman R , Kosloff B R , et al. tRNA Isoacceptor Preference prior to Retrovirus Gag-Pol Junction Links Primer Selection and Viral Translation[J]. Journal of Virology, 2007, 81(9):4397-4404.</li>
+
    <li id="Ref4">[4]. Kinouchi M , Kurokawa K . [Special Issue: Fact Databases and Freewares] tRNAfinder: A Software System To Find All tRNA Genes in the DNA Sequence Based on the Cloverleaf Secondary Structure[J]. Journal of Computer Aided Chemistry, 2006, 7:116-124.</li>
+
    <li id="Ref5">[5]. Lund, Anders H. et al. “Mutated primer binding sites interacting with different tRNAs allow efficient murine leukemia virus replication.” Journal of virology, 67 12 (1993): 7125-30.</li>
+
  </ol>
+
</div>
+
 
+
<div id="section5" class="section container scrolSpy">
+
  <h2>tRNA primer</h2>
+
  <p class="flow-text">A demonstration of our software is embeded below. And, we have a beautified version running on <a href="http://9.cail.cn/tRNA_primer" target=_blank>Amazon EC2</a>.</p>
+
</div>
+
 
+
<div style="background-color:white;padding:2%">
+
    <p id="p_rev" style="color:black">
+
    <em>Please input the type of reverse transcriptase (RT) that you want to use:</em><br/>
+
    <label for="rev_MMLV"><input type="radio" name="rev" value="MMLV" id="rev_MMLV" checked /><span>MMLV</span></label><br/>
+
    <label for="rev_HIV1"><input type="radio" name="rev" value="HIV1" id="rev_HIV1" /><span>HIV1</span></label><br/>
+
    <label for="rev_RSV"><input type="radio" name="rev" value="RSV" id="rev_RSV" /><span>RSV</span></label>
+
  </p>
+
  <p id="p_target" style="color:black">
+
    <em>Please input a sequence that you want to mutate:</em><br/>
+
    <textarea style="width:80%;resize:none;border:0;border-bottom:1px #ccc solid;" rows="2" id="target_seq"></textarea>
+
  </p>
+
  <p>
+
    <input style="padding:4px 12px" type="submit" value="submit" id="submit" />
+
    <input style="padding:4px 12px" type="submit" value="clear" id="clear" />
+
    <input style="padding:4px 12px" type="submit" value="demo" id="demoBtn" style="float:right" />
+
  </p>
+
  <p id="progress" style="background:yellow;font-size:0.75em;line-height:11pt;text-indent:-10px;padding-left:15px;color:black"></p>
+
  <div><table id="table_result" style="color:black"></table></div>
+
  <div id="graph_result"></div>
+
  <hr/>
+
  <p id="p_primer" style="color:green" class="Off">
+
    <em>Your tRNA primer (complement to <u>Your tRNA</u>):</em><br/>
+
    3'-<span id="primer_seq"></span>-5'
+
  </p>
+
  <script>
+
var DEBUG = false,
+
    PBS_len = 18;
+
 
+
function getQueryStringArgs() {
+
  var qs = location.search.length > 0 ? location.search.substring(1) : '',
+
      args = {},
+
      items = qs.length ? qs.split('&') : [],
+
      item = null,
+
      name = null,
+
      value = null,
+
      i = 0,
+
      len = items.length;
+
  for (i = 0; i < len; i += 1) {
+
    item = items[i].split('=');
+
    name = decodeURIComponent(item[0]);
+
    value = decodeURIComponent(item[1]);
+
    if (name.length) {
+
      args[name] = value;
+
    }
+
  }
+
  return args;
+
}
+
 
+
function cumsum(myarray) {
+
  var new_array = [];
+
  myarray.reduce(function(a,b,i) { return new_array[i] = a+b; }, 0);
+
  return new_array;
+
}
+
 
+
function complement(ele) {
+
    if (ele === 'A') {
+
      return 'U';
+
    } else if (ele === 'U' || ele === 'T') {
+
      return 'A';
+
    } else if (ele === 'G') {
+
      return 'C';
+
    } else if (ele === 'C') {
+
      return 'G';
+
    }
+
  return 'N';
+
}
+
function complement_dna(ele) {
+
    if (ele === 'A') {
+
      return 'T';
+
    } else if (ele === 'T' || ele === 'U') {
+
      return 'A';
+
    } else if (ele === 'G') {
+
      return 'C';
+
    } else if (ele === 'C') {
+
      return 'G';
+
    }
+
  return 'N';
+
}
+
 
+
function isComplement(Base1, Base2, drawMode, alignMode) {
+
  if (!drawMode) { drawMode = 'none'; }
+
  if (!alignMode) { alignMode = 'none'; }
+
  if (Base1 == complement(Base2)) {
+
    if (alignMode === 'vertical') {
+
      return 3;
+
    } else {
+
      return 1;
+
    }
+
  } else if ( (Base1+Base2 === 'GU') ||
+
              (Base1+Base2 === 'UG') ) {
+
    if (drawMode === 'draw') {
+
      return 2;
+
    } else {
+
      return 1;
+
    }
+
  } else {
+
    return 0;
+
  }
+
}
+
 
+
function anti_parallel(t) {
+
  var apt_list = [],
+
      t_list = t.split('');
+
  $.each(t_list, function (iV, ele) {
+
    if (ele === 'A') {
+
      apt_list.unshift( 'U' );
+
    } else if (ele === 'T' || ele === 'U') {
+
      apt_list.unshift( 'A' );
+
    } else if (ele === 'G') {
+
      apt_list.unshift( 'C' );
+
    } else if (ele === 'C') {
+
      apt_list.unshift( 'G' );
+
    }
+
  });
+
  return apt_list.join('');
+
}
+
 
+
function complementSeq(t) {
+
  var cs_list = [],
+
      t_list = t.split('');
+
  $.each(t_list, function (iV, ele) {
+
    cs_list.push( complement(ele) );
+
  });
+
  return cs_list.join('');
+
}
+
function complementSeq_dna(t) {
+
  var cs_list = [],
+
      t_list = t.split('');
+
  $.each(t_list, function (iV, ele) {
+
    cs_list.push( complement_dna(ele) );
+
  });
+
  return cs_list.join('');
+
}
+
 
+
function reverseAB(t, A, B) {
+
  if (A <= B || A >= t.length) { return ''; }
+
  var tt = '';
+
  for (let step = A; step > B; step--) {
+
      tt += t.substr(step, 1);
+
  }
+
  return tt;
+
}
+
 
+
function findRegion(seq, L) {
+
  var new_s = {},
+
      Max_Mismatch = 2;
+
  // return the basic components of tRNA (e.g. TArm, TLoop, etc.) for subsequent plotting step
+
  var S, Base1, Base2, mismatch1, mismatch2, mismatch3, MisMatch_total,
+
      AcptStemStart, AcptStemEnd, AcptStemLen,
+
      DLoopStart, DLoopEnd, DLoopLen,
+
      AtCLoopEnd, AtCLoopStart, AtCLoopStemLen,
+
      TArmSiteStart, TArmSiteEnd, TArmStemLen;
+
  for (let n = 0; n < L; n++) {
+
    for (let interval = 69; interval < 94; interval++) {
+
            AcptStemStart = n;
+
            AcptStemEnd = n + interval;
+
            AcptStemLen = 7;
+
            MisMatch_total = 0;
+
            if (AcptStemEnd >= L) { continue; }
+
            mismatch1 = 0;
+
            S = 0;
+
            for (let i = 0; i < AcptStemLen; i++) {
+
                Base1 = seq.substr(AcptStemStart+i, 1);
+
                Base2 = seq.substr(AcptStemEnd-i, 1);
+
                S += isComplement(Base1, Base2);
+
            }
+
            mismatch1 += (AcptStemLen - S);
+
            if (S < AcptStemLen-Max_Mismatch || mismatch1 > Max_Mismatch) { continue; }
+
            TArmSiteEnd = n + interval - AcptStemLen;
+
            TArmSiteStart = TArmSiteEnd - 16;
+
            TArmStemLen = 5;
+
            S = 0;
+
            for (let i = 0; i < TArmStemLen; i++) {
+
                Base1 = seq.substr(TArmSiteStart+i, 1);
+
                Base2 = seq.substr(TArmSiteEnd-i, 1);
+
                S += isComplement(Base1, Base2);
+
            }
+
            mismatch1 += (TArmStemLen - S);
+
            MisMatch_total = mismatch1;
+
            if (S < 4 || MisMatch_total > Max_Mismatch) { continue; }
+
            for (let DLoopLen = 14; DLoopLen < 19; DLoopLen++) {
+
                MisMatch_total = mismatch1;
+
                DLoopStart = n + 9;
+
                DLoopEnd = DLoopStart + DLoopLen;
+
                S = 0;
+
                if (DLoopLen < 17) { DLoopStemLen = 3; }
+
                else { DLoopStemLen = 4; }
+
                for (let i = 0; i < DLoopStemLen; i++) {
+
                    Base1 = seq.substr(DLoopStart+i, 1);
+
                    Base2 = seq.substr(DLoopEnd-i, 1);
+
                    S += isComplement(Base1, Base2);
+
                }
+
                mismatch2 = DLoopStemLen - S;
+
                MisMatch_total += mismatch2;
+
                if (MisMatch_total <= Max_Mismatch) {
+
                    AtCLoopStart = DLoopEnd + 2;
+
                    AtCLoopStemLen = 5;
+
                    for (let AtCLoopEnd = Math.max(AtCLoopStart+16, AcptStemEnd-54);
+
                        AtCLoopEnd <= Math.min(AtCLoopStart+16, AcptStemEnd-28); AtCLoopEnd++) {
+
                        S = 0;
+
                        MisMatch_total = mismatch1 + mismatch2;
+
                        for (let i = 0; i < AtCLoopStemLen; i++) {
+
                            Base1 = seq.substr(AtCLoopStart+i, 1);
+
                            Base2 = seq.substr(AtCLoopEnd-i, 1);
+
                            S += isComplement(Base1, Base2);
+
                        }
+
                        mismatch3 = AtCLoopStemLen - S;
+
                        MisMatch_total += mismatch3;
+
                        if (MisMatch_total <= Max_Mismatch) {
+
                            $('#progress').append('<br/>'+(AcptStemStart+1)+'..'+(AcptStemEnd+1+1)+'&#160;&#160;&#160;&#160;');
+
                            $('#progress').append('mismatch='+MisMatch_total);
+
                            GroupNum = [AcptStemStart, AcptStemLen, 2, 4, DLoopLen-2*4+1, 4, 1, AtCLoopStemLen,
+
                                        AtCLoopEnd-AtCLoopStart-2*AtCLoopStemLen+1, AtCLoopStemLen,
+
                                        TArmSiteStart-AtCLoopEnd-1, TArmStemLen, 16-2*TArmStemLen+1,
+
                                        TArmStemLen, AcptStemLen, seq.length-AcptStemLen];
+
                            GroupNum = cumsum(GroupNum);
+
                            new_s = {
+
                                AcceptArm: '',
+
                                Interval1: '',
+
                                DArm: '',
+
                                DLoop: '',
+
                                DArmComp: '',
+
                                Interval2: '',
+
                                AnticodonArm: '',
+
                                AnticodonLoop: '',
+
                                AnticodonArmComp: '',
+
                                VariableLoop: '',
+
                                TArm: '',
+
                                TLoop: '',
+
                                TArmComp: '',
+
                                AcceptArmComp: '',
+
                                Redundance:''
+
                            };
+
                            OutputName = [
+
                                'AcceptArm',
+
                                'Interval1',
+
                                'DArm',
+
                                'DLoop',
+
                                'DArmComp',
+
                                'Interval2',
+
                                'AnticodonArm',
+
                                'AnticodonLoop',
+
                                'AnticodonArmComp',
+
                                'VariableLoop',
+
                                'TArm',
+
                                'TLoop',
+
                                'TArmComp',
+
                                'AcceptArmComp',
+
                                'Redundance'
+
                            ];
+
                            for (let i  = AcptStemStart; i < L; i++) {
+
                                for (let j = 0; j < 15; j++) {
+
                                    if (i >= GroupNum[j]) {
+
if (i < GroupNum[j+1]) {
+
                                        new_s[OutputName[j]] += seq.substr(i, 1);
+
                                    }
+
}
+
                                }
+
                            }
+
                            return new_s;
+
                        }
+
                    } // for AtCLoopEnd
+
                }
+
            } // for DLoopLen
+
    } // for interval
+
  } // for n
+
  $('#progress').append('<br/>!! not a tRNA, failed to draw');
+
  return new_s;
+
}
+
 
+
function linkerDtm(seq1, seq2, mode) {
+
  var linkSymbol = [' ', '-', '+', '|'],
+
      L1 = seq1.length,
+
      L2 = seq2.length, L, linkerSeq = '';
+
  if (L1 != L2) {
+
    return 0;
+
  } else {
+
    L = L1;
+
  }
+
  for (let i = 0; i < L; i++){
+
    Base1 = seq1.substr(i, 1);
+
    Base2 = seq2.substr(L-1-i, 1);
+
    linkerSeq += linkSymbol[ isComplement(Base1, Base2, 'draw', mode) ];
+
  }
+
  return linkerSeq;
+
}
+
 
+
function TmCal67(seq) {
+
  /* Tm= (wA+xT)*2 + (yG+zC)*4 - 16.6*log10(0.050) + 16.6*log10([Na+])
+
      return 58.1+(58.4*c/a)+(11.8*(c/a)*(c/a))-(820/a)
+
    Tm= (wA+xT)*2 + (yG+zC)*4 +21.597-19.487
+
      return b*2+c*4+2.11 */
+
  if (!seq) { return 0; }
+
  var a = seq.length, b, c;
+
  b = (seq.split('A').length - 1) + (seq.split('U').length - 1);
+
  c = (seq.split('G').length - 1) + (seq.split('C').length - 1);
+
  return b*2+c*4+2.1
+
}
+
 
+
function draw_tRNA(ForDraw, Type_RT, preId) {
+
    var linker = {}, pre;
+
    if (ForDraw.DLoop.length < 9) {
+
        for (let i = 0; i < (9 - ForDraw.DLoop.length); i++) {
+
          ForDraw.DLoop += ' ';
+
        }
+
    }
+
    linker['AcceptorArmLink'] = linkerDtm(ForDraw.AcceptArm, ForDraw.AcceptArmComp)
+
    linker['DArmLink'] = linkerDtm(ForDraw.DArmComp,ForDraw.DArm, 'vertical')
+
    linker['AnticodonArmLink'] = linkerDtm(ForDraw.AnticodonArm, ForDraw.AnticodonArmComp)
+
    linker['TArmLink'] = linkerDtm(ForDraw.TArm, ForDraw.TArmComp, 'vertical')
+
    pre = '                        ' + ForDraw.Redundance + '-3\n';
+
    pre += '                5-' + ForDraw.AcceptArm[0] +
+
          ' ' + linker.AcceptorArmLink[0] + ' ' +
+
          ForDraw.AcceptArmComp[ForDraw.AcceptArm.length-1]+'\n';
+
    for (let i = 1; i < ForDraw.AcceptArm.length-1; i++) {
+
        pre += '                  ' + ForDraw.AcceptArm[i] +
+
              ' ' + linker.AcceptorArmLink[i] + ' ' +
+
              ForDraw.AcceptArmComp[ForDraw.AcceptArm.length-1-i]+'\n';
+
    }
+
    pre += '                  ' + ForDraw.AcceptArm[ForDraw.AcceptArm.length-1] +
+
          ' ' + linker.AcceptorArmLink[ForDraw.AcceptArm.length-1] +
+
          ' ' + ForDraw.AcceptArmComp[0] +
+
          '          ' + ForDraw.TLoop[6] + ' ' + ForDraw.TLoop[5]+'\n';
+
    pre += '                  ' + ForDraw.Interval1[0] + '    ' +
+
          ForDraw.TArmComp[4] + ' ' +
+
          ForDraw.TArmComp[3] + ' ' +
+
          ForDraw.TArmComp[2] + ' ' +
+
          ForDraw.TArmComp[1] + ' ' +
+
          ForDraw.TArmComp[0] + '    ' + ForDraw.TLoop[4]+'\n';
+
    pre += '      ' + ForDraw.DLoop[1] + ' ' + ForDraw.DLoop[0] +
+
          '        ' + ForDraw.Interval1[1] +
+
          '      ' + linker.TArmLink[0] + ' ' +
+
          linker.TArmLink[1] + ' ' +
+
          linker.TArmLink[2] + ' ' +
+
          linker.TArmLink[3] + ' ' +
+
          linker.TArmLink[4] + '    ' + ForDraw.TLoop[3]+'\n';
+
    pre += '    ' + ForDraw.DLoop[2] + '    ' +
+
          ForDraw.DArm[3] + ' ' +
+
          ForDraw.DArm[2] + ' ' +
+
          ForDraw.DArm[1] + ' ' +
+
          ForDraw.DArm[0] + '      ' +
+
          ForDraw.TArm[0] + ' ' +
+
          ForDraw.TArm[1] + ' ' +
+
          ForDraw.TArm[2] + ' ' +
+
          ForDraw.TArm[3] + ' ' +
+
          ForDraw.TArm[4] + '    ' + ForDraw.TLoop[2]+'\n';
+
    pre += '    ' + ForDraw.DLoop[3] + '    ' +
+
          linker.DArmLink[0] + ' ' +
+
          linker.DArmLink[1] + ' ' +
+
          linker.DArmLink[2] + ' ' +
+
          linker.DArmLink[3] + '        ' +
+
          ForDraw.VariableLoop[4] + '        ' +
+
          ForDraw.TLoop[1] + ' ' + ForDraw.TLoop[0]+'\n';
+
    if (Type_RT === 'HIV1') {
+
      pre += '    ' + ForDraw.DLoop[4] + '    ' +
+
            ForDraw.DArmComp[0] + ' ' +
+
            ForDraw.DArmComp[1] + ' ' +
+
            ForDraw.DArmComp[2] + ' ' +
+
            ForDraw.DArmComp[3] + '        ' +
+
            ForDraw.VariableLoop[4] + '  \n';
+
      pre += '      ' + ForDraw.DLoop[6] + ' ' + ForDraw.DLoop[7] +
+
            '        ' + ForDraw.Interval2 +
+
            '    ' + ForDraw.VariableLoop[0] +
+
            ' ' + ForDraw.VariableLoop[1] +
+
            ' ' + ForDraw.VariableLoop[2]+'\n';
+
    } else {
+
      pre += '      ' + ForDraw.DLoop[4] + ' ' +
+
            ForDraw.DLoop[6] + ' ' +
+
            ForDraw.DArmComp[0] + ' ' +
+
            ForDraw.DArmComp[1] + ' ' +
+
            ForDraw.DArmComp[2] + ' ' +
+
            ForDraw.DArmComp[3] + '        ' +
+
            ForDraw.VariableLoop[3] + '\n';
+
      pre += '                ' + ForDraw.Interval2 +
+
            '    ' + ForDraw.VariableLoop[0] +
+
            ' ' + ForDraw.VariableLoop[1] +
+
            ' ' + ForDraw.VariableLoop[2]+'\n';
+
    }
+
    for (let i = 0; i < ForDraw.AnticodonArm.length; i++) {
+
        pre += '                  ' + ForDraw.AnticodonArm[i] +
+
              ' ' + linker.AnticodonArmLink[i] + ' ' +
+
              ForDraw.AnticodonArmComp[ForDraw.AnticodonArm.length-1-i]+'\n';
+
    }
+
    pre += '                ' + ForDraw.AnticodonLoop[0] + '      ' + ForDraw.AnticodonLoop[6]+'\n';
+
    pre += '                ' + ForDraw.AnticodonLoop[1] + '      ' + ForDraw.AnticodonLoop[5]+'\n';
+
    pre += '                  ' + ForDraw.AnticodonLoop[2] +
+
          ' ' + ForDraw.AnticodonLoop[3] + ' ' + ForDraw.AnticodonLoop[4];
+
    $('#'+preId).text(pre);
+
}
+
 
+
function tRNA_primer(std_q) {
+
  var PBS = reverseAB(std_q, std_q.length-1, std_q.length-PBS_len-1);
+
  var Primerseq = complementSeq(PBS);
+
  var temp_seq = '',
+
      Type_RT = $('input[name="rev"]:checked').val();
+
  if (Type_RT === 'MMLV') {
+
    temp_seq = 'GGCUCGUUGGUCUAGGGGUAUGAUUCUCGCUUAGGGUGCGAGAGGUCCCGGGUUCAAAUCCCGGACGAGCCCCCA';
+
  } else if (Type_RT === 'HIV1') {
+
    temp_seq = 'GCCCGGCUAGCUCAGUCGGUAGAGCAUCAGACUUUUAAUCUGAGGGUCCAGGGTUCAAGUCCCUGUUCGGGCGCCA';
+
  } else if (Type_RT === 'RSV') {
+
    temp_seq = 'GACCUCGUGGCGCAACGGUAGCGCGUCUGACUCCAGAUCAGAAGGCUGCGUGUUCGAAUCACGUCGGGGUCACCA';
+
  }
+
  var temp = findRegion( temp_seq.replace('T','U'), temp_seq.length );
+
  if (temp) {
+
    // tRNA_Pro for MMLV RT, tRNA_Lys for HIV-1 RT, tRNA_Trp for RSV RT
+
    $('#table_result').html('<tr><th>For ' + Type_RT + ' RT<br/>template tRNA ' +
+
                          '(Tm<sup>stem</sup> <span id="TmT"></span>)</th><th>Your tRNA ' +
+
                          '(Tm<sup>stem</sup> <span id="TmY"></span>)</th></tr>' +
+
                            '<tr><td><pre id="preLeft"></pre></td><td><pre id="preRight"></pre></td></tr>');
+
    draw_tRNA(temp, Type_RT, 'preLeft');
+
    $('#TmT').text( TmCal67(temp.AcceptArm) );
+
    var qT = temp;
+
    qT.Redundance = reverseAB(Primerseq, qT.Redundance.length-1, -1);
+
    qT.AcceptArmComp = reverseAB(Primerseq,
+
                                qT.Redundance.length+qT.AcceptArmComp.length-1, qT.Redundance.length-1);
+
    qT.AcceptArm = anti_parallel(qT.AcceptArmComp);
+
    qT.TArmComp = reverseAB(Primerseq.substr(qT.Redundance.length+qT.AcceptArmComp.length, 5), 4, -1);
+
    qT.TArm = anti_parallel(qT.TArmComp);
+
    var remainNotR = Primerseq.substr(qT.TArmComp.length+qT.Redundance.length+qT.AcceptArmComp.length);
+
    qT.TLoop = qT.TLoop.substr(0, qT.TLoop.length-remainNotR.length) + reverseAB(remainNotR, remainNotR.length-1, -1);
+
    draw_tRNA(qT, Type_RT, 'preRight');
+
    $('#TmY').text( TmCal67(qT.AcceptArm) );
+
    return complementSeq_dna( qT.AcceptArm + qT.Interval1 + qT.DArm + qT.DArmComp + qT.Interval2 +
+
                              qT.AnticodonArm + qT.AnticodonLoop + qT.VariableLoop + qT.TArm +
+
                              qT.TLoop + qT.TArmComp + qT.AcceptArmComp + qT.Redundance );
+
  } else {
+
    return 'ERROR'
+
  }
+
}
+
 
+
function clean_results() {
+
  $('#progress').text('');
+
  $('#table_result').html('');
+
  $('#graph_result').html('');
+
  $('#primer_seq').text('');
+
  $('#p_primer').addClass('Off');
+
}
+
 
+
 
+
$(document).ready(function () {
+
  $('#submit').on('click', function (event) {
+
    clean_results();
+
    var q = $('#target_seq').val();
+
    if (q) {
+
      std_q = q.replace(/[^atgc]/gi, '').toUpperCase();
+
      if (std_q.length >= PBS_len) {
+
        //$('#primer_seq').text(tRNA_primer( std_q ));
+
        var targetprimer = tRNA_primer(std_q);
+
        $('#primer_seq').html(targetprimer.substr(0,targetprimer.length-PBS_len)+
+
          '<span style="color:blue">'+targetprimer.substr(targetprimer.length-PBS_len,PBS_len)+'</span>');
+
        $('#p_primer').removeClass('Off');
+
        $('#progress').addClass('Off');
+
      } else {
+
        $('#progress').text('!! the sequence should be longer');
+
        $('#target_seq').focus();
+
      }
+
    } else {
+
      $('#progress').text('!! please input something');
+
      $('#target_seq').focus();
+
    }
+
    event.preventDefault();
+
  });
+
 
+
  var r = getQueryStringArgs();
+
  if (r.seq) {
+
    var q = r.seq;
+
    $('#target_seq').val(r.seq);
+
    std_q = t.replace(/[^atgc]/gi, '').toUpperCase();
+
    //plus_strand_search(s, std_q);
+
  }
+
  
   $('#clear').on('click', function (event) {
+
<div class="section container">
    clean_results();
+
   <p class="flow-text">Fudan University has been taking part in iGEM competition since 2011. Among one of the first teams in China to participate in iGEM, we have deepened our understanding in iGEM and synthetic biology over the years and endeavored to pass them down for following teams that come.</p>
    $('#target_seq').val('');
+
    $('#rev_MMLV').prop('checked', true);
+
    PBS_len = 18;
+
    $('#target_seq').focus();
+
    event.preventDefault();
+
  });
+
  
   $('#demoBtn').on('click', function (event) {
+
<div class="tableHolder"><table>
     clean_results();
+
   <thead><tr><th>Team&#160;Name</th><th>Title</th><th>Leader</th><th>Year</th><th>Twitter</th></tr></thead>
     var q = 'CGATGATCGATCAGCTAGCTAGTCGATCGATCGATC';
+
  <tbody>
     $('#target_seq').val(q);
+
    <tr><td>Fudan&#8209;Shanghai</td><td>E.tree, neon light and the dinner service</td><td>Ruojun&#160;Wang</td><td><a href="https://igem.org/Team.cgi?team_id=604" rel="noreferrer" target="_blank">2011</a></td><td></td></tr>
     //$('#primer_seq').text(tRNA_primer( q ));
+
     <tr><td>Fudan_Lux</td><td>Biowave, Nano-tubular Highways, Labcloud</td><td>Jianpei&#160;Niu</td><td><a href="https://igem.org/Team.cgi?team_id=785" rel="noreferrer" target="_blank">2012</a></td><td></td></tr>
     var demoprimer = tRNA_primer(q);
+
     <tr><td>Fudan_D</td><td>Telomere related construction of programmable time switch in yeast</td><td>Xiaoting&#160;Zhu</td><td><a href="https://igem.org/Team.cgi?team_id=798" rel="noreferrer" target="_blank">2012</a></td><td>@FDU_iGEM</td></tr>
     $('#primer_seq').html(demoprimer.substr(0,demoprimer.length-PBS_len)+
+
     <tr><td>Fudan</td><td>ALeader: leading the advance of RNA synthetic biology</td><td>Haotian&#160;Guo</td><td><a href="https://igem.org/Team.cgi?team_id=1100" rel="noreferrer" target="_blank">2013</a></td><td></td></tr>
      '<span style="color:blue">'+demoprimer.substr(demoprimer.length-PBS_len,PBS_len)+'</span>');
+
     <tr><td>Fudan</td><td>Tet and Cre-dependent genetic logic circuits in mammalian cells</td><td>Xuanye&#160;Cao</td><td><a href="https://igem.org/Team.cgi?team_id=1440" rel="noreferrer" target="_blank">2014</a></td><td></td></tr>
     $('#p_primer').removeClass('Off');
+
     <tr><td>Fudan</td><td>Cyclize it!</td><td>Xilin&#160;Jiang</td><td><a href="https://igem.org/Team.cgi?team_id=1777" rel="noreferrer" target="_blank">2015</a></td><td></td></tr>
     $('#progress').addClass('Off');
+
     <tr><td>Fudan</td><td>AdVENTURE: Replicative-deficient Adenovirus Targeting at Cancer Energy Pathways</td><td>Yang&#160;Xie</td><td><a href="https://igem.org/Team.cgi?team_id=1925" rel="noreferrer" target="_blank">2016</a></td><td></td></tr>
     event.preventDefault();
+
    <tr><td>Fudan</td><td>SwordS: antigen density targeting with customized therapeutic responses via SynNotch-Stripe system</td><td>Zijie&#160;Yang</td><td><a href="https://igem.org/Team.cgi?team_id=2446" rel="noreferrer" target="_blank">2017</a></td><td>@Fudan_iGEM</td></tr>
   });
+
    <tr><td>Fudan_China</td><td>MemOrderY: A sequential memory device that monitors the changing of signals</td><td>Tian&#160;Huang, Yixin&#160;Ma</td><td><a href="https://igem.org/Team.cgi?team_id=2460" rel="noreferrer" target="_blank">2017</a></td><td></td></tr>
 +
    <tr><td>Fudan</td><td>ENABLE across-membrane binary computing in mammalian cells</td><td>Ziyan&#160;Yu, Rongrong&#160;Du</td><td><a href="https://igem.org/Team.cgi?team_id=2549" rel="noreferrer" target="_blank">2018</a></td><td>@Fudan_iGEM</td></tr>
 +
     <tr><td>Fudan&#8209;CHINA</td><td>Synthetic Transducer Engineering Platform (STEP)</td><td>Kaifeng&#160;Jin, Zixuan&#160;Zhang</td><td><a href="https://igem.org/Team.cgi?team_id=2886" rel="noreferrer" target="_blank">2018</a></td><td></td></tr>
 +
     <tr><td>Fudan</td><td>ALTER, a more patient-friendly therapeutic approach to lactose intolerance</td><td>Jianyi&#160;Hu, Dehao&#160;Zhu</td><td><a href="https://igem.org/Team.cgi?team_id=3245" rel="noreferrer" target="_blank">2019</a></td><td>@IgemF</td></tr>
 +
     <tr><td>Fudan&#8209;TSI</td><td>R-Evolution: an in vivo sequence-specific toolbox for continuous mutagenesis</td><td>Chuyue&#160;Zhang, Yuchang&#160;Li</td><td><a href="https://igem.org/Team.cgi?team_id=3257" rel="noreferrer" target="_blank">2019</a></td><td>@Fudan_iGEM</td></tr>
 +
   </tbody>
 +
</table></div>
  
   $('input[name="rev"]').on('change', function () {
+
   <p class="flow-text">For more details, please visit <a target="_blank" href="https://2018.igem.org/Team:Fudan/Heritage">our 2018 page</a>.</p>
    if (this.checked) {
+
      clean_results();
+
      if (this.value === 'MMLV') {
+
        PBS_len = 18;
+
      } else if (this.value === 'HIV1') {
+
        PBS_len = 18;
+
      } else if (this.value === 'RSV') {
+
        PBS_len = 17;
+
      } else {
+
        $('#progress').text('This type of reverse transcriptase is not supported.');
+
      }
+
    }
+
  });
+
});
+
  </script>
+
 
</div>
 
</div>
  
<p><br/><br/></p>
 
  
 
<!--////////////////////////////////////////////////////
 
<!--////////////////////////////////////////////////////
Line 746: Line 154:
  
 
<!-- Floating Btns, Footer with sponsors -->
 
<!-- Floating Btns, Footer with sponsors -->
       <div class="floatingBtn"> <a href="#FudanTSIdivWrapper" class="btn"> <i class="fa fa-angle-up" style="font-size:48px;line-height:45px"></i> </a></div> <footer id="FudanTSIfooter" class="page-footer blue-grey darken-1"><div class="container"><div class="row"><div id="sponsor" class="col m3 s12 row"> <a href="https://2019.igem.org/Team:Fudan-TSI"><img alt="2019 Team:Fudan-TSI logo white" class="col s3 m6 l3" style="position:relative; padding: 0.45em 0.3rem; margin:-0.15rem 0; left: -0.45rem;" src="https://static.igem.org/mediawiki/2019/0/0f/T--Fudan-TSI--LogoGrey.gif"> </a><a href="http://www.fudan.edu.cn/en/" target="_blank"><img class="col s3 m6 l3" alt="Fudan University" src="https://static.igem.org/mediawiki/2018/f/f7/T--Fudan--schoolLogo.png"> </a><a href="http://life.fudan.edu.cn/" target="_blank"><img class="col s3 m6 l3" style="margin-bottom: 4%;/* fig should be smaller, 2018 ht */" alt="School of Life Sciences, Fudan University" src="https://static.igem.org/mediawiki/2018/1/1d/T--Fudan--schoolOfLifeSciencesIcon.png"> </a><a href="http://www.yfc.cn/en/" target="_blank"><img class="col s3 m6 l3" style="padding: 0.15rem 0.9rem;" alt="Yunfeng Capital" src="https://static.igem.org/mediawiki/2018/e/e2/T--Fudan--yunfengLogo.png"> </a><h3 class="col s12" style="text-align:left;font-size:12.5px">R-Evolution: an <i>in vivo</i> sequence-specific toolbox for continuous mutagenesis</h3></div><div id="footerNavList" class="col m9 s12 row"><div class="col s12 l6 row"><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Description">Project</a></span><ul><li><a href="/Team:Fudan-TSI/Description">Background</a></li><li><a href="/Team:Fudan-TSI/Design">Design</a></li><li><a href="/Team:Fudan-TSI/Experiments">Experiments</a></li><li><a href="/Team:Fudan-TSI/Applied_Design">Applied design</a></li><li><a href="/Team:Fudan-TSI/Judging">Judging</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Demonstrate">Results</a></span><ul><li><a href="/Team:Fudan-TSI/Demonstrate#ReverseTranscription">Reverse transcription</a></li><li><a href="/Team:Fudan-TSI/Demonstrate#Recombination">Recombination</a></li><li><a href="/Team:Fudan-TSI/Demonstrate">Demonstration</a></li><li><a href="/Team:Fudan-TSI/Measurement">Measurement</a></li><li><a href="/Team:Fudan-TSI/Notebook">Notebook</a></li></ul></div><div class="col s12 m4 active"> <span><a href="/Team:Fudan-TSI/Model">Model</a></span><ul><li><a href="/Team:Fudan-TSI/Model">Modeling</a></li><li><a href="/Team:Fudan-TSI/Software">Software</a></li><li><a href="/Team:Fudan-TSI/Hardware">Hardware</a></li></ul></div></div><div class="col s12 l6 row"><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Parts">Parts</a></span><ul><li><a href="/Team:Fudan-TSI/Basic_Part">Basic parts</a></li><li><a href="/Team:Fudan-TSI/Composite_Part">Composite parts</a></li><li><a href="/Team:Fudan-TSI/Improve">Part improvement</a></li><li><a href="/Team:Fudan-TSI/Part_Collection">Part collection</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Human_Practices">Outreach</a></span><ul><li><a href="/Team:Fudan-TSI/Public_Engagement">Public engagement</a></li><li><a href="/Team:Fudan-TSI/Human_Practices#IntegratedHumanPractice">Integrated HP</a></li><li><a href="/Team:Fudan-TSI/Collaborations">Collaborations</a></li><li><a href="/Team:Fudan-TSI/Safety">Safety</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Team">Team</a></span><ul><li><a href="/Team:Fudan-TSI/Team">Members</a></li><li><a href="/Team:Fudan-TSI/Attributions">Attributions</a></li><li><a href="/Team:Fudan-TSI/Team#Acknowledge">Acknowledge</a></li><li><a href="/Team:Fudan-TSI/Heritage">Heritage</a></li></ul></div><div class="col s12 m4">&nbsp;</div></div></div></div></div><div class="footer-copyright"><div class="container"><div class="contactUS row"><div class="col s12 m6 l4"><i class="fa fa-location-arrow"></i> Life Sci Bldg, 2005 Songhu Rd, Shanghai</div><div class="col s12 m6 l2"><i class="fa fa-fax"></i> +86-21-31246727</div><div class="col s12 m6 l2"><i class="fa fa-envelope-o"></i> igem@fudan.edu.cn</div><div class="col s12 m6 l4"><i class="fa fa-twitter"></i> <i class="fa fa-wechat"></i> Fudan_iGEM</div></div></div></div> </footer>
+
       <div class="floatingBtn"> <a href="#FudanTSIdivWrapper" class="btn"> <i class="fa fa-angle-up" style="font-size:48px;line-height:45px"></i> </a></div> <footer id="FudanTSIfooter" class="page-footer blue-grey darken-1"><div class="container"><div class="row"><div id="sponsor" class="col m3 s12 row"> <a href="https://2019.igem.org/Team:Fudan-TSI"><img alt="2019 Team:Fudan-TSI logo white" class="col s3 m6 l3" style="position:relative; padding: 0.45em 0.3rem; margin:-0.15rem 0; left: -0.45rem;" src="https://static.igem.org/mediawiki/2019/0/0f/T--Fudan-TSI--LogoGrey.gif"> </a><a href="http://www.fudan.edu.cn/en/" target="_blank"><img class="col s3 m6 l3" alt="Fudan University" src="https://static.igem.org/mediawiki/2018/f/f7/T--Fudan--schoolLogo.png"> </a><a href="http://life.fudan.edu.cn/" target="_blank"><img class="col s3 m6 l3" style="margin-bottom: 4%;/* fig should be smaller, 2018 ht */" alt="School of Life Sciences, Fudan University" src="https://static.igem.org/mediawiki/2018/1/1d/T--Fudan--schoolOfLifeSciencesIcon.png"> </a><a href="http://www.yfc.cn/en/" target="_blank"><img class="col s3 m6 l3" style="padding: 0.15rem 0.9rem;" alt="Yunfeng Capital" src="https://static.igem.org/mediawiki/2018/e/e2/T--Fudan--yunfengLogo.png"> </a><h3 class="col s12" style="text-align:left;font-size:12.5px">R-Evolution: an <i>in vivo</i> sequence-specific toolbox for continuous mutagenesis</h3></div><div id="footerNavList" class="col m9 s12 row"><div class="col s12 l6 row"><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Description">Project</a></span><ul><li><a href="/Team:Fudan-TSI/Description">Background</a></li><li><a href="/Team:Fudan-TSI/Design">Design</a></li><li><a href="/Team:Fudan-TSI/Experiments">Experiments</a></li><li><a href="/Team:Fudan-TSI/Applied_Design">Applied design</a></li><li><a href="/Team:Fudan-TSI/Judging">Judging</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Demonstrate">Results</a></span><ul><li><a href="/Team:Fudan-TSI/Demonstrate#ReverseTranscription">Reverse transcription</a></li><li><a href="/Team:Fudan-TSI/Demonstrate#Recombination">Recombination</a></li><li><a href="/Team:Fudan-TSI/Demonstrate">Demonstration</a></li><li><a href="/Team:Fudan-TSI/Measurement">Measurement</a></li><li><a href="/Team:Fudan-TSI/Notebook">Notebook</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Model">Model</a></span><ul><li><a href="/Team:Fudan-TSI/Model">Modeling</a></li><li><a href="/Team:Fudan-TSI/Software">Software</a></li><li><a href="/Team:Fudan-TSI/Hardware">Hardware</a></li></ul></div></div><div class="col s12 l6 row"><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Parts">Parts</a></span><ul><li><a href="/Team:Fudan-TSI/Basic_Part">Basic parts</a></li><li><a href="/Team:Fudan-TSI/Composite_Part">Composite parts</a></li><li><a href="/Team:Fudan-TSI/Improve">Part improvement</a></li><li><a href="/Team:Fudan-TSI/Part_Collection">Part collection</a></li></ul></div><div class="col s12 m4 active"> <span><a href="/Team:Fudan-TSI/Human_Practices">Outreach</a></span><ul><li><a href="/Team:Fudan-TSI/Public_Engagement">Public engagement</a></li><li><a href="/Team:Fudan-TSI/Human_Practices#IntegratedHumanPractice">Integrated HP</a></li><li><a href="/Team:Fudan-TSI/Collaborations">Collaborations</a></li><li><a href="/Team:Fudan-TSI/Safety">Safety</a></li></ul></div><div class="col s12 m4"> <span><a href="/Team:Fudan-TSI/Team">Team</a></span><ul><li><a href="/Team:Fudan-TSI/Team">Members</a></li><li><a href="/Team:Fudan-TSI/Attributions">Attributions</a></li><li><a href="/Team:Fudan-TSI/Team#Acknowledge">Acknowledge</a></li><li><a href="/Team:Fudan-TSI/Heritage">Heritage</a></li></ul></div><div class="col s12 m4">&nbsp;</div></div></div></div></div><div class="footer-copyright"><div class="container"><div class="contactUS row"><div class="col s12 m6 l4"><i class="fa fa-location-arrow"></i> Life Sci Bldg, 2005 Songhu Rd, Shanghai</div><div class="col s12 m6 l2"><i class="fa fa-fax"></i> +86-21-31246727</div><div class="col s12 m6 l2"><i class="fa fa-envelope-o"></i> igem@fudan.edu.cn</div><div class="col s12 m6 l4"><i class="fa fa-twitter"></i> <i class="fa fa-wechat"></i> Fudan_iGEM</div></div></div></div> </footer>
 
</div></div></div><!-- #pageContent #FudanTSIBody #FudanTSIdivWrapper -->
 
</div></div></div><!-- #pageContent #FudanTSIBody #FudanTSIdivWrapper -->
  

Revision as of 04:30, 15 November 2019

Heritage | 2019 iGEM Team:Fudan-TSI


Heritage

cover gif 1st added

Fudan University has been taking part in iGEM competition since 2011. Among one of the first teams in China to participate in iGEM, we have deepened our understanding in iGEM and synthetic biology over the years and endeavored to pass them down for following teams that come.

Team NameTitleLeaderYearTwitter
Fudan‑ShanghaiE.tree, neon light and the dinner serviceRuojun Wang2011
Fudan_LuxBiowave, Nano-tubular Highways, LabcloudJianpei Niu2012
Fudan_DTelomere related construction of programmable time switch in yeastXiaoting Zhu2012@FDU_iGEM
FudanALeader: leading the advance of RNA synthetic biologyHaotian Guo2013
FudanTet and Cre-dependent genetic logic circuits in mammalian cellsXuanye Cao2014
FudanCyclize it!Xilin Jiang2015
FudanAdVENTURE: Replicative-deficient Adenovirus Targeting at Cancer Energy PathwaysYang Xie2016
FudanSwordS: antigen density targeting with customized therapeutic responses via SynNotch-Stripe systemZijie Yang2017@Fudan_iGEM
Fudan_ChinaMemOrderY: A sequential memory device that monitors the changing of signalsTian Huang, Yixin Ma2017
FudanENABLE across-membrane binary computing in mammalian cellsZiyan Yu, Rongrong Du2018@Fudan_iGEM
Fudan‑CHINASynthetic Transducer Engineering Platform (STEP)Kaifeng Jin, Zixuan Zhang2018
FudanALTER, a more patient-friendly therapeutic approach to lactose intoleranceJianyi Hu, Dehao Zhu2019@IgemF
Fudan‑TSIR-Evolution: an in vivo sequence-specific toolbox for continuous mutagenesisChuyue Zhang, Yuchang Li2019@Fudan_iGEM

For more details, please visit our 2018 page.