|
|
(56 intermediate revisions not shown) |
Line 1: |
Line 1: |
- | <div class="box_round">
| + | {{:Team:Potsdam_Bioware/header}} |
- | {| | + | |
- | !align="center"|[[Team:Potsdam_Bioware|Home]]
| + | |
- | !align="center"|[[Team:Potsdam_Bioware/Team|Team]]
| + | |
- | !align="center"|[https://igem.org/Team.cgi?year=2012&team_name=Potsdam_Bioware Official Team Profile]
| + | |
- | !align="center"|[[Team:Potsdam_Bioware/Project|Project]]
| + | |
- | !align="center"|[[Team:Potsdam_Bioware/Parts|Parts Submitted to the Registry]]
| + | |
- | !align="center"|[[Team:Potsdam_Bioware/Modeling|Modeling]]
| + | |
- | !align="center"|[[Team:Potsdam_Bioware/Notebook|Notebook]]
| + | |
- | !align="center"|[[Team:Potsdam_Bioware/Safety|Safety]]
| + | |
- | !align="center"|[[Team:Potsdam_Bioware/Attributions|Attributions]]
| + | |
- | |}
| + | |
- | </div>
| + | |
| | | |
| | | |
| + | <div class="box_round gradient_grey"> |
| + | == Antibody Generation System - Maturation, Selection and Production in CHO Cells == |
| + | === Project Description === |
| + | Antibodies are of utmost importance for research and therapy but their generation is laborious and time consuming. We established a novel streamlined workflow for obtaining antibodies by incorporating all natural steps such as antibody maturation, selection and production in one genetic system implemented into a eukaryotic cell line. We stably transfect an antibody construct into CHO cells and mimic maturation by using the enzyme AID (activation-induced deaminase), which is known to induce somatic hypermutation. For selection, we are testing and deploying a versatile and continuous viral system as well as magnetic beads and cell sorting. Finally, a genetic switch enables the transition from surface expression to production of soluble antibodies. In addition, we pursue phage display with an antibody fragment to study mutation rate and evolution by AID in prokaryotes. Our system supersedes animal immunization and the smooth process will increase the ready availability of antibodies in various formats. |
| + | </div> |
| + | <html> |
| | | |
- | | + | |
- | ==Direct Antibody Identification, Maturation and Production in CHO-Cells== | + | <div class="rollover"> |
- | | + | <div id="first_row"> |
- | <div class="box_round"> | + | <a id="rollover-image" href="https://2012.igem.org/Team:Potsdam_Bioware/Project/At_a_Glance"></a> |
- | ===Project Description=== | + | <a id="rollover-image-2" href="https://2012.igem.org/Team:Potsdam_Bioware/Project/Part_AID"></a> |
- | <hr/> | + | <a id="rollover-image-3" href="https://2012.igem.org/Team:Potsdam_Bioware/Project/Part_Antibody"></a> |
- | Antibodies are versatile molecules for research and therapy and they are currently revolutionizing the market of biopharmaceuticals. To date, antibodies are generated in a laborious and time consuming manner. Either animal immunization followed by hybridoma technology or phage display is used to identify desired genes, which then need to be transferred to a production cell line such as CHO. We designed a streamlined workflow that incorporates all steps of antibody generation in CHO cells. Our plan is to stably transfect an antibody-fragment library in CHO cells. Antibody maturation is mimicked by further diversifying this library using the enzyme Activation-Induced cytidine Deaminase (AID), which is known to induce somatic hypermutation. Next, we plan to test and deploy a versatile and continuous viral selection system for clones producing the desired antibodies. Finally, we will try to employ a genetic switch to go from surface expression to soluble production of antibodies.
| + | <a id="rollover-image-8" href="https://2012.igem.org/Team:Potsdam_Bioware/Project/Part_Virus"></a> |
| + | </div> |
| + | <div id="second_row"> |
| + | <a id="rollover-image-7" href="https://2012.igem.org/Team:Potsdam_Bioware/Biobricks/Overview"></a> |
| + | <a id="rollover-image-6" href="https://2012.igem.org/Team:Potsdam_Bioware/Project/Potsdam%20Standard"></a> |
| + | <a id="rollover-image-5" href="https://2012.igem.org/Team:Potsdam_Bioware/SocialBrick"></a> |
| + | <a id="rollover-image-4" href="https://2012.igem.org/Team:Potsdam_Bioware/Project/Modeling"></a> |
| + | </div> |
| </div> | | </div> |
| | | |
- | <html><center>
| |
- | <div id="clustrmaps-widget"></div>
| |
- | <script type="text/javascript">
| |
- | var _clustrmaps = {'url' : https://2012.igem.org/Team:Potsdam_Bioware', 'user' : 1035150, 'server' : '4', 'id' : 'clustrmaps-widget', 'version' : 1, 'date' : '2012-08-08', 'lang' : 'en', 'corners' : 'square' };(function (){ var s = ocument.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = http://www4.clustrmaps.com/counter/map.js'; var x = document.getElementsByTagName('script')[0]; x.parentNode.insertBefore(s, x);})();
| |
- | </script>
| |
- | <noscript>
| |
- | <ahref="http://www4.clustrmaps.com/user/3d4fcb8e"><img src="http://www4.clustrmaps.com/stats/maps-no_clusters/2012.igem.org-Team-Potsdam_Bioware-thumb.jpg" alt="Locations of visitors to this page" /></a>
| |
- | </noscript>
| |
- | </center></html>
| |
- |
| |
- | <!-- *** What falls between these lines is the Alert Box! You can remove it from your pages once you have read and understood the alert ***
| |
- |
| |
- | <html>
| |
- | <div id="box" style="width: 700px; margin-left: 137px; padding: 5px; border: 3px solid #000; background-color: #fe2b33;">
| |
- | <div id="template" style="text-align: center; font-weight: bold; font-size: large; color: #f6f6f6; padding: 5px;">
| |
- | This is a template page. READ THESE INSTRUCTIONS.
| |
- | </div>
| |
- | <div id="instructions" style="text-align: center; font-weight: normal; font-size: small; color: #f6f6f6; padding: 5px;">
| |
- | You are provided with this team page template with which to start the iGEM season. You may choose to personalize it to fit your team but keep the same "look." Or you may choose to take your team wiki to a different level and design your own wiki. You can find some examples <a href="https://2009.igem.org/Help:Template/Examples">HERE</a>.
| |
- | </div>
| |
- | <div id="warning" style="text-align: center; font-weight: bold; font-size: small; color: #f6f6f6; padding: 5px;">
| |
- | You <strong>MUST</strong> have all of the pages listed in the menu below with the names specified. PLEASE keep all of your pages within your teams namespace.
| |
- | </div>
| |
- | </div>
| |
| </html> | | </html> |
| | | |
- | *** End of the alert box ***
| |
| | | |
- | *<b>"Go, Krauts, go"</b> - Best german team 2012 is Potsdam (same like last year) :)!
| |
- |
| |
- |
| |
- | {|align="justify"
| |
- | |You can write a background of your team here. Give us a background of your team, the members, etc. Or tell us more about something of your choosing.
| |
- | |[[Image:Potsdam_Bioware_logo.png|200px|right|frame]]
| |
- | |-
| |
- | |
| |
- | ''Tell us more about your project. Give us background. Use this as the abstract of your project. Be descriptive but concise (1-2 paragraphs)''
| |
- | |[[Image:Potsdam_Bioware_team.png|right|frame|Your team picture]]
| |
- | |-
| |
- | |
| |
- | |align="center"|[[Team:Potsdam_Bioware | Team Potsdam_Bioware]]
| |
- | |}
| |
- | -->
| |
- | <!--- The Mission, Experiments --->
| |
- |
| |
- |
| |
- | <div class="box_round block">
| |
- | ===Team===
| |
| | | |
| + | <div class="box_round no_padding"> |
| + | {{:Team:Potsdam_Bioware/slider}} |
| </div> | | </div> |
- |
| |
- | <!---
| |
- |
| |
- | {| style="color:#1b2c8a;background-color:#0c6;" border="1" bordercolor="#fff" width="62%" align="center"
| |
- | !align="center"|[[Team:Potsdam_Bioware|Home]]
| |
- | !align="center"|[[Team:Potsdam_Bioware/Team|Team]]
| |
- | !align="center"|[https://igem.org/Team.cgi?year=2012&team_name=Potsdam_Bioware Official Team Profile]
| |
- | !align="center"|[[Team:Potsdam_Bioware/Project|Project]]
| |
- | !align="center"|[[Team:Potsdam_Bioware/Parts|Parts Submitted to the Registry]]
| |
- | !align="center"|[[Team:Potsdam_Bioware/Modeling|Modeling]]
| |
- | !align="center"|[[Team:Potsdam_Bioware/Notebook|Notebook]]
| |
- | !align="center"|[[Team:Potsdam_Bioware/Safety|Safety]]
| |
- | !align="center"|[[Team:Potsdam_Bioware/Attributions|Attributions]]
| |
- | |}
| |
- |
| |
- | --->
| |
| | | |
| <html> | | <html> |
- | <head> | + | <center> |
- | <style type="text/css"> | + | <div id="clustrmaps-widget"> |
| + | </div><script type="text/javascript">var _clustrmaps = {'url' : 'https://2012.igem.org/Team:Potsdam_Bioware', 'user' : 1035150, 'server' : '4', 'id' : 'clustrmaps-widget', 'version' : 1, 'date' : '2012-09-22', 'lang' : 'en', 'corners' : 'square' };(function (){ var s = document.createElement('script'); s.type = 'text/javascript'; s.async = true; s.src = 'http://www4.clustrmaps.com/counter/map.js'; var x = document.getElementsByTagName('script')[0]; x.parentNode.insertBefore(s, x);})();</script><noscript><a href="http://www4.clustrmaps.com/user/3d4fcb8e"><img src="http://www4.clustrmaps.com/stats/maps-no_clusters/2012.igem.org-Team-Potsdam_Bioware-thumb.jpg" alt="Locations of visitors to this page" /></a></noscript> |
| | | |
- | body {
| + | <font size="-4"; color="grey">primary contact: Kristian Müller<br> |
- | | + | <a href="http://www.syntbio.net"> http://www.syntbio.net</a> <a href="mailto:kristian@syntbio.net">kristian@syntbio.net</a></font></center></html> |
- | background-image: -ms-linear-gradient(left, #FFFFFF 0%, #E3DFCF 100%);
| + | |
- | background-image: -moz-linear-gradient(left, #FFFFFF 0%, #E3DFCF 100%);
| + | |
- | background-image: -o-linear-gradient(left, #FFFFFF 0%, #E3DFCF 100%);
| + | |
- | background-image: -webkit-gradient(linear, left top, right top, color-stop(0, #FFFFFF), color-stop(1, #E3DFCF));
| + | |
- | background-image: -webkit-linear-gradient(left, #FFFFFF 0%, #E3DFCF 100%);
| + | |
- | background-image: linear-gradient(to right, #FFFFFF 0%, #E3DFCF 100%);
| + | |
- | }
| + | |
- | | + | |
- | .box_round {
| + | |
- | padding: 5px;
| + | |
- | border-radius: 5px;
| + | |
- | background: #cb9840;
| + | |
- | background: -moz-linear-gradient(top, #cb9840 0%, #a77b34 100%);
| + | |
- | background: -webkit-gradient(linear, left top, left bottom, color-stop(0%,#cb9840), color-stop(100%,#a77b34));
| + | |
- | background: -webkit-linear-gradient(top, #cb9840 0%,#a77b34 100%);
| + | |
- | background: -o-linear-gradient(top, #cb9840 0%,#a77b34 100%);
| + | |
- | background: -ms-linear-gradient(top, #cb9840 0%,#a77b34 100%);
| + | |
- | background: linear-gradient(to bottom, #cb9840 0%,#a77b34 100%);
| + | |
- | filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cb9840', endColorstr='#a77b34',GradientType=0 );
| + | |
- | box-shadow:5px 5px 5px #666;
| + | |
- | }
| + | |
- | | + | |
- | .box_round table {
| + | |
- | background-color: transparent;
| + | |
- | }
| + | |
- | | + | |
- | .block {
| + | |
- | display: inline-block;
| + | |
- | width : 350px;
| + | |
- | height : 200px;
| + | |
- | }
| + | |
- | | + | |
- | table th {
| + | |
- | padding-left: 5px;
| + | |
- | padding-right: 5px;
| + | |
- | }
| + | |
- | | + | |
- | #content {
| + | |
- | border: none;
| + | |
- | background-color: transparent;
| + | |
- | }
| + | |
- | | + | |
- | #catlinks {
| + | |
- | border:none;
| + | |
- | background-color: transparent;
| + | |
- | }
| + | |
- | | + | |
- | #footer-box {
| + | |
- | border:none;
| + | |
- | background-color: transparent;
| + | |
- | }
| + | |
- | | + | |
- | #p-logo img {
| + | |
- | box-shadow:5px 5px 5px #666;
| + | |
- | }
| + | |
- | | + | |
- | </style> | + | |
- | <script type="text/javascript"> | + | |
- | /*
| + | |
- | * jQuery Easing v1.3 - http://gsgd.co.uk/sandbox/jquery/easing/
| + | |
- | *
| + | |
- | * Uses the built in easing capabilities added In jQuery 1.1
| + | |
- | * to offer multiple easing options
| + | |
- | *
| + | |
- | * TERMS OF USE - jQuery Easing
| + | |
- | *
| + | |
- | * Open source under the BSD License.
| + | |
- | *
| + | |
- | * Copyright © 2008 George McGinley Smith
| + | |
- | * All rights reserved.
| + | |
- | *
| + | |
- | * Redistribution and use in source and binary forms, with or without modification,
| + | |
- | * are permitted provided that the following conditions are met:
| + | |
- | *
| + | |
- | * Redistributions of source code must retain the above copyright notice, this list of
| + | |
- | * conditions and the following disclaimer.
| + | |
- | * Redistributions in binary form must reproduce the above copyright notice, this list
| + | |
- | * of conditions and the following disclaimer in the documentation and/or other materials
| + | |
- | * provided with the distribution.
| + | |
- | *
| + | |
- | * Neither the name of the author nor the names of contributors may be used to endorse
| + | |
- | * or promote products derived from this software without specific prior written permission.
| + | |
- | *
| + | |
- | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
| + | |
- | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
| + | |
- | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
| + | |
- | * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
| + | |
- | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
| + | |
- | * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
| + | |
- | * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
| + | |
- | * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
| + | |
- | * OF THE POSSIBILITY OF SUCH DAMAGE.
| + | |
- | *
| + | |
- | */
| + | |
- | | + | |
- | // t: current time, b: begInnIng value, c: change In value, d: duration
| + | |
- | jQuery.easing['jswing'] = jQuery.easing['swing'];
| + | |
- | | + | |
- | jQuery.extend( jQuery.easing,
| + | |
- | {
| + | |
- | def: 'easeOutQuad',
| + | |
- | swing: function (x, t, b, c, d) {
| + | |
- | //alert(jQuery.easing.default);
| + | |
- | return jQuery.easing[jQuery.easing.def](x, t, b, c, d);
| + | |
- | },
| + | |
- | easeInQuad: function (x, t, b, c, d) {
| + | |
- | return c*(t/=d)*t + b;
| + | |
- | },
| + | |
- | easeOutQuad: function (x, t, b, c, d) {
| + | |
- | return -c *(t/=d)*(t-2) + b;
| + | |
- | },
| + | |
- | easeInOutQuad: function (x, t, b, c, d) {
| + | |
- | if ((t/=d/2) < 1) return c/2*t*t + b;
| + | |
- | return -c/2 * ((--t)*(t-2) - 1) + b;
| + | |
- | },
| + | |
- | easeInCubic: function (x, t, b, c, d) {
| + | |
- | return c*(t/=d)*t*t + b;
| + | |
- | },
| + | |
- | easeOutCubic: function (x, t, b, c, d) {
| + | |
- | return c*((t=t/d-1)*t*t + 1) + b;
| + | |
- | },
| + | |
- | easeInOutCubic: function (x, t, b, c, d) {
| + | |
- | if ((t/=d/2) < 1) return c/2*t*t*t + b;
| + | |
- | return c/2*((t-=2)*t*t + 2) + b;
| + | |
- | },
| + | |
- | easeInQuart: function (x, t, b, c, d) {
| + | |
- | return c*(t/=d)*t*t*t + b;
| + | |
- | },
| + | |
- | easeOutQuart: function (x, t, b, c, d) {
| + | |
- | return -c * ((t=t/d-1)*t*t*t - 1) + b;
| + | |
- | },
| + | |
- | easeInOutQuart: function (x, t, b, c, d) {
| + | |
- | if ((t/=d/2) < 1) return c/2*t*t*t*t + b;
| + | |
- | return -c/2 * ((t-=2)*t*t*t - 2) + b;
| + | |
- | },
| + | |
- | easeInQuint: function (x, t, b, c, d) {
| + | |
- | return c*(t/=d)*t*t*t*t + b;
| + | |
- | },
| + | |
- | easeOutQuint: function (x, t, b, c, d) {
| + | |
- | return c*((t=t/d-1)*t*t*t*t + 1) + b;
| + | |
- | },
| + | |
- | easeInOutQuint: function (x, t, b, c, d) {
| + | |
- | if ((t/=d/2) < 1) return c/2*t*t*t*t*t + b;
| + | |
- | return c/2*((t-=2)*t*t*t*t + 2) + b;
| + | |
- | },
| + | |
- | easeInSine: function (x, t, b, c, d) {
| + | |
- | return -c * Math.cos(t/d * (Math.PI/2)) + c + b;
| + | |
- | },
| + | |
- | easeOutSine: function (x, t, b, c, d) {
| + | |
- | return c * Math.sin(t/d * (Math.PI/2)) + b;
| + | |
- | },
| + | |
- | easeInOutSine: function (x, t, b, c, d) {
| + | |
- | return -c/2 * (Math.cos(Math.PI*t/d) - 1) + b;
| + | |
- | },
| + | |
- | easeInExpo: function (x, t, b, c, d) {
| + | |
- | return (t==0) ? b : c * Math.pow(2, 10 * (t/d - 1)) + b;
| + | |
- | },
| + | |
- | easeOutExpo: function (x, t, b, c, d) {
| + | |
- | return (t==d) ? b+c : c * (-Math.pow(2, -10 * t/d) + 1) + b;
| + | |
- | },
| + | |
- | easeInOutExpo: function (x, t, b, c, d) {
| + | |
- | if (t==0) return b;
| + | |
- | if (t==d) return b+c;
| + | |
- | if ((t/=d/2) < 1) return c/2 * Math.pow(2, 10 * (t - 1)) + b;
| + | |
- | return c/2 * (-Math.pow(2, -10 * --t) + 2) + b;
| + | |
- | },
| + | |
- | easeInCirc: function (x, t, b, c, d) {
| + | |
- | return -c * (Math.sqrt(1 - (t/=d)*t) - 1) + b;
| + | |
- | },
| + | |
- | easeOutCirc: function (x, t, b, c, d) {
| + | |
- | return c * Math.sqrt(1 - (t=t/d-1)*t) + b;
| + | |
- | },
| + | |
- | easeInOutCirc: function (x, t, b, c, d) {
| + | |
- | if ((t/=d/2) < 1) return -c/2 * (Math.sqrt(1 - t*t) - 1) + b;
| + | |
- | return c/2 * (Math.sqrt(1 - (t-=2)*t) + 1) + b;
| + | |
- | },
| + | |
- | easeInElastic: function (x, t, b, c, d) {
| + | |
- | var s=1.70158;var p=0;var a=c;
| + | |
- | if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
| + | |
- | if (a < Math.abs(c)) { a=c; var s=p/4; }
| + | |
- | else var s = p/(2*Math.PI) * Math.asin (c/a);
| + | |
- | return -(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
| + | |
- | },
| + | |
- | easeOutElastic: function (x, t, b, c, d) {
| + | |
- | var s=1.70158;var p=0;var a=c;
| + | |
- | if (t==0) return b; if ((t/=d)==1) return b+c; if (!p) p=d*.3;
| + | |
- | if (a < Math.abs(c)) { a=c; var s=p/4; }
| + | |
- | else var s = p/(2*Math.PI) * Math.asin (c/a);
| + | |
- | return a*Math.pow(2,-10*t) * Math.sin( (t*d-s)*(2*Math.PI)/p ) + c + b;
| + | |
- | },
| + | |
- | easeInOutElastic: function (x, t, b, c, d) {
| + | |
- | var s=1.70158;var p=0;var a=c;
| + | |
- | if (t==0) return b; if ((t/=d/2)==2) return b+c; if (!p) p=d*(.3*1.5);
| + | |
- | if (a < Math.abs(c)) { a=c; var s=p/4; }
| + | |
- | else var s = p/(2*Math.PI) * Math.asin (c/a);
| + | |
- | if (t < 1) return -.5*(a*Math.pow(2,10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )) + b;
| + | |
- | return a*Math.pow(2,-10*(t-=1)) * Math.sin( (t*d-s)*(2*Math.PI)/p )*.5 + c + b;
| + | |
- | },
| + | |
- | easeInBack: function (x, t, b, c, d, s) {
| + | |
- | if (s == undefined) s = 1.70158;
| + | |
- | return c*(t/=d)*t*((s+1)*t - s) + b;
| + | |
- | },
| + | |
- | easeOutBack: function (x, t, b, c, d, s) {
| + | |
- | if (s == undefined) s = 1.70158;
| + | |
- | return c*((t=t/d-1)*t*((s+1)*t + s) + 1) + b;
| + | |
- | },
| + | |
- | easeInOutBack: function (x, t, b, c, d, s) {
| + | |
- | if (s == undefined) s = 1.70158;
| + | |
- | if ((t/=d/2) < 1) return c/2*(t*t*(((s*=(1.525))+1)*t - s)) + b;
| + | |
- | return c/2*((t-=2)*t*(((s*=(1.525))+1)*t + s) + 2) + b;
| + | |
- | },
| + | |
- | easeInBounce: function (x, t, b, c, d) {
| + | |
- | return c - jQuery.easing.easeOutBounce (x, d-t, 0, c, d) + b;
| + | |
- | },
| + | |
- | easeOutBounce: function (x, t, b, c, d) {
| + | |
- | if ((t/=d) < (1/2.75)) {
| + | |
- | return c*(7.5625*t*t) + b;
| + | |
- | } else if (t < (2/2.75)) {
| + | |
- | return c*(7.5625*(t-=(1.5/2.75))*t + .75) + b;
| + | |
- | } else if (t < (2.5/2.75)) {
| + | |
- | return c*(7.5625*(t-=(2.25/2.75))*t + .9375) + b;
| + | |
- | } else {
| + | |
- | return c*(7.5625*(t-=(2.625/2.75))*t + .984375) + b;
| + | |
- | }
| + | |
- | },
| + | |
- | easeInOutBounce: function (x, t, b, c, d) {
| + | |
- | if (t < d/2) return jQuery.easing.easeInBounce (x, t*2, 0, c, d) * .5 + b;
| + | |
- | return jQuery.easing.easeOutBounce (x, t*2-d, 0, c, d) * .5 + c*.5 + b;
| + | |
- | }
| + | |
- | });
| + | |
- | | + | |
- | /*
| + | |
- | *
| + | |
- | * TERMS OF USE - EASING EQUATIONS
| + | |
- | *
| + | |
- | * Open source under the BSD License.
| + | |
- | *
| + | |
- | * Copyright © 2001 Robert Penner
| + | |
- | * All rights reserved.
| + | |
- | *
| + | |
- | * Redistribution and use in source and binary forms, with or without modification,
| + | |
- | * are permitted provided that the following conditions are met:
| + | |
- | *
| + | |
- | * Redistributions of source code must retain the above copyright notice, this list of
| + | |
- | * conditions and the following disclaimer.
| + | |
- | * Redistributions in binary form must reproduce the above copyright notice, this list
| + | |
- | * of conditions and the following disclaimer in the documentation and/or other materials
| + | |
- | * provided with the distribution.
| + | |
- | *
| + | |
- | * Neither the name of the author nor the names of contributors may be used to endorse
| + | |
- | * or promote products derived from this software without specific prior written permission.
| + | |
- | *
| + | |
- | * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
| + | |
- | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
| + | |
- | * MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE
| + | |
- | * COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
| + | |
- | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE
| + | |
- | * GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED
| + | |
- | * AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
| + | |
- | * NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED
| + | |
- | * OF THE POSSIBILITY OF SUCH DAMAGE.
| + | |
- | *
| + | |
- | */
| + | |
- | </script>
| + | |
- | </head> | + | |
- | </html> | + | |