diff --git a/public/build/asset-manifest.json b/public/build/asset-manifest.json
index 7344716..6dd8c9c 100644
--- a/public/build/asset-manifest.json
+++ b/public/build/asset-manifest.json
@@ -1,8 +1,8 @@
{
"files": {
"main.css": "/static/css/main.86a4484a.chunk.css",
- "main.js": "/static/js/main.0b9b0faa.chunk.js",
- "main.js.map": "/static/js/main.0b9b0faa.chunk.js.map",
+ "main.js": "/static/js/main.d723f0fa.chunk.js",
+ "main.js.map": "/static/js/main.d723f0fa.chunk.js.map",
"runtime-main.js": "/static/js/runtime-main.82eb8401.js",
"runtime-main.js.map": "/static/js/runtime-main.82eb8401.js.map",
"static/js/2.a90056d8.chunk.js": "/static/js/2.a90056d8.chunk.js",
@@ -15,6 +15,6 @@
"static/js/runtime-main.82eb8401.js",
"static/js/2.a90056d8.chunk.js",
"static/css/main.86a4484a.chunk.css",
- "static/js/main.0b9b0faa.chunk.js"
+ "static/js/main.d723f0fa.chunk.js"
]
}
\ No newline at end of file
diff --git a/public/build/index.html b/public/build/index.html
index 069adff..c842bd9 100644
--- a/public/build/index.html
+++ b/public/build/index.html
@@ -1 +1 @@
-
CrisprBuildr
\ No newline at end of file
+CrisprBuildr
\ No newline at end of file
diff --git a/public/build/static/js/main.0b9b0faa.chunk.js b/public/build/static/js/main.0b9b0faa.chunk.js
deleted file mode 100644
index 310bac9..0000000
--- a/public/build/static/js/main.0b9b0faa.chunk.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(this.webpackJsonpcrispr_buildr=this.webpackJsonpcrispr_buildr||[]).push([[0],[,function(e,t,s){"use strict";t.a="data:image/png;base64,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"},,,,,,,function(e,t,s){"use strict";(function(e){s.d(t,"a",(function(){return N}));var i=s(9),n=s(10),a=s(11),c=s(2),l=s(22),A=s(21),r=s(3),o=s.n(r),h=(s(33),s(12)),d=s(13),j=s(14),m=s(15),g=s(16),u=s(17),b=s(18),v=s(19),x=s(20),O=s(1),p=s(4),C=s(0),f="http://localhost:8080",N=function(t){Object(l.a)(r,t);var s=Object(A.a)(r);function r(e){var t;return Object(n.a)(this,r),(t=s.call(this,e)).state={menu:null,screen:0,hamburger:!1,themeColor:!1,highlights:[],currentHighlight:null,fontSize:23,fontMenu:!1,geneInfo:null,popup:{show:!1,message:null,image:null},currentPam:null},t.changeMenus=t.changeMenus.bind(Object(c.a)(t)),t.highlight=t.highlight.bind(Object(c.a)(t)),t.saveCurrentHighlight=t.saveCurrentHighlight.bind(Object(c.a)(t)),t}return Object(a.a)(r,[{key:"changeMenus",value:function(e){var t=parseInt(e.target.dataset.menu);t===this.state.menu&&(t=null),this.setState({menu:t},(function(){}))}},{key:"changeScreens",value:function(e){var t=this,s=e.target.dataset.screen;console.log(s);var i=null;1==s&&(i=1),this.setState({screen:parseInt(s),hamburger:!1,menu:i},(function(){console.log(t.state),3==s&&t.setState({mutatePam:!0})}))}},{key:"openMenu",value:function(e){e.target.dataset.screen;this.setState({hamburger:!this.state.hamburger})}},{key:"changeThemeColor",value:function(e){this.setState({themeColor:!this.state.themeColor})}},{key:"closeAllMenus",value:function(e){}},{key:"closePopup",value:function(e){this.setState({popup:{show:!1}})}},{key:"highlight",value:function(e,t){}},{key:"fontMenu",value:function(e){this.setState({fontMenu:!this.state.fontMenu})}},{key:"changeFontSize",value:function(e){var t=parseInt(e.target.value);this.setState({fontSize:t},(function(){}))}},{key:"saveDesign",value:function(){var e=JSON.stringify(this.state),t=this.state.geneName+".txt",s=new Blob([e],{type:"text/plain;charset=utf-8"});Object(p.saveAs)(s,t),this.setState({hamburger:!1})}},{key:"openDesign",value:function(e){var t=this,s=new FileReader;this.setState({popup:{show:!0,message:Object(C.jsx)("h2",{children:"Uploading File"}),image:O.a,stayOpen:!0}},(function(){s.onloadend=function(e){var s=JSON.parse(e.target.result);s.popup=null,s.hamburger=!1,t.setState(s,(function(){console.log(t.state)}))},e.target.value.length&&s.readAsText(e.target.files[0])}))}},{key:"viewFinishedDesign",value:function(){var e=this,t=Object.keys(this.state.targets[0]).map((function(t){return Object(C.jsxs)("div",{children:[Object(C.jsxs)("b",{children:[t,":"]})," ",e.state.targets[0][t]]})})),s=Object.keys(this.state.primers).map((function(t){var s=e.state.primers[t];if(e.state.selectedArms&&e.state.selectedArms[t]){var i=e.state.selectedArms[t];return Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{className:"",children:Object(C.jsx)("b",{children:t})}),Object(C.jsxs)("div",{className:"",children:[Object(C.jsx)("div",{children:i[7]}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["Tm: ",i[3]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["GC%: ",i[4]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["Any (Self Complementarity): ",i[5]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["3' (Self Complementarity): ",i[6]]})})]}),Object(C.jsx)("br",{})]})}return Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{className:"",children:Object(C.jsx)("b",{children:t})}),s.map((function(e){return Object(C.jsxs)("div",{className:"",children:[Object(C.jsx)("div",{children:e[7]}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["Tm: ",e[3]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["GC%: ",e[4]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["Any (Self Complementarity): ",e[5]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["3' (Self Complementarity): ",e[6]]})})]})})),Object(C.jsx)("br",{})]})})),i=Object(C.jsxs)("div",{children:[Object(C.jsx)("h2",{children:"Design Info"}),Object(C.jsxs)("div",{children:[Object(C.jsx)("h3",{children:"Target Info"}),t]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("h3",{children:"Homology Info"}),s]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("h3",{children:"Oligo Info"}),Object(C.jsxs)("div",{children:[Object(C.jsx)("b",{children:"Sense: "}),this.state.oligos.sense]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("b",{children:"Antisense: "}),this.state.oligos.antisense]})]})]});this.setState({popup:{show:!0,message:i,image:null,stayOpen:!1}})}},{key:"saveCurrentHighlight",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=JSON.parse(JSON.stringify(this.state.currentHighlight));t&&(i.color=t);var n=this.state.highlights;s?n[s]=i:n[i.name]=i,"targetSearch"==i.name?this.searchForTargets():this.setState({highlights:n},(function(){console.log(e.state)}))}},{key:"changeCurrentHighlight",value:function(e){var t=this.state.currentHighlight;t.location=e,this.setState({currentHighlight:t})}},{key:"stringLocation",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1?arguments[1]:void 0;if(!t)return this.state.sequence.indexOf(e);var s=this.state.sequence.indexOf(e);console.log("location",s);e.length;if(-1==s){var i=this.revComp(e);console.log("rev",i),s=this.state.sequence.indexOf(i)}return s}},{key:"highlightString",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;console.log("string: ",e," color: ",t);var i=this.stringLocation(e,s);console.log(i),-1==i&&(i=this.stringLocation(this.revComp(e),s)),-1==i&&(i=0);var n=e.length;t||(t="rgba(252, 210, 126, 0.3)"),this.setState({currentHighlight:{location:i,length:n,color:t,name:s||"cutsite"}})}},{key:"clearHighlight",value:function(){}},{key:"revComp",value:function(e){for(var t=[],s=0;sc.length?e.push(c.slice(s,c.length)):e.push(c.slice(s,s+10)),e.push(""),s+=10}return e.join(" ")}()),x=e.state.geneName+".ape",O=new Blob([v],{type:"text/plain;charset=utf-8"});Object(p.saveAs)(O,x)}))}))}},{key:"changePlasmidTemplate",value:function(e){var t=this,s=e.target.value;this.setState({plasmidTemplate:s},(function(){console.log(t.state.plasmidTemplate)}))}},{key:"downloadPlasmidTemplate",value:function(e){var t=this;if(e.preventDefault(),!this.state.plasmidTemplate)return!1;var s=window.location.origin+"/plasmid_folder/"+this.state.plasmidTemplate.split(" ").join("%20")+".txt";console.log(s),fetch(s).then((function(e){return e.text()})).then((function(e){var s=e.split("**arm_1_start**")[0],i=t.state.targets[0].distal+t.state.targets[0].proximal+t.state.targets[0].pam,n=t.state.sequence.search("-"===t.state.targets[0].strand?t.revComp(i):i),a=t.state.sequence.slice(n-1e3,n),c=e.split("**arm_1_end**")[1].split("**arm_2_start**")[0],l=t.state.sequence.slice(n,n+1e3),A=e.split("**arm_2_end**")[1];if(t.state.mutatedPam){var r=t.state.potentialTargets[0].strand,o="-"===r?t.revComp(t.state.target):t.state.target,h=a+l,d=h.toLowerCase().match(o.toLowerCase());a=(h="-"===r?h.substr(0,d.index)+t.state.currentPam+h.substr(d.index+3,h.length):h.substr(0,d.index+o.length-3)+t.state.currentPam+h.substr(d.index+o.length,h.length)).slice(0,Math.floor(h.length/2)+1),l=h.slice(Math.floor(h.length/2),h.length)}for(var j=e.split("**arm_1_start**")[1].split("**arm_1_end**")[0].split(""),m=0,g=e.split("**arm_2_start**")[1].split("**arm_2_end**")[0].split(""),u=0,b=0;b=i&&a0)for(var l=0;l=o&&a1?"":"none"},onClick:this.changeMenus.bind(this),"data-menu":"2",alt:"sidebar2",children:Object(C.jsx)("img",{src:m.a})}),Object(C.jsxs)("label",{onClick:this.changeScreens.bind(this),"data-screen":"2",children:[Object(C.jsx)("div",{className:"arrow-down",children:"^"}),"Select Cut Site"]}),a?Object(C.jsx)("div",{className:"target-list",style:{display:2==this.state.menu?"flex":"none"},children:a}):null]}),Object(C.jsxs)("div",{className:(3==this.state.menu?"active":"")+" menu-icon","data-menu":"3",children:[Object(C.jsx)("div",{className:"menu-image-wrapper",style:{pointerEvents:this.state.screen>2?"":"none"},onClick:this.changeMenus.bind(this),"data-menu":"3",alt:"sidebar3",children:Object(C.jsx)("img",{src:g.a,alt:"sidebar3"})}),Object(C.jsx)("label",{onClick:this.changeScreens.bind(this),"data-screen":"3",children:"Mutate Pam"}),this.state.screen<3?null:Object(C.jsx)("div",{className:"pam-box",style:{display:this.state.mutatePam?"flex":"none"},children:c})]}),Object(C.jsxs)("div",{className:(4==this.state.menu?"active":"")+" menu-icon","data-menu":"4",children:[Object(C.jsx)("div",{className:"menu-image-wrapper",style:{pointerEvents:this.state.screen>3?"":"none"},onClick:this.changeMenus.bind(this),"data-menu":"4",alt:"sidebar4",children:Object(C.jsx)("img",{src:j.a,alt:"sidebar4"})}),Object(C.jsx)("label",{onClick:this.changeScreens.bind(this),"data-screen":"4",children:"Homology Arm Primers"}),Object(C.jsx)("div",{className:"target-list homology-list",style:{display:4==this.state.menu?"flex":"none"},children:function(){if(e.state.primers){var t=Object.keys(e.state.primers).map((function(t){var s=e.state.primers[t];if(e.state.selectedArms&&e.state.selectedArms[t]){var i=e.state.selectedArms[t];return Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{className:"homology-label",children:t}),Object(C.jsxs)("div",{className:"single-target",onMouseDown:e.selectHomologyArm.bind(e,i,t),onMouseLeave:e.clearHighlight.bind(e),children:[Object(C.jsx)("div",{children:i[7]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"Tm: "}),Object(C.jsx)("div",{children:i[3]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"GC%: "}),Object(C.jsx)("div",{children:i[4]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"Any (Self Complementarity): "}),Object(C.jsx)("div",{children:i[5]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"3' (Self Complementarity): "}),Object(C.jsx)("div",{children:i[6]})]})]})]})}return Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{className:"homology-label",children:t}),s.map((function(s){return Object(C.jsxs)("div",{className:"single-target",onMouseEnter:e.highlightString.bind(e,s[7],"rgba(86, 64, 155,0.3)","homology"),onMouseDown:e.selectHomologyArm.bind(e,s,t),onMouseLeave:e.clearHighlight.bind(e),children:[Object(C.jsx)("div",{children:s[7]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"Tm: "}),Object(C.jsx)("div",{children:s[3]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"GC%: "}),Object(C.jsx)("div",{children:s[4]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"Any (Self Complementarity): "}),Object(C.jsx)("div",{children:s[5]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"3' (Self Complementarity): "}),Object(C.jsx)("div",{children:s[6]})]})]})}))]})}));return Object(C.jsx)("div",{children:t})}}()})]}),Object(C.jsxs)("div",{className:(5==this.state.menu?"active":"")+" menu-icon","data-menu":"5",children:[Object(C.jsx)("div",{className:"menu-image-wrapper sidebar-5",style:{pointerEvents:this.state.screen>3?"":"none"},onClick:this.changeMenus.bind(this),"data-menu":"5",alt:"sidebar5",children:Object(C.jsx)("img",{src:u.a,alt:"sidebar5"})}),Object(C.jsx)("label",{onClick:this.changeScreens.bind(this),"data-screen":"5",children:"Download Data"}),5==this.state.menu?function(){for(var t=["N terminal SSPB and mCherry tag","N terminal EGFP and SSPB tag with Extended Linker","C terminal mCherry and SSPB tag","C terminal EGFP and SSPB tag with Extended Linker","C terminal EGFP and SSPB tag","C terminal mDendra2 and SSPB tag","C terminal mScarlett and SSPB tag","N terminal EGFP and SSPB tag","N terminal mDendra2 and SSPB tag","N terminal mScarlett and SSPB tag"],s=[],i=-1;i=4?"flex":"none"},children:[Object(C.jsxs)("div",{className:"gene-name",children:["Gene: ",this.state.geneName,this.state.isoForm?" - Isoform: "+this.state.isoForm:""]}),Object(C.jsxs)("div",{className:"gene-info-wrapper",style:{fontSize:this.state.fontSize},children:[Object(C.jsx)("div",{className:"gene-info gene-info-highlights",children:null}),Object(C.jsx)("div",{className:"gene-info gene-info-sequence",children:n})]})]})]})]}),Object(C.jsxs)("div",{className:"footer",children:[Object(C.jsx)("div",{children:"Cabernard Lab"}),Object(C.jsx)("div",{children:"Sound Development Company"}),Object(C.jsx)("div",{children:"GPL3 License"}),Object(C.jsx)("div",{children:"API Docs"})]}),Object(C.jsx)("div",{className:"popups",style:{display:!0===this.state.fontMenu?"flex":"none"},children:Object(C.jsxs)("div",{className:"font-size",children:[Object(C.jsx)("div",{className:"close",onClick:this.fontMenu.bind(this),children:"X"}),Object(C.jsx)("h4",{children:"Change Font Size"}),Object(C.jsx)("form",{children:Object(C.jsx)("input",{type:"number",value:this.state.fontSize,onChange:this.changeFontSize.bind(this)})})]})}),e.state.popup?Object(C.jsx)("div",{className:"popup-wrapper",style:{display:e.state.popup.show?"flex":"none"},children:Object(C.jsxs)("div",{className:"popup",children:[e.state.popup.stayOpen?null:Object(C.jsx)("div",{className:"popup-close",onClick:e.closePopup.bind(e),children:"X"}),Object(C.jsx)("div",{className:"message",children:e.state.popup.message}),e.state.popup.image?Object(C.jsx)("img",{className:"blink",src:e.state.popup.image}):""]})}):null]})}}]),r}(o.a.Component)}).call(this,s(29).Buffer)},,,,function(e,t,s){"use strict";t.a="data:image/png;base64,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"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAABACAYAAABGHBTIAAAACXBIWXMAAAsSAAALEgHS3X78AAAFSUlEQVRogdVbLXMbSRDtU1kgAQpQgA8IxCABCtACBxhcQND+qi39Kh24gBwwOIEViEEMfFUxEYiABCygVDk1qtdKqzX73SuNHrG03p2Zt/3dM/rj+fmZmiCOkj4RvSaiF0T0MmOoBREt3d9JOt40mrAhahEGyQERXRJRt+LjKyJ6IKL5KchXIhxHiSP4HtJsCkf2f0f+mMRLEY6jxKnqiIj6Obc5yT3hL+OCiF4RUS9HExzZu0k6fqxDoCoKCcdR4lR3mLHgR6jmvGjeOEp6sPWrDA1xY8zalnYu4ThKhligRGNVhGm8g+QlnHZMJ+n4qc64ZZBJOI6SERyTxAJSMFlQHCXuZb5V2uNe4u0kHa9yHq0NL+EMyTo7e7BeAFQ9UtJeE9GXNtS741nAwEN21gZZB0jyVjk7Z+PXbcy3RxjeeKjumbXtQSFJTbofR8k767m0hEfKno4WLkB6ChtmvIUQzLAjjOxJxtlFW2qcQ9o5w5m6PLKcQ0pYq4+e+ChATJdxvQ/HZkcYA0rp3rcZC0vgTt2inWhtdDIGPIrdZgEvW67hMo6SqkWKF0z4tbg2P7F0d+sQn7sFeXxpdKDOMrctzIuPAdiy9Ng2hFHNSARBGFiIz3qdtdBRXYr1qTsSCnuJiMWAHTVQCLYr8cN6QJ1phSTdA1jEY024lZLMEI1DkyZs0asKGpqwaaJujUk6XjQdsoN+McMkmzGESSiS6KC7wDBL0o0g12PiX7SEucEWCmTKu7RYUwd2IcNREIQ9KW9j+yXhtORgZpVJQ+iOqUnKy4RlKdY9tZTxwiVhs32oLWFUJtJ5DU8s5SsVMcxaTTIOfxOfu2iQHx2wXTn3wiL+HhBGd1JK+erYHhtaFanL3zJurwWdaaXq+8iygVYCQxV755bSJU0Yg9+LS+6N3xyDtGcva91G5zRrb+lG1cmtbXBBjYeeMPSljfkO9paAqUrl3KI+Wm99QHNuPGTJsjUrkbdd2sVifHu4X5vYVo5UN1BlntP1x02dVpkTAL59YqpzOEUchvGNR/AfD+pFbzfzxLPrJpvxZc94XHo22iRW6D+tPeUmn/HoF5zz6LKvIKKfRPSXuP9BqbiLzbdVyVKVUzxQQzfpG8O6eYE4u4FUJWkS13x4nKTjyl688jktQXzQoCX0iAXv/AA24nmncHsCAN9l8nOvXnhlG290Ek+czOmjPeSL1xuo/BISzTyNp0hvBLENbHkuPDv/r9KGfeOjh9bwOMmDHAAO7EbcMy1zdIpy4vCpyPZUl8OR/FcnIDAFab+lU+BgCIu4z35hBcl6d0OgxpwGcwpc2HUNScJd5ZG/FsVaOCy2X/fsdVEdHwxhSFIW+oWLx3Mz0aLqQdKZzwVlw5N0fKcklrt4AZn79zxHr3YIijBlSKzEM5yscANjAG9/gOAIA3sSy1q8BEj/J1rOjvRBzh5cHGZAlT/JfBoq77vPZWNLF74Qnj6KW/YSk2AJ03697M2qEIZkkbEWPTCZse0Sl1BVegsscioujeJ9NeW82t3zGeRGeCmcmOy1qYImTP6saiiyKt5dfEJY29qv+z9IS4//wal/0CotgcPkHG7YK/+JHjZnXE76F5N0/Dc/GkfJtai47oKXMAMHXaXEXP/6O5KVAYhfyGOLUH/ZjFyeDWH6HaO5KnJq/QE18T+onz+zUxOlJju0bf19cbrl18ZM9Lw4q5qp8lH/hGH384WzsWEJT0d11+7x1NPnE4fz4InR93BO/BK2J+x1O/lsCZOfNCNzp+SsnJYGCOl0cwXn5d2mOWsJM8TPBfmXbf7GARH9Amg2YgLmDeokAAAAAElFTkSuQmCC"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA9CAYAAAD1VdrqAAAACXBIWXMAAAsSAAALEgHS3X78AAADhElEQVRogd2aIXfbMBSF73pWkIIMbGADIQEtCKlByMiwf5WPf5XRaMiAAxbQgpGQgRY0oAPZOdlRz1P2qsqOLL2XOL6kbhLL+vSkqydZ73a7HaSUZ8UEwBTAoqrLrVjBCroQhr4FMAbwNc+Kyz6BuhIBZ9BWBv5aqpIaSgb3QFtN86y46guoqyRwD/QawD37/7NILRUUDe6DrupySfBWH3vGu1cUeAs0qrp8Zp/31uA6g7dBMz3S5TAiHghtZE3tT1r19BQM3gHaaER/nxu+P7mCwLtA51nBu/dVXxOZg+AdIw3H0Ezkv+VZMU6rprxac/UIaHvfS9rKGsHk7cuqLn/3HjwWmt1vDG5O6auVgV+333kcecFToVk5lwTPx31UWdJ6Ay4F7ZRpypuwj8w8/+OUS9dX4BrQLWVvANRVXW4kyu+qPbgmtBVNdXPH9EzkHw/fLasX8GNAM3hjdtmpTe+CosCht87Sci+JZIS69oLl80a35ANHk424az6gitnKvQfwgdxZcty3mh71DtPYW2kv4GN8SttFIVG9r+ryTqICnmFmFzYjz8/Ndw/U+Em+4Lr6FUVg0vBgLrFx6TG9EBnwn7E94VDKuk88TAvnWTGj7WOQFyykuqBjelua7p4A/HWGGpf53SomAJ331Z1xaR78XSoRIfMctTUmDY0bp0d27n0xW08rigaoa4rtoZsGPNSDCPAh9VmdwSm6C4o2qGvOUisSKs9MEOU1UZuNHvhJnhU3KUAhkoJGyvYydckV++iaxp+KJKGTwPF/vPEsb6ax2yINDYlXSJTI2EqImh2UoCH4tlTF6bWgIQWu4fSa0JB8Py7p9NrQkASHkNMfAxrS4Ghw+tB7PdBReXiIxMFJvLJBy8eGPYGJ1psYLXC+gDi4emuAhuZ5Gi3wT+y6dUHRsAvDpQKvBR6kBiNbOEMFGvAnA29zb8+REkjDa4HzjYk3J59CpixteC3wJ3b9atHSZZ7WhFcBd3ZAv9iLmOREC170LCtXnhVzds5tRZWNzsgaprxN7LlZTXP7xa5nqWmodOTVwKm7+05AROfekvDa09nSydySFxxS8KrgNPZqdgZGZMEhAa9mbsdQiuGdNGVNVUrkzxocCfBnD45I+EGAIwJ+MODoCD8ocHSAHxw4AuHPeh4/pLZ5fpARt2qJ/HjQ4GiG3w66q3PRwSWzKXJX1eX6HyZ+NHMADp1PAAAAAElFTkSuQmCC"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD8AAABCCAYAAADg4w7AAAAACXBIWXMAAAsSAAALEgHS3X78AAAFTklEQVR4nN1br3PjRhR+9VTAB1zggpCABvhASARSYNADRfqrNPqbCoQOhBicgQxqkAATk4AeqEEPpDPprOd79runVbS7kpxVv5mbG8Wyou+9fb++3fzw+vpKNmRpnhDRTHz0rayKf6w3jxQ18lmaG8IfiejKQulARI9lVTz/78hnaX5NRHcO39sT0basipdB325gTPjxirghtSOih7Iq/iCiz0S0MUsfn5t7b8dMnNjzWZp/IKLfiCgB8VVZFQd9M/LALcgb7Mqq2F7+tfsBe34B4tRE3ADLfIvYN7jBihklmDwnt30TcWWAFVaIwR2S5OgwwVJmrztlcYsBlnjOqDBRtdw5e2OFcLwnYzTApKyKr+La6+XLqjAl7wmXs7FVAI559ritsXkTZVU8ou4bXGdp/nH41+4HTJ5j/ToweckKsBhLBWDyT8L7v/rGLhLgWjzjdgwV4EgeAwsnr6lJXr4PwjM4f4wiAZ7aWySvHS5nWZq79PhHGJJZmi9VzkhCjHhJTOTvQqvK3jPxf+NAfAaSc/xoLxKglxHflTywFsnLxG5jBcjSfA7iHN9m0tuYfyqJthrxPVAjj+RVtbWvILQUw9C6rIqduGXjasRoyNO5e1vjMtEVAEuZG5pvGIae1TN0BYhuBmiUsag+438FGbnMDyDe2BaL0CAY6iEWEeRN8nT2MjctL6IF3iO2W6GMeCir4mEoQj6wLnsJEJT1mzixuf4elNHoKkAreUBWAIO/fX+RMmIUFcCJvKUC3AcmL11G5y33DwpXz3MF4KVuln8aOAP0YcRe4EweL/8sZgDz0ve+L2Epo95G7Ate5PHyO5G85lmaewsYEFB4FQUZsQ94k6dz8uqk4KoKMH+PChBEHliJTYyg7k0Z8frSIkgweSSvL0rB/RDwKG3Ei1WALp63VYD7wArw5T0qQCfyZK8A3rHbRxkNQWfyVK8AV4EVoLMRfdELeaDzHp7FiIPK4L2R72MPD0v9J/GjxZAiSJ+e77SHB0P9LrSCwUWQXslT4B4eQmQpRuYnYcSaktQXeidPnnt4SI53Qgs0AuijmgGC9hLa0KrkdIFSgZ6wr8ekE5CWMf2gzwcoFchZPXLBIJ4XsO7hoRPUmxwGP+sHqBmgVxFkUM/Tmag877NFGJy0QGR4Tmpr21G3LM0/td3ji6E9z3t4K1wmIr4JobBxHJI6D1Iag5OnevtKMrFRvb9PcAhSP0Pf07kCXIQ8nWN3jW2sFa7l58ZA/+LSSkoZcdpVBBk85l2hsvpKHZf5Dkh6XD6DK8DFPO8AnuMPbxGn+gwQLILERJ6FENfjcFIFChJBYiLP+LHpAzPlKS/LCuAtgsREnneBao0OnfuFBbx8NIClAniJIDGR5yU8a9ACX9QyP3pZDVJeMnhM5GWs1xKYZb//JJiqQcp5LyEa8iDHGfwX2/K1dIsnwVQdhnRSkmJLeOw9Q8g6wKhGR4/LW1toNCEq8vAse2/R9PLq2NzpyGuDktS4lxBjqduKl0+bbsKxOc4TC1UBpArUuJcQHXm8/EkFalFw9YmvpgpglcFj9Dy3r9KrVgVXVQD5RxO6Alj3EqIkD+j2tSn+uQLsRbfHnz0KI9YqQDRTnQ3iaOubf/XV8oxEHZ876YQxe55jVyavpe8A09AcHcMjas8z1AogHIXbtX+z9oxPuDwadRTkyW4AM/P/6RMGSjDZjYY8neP3XggfxEfc2wQQGO9GniYdFXkGPHirtL4XrAa9EqYYk6fq3s0oydN5FVxB6Z06fIVQCo8SmEmEoyUvgSVtvGv+17286QPMavjru/xARP8Bzo/KY/RZd/kAAAAASUVORK5CYII="},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABKCAYAAAAL8lK4AAAACXBIWXMAAAsSAAALEgHS3X78AAAGs0lEQVR4nOVcLXMiaRDuSx2CCCKIyAnEIoLgBCOyImJP7InMr5riN53A3Io1GAQRG7ERWRERRCKCCIKrylVzT0+azjvAQE94s9dVWxNgvt6nvz/e/eX5+Zn+z/Sr99rTJGsTUZeIpkQ0Goz7TzHj6wZAmmQ1Ijojoia+ahBRj4iGXs+ogg487pkm2SERfVaLn+HYTJPsJJrVBsgFACJqEVENf18Nxv2/oQJMvzs9oxLyAuBR/T3H8RuO9TTJmoFroiAXAAbj/oSIHvCxg+8elCq0fmoAQN9xrCu9v8MxWjvgBgA4LnovC77FsZYmWcPrWZ7kKQFMExyP6T9Qpuq3wzdf3QbkDcA9jnX1nYBw5PwsF/IGQIweKcs/Lz59//QKAA5qtg1eYg97Q7QEQJpk7K4+cUibJtlZNG9ZIS0A4DgeC+6piO4kTbJOmUcbSz9bcWo0JBLwWbmuBxXUnJYEQcDT6hCl9Rc6QCIjL/4wGPc5exsp680gnOO8dXSM3zX3xSPcb3D9m9MBOCUc5+ytNRj350hjxa+zRf+UJll3DRCiAovcwOQAUaqE1AOY43+AW700yViEOYobocBxCinhv9tpkk3BUQZujiiQVDosn8X3z2P1EHlJDAbsXKnD9WDc/04vxQ5e/Aet5ytoCv9/CFBnCIsXaqAA2zst1QQBwkelt/yi33RIixihCe7ukuZOoSoT2J69BEyviqKB0haBe7chzuF80f1DY/Xr6rM+z9IcQNyY/KFyKqwKIyjqGpGfIcV92JZrMKJ1eIyTACgTVJXexGasLIsr3W+ZBEdorvRdc+7R5ADTIrAASMs8Yw4QbkPXeNLGfQHYhxY4t21uP1e6/0qKjMchqN1lFABoUnp/hJc9xc+sIk8ljaPo/sK+QCLOFMiVgrBzZ0iVxJmGvJA0yXqQFhb9ryogOlL6b6WIAbgU3Vf3oCpB8ACghSSK/ftf+O5PLDSPJQLX1WAEO8a+XIruGxDYJtzs9LIB8iiICCdFhGubxP+s+7xQ9BAuldHsSQIGrovr7VZRV/QAQMJd6Q3ol9zIp4PjX0wCJpwfKXASh/ddIg8AJNCRZCfPCMvECSoBExBYEhr4XvS/oYBxIQ8ARNwfzfelAxkFggD3kVUq1HjxIu+iKCkV2CqSAwgjfKwjECPTeHGTgioAkCBm6/wfMYFEgR8gBbpS5dZpqgIA4fyuFvsax1qg0xQlAJbzm9QNCgkBkVSkROTls602bU0eANjqj0iAxwvqkpzYB/ESx8WXbU4eAFiRz2sGDtMh+l4CqDwvlJ2WJk8JWCwWoitcahdftp5MTUBUSu7tUm73BICUe5KYvemgq2JTKmmu7gyAKau36CW0lRffdUao0sqQlxcIcVxmhDh87To9x508Z4RENxMVvorfbu8Qve0UWa4jzzggnwpTFaIrk9xsYxTF+MUNAEJVUYW2abEJCJzTn23YZyRzniRIomI2+dqKvEPha7PYhgJBu0vuM3ZQPFlFua9X/QK55p/oAMBix+AWvyh3lZuo/gxNfM9qcgGJaBVIhUR7urAiNsGl21zJuHygz5jX87DQ04LhyRlEW0rnbYj8ZDDuj+BhznHuF4/mSWX7BQIg2KpvDSCcbJg3iBSIBAxRddoJhEo3TKzoM17rF1d9BimX10okU5IgMcB3ZXuLb7JjJNDxIWR6E4h3UdtMN1TFHjTXNFpnqpm7VjrebMvMmhkDGbjg49Om8wNQM2nTHwcyxFfSZmkve4YQFZ6sqeyEGq/3mDYJirnqX+r9C3z9j6IGzV43TUEq9LBFo0QlSXuMOzPEEZK2KVp3S+oW3a4x5R0kgZoonV8FzqshC9yrpyRtDhBysKLcNodK0mJSVfUbLwDADRZ6rDrUVveXRnt0/9KCECsAHXiNxdwiOHmBn4fWSCrd/82AoQe9mgC1BhA4kJq77xt0Ij0pQuv6jeAmZ55XZrTnFNIkbfuRCs4YjGEVfQEPkrwgtNiV/UbVaJVaRAM5SQ33k3suAq1YJcBSKCkqJGmoYqCzKyCA83oEsJLOUJVUaioNCdgVPjbU4q+Rnb47AEoTQBB14Njhqw6KfnoA6GXSZIjFL6nRe7EBUv7ausdQlF/EKgG23aZTZ9cNGLECsNQNMmLrug85VgDy/YeK47ZV7kJRAmD0VRKZvFXuqQYxe4Eljpt+Y6/4snIUMwB5KKv6jeK/3f5nimgBQG9RON5RxROhaEZkqqSc4xjIFgPIXuGHx3Oj/3+EeM+i4TZXfK5WXFKK3kMozGEsqwL/47zebfFERP8CaOL/8Aj7ELkAAAAASUVORK5CYII="},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAMAAADDpiTIAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMS1jMDAwIDc5LmRhYmFjYmIsIDIwMjEvMDQvMTQtMDA6Mzk6NDQgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMi41IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCOEUwODc2QTcyNEIxMUVDOTQyRDhBQURFMTM1QjQ5MCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCOEUwODc2QjcyNEIxMUVDOTQyRDhBQURFMTM1QjQ5MCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkI4RTA4NzY4NzI0QjExRUM5NDJEOEFBREUxMzVCNDkwIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkI4RTA4NzY5NzI0QjExRUM5NDJEOEFBREUxMzVCNDkwIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+SS340gAAAAZQTFRF2NPk////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"},function(e,t,s){"use strict";t.a="data:image/png;base64,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"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANMAAABuCAYAAAC9UyZyAAAACXBIWXMAAAsSAAALEgHS3X78AAAFVUlEQVR4nO3dMW7jRhSA4bfBtoHVJG10AysnWKVJrTZNbJ8gyQnivYFSplq5SRtXabObC0Q+QaQ6jXWAQMEY8wyCEIdD8nE4JP8PWGCxS8rSSL+HGtLym/P5LBiNjYj8KiJflu7wfyLyh4h8LyLPPJ3DIKbx+E1Evqu5t/+KyLcisp/7YA3hs/k95FHaRYTkfCEif4nIau4DNgRiyp8L6abBvfxcRD4SVHrElLemIakrgkqPmPLVNiRFUIkRU566hqQIKiFiyo9VSIqgEiGmvFiHpAgqAWLKR18hKYLqGTHloe+QFEH1iJiGlyokRVA9IaZhpQ5JEVQPiGk4Q4WkCMoYMQ1j6JAUQRkipvRyCUkRlBFiSiu3kBRBGSCmdHINSRFUR8SURteQnhpuf2r5dQiqA2LqX9eQHkTkseE+a4JKj5j6ZRHSbYv99gSVHjH1Z6iQFEElRkz9GDokRVAJEZO9XEJSBJUIMdnKLSRFUAkQk51cQ1IE1TNispF7SIqgekRM3Y0lJEVQPSGmbsYWkiKoHhBTe2MNSRGUMWJqZ+whKYIyREzNTSUkRVBGiKmZqYWkCMoAMcXbTjQkZRXUwv6ujQMxxVmKyA8d9s89JGUR1Nb+bo0DMcW577DvWEJSXYO6mevsRExxli33G1tIqmtQs3zvREz9GWtIqmtQs0NMcZr+BvOxh6TaBjXL3/hejGnhB2495xWZCk0+g2EqIammQR1n8tveV35cXt8CaEzuyT+IyJ/+z2Hu5wxKdpGfEDS1kFSToKb4+IsW/hTA376Vf/zr4yUmV9YHv6ypZn/O4IJ1TVC/TPyFpEEdA9vc+dfNlLmjlHelx+dWMO/fBl4ALqiNVoeX9wErP16bwjeagx+jqb+IxAdVHIPiv2/9WExdOSS1eVvzwNsuCU/ZbubfYJ59OLM9OVvhmtU8wAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmIN4qsOWJmIB4i8CWexfTc2CDNQMNvFqGhsLFtA/8f3BnYGZCh3kvM9MhsMFXBAW8Ch2pHTSmY2CjDWMJvEwq14Fh2OsCxMfARreMIxDs4OQaionpmoUIQH4MDMFLPxrTo6+ryj1jiRlzr/+rwMPfSSGmZx9UlXcc7mGmFjWz0knbKZ60rZt9tqzsYYYea2alrf6lGJNb1XsI7HTlbzh0Fhj9CJ2+KHviOTBz74/KqpyqYpKI2em6uDOSCZ1YL2uyLaq5tzU/14zPtngFUTkm9x3wfc0N3DBDJecC+RT5RXcTetxDcSF9qPnaT+XJ5835fL604b7mBJXe2KbhIQjaW/rnJXT8/p6V104Wfra5ibiRr8tHAVVXjd/WLJWLj21fs9IBOwd/bdilGco9V3eE1Mnav55jQrq7dDhdNTOJn3V+j7x3R/9EcoiRxtKHpbNV6KQ7wtYRCw1FD1WniUIxSeSxY5GuuT/6Jzj04x3AUFZ+sthEvJ0pqgxJImKSFkEVHXlPhYwsGsZTFAxJImMSPxXWnbwCpipqYSc2JvHH57sGx5bA2J38bBS61O5Vk8+AOPgZ6qeIlT5g7B78BBIVkrT8dCK9Ri906REwVu7Uwzd+Rmq0gNbkMO8SvaL21v+IOzBGugq97XI5VteYinS5ce3/zmIFcvapcI4u+lAuxDKmskXNp7kAQ3Dv/e1P14jI/1CFONC4YRMxAAAAAElFTkSuQmCC"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAAuCAYAAACSy7GmAAAACXBIWXMAAAsSAAALEgHS3X78AAAAxUlEQVRoge3YQQ3CQBRF0UuDABwgASSAAyQgARxQByABB0hBAjgoCob8pCRN1yWZ//rOrl3N3cwkb1FKoXcEDsCK/J7AFXhFSURugQewFogba4FLREb1pq6zTWrfiAeGXVPBIf4uIm/CfZ+4gCLyBJyBdwWHmtIdiEu1Gz4h9D9VnpDu9zGOlDSbi0eeI1U4UoUjVThSxXLQ4fkjKc8fSjx/KPD8kZ3nD0mOVOFIFY5U4UgVnj8S8/yhyPOHDM8fyc1o/gC+cLdO/ZSnK2EAAAAASUVORK5CYII="},,,function(e,t,s){"use strict";s.r(t);s(3);var i=s(7),n=s.n(i),a=(s(28),s(8)),c=s(0);n.a.render(Object(c.jsx)("span",{children:Object(c.jsx)(a.a,{})}),document.getElementById("root"))},,,,,function(e,t,s){},,,,,function(e,t,s){}],[[23,1,2]]]);
-//# sourceMappingURL=main.0b9b0faa.chunk.js.map
\ No newline at end of file
diff --git a/public/build/static/js/main.0b9b0faa.chunk.js.map b/public/build/static/js/main.0b9b0faa.chunk.js.map
deleted file mode 100644
index 62fbdce..0000000
--- a/public/build/static/js/main.0b9b0faa.chunk.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["assets/loading.png","App.js","assets/logo.png","assets/sidebar1.png","assets/sidebar2.png","assets/sidebar3.png","assets/sidebar4.png","assets/document-icon.png","assets/landing1.png","assets/landing2.png","assets/hamburger.png","index.js"],"names":["urlBase","App","props","state","menu","screen","hamburger","themeColor","highlights","currentHighlight","fontSize","fontMenu","geneInfo","popup","show","message","image","currentPam","changeMenus","bind","highlight","saveCurrentHighlight","e","parseInt","target","dataset","this","setState","console","log","mutatePam","data","size","value","design","JSON","stringify","filename","geneName","blob","Blob","type","saveAs","reader","FileReader","loading","stayOpen","onloadend","res","newState","parse","result","length","readAsText","files","targetHTML","Object","keys","targets","map","prop","primerHTML","primers","key","primerOptions","selectedArms","primerSingle","className","oligos","sense","antisense","color","name","searchForTargets","i","location","string","sequence","indexOf","revString","revComp","stringLocation","dna","push","reverse","join","preventDefault","stopPropagation","url","elements","fetch","then","json","currentState","isoForm","isoForms","options","onSubmit","pickIsoForm","isoFormSequence","makeIsoFormHighlights","startSequence","substr","stopSequence","start","stop","popupForm","chooseTerminal","isoform","terminal","tag","targetGenes","substring","response","efficiencyString","results","distal","proximal","encodeURIComponent","gene","score","scrollTop","windowHeight","window","innerHeight","document","getElementsByClassName","getBoundingClientRect","top","scrollTo","behavior","targetArea","targetSearch","primerSections","slice","primerSectionsString","Buffer","from","toString","newPam","getPrimers","selection","arm","currentArms","totalSelected","pam","origin","text","res2","targetI","feature","newFeature","loc","split","targetMatch","toLowerCase","match","revTargetMatch","index","pamStart","featureArr","date","Date","day","getDate","month","getMonth","year","getFullYear","geneArr","spaces","str","spaceArr","makeGeneArr","template","plasmidTemplate","preArm1","searchSequence","search","strand","arm1","postArm1","arm2","postArm2","mutatedPam","potentialTargets","arms","Math","floor","replaceArm1","arm1I","replaceArm2","arm2I","y","isNaN","preSplit","postSplit","root","querySelector","rootMargin","threshold","observer","IntersectionObserver","entries","forEach","entry","isIntersecting","intersectionRatio","currentHighlightEl","observe","highlightKeys","currentHighlightLocation","geneInfoPrep","letter","highlightClasses","includes","targetList","onClick","pickCutSite","onMouseEnter","highlightString","onMouseLeave","clearHighlight","offtarget","pamBox","cutsite","frameI","abs","style","backgroundColor","pamBoxReadingFrames","closeAllMenus","src","logo","alt","openMenu","display","changeScreens","saveDesign","changeThemeColor","sidebar1","pointerEvents","sidebar3","sidebar4","sidebar2","onMouseDown","selectHomologyArm","HomologyList","documentIcon","plasmidOptions","htmlOptions","default","viewFinishedDesign","downloadApeFile","downloadGuideRna","onChange","changePlasmidTemplate","downloadPlasmidTemplate","downloadOptions","landing1","for","landing2","id","openDesign","searchForGene","changeFontSize","closePopup","React","Component","ReactDOM","render","getElementById"],"mappings":"6GAAe,suX,yPCcTA,EAAU,wBACKC,E,kDACnB,WAAYC,GAAQ,IAAD,8BACjB,cAAMA,IACDC,MAAQ,CAEXC,KAAK,KACLC,OAAO,EACPC,WAAU,EACVC,YAAW,EACXC,WAAW,GACXC,iBAAkB,KAClBC,SAAS,GACTC,UAAS,EACTC,SAAS,KACTC,MAAM,CACJC,MAAK,EACLC,QAAQ,KACRC,MAAM,MAERC,WAAW,MAGb,EAAKC,YAAc,EAAKA,YAAYC,KAAjB,gBACnB,EAAKC,UAAY,EAAKA,UAAUD,KAAf,gBACjB,EAAKE,qBAAuB,EAAKA,qBAAqBF,KAA1B,gBAvBX,E,+CA2BnB,SAAYG,GACV,IAAIlB,EAAOmB,SAASD,EAAEE,OAAOC,QAAQrB,MAElCA,IAAOsB,KAAKvB,MAAMC,OACnBA,EAAO,MAETsB,KAAKC,SAAS,CAACvB,KAAKA,IAAM,iB,2BAI5B,SAAckB,GAAI,IAAD,OACXjB,EAASiB,EAAEE,OAAOC,QAAQpB,OAC9BuB,QAAQC,IAAIxB,GACZ,IAAID,EAAO,KACA,GAARC,IACDD,EAAK,GAEPsB,KAAKC,SAAS,CAACtB,OAAOkB,SAASlB,GAAQC,WAAU,EAAMF,KAAKA,IAAM,WAChEwB,QAAQC,IAAI,EAAK1B,OACN,GAARE,GACD,EAAKsB,SAAS,CAACG,WAAU,S,sBAI/B,SAASR,GACMA,EAAEE,OAAOC,QAAQpB,OAE9BqB,KAAKC,SAAS,CAACrB,WAAWoB,KAAKvB,MAAMG,c,8BAEvC,SAAiBgB,GACfI,KAAKC,SAAS,CAACpB,YAAYmB,KAAKvB,MAAMI,e,2BAExC,SAAce,M,wBAGd,SAAWA,GACTI,KAAKC,SAAS,CAACd,MAAM,CAACC,MAAK,O,uBAE7B,SAAUQ,EAAES,M,sBAOZ,SAAST,GACPI,KAAKC,SAAS,CAAChB,UAAUe,KAAKvB,MAAMQ,a,4BAEtC,SAAeW,GACb,IAAIU,EAAOT,SAASD,EAAEE,OAAOS,OAC7BP,KAAKC,SAAS,CAACjB,SAASsB,IAAM,iB,wBAIhC,WACE,IAAME,EAASC,KAAKC,UAAUV,KAAKvB,OAC/BkC,EAAWX,KAAKvB,MAAMmC,SAAS,OAC/BC,EAAO,IAAIC,KAAK,CAACN,GAAS,CAC7BO,KAAM,6BAEPC,iBAAOH,EAAMF,GACbX,KAAKC,SAAS,CAACrB,WAAU,M,wBAE3B,SAAWgB,GAAI,IAAD,OACNqB,EAAS,IAAIC,WACnBlB,KAAKC,SAAS,CAACd,MAAM,CACnBC,MAAK,EACLC,QAAQ,gDACRC,MAAM6B,IACNC,UAAS,KACR,WACDH,EAAOI,UAAY,SAACC,GAClB,IAAIC,EAAWd,KAAKe,MAAMF,EAAIxB,OAAO2B,QACrCF,EAAQ,MAAY,KACpBA,EAAQ,WAAgB,EACxB,EAAKtB,SAASsB,GAAS,WACrBrB,QAAQC,IAAI,EAAK1B,WAGlBmB,EAAEE,OAAOS,MAAMmB,QAChBT,EAAOU,WAAW/B,EAAEE,OAAO8B,MAAM,S,gCAKvC,WAAqB,IAAD,OAEdC,EADaC,OAAOC,KAAK/B,KAAKvB,MAAMuD,QAAQ,IACpBC,KAAI,SAACC,GAE/B,OAAO,gCAAK,8BAAIA,EAAJ,OAAL,IAAqB,EAAKzD,MAAMuD,QAAQ,GAAGE,SAI9CC,EAFWL,OAAOC,KAAK/B,KAAKvB,MAAM2D,SAEVH,KAAI,SAACI,GAC/B,IAAIC,EAAgB,EAAK7D,MAAM2D,QAAQC,GAEvC,GAAG,EAAK5D,MAAM8D,cAAc,EAAK9D,MAAM8D,aAAaF,GAAK,CACvD,IAAIG,EAAe,EAAK/D,MAAM8D,aAAaF,GAC3C,OAAO,gCAAK,qBAAKI,UAAU,GAAf,SAAkB,4BAAIJ,MAChC,sBAAKI,UAAU,GAAf,UACA,8BAAOD,EAAa,KACpB,8BAAM,uCAAUA,EAAa,QAC7B,8BAAM,wCAAWA,EAAa,QAC9B,8BAAM,+DAAkCA,EAAa,QACrD,8BAAM,8DAAiCA,EAAa,WAChD,0BAEN,OAAO,gCAAK,qBAAKC,UAAU,GAAf,SAAkB,4BAAIJ,MAAeC,EAAcL,KAAI,SAACO,GAClE,OAAO,sBAAKC,UAAU,GAAf,UACP,8BAAOD,EAAa,KACpB,8BAAM,uCAAUA,EAAa,QAC7B,8BAAM,wCAAWA,EAAa,QAC9B,8BAAM,+DAAkCA,EAAa,QACrD,8BAAM,8DAAiCA,EAAa,cAC7C,6BAGXnD,EAAU,gCACZ,6CACA,gCAAK,6CAAqBwC,KAC1B,gCAAK,+CACFM,KAEH,gCACE,4CACA,gCAAK,wCAAenC,KAAKvB,MAAMiE,OAAOC,SACtC,gCAAK,4CAAmB3C,KAAKvB,MAAMiE,OAAOE,mBAG9C5C,KAAKC,SAAS,CAACd,MAAM,CACnBC,MAAK,EACLC,QAAQA,EACRC,MAAM,KACN8B,UAAS,O,kCAGb,WAA2C,IAAD,OAArByB,EAAqB,uDAAf,KAAKC,EAAU,uDAAL,KAC/BpD,EAAYe,KAAKe,MAAMf,KAAKC,UAAUV,KAAKvB,MAAMM,mBAElD8D,IACDnD,EAAUmD,MAAQA,GAEpB,IAAI/D,EAAakB,KAAKvB,MAAMK,WAEzBgE,EACDhE,EAAWgE,GAAQpD,EAEnBZ,EAAWY,EAAUoD,MAAQpD,EAGZ,gBAAhBA,EAAUoD,KAEX9C,KAAK+C,mBAGL/C,KAAKC,SAAS,CAACnB,WAAWA,IAAY,WACrCoB,QAAQC,IAAI,EAAK1B,Y,oCAKtB,SAAuBuE,GACrB,IAAIjE,EAAmBiB,KAAKvB,MAAMM,iBAClCA,EAAiBkE,SAAWD,EAC5BhD,KAAKC,SAAS,CAAClB,iBAAiBA,M,4BAElC,WAAiC,IAAlBmE,EAAiB,uDAAV,KAAKnC,EAAK,uCAC9B,IAAIA,EACF,OAAOf,KAAKvB,MAAM0E,SAASC,QAAQF,GAErC,IAAID,EAAWjD,KAAKvB,MAAM0E,SAASC,QAAQF,GAC3ChD,QAAQC,IAAI,WAAW8C,GACVC,EAAOxB,OAEpB,IAAc,GAAXuB,EAAa,CAEd,IAAII,EAAYrD,KAAKsD,QAAQJ,GAC7BhD,QAAQC,IAAI,MAAMkD,GAClBJ,EAAWjD,KAAKvB,MAAM0E,SAASC,QAAQC,GAKzC,OAAOJ,I,6BAET,SAAgBC,GAA6B,IAAtBL,EAAqB,uDAAf,KAAK9B,EAAU,uDAAL,KACrCb,QAAQC,IAAI,WAAW+C,EAAO,WAAWL,GAEzC,IAAII,EAAWjD,KAAKuD,eAAeL,EAAOnC,GAC1Cb,QAAQC,IAAI8C,IACE,GAAXA,IACDA,EAAWjD,KAAKuD,eAAevD,KAAKsD,QAAQJ,GAAQnC,KAExC,GAAXkC,IACDA,EAAW,GAEb,IAAIvB,EAASwB,EAAOxB,OAChBmB,IACFA,EAAQ,4BAIV7C,KAAKC,SAAS,CAAClB,iBAAiB,CAC9BkE,SAASA,EACTvB,OAAOA,EACPmB,MAAMA,EACNC,KAAM/B,GAAK,e,4BAIhB,c,qBAKA,SAAQyC,GAEP,IADA,IAAIF,EAAU,GACNN,EAAE,EAAEA,EAAEQ,EAAI9B,OAAOsB,IACX,MAATQ,EAAIR,GAAUM,EAAQG,KAAK,KACb,MAATD,EAAIR,GAAWM,EAAQG,KAAK,KACnB,MAATD,EAAIR,GAAWM,EAAQG,KAAK,KACnB,MAATD,EAAIR,GAAWM,EAAQG,KAAK,KACnB,MAATD,EAAIR,GAAWM,EAAQG,KAAK,KACnB,MAATD,EAAIR,GAAWM,EAAQG,KAAK,KACnB,MAATD,EAAIR,GAAWM,EAAQG,KAAK,KACnB,MAATD,EAAIR,IAAWM,EAAQG,KAAK,KAEtC,OAAOH,EAAQI,UAAUC,KAAK,M,2BAM9B,SAAc/D,GAAI,IAAD,OACZA,IACDA,EAAEgE,iBACFhE,EAAEiE,mBAGJ,IAAIC,EAAMxF,EAAQ,0BAA0BsB,EAAEE,OAAOiE,SAASnD,SAASL,MACvEP,KAAKC,SAAS,CAACd,MAAM,CACnBC,MAAK,EACLC,QAAQ,oDACRC,MAAM6B,IACNC,UAAS,KACP,WACF4C,MAAMF,GAAKG,MAAK,SAAC3C,GAAQ,OAAOA,EAAI4C,UAASD,MAAK,SAAC/E,GACjDgB,QAAQC,IAAI,WAAWjB,GACvB,IAAIiF,EAAe,EAAK1F,MACxB,GAAqB,MAAlBS,EAASkF,QACVD,EAAahF,MAAQ,CACnBC,MAAK,GAEP+E,EAAaC,QAAU,SAClB,CAEL,IAAIC,EAAW5D,KAAKe,MAAMtC,EAASmF,UAE/BC,EAAU,sBAAK7B,UAAU,eAAf,UAA8B,qDAA4B,uBAAM8B,SAAU,EAAKC,YAAY/E,KAAK,GAAtC,UAA6C,wBAAQqD,KAAK,UAAb,SACnHuB,EAASpC,KAAI,SAAAmC,GACX,OAAO,wBAAQ7D,MAAO6D,EAAf,SAAuCA,GAAVA,QAE9B,uBAAOrD,KAAK,SAASR,MAAM,iBAErC4D,EAAahF,MAAQ,CACnBC,MAAK,EACLC,QAAQiF,EACRhF,MAAM,MAER6E,EAAaC,QAAUlF,EAASkF,QAElCD,EAAavD,SAAW1B,EAAS4D,KACjCqB,EAAaxF,OAAS,EACtBwF,EAAahB,SAAWjE,EAASiE,SACjCgB,EAAaM,gBAAkBvF,EAASuF,gBAGxC,EAAKxE,SAASkE,GAAa,WACzB,EAAKO,mC,mCAKb,WACE,IAAIC,EAAgB3E,KAAKvB,MAAMgG,gBAAgBG,OAAO,EAAE,GACpDC,EAAe7E,KAAKvB,MAAMgG,gBAAgBG,OAAO5E,KAAKvB,MAAMgG,gBAAgB/C,OAAO,GAAG1B,KAAKvB,MAAMgG,gBAAgB/C,QAKjH5C,EAAa,CACfgG,MAAM,CACJ7B,SANajD,KAAKvB,MAAM0E,SAASC,QAAQuB,GAOzCjD,OAAO,EACPmB,MAAM,WAERkC,KAAK,CACH9B,SAVYjD,KAAKvB,MAAM0E,SAASC,QAAQyB,GAAc,EAWtDnD,OAAO,EACPmB,MAAM,YAGNmC,EAAY,sBAAKvC,UAAU,eAAf,UAA8B,iDAAwB,uBAAM8B,SAAUvE,KAAKiF,eAAexF,KAAKO,MAAzC,UACpE,yBAAQ8C,KAAK,MAAb,UAAmB,wBAAQvC,MAAM,IAAd,wBAAqC,wBAAQA,MAAM,IAAd,2BACxD,uBAAOQ,KAAK,SAASR,MAAM,iBAE7BP,KAAKC,SAAL,aACEtB,OAAO,EACPQ,MAAM,CACJC,MAAK,GAEPN,WAAWA,GALb,QAMQ,CACJM,MAAK,EACLC,QAAQ2F,EACR1F,MAAM,KACN8B,UAAS,O,yBAIf,SAAYxB,GAAG,IAAD,OACZA,EAAEgE,iBAEF,IAAIQ,EAAUxE,EAAEE,OAAOoF,QAAQ3E,MAG5B6D,GAASpE,KAAKvB,MAAM2F,QAErBpE,KAAK0E,wBAGLV,MADU1F,EAAQ,8BAA8B8F,GACrCH,MAAK,SAAC3C,GAAQ,OAAOA,EAAI4C,UAASD,MAAK,SAAC/E,GAEjD,IAAIiF,EAAe,EAAK1F,MACxB0F,EAAaC,QAAUlF,EAASkF,QAChCD,EAAaM,gBAAkBvF,EAASuF,gBAGxC,IAAIE,EAAgB,EAAKlG,MAAMgG,gBAAgBG,OAAO,EAAE,GACpDC,EAAe,EAAKpG,MAAMgG,gBAAgBG,OAAO,EAAKnG,MAAMgG,gBAAgB/C,OAAO,GAAG,EAAKjD,MAAMgG,gBAAgB/C,QAKjH5C,EAAa,CACfgG,MAAM,CACJ7B,SANa,EAAKxE,MAAM0E,SAASC,QAAQuB,GAOzCjD,OAAO,EACPmB,MAAM,WAERkC,KAAK,CACH9B,SAVY,EAAKxE,MAAM0E,SAASC,QAAQyB,GAAc,EAWtDnD,OAAO,EACPmB,MAAM,YAGVsB,EAAarF,WAAaA,EAC1B,IAAIkG,EAAY,sBAAKvC,UAAU,eAAf,UAA8B,iDAAwB,uBAAM8B,SAAU,EAAKU,eAAexF,KAAK,GAAzC,UACpE,yBAAQqD,KAAK,MAAb,UAAmB,wBAAQvC,MAAM,IAAd,wBAAqC,wBAAQA,MAAM,IAAd,2BACxD,uBAAOQ,KAAK,SAASR,MAAM,iBAG7B4D,EAAahF,MAAQ,CACnBC,MAAK,EACLC,QAAQ2F,EACR1F,MAAM,KACN8B,UAAS,GASX,EAAKnB,SAASkE,GAAa,oB,yBAMjC,SAAYrE,GACVE,KAAKL,qBAAqB,4BAC1BK,KAAKC,SAAS,CACZ+B,QAAQ,CAAClC,GACTpB,KAAK,EACLC,OAAO,EACPyB,WAAU,M,4BAGd,SAAeR,GAGb,IAAIoD,EAFJpD,EAAEgE,iBAGF,IAAIuB,EAAWvF,EAAEE,OAAOsF,IAAI7E,MACf,KAAV4E,EACDnC,EAAIhD,KAAKvB,MAAMK,WAAWgG,MAAM7B,SACd,KAAVkC,IACRnC,EAAIhD,KAAKvB,MAAMK,WAAWiG,KAAK9B,UAGjC,IAAIoC,EAAcrF,KAAKvB,MAAM0E,SAASmC,UAAUtC,EAAE,GAAGA,EAAE,IAEnDc,EAAMxF,EAAQ,sCAAsC+G,EAExDrF,KAAKC,SAAS,CAACd,MAAM,CACnBC,MAAK,EACLC,QAAQ,8BAAK,4DAA8B,uBAA9B,iCACbC,MAAM6B,IACNC,UAAS,GAET+D,SAASA,IACT,WAAW,IAAD,OACVnB,MAAMF,GAAKG,MAAK,SAAC3C,GAAQ,OAAOA,EAAI4C,UAASD,MAAK,SAACsB,GAEjD,IAAIC,EAAmBD,EAASE,QAAQxD,KAAI,SAACnC,GAC3C,OAAOA,EAAO4F,OAAO5F,EAAO6F,YAG9B,EAAK1F,SAAS,CAACd,MAAM,CACnBC,MAAK,EACLC,QAAQ,4DACRC,MAAM6B,IACNC,UAAS,GAETY,QAAQuD,EAASE,UACjB,WAAW,IAAD,OACN3B,EAAMxF,EAAQ,uCAAuCsH,mBAAmBJ,EAAiB7B,KAAK,OAClGK,MAAMF,GAAKG,MAAK,SAAC3C,GAAO,OAAOA,EAAI4C,UAASD,MAAK,SAACsB,GAGhD,IADA,IAAIvD,EAAU,GACNgB,EAAE,EAAEA,EAAE,EAAKvE,MAAMuD,QAAQN,OAAOsB,IAAI,CAC1C,IAAIlD,EAAS,EAAKrB,MAAMuD,QAAQgB,GAC5B6C,EAAO/F,EAAO4F,OAAO5F,EAAO6F,SAEhC7F,EAAOgG,MAAQP,EAASM,GACxB7D,EAAQyB,KAAK3D,GAEf,EAAKG,SAAS,CAACd,MAAM,CACnBC,MAAK,GAEL4C,QAAQA,EACRtD,KAAK,IACL,WACA,IACIqH,EADAZ,EAAWnF,KAAKvB,MAAM0G,SAEtBa,EAAeC,OAAOC,YAExBH,EADW,KAAVZ,EACWgB,SAASC,uBAAuB,SAAS,GAAGC,wBAAwBC,IAGpEH,SAASC,uBAAuB,QAAQ,GAAGC,wBAAwBC,IAEjFpG,QAAQC,IAAI,eAAe4F,EAAUC,GACrCG,SAASC,uBAAuB,YAAY,GAAGG,SAAS,CACtDD,IAAKP,EAAWC,EAAa,EAC7BQ,SAAU,4B,8BAQxB,WACEtG,QAAQC,IAAI,wBAEZ,IAAIsG,EAAazG,KAAKvB,MAAMM,iBAAiBkE,SACzCoC,EAAcrF,KAAKvB,MAAM0E,SAASyB,OAAO6B,EAAW,GAAG,KAC3DvG,QAAQC,IAAIsG,GAEZ,IAAI3C,EAAMxF,EAAQ,sCAAsC+G,EACxDrF,KAAKC,SAAS,CAACd,MAAM,CACnBC,MAAK,EACLC,QAAQ,2DACRC,MAAM6B,IACNC,UAAS,KAET,WAAW,IAAD,OACV4C,MAAMF,GAAKG,MAAK,SAAC3C,GAAQ,OAAOA,EAAI4C,UAASD,MAAK,SAACsB,GAEjD,IAAIC,EAAmBD,EAASE,QAAQxD,KAAI,SAACnC,GAC3C,OAAOA,EAAO4F,OAAO5F,EAAO6F,YAG9B,EAAK1F,SAAS,CAACd,MAAM,CACnBC,MAAK,EACLC,QAAQ,4DACRC,MAAM6B,IACNC,UAAS,GAETY,QAAQuD,EAASE,UACjB,WAAW,IAAD,OACN3B,EAAMxF,EAAQ,uCAAuCsH,mBAAmBJ,EAAiB7B,KAAK,OAClGK,MAAMF,GAAKG,MAAK,SAAC3C,GAAO,OAAOA,EAAI4C,UAASD,MAAK,SAACsB,GAIhD,IADA,IAAIvD,EAAU,GACNgB,EAAE,EAAEA,EAAE,EAAKvE,MAAMuD,QAAQN,OAAOsB,IAAI,CAC1C,IAAIlD,EAAS,EAAKrB,MAAMuD,QAAQgB,GAC5B6C,EAAO/F,EAAO4F,OAAO5F,EAAO6F,SAEhC7F,EAAOgG,MAAQP,EAASM,GACxB7D,EAAQyB,KAAK3D,GAGf,EAAKG,SAAS,CAACd,MAAM,CACnBC,MAAK,EACLC,QAAQ,4DACRC,MAAM6B,IACNC,UAAS,GAETY,QAAQA,IACR,6B,wBAUZ,WAAc,IAAD,OAEL0E,EAAoC,KAArB1G,KAAKvB,MAAM0G,SAAcnF,KAAKvB,MAAMK,WAAWgG,MAAM7B,SAASjD,KAAKvB,MAAMK,WAAWiG,KAAK9B,SAC9G/C,QAAQC,IAAI,qBAAqBuG,GACjC,IAAMC,EAAiB,CACrB,cAAc3G,KAAKvB,MAAM0E,SAASyD,MAAMF,EAAa,KAAMA,EAAa,KACxE,cAAc1G,KAAKvB,MAAM0E,SAASyD,MAAMF,EAAa,IAAKA,EAAa,KACvE,cAAc1G,KAAKvB,MAAM0E,SAASyD,MAAMF,EAAa,IAAKA,EAAa,KACvE,cAAc1G,KAAKvB,MAAM0E,SAASyD,MAAMF,EAAa,IAAMA,EAAa,OAEtEG,EAAuBC,EAAOC,KAAKtG,KAAKC,UAAUiG,IAAiBK,SAAS,UAChFhH,KAAKC,SAAS,CACZd,MAAM,CACJC,MAAK,EACLC,QAAQ,iEACRC,MAAM6B,IACNC,UAAS,KAEX,WACAlB,QAAQC,IAAI7B,EAAQ,qCAAqCuI,GACzD7C,MAAM1F,EAAQ,qCAAqCuI,GAAsB5C,MAAK,SAAA3C,GAAO,OAAOA,EAAI4C,UAAUD,MAAK,SAAC3C,GAC9GpB,QAAQC,IAAImB,GACZ,EAAKrB,SAAS,CAACmC,QAAQd,EAAI5C,KAAK,EAAES,MAAM,CACtCC,MAAK,EACLC,QAAQ,iEACRC,MAAM6B,IACNC,UAAS,KAET,WACAlB,QAAQC,IAAI,EAAK1B,kB,uBAKzB,SAAUmB,GAAG,IAAD,OACVA,EAAEgE,iBACF,IAAIqD,EAASrH,EAAEE,OAAOiE,SAASkD,OAAO1G,MAEtCP,KAAKC,SAAS,CAACV,WAAW0H,EAAOvI,KAAK,EAAEC,OAAO,EAAEyB,WAAU,IAAO,WAChEF,QAAQC,IAAI,eACZD,QAAQC,IAAI,EAAK1B,OACb,EAAKA,MAAM2D,SAAqC,IAA3B,EAAK3D,MAAM2D,QAAQV,QAC1C,EAAKwF,kB,+BAIX,SAAkBC,EAAUC,GAAK,IAAD,OAC1BC,EAAc5G,KAAKe,MAAMf,KAAKC,UAAWV,KAAKvB,MAAM8D,aAAgBvC,KAAKvB,MAAM8D,aAAd,KACrE8E,EAAYD,GAAOD,EACnBnH,KAAKL,qBAAqB,wBAAwByH,GAClDpH,KAAKC,SAAS,CAACsC,aAAa8E,IAAa,WAEvC,EAAKpH,SAAS,CAAClB,iBAAiB,OAAM,WACpC,IAAIuI,EAAgBxF,OAAOC,KAAK,EAAKtD,MAAM8D,cACxC+E,EAAc5F,QAA8B,GAAtB4F,EAAc5F,SAErCxB,QAAQC,IAAI,aACZD,QAAQC,IAAI7B,EAAQ,4BAA4B,EAAKG,MAAMuD,QAAQ,GAAG0D,OAAO,EAAKjH,MAAMuD,QAAQ,GAAG2D,SAAS,EAAKlH,MAAMuD,QAAQ,GAAGuF,KAClI,EAAKtH,SAAS,CACZd,MAAM,CACJC,MAAK,EACLC,QAAQ,8DACRC,MAAM6B,IACNC,UAAS,KAEX,WACA4C,MAAM1F,EAAQ,4BAA4B,EAAKG,MAAMuD,QAAQ,GAAG0D,OAAO,EAAKjH,MAAMuD,QAAQ,GAAG2D,SAAS,EAAKlH,MAAMuD,QAAQ,GAAGuF,KAAKtD,MAAK,SAAA3C,GAAO,OAAOA,EAAI4C,UAAUD,MAAK,SAAC3C,GACtKpB,QAAQC,IAAImB,GACRA,EAAIqB,OACN,EAAK1C,SAAS,CACZvB,KAAK,EACLS,MAAO,CACLC,MAAK,KAIX,EAAKa,SAAS,CACVvB,KAAK,EACLgE,OAAOpB,EACPnC,MAAO,CACPC,MAAK,oB,6BAYrB,WAAmB,IAAD,OAChB4E,MAAMiC,OAAOhD,SAASuE,OAAO,gCAAgCvD,MAAK,SAAC3C,GAAO,OAAOA,EAAImG,UAAUxD,MAAK,SAAC3C,GACnG,IAAMjB,EAAOiB,EACb0C,MAAMiC,OAAOhD,SAASuE,OAAO,8BAA8BvD,MAAK,SAAC3C,GAAO,OAAOA,EAAImG,UAASxD,MAAK,SAACyD,GAChG,IAWIC,EAXEC,EAAUF,EACVG,EAAa,SAACC,EAAKhF,EAAMD,GAC7B,OAAO+E,EACNG,MAAM,gBAAgBpE,KAAKmE,GAC3BC,MAAM,iBAAiBpE,KAAKb,GAC5BiF,MAAM,kBAAkBpE,KAAKd,IAE5BgD,EAAO,EAAKpH,MAAM0E,SAChBrD,EAAS,EAAKrB,MAAMuD,QAAQ,GAAG0D,OAAOsB,WAAW,EAAKvI,MAAMuD,QAAQ,GAAG2D,SAASqB,WAChFgB,EAAcnC,EAAKoC,cAAcC,MAAMpI,EAAOmI,eAC9CE,EAAiBtC,EAAKoC,cAAcC,MAAM,EAAK5E,QAAQxD,EAAOmI,gBAEhED,EACFL,EAAUK,EAAYI,MAAM,EACnBD,IACTR,EAAUQ,EAAeC,OAE3B,IAAMC,EAAWF,EAAeR,EAAQ,EAAEA,EAAQ,GAC5C7C,EAAQ,EAAEjF,SAAS,EAAKpB,MAAMK,WAAWgG,MAAM7B,UAC/C8B,EAAO,EAAElF,SAAS,EAAKpB,MAAMK,WAAWiG,KAAK9B,UACnD4C,EAAQ,EAAKpH,MAAMc,WAAgBsG,EAAKjB,OAAO,EAAEyD,EAAS,GAAG,EAAK5J,MAAMc,WAAWsG,EAAKjB,OAAOyD,EAAS,EAAExC,EAAKnE,QAAjFmE,EAC9B,IAAMyC,EAAa,CACjBT,EAAW/C,EAAM,MAAMA,EAAM,GAAG,cAAc,WAC9C+C,EAAW9C,EAAK,MAAMA,EAAK,GAAG,aAAa,WAC3C8C,EAAYhI,SAAS,EAAE,EAAKpB,MAAMK,WAAX,eAA4C,MAAMe,SAAS,EAAE,EAAKpB,MAAMK,WAAX,eAA2C,EAAKL,MAAMK,WAAX,aAAyC,yBAAyB,WACjM+I,EAAYhI,SAAS,EAAE,EAAKpB,MAAMK,WAAX,eAA4C,MAAMe,SAAS,EAAE,EAAKpB,MAAMK,WAAX,eAA2C,EAAKL,MAAMK,WAAX,aAAyC,yBAAyB,WACjM+I,EAAYhI,SAAS,EAAE,EAAKpB,MAAMK,WAAX,eAA4C,MAAMe,SAAS,EAAE,EAAKpB,MAAMK,WAAX,eAA2C,EAAKL,MAAMK,WAAX,aAAyC,qBAAqB,WAC7L+I,EAAYhI,SAAS,EAAE,EAAKpB,MAAMK,WAAX,eAA4C,MAAMe,SAAS,EAAE,EAAKpB,MAAMK,WAAX,eAA2C,EAAKL,MAAMK,WAAX,aAAyC,qBAAqB,WAC7L+I,EAAWF,EAAQ,MAAM9H,SAAS8H,GAAS,IAAI,SAAS,WACxDE,EAAWQ,EAAS,MAAMxI,SAASwI,GAAU,GAAG,MAAM,YA+BlDE,EAAO,IAAIC,KACXC,EAAMF,EAAKG,UACXC,EAHS,CAAC,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,MAAM,OAG7DJ,EAAKK,YACpBC,EAAON,EAAKO,cAQZtI,EAPUH,EACf0H,MAAM,cAAcpE,KAAK2E,EAAW3E,KAAK,KACzCoE,MAAM,UAAUpE,KAAK,EAAKlF,MAAMmC,UAChCmH,MAAM,YAAYpE,KAAK,EAAKlF,MAAM0E,SAASzB,QAC3CqG,MAAM,UAAUpE,KAAK8E,EAAI,IAAIE,EAAM,IAAIE,GACvCd,MAAM,UAAUpE,KAtCG,WAUlB,IARA,IAAIoF,EAAU,GACRC,EAAS,SAACC,GAEd,IADA,IAAIC,EAAW,GACPlG,EAAE,EAAEA,EAAE,EAAEiG,EAAIvH,OAAOsB,IACzBkG,EAASzF,KAAK,IAEhB,OAAOyF,GAEDlG,EAAE,EAAEA,EAAE6C,EAAKnE,QAAQ,CAIzB,GAHGsB,EAAE,KAAK,GACR+F,EAAQtF,KAAK,MAER,IAAJT,GAAOA,EAAE,KAAK,EAAG,EACEA,EAAE,GAAGgE,WACzB+B,EAAQtF,KAAKuF,EAAOhG,EAAE,GAAGW,KAAK,MAAMX,EAAE,GAAG,KAExCA,EAAE,GAAG6C,EAAKnE,OACXqH,EAAQtF,KAAKoC,EAAKe,MAAM5D,EAAE6C,EAAKnE,SAE/BqH,EAAQtF,KAAKoC,EAAKe,MAAM5D,EAAEA,EAAE,KAE9B+F,EAAQtF,KAAK,IACbT,GAAI,GAEN,OAAO+F,EAAQpF,KAAK,KAYAwF,IAGlBxI,EAAW,EAAKlC,MAAMmC,SAAS,OAC/BC,EAAO,IAAIC,KAAK,CAACN,GAAS,CAC7BO,KAAM,6BAEPC,iBAAOH,EAAMF,W,mCAInB,SAAsBf,GAAG,IAAD,OAClBwJ,EAAWxJ,EAAEE,OAAOS,MAExBP,KAAKC,SAAS,CAACoJ,gBAAgBD,IAAU,WACvClJ,QAAQC,IAAI,EAAK1B,MAAM4K,sB,qCAG3B,SAAwBzJ,GAAG,IAAD,OAExB,GADAA,EAAEgE,kBACE5D,KAAKvB,MAAM4K,gBAAiB,OAAO,EAEvC,IAAMvF,EAAOmC,OAAOhD,SAASuE,OAAO,mBAAqBxH,KAAKvB,MAAM4K,gBAAgBtB,MAAM,KAAKpE,KAAK,OAAQ,OAC5GzD,QAAQC,IAAI2D,GACZE,MAAMF,GAAKG,MAAK,SAAC3C,GAAO,OAAOA,EAAImG,UAASxD,MAAK,SAAC5D,GAChD,IAAMiJ,EAAUjJ,EAAK0H,MAAM,mBAAmB,GAC1CwB,EAAiB,EAAK9K,MAAMuD,QAAQ,GAAG0D,OAAO,EAAKjH,MAAMuD,QAAQ,GAAG2D,SAAS,EAAKlH,MAAMuD,QAAQ,GAAGuF,IACjGb,EAAe,EAAKjI,MAAM0E,SAASqG,OAAsC,MAA/B,EAAK/K,MAAMuD,QAAQ,GAAGyH,OAAa,EAAKnG,QAAQiG,GAAgBA,GAC5GG,EAAO,EAAKjL,MAAM0E,SAASyD,MAAMF,EAAa,IAAMA,GAClDiD,EAAWtJ,EAAK0H,MAAM,iBAAiB,GAAGA,MAAM,mBAAmB,GACrE6B,EAAO,EAAKnL,MAAM0E,SAASyD,MAAMF,EAAcA,EAAa,KAC1DmD,EAAWxJ,EAAK0H,MAAM,iBAAiB,GAC7C,GAAG,EAAKtJ,MAAMqL,WAAY,CACxB,IAAML,EAAS,EAAKhL,MAAMsL,iBAAiB,GAAGN,OACxC3J,EAAkB,MAAT2J,EAAa,EAAKnG,QAAQ,EAAK7E,MAAMqB,QAAQ,EAAKrB,MAAMqB,OACnEkK,EAAON,EAAKE,EACVjC,EAAUqC,EAAK/B,cAAcC,MAAMpI,EAAOmI,eAMhDyB,GAJEM,EADU,MAATP,EACMO,EAAKpF,OAAO,EAAE+C,EAAQS,OAAO,EAAK3J,MAAMc,WAAWyK,EAAKpF,OAAO+C,EAAQS,MAAM,EAAE4B,EAAKtI,QAEpFsI,EAAKpF,OAAO,EAAE+C,EAAQS,MAAMtI,EAAO4B,OAAO,GAAG,EAAKjD,MAAMc,WAAWyK,EAAKpF,OAAO+C,EAAQS,MAAMtI,EAAO4B,OAAOsI,EAAKtI,SAE7GkF,MAAM,EAAEqD,KAAKC,MAAMF,EAAKtI,OAAO,GAAG,GAC9CkI,EAAOI,EAAKpD,MAAMqD,KAAKC,MAAMF,EAAKtI,OAAO,GAAGsI,EAAKtI,QAQnD,IANA,IAAIyI,EAAc9J,EAAK0H,MAAM,mBAAmB,GAAGA,MAAM,iBAAiB,GAAGA,MAAM,IAC/EqC,EAAQ,EACRC,EAAchK,EAAK0H,MAAM,mBAAmB,GAAGA,MAAM,iBAAiB,GAAGA,MAAM,IAC/EuC,EAAQ,EAGJC,EAAE,EAAEA,EAAEJ,EAAYzI,OAAO6I,IACX,MAAjBJ,EAAYI,IAA2B,OAAjBJ,EAAYI,IAAYC,MAAML,EAAYI,MAEjEJ,EAAYI,GAAKb,EAAKU,GACtBA,KAIJ,IAAI,IAAIG,EAAE,EAAEA,EAAEF,EAAY3I,OAAO6I,IACX,MAAjBF,EAAYE,IAA2B,OAAjBF,EAAYE,IAAYC,MAAMH,EAAYE,MAEjEF,EAAYE,GAAKX,EAAKU,GACtBA,KAKJ,IACM9J,EADQ8I,EAAUa,EAAYxG,KAAK,IAAMgG,EAAWU,EAAY1G,KAAK,IAAMkG,EAE7ElJ,EAAW,EAAKlC,MAAM4K,gBAAgB,QAAQ,EAAK5K,MAAMmC,SAAS,OAClEC,EAAO,IAAIC,KAAK,CAACN,GAAS,CAC5BO,KAAM,6BAERC,iBAAOH,EAAMF,Q,8BAGjB,WAAmB,IAAD,OACVmD,EAAMmC,OAAOhD,SAASuE,OAAO,qBACnCxD,MAAMF,GAAKG,MAAK,SAAC3C,GAAO,OAAOA,EAAImG,UAASxD,MAAK,SAAC5D,GAChD,IAAIoK,EAAWpK,EAAK0H,MAAM,uBAAuB,GAC7C2C,EAAYrK,EAAK0H,MAAM,qBAAqB,GAC5CpF,EAAQ,EAAKlE,MAAMiE,OAAOC,MAAM2C,UAAU,EAAE,GAAG,IAAI,EAAK7G,MAAMiE,OAAOC,MAAM2C,UAAU,EAAE,IAAI,IAAI,EAAK7G,MAAMiE,OAAOC,MAAM2C,UAAU,IAIjIzE,EAAO,IAAIC,KAAK,CAHL2J,EAAS9H,EAAM+H,GAGA,CAC7B3J,KAAM,6BAEPC,iBAAOH,EALQ,+B,gCASnB,WACE,IAAIyD,EAAU,CACZqG,KAAMxE,SAASyE,cAAc,aAC7BC,WAAY,MACZC,UAAW,GAgBTC,EAAW,IAAIC,sBAdO,SAACC,GACzBA,EAAQC,SAAQ,SAAAC,GACd,GAAIA,EAAMC,eAAgB,CACbD,EAAMrL,OAEbqL,EAAME,wBAS2C/G,GACvDgH,EAAqBnF,SAASyE,cAAc,mBAC7CU,GACDP,EAASQ,QAAQD,K,oBAKrB,WAAU,IAAD,OA8CDE,EAAiBxL,KAAKvB,MAAMK,WAAgBgD,OAAOC,KAAK/B,KAAKvB,MAAMK,YAA5B,KAEvCC,EAAoBiB,KAAKvB,MAAMM,iBAAsBiB,KAAKvB,MAAMM,iBAAhB,KAChD0M,EAA4B1M,EAAsBA,EAAiBkE,SAAtB,KAC7CyI,EAAgB1L,KAAKvB,MAAM0E,SAAcnD,KAAKvB,MAAM0E,SAAS4E,MAAM,IAAI9F,KAAI,SAAC0J,EAAO3I,GACvF,IAAI4I,EAAmB,GAKvB,GAJG7M,GAAkBiE,GAAGyI,GAA0BzI,EAAEyI,EAAyB1M,EAAiB2C,SAC5FkK,EAAiBnI,KAAK,qBACtBmI,EAAiBnI,KAAK1E,EAAiB+D,OAEtC0I,GAAeA,EAAc9J,OAAO,EACrC,IAAI,IAAI6I,EAAE,EAAEA,EAAEiB,EAAc9J,OAAO6I,IAAI,CACrC,IAAIlI,EAAMmJ,EAAcjB,GACpBxL,EAAmB,EAAKN,MAAMK,WAAWuD,GACzCyC,EAAQ/F,EAAiBkE,SACzB8B,EAAOD,EAAM/F,EAAiB2C,OAC/BsB,GAAG8B,GAAO9B,EAAE+B,IACT6G,EAAiBC,SAASxJ,IAC5BuJ,EAAiBnI,KAAKpB,IAK9B,OAAO,qBAAMI,UAAWmJ,EAAiBjI,KAAK,KAAK,iBAA5C,SAA+DgI,OAnB9B,KAqBpCG,EAAc9L,KAAKvB,MAAMuD,QAAahC,KAAKvB,MAAMuD,QAAQC,KAAI,SAACnC,GAClE,OAAO,sBAAK2C,UAAW,kBAAmBgJ,GAAyB,YAAsCM,QAAUN,EAA8B,EAAKO,YAAYvM,KAAK,EAAKK,GAAhC,KAAyCmM,aAAc,EAAKC,gBAAgBzM,KAAK,EAAKK,EAAO4F,OAAO5F,EAAO6F,SAAS7F,EAAOyH,IAAI,2BAA2B,MAAO4E,aAAc,EAAKC,eAAe3M,KAAK,GAA7U,UACL,8BAAMK,EAAO4F,OAAO5F,EAAO6F,SAAS7F,EAAOyH,MAC3C,gCAAK,gDAA2BzH,EAAOgG,MAAUhG,EAAOgG,MAAX,OAC7C,gCAAK,4CAAsBhG,EAAO2J,UAClC,gCAAK,iDAA2B3J,EAAOuM,mBALJ,KA0CjCC,EAAS,sBAAK7J,UAAU,cAAf,UACZ,kDACA,2CApCyB,WAC1B,GAAI,EAAKhE,MAAMK,WAAWyN,QAA1B,CAWA,IARA,IAAIzH,EAAQjF,SAASY,KAAKe,MAAMf,KAAKC,UAAU,EAAKjC,MAAMK,WAAWgG,MAAM7B,YACvEsJ,EAAU1M,SAAS,EAAKpB,MAAMK,WAAWyN,QAAQtJ,UACjDC,EAAS,GACTsJ,EAASvC,KAAKwC,KAAKF,EAAUzH,GAAS,GAAG,EACzCY,EAAS,EAAKjH,MAAMuD,QAAQ,GAAG0D,OAAOqC,MAAM,IAC5CpC,EAAW,EAAKlH,MAAMuD,QAAQ,GAAG2D,SAASoC,MAAM,IAChDR,EAAM,EAAK9I,MAAMuD,QAAQ,GAAGuF,IAAIQ,MAAM,IAElC/E,EAAE,EAAEA,EAAE0C,EAAOhE,OAAOsB,IAC1BE,EAAOO,KAAK,gCAAMiC,EAAO1C,GAAG,8BAAMwJ,QAClC1H,GAAc,EACd0H,EAASvC,KAAKwC,KAAKF,EAAUzH,GAAS,GAAG,EAG3C,IAAI,IAAI9B,EAAE,EAAEA,EAAE,EAAKvE,MAAMuD,QAAQ,GAAG2D,SAASjE,OAAOsB,IAClDE,EAAOO,KAAK,gCAAMkC,EAAS3C,GAAG,8BAAMwJ,QACpC1H,GAAc,EACd0H,EAASvC,KAAKwC,KAAKF,EAAUzH,GAAS,GAAG,EAG3C5B,EAAOO,KAAK,8BAAM,OAClB,IAAI,IAAIT,EAAE,EAAEA,EAAE,EAAKvE,MAAMuD,QAAQ,GAAGuF,IAAI7F,OAAOsB,IAC7CE,EAAOO,KAAK,sBAAKiJ,MAAO,CAACC,gBAAgB,WAA7B,UAA0CpF,EAAIvE,GAAG,8BAAMwJ,QACnE1H,GAAc,EACd0H,EAASvC,KAAKwC,KAAKF,EAAUzH,GAAS,GAAG,EAI3C,OAAO,qBAAKrC,UAAU,aAAf,SAA6BS,KAIrB0J,MACd,8BAAK,uBAAMrI,SAAUvE,KAAKI,UAAUX,KAAKO,MAApC,UAA2C,uBAAO8C,KAAK,SAAS/B,KAAK,SAAS,uBAAOA,KAAK,SAASR,MAAM,gBAC9G,4CACA,sBAAKkC,UAAU,cAAf,UACC,8BAAK,qCAAO,uBAAP,cACL,sBAAKA,UAAU,QAAf,UACE,sBAAKA,UAAU,SAAf,UAAwB,qBAAKA,UAAU,OAAf,eAA6B,qBAAKA,UAAU,OAAf,eAA6B,qBAAKA,UAAU,OAAf,eAA6B,qBAAKA,UAAU,OAAf,kBAC/G,sBAAKA,UAAU,MAAf,UACE,qBAAKA,UAAU,OAAf,eACA,sBAAKA,UAAU,OAAf,UACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACxC,qBAAKA,UAAU,aAAf,oBAEF,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACxC,qBAAKA,UAAU,aAAf,uBAGJ,qBAAKA,UAAU,OAAf,SACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBAC9G,qBAAKA,UAAU,aAAf,sBAGJ,sBAAKA,UAAU,OAAf,UACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACxC,qBAAKA,UAAU,aAAf,oBAEF,sBAAKA,UAAU,WAAf,UACA,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACtC,sBAAKA,UAAU,kBAAf,iBAAqC,uBAArC,gBAGJ,sBAAKA,UAAU,OAAf,UACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACxC,qBAAKA,UAAU,aAAf,oBAEF,sBAAKA,UAAU,WAAf,UACA,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACtC,sBAAKA,UAAU,kBAAf,iBAAqC,uBAArC,gBAGJ,sBAAKA,UAAU,WAAf,UACE,oCACA,oCACA,oCACA,0CAGJ,sBAAKA,UAAU,MAAf,UACE,qBAAKA,UAAU,OAAf,eACA,qBAAKA,UAAU,OAAf,SACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBAC9G,qBAAKA,UAAU,aAAf,sBAGJ,qBAAKA,UAAU,OAAf,SACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBAC9G,qBAAKA,UAAU,aAAf,sBAGJ,sBAAKA,UAAU,OAAf,UACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACxC,qBAAKA,UAAU,aAAf,oBAEF,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACxC,qBAAKA,UAAU,aAAf,uBAGJ,qBAAKA,UAAU,OAAf,SACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBAC9G,qBAAKA,UAAU,aAAf,sBAGJ,sBAAKA,UAAU,WAAf,UACE,oCACA,oCACA,oCACA,0CAGJ,sBAAKA,UAAU,MAAf,UACE,qBAAKA,UAAU,OAAf,eACA,sBAAKA,UAAU,OAAf,UACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBAC3E,qBAAKA,UAAU,aAAf,oBAEF,sBAAKA,UAAU,WAAf,UACE,8BAAK,qBAAKA,UAAU,WAAf,mBACL,qBAAKA,UAAU,iBAAf,uBAGJ,qBAAKA,UAAU,OAAf,SACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBAC9G,qBAAKA,UAAU,aAAf,sBAGJ,sBAAKA,UAAU,OAAf,UACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACxC,qBAAKA,UAAU,aAAf,oBAEF,sBAAKA,UAAU,WAAf,UACA,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACtC,qBAAKA,UAAU,aAAf,uBAGJ,sBAAKA,UAAU,OAAf,UACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACxC,qBAAKA,UAAU,aAAf,oBAEF,sBAAKA,UAAU,WAAf,UACA,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACtC,qBAAKA,UAAU,aAAf,uBAGJ,sBAAKA,UAAU,WAAf,UACE,oCACA,oCACA,oCACA,0CAGJ,sBAAKA,UAAU,MAAf,UACE,qBAAKA,UAAU,OAAf,eACA,qBAAKA,UAAU,OAAf,SACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBAC9G,qBAAKA,UAAU,aAAf,sBAGJ,qBAAKA,UAAU,OAAf,SACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBAC9G,qBAAKA,UAAU,aAAf,sBAGJ,sBAAKA,UAAU,OAAf,UACE,sBAAKA,UAAU,WAAf,UACE,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACxC,qBAAKA,UAAU,aAAf,oBAEF,sBAAKA,UAAU,WAAf,UACA,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBACtC,qBAAKA,UAAU,aAAf,uBAGJ,qBAAKA,UAAU,OAAf,SACE,sBAAKA,UAAU,WAAf,UACA,gCAAK,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,iBAAmC,qBAAKA,UAAU,WAAf,oBAC5G,qBAAKA,UAAU,aAAf,sBAGJ,sBAAKA,UAAU,WAAf,UACE,oCACA,oCACA,oCACA,6CAIN,8BAAK,qCAAO,uBAAP,oBAmET,OACA,sBAAKA,UAAU,MAAMsJ,QAAS/L,KAAK6M,cAAcpN,KAAKO,MAAtD,UACE,yBAAQyC,UAAU,aAAlB,UACE,qBAAKA,UAAU,YAAf,SAA2B,qBAAKqK,IAAKC,IAAMC,IAAI,WAC/C,sBAAKvK,UAAU,OAAf,UAAsB,qBAAKqK,IAAKlO,IAAWoO,IAAI,YAAYjB,QAAS/L,KAAKiN,SAASxN,KAAKO,QACrF,sBAAKyC,UAAU,YAAYiK,MAAO,CAACQ,SAAgC,IAAvBlN,KAAKvB,MAAMG,UAAkB,OAAO,QAAhF,UACE,qBAAK6D,UAAU,YAAYsJ,QAAS/L,KAAKmN,cAAc1N,KAAKO,MAAO,cAAY,IAA/E,gCACA,qBAAKyC,UAAU,YAAYsJ,QAAS/L,KAAKoN,WAAW3N,KAAKO,MAAO,cAAY,IAA5E,0BACA,sBAAKyC,UAAU,YAAasJ,QAAS/L,KAAKqN,iBAAiB5N,KAAKO,MAAhE,UAAwE,qBAAKyC,UAAW,iBAAwC,IAAxBzC,KAAKvB,MAAMI,WAAmB,OAAO,WAA7I,cAAiM,IAAxBmB,KAAKvB,MAAMI,WAAmB,OAAO,QAA9M,YACA,sBAAK4D,UAAU,YAAYsJ,QAAS/L,KAAKf,SAASQ,KAAKO,MAAvD,UAA+D,sBAAKyC,UAAU,YAAf,UAA2B,qBAAKA,UAAU,QAAf,eAA8B,qBAAKA,UAAU,QAAf,kBAAxH,yBAIN,sBAAKA,UAAW,UAAiC,IAAxBzC,KAAKvB,MAAMI,WAAmB,QAAQ,QAA/D,UACE,sBAAK4D,UAAU,UAAf,UACI,sBAAKA,WAA6B,GAAjBzC,KAAKvB,MAAMC,KAAQ,SAAS,IAAI,aAAjD,UACE,qBAAK+D,UAAU,qBAAsBsJ,QAAS/L,KAAKR,YAAYC,KAAKO,MAAO,YAAU,IAArF,SAAyF,qBAAK8M,IAAKQ,IAAU,YAAU,IAAIN,IAAI,eAC/H,uBAAOjB,QAAS/L,KAAKmN,cAAc1N,KAAKO,MAAO,cAAY,IAA3D,gCAEF,sBAAKyC,WAA6B,GAAjBzC,KAAKvB,MAAMC,KAAQ,SAAS,IAAI,aAAjD,UACE,qBAAK+D,UAAU,qBAAqBiK,MAAO,CAACa,cAAcvN,KAAKvB,MAAME,OAAO,EAAE,GAAG,QAASoN,QAAS/L,KAAKR,YAAYC,KAAKO,MAAO,YAAU,IAAIgN,IAAI,WAAlJ,SAA6J,qBAAKF,IAAKU,QACvK,wBAAOzB,QAAS/L,KAAKmN,cAAc1N,KAAKO,MAAO,cAAY,IAA3D,UAA+D,qBAAKyC,UAAU,aAAf,eAA/D,qBACEqJ,EAAgB,qBAAKrJ,UAAU,cAAciK,MAAO,CAACQ,QAAyB,GAAjBlN,KAAKvB,MAAMC,KAAQ,OAAO,QAAvE,SAAiFoN,IAAtF,QAEf,sBAAKrJ,WAA6B,GAAjBzC,KAAKvB,MAAMC,KAAQ,SAAS,IAAI,aAAc,YAAU,IAAzE,UACE,qBAAK+D,UAAU,qBAAqBiK,MAAO,CAACa,cAAcvN,KAAKvB,MAAME,OAAO,EAAE,GAAG,QAASoN,QAAS/L,KAAKR,YAAYC,KAAKO,MAAO,YAAU,IAAIgN,IAAI,WAAlJ,SAA6J,qBAAKF,IAAKW,IAAUT,IAAI,eACrL,uBAAOjB,QAAS/L,KAAKmN,cAAc1N,KAAKO,MAAO,cAAY,IAA3D,wBACCA,KAAKvB,MAAME,OAAO,EAAE,KAAK,qBAAK8D,UAAU,UAAUiK,MAAO,CAACQ,QAASlN,KAAKvB,MAAM2B,UAAiB,OAAP,QAA/D,SAAgFkM,OAE5G,sBAAK7J,WAA6B,GAAjBzC,KAAKvB,MAAMC,KAAQ,SAAS,IAAI,aAAc,YAAU,IAAzE,UACE,qBAAK+D,UAAU,qBAAqBiK,MAAO,CAACa,cAAcvN,KAAKvB,MAAME,OAAO,EAAE,GAAG,QAASoN,QAAS/L,KAAKR,YAAYC,KAAKO,MAAO,YAAU,IAAIgN,IAAI,WAAlJ,SAA6J,qBAAKF,IAAKY,IAAWV,IAAI,eACtL,uBAAOjB,QAAS/L,KAAKmN,cAAc1N,KAAKO,MAAO,cAAY,IAA3D,kCACA,qBAAKyC,UAAU,4BAA4BiK,MAAO,CAACQ,QAAyB,GAAjBlN,KAAKvB,MAAMC,KAAQ,OAAO,QAArF,SAhGW,WACnB,GAAI,EAAKD,MAAM2D,QAAf,CAGA,IAEID,EAFaL,OAAOC,KAAK,EAAKtD,MAAM2D,SAEZH,KAAI,SAACI,GAC/B,IAAIC,EAAgB,EAAK7D,MAAM2D,QAAQC,GAEvC,GAAG,EAAK5D,MAAM8D,cAAc,EAAK9D,MAAM8D,aAAaF,GAAK,CACvD,IAAIG,EAAe,EAAK/D,MAAM8D,aAAaF,GAC3C,OAAO,gCAAK,qBAAKI,UAAU,iBAAf,SAAiCJ,IAC3C,sBAAKI,UAAU,gBAAgBkL,YAAa,EAAKC,kBAAkBnO,KAAK,EAAK+C,EAAaH,GAAM8J,aAAc,EAAKC,eAAe3M,KAAK,GAAvI,UACA,8BAAO+C,EAAa,KACpB,gCAAM,uCAAe,8BAAMA,EAAa,QACxC,gCAAM,wCAAgB,8BAAMA,EAAa,QACzC,gCAAM,+DAAuC,8BAAMA,EAAa,QAChE,gCAAM,8DAAsC,8BAAMA,EAAa,cAGjE,OAAO,gCAAK,qBAAKC,UAAU,iBAAf,SAAiCJ,IAAWC,EAAcL,KAAI,SAACO,GACzE,OAAO,sBAAKC,UAAU,gBAAgBwJ,aAAc,EAAKC,gBAAgBzM,KAAK,EAAK+C,EAAa,GAAG,wBAAwB,YAAamL,YAAa,EAAKC,kBAAkBnO,KAAK,EAAK+C,EAAaH,GAAM8J,aAAc,EAAKC,eAAe3M,KAAK,GAAzO,UACP,8BAAO+C,EAAa,KACpB,gCAAM,uCAAe,8BAAMA,EAAa,QACxC,gCAAM,wCAAgB,8BAAMA,EAAa,QACzC,gCAAM,+DAAuC,8BAAMA,EAAa,QAChE,gCAAM,8DAAsC,8BAAMA,EAAa,oBAIrE,OAAO,8BAAML,KAkE0F0L,QAEjG,sBAAKpL,WAA6B,GAAjBzC,KAAKvB,MAAMC,KAAQ,SAAS,IAAI,aAAc,YAAU,IAAzE,UACE,qBAAK+D,UAAU,+BAA+BiK,MAAO,CAACa,cAAcvN,KAAKvB,MAAME,OAAO,EAAE,GAAG,QAASoN,QAAS/L,KAAKR,YAAYC,KAAKO,MAAO,YAAU,IAAIgN,IAAI,WAA5J,SAAuK,qBAAKF,IAAKgB,IAAed,IAAI,eACpM,uBAAOjB,QAAS/L,KAAKmN,cAAc1N,KAAKO,MAAO,cAAY,IAA3D,2BACkB,GAAjBA,KAAKvB,MAAMC,KA3DE,WAGtB,IAFA,IAAMqP,EAAiB,CAAC,kCAAkC,oDAAoD,kCAAkC,oDAAoD,+BAA+B,mCAAmC,oCAAoC,+BAA+B,mCAAmC,qCACxWC,EAAc,GACVhL,GAAG,EAAEA,EAAE+K,EAAerM,OAAOsB,KAC3B,IAALA,EACDgL,EAAYvK,KAAK,wBAAQwK,SAAO,EAAf,gCAEnBD,EAAYvK,KAAK,wBAAgBlD,MAAOwN,EAAe/K,GAAtC,SAA2C+K,EAAe/K,IAA7CA,IAIhC,OAAO,sBAAKP,UAAU,gBAAf,UACL,8BAAK,wBAAQA,UAAU,MAAMkL,YAAa,EAAKO,mBAAmBzO,KAAK,GAAlE,6BACL,qBAAKgD,UAAU,iBAAf,sBACA,8BAAK,wBAAQA,UAAU,MAAMkL,YAAa,EAAKQ,gBAAgB1O,KAAK,GAA/D,wBACL,qBAAKgD,UAAU,iBAAf,8BACA,8BAAK,wBAAQA,UAAU,MAAMkL,YAAa,EAAKS,iBAAiB3O,KAAK,GAAhE,wBACL,qBAAKgD,UAAU,iBAAf,8BACA,8BAAK,wBAAQ4L,SAAU,EAAKC,sBAAsB7O,KAAK,GAAlD,SAA0DuO,MAC/D,8BAAK,wBAAQvL,UAAU,MAAMkL,YAAa,EAAKY,wBAAwB9O,KAAK,GAAvE,2BAwCqB+O,GAAkB,WAG5C,sBAAK/L,UAAW,UAAiC,IAAxBzC,KAAKvB,MAAMI,WAAmB,QAAQ,QAA/D,UACI,sBAAK4D,UAAU,kBAAmBiK,MAAO,CAACQ,QAA4B,IAApBlN,KAAKvB,MAAME,OAAW,OAAO,QAA/E,UACE,sBAAK8D,UAAU,eAAesJ,QAAS/L,KAAKmN,cAAc1N,KAAKO,MAAO,cAAY,IAAlF,UAAsF,qBAAK8M,IAAK2B,IAAUzB,IAAI,KAAI,iDAClH,wBAAO0B,IAAI,cAAcjM,UAAU,eAAnC,UAAkD,qBAAKqK,IAAK6B,IAAU3B,IAAI,KAAI,0DAAkC,uBAAO4B,GAAG,cAAc9L,KAAK,cAAcuL,SAAUrO,KAAK6O,WAAWpP,KAAKO,MAAOe,KAAK,OAAO2L,MAAO,CAACQ,QAAQ,gBAE/N,qBAAKzK,UAAU,kBAAmBiK,MAAO,CAACQ,QAA4B,IAApBlN,KAAKvB,MAAME,OAAW,OAAO,QAA/E,SACE,uBAAM8D,UAAU,cAAc8B,SAAUvE,KAAK8O,cAAcrP,KAAKO,MAAhE,UAAwE,8DAAwC,uBAAOe,KAAK,OAAO+B,KAAK,aAAa,uBAAO/B,KAAK,SAASR,MAAM,gBAElL,sBAAKkC,UAAU,kBAAkBiK,MAAO,CAACQ,QAA4B,IAApBlN,KAAKvB,MAAME,OAAW,OAAO,QAA9E,UACE,sBAAK8D,UAAU,YAAf,mBAAkCzC,KAAKvB,MAAMmC,SAAWZ,KAAKvB,MAAM2F,QAAW,eAAepE,KAAKvB,MAAM2F,QAA7B,MAC3E,sBAAK3B,UAAU,oBAAoBiK,MAAO,CAAC1N,SAASgB,KAAKvB,MAAMO,UAA/D,UAEA,qBAAKyD,UAAU,iCAAf,SAnZD,OAoZG,qBAAKA,UAAU,+BAAf,SAAgDiJ,UAGpD,sBAAKjJ,UAAU,kBAAkBiK,MAAO,CAACQ,QAA4B,IAApBlN,KAAKvB,MAAME,OAAW,OAAO,QAA9E,UACE,sBAAK8D,UAAU,YAAf,mBAAkCzC,KAAKvB,MAAMmC,SAAWZ,KAAKvB,MAAM2F,QAAW,eAAepE,KAAKvB,MAAM2F,QAA7B,MAC3E,sBAAK3B,UAAU,oBAAoBiK,MAAO,CAAC1N,SAASgB,KAAKvB,MAAMO,UAA/D,UAEA,qBAAKyD,UAAU,iCAAf,SA3ZD,OA4ZG,qBAAKA,UAAU,+BAAf,SAAgDiJ,UAGpD,sBAAKjJ,UAAU,kBAAkBiK,MAAO,CAACQ,QAAQlN,KAAKvB,MAAME,QAAQ,EAAE,OAAO,QAA7E,UACE,sBAAK8D,UAAU,YAAf,mBAAkCzC,KAAKvB,MAAMmC,SAAWZ,KAAKvB,MAAM2F,QAAW,eAAepE,KAAKvB,MAAM2F,QAA7B,MAC3E,sBAAK3B,UAAU,oBAAoBiK,MAAO,CAAC1N,SAASgB,KAAKvB,MAAMO,UAA/D,UACE,qBAAKyD,UAAU,iCAAf,SAlaH,OAmaG,qBAAKA,UAAU,+BAAf,SAAgDiJ,gBAM1D,sBAAKjJ,UAAU,SAAf,UACE,gDACA,4DACA,+CACA,8CAEF,qBAAKA,UAAU,SAASiK,MAAO,CAACQ,SAA+B,IAAtBlN,KAAKvB,MAAMQ,SAAgB,OAAO,QAA3E,SACE,sBAAKwD,UAAU,YAAf,UACE,qBAAKA,UAAU,QAAQsJ,QAAS/L,KAAKf,SAASQ,KAAKO,MAAnD,eACA,kDACA,+BAAM,uBAAOe,KAAK,SAAUR,MAAOP,KAAKvB,MAAMO,SAAUqP,SAAUrO,KAAK+O,eAAetP,KAAKO,eAnH3F,EAAKvB,MAAMU,MAGR,qBAAKsD,UAAU,gBAAgBiK,MAAO,CAACQ,QAAQ,EAAKzO,MAAMU,MAAMC,KAAK,OAAO,QAA5E,SACN,sBAAKqD,UAAU,QAAf,UAAwB,EAAKhE,MAAMU,MAAMiC,SAAS,KAAK,qBAAKqB,UAAU,cAAcsJ,QAAS,EAAKiD,WAAWvP,KAAK,GAA3D,eACxD,qBAAKgD,UAAU,UAAf,SAA0B,EAAKhE,MAAMU,MAAME,UAC1C,EAAKZ,MAAMU,MAAMG,MAAM,qBAAKmD,UAAU,QAAQqK,IAAK,EAAKrO,MAAMU,MAAMG,QAAU,QALtE,Y,GAzoCkB2P,IAAMC,a,yDCfxB,0lN,6BCAA,k5D,6BCAA,szC,6BCAA,05D,6BCAA,s3E,6BCAA,0yH,6BCAA,s1E,6BCAA,k6D,6BCAA,8Y,+BCAf,sDAKAC,IAASC,OACP,+BACE,cAAC,IAAD,MAEFjJ,SAASkJ,eAAe,U","file":"static/js/main.0b9b0faa.chunk.js","sourcesContent":["export default \"data:image/png;base64,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\"","import React, { Fragment } from 'react';\nimport './App.css';\nimport logo from './assets/logo.png';\nimport sidebar1 from './assets/sidebar1.png';\nimport sidebar2 from './assets/sidebar2.png';\nimport sidebar3 from './assets/sidebar3.png';\nimport sidebar4 from './assets/sidebar4.png';\nimport documentIcon from './assets/document-icon.png';\nimport landing1 from './assets/landing1.png'; \nimport landing2 from './assets/landing2.png';\nimport hamburger from './assets/hamburger.png';\nimport loading from './assets/loading.png';\nimport { saveAs } from 'file-saver';\n\nconst urlBase = 'http://142.93.118.6';//'http://142.93.118.6';\nexport default class App extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n // Informational & API related\n menu:null,\n screen:0,\n hamburger:false,\n themeColor:false,\n highlights:[],\n currentHighlight: null,\n fontSize:23,\n fontMenu:false,\n geneInfo:null,\n popup:{\n show:false,\n message:null,\n image:null\n },\n currentPam:null,\n }\n // API\n this.changeMenus = this.changeMenus.bind(this);\n this.highlight = this.highlight.bind(this);\n this.saveCurrentHighlight = this.saveCurrentHighlight.bind(this);\n }\n\n // UI\n changeMenus(e) {\n let menu = parseInt(e.target.dataset.menu); \n //console.log(menu);\n if(menu===this.state.menu){\n menu = null;\n }\n this.setState({menu:menu},()=>{\n //console.log(this.state);\n });\n }\n changeScreens(e) {\n let screen = e.target.dataset.screen; \n console.log(screen);\n let menu = null;\n if(screen==1){\n menu=1;\n }\n this.setState({screen:parseInt(screen),hamburger:false,menu:menu},()=>{\n console.log(this.state);\n if(screen==3){\n this.setState({mutatePam:true});\n }\n });\n }\n openMenu(e) {\n let screen = e.target.dataset.screen; \n //console.log(screen);\n this.setState({hamburger:!this.state.hamburger});\n }\n changeThemeColor(e) {\n this.setState({themeColor:!this.state.themeColor});\n }\n closeAllMenus(e) {\n //this.setState({menu:null,hamburger:false});\n }\n closePopup(e) {\n this.setState({popup:{show:false}});\n }\n highlight(e,data){\n /*let highlight = parseInt(e.target.dataset.value);\n console.log(highlight);*/\n /*this.setState({highlight:highlight},()=>{\n //console.log(this.state);\n });*/\n }\n fontMenu(e) {\n this.setState({fontMenu:!this.state.fontMenu});\n }\n changeFontSize(e){\n let size = parseInt(e.target.value);\n this.setState({fontSize:size},()=>{\n //console.log(this.state);\n });\n }\n saveDesign() {\n const design = JSON.stringify(this.state);\n var filename = this.state.geneName+\".txt\";\n var blob = new Blob([design], {\n type: \"text/plain;charset=utf-8\"\n });\n saveAs(blob, filename);\n this.setState({hamburger:false});\n }\n openDesign(e) {\n const reader = new FileReader();\n this.setState({popup:{\n show:true,\n message:Uploading File
,\n image:loading,\n stayOpen:true,\n }},()=>{\n reader.onloadend = (res) => {\n let newState = JSON.parse(res.target.result);\n newState['popup'] = null;\n newState['hamburger'] = false;\n this.setState(newState,()=>{\n console.log(this.state);\n });\n };\n if(e.target.value.length) {\n reader.readAsText(e.target.files[0]);\n }\n });\n\n }\n viewFinishedDesign(){\n let targetKeys = Object.keys(this.state.targets[0]);\n let targetHTML = targetKeys.map((prop)=>{\n\n return {prop}: {this.state.targets[0][prop]}
;\n });\n let primerKeys = Object.keys(this.state.primers);\n //console.log('primer keys',primerKeys);\n let primerHTML = primerKeys.map((key)=>{\n let primerOptions = this.state.primers[key];\n //console.log('this primer',primerOptions);\n if(this.state.selectedArms&&this.state.selectedArms[key]){\n let primerSingle = this.state.selectedArms[key];\n return {key}
\n
\n
{primerSingle[7]}
\n
\n
\n
Any (Self Complementarity): {primerSingle[5]}
\n
3' (Self Complementarity): {primerSingle[6]}
\n
;\n } else {\n return {key}
{primerOptions.map((primerSingle)=>{\n return
\n
{primerSingle[7]}
\n
\n
\n
Any (Self Complementarity): {primerSingle[5]}
\n
3' (Self Complementarity): {primerSingle[6]}
\n
})}
;\n }\n });\n let message = \n
Design Info
\n
Target Info
{targetHTML}\n
Homology Info
\n {primerHTML}\n \n
\n
Oligo Info
\n
Sense: {this.state.oligos.sense}
\n
Antisense: {this.state.oligos.antisense}
\n
\n
;\n this.setState({popup:{\n show:true,\n message:message,\n image:null,\n stayOpen:false,\n }});\n }\n saveCurrentHighlight(color=null,name=null){\n let highlight = JSON.parse(JSON.stringify(this.state.currentHighlight));\n //console.log('highlight',highlight);\n if(color){\n highlight.color = color;\n }\n let highlights = this.state.highlights;\n \n if(name){\n highlights[name] = highlight;\n } else {\n highlights[highlight.name] = highlight;\n }\n //console.log(highlights);\n if(highlight.name=='targetSearch'){\n //console.log('search for targets');\n this.searchForTargets();\n } else {\n\n this.setState({highlights:highlights},()=>{\n console.log(this.state);\n \n });\n }\n }\n changeCurrentHighlight(i){\n let currentHighlight = this.state.currentHighlight;\n currentHighlight.location = i;\n this.setState({currentHighlight:currentHighlight});\n }\n stringLocation(string=null,type){\n if(!type){\n return this.state.sequence.indexOf(string);\n }\n let location = this.state.sequence.indexOf(string);\n console.log('location',location);\n let length = string.length;\n \n if(location==-1){\n \n let revString = this.revComp(string);\n console.log('rev',revString);\n location = this.state.sequence.indexOf(revString); \n //location = location+(length/2)-4;\n } else {\n // location = location+(length/2)-1;\n }\n return location;\n }\n highlightString(string,color=null,type=null){\n console.log('string: ',string,' color: ',color);\n //console.log(this.state.sequence);\n let location = this.stringLocation(string,type);\n console.log(location);\n if(location==-1){\n location = this.stringLocation(this.revComp(string),type);\n }\n if(location==-1){\n location = 0;\n }\n let length = string.length;\n if(!color){\n color = 'rgba(252, 210, 126, 0.3)';\n }\n //console.log('mousenter');\n //console.log(location,length,color);\n this.setState({currentHighlight:{\n location:location,\n length:length,\n color:color,\n name:!type?'cutsite':type\n }\n });\n }\n clearHighlight(){\n //console.log('mouseleave');\n //this.setState({currentHighlight:null});\n }\n\n revComp(dna) {\n let revComp = [];\n for(let i=0;iSearching For Gene,\n image:loading,\n stayOpen:true,\n }}, ()=>{\n fetch(url).then((res) =>{return res.json()}).then((geneInfo)=>{\n console.log('response',geneInfo);\n let currentState = this.state;\n if(geneInfo.isoForm==null){\n currentState.popup = {\n show:false,\n };\n currentState.isoForm = null;\n } else {\n\n let isoForms = JSON.parse(geneInfo.isoForms);\n //console.log('isoforms');\n let options = Choose Your IsoForm
;\n //console.log('options made');\n currentState.popup = {\n show:true,\n message:options,\n image:null\n };\n currentState.isoForm = geneInfo.isoForm;\n }\n currentState.geneName = geneInfo.name;\n currentState.screen = 2;\n currentState.sequence = geneInfo.sequence;\n currentState.isoFormSequence = geneInfo.isoFormSequence;\n \n\n this.setState(currentState,()=>{\n this.makeIsoFormHighlights();\n });\n });\n });\n }\n makeIsoFormHighlights(){\n let startSequence = this.state.isoFormSequence.substr(0,9);\n let stopSequence = this.state.isoFormSequence.substr(this.state.isoFormSequence.length-10,this.state.isoFormSequence.length);\n let startIndex = this.state.sequence.indexOf(startSequence);\n let stopIndex = this.state.sequence.indexOf(stopSequence)+7;\n //console.log(startIndex,startSequence);\n //console.log(stopIndex,stopSequence);\n let highlights = {\n start:{\n location:startIndex,\n length:3,\n color:'#93E593',\n },\n stop:{\n location:stopIndex,\n length:3,\n color:'#FF668E',\n }\n };\n let popupForm = Choose Your Tag
;\n this.setState({\n screen:2,\n popup:{\n show:false,\n },\n highlights:highlights,\n popup:{\n show:true,\n message:popupForm,\n image:null,\n stayOpen:true,\n }\n });\n }\n pickIsoForm(e){\n e.preventDefault();\n //console.log(e.target.isoform.value);\n let isoForm = e.target.isoform.value;\n //console.log(isoForm,this.state.isoForm);\n //console.log(this.state.isoFormSequence);\n if(isoForm==this.state.isoForm){\n //console.log('same isoForm');\n this.makeIsoFormHighlights();\n } else {\n let url = urlBase+'/api/?type=isoform&isoform='+isoForm;\n fetch(url).then((res) =>{return res.json()}).then((geneInfo)=>{\n //console.log('response',geneInfo);\n let currentState = this.state;\n currentState.isoForm = geneInfo.isoForm;\n currentState.isoFormSequence = geneInfo.isoFormSequence;\n\n \n let startSequence = this.state.isoFormSequence.substr(0,9);\n let stopSequence = this.state.isoFormSequence.substr(this.state.isoFormSequence.length-10,this.state.isoFormSequence.length);\n let startIndex = this.state.sequence.indexOf(startSequence);\n let stopIndex = this.state.sequence.indexOf(stopSequence)+7;\n //console.log(startIndex,startSequence);\n //console.log(stopIndex,stopSequence);\n let highlights = {\n start:{\n location:startIndex,\n length:3,\n color:'#93E593',\n },\n stop:{\n location:stopIndex,\n length:3,\n color:'#FF668E',\n }\n }\n currentState.highlights = highlights;\n let popupForm = Choose Your Tag
;\n \n currentState.popup = {\n show:true,\n message:popupForm,\n image:null,\n stayOpen:true,\n };\n /*currentState.currentHighlight = {\n location:null,\n length:100,\n color:'#FCD27E',\n name:'targetSearch'\n }*/\n //console.log(currentState);\n this.setState(currentState,function(){\n //console.log(this.state);\n });\n });\n }\n }\n pickCutSite(target){\n this.saveCurrentHighlight('rgba(252, 210, 126, 0.3)');\n this.setState({\n targets:[target],\n menu:3,\n screen:3,\n mutatePam:true,\n });\n }\n chooseTerminal(e){\n e.preventDefault();\n //console.log(e.target.tag.value);\n let i;\n let terminal = e.target.tag.value;\n if(terminal=='n'){\n i = this.state.highlights.start.location;\n } else if(terminal=='c'){\n i = this.state.highlights.stop.location;\n }\n //console.log('start',i-26,i+26);\n let targetGenes = this.state.sequence.substring(i-50,i+50); \n //console.log(targetGenes);\n let url = urlBase+'/api/?type=targetSearch&targetArea='+targetGenes;\n //console.log(url);\n this.setState({popup:{\n show:true,\n message:Finding Potential Targets.
This may take some time.
,\n image:loading,\n stayOpen:true,\n },\n terminal:terminal\n },function(){\n fetch(url).then((res) =>{return res.json()}).then((response)=>{\n //console.log(response);\n let efficiencyString = response.results.map((target)=>{\n return target.distal+target.proximal;\n });\n //console.log(encodeURIComponent(efficiencyString.join(',')));\n this.setState({popup:{\n show:true,\n message:Checking Target Efficiency
,\n image:loading,\n stayOpen:true,\n },\n targets:response.results\n },function(){\n let url = urlBase+'/api/?type=targetEfficiency&targets='+encodeURIComponent(efficiencyString.join('\\n'));\n fetch(url).then((res)=>{return res.json()}).then((response)=>{\n //console.log(response);\n let targets = [];\n for(let i=0;iFinding Potential Targets,\n image:loading,\n stayOpen:true,\n }\n },function(){\n fetch(url).then((res) =>{return res.json()}).then((response)=>{\n //console.log(response);\n let efficiencyString = response.results.map((target)=>{\n return target.distal+target.proximal;\n });\n //console.log(encodeURIComponent(efficiencyString.join(',')));\n this.setState({popup:{\n show:true,\n message:Checking Target Efficiency
,\n image:loading,\n stayOpen:true,\n },\n targets:response.results\n },function(){\n let url = urlBase+'/api/?type=targetEfficiency&targets='+encodeURIComponent(efficiencyString.join('\\n'));\n fetch(url).then((res)=>{return res.json()}).then((response)=>{\n //console.log(response);\n //console.log('got response');\n let targets = [];\n for(let i=0;iChecking Target Efficiency,\n image:loading,\n stayOpen:true,\n },\n targets:targets\n },function(){\n //console.log('added score');\n //console.log(this.state);\n });\n });\n });\n });\n });\n \n }\n getPrimers() {\n\n const targetSearch = this.state.terminal=='n'?this.state.highlights.start.location:this.state.highlights.stop.location;\n console.log('target search area',targetSearch);\n const primerSections = {\n \"5' Homology\":this.state.sequence.slice(targetSearch-1200, targetSearch-1000),\n \"5' Sequence\":this.state.sequence.slice(targetSearch-600, targetSearch-400),\n \"3' Sequence\":this.state.sequence.slice(targetSearch+400, targetSearch+600),\n \"3' Homology\":this.state.sequence.slice(targetSearch+1000, targetSearch+1200) \n }\n let primerSectionsString = Buffer.from(JSON.stringify(primerSections)).toString('base64');\n this.setState({\n popup:{\n show:true,\n message:Retreiving Homology Arm Primers
,\n image:loading,\n stayOpen:true,\n },\n },()=>{\n console.log(urlBase+'/api/?type=primers&primerSections='+primerSectionsString);\n fetch(urlBase+'/api/?type=primers&primerSections='+primerSectionsString).then(res =>{return res.json();}).then((res)=>{\n console.log(res);\n this.setState({primers:res,menu:4,popup:{\n show:false,\n message:Retreiving Homology Arm Primers
,\n image:loading,\n stayOpen:true,\n },\n },()=>{\n console.log(this.state);\n });\n })\n });\n }\n mutatePam(e){\n e.preventDefault();\n let newPam = e.target.elements.newPam.value;\n //console.log(newPam);\n this.setState({currentPam:newPam,menu:4,screen:4,mutatePam:false},()=>{\n console.log('mutated pam');\n console.log(this.state);\n if(!this.state.primers||!this.state.primers.length==0){\n this.getPrimers();\n }\n });\n }\n selectHomologyArm(selection,arm){\n let currentArms = JSON.parse(JSON.stringify(!this.state.selectedArms?{}:this.state.selectedArms));\n currentArms[arm] = selection;\n this.saveCurrentHighlight('rgba(86, 64, 155,0.3)',arm);\n this.setState({selectedArms:currentArms},()=>{\n //console.log(this.state);\n this.setState({currentHighlight:null},()=>{\n let totalSelected = Object.keys(this.state.selectedArms);\n if(totalSelected.length&&totalSelected.length==4){\n // GET OLIGO INFO\n console.log('searching');\n console.log(urlBase+'/api/?type=oligos&target='+this.state.targets[0].distal+this.state.targets[0].proximal+this.state.targets[0].pam);\n this.setState({\n popup:{\n show:true,\n message:Retreiving Oligo Information
,\n image:loading,\n stayOpen:true,\n },\n },()=>{\n fetch(urlBase+'/api/?type=oligos&target='+this.state.targets[0].distal+this.state.targets[0].proximal+this.state.targets[0].pam).then(res =>{return res.json();}).then((res)=>{\n console.log(res);\n if(!res.sense){\n this.setState({\n menu:5,\n popup: {\n show:false,\n }\n });\n }\n this.setState({\n menu:5,\n oligos:res,\n popup: {\n show:false,\n }\n });\n });\n });\n }\n });\n });\n }\n\n // UTILITIES\n\n downloadApeFile() {\n fetch(window.location.origin+'/fly_templates/empty_ape.txt').then((res)=>{return res.text();}).then((res)=>{\n const data = res;\n fetch(window.location.origin+'/fly_templates/feature.txt').then((res)=>{return res.text()}).then((res2)=>{\n const feature = res2;\n const newFeature = (loc, name, color) => {\n return feature\n .split('*featureLoc*').join(loc)\n .split('*featureName*').join(name)\n .split('*featureColor*').join(color);\n };\n let gene = this.state.sequence;\n const target = this.state.targets[0].distal.toString()+this.state.targets[0].proximal.toString();\n const targetMatch = gene.toLowerCase().match(target.toLowerCase());\n const revTargetMatch = gene.toLowerCase().match(this.revComp(target.toLowerCase()));\n let targetI;\n if (targetMatch) {\n targetI = targetMatch.index+1;\n } else if (revTargetMatch) {\n targetI = revTargetMatch.index;\n }\n const pamStart = revTargetMatch?targetI-2:targetI+20;\n const start = 1+parseInt(this.state.highlights.start.location);\n const stop = 1+parseInt(this.state.highlights.stop.location); \n gene = !this.state.currentPam?gene:gene.substr(0,pamStart-1)+this.state.currentPam+gene.substr(pamStart+2,gene.length);\n const featureArr = [\n newFeature(start+'..'+(start+2),'Start Codon','#df2935'),\n newFeature(stop+'..'+(stop+2),'Stop Codon','#df2935'),\n newFeature((parseInt(1+this.state.highlights['hom5']['location']))+'..'+(parseInt(1+this.state.highlights['hom5']['location'])+this.state.highlights['hom5']['length']),\"5' Homology Arm Primer\",'#fdca40'),\n newFeature((parseInt(1+this.state.highlights['hom3']['location']))+'..'+(parseInt(1+this.state.highlights['hom3']['location'])+this.state.highlights['hom3']['length']),\"3' Homology Arm Primer\",'#fdca40'),\n newFeature((parseInt(1+this.state.highlights['seq5']['location']))+'..'+(parseInt(1+this.state.highlights['seq5']['location'])+this.state.highlights['seq5']['length']),\"5' Sequence Primer\",'#fdca40'),\n newFeature((parseInt(1+this.state.highlights['seq3']['location']))+'..'+(parseInt(1+this.state.highlights['seq3']['location'])+this.state.highlights['seq3']['length']),\"3' Sequence Primer\",'#fdca40'),\n newFeature(targetI+'..'+(parseInt(targetI)+20),\"Target\",'#136F5E'),\n newFeature(pamStart+'..'+(parseInt(pamStart)+2),\"Pam\",'#42ED5E'),\n ];\n const makeGeneArr = () => {\n\n let geneArr = [];\n const spaces = (str) => {\n let spaceArr = [];\n for(let i=0;i<9-str.length;i++){\n spaceArr.push('');\n }\n return spaceArr;\n }\n for(let i=0;igene.length){\n geneArr.push(gene.slice(i,gene.length));\n } else {\n geneArr.push(gene.slice(i,i+10));\n }\n geneArr.push('');\n i=i+10;\n }\n return geneArr.join(' ');\n }\n const months = [\"JAN\",\"FEB\",\"MAR\",\"APR\",\"MAY\",\"JUN\",\"JUL\",\"AUG\",\"SEP\",\"OCT\",\"NOV\",\"DEC\"]\n const date = new Date();\n const day = date.getDate();\n const month = months[date.getMonth()];\n const year = date.getFullYear();\n const newData = data\n .split('*FEATURES*').join(featureArr.join(''))\n .split('*name*').join(this.state.geneName)\n .split('*length*').join(this.state.sequence.length)\n .split('*date*').join(day+'-'+month+'-'+year)\n .split('*GENE*').join(makeGeneArr())\n ;\n const design = newData;\n var filename = this.state.geneName+\".ape\";\n var blob = new Blob([design], {\n type: \"text/plain;charset=utf-8\"\n });\n saveAs(blob, filename); \n });\n });\n }\n changePlasmidTemplate(e){\n let template = e.target.value;\n\n this.setState({plasmidTemplate:template},()=>{\n console.log(this.state.plasmidTemplate);\n });\n }\n downloadPlasmidTemplate(e){\n e.preventDefault();\n if(!this.state.plasmidTemplate){return false;}\n \n const url = (window.location.origin+'/plasmid_folder/')+(this.state.plasmidTemplate.split(' ').join('%20'))+'.txt';\n console.log(url);\n fetch(url).then((res)=>{return res.text()}).then((data)=>{\n const preArm1 = data.split('**arm_1_start**')[0];\n let searchSequence = this.state.targets[0].distal+this.state.targets[0].proximal+this.state.targets[0].pam;\n const targetSearch = this.state.sequence.search(this.state.targets[0].strand==='-'?this.revComp(searchSequence):searchSequence);\n let arm1 = this.state.sequence.slice(targetSearch-1000, targetSearch);\n const postArm1 = data.split('**arm_1_end**')[1].split('**arm_2_start**')[0];\n let arm2 = this.state.sequence.slice(targetSearch, targetSearch+1000);\n const postArm2 = data.split('**arm_2_end**')[1];\n if(this.state.mutatedPam) {\n const strand = this.state.potentialTargets[0].strand;\n const target = strand==='-'?this.revComp(this.state.target):this.state.target;\n let arms = arm1+arm2;\n const targetI = arms.toLowerCase().match(target.toLowerCase());\n if(strand==='-'){\n arms = arms.substr(0,targetI.index)+this.state.currentPam+arms.substr(targetI.index+3,arms.length);\n } else {\n arms = arms.substr(0,targetI.index+target.length-3)+this.state.currentPam+arms.substr(targetI.index+target.length,arms.length);\n }\n arm1 = arms.slice(0,Math.floor(arms.length/2)+1);\n arm2 = arms.slice(Math.floor(arms.length/2),arms.length);\n }\n let replaceArm1 = data.split('**arm_1_start**')[1].split('**arm_1_end**')[0].split('');\n let arm1I = 0;\n let replaceArm2 = data.split('**arm_2_start**')[1].split('**arm_2_end**')[0].split('');\n let arm2I = 0;\n\n\n for(let y=0;y{return res.text()}).then((data)=>{\n let preSplit = data.split('**injection_start**')[0];\n let postSplit = data.split('**injection_end**')[1];\n let sense = this.state.oligos.sense.substring(0,7)+' '+this.state.oligos.sense.substring(7,17)+' '+this.state.oligos.sense.substring(17);\n const design = preSplit+sense+postSplit;\n var filename = \"pu6-guidernavector.ape\";\n \n var blob = new Blob([design], {\n type: \"text/plain;charset=utf-8\"\n });\n saveAs(blob, filename); \n });\n return;\n }\n componentDidUpdate(){\n let options = {\n root: document.querySelector('.screen-4'),\n rootMargin: '0px',\n threshold: 0\n }\n const highlightObserver = (entries)=>{\n entries.forEach(entry => {\n if (entry.isIntersecting) {\n let elem = entry.target;\n \n if (entry.intersectionRatio >= 0.75) {\n // console.log('intersecting');\n } else {\n // console.log('not intersecting');\n }\n\n }\n });\n }\n let observer = new IntersectionObserver(highlightObserver, options);\n let currentHighlightEl = document.querySelector('.main-highlight');\n if(currentHighlightEl){\n observer.observe(currentHighlightEl);\n }\n // console.log(currentHighlightEl);\n\n }\n render() {\n //console.log('render')\n const makeHighlights = () => {\n return null;\n if(!this.state.highlights){\n return null;\n }\n /*for (const highlight of this.state.highlights) {\n let geneInfoHighlights = !this.state.sequence?null:this.state.sequence.split('').map((letter,i)=>{\n return i+((highlight.highlightLength-1)/2)?' ':'highlight ')+' single-letter '} data-value={i} onMouseEnter={this.highlight.bind(this)}>{letter}
;\n });\n }*/\n let allHighlights = [];\n let currentHighlight = !this.state.sequence?null:this.state.sequence.split('').map((letter,i)=>{\n if(!this.state.currentHighlight){\n return null;\n }\n let style = {background:'rgba(255,255,255,0)'};\n let classes = '';\n if(i>=(this.state.currentHighlight.location-((this.state.currentHighlight.length-1)/2))&&i<=(this.state.currentHighlight.location+((this.state.currentHighlight.length-1)/2))){\n style = {background:this.state.currentHighlight.color,zIndex:999};\n classes = 'main-highlight';\n }\n return {letter}
;\n });\n let highlightKeys = Object.keys(this.state.highlights);\n for(let i=0;i{\n this.state.sequence.split('').map((letter,i)=>{\n let style = {background:'rgba(255,255,255,0)'};\n let className = null;\n if(i>=(highlight.location-((highlight.length-1)/2))&&i<=(highlight.location+((highlight.length-1)/2))){\n style = {background:highlight.color};\n \n }\n if(i==highlight.location){\n className = highlightKeys[i];\n }\n return {letter}
;\n })\n });\n }\n allHighlights.push({currentHighlight}
);\n return allHighlights;\n }\n const highlightKeys = !this.state.highlights?null:Object.keys(this.state.highlights);\n //console.log(!this.state.currentHighlight?null:this.state.currentHighlight);\n const currentHighlight = !this.state.currentHighlight?null:this.state.currentHighlight;\n const currentHighlightLocation = !currentHighlight?null:currentHighlight.location;\n const geneInfoPrep = !this.state.sequence?null:this.state.sequence.split('').map((letter,i)=>{\n let highlightClasses = [];\n if(currentHighlight&&i>=currentHighlightLocation&&i0){\n for(let y=0;y=start&&i{letter};\n });\n const targetList = !this.state.targets?null:this.state.targets.map((target)=>{\n return \n
{target.distal+target.proximal+target.pam}
\n
Efficiency: {!target.score?'-':target.score}
\n
Strand: {target.strand}
\n
Off Targets: {target.offtarget}
\n
;\n });\n const pamBoxReadingFrames = () => {\n if(!this.state.highlights.cutsite){\n return;\n }\n let start = parseInt(JSON.parse(JSON.stringify(this.state.highlights.start.location)));\n let cutsite = parseInt(this.state.highlights.cutsite.location);\n let string = [];\n let frameI = Math.abs((cutsite - start) % 3)+1;\n let distal = this.state.targets[0].distal.split('');\n let proximal = this.state.targets[0].proximal.split('');\n let pam = this.state.targets[0].pam.split('');\n //console.log(cutsite,' ',start,Math.abs(cutsite - start)%3,((cutsite - start) % 3),frameI);\n for(let i=0;i{distal[i]}{frameI});\n start = start+1;\n frameI = Math.abs((cutsite - start) % 3)+1;\n //console.log(cutsite,' ',start,Math.abs(cutsite - start)%3,((cutsite - start) % 3),frameI);\n }\n for(let i=0;i{proximal[i]}{frameI});\n start = start+1;\n frameI = Math.abs((cutsite - start) % 3)+1;\n //console.log(cutsite,' ',start,Math.abs(cutsite - start)%3,((cutsite - start) % 3),frameI);\n }\n string.push({' '}
);\n for(let i=0;i{pam[i]}{frameI});\n start = start+1;\n frameI = Math.abs((cutsite - start) % 3)+1;\n //console.log(cutsite,' ',start,Math.abs(cutsite - start)%3,((cutsite - start) % 3),frameI);\n }\n //let string = !this.state.targets?null:this.state.targets[0].distal+this.state.targets[0].proximal+' '+(!this.state.targets?null:this.state.targets[0].pam);\n return {string}
;\n }\n const pamBox = \n
Amino Acid Chart
\n
Target: {pamBoxReadingFrames()}
\n
\n
2nd Letter
\n
\n
1st
Letter
\n
\n
3rd
Letter
\n
\n
;\n const HomologyList = () => {\n if(!this.state.primers){\n return;\n }\n let primerKeys = Object.keys(this.state.primers);\n //console.log('primer keys',primerKeys);\n let primerHTML = primerKeys.map((key)=>{\n let primerOptions = this.state.primers[key];\n //console.log('this primer',primerOptions);\n if(this.state.selectedArms&&this.state.selectedArms[key]){\n let primerSingle = this.state.selectedArms[key];\n return {key}
\n
\n
{primerSingle[7]}
\n
\n
\n
Any (Self Complementarity):
{primerSingle[5]}
\n
3' (Self Complementarity):
{primerSingle[6]}
\n
;\n } else {\n return {key}
{primerOptions.map((primerSingle)=>{\n return
\n
{primerSingle[7]}
\n
\n
\n
Any (Self Complementarity):
{primerSingle[5]}
\n
3' (Self Complementarity):
{primerSingle[6]}
\n
})}
;\n }\n });\n return {primerHTML}
;\n }\n const popup = () => {\n if(!this.state.popup){\n return null;\n }\n return \n
{this.state.popup.stayOpen?null:
X
}\n
{this.state.popup.message}
\n {this.state.popup.image?
:''}
\n
\n } \n const downloadOptions = () => {\n const plasmidOptions = [\"N terminal SSPB and mCherry tag\",\"N terminal EGFP and SSPB tag with Extended Linker\",\"C terminal mCherry and SSPB tag\",\"C terminal EGFP and SSPB tag with Extended Linker\",\"C terminal EGFP and SSPB tag\",\"C terminal mDendra2 and SSPB tag\",\"C terminal mScarlett and SSPB tag\",\"N terminal EGFP and SSPB tag\",\"N terminal mDendra2 and SSPB tag\",\"N terminal mScarlett and SSPB tag\"];\n let htmlOptions = [];\n for(let i=-1;iChoose A Template)\n } else {\n htmlOptions.push()\n }\n }\n \n return \n
\n
Ape File
\n
\n
Guide Rna Vector
\n
\n
Plasmid Template
\n
\n
\n
;\n }\n return (\n \n
\n \n \n
\n
New/Upload Project
\n
Save Project
\n
Switch to {(this.state.themeColor===false?'Dark':'Light')} Theme
\n
\n
\n
\n \n
\n
\n
\n
\n
1?'':'none'}} onClick={this.changeMenus.bind(this)} data-menu=\"2\" alt=\"sidebar2\">
\n
\n {!targetList?null:
{targetList}
}\n
\n
\n
2?'':'none'}} onClick={this.changeMenus.bind(this)} data-menu=\"3\" alt=\"sidebar3\">
\n
\n {this.state.screen<3?null:
{pamBox}
}\n
\n
\n
3?'':'none'}} onClick={this.changeMenus.bind(this)} data-menu=\"4\" alt=\"sidebar4\">
\n
\n
{HomologyList()}
\n
\n
\n
3?'':'none'}} onClick={this.changeMenus.bind(this)} data-menu=\"5\" alt=\"sidebar5\">
\n
\n {this.state.menu==5?downloadOptions():null}\n
\n
\n
\n
\n
New Project
\n
\n
\n
\n \n
\n
\n
Gene: {this.state.geneName}{!this.state.isoForm?'':' - Isoform: '+this.state.isoForm}
\n
\n \n
{makeHighlights()}
\n
{geneInfoPrep}
\n
\n
\n
\n
Gene: {this.state.geneName}{!this.state.isoForm?'':' - Isoform: '+this.state.isoForm}
\n
\n \n
{makeHighlights()}
\n
{geneInfoPrep}
\n
\n
\n
=4?'flex':'none',}}>\n
Gene: {this.state.geneName}{!this.state.isoForm?'':' - Isoform: '+this.state.isoForm}
\n
\n
{makeHighlights()}
\n
{geneInfoPrep}
\n
\n
\n
\n \n
\n
\n
Cabernard Lab
\n
Sound Development Company
\n
GPL3 License
\n
API Docs
\n
\n
\n
\n
X
\n
Change Font Size
\n
\n
\n
\n {popup()}\n
\n\n )\n }\n}\n","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAewAAABgCAYAAADfL0F3AAAACXBIWXMAAAsSAAALEgHS3X78AAATXUlEQVR4nO2dvVIbSReGmy3niL0Bs+wFwJY2R67CsfkCkVqbQGgcQWY2g8g4NInl1ASLY1NlnFu1cAFm8Q2s0BXoqym/XT7uHUkz/TPTPfM+VVOAfkbDaHrePqfPz9J0OlWeWFVKHSmlekqpjlLqAn/f+foAQgghpK34EuwOhHnZeHyilNqgaBNCCCFu/OTp/J0aYj3Bz2VY2YQQQghx4IGnk7cqfn+Enx9zniOEEEKIBb4EW7KB3yc5LnJCCCGEWODLJX4lfn+JbTnnORuy9fGhUupeKZUtuF8jsI0QQghpDT6DzjJhXjcev4G43jvs+zpnvxn/QyQ6IYQQ0nh8pnVloj1QSm3j7wthGduS7e+NeK90s98I9zshhBDSaHwKdgiyCPMX2O8fmATI9LElXp6EEELaQIigM412hV973h8hhBDSOnwFnUkGENYsretvWMTbxd/+AzJg7alS6i9hXb/3f+ikIg6UUu8QRGhux0qpXX4RhATB59g7mLGfRdtaTV+tzbG+rulYc/HtEt+GqObxi2XFsyHEWsIKammyW2IA3Cql9pRSl20/aYR4IMTYO4DIl+VXfEbV2IjdGc5FFPi2sPfF718RGKaxrXg2wPr1W6XUJ6XUcxRjoVinxUHJ2Wo2C/+glOq2/cQR4gjHXkPwLdib+DmBqA7Ec4sqnnUg6jrf+k5MAIbYVw9lULmWnRZrljNxBfcdIcQOjr0G4Tvo7AY508sQWSnSiyziCyH4GQ9RgKXTknrkB8bvKwteP1JKnYu/TwIdlw9c1qSzG07f+F9JM9nKsep2S655nmNsaDKX5rjF1wvHXoPwLdgXosiJue48nPO+DUOsv0KwFazsJgq2vhEdFHhtHl3j5qZn0ZlwH/o/XCe2HN/f5U2jUUhhLjI5LUMfm0aPCy3kbRNwjr0G4dslfoS1ZpM/FpQolVHkr2CZ6/Xv5QaVItXuKR19aCvW8+jbvzUYrmthXEtrFh8wDo49i/U8+vi8f/H5MY6TEHDsNYgQedgDrDNrkb0w3OE95GbLdeh74/keXOF5z6fICtOVCImGLWwjeKOYiUCSIEQetoIgn2LTYn0Ky/IjXFJXQpRlTfB1vEa7xL96LL5SB7uY1VOsCYmLLqztEJ4uQrwTSrBNMrF+Zjy2Kdzkd3Cbm0wciq7UzQqiLKNKvK+JkePHur6fkHkcN3iccuw1iKoEW4r1JwixgjWtBTkLSnuENezsNX8iGC1F63qtZetki3B1OfKmQUKz65D+FDMcew2iCsGWAWPvRS61RnbcukJUeA8BbCkWR2HRgf9y5vDeW0apkoo4aOAkm2OvQfgS7H2Iqy54ItOwpOg+QVDaYMbzqaPd4HXVyo2VW4dUs53mnx4SEa8rjFyvAo69BuFDsE9R4EQHiT1ES0xtRd/Bxa15I147MQLOUuc1LeuZnJSsyZvdaB7TJUcqZqWBAaIcew3BtflHli/9j/hbFjxRouHHqlFURUGs9xcUVEkJ20L4vrlFcf1Y0TfE7gz34wn+BxdXHokb25uOaSmeiyYSfeHZ6jtOnDOh+t3h/bHie+yx+UfFuOZhy9Kj7xFAdgHXtxJNOu6wVj3AY/cQ6nvxum2keV0naHW7VCxrG+PIy6iSODlccN2YZXq7EBObSl+6imDTLEyOvcTxWTilB1HuzHlNnjU9gJtccoP9pVIwxXd5xTPMQEdzojyl626Ned6E/MAIbt13loFkW3QJk9hwFewruLaXsf0tnpsUSMlazRFrBdf5qRGcFiu+xPIWs9+i7ihztrwnivUTQr6Piy2LCXWTAs9IQygadLYK6/gKmxTSWaK6X8BClu+9Qe61xmweEis+XOEnWNdxXbe9pcuLkB8YW+YiM3iUREcRC3sDIr0sHtuEy3qA9eZfINAboixp2XStI+xrYASuxYyPiNI9BlgREpSRheeJFjaJjiKCfWGIteapsLrvINhlkRb4EPuRKV+x4yrWhwmL9Sz3e8zFFoosGcyLG6iK3RzBiOG4ZhH7tWCzFk3BTpeUA4Dnj6UsrWvBprmbTqcb0+l0KB47KvD+eVtnOp3eT/PZd9x3FduHGcdehA8VH+tBiWP77LCf1x4+X7Ll+D8fW35uxhfsY9fjuc1Yy9lHdzqdvivw3uw1/cSvBRsOHP7fLYvP+7Jgn7Zj3+d3I8m7pkKPvRDHanMt2x5HEWZdw7WMpTJBZx1YwD4jt+9FqdJNPDYRnb5iZsWxOXzMa815ldq2EHEbu+XRhYXqIxBwTeSZ+vSEdI081DL5rH1sIyynhI5kTvlacKGOPGFSjC2M79QCbJ3HUhHB1sVQlhHAIfHRmOMaor2K7arAe2LARawvI+/Bu4KLSxaleFfzMS0ipZ7jcuDaFp/IRP9zgfxkV1K8FkxsSgWb9zpSPy659THgPJaKCPYA/alN3noucHInAtU6KKSiC7MMI6w57hJFmsK6tbYCuwncoLuJ1XDX107fQ3U8/f6Qop3StZCHzXXBHOy4iKWSpCtOY6mIYGcW72+I4u6Ix44WvM+WDUwEZKT4C/TLjqmMqYtgx2xda/RNLvZBoi3NlFjDbNtXD+bQop3KtTALG9dpCmO0LdgWv4kRp7FUdA37WvStDs3pjLSuNyIiPQZsBXuUiLttDa6nmN1PupVpanQDdIU6hsiEsAxTuBZmcWxhYd/Swo6GDwm7wPNwGkt5hVN0o44ptmujp3VIOkbw2XMUVNFUNWlYxIrDzTaVmftWAhZVyq0QQ1gMvix2kxSuhTxeW6b4sC5CHKS8Xj0Lp7FkWti6+YbMu17HGvajCgLCNsTvdyJS/KU4vhhwcYenEn0a+3rwbgMHsys6Qt634KTU310LtO1NcUzBjoJ+QxsqOY0l08IeGGL9VfxuUxilLFeiYMo6Jg8vxT58RKX7wMWqY7qIH1gzPZ+mdo07Fl6/eduxozdgjxHiUdCEADPvmIItXc7/gytcC+iTQMdgIvOvZf/sm4jablKw68U1B77JsAGMPScRV+lrEweevDrnOT3Uk8Z0icuiKD2j33VVpUJ19Pm+sPbfVmThF4WCXS+uYj0vD36lAVZqn8JTmrOm3dwTxqWWwhkmXvI+q7MnpqmfGFOwL4Ql/Sznuao4Cpg2RtLHJoZgXKJ2u75xr8yo6+2bkSGwrv3V6X0oR+jiM6Q4fQfreqfpE1VTsIewrM3WljeRWbh1Y3tBNWltLM8aqarKmI2YPbZI1TF7jvvmFmumprV/4lgoYqViK7vOa8GFPGuM1Ivtck5TljPmjqW8POwBgr82RNT40HMN8SIMMHno4HjqOAbfpC7YJ7jJzbrBVWWllBXsUPnJruzMOa4TR/d86MjuWK4FWw5x7BTruLDxDoWeWIem8FiaVTil7opiQ8PKfyIEPHXRTpERxCWWm1tTPBWL/o8TB5e8S+rhPGK7FmzR3gt9s6dLvH66ltf6ZaL3hNJjKa9wSt0MclzyChHjsXfwWkSKRT6ywfB74jforYACFhKXnOAQFnYTrgUT3TTmC9f+a8f2/KdYRtZqLM0S7FMjz3FYYdESmVr2CjXENVVVXFuE7WwuRcHei+AYTGwE47ND5as6sXXlh5igxHgt+EKXuWVKXH3YTjJTLCNrNZbyBPs0J0L8aYVR4nJicGUUU8mrMV4HLKxQL7YW3q5RgOPAQ0R2aFxuRk3uVx2KJjWaSA1bwW5NHIIp2KuGWMs63ptG6dBQyPKnQ6NU6vsKPj80KZV5jBVfa1a6Kta/6nuVrNhu1rct8+jEwGuO01qw7VveGgMqT7A17yHQr8RjVbikT4VFvWyUSo0lN9vlAuFN1J1xoBSOA1hY/0aWlkTB/hbVvVRwO3QsguKz9Skpjq1gtwZTsM1KZwNjTbmKWt73mChIa/oTenLHUkvcxQXDmbsfQkb16hv250i+L9vrra2TQx31veQg3Km2E00VGjIFMAX7WjT8WEYPar1uPKlQMO8wUdAz6l5EYq0cZ3UUbD/cVpCK04VopxhhTr5xgqI5NnAtuzoo2AXICzrbzqkbPsHjoXKgt7F2fY+fg0Cf4wsXC5s3f38cVpDSsYLoYU600uXS0tKmYJOoyBPsa6xlP1dK/YmfGwF7YWfr0n8hqG0ZP99EXkt87CDadLP55XEFJQlTXdNkNsN3bPLZVzjBJjExKw/7HsFfR/h5h8c3PEeKZxODF+Jvadm/MILgYsM23YatIf2zU0Ef4xTXNCnY3xlbjll6VuKmVa70opXOtiHaf2O7N4LRbDGj0lcRYKZpomArutqCkFlQP8P1GaqQQgoNLSQU7B+hYMcLMyEKUESwe3BZy6Ily3jMZ5rXRoXV1Hzgso5dRcvGtnKCkn8+0ntM6rKwmZ9Kmo7LtdqaZYsigi3bak6MYiquLTevjSpm/2ANW1UclW6Da/EO29aJpDgyvUcKuMtsvo6bg41gswsVSQ3ba7Y1XpAigq2t3gmsYBlFXtQiXsVa+JXoua3gWp8l+vuRd+YaO0Yo79I1XjlawH+GFZ6Ci9R2gpBifeXQ0KsVN7YTaVrYOSyLILTlEu/bgKX8DNZzVpf8o+i8lQn4I6xhf8LPRxG0+CyCa0rRa0ah1sbIsgB/1Td9Wzc8Lez/EoMlxknDbGyv2dYYPkUEWwrnU/SmzntuFhczBP6ZiDi/guXeEznZKXDuoUzpZ1ratZGCFWo7oUux5WBIupbncpaI2I77RROwNgu67XhcSzAg1Iqigv0q5/G3BQS7I4LVvsJyllHgPiLN68RXTet32FyCmtZELWxS/JzFzJrlZM42hanJ2LZVnTXxsRXsecLST7D9q09cvELHC8ZzIzyZDwq+bh/irAX2QgSEdVCZrIM156FYezbTsq5hPW+q5nDiaXbXFzdnHdl8OefGqyPNzdllW1yhWxiEtw6TJpvAvyojr20nXzZFQprMgeXEZzTn+3axsN9hjOux2scYbnt9BhevUHYv/ILzeia+n26TJkJFBVtBbM2obV0Bzeyo1ROvn+D5h/j7obHP1LnFBeLTJcMI8mLI8zQyhHtenfEDh0IoVUyIVnBTt7UKQld+S4Ut8V3bME9AXCZufS6D5aI9li7n5rjJ988ygp2HKdYKf18I63ofpUaVIdaf8LomcIiLjAEl9WGuUYYYtL5dzbtiwrcmriEXa2CeVyZlTNE9NyZPfcMl6uP7n+epYFBfGC45mZmNi2D3hFh/NSLIH+L5K+Eiz55fx2uHIkq8CYwRccz142bj23LVwuyzTnnoDmZ1YXpEQltRZwtEmUF9YTjHd0vjJ4cyaV3z0MI8y2K+gPt8CZb3UeQ51jacN/hmSb4Ru6v5nELihXGBsczAvjAUOfetZZFgd+DS1oIs215KwX2K9ein4rE71T4OGfDTWC4jF8Ox5zKsbWavoMubsQJhOGNZ3XzmCXYHIvxSFDx5I1K5rlHkRLMufn/fUsFWGOwU7WYxtiyyUiU7XFf1wl4JIeY4DwMnnzOYJ9inRpCY5qmwtAfIx5a8MizxNrJHt06jKGpx1cUeXeFe2CkpwqGEhROBb+fAtwdjL/VljHmCrd3bWVrWH0bxFFkLfIC16V/wU9cA1/nZRw0okGJDNpAf0+pJnjIWV9WMcY3xBu/GCLXlbb7nRcFpZfHdYS5lfArsCN9VYwVbcmWUC81r+iFd4Lp/duZCf4FWnNeJtc/0QWb1/EprO0luIxfDS4gMLWt79FKHbSMYJSZNPtZcdXMaBrR9Q59b13MxhvdEpW5AzRNs3UZzGWL7l3huXq3vDta5zfzs9QblXZflEB2iOHNOgxNMtGIUwxFuPvTe2HMOof7Z04Ts1lH0FY5H3h84EfvGGOfW9nsaG2OlsRa2bHspxfdmQQ3xgZGf/Vw8t9lCK1szFr2ZdwKI9y32uVPgtU3gEv+vL3f1OPKJ1SFuXLau2zYzFq7mJYu16iJo0S577ZxjcmgeDy3sH8kmNI9LTmQucyZSSZ/Xpel0Ou/5HoT7CdayLwr0qT6CG1xBrE+N+uGPEurGVRWystVugaYU5+LCc6ml3STMRhmLCmvINC3XNJIDz4U8TsTxND3FxaxQprE5nyfGuaqz6pse03n/x7lYU2X6Unn0WO/mVEXTlQMbWfFPCva+0dxjaFncZCBKkU7gTpfNPpbcDpmQ6LAV7F/p1iaEFOUBXNRXRh71JoS3ZyHaQ1jZD+Eal2Kd16aTEEIIIQv4CZb1es7L1o117DJsG32vtVjb7o8QQghpNQ9ETrXCmvO9cGn3LE/ONd67iu26gbXDCSGEkMowu3Xp/tSTnLQsG+5aXKKUEEII8cZPQqQVgs0+CrH2IbYDUXhlKPpkE0IIIaQgWZR4B8JsWtQTtMR0Ee2h0cFL77dnTBQISRlGiRNCgvMT1pY30MRjgu2tB7Ee5Ii1wsTglF8tIYQQUhy9hn0XoMOWdH3/CZf4R/y9OeM9hBBCCMmhaPMPH9yhVCkhhBBCShJSsKU7PStV+o/or30z4z2EEEIIySGkYA/nCDMLqBBCCCElCO0S72H9+gbu8PdKqd/Y/IMQQggph1k4xTf3qCt+xO+FEEIIsafKoDNCCCGEWELBJoQQQhKAgk0IIYQkQFaalN8TIYQQEjm0sAkhhJAEoGATQgghsaOU+j9/byLJPvuGoAAAAABJRU5ErkJggg==\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAABACAYAAABGHBTIAAAACXBIWXMAAAsSAAALEgHS3X78AAAFSUlEQVRogdVbLXMbSRDtU1kgAQpQgA8IxCABCtACBxhcQND+qi39Kh24gBwwOIEViEEMfFUxEYiABCygVDk1qtdKqzX73SuNHrG03p2Zt/3dM/rj+fmZmiCOkj4RvSaiF0T0MmOoBREt3d9JOt40mrAhahEGyQERXRJRt+LjKyJ6IKL5KchXIhxHiSP4HtJsCkf2f0f+mMRLEY6jxKnqiIj6Obc5yT3hL+OCiF4RUS9HExzZu0k6fqxDoCoKCcdR4lR3mLHgR6jmvGjeOEp6sPWrDA1xY8zalnYu4ThKhligRGNVhGm8g+QlnHZMJ+n4qc64ZZBJOI6SERyTxAJSMFlQHCXuZb5V2uNe4u0kHa9yHq0NL+EMyTo7e7BeAFQ9UtJeE9GXNtS741nAwEN21gZZB0jyVjk7Z+PXbcy3RxjeeKjumbXtQSFJTbofR8k767m0hEfKno4WLkB6ChtmvIUQzLAjjOxJxtlFW2qcQ9o5w5m6PLKcQ0pYq4+e+ChATJdxvQ/HZkcYA0rp3rcZC0vgTt2inWhtdDIGPIrdZgEvW67hMo6SqkWKF0z4tbg2P7F0d+sQn7sFeXxpdKDOMrctzIuPAdiy9Ng2hFHNSARBGFiIz3qdtdBRXYr1qTsSCnuJiMWAHTVQCLYr8cN6QJ1phSTdA1jEY024lZLMEI1DkyZs0asKGpqwaaJujUk6XjQdsoN+McMkmzGESSiS6KC7wDBL0o0g12PiX7SEucEWCmTKu7RYUwd2IcNREIQ9KW9j+yXhtORgZpVJQ+iOqUnKy4RlKdY9tZTxwiVhs32oLWFUJtJ5DU8s5SsVMcxaTTIOfxOfu2iQHx2wXTn3wiL+HhBGd1JK+erYHhtaFanL3zJurwWdaaXq+8iygVYCQxV755bSJU0Yg9+LS+6N3xyDtGcva91G5zRrb+lG1cmtbXBBjYeeMPSljfkO9paAqUrl3KI+Wm99QHNuPGTJsjUrkbdd2sVifHu4X5vYVo5UN1BlntP1x02dVpkTAL59YqpzOEUchvGNR/AfD+pFbzfzxLPrJpvxZc94XHo22iRW6D+tPeUmn/HoF5zz6LKvIKKfRPSXuP9BqbiLzbdVyVKVUzxQQzfpG8O6eYE4u4FUJWkS13x4nKTjyl688jktQXzQoCX0iAXv/AA24nmncHsCAN9l8nOvXnhlG290Ek+czOmjPeSL1xuo/BISzTyNp0hvBLENbHkuPDv/r9KGfeOjh9bwOMmDHAAO7EbcMy1zdIpy4vCpyPZUl8OR/FcnIDAFab+lU+BgCIu4z35hBcl6d0OgxpwGcwpc2HUNScJd5ZG/FsVaOCy2X/fsdVEdHwxhSFIW+oWLx3Mz0aLqQdKZzwVlw5N0fKcklrt4AZn79zxHr3YIijBlSKzEM5yscANjAG9/gOAIA3sSy1q8BEj/J1rOjvRBzh5cHGZAlT/JfBoq77vPZWNLF74Qnj6KW/YSk2AJ03697M2qEIZkkbEWPTCZse0Sl1BVegsscioujeJ9NeW82t3zGeRGeCmcmOy1qYImTP6saiiyKt5dfEJY29qv+z9IS4//wal/0CotgcPkHG7YK/+JHjZnXE76F5N0/Dc/GkfJtai47oKXMAMHXaXEXP/6O5KVAYhfyGOLUH/ZjFyeDWH6HaO5KnJq/QE18T+onz+zUxOlJju0bf19cbrl18ZM9Lw4q5qp8lH/hGH384WzsWEJT0d11+7x1NPnE4fz4InR93BO/BK2J+x1O/lsCZOfNCNzp+SsnJYGCOl0cwXn5d2mOWsJM8TPBfmXbf7GARH9Amg2YgLmDeokAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA9CAYAAAD1VdrqAAAACXBIWXMAAAsSAAALEgHS3X78AAADhElEQVRogd2aIXfbMBSF73pWkIIMbGADIQEtCKlByMiwf5WPf5XRaMiAAxbQgpGQgRY0oAPZOdlRz1P2qsqOLL2XOL6kbhLL+vSkqydZ73a7HaSUZ8UEwBTAoqrLrVjBCroQhr4FMAbwNc+Kyz6BuhIBZ9BWBv5aqpIaSgb3QFtN86y46guoqyRwD/QawD37/7NILRUUDe6DrupySfBWH3vGu1cUeAs0qrp8Zp/31uA6g7dBMz3S5TAiHghtZE3tT1r19BQM3gHaaER/nxu+P7mCwLtA51nBu/dVXxOZg+AdIw3H0Ezkv+VZMU6rprxac/UIaHvfS9rKGsHk7cuqLn/3HjwWmt1vDG5O6auVgV+333kcecFToVk5lwTPx31UWdJ6Ay4F7ZRpypuwj8w8/+OUS9dX4BrQLWVvANRVXW4kyu+qPbgmtBVNdXPH9EzkHw/fLasX8GNAM3hjdtmpTe+CosCht87Sci+JZIS69oLl80a35ANHk424az6gitnKvQfwgdxZcty3mh71DtPYW2kv4GN8SttFIVG9r+ryTqICnmFmFzYjz8/Ndw/U+Em+4Lr6FUVg0vBgLrFx6TG9EBnwn7E94VDKuk88TAvnWTGj7WOQFyykuqBjelua7p4A/HWGGpf53SomAJ331Z1xaR78XSoRIfMctTUmDY0bp0d27n0xW08rigaoa4rtoZsGPNSDCPAh9VmdwSm6C4o2qGvOUisSKs9MEOU1UZuNHvhJnhU3KUAhkoJGyvYydckV++iaxp+KJKGTwPF/vPEsb6ax2yINDYlXSJTI2EqImh2UoCH4tlTF6bWgIQWu4fSa0JB8Py7p9NrQkASHkNMfAxrS4Ghw+tB7PdBReXiIxMFJvLJBy8eGPYGJ1psYLXC+gDi4emuAhuZ5Gi3wT+y6dUHRsAvDpQKvBR6kBiNbOEMFGvAnA29zb8+REkjDa4HzjYk3J59CpixteC3wJ3b9atHSZZ7WhFcBd3ZAv9iLmOREC170LCtXnhVzds5tRZWNzsgaprxN7LlZTXP7xa5nqWmodOTVwKm7+05AROfekvDa09nSydySFxxS8KrgNPZqdgZGZMEhAa9mbsdQiuGdNGVNVUrkzxocCfBnD45I+EGAIwJ+MODoCD8ocHSAHxw4AuHPeh4/pLZ5fpARt2qJ/HjQ4GiG3w66q3PRwSWzKXJX1eX6HyZ+NHMADp1PAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD8AAABCCAYAAADg4w7AAAAACXBIWXMAAAsSAAALEgHS3X78AAAFTklEQVR4nN1br3PjRhR+9VTAB1zggpCABvhASARSYNADRfqrNPqbCoQOhBicgQxqkAATk4AeqEEPpDPprOd79runVbS7kpxVv5mbG8Wyou+9fb++3fzw+vpKNmRpnhDRTHz0rayKf6w3jxQ18lmaG8IfiejKQulARI9lVTz/78hnaX5NRHcO39sT0basipdB325gTPjxirghtSOih7Iq/iCiz0S0MUsfn5t7b8dMnNjzWZp/IKLfiCgB8VVZFQd9M/LALcgb7Mqq2F7+tfsBe34B4tRE3ADLfIvYN7jBihklmDwnt30TcWWAFVaIwR2S5OgwwVJmrztlcYsBlnjOqDBRtdw5e2OFcLwnYzTApKyKr+La6+XLqjAl7wmXs7FVAI559ritsXkTZVU8ou4bXGdp/nH41+4HTJ5j/ToweckKsBhLBWDyT8L7v/rGLhLgWjzjdgwV4EgeAwsnr6lJXr4PwjM4f4wiAZ7aWySvHS5nWZq79PhHGJJZmi9VzkhCjHhJTOTvQqvK3jPxf+NAfAaSc/xoLxKglxHflTywFsnLxG5jBcjSfA7iHN9m0tuYfyqJthrxPVAjj+RVtbWvILQUw9C6rIqduGXjasRoyNO5e1vjMtEVAEuZG5pvGIae1TN0BYhuBmiUsag+438FGbnMDyDe2BaL0CAY6iEWEeRN8nT2MjctL6IF3iO2W6GMeCir4mEoQj6wLnsJEJT1mzixuf4elNHoKkAreUBWAIO/fX+RMmIUFcCJvKUC3AcmL11G5y33DwpXz3MF4KVuln8aOAP0YcRe4EweL/8sZgDz0ve+L2Epo95G7Ate5PHyO5G85lmaewsYEFB4FQUZsQ94k6dz8uqk4KoKMH+PChBEHliJTYyg7k0Z8frSIkgweSSvL0rB/RDwKG3Ei1WALp63VYD7wArw5T0qQCfyZK8A3rHbRxkNQWfyVK8AV4EVoLMRfdELeaDzHp7FiIPK4L2R72MPD0v9J/GjxZAiSJ+e77SHB0P9LrSCwUWQXslT4B4eQmQpRuYnYcSaktQXeidPnnt4SI53Qgs0AuijmgGC9hLa0KrkdIFSgZ6wr8ekE5CWMf2gzwcoFchZPXLBIJ4XsO7hoRPUmxwGP+sHqBmgVxFkUM/Tmag877NFGJy0QGR4Tmpr21G3LM0/td3ji6E9z3t4K1wmIr4JobBxHJI6D1Iag5OnevtKMrFRvb9PcAhSP0Pf07kCXIQ8nWN3jW2sFa7l58ZA/+LSSkoZcdpVBBk85l2hsvpKHZf5Dkh6XD6DK8DFPO8AnuMPbxGn+gwQLILERJ6FENfjcFIFChJBYiLP+LHpAzPlKS/LCuAtgsREnneBao0OnfuFBbx8NIClAniJIDGR5yU8a9ACX9QyP3pZDVJeMnhM5GWs1xKYZb//JJiqQcp5LyEa8iDHGfwX2/K1dIsnwVQdhnRSkmJLeOw9Q8g6wKhGR4/LW1toNCEq8vAse2/R9PLq2NzpyGuDktS4lxBjqduKl0+bbsKxOc4TC1UBpArUuJcQHXm8/EkFalFw9YmvpgpglcFj9Dy3r9KrVgVXVQD5RxO6Alj3EqIkD+j2tSn+uQLsRbfHnz0KI9YqQDRTnQ3iaOubf/XV8oxEHZ876YQxe55jVyavpe8A09AcHcMjas8z1AogHIXbtX+z9oxPuDwadRTkyW4AM/P/6RMGSjDZjYY8neP3XggfxEfc2wQQGO9GniYdFXkGPHirtL4XrAa9EqYYk6fq3s0oydN5FVxB6Z06fIVQCo8SmEmEoyUvgSVtvGv+17286QPMavjru/xARP8Bzo/KY/RZd/kAAAAASUVORK5CYII=\"","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAMAAADDpiTIAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMS1jMDAwIDc5LmRhYmFjYmIsIDIwMjEvMDQvMTQtMDA6Mzk6NDQgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMi41IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCOEUwODc2QTcyNEIxMUVDOTQyRDhBQURFMTM1QjQ5MCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCOEUwODc2QjcyNEIxMUVDOTQyRDhBQURFMTM1QjQ5MCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkI4RTA4NzY4NzI0QjExRUM5NDJEOEFBREUxMzVCNDkwIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkI4RTA4NzY5NzI0QjExRUM5NDJEOEFBREUxMzVCNDkwIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+SS340gAAAAZQTFRF2NPk////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\"","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANMAAABuCAYAAAC9UyZyAAAACXBIWXMAAAsSAAALEgHS3X78AAAFVUlEQVR4nO3dMW7jRhSA4bfBtoHVJG10AysnWKVJrTZNbJ8gyQnivYFSplq5SRtXabObC0Q+QaQ6jXWAQMEY8wyCEIdD8nE4JP8PWGCxS8rSSL+HGtLym/P5LBiNjYj8KiJflu7wfyLyh4h8LyLPPJ3DIKbx+E1Evqu5t/+KyLcisp/7YA3hs/k95FHaRYTkfCEif4nIau4DNgRiyp8L6abBvfxcRD4SVHrElLemIakrgkqPmPLVNiRFUIkRU566hqQIKiFiyo9VSIqgEiGmvFiHpAgqAWLKR18hKYLqGTHloe+QFEH1iJiGlyokRVA9IaZhpQ5JEVQPiGk4Q4WkCMoYMQ1j6JAUQRkipvRyCUkRlBFiSiu3kBRBGSCmdHINSRFUR8SURteQnhpuf2r5dQiqA2LqX9eQHkTkseE+a4JKj5j6ZRHSbYv99gSVHjH1Z6iQFEElRkz9GDokRVAJEZO9XEJSBJUIMdnKLSRFUAkQk51cQ1IE1TNispF7SIqgekRM3Y0lJEVQPSGmbsYWkiKoHhBTe2MNSRGUMWJqZ+whKYIyREzNTSUkRVBGiKmZqYWkCMoAMcXbTjQkZRXUwv6ujQMxxVmKyA8d9s89JGUR1Nb+bo0DMcW577DvWEJSXYO6mevsRExxli33G1tIqmtQs3zvREz9GWtIqmtQs0NMcZr+BvOxh6TaBjXL3/hejGnhB2495xWZCk0+g2EqIammQR1n8tveV35cXt8CaEzuyT+IyJ/+z2Hu5wxKdpGfEDS1kFSToKb4+IsW/hTA376Vf/zr4yUmV9YHv6ypZn/O4IJ1TVC/TPyFpEEdA9vc+dfNlLmjlHelx+dWMO/fBl4ALqiNVoeX9wErP16bwjeagx+jqb+IxAdVHIPiv2/9WExdOSS1eVvzwNsuCU/ZbubfYJ59OLM9OVvhmtU8wAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmIN4qsOWJmIB4i8CWexfTc2CDNQMNvFqGhsLFtA/8f3BnYGZCh3kvM9MhsMFXBAW8Ch2pHTSmY2CjDWMJvEwq14Fh2OsCxMfARreMIxDs4OQaionpmoUIQH4MDMFLPxrTo6+ryj1jiRlzr/+rwMPfSSGmZx9UlXcc7mGmFjWz0knbKZ60rZt9tqzsYYYea2alrf6lGJNb1XsI7HTlbzh0Fhj9CJ2+KHviOTBz74/KqpyqYpKI2em6uDOSCZ1YL2uyLaq5tzU/14zPtngFUTkm9x3wfc0N3DBDJecC+RT5RXcTetxDcSF9qPnaT+XJ5835fL604b7mBJXe2KbhIQjaW/rnJXT8/p6V104Wfra5ibiRr8tHAVVXjd/WLJWLj21fs9IBOwd/bdilGco9V3eE1Mnav55jQrq7dDhdNTOJn3V+j7x3R/9EcoiRxtKHpbNV6KQ7wtYRCw1FD1WniUIxSeSxY5GuuT/6Jzj04x3AUFZ+sthEvJ0pqgxJImKSFkEVHXlPhYwsGsZTFAxJImMSPxXWnbwCpipqYSc2JvHH57sGx5bA2J38bBS61O5Vk8+AOPgZ6qeIlT5g7B78BBIVkrT8dCK9Ri906REwVu7Uwzd+Rmq0gNbkMO8SvaL21v+IOzBGugq97XI5VteYinS5ce3/zmIFcvapcI4u+lAuxDKmskXNp7kAQ3Dv/e1P14jI/1CFONC4YRMxAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAAuCAYAAACSy7GmAAAACXBIWXMAAAsSAAALEgHS3X78AAAAxUlEQVRoge3YQQ3CQBRF0UuDABwgASSAAyQgARxQByABB0hBAjgoCob8pCRN1yWZ//rOrl3N3cwkb1FKoXcEDsCK/J7AFXhFSURugQewFogba4FLREb1pq6zTWrfiAeGXVPBIf4uIm/CfZ+4gCLyBJyBdwWHmtIdiEu1Gz4h9D9VnpDu9zGOlDSbi0eeI1U4UoUjVThSxXLQ4fkjKc8fSjx/KPD8kZ3nD0mOVOFIFY5U4UgVnj8S8/yhyPOHDM8fyc1o/gC+cLdO/ZSnK2EAAAAASUVORK5CYII=\"","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './App';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/public/build/static/js/main.d723f0fa.chunk.js b/public/build/static/js/main.d723f0fa.chunk.js
new file mode 100644
index 0000000..63aa2d4
--- /dev/null
+++ b/public/build/static/js/main.d723f0fa.chunk.js
@@ -0,0 +1,2 @@
+(this.webpackJsonpcrispr_buildr=this.webpackJsonpcrispr_buildr||[]).push([[0],[,function(e,t,s){"use strict";t.a="data:image/png;base64,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"},,,,,,,function(e,t,s){"use strict";(function(e){s.d(t,"a",(function(){return N}));var i=s(9),n=s(10),a=s(11),c=s(2),l=s(22),A=s(21),r=s(3),o=s.n(r),h=(s(33),s(12)),d=s(13),j=s(14),m=s(15),g=s(16),u=s(17),b=s(18),v=s(19),x=s(20),O=s(1),p=s(4),C=s(0),f="http://142.93.118.6",N=function(t){Object(l.a)(r,t);var s=Object(A.a)(r);function r(e){var t;return Object(n.a)(this,r),(t=s.call(this,e)).state={menu:null,screen:0,hamburger:!1,themeColor:!1,highlights:[],currentHighlight:null,fontSize:23,fontMenu:!1,geneInfo:null,popup:{show:!1,message:null,image:null},currentPam:null},t.changeMenus=t.changeMenus.bind(Object(c.a)(t)),t.highlight=t.highlight.bind(Object(c.a)(t)),t.saveCurrentHighlight=t.saveCurrentHighlight.bind(Object(c.a)(t)),t}return Object(a.a)(r,[{key:"changeMenus",value:function(e){var t=parseInt(e.target.dataset.menu);t===this.state.menu&&(t=null),this.setState({menu:t},(function(){}))}},{key:"changeScreens",value:function(e){var t=this,s=e.target.dataset.screen;console.log(s);var i=null;1==s&&(i=1),this.setState({screen:parseInt(s),hamburger:!1,menu:i},(function(){console.log(t.state),3==s&&t.setState({mutatePam:!0})}))}},{key:"openMenu",value:function(e){e.target.dataset.screen;this.setState({hamburger:!this.state.hamburger})}},{key:"changeThemeColor",value:function(e){this.setState({themeColor:!this.state.themeColor})}},{key:"closeAllMenus",value:function(e){}},{key:"closePopup",value:function(e){this.setState({popup:{show:!1}})}},{key:"highlight",value:function(e,t){}},{key:"fontMenu",value:function(e){this.setState({fontMenu:!this.state.fontMenu})}},{key:"changeFontSize",value:function(e){var t=parseInt(e.target.value);this.setState({fontSize:t},(function(){}))}},{key:"saveDesign",value:function(){var e=JSON.stringify(this.state),t=this.state.geneName+".txt",s=new Blob([e],{type:"text/plain;charset=utf-8"});Object(p.saveAs)(s,t),this.setState({hamburger:!1})}},{key:"openDesign",value:function(e){var t=this,s=new FileReader;this.setState({popup:{show:!0,message:Object(C.jsx)("h2",{children:"Uploading File"}),image:O.a,stayOpen:!0}},(function(){s.onloadend=function(e){var s=JSON.parse(e.target.result);s.popup=null,s.hamburger=!1,t.setState(s,(function(){console.log(t.state)}))},e.target.value.length&&s.readAsText(e.target.files[0])}))}},{key:"viewFinishedDesign",value:function(){var e=this,t=Object.keys(this.state.targets[0]).map((function(t){return Object(C.jsxs)("div",{children:[Object(C.jsxs)("b",{children:[t,":"]})," ",e.state.targets[0][t]]})})),s=Object.keys(this.state.primers).map((function(t){var s=e.state.primers[t];if(e.state.selectedArms&&e.state.selectedArms[t]){var i=e.state.selectedArms[t];return Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{className:"",children:Object(C.jsx)("b",{children:t})}),Object(C.jsxs)("div",{className:"",children:[Object(C.jsx)("div",{children:i[7]}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["Tm: ",i[3]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["GC%: ",i[4]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["Any (Self Complementarity): ",i[5]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["3' (Self Complementarity): ",i[6]]})})]}),Object(C.jsx)("br",{})]})}return Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{className:"",children:Object(C.jsx)("b",{children:t})}),s.map((function(e){return Object(C.jsxs)("div",{className:"",children:[Object(C.jsx)("div",{children:e[7]}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["Tm: ",e[3]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["GC%: ",e[4]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["Any (Self Complementarity): ",e[5]]})}),Object(C.jsx)("div",{children:Object(C.jsxs)("div",{children:["3' (Self Complementarity): ",e[6]]})})]})})),Object(C.jsx)("br",{})]})})),i=Object(C.jsxs)("div",{children:[Object(C.jsx)("h2",{children:"Design Info"}),Object(C.jsxs)("div",{children:[Object(C.jsx)("h3",{children:"Target Info"}),t]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("h3",{children:"Homology Info"}),s]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("h3",{children:"Oligo Info"}),Object(C.jsxs)("div",{children:[Object(C.jsx)("b",{children:"Sense: "}),this.state.oligos.sense]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("b",{children:"Antisense: "}),this.state.oligos.antisense]})]})]});this.setState({popup:{show:!0,message:i,image:null,stayOpen:!1}})}},{key:"saveCurrentHighlight",value:function(){var e=this,t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,s=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,i=JSON.parse(JSON.stringify(this.state.currentHighlight));t&&(i.color=t);var n=this.state.highlights;s?n[s]=i:n[i.name]=i,"targetSearch"==i.name?this.searchForTargets():this.setState({highlights:n},(function(){console.log(e.state)}))}},{key:"changeCurrentHighlight",value:function(e){var t=this.state.currentHighlight;t.location=e,this.setState({currentHighlight:t})}},{key:"stringLocation",value:function(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:null,t=arguments.length>1?arguments[1]:void 0;if(!t)return this.state.sequence.indexOf(e);var s=this.state.sequence.indexOf(e);console.log("location",s);e.length;if(-1==s){var i=this.revComp(e);console.log("rev",i),s=this.state.sequence.indexOf(i)}return s}},{key:"highlightString",value:function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:null,s=arguments.length>2&&void 0!==arguments[2]?arguments[2]:null;console.log("string: ",e," color: ",t);var i=this.stringLocation(e,s);console.log(i),-1==i&&(i=this.stringLocation(this.revComp(e),s)),-1==i&&(i=0);var n=e.length;t||(t="rgba(252, 210, 126, 0.3)"),this.setState({currentHighlight:{location:i,length:n,color:t,name:s||"cutsite"}})}},{key:"clearHighlight",value:function(){}},{key:"revComp",value:function(e){for(var t=[],s=0;sc.length?e.push(c.slice(s,c.length)):e.push(c.slice(s,s+10)),e.push(""),s+=10}return e.join(" ")}()),x=e.state.geneName+".ape",O=new Blob([v],{type:"text/plain;charset=utf-8"});Object(p.saveAs)(O,x)}))}))}},{key:"changePlasmidTemplate",value:function(e){var t=this,s=e.target.value;this.setState({plasmidTemplate:s},(function(){console.log(t.state.plasmidTemplate)}))}},{key:"downloadPlasmidTemplate",value:function(e){var t=this;if(e.preventDefault(),!this.state.plasmidTemplate)return!1;var s=window.location.origin+"/plasmid_folder/"+this.state.plasmidTemplate.split(" ").join("%20")+".txt";console.log(s),fetch(s).then((function(e){return e.text()})).then((function(e){var s=e.split("**arm_1_start**")[0],i=t.state.targets[0].distal+t.state.targets[0].proximal+t.state.targets[0].pam,n=t.state.sequence.search("-"===t.state.targets[0].strand?t.revComp(i):i),a=t.state.sequence.slice(n-1e3,n),c=e.split("**arm_1_end**")[1].split("**arm_2_start**")[0],l=t.state.sequence.slice(n,n+1e3),A=e.split("**arm_2_end**")[1];if(t.state.mutatedPam){var r=t.state.potentialTargets[0].strand,o="-"===r?t.revComp(t.state.target):t.state.target,h=a+l,d=h.toLowerCase().match(o.toLowerCase());a=(h="-"===r?h.substr(0,d.index)+t.state.currentPam+h.substr(d.index+3,h.length):h.substr(0,d.index+o.length-3)+t.state.currentPam+h.substr(d.index+o.length,h.length)).slice(0,Math.floor(h.length/2)+1),l=h.slice(Math.floor(h.length/2),h.length)}for(var j=e.split("**arm_1_start**")[1].split("**arm_1_end**")[0].split(""),m=0,g=e.split("**arm_2_start**")[1].split("**arm_2_end**")[0].split(""),u=0,b=0;b=i&&a0)for(var l=0;l=o&&a1?"":"none"},onClick:this.changeMenus.bind(this),"data-menu":"2",alt:"sidebar2",children:Object(C.jsx)("img",{src:m.a})}),Object(C.jsxs)("label",{onClick:this.changeScreens.bind(this),"data-screen":"2",children:[Object(C.jsx)("div",{className:"arrow-down",children:"^"}),"Select Cut Site"]}),a?Object(C.jsx)("div",{className:"target-list",style:{display:2==this.state.menu?"flex":"none"},children:a}):null]}),Object(C.jsxs)("div",{className:(3==this.state.menu?"active":"")+" menu-icon","data-menu":"3",children:[Object(C.jsx)("div",{className:"menu-image-wrapper",style:{pointerEvents:this.state.screen>2?"":"none"},onClick:this.changeMenus.bind(this),"data-menu":"3",alt:"sidebar3",children:Object(C.jsx)("img",{src:g.a,alt:"sidebar3"})}),Object(C.jsx)("label",{onClick:this.changeScreens.bind(this),"data-screen":"3",children:"Mutate Pam"}),this.state.screen<3?null:Object(C.jsx)("div",{className:"pam-box",style:{display:this.state.mutatePam?"flex":"none"},children:c})]}),Object(C.jsxs)("div",{className:(4==this.state.menu?"active":"")+" menu-icon","data-menu":"4",children:[Object(C.jsx)("div",{className:"menu-image-wrapper",style:{pointerEvents:this.state.screen>3?"":"none"},onClick:this.changeMenus.bind(this),"data-menu":"4",alt:"sidebar4",children:Object(C.jsx)("img",{src:j.a,alt:"sidebar4"})}),Object(C.jsx)("label",{onClick:this.changeScreens.bind(this),"data-screen":"4",children:"Homology Arm Primers"}),Object(C.jsx)("div",{className:"target-list homology-list",style:{display:4==this.state.menu?"flex":"none"},children:function(){if(e.state.primers){var t=Object.keys(e.state.primers).map((function(t){var s=e.state.primers[t];if(e.state.selectedArms&&e.state.selectedArms[t]){var i=e.state.selectedArms[t];return Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{className:"homology-label",children:t}),Object(C.jsxs)("div",{className:"single-target",onMouseDown:e.selectHomologyArm.bind(e,i,t),onMouseLeave:e.clearHighlight.bind(e),children:[Object(C.jsx)("div",{children:i[7]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"Tm: "}),Object(C.jsx)("div",{children:i[3]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"GC%: "}),Object(C.jsx)("div",{children:i[4]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"Any (Self Complementarity): "}),Object(C.jsx)("div",{children:i[5]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"3' (Self Complementarity): "}),Object(C.jsx)("div",{children:i[6]})]})]})]})}return Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{className:"homology-label",children:t}),s.map((function(s){return Object(C.jsxs)("div",{className:"single-target",onMouseEnter:e.highlightString.bind(e,s[7],"rgba(86, 64, 155,0.3)","homology"),onMouseDown:e.selectHomologyArm.bind(e,s,t),onMouseLeave:e.clearHighlight.bind(e),children:[Object(C.jsx)("div",{children:s[7]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"Tm: "}),Object(C.jsx)("div",{children:s[3]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"GC%: "}),Object(C.jsx)("div",{children:s[4]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"Any (Self Complementarity): "}),Object(C.jsx)("div",{children:s[5]})]}),Object(C.jsxs)("div",{children:[Object(C.jsx)("div",{children:"3' (Self Complementarity): "}),Object(C.jsx)("div",{children:s[6]})]})]})}))]})}));return Object(C.jsx)("div",{children:t})}}()})]}),Object(C.jsxs)("div",{className:(5==this.state.menu?"active":"")+" menu-icon","data-menu":"5",children:[Object(C.jsx)("div",{className:"menu-image-wrapper sidebar-5",style:{pointerEvents:this.state.screen>3?"":"none"},onClick:this.changeMenus.bind(this),"data-menu":"5",alt:"sidebar5",children:Object(C.jsx)("img",{src:u.a,alt:"sidebar5"})}),Object(C.jsx)("label",{onClick:this.changeScreens.bind(this),"data-screen":"5",children:"Download Data"}),5==this.state.menu?function(){for(var t=["N terminal SSPB and mCherry tag","N terminal EGFP and SSPB tag with Extended Linker","C terminal mCherry and SSPB tag","C terminal EGFP and SSPB tag with Extended Linker","C terminal EGFP and SSPB tag","C terminal mDendra2 and SSPB tag","C terminal mScarlett and SSPB tag","N terminal EGFP and SSPB tag","N terminal mDendra2 and SSPB tag","N terminal mScarlett and SSPB tag"],s=[],i=-1;i=4?"flex":"none"},children:[Object(C.jsxs)("div",{className:"gene-name",children:["Gene: ",this.state.geneName,this.state.isoForm?" - Isoform: "+this.state.isoForm:""]}),Object(C.jsxs)("div",{className:"gene-info-wrapper",style:{fontSize:this.state.fontSize},children:[Object(C.jsx)("div",{className:"gene-info gene-info-highlights",children:null}),Object(C.jsx)("div",{className:"gene-info gene-info-sequence",children:n})]})]})]})]}),Object(C.jsxs)("div",{className:"footer",children:[Object(C.jsx)("div",{children:"Cabernard Lab"}),Object(C.jsx)("div",{children:"Sound Development Company"}),Object(C.jsx)("div",{children:"GPL3 License"}),Object(C.jsx)("div",{children:"API Docs"})]}),Object(C.jsx)("div",{className:"popups",style:{display:!0===this.state.fontMenu?"flex":"none"},children:Object(C.jsxs)("div",{className:"font-size",children:[Object(C.jsx)("div",{className:"close",onClick:this.fontMenu.bind(this),children:"X"}),Object(C.jsx)("h4",{children:"Change Font Size"}),Object(C.jsx)("form",{children:Object(C.jsx)("input",{type:"number",value:this.state.fontSize,onChange:this.changeFontSize.bind(this)})})]})}),e.state.popup?Object(C.jsx)("div",{className:"popup-wrapper",style:{display:e.state.popup.show?"flex":"none"},children:Object(C.jsxs)("div",{className:"popup",children:[e.state.popup.stayOpen?null:Object(C.jsx)("div",{className:"popup-close",onClick:e.closePopup.bind(e),children:"X"}),Object(C.jsx)("div",{className:"message",children:e.state.popup.message}),e.state.popup.image?Object(C.jsx)("img",{className:"blink",src:e.state.popup.image}):""]})}):null]})}}]),r}(o.a.Component)}).call(this,s(29).Buffer)},,,,function(e,t,s){"use strict";t.a="data:image/png;base64,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"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAABACAYAAABGHBTIAAAACXBIWXMAAAsSAAALEgHS3X78AAAFSUlEQVRogdVbLXMbSRDtU1kgAQpQgA8IxCABCtACBxhcQND+qi39Kh24gBwwOIEViEEMfFUxEYiABCygVDk1qtdKqzX73SuNHrG03p2Zt/3dM/rj+fmZmiCOkj4RvSaiF0T0MmOoBREt3d9JOt40mrAhahEGyQERXRJRt+LjKyJ6IKL5KchXIhxHiSP4HtJsCkf2f0f+mMRLEY6jxKnqiIj6Obc5yT3hL+OCiF4RUS9HExzZu0k6fqxDoCoKCcdR4lR3mLHgR6jmvGjeOEp6sPWrDA1xY8zalnYu4ThKhligRGNVhGm8g+QlnHZMJ+n4qc64ZZBJOI6SERyTxAJSMFlQHCXuZb5V2uNe4u0kHa9yHq0NL+EMyTo7e7BeAFQ9UtJeE9GXNtS741nAwEN21gZZB0jyVjk7Z+PXbcy3RxjeeKjumbXtQSFJTbofR8k767m0hEfKno4WLkB6ChtmvIUQzLAjjOxJxtlFW2qcQ9o5w5m6PLKcQ0pYq4+e+ChATJdxvQ/HZkcYA0rp3rcZC0vgTt2inWhtdDIGPIrdZgEvW67hMo6SqkWKF0z4tbg2P7F0d+sQn7sFeXxpdKDOMrctzIuPAdiy9Ng2hFHNSARBGFiIz3qdtdBRXYr1qTsSCnuJiMWAHTVQCLYr8cN6QJ1phSTdA1jEY024lZLMEI1DkyZs0asKGpqwaaJujUk6XjQdsoN+McMkmzGESSiS6KC7wDBL0o0g12PiX7SEucEWCmTKu7RYUwd2IcNREIQ9KW9j+yXhtORgZpVJQ+iOqUnKy4RlKdY9tZTxwiVhs32oLWFUJtJ5DU8s5SsVMcxaTTIOfxOfu2iQHx2wXTn3wiL+HhBGd1JK+erYHhtaFanL3zJurwWdaaXq+8iygVYCQxV755bSJU0Yg9+LS+6N3xyDtGcva91G5zRrb+lG1cmtbXBBjYeeMPSljfkO9paAqUrl3KI+Wm99QHNuPGTJsjUrkbdd2sVifHu4X5vYVo5UN1BlntP1x02dVpkTAL59YqpzOEUchvGNR/AfD+pFbzfzxLPrJpvxZc94XHo22iRW6D+tPeUmn/HoF5zz6LKvIKKfRPSXuP9BqbiLzbdVyVKVUzxQQzfpG8O6eYE4u4FUJWkS13x4nKTjyl688jktQXzQoCX0iAXv/AA24nmncHsCAN9l8nOvXnhlG290Ek+czOmjPeSL1xuo/BISzTyNp0hvBLENbHkuPDv/r9KGfeOjh9bwOMmDHAAO7EbcMy1zdIpy4vCpyPZUl8OR/FcnIDAFab+lU+BgCIu4z35hBcl6d0OgxpwGcwpc2HUNScJd5ZG/FsVaOCy2X/fsdVEdHwxhSFIW+oWLx3Mz0aLqQdKZzwVlw5N0fKcklrt4AZn79zxHr3YIijBlSKzEM5yscANjAG9/gOAIA3sSy1q8BEj/J1rOjvRBzh5cHGZAlT/JfBoq77vPZWNLF74Qnj6KW/YSk2AJ03697M2qEIZkkbEWPTCZse0Sl1BVegsscioujeJ9NeW82t3zGeRGeCmcmOy1qYImTP6saiiyKt5dfEJY29qv+z9IS4//wal/0CotgcPkHG7YK/+JHjZnXE76F5N0/Dc/GkfJtai47oKXMAMHXaXEXP/6O5KVAYhfyGOLUH/ZjFyeDWH6HaO5KnJq/QE18T+onz+zUxOlJju0bf19cbrl18ZM9Lw4q5qp8lH/hGH384WzsWEJT0d11+7x1NPnE4fz4InR93BO/BK2J+x1O/lsCZOfNCNzp+SsnJYGCOl0cwXn5d2mOWsJM8TPBfmXbf7GARH9Amg2YgLmDeokAAAAAElFTkSuQmCC"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA9CAYAAAD1VdrqAAAACXBIWXMAAAsSAAALEgHS3X78AAADhElEQVRogd2aIXfbMBSF73pWkIIMbGADIQEtCKlByMiwf5WPf5XRaMiAAxbQgpGQgRY0oAPZOdlRz1P2qsqOLL2XOL6kbhLL+vSkqydZ73a7HaSUZ8UEwBTAoqrLrVjBCroQhr4FMAbwNc+Kyz6BuhIBZ9BWBv5aqpIaSgb3QFtN86y46guoqyRwD/QawD37/7NILRUUDe6DrupySfBWH3vGu1cUeAs0qrp8Zp/31uA6g7dBMz3S5TAiHghtZE3tT1r19BQM3gHaaER/nxu+P7mCwLtA51nBu/dVXxOZg+AdIw3H0Ezkv+VZMU6rprxac/UIaHvfS9rKGsHk7cuqLn/3HjwWmt1vDG5O6auVgV+333kcecFToVk5lwTPx31UWdJ6Ay4F7ZRpypuwj8w8/+OUS9dX4BrQLWVvANRVXW4kyu+qPbgmtBVNdXPH9EzkHw/fLasX8GNAM3hjdtmpTe+CosCht87Sci+JZIS69oLl80a35ANHk424az6gitnKvQfwgdxZcty3mh71DtPYW2kv4GN8SttFIVG9r+ryTqICnmFmFzYjz8/Ndw/U+Em+4Lr6FUVg0vBgLrFx6TG9EBnwn7E94VDKuk88TAvnWTGj7WOQFyykuqBjelua7p4A/HWGGpf53SomAJ331Z1xaR78XSoRIfMctTUmDY0bp0d27n0xW08rigaoa4rtoZsGPNSDCPAh9VmdwSm6C4o2qGvOUisSKs9MEOU1UZuNHvhJnhU3KUAhkoJGyvYydckV++iaxp+KJKGTwPF/vPEsb6ax2yINDYlXSJTI2EqImh2UoCH4tlTF6bWgIQWu4fSa0JB8Py7p9NrQkASHkNMfAxrS4Ghw+tB7PdBReXiIxMFJvLJBy8eGPYGJ1psYLXC+gDi4emuAhuZ5Gi3wT+y6dUHRsAvDpQKvBR6kBiNbOEMFGvAnA29zb8+REkjDa4HzjYk3J59CpixteC3wJ3b9atHSZZ7WhFcBd3ZAv9iLmOREC170LCtXnhVzds5tRZWNzsgaprxN7LlZTXP7xa5nqWmodOTVwKm7+05AROfekvDa09nSydySFxxS8KrgNPZqdgZGZMEhAa9mbsdQiuGdNGVNVUrkzxocCfBnD45I+EGAIwJ+MODoCD8ocHSAHxw4AuHPeh4/pLZ5fpARt2qJ/HjQ4GiG3w66q3PRwSWzKXJX1eX6HyZ+NHMADp1PAAAAAElFTkSuQmCC"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD8AAABCCAYAAADg4w7AAAAACXBIWXMAAAsSAAALEgHS3X78AAAFTklEQVR4nN1br3PjRhR+9VTAB1zggpCABvhASARSYNADRfqrNPqbCoQOhBicgQxqkAATk4AeqEEPpDPprOd79runVbS7kpxVv5mbG8Wyou+9fb++3fzw+vpKNmRpnhDRTHz0rayKf6w3jxQ18lmaG8IfiejKQulARI9lVTz/78hnaX5NRHcO39sT0basipdB325gTPjxirghtSOih7Iq/iCiz0S0MUsfn5t7b8dMnNjzWZp/IKLfiCgB8VVZFQd9M/LALcgb7Mqq2F7+tfsBe34B4tRE3ADLfIvYN7jBihklmDwnt30TcWWAFVaIwR2S5OgwwVJmrztlcYsBlnjOqDBRtdw5e2OFcLwnYzTApKyKr+La6+XLqjAl7wmXs7FVAI559ritsXkTZVU8ou4bXGdp/nH41+4HTJ5j/ToweckKsBhLBWDyT8L7v/rGLhLgWjzjdgwV4EgeAwsnr6lJXr4PwjM4f4wiAZ7aWySvHS5nWZq79PhHGJJZmi9VzkhCjHhJTOTvQqvK3jPxf+NAfAaSc/xoLxKglxHflTywFsnLxG5jBcjSfA7iHN9m0tuYfyqJthrxPVAjj+RVtbWvILQUw9C6rIqduGXjasRoyNO5e1vjMtEVAEuZG5pvGIae1TN0BYhuBmiUsag+438FGbnMDyDe2BaL0CAY6iEWEeRN8nT2MjctL6IF3iO2W6GMeCir4mEoQj6wLnsJEJT1mzixuf4elNHoKkAreUBWAIO/fX+RMmIUFcCJvKUC3AcmL11G5y33DwpXz3MF4KVuln8aOAP0YcRe4EweL/8sZgDz0ve+L2Epo95G7Ate5PHyO5G85lmaewsYEFB4FQUZsQ94k6dz8uqk4KoKMH+PChBEHliJTYyg7k0Z8frSIkgweSSvL0rB/RDwKG3Ei1WALp63VYD7wArw5T0qQCfyZK8A3rHbRxkNQWfyVK8AV4EVoLMRfdELeaDzHp7FiIPK4L2R72MPD0v9J/GjxZAiSJ+e77SHB0P9LrSCwUWQXslT4B4eQmQpRuYnYcSaktQXeidPnnt4SI53Qgs0AuijmgGC9hLa0KrkdIFSgZ6wr8ekE5CWMf2gzwcoFchZPXLBIJ4XsO7hoRPUmxwGP+sHqBmgVxFkUM/Tmag877NFGJy0QGR4Tmpr21G3LM0/td3ji6E9z3t4K1wmIr4JobBxHJI6D1Iag5OnevtKMrFRvb9PcAhSP0Pf07kCXIQ8nWN3jW2sFa7l58ZA/+LSSkoZcdpVBBk85l2hsvpKHZf5Dkh6XD6DK8DFPO8AnuMPbxGn+gwQLILERJ6FENfjcFIFChJBYiLP+LHpAzPlKS/LCuAtgsREnneBao0OnfuFBbx8NIClAniJIDGR5yU8a9ACX9QyP3pZDVJeMnhM5GWs1xKYZb//JJiqQcp5LyEa8iDHGfwX2/K1dIsnwVQdhnRSkmJLeOw9Q8g6wKhGR4/LW1toNCEq8vAse2/R9PLq2NzpyGuDktS4lxBjqduKl0+bbsKxOc4TC1UBpArUuJcQHXm8/EkFalFw9YmvpgpglcFj9Dy3r9KrVgVXVQD5RxO6Alj3EqIkD+j2tSn+uQLsRbfHnz0KI9YqQDRTnQ3iaOubf/XV8oxEHZ876YQxe55jVyavpe8A09AcHcMjas8z1AogHIXbtX+z9oxPuDwadRTkyW4AM/P/6RMGSjDZjYY8neP3XggfxEfc2wQQGO9GniYdFXkGPHirtL4XrAa9EqYYk6fq3s0oydN5FVxB6Z06fIVQCo8SmEmEoyUvgSVtvGv+17286QPMavjru/xARP8Bzo/KY/RZd/kAAAAASUVORK5CYII="},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABKCAYAAAAL8lK4AAAACXBIWXMAAAsSAAALEgHS3X78AAAGs0lEQVR4nOVcLXMiaRDuSx2CCCKIyAnEIoLgBCOyImJP7InMr5riN53A3Io1GAQRG7ERWRERRCKCCIKrylVzT0+azjvAQE94s9dVWxNgvt6nvz/e/eX5+Zn+z/Sr99rTJGsTUZeIpkQ0Goz7TzHj6wZAmmQ1Ijojoia+ahBRj4iGXs+ogg487pkm2SERfVaLn+HYTJPsJJrVBsgFACJqEVENf18Nxv2/oQJMvzs9oxLyAuBR/T3H8RuO9TTJmoFroiAXAAbj/oSIHvCxg+8elCq0fmoAQN9xrCu9v8MxWjvgBgA4LnovC77FsZYmWcPrWZ7kKQFMExyP6T9Qpuq3wzdf3QbkDcA9jnX1nYBw5PwsF/IGQIweKcs/Lz59//QKAA5qtg1eYg97Q7QEQJpk7K4+cUibJtlZNG9ZIS0A4DgeC+6piO4kTbJOmUcbSz9bcWo0JBLwWbmuBxXUnJYEQcDT6hCl9Rc6QCIjL/4wGPc5exsp680gnOO8dXSM3zX3xSPcb3D9m9MBOCUc5+ytNRj350hjxa+zRf+UJll3DRCiAovcwOQAUaqE1AOY43+AW700yViEOYobocBxCinhv9tpkk3BUQZujiiQVDosn8X3z2P1EHlJDAbsXKnD9WDc/04vxQ5e/Aet5ytoCv9/CFBnCIsXaqAA2zst1QQBwkelt/yi33RIixihCe7ukuZOoSoT2J69BEyviqKB0haBe7chzuF80f1DY/Xr6rM+z9IcQNyY/KFyKqwKIyjqGpGfIcV92JZrMKJ1eIyTACgTVJXexGasLIsr3W+ZBEdorvRdc+7R5ADTIrAASMs8Yw4QbkPXeNLGfQHYhxY4t21uP1e6/0qKjMchqN1lFABoUnp/hJc9xc+sIk8ljaPo/sK+QCLOFMiVgrBzZ0iVxJmGvJA0yXqQFhb9ryogOlL6b6WIAbgU3Vf3oCpB8ACghSSK/ftf+O5PLDSPJQLX1WAEO8a+XIruGxDYJtzs9LIB8iiICCdFhGubxP+s+7xQ9BAuldHsSQIGrovr7VZRV/QAQMJd6Q3ol9zIp4PjX0wCJpwfKXASh/ddIg8AJNCRZCfPCMvECSoBExBYEhr4XvS/oYBxIQ8ARNwfzfelAxkFggD3kVUq1HjxIu+iKCkV2CqSAwgjfKwjECPTeHGTgioAkCBm6/wfMYFEgR8gBbpS5dZpqgIA4fyuFvsax1qg0xQlAJbzm9QNCgkBkVSkROTls602bU0eANjqj0iAxwvqkpzYB/ESx8WXbU4eAFiRz2sGDtMh+l4CqDwvlJ2WJk8JWCwWoitcahdftp5MTUBUSu7tUm73BICUe5KYvemgq2JTKmmu7gyAKau36CW0lRffdUao0sqQlxcIcVxmhDh87To9x508Z4RENxMVvorfbu8Qve0UWa4jzzggnwpTFaIrk9xsYxTF+MUNAEJVUYW2abEJCJzTn23YZyRzniRIomI2+dqKvEPha7PYhgJBu0vuM3ZQPFlFua9X/QK55p/oAMBix+AWvyh3lZuo/gxNfM9qcgGJaBVIhUR7urAiNsGl21zJuHygz5jX87DQ04LhyRlEW0rnbYj8ZDDuj+BhznHuF4/mSWX7BQIg2KpvDSCcbJg3iBSIBAxRddoJhEo3TKzoM17rF1d9BimX10okU5IgMcB3ZXuLb7JjJNDxIWR6E4h3UdtMN1TFHjTXNFpnqpm7VjrebMvMmhkDGbjg49Om8wNQM2nTHwcyxFfSZmkve4YQFZ6sqeyEGq/3mDYJirnqX+r9C3z9j6IGzV43TUEq9LBFo0QlSXuMOzPEEZK2KVp3S+oW3a4x5R0kgZoonV8FzqshC9yrpyRtDhBysKLcNodK0mJSVfUbLwDADRZ6rDrUVveXRnt0/9KCECsAHXiNxdwiOHmBn4fWSCrd/82AoQe9mgC1BhA4kJq77xt0Ij0pQuv6jeAmZ55XZrTnFNIkbfuRCs4YjGEVfQEPkrwgtNiV/UbVaJVaRAM5SQ33k3suAq1YJcBSKCkqJGmoYqCzKyCA83oEsJLOUJVUaioNCdgVPjbU4q+Rnb47AEoTQBB14Njhqw6KfnoA6GXSZIjFL6nRe7EBUv7ausdQlF/EKgG23aZTZ9cNGLECsNQNMmLrug85VgDy/YeK47ZV7kJRAmD0VRKZvFXuqQYxe4Eljpt+Y6/4snIUMwB5KKv6jeK/3f5nimgBQG9RON5RxROhaEZkqqSc4xjIFgPIXuGHx3Oj/3+EeM+i4TZXfK5WXFKK3kMozGEsqwL/47zebfFERP8CaOL/8Aj7ELkAAAAASUVORK5CYII="},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAMAAADDpiTIAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMS1jMDAwIDc5LmRhYmFjYmIsIDIwMjEvMDQvMTQtMDA6Mzk6NDQgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMi41IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCOEUwODc2QTcyNEIxMUVDOTQyRDhBQURFMTM1QjQ5MCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCOEUwODc2QjcyNEIxMUVDOTQyRDhBQURFMTM1QjQ5MCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkI4RTA4NzY4NzI0QjExRUM5NDJEOEFBREUxMzVCNDkwIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkI4RTA4NzY5NzI0QjExRUM5NDJEOEFBREUxMzVCNDkwIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+SS340gAAAAZQTFRF2NPk////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"},function(e,t,s){"use strict";t.a="data:image/png;base64,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"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANMAAABuCAYAAAC9UyZyAAAACXBIWXMAAAsSAAALEgHS3X78AAAFVUlEQVR4nO3dMW7jRhSA4bfBtoHVJG10AysnWKVJrTZNbJ8gyQnivYFSplq5SRtXabObC0Q+QaQ6jXWAQMEY8wyCEIdD8nE4JP8PWGCxS8rSSL+HGtLym/P5LBiNjYj8KiJflu7wfyLyh4h8LyLPPJ3DIKbx+E1Evqu5t/+KyLcisp/7YA3hs/k95FHaRYTkfCEif4nIau4DNgRiyp8L6abBvfxcRD4SVHrElLemIakrgkqPmPLVNiRFUIkRU566hqQIKiFiyo9VSIqgEiGmvFiHpAgqAWLKR18hKYLqGTHloe+QFEH1iJiGlyokRVA9IaZhpQ5JEVQPiGk4Q4WkCMoYMQ1j6JAUQRkipvRyCUkRlBFiSiu3kBRBGSCmdHINSRFUR8SURteQnhpuf2r5dQiqA2LqX9eQHkTkseE+a4JKj5j6ZRHSbYv99gSVHjH1Z6iQFEElRkz9GDokRVAJEZO9XEJSBJUIMdnKLSRFUAkQk51cQ1IE1TNispF7SIqgekRM3Y0lJEVQPSGmbsYWkiKoHhBTe2MNSRGUMWJqZ+whKYIyREzNTSUkRVBGiKmZqYWkCMoAMcXbTjQkZRXUwv6ujQMxxVmKyA8d9s89JGUR1Nb+bo0DMcW577DvWEJSXYO6mevsRExxli33G1tIqmtQs3zvREz9GWtIqmtQs0NMcZr+BvOxh6TaBjXL3/hejGnhB2495xWZCk0+g2EqIammQR1n8tveV35cXt8CaEzuyT+IyJ/+z2Hu5wxKdpGfEDS1kFSToKb4+IsW/hTA376Vf/zr4yUmV9YHv6ypZn/O4IJ1TVC/TPyFpEEdA9vc+dfNlLmjlHelx+dWMO/fBl4ALqiNVoeX9wErP16bwjeagx+jqb+IxAdVHIPiv2/9WExdOSS1eVvzwNsuCU/ZbubfYJ59OLM9OVvhmtU8wAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmIN4qsOWJmIB4i8CWexfTc2CDNQMNvFqGhsLFtA/8f3BnYGZCh3kvM9MhsMFXBAW8Ch2pHTSmY2CjDWMJvEwq14Fh2OsCxMfARreMIxDs4OQaionpmoUIQH4MDMFLPxrTo6+ryj1jiRlzr/+rwMPfSSGmZx9UlXcc7mGmFjWz0knbKZ60rZt9tqzsYYYea2alrf6lGJNb1XsI7HTlbzh0Fhj9CJ2+KHviOTBz74/KqpyqYpKI2em6uDOSCZ1YL2uyLaq5tzU/14zPtngFUTkm9x3wfc0N3DBDJecC+RT5RXcTetxDcSF9qPnaT+XJ5835fL604b7mBJXe2KbhIQjaW/rnJXT8/p6V104Wfra5ibiRr8tHAVVXjd/WLJWLj21fs9IBOwd/bdilGco9V3eE1Mnav55jQrq7dDhdNTOJn3V+j7x3R/9EcoiRxtKHpbNV6KQ7wtYRCw1FD1WniUIxSeSxY5GuuT/6Jzj04x3AUFZ+sthEvJ0pqgxJImKSFkEVHXlPhYwsGsZTFAxJImMSPxXWnbwCpipqYSc2JvHH57sGx5bA2J38bBS61O5Vk8+AOPgZ6qeIlT5g7B78BBIVkrT8dCK9Ri906REwVu7Uwzd+Rmq0gNbkMO8SvaL21v+IOzBGugq97XI5VteYinS5ce3/zmIFcvapcI4u+lAuxDKmskXNp7kAQ3Dv/e1P14jI/1CFONC4YRMxAAAAAElFTkSuQmCC"},function(e,t,s){"use strict";t.a="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAAuCAYAAACSy7GmAAAACXBIWXMAAAsSAAALEgHS3X78AAAAxUlEQVRoge3YQQ3CQBRF0UuDABwgASSAAyQgARxQByABB0hBAjgoCob8pCRN1yWZ//rOrl3N3cwkb1FKoXcEDsCK/J7AFXhFSURugQewFogba4FLREb1pq6zTWrfiAeGXVPBIf4uIm/CfZ+4gCLyBJyBdwWHmtIdiEu1Gz4h9D9VnpDu9zGOlDSbi0eeI1U4UoUjVThSxXLQ4fkjKc8fSjx/KPD8kZ3nD0mOVOFIFY5U4UgVnj8S8/yhyPOHDM8fyc1o/gC+cLdO/ZSnK2EAAAAASUVORK5CYII="},,,function(e,t,s){"use strict";s.r(t);s(3);var i=s(7),n=s.n(i),a=(s(28),s(8)),c=s(0);n.a.render(Object(c.jsx)("span",{children:Object(c.jsx)(a.a,{})}),document.getElementById("root"))},,,,,function(e,t,s){},,,,,function(e,t,s){}],[[23,1,2]]]);
+//# sourceMappingURL=main.d723f0fa.chunk.js.map
\ No newline at end of file
diff --git a/public/build/static/js/main.d723f0fa.chunk.js.map b/public/build/static/js/main.d723f0fa.chunk.js.map
new file mode 100644
index 0000000..6d04d13
--- /dev/null
+++ b/public/build/static/js/main.d723f0fa.chunk.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["assets/loading.png","App.js","assets/logo.png","assets/sidebar1.png","assets/sidebar2.png","assets/sidebar3.png","assets/sidebar4.png","assets/document-icon.png","assets/landing1.png","assets/landing2.png","assets/hamburger.png","index.js"],"names":["urlBase","App","props","state","menu","screen","hamburger","themeColor","highlights","currentHighlight","fontSize","fontMenu","geneInfo","popup","show","message","image","currentPam","changeMenus","bind","highlight","saveCurrentHighlight","e","parseInt","target","dataset","this","setState","console","log","mutatePam","data","size","value","design","JSON","stringify","filename","geneName","blob","Blob","type","saveAs","reader","FileReader","loading","stayOpen","onloadend","res","newState","parse","result","length","readAsText","files","targetHTML","Object","keys","targets","map","prop","primerHTML","primers","key","primerOptions","selectedArms","primerSingle","className","oligos","sense","antisense","color","name","searchForTargets","i","location","string","sequence","indexOf","revString","revComp","stringLocation","dna","push","reverse","join","preventDefault","stopPropagation","url","elements","fetch","then","json","currentState","isoForm","isoForms","options","onSubmit","pickIsoForm","isoFormSequence","makeIsoFormHighlights","startSequence","substr","stopSequence","start","stop","popupForm","chooseTerminal","isoform","terminal","tag","targetGenes","substring","response","efficiencyString","results","distal","proximal","encodeURIComponent","gene","score","scrollTop","windowHeight","window","innerHeight","document","getElementsByClassName","getBoundingClientRect","top","scrollTo","behavior","targetArea","targetSearch","primerSections","slice","primerSectionsString","Buffer","from","toString","newPam","getPrimers","selection","arm","currentArms","totalSelected","pam","origin","text","res2","targetI","feature","newFeature","loc","split","targetMatch","toLowerCase","match","revTargetMatch","index","pamStart","featureArr","date","Date","day","getDate","month","getMonth","year","getFullYear","geneArr","spaces","str","spaceArr","makeGeneArr","template","plasmidTemplate","preArm1","searchSequence","search","strand","arm1","postArm1","arm2","postArm2","mutatedPam","potentialTargets","arms","Math","floor","replaceArm1","arm1I","replaceArm2","arm2I","y","isNaN","preSplit","postSplit","root","querySelector","rootMargin","threshold","observer","IntersectionObserver","entries","forEach","entry","isIntersecting","intersectionRatio","currentHighlightEl","observe","highlightKeys","currentHighlightLocation","geneInfoPrep","letter","highlightClasses","includes","targetList","onClick","pickCutSite","onMouseEnter","highlightString","onMouseLeave","clearHighlight","offtarget","pamBox","cutsite","frameI","abs","style","backgroundColor","pamBoxReadingFrames","closeAllMenus","src","logo","alt","openMenu","display","changeScreens","saveDesign","changeThemeColor","sidebar1","pointerEvents","sidebar3","sidebar4","sidebar2","onMouseDown","selectHomologyArm","HomologyList","documentIcon","plasmidOptions","htmlOptions","default","viewFinishedDesign","downloadApeFile","downloadGuideRna","onChange","changePlasmidTemplate","downloadPlasmidTemplate","downloadOptions","landing1","for","landing2","id","openDesign","searchForGene","changeFontSize","closePopup","React","Component","ReactDOM","render","getElementById"],"mappings":"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","file":"static/js/main.d723f0fa.chunk.js","sourcesContent":["export default \"data:image/png;base64,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\"","import React, { Fragment } from 'react';\nimport './App.css';\nimport logo from './assets/logo.png';\nimport sidebar1 from './assets/sidebar1.png';\nimport sidebar2 from './assets/sidebar2.png';\nimport sidebar3 from './assets/sidebar3.png';\nimport sidebar4 from './assets/sidebar4.png';\nimport documentIcon from './assets/document-icon.png';\nimport landing1 from './assets/landing1.png'; \nimport landing2 from './assets/landing2.png';\nimport hamburger from './assets/hamburger.png';\nimport loading from './assets/loading.png';\nimport { saveAs } from 'file-saver';\n\nconst urlBase = 'http://142.93.118.6'; // 'http://localhost:8080';\nexport default class App extends React.Component {\n constructor(props) {\n super(props);\n this.state = {\n // Informational & API related\n menu:null,\n screen:0,\n hamburger:false,\n themeColor:false,\n highlights:[],\n currentHighlight: null,\n fontSize:23,\n fontMenu:false,\n geneInfo:null,\n popup:{\n show:false,\n message:null,\n image:null\n },\n currentPam:null,\n }\n // API\n this.changeMenus = this.changeMenus.bind(this);\n this.highlight = this.highlight.bind(this);\n this.saveCurrentHighlight = this.saveCurrentHighlight.bind(this);\n }\n\n // UI\n changeMenus(e) {\n let menu = parseInt(e.target.dataset.menu); \n //console.log(menu);\n if(menu===this.state.menu){\n menu = null;\n }\n this.setState({menu:menu},()=>{\n //console.log(this.state);\n });\n }\n changeScreens(e) {\n let screen = e.target.dataset.screen; \n console.log(screen);\n let menu = null;\n if(screen==1){\n menu=1;\n }\n this.setState({screen:parseInt(screen),hamburger:false,menu:menu},()=>{\n console.log(this.state);\n if(screen==3){\n this.setState({mutatePam:true});\n }\n });\n }\n openMenu(e) {\n let screen = e.target.dataset.screen; \n //console.log(screen);\n this.setState({hamburger:!this.state.hamburger});\n }\n changeThemeColor(e) {\n this.setState({themeColor:!this.state.themeColor});\n }\n closeAllMenus(e) {\n //this.setState({menu:null,hamburger:false});\n }\n closePopup(e) {\n this.setState({popup:{show:false}});\n }\n highlight(e,data){\n /*let highlight = parseInt(e.target.dataset.value);\n console.log(highlight);*/\n /*this.setState({highlight:highlight},()=>{\n //console.log(this.state);\n });*/\n }\n fontMenu(e) {\n this.setState({fontMenu:!this.state.fontMenu});\n }\n changeFontSize(e){\n let size = parseInt(e.target.value);\n this.setState({fontSize:size},()=>{\n //console.log(this.state);\n });\n }\n saveDesign() {\n const design = JSON.stringify(this.state);\n var filename = this.state.geneName+\".txt\";\n var blob = new Blob([design], {\n type: \"text/plain;charset=utf-8\"\n });\n saveAs(blob, filename);\n this.setState({hamburger:false});\n }\n openDesign(e) {\n const reader = new FileReader();\n this.setState({popup:{\n show:true,\n message:Uploading File
,\n image:loading,\n stayOpen:true,\n }},()=>{\n reader.onloadend = (res) => {\n let newState = JSON.parse(res.target.result);\n newState['popup'] = null;\n newState['hamburger'] = false;\n this.setState(newState,()=>{\n console.log(this.state);\n });\n };\n if(e.target.value.length) {\n reader.readAsText(e.target.files[0]);\n }\n });\n\n }\n viewFinishedDesign(){\n let targetKeys = Object.keys(this.state.targets[0]);\n let targetHTML = targetKeys.map((prop)=>{\n\n return {prop}: {this.state.targets[0][prop]}
;\n });\n let primerKeys = Object.keys(this.state.primers);\n //console.log('primer keys',primerKeys);\n let primerHTML = primerKeys.map((key)=>{\n let primerOptions = this.state.primers[key];\n //console.log('this primer',primerOptions);\n if(this.state.selectedArms&&this.state.selectedArms[key]){\n let primerSingle = this.state.selectedArms[key];\n return {key}
\n
\n
{primerSingle[7]}
\n
\n
\n
Any (Self Complementarity): {primerSingle[5]}
\n
3' (Self Complementarity): {primerSingle[6]}
\n
;\n } else {\n return {key}
{primerOptions.map((primerSingle)=>{\n return
\n
{primerSingle[7]}
\n
\n
\n
Any (Self Complementarity): {primerSingle[5]}
\n
3' (Self Complementarity): {primerSingle[6]}
\n
})}
;\n }\n });\n let message = \n
Design Info
\n
Target Info
{targetHTML}\n
Homology Info
\n {primerHTML}\n \n
\n
Oligo Info
\n
Sense: {this.state.oligos.sense}
\n
Antisense: {this.state.oligos.antisense}
\n
\n
;\n this.setState({popup:{\n show:true,\n message:message,\n image:null,\n stayOpen:false,\n }});\n }\n saveCurrentHighlight(color=null,name=null){\n let highlight = JSON.parse(JSON.stringify(this.state.currentHighlight));\n //console.log('highlight',highlight);\n if(color){\n highlight.color = color;\n }\n let highlights = this.state.highlights;\n \n if(name){\n highlights[name] = highlight;\n } else {\n highlights[highlight.name] = highlight;\n }\n //console.log(highlights);\n if(highlight.name=='targetSearch'){\n //console.log('search for targets');\n this.searchForTargets();\n } else {\n\n this.setState({highlights:highlights},()=>{\n console.log(this.state);\n \n });\n }\n }\n changeCurrentHighlight(i){\n let currentHighlight = this.state.currentHighlight;\n currentHighlight.location = i;\n this.setState({currentHighlight:currentHighlight});\n }\n stringLocation(string=null,type){\n if(!type){\n return this.state.sequence.indexOf(string);\n }\n let location = this.state.sequence.indexOf(string);\n console.log('location',location);\n let length = string.length;\n \n if(location==-1){\n \n let revString = this.revComp(string);\n console.log('rev',revString);\n location = this.state.sequence.indexOf(revString); \n //location = location+(length/2)-4;\n } else {\n // location = location+(length/2)-1;\n }\n return location;\n }\n highlightString(string,color=null,type=null){\n console.log('string: ',string,' color: ',color);\n //console.log(this.state.sequence);\n let location = this.stringLocation(string,type);\n console.log(location);\n if(location==-1){\n location = this.stringLocation(this.revComp(string),type);\n }\n if(location==-1){\n location = 0;\n }\n let length = string.length;\n if(!color){\n color = 'rgba(252, 210, 126, 0.3)';\n }\n //console.log('mousenter');\n //console.log(location,length,color);\n this.setState({currentHighlight:{\n location:location,\n length:length,\n color:color,\n name:!type?'cutsite':type\n }\n });\n }\n clearHighlight(){\n //console.log('mouseleave');\n //this.setState({currentHighlight:null});\n }\n\n revComp(dna) {\n let revComp = [];\n for(let i=0;iSearching For Gene,\n image:loading,\n stayOpen:true,\n }}, ()=>{\n fetch(url).then((res) =>{return res.json()}).then((geneInfo)=>{\n console.log('response',geneInfo);\n let currentState = this.state;\n if(geneInfo.isoForm==null){\n currentState.popup = {\n show:false,\n };\n currentState.isoForm = null;\n } else {\n\n let isoForms = JSON.parse(geneInfo.isoForms);\n //console.log('isoforms');\n let options = Choose Your IsoForm
;\n //console.log('options made');\n currentState.popup = {\n show:true,\n message:options,\n image:null\n };\n currentState.isoForm = geneInfo.isoForm;\n }\n currentState.geneName = geneInfo.name;\n currentState.screen = 2;\n currentState.sequence = geneInfo.sequence;\n currentState.isoFormSequence = geneInfo.isoFormSequence;\n \n\n this.setState(currentState,()=>{\n this.makeIsoFormHighlights();\n });\n });\n });\n }\n makeIsoFormHighlights(){\n let startSequence = this.state.isoFormSequence.substr(0,9);\n let stopSequence = this.state.isoFormSequence.substr(this.state.isoFormSequence.length-10,this.state.isoFormSequence.length);\n let startIndex = this.state.sequence.indexOf(startSequence);\n let stopIndex = this.state.sequence.indexOf(stopSequence)+7;\n //console.log(startIndex,startSequence);\n //console.log(stopIndex,stopSequence);\n let highlights = {\n start:{\n location:startIndex,\n length:3,\n color:'#93E593',\n },\n stop:{\n location:stopIndex,\n length:3,\n color:'#FF668E',\n }\n };\n let popupForm = Choose Your Tag
;\n this.setState({\n screen:2,\n popup:{\n show:false,\n },\n highlights:highlights,\n popup:{\n show:true,\n message:popupForm,\n image:null,\n stayOpen:true,\n }\n });\n }\n pickIsoForm(e){\n e.preventDefault();\n //console.log(e.target.isoform.value);\n let isoForm = e.target.isoform.value;\n //console.log(isoForm,this.state.isoForm);\n //console.log(this.state.isoFormSequence);\n if(isoForm==this.state.isoForm){\n //console.log('same isoForm');\n this.makeIsoFormHighlights();\n } else {\n let url = urlBase+'/api/?type=isoform&isoform='+isoForm;\n fetch(url).then((res) =>{return res.json()}).then((geneInfo)=>{\n //console.log('response',geneInfo);\n let currentState = this.state;\n currentState.isoForm = geneInfo.isoForm;\n currentState.isoFormSequence = geneInfo.isoFormSequence;\n\n \n let startSequence = this.state.isoFormSequence.substr(0,9);\n let stopSequence = this.state.isoFormSequence.substr(this.state.isoFormSequence.length-10,this.state.isoFormSequence.length);\n let startIndex = this.state.sequence.indexOf(startSequence);\n let stopIndex = this.state.sequence.indexOf(stopSequence)+7;\n //console.log(startIndex,startSequence);\n //console.log(stopIndex,stopSequence);\n let highlights = {\n start:{\n location:startIndex,\n length:3,\n color:'#93E593',\n },\n stop:{\n location:stopIndex,\n length:3,\n color:'#FF668E',\n }\n }\n currentState.highlights = highlights;\n let popupForm = Choose Your Tag
;\n \n currentState.popup = {\n show:true,\n message:popupForm,\n image:null,\n stayOpen:true,\n };\n /*currentState.currentHighlight = {\n location:null,\n length:100,\n color:'#FCD27E',\n name:'targetSearch'\n }*/\n //console.log(currentState);\n this.setState(currentState,function(){\n //console.log(this.state);\n });\n });\n }\n }\n pickCutSite(target){\n this.saveCurrentHighlight('rgba(252, 210, 126, 0.3)');\n this.setState({\n targets:[target],\n menu:3,\n screen:3,\n mutatePam:true,\n });\n }\n chooseTerminal(e){\n e.preventDefault();\n //console.log(e.target.tag.value);\n let i;\n let terminal = e.target.tag.value;\n if(terminal=='n'){\n i = this.state.highlights.start.location;\n } else if(terminal=='c'){\n i = this.state.highlights.stop.location;\n }\n //console.log('start',i-26,i+26);\n let targetGenes = this.state.sequence.substring(i-50,i+50); \n //console.log(targetGenes);\n let url = urlBase+'/api/?type=targetSearch&targetArea='+targetGenes;\n //console.log(url);\n this.setState({popup:{\n show:true,\n message:Finding Potential Targets.
This may take some time.
,\n image:loading,\n stayOpen:true,\n },\n terminal:terminal\n },function(){\n fetch(url).then((res) =>{return res.json()}).then((response)=>{\n //console.log(response);\n let efficiencyString = response.results.map((target)=>{\n return target.distal+target.proximal;\n });\n //console.log(encodeURIComponent(efficiencyString.join(',')));\n this.setState({popup:{\n show:true,\n message:Checking Target Efficiency
,\n image:loading,\n stayOpen:true,\n },\n targets:response.results\n },function(){\n let url = urlBase+'/api/?type=targetEfficiency&targets='+encodeURIComponent(efficiencyString.join('\\n'));\n fetch(url).then((res)=>{return res.json()}).then((response)=>{\n //console.log(response);\n let targets = [];\n for(let i=0;iFinding Potential Targets,\n image:loading,\n stayOpen:true,\n }\n },function(){\n fetch(url).then((res) =>{return res.json()}).then((response)=>{\n //console.log(response);\n let efficiencyString = response.results.map((target)=>{\n return target.distal+target.proximal;\n });\n //console.log(encodeURIComponent(efficiencyString.join(',')));\n this.setState({popup:{\n show:true,\n message:Checking Target Efficiency
,\n image:loading,\n stayOpen:true,\n },\n targets:response.results\n },function(){\n let url = urlBase+'/api/?type=targetEfficiency&targets='+encodeURIComponent(efficiencyString.join('\\n'));\n fetch(url).then((res)=>{return res.json()}).then((response)=>{\n //console.log(response);\n //console.log('got response');\n let targets = [];\n for(let i=0;iChecking Target Efficiency,\n image:loading,\n stayOpen:true,\n },\n targets:targets\n },function(){\n //console.log('added score');\n //console.log(this.state);\n });\n });\n });\n });\n });\n \n }\n getPrimers() {\n\n const targetSearch = this.state.terminal=='n'?this.state.highlights.start.location:this.state.highlights.stop.location;\n console.log('target search area',targetSearch);\n const primerSections = {\n \"5' Homology\":this.state.sequence.slice(targetSearch-1200, targetSearch-1000),\n \"5' Sequence\":this.state.sequence.slice(targetSearch-600, targetSearch-400),\n \"3' Sequence\":this.state.sequence.slice(targetSearch+400, targetSearch+600),\n \"3' Homology\":this.state.sequence.slice(targetSearch+1000, targetSearch+1200) \n }\n let primerSectionsString = Buffer.from(JSON.stringify(primerSections)).toString('base64');\n this.setState({\n popup:{\n show:true,\n message:Retreiving Homology Arm Primers
,\n image:loading,\n stayOpen:true,\n },\n },()=>{\n console.log(urlBase+'/api/?type=primers&primerSections='+primerSectionsString);\n fetch(urlBase+'/api/?type=primers&primerSections='+primerSectionsString).then(res =>{return res.json();}).then((res)=>{\n console.log(res);\n this.setState({primers:res,menu:4,popup:{\n show:false,\n message:Retreiving Homology Arm Primers
,\n image:loading,\n stayOpen:true,\n },\n },()=>{\n console.log(this.state);\n });\n })\n });\n }\n mutatePam(e){\n e.preventDefault();\n let newPam = e.target.elements.newPam.value;\n //console.log(newPam);\n this.setState({currentPam:newPam,menu:4,screen:4,mutatePam:false},()=>{\n console.log('mutated pam');\n console.log(this.state);\n if(!this.state.primers||!this.state.primers.length==0){\n this.getPrimers();\n }\n });\n }\n selectHomologyArm(selection,arm){\n let currentArms = JSON.parse(JSON.stringify(!this.state.selectedArms?{}:this.state.selectedArms));\n currentArms[arm] = selection;\n this.saveCurrentHighlight('rgba(86, 64, 155,0.3)',arm);\n this.setState({selectedArms:currentArms},()=>{\n //console.log(this.state);\n this.setState({currentHighlight:null},()=>{\n let totalSelected = Object.keys(this.state.selectedArms);\n if(totalSelected.length&&totalSelected.length==4){\n // GET OLIGO INFO\n console.log('searching');\n console.log(urlBase+'/api/?type=oligos&target='+this.state.targets[0].distal+this.state.targets[0].proximal+this.state.targets[0].pam);\n this.setState({\n popup:{\n show:true,\n message:Retreiving Oligo Information
,\n image:loading,\n stayOpen:true,\n },\n },()=>{\n fetch(urlBase+'/api/?type=oligos&target='+this.state.targets[0].distal+this.state.targets[0].proximal+this.state.targets[0].pam).then(res =>{return res.json();}).then((res)=>{\n console.log(res);\n if(!res.sense){\n this.setState({\n menu:5,\n popup: {\n show:false,\n }\n });\n }\n this.setState({\n menu:5,\n oligos:res,\n popup: {\n show:false,\n }\n });\n });\n });\n }\n });\n });\n }\n\n // UTILITIES\n\n downloadApeFile() {\n fetch(window.location.origin+'/fly_templates/empty_ape.txt').then((res)=>{return res.text();}).then((res)=>{\n const data = res;\n fetch(window.location.origin+'/fly_templates/feature.txt').then((res)=>{return res.text()}).then((res2)=>{\n const feature = res2;\n const newFeature = (loc, name, color) => {\n return feature\n .split('*featureLoc*').join(loc)\n .split('*featureName*').join(name)\n .split('*featureColor*').join(color);\n };\n let gene = this.state.sequence;\n const target = this.state.targets[0].distal.toString()+this.state.targets[0].proximal.toString();\n const targetMatch = gene.toLowerCase().match(target.toLowerCase());\n const revTargetMatch = gene.toLowerCase().match(this.revComp(target.toLowerCase()));\n let targetI;\n if (targetMatch) {\n targetI = targetMatch.index+1;\n } else if (revTargetMatch) {\n targetI = revTargetMatch.index;\n }\n const pamStart = revTargetMatch?targetI-2:targetI+20;\n const start = 1+parseInt(this.state.highlights.start.location);\n const stop = 1+parseInt(this.state.highlights.stop.location); \n gene = !this.state.currentPam?gene:gene.substr(0,pamStart-1)+this.state.currentPam+gene.substr(pamStart+2,gene.length);\n const featureArr = [\n newFeature(start+'..'+(start+2),'Start Codon','#df2935'),\n newFeature(stop+'..'+(stop+2),'Stop Codon','#df2935'),\n newFeature((parseInt(1+this.state.highlights['hom5']['location']))+'..'+(parseInt(1+this.state.highlights['hom5']['location'])+this.state.highlights['hom5']['length']),\"5' Homology Arm Primer\",'#fdca40'),\n newFeature((parseInt(1+this.state.highlights['hom3']['location']))+'..'+(parseInt(1+this.state.highlights['hom3']['location'])+this.state.highlights['hom3']['length']),\"3' Homology Arm Primer\",'#fdca40'),\n newFeature((parseInt(1+this.state.highlights['seq5']['location']))+'..'+(parseInt(1+this.state.highlights['seq5']['location'])+this.state.highlights['seq5']['length']),\"5' Sequence Primer\",'#fdca40'),\n newFeature((parseInt(1+this.state.highlights['seq3']['location']))+'..'+(parseInt(1+this.state.highlights['seq3']['location'])+this.state.highlights['seq3']['length']),\"3' Sequence Primer\",'#fdca40'),\n newFeature(targetI+'..'+(parseInt(targetI)+20),\"Target\",'#136F5E'),\n newFeature(pamStart+'..'+(parseInt(pamStart)+2),\"Pam\",'#42ED5E'),\n ];\n const makeGeneArr = () => {\n\n let geneArr = [];\n const spaces = (str) => {\n let spaceArr = [];\n for(let i=0;i<9-str.length;i++){\n spaceArr.push('');\n }\n return spaceArr;\n }\n for(let i=0;igene.length){\n geneArr.push(gene.slice(i,gene.length));\n } else {\n geneArr.push(gene.slice(i,i+10));\n }\n geneArr.push('');\n i=i+10;\n }\n return geneArr.join(' ');\n }\n const months = [\"JAN\",\"FEB\",\"MAR\",\"APR\",\"MAY\",\"JUN\",\"JUL\",\"AUG\",\"SEP\",\"OCT\",\"NOV\",\"DEC\"]\n const date = new Date();\n const day = date.getDate();\n const month = months[date.getMonth()];\n const year = date.getFullYear();\n const newData = data\n .split('*FEATURES*').join(featureArr.join(''))\n .split('*name*').join(this.state.geneName)\n .split('*length*').join(this.state.sequence.length)\n .split('*date*').join(day+'-'+month+'-'+year)\n .split('*GENE*').join(makeGeneArr())\n ;\n const design = newData;\n var filename = this.state.geneName+\".ape\";\n var blob = new Blob([design], {\n type: \"text/plain;charset=utf-8\"\n });\n saveAs(blob, filename); \n });\n });\n }\n changePlasmidTemplate(e){\n let template = e.target.value;\n\n this.setState({plasmidTemplate:template},()=>{\n console.log(this.state.plasmidTemplate);\n });\n }\n downloadPlasmidTemplate(e){\n e.preventDefault();\n if(!this.state.plasmidTemplate){return false;}\n \n const url = (window.location.origin+'/plasmid_folder/')+(this.state.plasmidTemplate.split(' ').join('%20'))+'.txt';\n console.log(url);\n fetch(url).then((res)=>{return res.text()}).then((data)=>{\n const preArm1 = data.split('**arm_1_start**')[0];\n let searchSequence = this.state.targets[0].distal+this.state.targets[0].proximal+this.state.targets[0].pam;\n const targetSearch = this.state.sequence.search(this.state.targets[0].strand==='-'?this.revComp(searchSequence):searchSequence);\n let arm1 = this.state.sequence.slice(targetSearch-1000, targetSearch);\n const postArm1 = data.split('**arm_1_end**')[1].split('**arm_2_start**')[0];\n let arm2 = this.state.sequence.slice(targetSearch, targetSearch+1000);\n const postArm2 = data.split('**arm_2_end**')[1];\n if(this.state.mutatedPam) {\n const strand = this.state.potentialTargets[0].strand;\n const target = strand==='-'?this.revComp(this.state.target):this.state.target;\n let arms = arm1+arm2;\n const targetI = arms.toLowerCase().match(target.toLowerCase());\n if(strand==='-'){\n arms = arms.substr(0,targetI.index)+this.state.currentPam+arms.substr(targetI.index+3,arms.length);\n } else {\n arms = arms.substr(0,targetI.index+target.length-3)+this.state.currentPam+arms.substr(targetI.index+target.length,arms.length);\n }\n arm1 = arms.slice(0,Math.floor(arms.length/2)+1);\n arm2 = arms.slice(Math.floor(arms.length/2),arms.length);\n }\n let replaceArm1 = data.split('**arm_1_start**')[1].split('**arm_1_end**')[0].split('');\n let arm1I = 0;\n let replaceArm2 = data.split('**arm_2_start**')[1].split('**arm_2_end**')[0].split('');\n let arm2I = 0;\n\n\n for(let y=0;y{return res.text()}).then((data)=>{\n let preSplit = data.split('**injection_start**')[0];\n let postSplit = data.split('**injection_end**')[1];\n let sense = this.state.oligos.sense.substring(0,7)+' '+this.state.oligos.sense.substring(7,17)+' '+this.state.oligos.sense.substring(17);\n const design = preSplit+sense+postSplit;\n var filename = \"pu6-guidernavector.ape\";\n \n var blob = new Blob([design], {\n type: \"text/plain;charset=utf-8\"\n });\n saveAs(blob, filename); \n });\n return;\n }\n componentDidUpdate(){\n let options = {\n root: document.querySelector('.screen-4'),\n rootMargin: '0px',\n threshold: 0\n }\n const highlightObserver = (entries)=>{\n entries.forEach(entry => {\n if (entry.isIntersecting) {\n let elem = entry.target;\n \n if (entry.intersectionRatio >= 0.75) {\n // console.log('intersecting');\n } else {\n // console.log('not intersecting');\n }\n\n }\n });\n }\n let observer = new IntersectionObserver(highlightObserver, options);\n let currentHighlightEl = document.querySelector('.main-highlight');\n if(currentHighlightEl){\n observer.observe(currentHighlightEl);\n }\n // console.log(currentHighlightEl);\n\n }\n render() {\n //console.log('render')\n const makeHighlights = () => {\n return null;\n if(!this.state.highlights){\n return null;\n }\n /*for (const highlight of this.state.highlights) {\n let geneInfoHighlights = !this.state.sequence?null:this.state.sequence.split('').map((letter,i)=>{\n return i+((highlight.highlightLength-1)/2)?' ':'highlight ')+' single-letter '} data-value={i} onMouseEnter={this.highlight.bind(this)}>{letter}
;\n });\n }*/\n let allHighlights = [];\n let currentHighlight = !this.state.sequence?null:this.state.sequence.split('').map((letter,i)=>{\n if(!this.state.currentHighlight){\n return null;\n }\n let style = {background:'rgba(255,255,255,0)'};\n let classes = '';\n if(i>=(this.state.currentHighlight.location-((this.state.currentHighlight.length-1)/2))&&i<=(this.state.currentHighlight.location+((this.state.currentHighlight.length-1)/2))){\n style = {background:this.state.currentHighlight.color,zIndex:999};\n classes = 'main-highlight';\n }\n return {letter}
;\n });\n let highlightKeys = Object.keys(this.state.highlights);\n for(let i=0;i{\n this.state.sequence.split('').map((letter,i)=>{\n let style = {background:'rgba(255,255,255,0)'};\n let className = null;\n if(i>=(highlight.location-((highlight.length-1)/2))&&i<=(highlight.location+((highlight.length-1)/2))){\n style = {background:highlight.color};\n \n }\n if(i==highlight.location){\n className = highlightKeys[i];\n }\n return {letter}
;\n })\n });\n }\n allHighlights.push({currentHighlight}
);\n return allHighlights;\n }\n const highlightKeys = !this.state.highlights?null:Object.keys(this.state.highlights);\n //console.log(!this.state.currentHighlight?null:this.state.currentHighlight);\n const currentHighlight = !this.state.currentHighlight?null:this.state.currentHighlight;\n const currentHighlightLocation = !currentHighlight?null:currentHighlight.location;\n const geneInfoPrep = !this.state.sequence?null:this.state.sequence.split('').map((letter,i)=>{\n let highlightClasses = [];\n if(currentHighlight&&i>=currentHighlightLocation&&i0){\n for(let y=0;y=start&&i{letter};\n });\n const targetList = !this.state.targets?null:this.state.targets.map((target)=>{\n return \n
{target.distal+target.proximal+target.pam}
\n
Efficiency: {!target.score?'-':target.score}
\n
Strand: {target.strand}
\n
Off Targets: {target.offtarget}
\n
;\n });\n const pamBoxReadingFrames = () => {\n if(!this.state.highlights.cutsite){\n return;\n }\n let start = parseInt(JSON.parse(JSON.stringify(this.state.highlights.start.location)));\n let cutsite = parseInt(this.state.highlights.cutsite.location);\n let string = [];\n let frameI = Math.abs((cutsite - start) % 3)+1;\n let distal = this.state.targets[0].distal.split('');\n let proximal = this.state.targets[0].proximal.split('');\n let pam = this.state.targets[0].pam.split('');\n //console.log(cutsite,' ',start,Math.abs(cutsite - start)%3,((cutsite - start) % 3),frameI);\n for(let i=0;i{distal[i]}{frameI});\n start = start+1;\n frameI = Math.abs((cutsite - start) % 3)+1;\n //console.log(cutsite,' ',start,Math.abs(cutsite - start)%3,((cutsite - start) % 3),frameI);\n }\n for(let i=0;i{proximal[i]}{frameI});\n start = start+1;\n frameI = Math.abs((cutsite - start) % 3)+1;\n //console.log(cutsite,' ',start,Math.abs(cutsite - start)%3,((cutsite - start) % 3),frameI);\n }\n string.push({' '}
);\n for(let i=0;i{pam[i]}{frameI});\n start = start+1;\n frameI = Math.abs((cutsite - start) % 3)+1;\n //console.log(cutsite,' ',start,Math.abs(cutsite - start)%3,((cutsite - start) % 3),frameI);\n }\n //let string = !this.state.targets?null:this.state.targets[0].distal+this.state.targets[0].proximal+' '+(!this.state.targets?null:this.state.targets[0].pam);\n return {string}
;\n }\n const pamBox = \n
Amino Acid Chart
\n
Target: {pamBoxReadingFrames()}
\n
\n
2nd Letter
\n
\n
1st
Letter
\n
\n
3rd
Letter
\n
\n
;\n const HomologyList = () => {\n if(!this.state.primers){\n return;\n }\n let primerKeys = Object.keys(this.state.primers);\n //console.log('primer keys',primerKeys);\n let primerHTML = primerKeys.map((key)=>{\n let primerOptions = this.state.primers[key];\n //console.log('this primer',primerOptions);\n if(this.state.selectedArms&&this.state.selectedArms[key]){\n let primerSingle = this.state.selectedArms[key];\n return {key}
\n
\n
{primerSingle[7]}
\n
\n
\n
Any (Self Complementarity):
{primerSingle[5]}
\n
3' (Self Complementarity):
{primerSingle[6]}
\n
;\n } else {\n return {key}
{primerOptions.map((primerSingle)=>{\n return
\n
{primerSingle[7]}
\n
\n
\n
Any (Self Complementarity):
{primerSingle[5]}
\n
3' (Self Complementarity):
{primerSingle[6]}
\n
})}
;\n }\n });\n return {primerHTML}
;\n }\n const popup = () => {\n if(!this.state.popup){\n return null;\n }\n return \n
{this.state.popup.stayOpen?null:
X
}\n
{this.state.popup.message}
\n {this.state.popup.image?
:''}
\n
\n } \n const downloadOptions = () => {\n const plasmidOptions = [\"N terminal SSPB and mCherry tag\",\"N terminal EGFP and SSPB tag with Extended Linker\",\"C terminal mCherry and SSPB tag\",\"C terminal EGFP and SSPB tag with Extended Linker\",\"C terminal EGFP and SSPB tag\",\"C terminal mDendra2 and SSPB tag\",\"C terminal mScarlett and SSPB tag\",\"N terminal EGFP and SSPB tag\",\"N terminal mDendra2 and SSPB tag\",\"N terminal mScarlett and SSPB tag\"];\n let htmlOptions = [];\n for(let i=-1;iChoose A Template)\n } else {\n htmlOptions.push()\n }\n }\n \n return \n
\n
Ape File
\n
\n
Guide Rna Vector
\n
\n
Plasmid Template
\n
\n
\n
;\n }\n return (\n \n
\n \n \n
\n
New/Upload Project
\n
Save Project
\n
Switch to {(this.state.themeColor===false?'Dark':'Light')} Theme
\n
\n
\n
\n \n
\n
\n
\n
\n
1?'':'none'}} onClick={this.changeMenus.bind(this)} data-menu=\"2\" alt=\"sidebar2\">
\n
\n {!targetList?null:
{targetList}
}\n
\n
\n
2?'':'none'}} onClick={this.changeMenus.bind(this)} data-menu=\"3\" alt=\"sidebar3\">
\n
\n {this.state.screen<3?null:
{pamBox}
}\n
\n
\n
3?'':'none'}} onClick={this.changeMenus.bind(this)} data-menu=\"4\" alt=\"sidebar4\">
\n
\n
{HomologyList()}
\n
\n
\n
3?'':'none'}} onClick={this.changeMenus.bind(this)} data-menu=\"5\" alt=\"sidebar5\">
\n
\n {this.state.menu==5?downloadOptions():null}\n
\n
\n
\n
\n
New Project
\n
\n
\n
\n \n
\n
\n
Gene: {this.state.geneName}{!this.state.isoForm?'':' - Isoform: '+this.state.isoForm}
\n
\n \n
{makeHighlights()}
\n
{geneInfoPrep}
\n
\n
\n
\n
Gene: {this.state.geneName}{!this.state.isoForm?'':' - Isoform: '+this.state.isoForm}
\n
\n \n
{makeHighlights()}
\n
{geneInfoPrep}
\n
\n
\n
=4?'flex':'none',}}>\n
Gene: {this.state.geneName}{!this.state.isoForm?'':' - Isoform: '+this.state.isoForm}
\n
\n
{makeHighlights()}
\n
{geneInfoPrep}
\n
\n
\n
\n \n
\n
\n
Cabernard Lab
\n
Sound Development Company
\n
GPL3 License
\n
API Docs
\n
\n
\n
\n
X
\n
Change Font Size
\n
\n
\n
\n {popup()}\n
\n\n )\n }\n}\n","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADwAAABACAYAAABGHBTIAAAACXBIWXMAAAsSAAALEgHS3X78AAAFSUlEQVRogdVbLXMbSRDtU1kgAQpQgA8IxCABCtACBxhcQND+qi39Kh24gBwwOIEViEEMfFUxEYiABCygVDk1qtdKqzX73SuNHrG03p2Zt/3dM/rj+fmZmiCOkj4RvSaiF0T0MmOoBREt3d9JOt40mrAhahEGyQERXRJRt+LjKyJ6IKL5KchXIhxHiSP4HtJsCkf2f0f+mMRLEY6jxKnqiIj6Obc5yT3hL+OCiF4RUS9HExzZu0k6fqxDoCoKCcdR4lR3mLHgR6jmvGjeOEp6sPWrDA1xY8zalnYu4ThKhligRGNVhGm8g+QlnHZMJ+n4qc64ZZBJOI6SERyTxAJSMFlQHCXuZb5V2uNe4u0kHa9yHq0NL+EMyTo7e7BeAFQ9UtJeE9GXNtS741nAwEN21gZZB0jyVjk7Z+PXbcy3RxjeeKjumbXtQSFJTbofR8k767m0hEfKno4WLkB6ChtmvIUQzLAjjOxJxtlFW2qcQ9o5w5m6PLKcQ0pYq4+e+ChATJdxvQ/HZkcYA0rp3rcZC0vgTt2inWhtdDIGPIrdZgEvW67hMo6SqkWKF0z4tbg2P7F0d+sQn7sFeXxpdKDOMrctzIuPAdiy9Ng2hFHNSARBGFiIz3qdtdBRXYr1qTsSCnuJiMWAHTVQCLYr8cN6QJ1phSTdA1jEY024lZLMEI1DkyZs0asKGpqwaaJujUk6XjQdsoN+McMkmzGESSiS6KC7wDBL0o0g12PiX7SEucEWCmTKu7RYUwd2IcNREIQ9KW9j+yXhtORgZpVJQ+iOqUnKy4RlKdY9tZTxwiVhs32oLWFUJtJ5DU8s5SsVMcxaTTIOfxOfu2iQHx2wXTn3wiL+HhBGd1JK+erYHhtaFanL3zJurwWdaaXq+8iygVYCQxV755bSJU0Yg9+LS+6N3xyDtGcva91G5zRrb+lG1cmtbXBBjYeeMPSljfkO9paAqUrl3KI+Wm99QHNuPGTJsjUrkbdd2sVifHu4X5vYVo5UN1BlntP1x02dVpkTAL59YqpzOEUchvGNR/AfD+pFbzfzxLPrJpvxZc94XHo22iRW6D+tPeUmn/HoF5zz6LKvIKKfRPSXuP9BqbiLzbdVyVKVUzxQQzfpG8O6eYE4u4FUJWkS13x4nKTjyl688jktQXzQoCX0iAXv/AA24nmncHsCAN9l8nOvXnhlG290Ek+czOmjPeSL1xuo/BISzTyNp0hvBLENbHkuPDv/r9KGfeOjh9bwOMmDHAAO7EbcMy1zdIpy4vCpyPZUl8OR/FcnIDAFab+lU+BgCIu4z35hBcl6d0OgxpwGcwpc2HUNScJd5ZG/FsVaOCy2X/fsdVEdHwxhSFIW+oWLx3Mz0aLqQdKZzwVlw5N0fKcklrt4AZn79zxHr3YIijBlSKzEM5yscANjAG9/gOAIA3sSy1q8BEj/J1rOjvRBzh5cHGZAlT/JfBoq77vPZWNLF74Qnj6KW/YSk2AJ03697M2qEIZkkbEWPTCZse0Sl1BVegsscioujeJ9NeW82t3zGeRGeCmcmOy1qYImTP6saiiyKt5dfEJY29qv+z9IS4//wal/0CotgcPkHG7YK/+JHjZnXE76F5N0/Dc/GkfJtai47oKXMAMHXaXEXP/6O5KVAYhfyGOLUH/ZjFyeDWH6HaO5KnJq/QE18T+onz+zUxOlJju0bf19cbrl18ZM9Lw4q5qp8lH/hGH384WzsWEJT0d11+7x1NPnE4fz4InR93BO/BK2J+x1O/lsCZOfNCNzp+SsnJYGCOl0cwXn5d2mOWsJM8TPBfmXbf7GARH9Amg2YgLmDeokAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD4AAAA9CAYAAAD1VdrqAAAACXBIWXMAAAsSAAALEgHS3X78AAADhElEQVRogd2aIXfbMBSF73pWkIIMbGADIQEtCKlByMiwf5WPf5XRaMiAAxbQgpGQgRY0oAPZOdlRz1P2qsqOLL2XOL6kbhLL+vSkqydZ73a7HaSUZ8UEwBTAoqrLrVjBCroQhr4FMAbwNc+Kyz6BuhIBZ9BWBv5aqpIaSgb3QFtN86y46guoqyRwD/QawD37/7NILRUUDe6DrupySfBWH3vGu1cUeAs0qrp8Zp/31uA6g7dBMz3S5TAiHghtZE3tT1r19BQM3gHaaER/nxu+P7mCwLtA51nBu/dVXxOZg+AdIw3H0Ezkv+VZMU6rprxac/UIaHvfS9rKGsHk7cuqLn/3HjwWmt1vDG5O6auVgV+333kcecFToVk5lwTPx31UWdJ6Ay4F7ZRpypuwj8w8/+OUS9dX4BrQLWVvANRVXW4kyu+qPbgmtBVNdXPH9EzkHw/fLasX8GNAM3hjdtmpTe+CosCht87Sci+JZIS69oLl80a35ANHk424az6gitnKvQfwgdxZcty3mh71DtPYW2kv4GN8SttFIVG9r+ryTqICnmFmFzYjz8/Ndw/U+Em+4Lr6FUVg0vBgLrFx6TG9EBnwn7E94VDKuk88TAvnWTGj7WOQFyykuqBjelua7p4A/HWGGpf53SomAJ331Z1xaR78XSoRIfMctTUmDY0bp0d27n0xW08rigaoa4rtoZsGPNSDCPAh9VmdwSm6C4o2qGvOUisSKs9MEOU1UZuNHvhJnhU3KUAhkoJGyvYydckV++iaxp+KJKGTwPF/vPEsb6ax2yINDYlXSJTI2EqImh2UoCH4tlTF6bWgIQWu4fSa0JB8Py7p9NrQkASHkNMfAxrS4Ghw+tB7PdBReXiIxMFJvLJBy8eGPYGJ1psYLXC+gDi4emuAhuZ5Gi3wT+y6dUHRsAvDpQKvBR6kBiNbOEMFGvAnA29zb8+REkjDa4HzjYk3J59CpixteC3wJ3b9atHSZZ7WhFcBd3ZAv9iLmOREC170LCtXnhVzds5tRZWNzsgaprxN7LlZTXP7xa5nqWmodOTVwKm7+05AROfekvDa09nSydySFxxS8KrgNPZqdgZGZMEhAa9mbsdQiuGdNGVNVUrkzxocCfBnD45I+EGAIwJ+MODoCD8ocHSAHxw4AuHPeh4/pLZ5fpARt2qJ/HjQ4GiG3w66q3PRwSWzKXJX1eX6HyZ+NHMADp1PAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAD8AAABCCAYAAADg4w7AAAAACXBIWXMAAAsSAAALEgHS3X78AAAFTklEQVR4nN1br3PjRhR+9VTAB1zggpCABvhASARSYNADRfqrNPqbCoQOhBicgQxqkAATk4AeqEEPpDPprOd79runVbS7kpxVv5mbG8Wyou+9fb++3fzw+vpKNmRpnhDRTHz0rayKf6w3jxQ18lmaG8IfiejKQulARI9lVTz/78hnaX5NRHcO39sT0basipdB325gTPjxirghtSOih7Iq/iCiz0S0MUsfn5t7b8dMnNjzWZp/IKLfiCgB8VVZFQd9M/LALcgb7Mqq2F7+tfsBe34B4tRE3ADLfIvYN7jBihklmDwnt30TcWWAFVaIwR2S5OgwwVJmrztlcYsBlnjOqDBRtdw5e2OFcLwnYzTApKyKr+La6+XLqjAl7wmXs7FVAI559ritsXkTZVU8ou4bXGdp/nH41+4HTJ5j/ToweckKsBhLBWDyT8L7v/rGLhLgWjzjdgwV4EgeAwsnr6lJXr4PwjM4f4wiAZ7aWySvHS5nWZq79PhHGJJZmi9VzkhCjHhJTOTvQqvK3jPxf+NAfAaSc/xoLxKglxHflTywFsnLxG5jBcjSfA7iHN9m0tuYfyqJthrxPVAjj+RVtbWvILQUw9C6rIqduGXjasRoyNO5e1vjMtEVAEuZG5pvGIae1TN0BYhuBmiUsag+438FGbnMDyDe2BaL0CAY6iEWEeRN8nT2MjctL6IF3iO2W6GMeCir4mEoQj6wLnsJEJT1mzixuf4elNHoKkAreUBWAIO/fX+RMmIUFcCJvKUC3AcmL11G5y33DwpXz3MF4KVuln8aOAP0YcRe4EweL/8sZgDz0ve+L2Epo95G7Ate5PHyO5G85lmaewsYEFB4FQUZsQ94k6dz8uqk4KoKMH+PChBEHliJTYyg7k0Z8frSIkgweSSvL0rB/RDwKG3Ei1WALp63VYD7wArw5T0qQCfyZK8A3rHbRxkNQWfyVK8AV4EVoLMRfdELeaDzHp7FiIPK4L2R72MPD0v9J/GjxZAiSJ+e77SHB0P9LrSCwUWQXslT4B4eQmQpRuYnYcSaktQXeidPnnt4SI53Qgs0AuijmgGC9hLa0KrkdIFSgZ6wr8ekE5CWMf2gzwcoFchZPXLBIJ4XsO7hoRPUmxwGP+sHqBmgVxFkUM/Tmag877NFGJy0QGR4Tmpr21G3LM0/td3ji6E9z3t4K1wmIr4JobBxHJI6D1Iag5OnevtKMrFRvb9PcAhSP0Pf07kCXIQ8nWN3jW2sFa7l58ZA/+LSSkoZcdpVBBk85l2hsvpKHZf5Dkh6XD6DK8DFPO8AnuMPbxGn+gwQLILERJ6FENfjcFIFChJBYiLP+LHpAzPlKS/LCuAtgsREnneBao0OnfuFBbx8NIClAniJIDGR5yU8a9ACX9QyP3pZDVJeMnhM5GWs1xKYZb//JJiqQcp5LyEa8iDHGfwX2/K1dIsnwVQdhnRSkmJLeOw9Q8g6wKhGR4/LW1toNCEq8vAse2/R9PLq2NzpyGuDktS4lxBjqduKl0+bbsKxOc4TC1UBpArUuJcQHXm8/EkFalFw9YmvpgpglcFj9Dy3r9KrVgVXVQD5RxO6Alj3EqIkD+j2tSn+uQLsRbfHnz0KI9YqQDRTnQ3iaOubf/XV8oxEHZ876YQxe55jVyavpe8A09AcHcMjas8z1AogHIXbtX+z9oxPuDwadRTkyW4AM/P/6RMGSjDZjYY8neP3XggfxEfc2wQQGO9GniYdFXkGPHirtL4XrAa9EqYYk6fq3s0oydN5FVxB6Z06fIVQCo8SmEmEoyUvgSVtvGv+17286QPMavjru/xARP8Bzo/KY/RZd/kAAAAASUVORK5CYII=\"","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAAIACAMAAADDpiTIAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyRpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDcuMS1jMDAwIDc5LmRhYmFjYmIsIDIwMjEvMDQvMTQtMDA6Mzk6NDQgICAgICAgICI+IDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+IDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiIHhtbG5zOnhtcD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bXA6Q3JlYXRvclRvb2w9IkFkb2JlIFBob3Rvc2hvcCAyMi41IChXaW5kb3dzKSIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDpCOEUwODc2QTcyNEIxMUVDOTQyRDhBQURFMTM1QjQ5MCIgeG1wTU06RG9jdW1lbnRJRD0ieG1wLmRpZDpCOEUwODc2QjcyNEIxMUVDOTQyRDhBQURFMTM1QjQ5MCI+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOkI4RTA4NzY4NzI0QjExRUM5NDJEOEFBREUxMzVCNDkwIiBzdFJlZjpkb2N1bWVudElEPSJ4bXAuZGlkOkI4RTA4NzY5NzI0QjExRUM5NDJEOEFBREUxMzVCNDkwIi8+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+SS340gAAAAZQTFRF2NPk////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\"","export default \"data:image/png;base64,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\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAANMAAABuCAYAAAC9UyZyAAAACXBIWXMAAAsSAAALEgHS3X78AAAFVUlEQVR4nO3dMW7jRhSA4bfBtoHVJG10AysnWKVJrTZNbJ8gyQnivYFSplq5SRtXabObC0Q+QaQ6jXWAQMEY8wyCEIdD8nE4JP8PWGCxS8rSSL+HGtLym/P5LBiNjYj8KiJflu7wfyLyh4h8LyLPPJ3DIKbx+E1Evqu5t/+KyLcisp/7YA3hs/k95FHaRYTkfCEif4nIau4DNgRiyp8L6abBvfxcRD4SVHrElLemIakrgkqPmPLVNiRFUIkRU566hqQIKiFiyo9VSIqgEiGmvFiHpAgqAWLKR18hKYLqGTHloe+QFEH1iJiGlyokRVA9IaZhpQ5JEVQPiGk4Q4WkCMoYMQ1j6JAUQRkipvRyCUkRlBFiSiu3kBRBGSCmdHINSRFUR8SURteQnhpuf2r5dQiqA2LqX9eQHkTkseE+a4JKj5j6ZRHSbYv99gSVHjH1Z6iQFEElRkz9GDokRVAJEZO9XEJSBJUIMdnKLSRFUAkQk51cQ1IE1TNispF7SIqgekRM3Y0lJEVQPSGmbsYWkiKoHhBTe2MNSRGUMWJqZ+whKYIyREzNTSUkRVBGiKmZqYWkCMoAMcXbTjQkZRXUwv6ujQMxxVmKyA8d9s89JGUR1Nb+bo0DMcW577DvWEJSXYO6mevsRExxli33G1tIqmtQs3zvREz9GWtIqmtQs0NMcZr+BvOxh6TaBjXL3/hejGnhB2495xWZCk0+g2EqIammQR1n8tveV35cXt8CaEzuyT+IyJ/+z2Hu5wxKdpGfEDS1kFSToKb4+IsW/hTA376Vf/zr4yUmV9YHv6ypZn/O4IJ1TVC/TPyFpEEdA9vc+dfNlLmjlHelx+dWMO/fBl4ALqiNVoeX9wErP16bwjeagx+jqb+IxAdVHIPiv2/9WExdOSS1eVvzwNsuCU/ZbubfYJ59OLM9OVvhmtU8wAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmwAgxAUaICTBCTIARYgKMEBNghJgAI8QEGCEmIN4qsOWJmIB4i8CWexfTc2CDNQMNvFqGhsLFtA/8f3BnYGZCh3kvM9MhsMFXBAW8Ch2pHTSmY2CjDWMJvEwq14Fh2OsCxMfARreMIxDs4OQaionpmoUIQH4MDMFLPxrTo6+ryj1jiRlzr/+rwMPfSSGmZx9UlXcc7mGmFjWz0knbKZ60rZt9tqzsYYYea2alrf6lGJNb1XsI7HTlbzh0Fhj9CJ2+KHviOTBz74/KqpyqYpKI2em6uDOSCZ1YL2uyLaq5tzU/14zPtngFUTkm9x3wfc0N3DBDJecC+RT5RXcTetxDcSF9qPnaT+XJ5835fL604b7mBJXe2KbhIQjaW/rnJXT8/p6V104Wfra5ibiRr8tHAVVXjd/WLJWLj21fs9IBOwd/bdilGco9V3eE1Mnav55jQrq7dDhdNTOJn3V+j7x3R/9EcoiRxtKHpbNV6KQ7wtYRCw1FD1WniUIxSeSxY5GuuT/6Jzj04x3AUFZ+sthEvJ0pqgxJImKSFkEVHXlPhYwsGsZTFAxJImMSPxXWnbwCpipqYSc2JvHH57sGx5bA2J38bBS61O5Vk8+AOPgZ6qeIlT5g7B78BBIVkrT8dCK9Ri906REwVu7Uwzd+Rmq0gNbkMO8SvaL21v+IOzBGugq97XI5VteYinS5ce3/zmIFcvapcI4u+lAuxDKmskXNp7kAQ3Dv/e1P14jI/1CFONC4YRMxAAAAAElFTkSuQmCC\"","export default \"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADkAAAAuCAYAAACSy7GmAAAACXBIWXMAAAsSAAALEgHS3X78AAAAxUlEQVRoge3YQQ3CQBRF0UuDABwgASSAAyQgARxQByABB0hBAjgoCob8pCRN1yWZ//rOrl3N3cwkb1FKoXcEDsCK/J7AFXhFSURugQewFogba4FLREb1pq6zTWrfiAeGXVPBIf4uIm/CfZ+4gCLyBJyBdwWHmtIdiEu1Gz4h9D9VnpDu9zGOlDSbi0eeI1U4UoUjVThSxXLQ4fkjKc8fSjx/KPD8kZ3nD0mOVOFIFY5U4UgVnj8S8/yhyPOHDM8fyc1o/gC+cLdO/ZSnK2EAAAAASUVORK5CYII=\"","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport './index.css';\nimport App from './App';\n\nReactDOM.render(\n \n \n ,\n document.getElementById('root')\n);\n"],"sourceRoot":""}
\ No newline at end of file