Team:Virtus-Parva Mexico

From 2014.igem.org

(Difference between revisions)
(Undo revision 206990 by Andigax (talk))
 
(244 intermediate revisions not shown)
Line 1: Line 1:
-
 
+
{{Team:VirtusParva/MainCss}}
<html>
<html>
 +
    <head>
 +
          <title>Virtus Parva</title>
 +
<style>
 +
#my-nav-bar, #contentSub, #footer-box, #catlinks, #search-controls, #p-logo, .printfooter, .firstHeading,.visualClear {display: none;} /*-- hides default wiki settings --*/
 +
</style>
 +
<!-- menu -->
 +
<table id="menu" width="100%" height="5px" border="0">
 +
<table align="center">
 +
       
-
<!-- this section changes the default wiki template to a  
+
  <tr height="50px">
-
white full width background -->
+
      <td width="162px" align="center" onMouseOver="this.bgColor='#BCD630'" onMouseOut="this.bgColor='#FFFFFF'" bgColor=#FFFFFF>
 +
    <a href="https://2014.igem.org/Team:Virtus-Parva_Mexico" ><img  src="https://static.igem.org/mediawiki/2014/d/de/Virtus_Parva_L-t1.jpg"></img></a></td>
 +
<td width="162px" align="center" onMouseOver="this.bgColor='#BCD630'" onMouseOut="this.bgColor='#FFFFFF'" bgColor=#FFFFFF>
 +
<a href="https://2014.igem.org/Team:Virtus-Parva_Mexico/Project"> <img  src="https://static.igem.org/mediawiki/2014/5/59/Virtus_Parva_P-t1.jpg" </img></a></td>  
-
<style type="text/css">
+
<td width="162px" align="center" onMouseOver="this.bgColor='#BCD630'" onMouseOut="this.bgColor='#FFFFFF'" bgColor=#FFFFFF>
-
#contentSub, #footer-box, #catlinks, #search-controls, #p-
+
<a href="https://2014.igem.org/Team:Virtus-Parva_Mexico/Team"> <img  src="https://static.igem.org/mediawiki/2014/c/c0/Virtus_Parva_T-t1.jpg" </img></a></td>
-
logo, .printfooter, .firstHeading,.visualClear {display:  
+
<td width="162px" align="center" onMouseOver="this.bgColor='#BCD630'" onMouseOut="this.bgColor='#FFFFFF'" bgColor=#FFFFFF>
 +
<a href="https://2014.igem.org/Team:Virtus-Parva_Mexico/Notebook"> <img  src="https://static.igem.org/mediawiki/2014/e/e1/Virtus_Parva_W-t1.jpg" </img></a></td>
-
none;} /*-- hides default wiki settings --*/
+
<td width="162px" align="center" onMouseOver="this.bgColor='#BCD630'" onMouseOut="this.bgColor='#FFFFFF'" bgColor=#FFFFFF>
 +
<a href="https://2014.igem.org/Team:Virtus-Parva_Mexico/Parts"> <img  src="https://static.igem.org/mediawiki/2014/b/ba/Virtus_Parva_H-t1.jpg" </img></a></td> 
-
#top-section { /*-- styling for default menu bar (edit, page,
+
<td width="162px" align="center" onMouseOver="this.bgColor='#BCD630'" onMouseOut="this.bgColor='#FFFFFF'" bgColor=#FFFFFF>
-
 
+
<a href="https://2014.igem.org/Team:Virtus-Parva_Mexico/Attributions"><img  src="https://static.igem.org/mediawiki/2014/b/bb/Virtus_Parva_A-t1.jpg" </img></a></td> 
-
history, etc.) --*/
+
<td align="center" width="162px"><a href="https://igem.org/Main_Page"><img src="https://static.igem.org/mediawiki/igem.org/6/60/Igemlogo_300px.png" width="55px"></a></td>
-
+
</tr>
-
border: 0 none;
+
</table>
-
height: 14px;
+
</table>
-
z-index: 100;
+
</head>
-
top: 0;
+
<!-- end of menu -->
-
position: fixed;
+
-
width: 975px;
+
-
left: 50%;
+
-
margin-left: -487px;
+
-
}
+
-
 
+
-
#globalWrapper, #content { /*-- changes default wiki settings
+
-
 
+
-
--*/
+
-
width: 10%;
+
-
height: 100%;
+
-
border: 240px;
+
-
background-color: transparent;
+
-
margin: 0px;
+
-
padding: 0px;
+
-
}
+
-
 
+
-
html, body, .wrapper { /*-- changes default wiki settings --
+
-
 
+
-
*/
+
-
width: 100%;
+
-
height: 100%;
+
-
background-color: transparent;
+
-
}
+
-
 
+
-
 
+
-
 
+
-
 
+
-
 
+
-
 
+
-
 
+
-
</style>
+
-
<style type="text/css">
+
-
nav ul ul {
+
-
display: none;
+
-
}
+
-
 
+
-
nav ul li:hover > ul {
+
-
display: block;
+
-
}
+
-
nav ul {
+
-
background: #efefef;
+
-
background: linear-gradient(top, #efefef 0%, #bbbbbb 100%); 
+
-
background: -moz-linear-gradient(top, #efefef 0%, #bbbbbb 100%);
+
-
background: -webkit-linear-gradient(top, #efefef 0%,#bbbbbb 100%);
+
-
box-shadow: 0px 0px 9px rgba(0,0,0,0.15);
+
-
padding: 0 20px;
+
-
border-radius: 10px; 
+
-
list-style: none;
+
-
position: relative;
+
-
display: inline-table;
+
-
}
+
-
nav ul:after {
+
-
content: ""; clear: both; display: block;
+
-
}
+
-
nav ul li {
+
-
float: left;
+
-
}
+
-
nav ul li:hover {
+
-
background: #4b545f;
+
-
background: linear-gradient(top, #4f5964 0%, #5f6975 40%);
+
-
background: -moz-linear-gradient(top, #4f5964 0%, #5f6975 40%);
+
-
background: -webkit-linear-gradient(top, #4f5964 0%,#5f6975 40%);
+
-
}
+
-
nav ul li:hover a {
+
-
color: #fff;
+
-
}
+
-
+
-
nav ul li a {
+
-
display: block; padding: 25px 40px;
+
-
color: #757575; text-decoration: none;
+
-
}
+
-
nav ul ul {
+
-
background: #5f6975; border-radius: 0px; padding: 0;
+
-
position: absolute; top: 100%;
+
-
}
+
-
nav ul ul li {
+
-
float: none;
+
-
border-top: 1px solid #6b727c;
+
-
border-bottom: 1px solid #575f6a;
+
-
position: relative;
+
-
}
+
-
nav ul ul li a {
+
-
padding: 15px 40px;
+
-
color: #fff;
+
-
}
+
-
nav ul ul li a:hover {
+
-
background: #4b545f;
+
-
}
+
-
nav ul ul ul {
+
-
position: absolute; left: 100%; top:0;
+
-
}
+
-
</style>
+
-
<!--  here ends the section that changes the default wiki
+
-
 
+
-
template to a white full width background -->
+
-
 
+
-
{{Team:VirtusParva/MainCss}}
+
-
<!-- beginning of your page -->
+
<body>
<body>
-
    <!-- Begin Cover -->
 
-
    <div class="site-wrapper">
 
-
        <nav class="navbar navbar-default navbar-fixed-top" role="banner">
+
<!-- First block of content -->
-
            <div class="container">
+
<table  id="firstblock" width="100%" cellspacing="0" height="500px" border="0">
-
                <div class="navbar-header">
+
  <tr>
-
                    <button class="navbar-toggle" type="button" data-toggle="collapse" data-target=".navbar-collapse">
+
    <td><video autoplay width=100% height="auto">
-
                        <span class="sr-only">Toggle navigation</span>
+
<source src="https://static.igem.org/mediawiki/2014/e/e6/Team_Virtus_Parva_Logo_Video.mov"></video></td>
-
                        <span class="icon-bar"></span>
+
</tr>
-
                        <span class="icon-bar"></span>
+
</table>
-
                        <span class="icon-bar"></span>
+
<!-- end of first block -->
-
                    </button>
+
-
                    <a href="https://2014.igem.org/Team:Virtus-Parva_Mexico" class="navbar-brand">Virtus Parva Home</a>
+
-
                </div>
+
-
                <nav class="collapse navbar-collapse" role="navigation">
+
-
                    <ul class="nav navbar-nav">
+
-
                        <li>
+
-
                            <a href="#sec">Project</a>
+
-
                        </li>
+
-
                        <li>
+
-
                            <a href="#sec">Outcomes</a>
+
-
                        </li>
+
-
                        <li>
+
-
                            <a href="#sec">Our Team</a>
+
-
                        </li>
+
-
                        <li>
+
-
                            <a href="#sec1">Safety</a>
+
-
                        </li>
+
-
                        <li>
+
-
                            <a href="#sec">Human Practices</a>
+
-
                        </li>
+
-
                    </ul>
+
-
                </nav>
+
-
            </div>
+
-
        </nav>
+
 +
<!--  Block of content 1 -->
 +
<table width="100%"  cellspacing="0" height="500px" border="0">
 +
<tr><td  bgColor="#8AAA3D"></td>
 +
<td width="975px" align="center" bgColor="#8AAA3D" >
 +
<table  width="975px"  cellspacing="0" height="500px" border="0">
 +
<tr>
 +
<td width="95%" bgColor="#8AAA3D"  rowspan="3" align="center">
 +
<!-- Content goes here -->
-
        <div class="jumbotron">
+
<h1><font color=#FFFFFF size=7> Bio-NEMS Drill!</font></h1>
-
           
+
<br>
-
            <video autoplay>
+
<h3><p align="left">Traditionally pathogens have been annihilated using pharmaceuticals, but today nanotechnology offers a new possibility with the use of nanoelectromechanical systems (NEMS). We present a novel device that could make these processes possible: <em>the BioNEMS Drill</em>. This is a magnetic portion of chromatin. To construct the device we synthesized hydrophilic magnetite. We used it due to its bio-compatibility for medical applications and later functionalized them with amino groups, which can establish a peptide bond between nanoparticles and a protein. We used the HU histone-like protein, capable of coiling DNA around the nanoparticles. To get enough protein, we modified E. Coli to overexpress it. Since the core of the device is magnetic it can be controlled by applying an external magnetic field. Furthermore, the versatility of the DNA to be coated with various materials and its functionalization can selectively remove certain chemicals inside the human body such as cholesterol or toxic agents.</h3></p>
-
                <source src="https://static.igem.org/mediawiki/2014/6/69/Team_Virtus_Parva_Logo_Video.ogg" type="video/mp4">
+
-
            </video>
+
-
        </div>
+
-
    </div>
+
-
    <!-- End Cover -->
+
-
    <script src="//code.jquery.com/jquery-1.11.0.min.js"></script>
+
</td>
-
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.2.0/js/bootstrap.min.js"></script>
+
-
    <script src="//cdnjs.cloudflare.com/ajax/libs/jasny-bootstrap/3.1.3/js/jasny-bootstrap.min.js"></script>
+
-
    <script>
 
-
        $(document).ready(function () {
 
-
            document.title = 'Team Virtus-Parva | Home | @igem.org';
 
-
        });
 
 +
<!-- This is the back to top button -->
 +
<td bgColor="#8AAA3D"> </td>
 +
<tr><td bgColor="#8AAA3D"></td></tr>
 +
<tr> <td  height="50px" width="20%" align="center" bgColor="#8AAA3D">
 +
<a href="#menu" style="text-decoration:none;color:#1C140D"><img src="https://static.igem.org/mediawiki/2014/3/39/Virtus_Parva-TOP-v2.jpg"></img></a></td></tr>
 +
</table>
 +
</td>
 +
<td bgColor="#8AAA3D""></td>
 +
</tr>
 +
</table>
 +
<!-- end of Block-->
-
        $(document).ready(function () {
+
<!--  Block of content 2 -->
-
            // cache the window object
+
<table width="100%"  cellspacing="0" height="500px" border="0">
-
            $window = $(window);
+
<tr>
 +
<td  bgColor="#355079"></td>
 +
<td width="975px" align="center" bgColor="#355079" >
-
            $('section[data-type="background"]').each(function () {
+
<table  width="975px" cellspacing="0" height="500px" border="0">
-
                // declare the variable to affect the defined data-type
+
<tr>
-
                var $scroll = $(this);
+
<td width="95%" bgColor="#355079"  rowspan="3" align="center">
-
                $(window).scroll(function () {
+
                        <source src="<p align="center">
-
                    // HTML5 proves useful for helping with creating JS functions!
+
<video controls width="900" height="auto">
-
                    // also, negative value because we're scrolling upwards                           
+
                        <source src="https://static.igem.org/mediawiki/2014/e/ed/Virtus_Parva_Animacion_home_erika.mov">
-
                    var yPos = -($window.scrollTop() / $scroll.data('speed'));
+
                                    </video>
 +
</p>
 +
</td> 
-
                    // background position
 
-
                    var coords = '80% ' + yPos + 'px';
 
-
                    // move the background
+
<!-- This is the back to top section -->
-
                    $scroll.css({ backgroundPosition: coords });
+
<td bgColor="#355079"></td>
-
                }); // end window scroll
+
<tr><td bgColor="#355079"></td></tr>
-
            }); // end section function
+
<tr><td height="60px" width="35px" align="center" bgColor="#355079">
 +
<a href="#menu" style="text-decoration:none"; color:"#1C140D"><img src="https://static.igem.org/mediawiki/2014/3/3f/Virtus_Parva-TOP-a.jpg"></img></a></td></tr>
 +
</table>
-
            $("#section-B").hide();
+
</td>
-
            $("#section-C").hide();
+
<td bgColor="#355079"></td>
-
            $("#C-up").hide();
+
</tr>
-
            $("#B-up").hide();
+
</table>
 +
<!-- end of Block-->
-
            $("#show-B").click(function () {
 
-
                $("#section-B").slideToggle();
 
-
                $("#B-up").toggle();
 
-
                $("#B-down").toggle();
 
-
            });
 
-
            $("#show-C").click(function () {
 
-
                $("#section-C").slideToggle();
 
-
                $("#C-up").toggle();
 
-
                $("#C-down").toggle();
 
-
            });
 
-
        }); // close out script
+
<!--  Block of content 3 -->
 +
<table width="100%"  cellspacing="0" height="100px" border="0">
 +
<tr>
 +
<td  bgColor="#FFFFFF"></td>
 +
<td width="975px" align="center" bgColor="#FFFFFF" >
 +
<table  width="975px"  cellspacing="0" height="100px" border="0">
 +
<tr>
 +
<td width="95%" bgColor="#FFFFFF"  rowspan="3" align="center">
 +
<a href="http://www.luisartphotography.com/"><img src="https://static.igem.org/mediawiki/2014/e/e4/Virtus_Parva-P1.jpg"/></img></a>
 +
<a href="https://www.facebook.com/pages/Mesa-Directiva-de-Ciencias-Qu%C3%ADmico-Biol%C3%B3gicas-UDLAP/560508417305601?ref=ts&fref=ts"><img src="https://static.igem.org/mediawiki/2014/e/ef/Virtus_Parva-P2.jpg"/></img></a>
 +
<a href="http://www.concytep.puebla.gob.mx/"><img src="https://static.igem.org/mediawiki/2014/4/45/Virtus_Parva-P3.jpg"/></img></a>
 +
<a href="http://www.udlap.mx/home.aspx"><img src="https://static.igem.org/mediawiki/2014/7/7e/Virtus_Parva-P4.jpg"/></img></a>
 +
</td> 
-
        $(window).scroll(function () {
+
<!-- This is the back to top section -->
 +
<td bgColor=#FFFFFF></td>
 +
<tr><td bgColor=FFFFFF></td></tr>
 +
<tr><td  height="22px" width="48px" align="center"></td></tr>
 +
</table>
-
            if ($(this).scrollTop() >= 240) {
+
</td>
-
                $(".main-menue").css("background-color", "rgb(255, 255, 255)");
+
<td></td>
-
            }
+
</table>
 +
<!-- end of Block-->
-
            if ($(this).scrollTop() < 240) { // this refers to window
 
-
                $(".main-menue").css("background-color", "transparent");
 
-
            }
 
-
 
-
        });
 
-
 
-
        var windowSize = $(window).height();
 
-
        $(".site-wrapper").css("height", windowSize);
 
-
 
-
 
-
        // Change iGEM.ORG Wiki Style
 
-
        $("#top-section").addClass("navbar-fixed-top hidden-xs hidden-sm hidden-md");
 
-
        $("#top-section").css("background-color", "white");
 
-
        $(".left-menu").css("float", "left");
 
-
        $(".right-menu").css("float", "right");
 
-
 
-
        $(".left-menu ul li").each(function () {
 
-
            $(this).css("margin-right", "10px");
 
-
        });
 
-
 
-
        $(".right-menu ul li").each(function () {
 
-
            $(this).css("margin-left", "10px");
 
-
        });
 
-
 
-
        $(".right-menu ul li:last-child").css("margin-right", "10px");
 
-
 
-
        $("html").css("margin-top", "-10px");
 
-
 
-
 
-
    </script>
 
-
 
-
        <script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
 
-
 
-
    <script lang="JavaScript">
 
-
        if ("undefined" == typeof jQuery) throw new Error("Bootstrap's JavaScript requires jQuery"); +function (a) { "use strict"; function b() { var a = document.createElement("bootstrap"), b = { WebkitTransition: "webkitTransitionEnd", MozTransition: "transitionend", OTransition: "oTransitionEnd otransitionend", transition: "transitionend" }; for (var c in b) if (void 0 !== a.style[c]) return { end: b[c] }; return !1 } a.fn.emulateTransitionEnd = function (b) { var c = !1, d = this; a(this).one(a.support.transition.end, function () { c = !0 }); var e = function () { c || a(d).trigger(a.support.transition.end) }; return setTimeout(e, b), this }, a(function () { a.support.transition = b() }) }(jQuery), +function (a) { "use strict"; var b = '[data-dismiss="alert"]', c = function (c) { a(c).on("click", b, this.close) }; c.prototype.close = function (b) { function c() { f.trigger("closed.bs.alert").remove() } var d = a(this), e = d.attr("data-target"); e || (e = d.attr("href"), e = e && e.replace(/.*(?=#[^\s]*$)/, "")); var f = a(e); b && b.preventDefault(), f.length || (f = d.hasClass("alert") ? d : d.parent()), f.trigger(b = a.Event("close.bs.alert")), b.isDefaultPrevented() || (f.removeClass("in"), a.support.transition && f.hasClass("fade") ? f.one(a.support.transition.end, c).emulateTransitionEnd(150) : c()) }; var d = a.fn.alert; a.fn.alert = function (b) { return this.each(function () { var d = a(this), e = d.data("bs.alert"); e || d.data("bs.alert", e = new c(this)), "string" == typeof b && e[b].call(d) }) }, a.fn.alert.Constructor = c, a.fn.alert.noConflict = function () { return a.fn.alert = d, this }, a(document).on("click.bs.alert.data-api", b, c.prototype.close) }(jQuery), +function (a) { "use strict"; var b = function (c, d) { this.$element = a(c), this.options = a.extend({}, b.DEFAULTS, d), this.isLoading = !1 }; b.DEFAULTS = { loadingText: "loading..." }, b.prototype.setState = function (b) { var c = "disabled", d = this.$element, e = d.is("input") ? "val" : "html", f = d.data(); b += "Text", f.resetText || d.data("resetText", d[e]()), d[e](f[b] || this.options[b]), setTimeout(a.proxy(function () { "loadingText" == b ? (this.isLoading = !0, d.addClass(c).attr(c, c)) : this.isLoading && (this.isLoading = !1, d.removeClass(c).removeAttr(c)) }, this), 0) }, b.prototype.toggle = function () { var a = !0, b = this.$element.closest('[data-toggle="buttons"]'); if (b.length) { var c = this.$element.find("input"); "radio" == c.prop("type") && (c.prop("checked") && this.$element.hasClass("active") ? a = !1 : b.find(".active").removeClass("active")), a && c.prop("checked", !this.$element.hasClass("active")).trigger("change") } a && this.$element.toggleClass("active") }; var c = a.fn.button; a.fn.button = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.button"), f = "object" == typeof c && c; e || d.data("bs.button", e = new b(this, f)), "toggle" == c ? e.toggle() : c && e.setState(c) }) }, a.fn.button.Constructor = b, a.fn.button.noConflict = function () { return a.fn.button = c, this }, a(document).on("click.bs.button.data-api", "[data-toggle^=button]", function (b) { var c = a(b.target); c.hasClass("btn") || (c = c.closest(".btn")), c.button("toggle"), b.preventDefault() }) }(jQuery), +function (a) { "use strict"; var b = function (b, c) { this.$element = a(b), this.$indicators = this.$element.find(".carousel-indicators"), this.options = c, this.paused = this.sliding = this.interval = this.$active = this.$items = null, "hover" == this.options.pause && this.$element.on("mouseenter", a.proxy(this.pause, this)).on("mouseleave", a.proxy(this.cycle, this)) }; b.DEFAULTS = { interval: 5e3, pause: "hover", wrap: !0 }, b.prototype.cycle = function (b) { return b || (this.paused = !1), this.interval && clearInterval(this.interval), this.options.interval && !this.paused && (this.interval = setInterval(a.proxy(this.next, this), this.options.interval)), this }, b.prototype.getActiveIndex = function () { return this.$active = this.$element.find(".item.active"), this.$items = this.$active.parent().children(), this.$items.index(this.$active) }, b.prototype.to = function (b) { var c = this, d = this.getActiveIndex(); return b > this.$items.length - 1 || 0 > b ? void 0 : this.sliding ? this.$element.one("slid.bs.carousel", function () { c.to(b) }) : d == b ? this.pause().cycle() : this.slide(b > d ? "next" : "prev", a(this.$items[b])) }, b.prototype.pause = function (b) { return b || (this.paused = !0), this.$element.find(".next, .prev").length && a.support.transition && (this.$element.trigger(a.support.transition.end), this.cycle(!0)), this.interval = clearInterval(this.interval), this }, b.prototype.next = function () { return this.sliding ? void 0 : this.slide("next") }, b.prototype.prev = function () { return this.sliding ? void 0 : this.slide("prev") }, b.prototype.slide = function (b, c) { var d = this.$element.find(".item.active"), e = c || d[b](), f = this.interval, g = "next" == b ? "left" : "right", h = "next" == b ? "first" : "last", i = this; if (!e.length) { if (!this.options.wrap) return; e = this.$element.find(".item")[h]() } if (e.hasClass("active")) return this.sliding = !1; var j = a.Event("slide.bs.carousel", { relatedTarget: e[0], direction: g }); return this.$element.trigger(j), j.isDefaultPrevented() ? void 0 : (this.sliding = !0, f && this.pause(), this.$indicators.length && (this.$indicators.find(".active").removeClass("active"), this.$element.one("slid.bs.carousel", function () { var b = a(i.$indicators.children()[i.getActiveIndex()]); b && b.addClass("active") })), a.support.transition && this.$element.hasClass("slide") ? (e.addClass(b), e[0].offsetWidth, d.addClass(g), e.addClass(g), d.one(a.support.transition.end, function () { e.removeClass([b, g].join(" ")).addClass("active"), d.removeClass(["active", g].join(" ")), i.sliding = !1, setTimeout(function () { i.$element.trigger("slid.bs.carousel") }, 0) }).emulateTransitionEnd(1e3 * d.css("transition-duration").slice(0, -1))) : (d.removeClass("active"), e.addClass("active"), this.sliding = !1, this.$element.trigger("slid.bs.carousel")), f && this.cycle(), this) }; var c = a.fn.carousel; a.fn.carousel = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.carousel"), f = a.extend({}, b.DEFAULTS, d.data(), "object" == typeof c && c), g = "string" == typeof c ? c : f.slide; e || d.data("bs.carousel", e = new b(this, f)), "number" == typeof c ? e.to(c) : g ? e[g]() : f.interval && e.pause().cycle() }) }, a.fn.carousel.Constructor = b, a.fn.carousel.noConflict = function () { return a.fn.carousel = c, this }, a(document).on("click.bs.carousel.data-api", "[data-slide], [data-slide-to]", function (b) { var c, d = a(this), e = a(d.attr("data-target") || (c = d.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, "")), f = a.extend({}, e.data(), d.data()), g = d.attr("data-slide-to"); g && (f.interval = !1), e.carousel(f), (g = d.attr("data-slide-to")) && e.data("bs.carousel").to(g), b.preventDefault() }), a(window).on("load", function () { a('[data-ride="carousel"]').each(function () { var b = a(this); b.carousel(b.data()) }) }) }(jQuery), +function (a) { "use strict"; var b = function (c, d) { this.$element = a(c), this.options = a.extend({}, b.DEFAULTS, d), this.transitioning = null, this.options.parent && (this.$parent = a(this.options.parent)), this.options.toggle && this.toggle() }; b.DEFAULTS = { toggle: !0 }, b.prototype.dimension = function () { var a = this.$element.hasClass("width"); return a ? "width" : "height" }, b.prototype.show = function () { if (!this.transitioning && !this.$element.hasClass("in")) { var b = a.Event("show.bs.collapse"); if (this.$element.trigger(b), !b.isDefaultPrevented()) { var c = this.$parent && this.$parent.find("> .panel > .in"); if (c && c.length) { var d = c.data("bs.collapse"); if (d && d.transitioning) return; c.collapse("hide"), d || c.data("bs.collapse", null) } var e = this.dimension(); this.$element.removeClass("collapse").addClass("collapsing")[e](0), this.transitioning = 1; var f = function () { this.$element.removeClass("collapsing").addClass("collapse in")[e]("auto"), this.transitioning = 0, this.$element.trigger("shown.bs.collapse") }; if (!a.support.transition) return f.call(this); var g = a.camelCase(["scroll", e].join("-")); this.$element.one(a.support.transition.end, a.proxy(f, this)).emulateTransitionEnd(350)[e](this.$element[0][g]) } } }, b.prototype.hide = function () { if (!this.transitioning && this.$element.hasClass("in")) { var b = a.Event("hide.bs.collapse"); if (this.$element.trigger(b), !b.isDefaultPrevented()) { var c = this.dimension(); this.$element[c](this.$element[c]())[0].offsetHeight, this.$element.addClass("collapsing").removeClass("collapse").removeClass("in"), this.transitioning = 1; var d = function () { this.transitioning = 0, this.$element.trigger("hidden.bs.collapse").removeClass("collapsing").addClass("collapse") }; return a.support.transition ? void this.$element[c](0).one(a.support.transition.end, a.proxy(d, this)).emulateTransitionEnd(350) : d.call(this) } } }, b.prototype.toggle = function () { this[this.$element.hasClass("in") ? "hide" : "show"]() }; var c = a.fn.collapse; a.fn.collapse = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.collapse"), f = a.extend({}, b.DEFAULTS, d.data(), "object" == typeof c && c); !e && f.toggle && "show" == c && (c = !c), e || d.data("bs.collapse", e = new b(this, f)), "string" == typeof c && e[c]() }) }, a.fn.collapse.Constructor = b, a.fn.collapse.noConflict = function () { return a.fn.collapse = c, this }, a(document).on("click.bs.collapse.data-api", "[data-toggle=collapse]", function (b) { var c, d = a(this), e = d.attr("data-target") || b.preventDefault() || (c = d.attr("href")) && c.replace(/.*(?=#[^\s]+$)/, ""), f = a(e), g = f.data("bs.collapse"), h = g ? "toggle" : d.data(), i = d.attr("data-parent"), j = i && a(i); g && g.transitioning || (j && j.find('[data-toggle=collapse][data-parent="' + i + '"]').not(d).addClass("collapsed"), d[f.hasClass("in") ? "addClass" : "removeClass"]("collapsed")), f.collapse(h) }) }(jQuery), +function (a) { "use strict"; function b(b) { a(d).remove(), a(e).each(function () { var d = c(a(this)), e = { relatedTarget: this }; d.hasClass("open") && (d.trigger(b = a.Event("hide.bs.dropdown", e)), b.isDefaultPrevented() || d.removeClass("open").trigger("hidden.bs.dropdown", e)) }) } function c(b) { var c = b.attr("data-target"); c || (c = b.attr("href"), c = c && /#[A-Za-z]/.test(c) && c.replace(/.*(?=#[^\s]*$)/, "")); var d = c && a(c); return d && d.length ? d : b.parent() } var d = ".dropdown-backdrop", e = "[data-toggle=dropdown]", f = function (b) { a(b).on("click.bs.dropdown", this.toggle) }; f.prototype.toggle = function (d) { var e = a(this); if (!e.is(".disabled, :disabled")) { var f = c(e), g = f.hasClass("open"); if (b(), !g) { "ontouchstart" in document.documentElement && !f.closest(".navbar-nav").length && a('<div class="dropdown-backdrop"/>').insertAfter(a(this)).on("click", b); var h = { relatedTarget: this }; if (f.trigger(d = a.Event("show.bs.dropdown", h)), d.isDefaultPrevented()) return; f.toggleClass("open").trigger("shown.bs.dropdown", h), e.focus() } return !1 } }, f.prototype.keydown = function (b) { if (/(38|40|27)/.test(b.keyCode)) { var d = a(this); if (b.preventDefault(), b.stopPropagation(), !d.is(".disabled, :disabled")) { var f = c(d), g = f.hasClass("open"); if (!g || g && 27 == b.keyCode) return 27 == b.which && f.find(e).focus(), d.click(); var h = " li:not(.divider):visible a", i = f.find("[role=menu]" + h + ", [role=listbox]" + h); if (i.length) { var j = i.index(i.filter(":focus")); 38 == b.keyCode && j > 0 && j--, 40 == b.keyCode && j < i.length - 1 && j++, ~j || (j = 0), i.eq(j).focus() } } } }; var g = a.fn.dropdown; a.fn.dropdown = function (b) { return this.each(function () { var c = a(this), d = c.data("bs.dropdown"); d || c.data("bs.dropdown", d = new f(this)), "string" == typeof b && d[b].call(c) }) }, a.fn.dropdown.Constructor = f, a.fn.dropdown.noConflict = function () { return a.fn.dropdown = g, this }, a(document).on("click.bs.dropdown.data-api", b).on("click.bs.dropdown.data-api", ".dropdown form", function (a) { a.stopPropagation() }).on("click.bs.dropdown.data-api", e, f.prototype.toggle).on("keydown.bs.dropdown.data-api", e + ", [role=menu], [role=listbox]", f.prototype.keydown) }(jQuery), +function (a) { "use strict"; var b = function (b, c) { this.options = c, this.$element = a(b), this.$backdrop = this.isShown = null, this.options.remote && this.$element.find(".modal-content").load(this.options.remote, a.proxy(function () { this.$element.trigger("loaded.bs.modal") }, this)) }; b.DEFAULTS = { backdrop: !0, keyboard: !0, show: !0 }, b.prototype.toggle = function (a) { return this[this.isShown ? "hide" : "show"](a) }, b.prototype.show = function (b) { var c = this, d = a.Event("show.bs.modal", { relatedTarget: b }); this.$element.trigger(d), this.isShown || d.isDefaultPrevented() || (this.isShown = !0, this.escape(), this.$element.on("click.dismiss.bs.modal", '[data-dismiss="modal"]', a.proxy(this.hide, this)), this.backdrop(function () { var d = a.support.transition && c.$element.hasClass("fade"); c.$element.parent().length || c.$element.appendTo(document.body), c.$element.show().scrollTop(0), d && c.$element[0].offsetWidth, c.$element.addClass("in").attr("aria-hidden", !1), c.enforceFocus(); var e = a.Event("shown.bs.modal", { relatedTarget: b }); d ? c.$element.find(".modal-dialog").one(a.support.transition.end, function () { c.$element.focus().trigger(e) }).emulateTransitionEnd(300) : c.$element.focus().trigger(e) })) }, b.prototype.hide = function (b) { b && b.preventDefault(), b = a.Event("hide.bs.modal"), this.$element.trigger(b), this.isShown && !b.isDefaultPrevented() && (this.isShown = !1, this.escape(), a(document).off("focusin.bs.modal"), this.$element.removeClass("in").attr("aria-hidden", !0).off("click.dismiss.bs.modal"), a.support.transition && this.$element.hasClass("fade") ? this.$element.one(a.support.transition.end, a.proxy(this.hideModal, this)).emulateTransitionEnd(300) : this.hideModal()) }, b.prototype.enforceFocus = function () { a(document).off("focusin.bs.modal").on("focusin.bs.modal", a.proxy(function (a) { this.$element[0] === a.target || this.$element.has(a.target).length || this.$element.focus() }, this)) }, b.prototype.escape = function () { this.isShown && this.options.keyboard ? this.$element.on("keyup.dismiss.bs.modal", a.proxy(function (a) { 27 == a.which && this.hide() }, this)) : this.isShown || this.$element.off("keyup.dismiss.bs.modal") }, b.prototype.hideModal = function () { var a = this; this.$element.hide(), this.backdrop(function () { a.removeBackdrop(), a.$element.trigger("hidden.bs.modal") }) }, b.prototype.removeBackdrop = function () { this.$backdrop && this.$backdrop.remove(), this.$backdrop = null }, b.prototype.backdrop = function (b) { var c = this.$element.hasClass("fade") ? "fade" : ""; if (this.isShown && this.options.backdrop) { var d = a.support.transition && c; if (this.$backdrop = a('<div class="modal-backdrop ' + c + '" />').appendTo(document.body), this.$element.on("click.dismiss.bs.modal", a.proxy(function (a) { a.target === a.currentTarget && ("static" == this.options.backdrop ? this.$element[0].focus.call(this.$element[0]) : this.hide.call(this)) }, this)), d && this.$backdrop[0].offsetWidth, this.$backdrop.addClass("in"), !b) return; d ? this.$backdrop.one(a.support.transition.end, b).emulateTransitionEnd(150) : b() } else !this.isShown && this.$backdrop ? (this.$backdrop.removeClass("in"), a.support.transition && this.$element.hasClass("fade") ? this.$backdrop.one(a.support.transition.end, b).emulateTransitionEnd(150) : b()) : b && b() }; var c = a.fn.modal; a.fn.modal = function (c, d) { return this.each(function () { var e = a(this), f = e.data("bs.modal"), g = a.extend({}, b.DEFAULTS, e.data(), "object" == typeof c && c); f || e.data("bs.modal", f = new b(this, g)), "string" == typeof c ? f[c](d) : g.show && f.show(d) }) }, a.fn.modal.Constructor = b, a.fn.modal.noConflict = function () { return a.fn.modal = c, this }, a(document).on("click.bs.modal.data-api", '[data-toggle="modal"]', function (b) { var c = a(this), d = c.attr("href"), e = a(c.attr("data-target") || d && d.replace(/.*(?=#[^\s]+$)/, "")), f = e.data("bs.modal") ? "toggle" : a.extend({ remote: !/#/.test(d) && d }, e.data(), c.data()); c.is("a") && b.preventDefault(), e.modal(f, this).one("hide", function () { c.is(":visible") && c.focus() }) }), a(document).on("show.bs.modal", ".modal", function () { a(document.body).addClass("modal-open") }).on("hidden.bs.modal", ".modal", function () { a(document.body).removeClass("modal-open") }) }(jQuery), +function (a) { "use strict"; var b = function (a, b) { this.type = this.options = this.enabled = this.timeout = this.hoverState = this.$element = null, this.init("tooltip", a, b) }; b.DEFAULTS = { animation: !0, placement: "top", selector: !1, template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>', trigger: "hover focus", title: "", delay: 0, html: !1, container: !1 }, b.prototype.init = function (b, c, d) { this.enabled = !0, this.type = b, this.$element = a(c), this.options = this.getOptions(d); for (var e = this.options.trigger.split(" "), f = e.length; f--;) { var g = e[f]; if ("click" == g) this.$element.on("click." + this.type, this.options.selector, a.proxy(this.toggle, this)); else if ("manual" != g) { var h = "hover" == g ? "mouseenter" : "focusin", i = "hover" == g ? "mouseleave" : "focusout"; this.$element.on(h + "." + this.type, this.options.selector, a.proxy(this.enter, this)), this.$element.on(i + "." + this.type, this.options.selector, a.proxy(this.leave, this)) } } this.options.selector ? this._options = a.extend({}, this.options, { trigger: "manual", selector: "" }) : this.fixTitle() }, b.prototype.getDefaults = function () { return b.DEFAULTS }, b.prototype.getOptions = function (b) { return b = a.extend({}, this.getDefaults(), this.$element.data(), b), b.delay && "number" == typeof b.delay && (b.delay = { show: b.delay, hide: b.delay }), b }, b.prototype.getDelegateOptions = function () { var b = {}, c = this.getDefaults(); return this._options && a.each(this._options, function (a, d) { c[a] != d && (b[a] = d) }), b }, b.prototype.enter = function (b) { var c = b instanceof this.constructor ? b : a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type); return clearTimeout(c.timeout), c.hoverState = "in", c.options.delay && c.options.delay.show ? void (c.timeout = setTimeout(function () { "in" == c.hoverState && c.show() }, c.options.delay.show)) : c.show() }, b.prototype.leave = function (b) { var c = b instanceof this.constructor ? b : a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type); return clearTimeout(c.timeout), c.hoverState = "out", c.options.delay && c.options.delay.hide ? void (c.timeout = setTimeout(function () { "out" == c.hoverState && c.hide() }, c.options.delay.hide)) : c.hide() }, b.prototype.show = function () { var b = a.Event("show.bs." + this.type); if (this.hasContent() && this.enabled) { if (this.$element.trigger(b), b.isDefaultPrevented()) return; var c = this, d = this.tip(); this.setContent(), this.options.animation && d.addClass("fade"); var e = "function" == typeof this.options.placement ? this.options.placement.call(this, d[0], this.$element[0]) : this.options.placement, f = /\s?auto?\s?/i, g = f.test(e); g && (e = e.replace(f, "") || "top"), d.detach().css({ top: 0, left: 0, display: "block" }).addClass(e), this.options.container ? d.appendTo(this.options.container) : d.insertAfter(this.$element); var h = this.getPosition(), i = d[0].offsetWidth, j = d[0].offsetHeight; if (g) { var k = this.$element.parent(), l = e, m = document.documentElement.scrollTop || document.body.scrollTop, n = "body" == this.options.container ? window.innerWidth : k.outerWidth(), o = "body" == this.options.container ? window.innerHeight : k.outerHeight(), p = "body" == this.options.container ? 0 : k.offset().left; e = "bottom" == e && h.top + h.height + j - m > o ? "top" : "top" == e && h.top - m - j < 0 ? "bottom" : "right" == e && h.right + i > n ? "left" : "left" == e && h.left - i < p ? "right" : e, d.removeClass(l).addClass(e) } var q = this.getCalculatedOffset(e, h, i, j); this.applyPlacement(q, e), this.hoverState = null; var r = function () { c.$element.trigger("shown.bs." + c.type) }; a.support.transition && this.$tip.hasClass("fade") ? d.one(a.support.transition.end, r).emulateTransitionEnd(150) : r() } }, b.prototype.applyPlacement = function (b, c) { var d, e = this.tip(), f = e[0].offsetWidth, g = e[0].offsetHeight, h = parseInt(e.css("margin-top"), 10), i = parseInt(e.css("margin-left"), 10); isNaN(h) && (h = 0), isNaN(i) && (i = 0), b.top = b.top + h, b.left = b.left + i, a.offset.setOffset(e[0], a.extend({ using: function (a) { e.css({ top: Math.round(a.top), left: Math.round(a.left) }) } }, b), 0), e.addClass("in"); var j = e[0].offsetWidth, k = e[0].offsetHeight; if ("top" == c && k != g && (d = !0, b.top = b.top + g - k), /bottom|top/.test(c)) { var l = 0; b.left < 0 && (l = -2 * b.left, b.left = 0, e.offset(b), j = e[0].offsetWidth, k = e[0].offsetHeight), this.replaceArrow(l - f + j, j, "left") } else this.replaceArrow(k - g, k, "top"); d && e.offset(b) }, b.prototype.replaceArrow = function (a, b, c) { this.arrow().css(c, a ? 50 * (1 - a / b) + "%" : "") }, b.prototype.setContent = function () { var a = this.tip(), b = this.getTitle(); a.find(".tooltip-inner")[this.options.html ? "html" : "text"](b), a.removeClass("fade in top bottom left right") }, b.prototype.hide = function () { function b() { "in" != c.hoverState && d.detach(), c.$element.trigger("hidden.bs." + c.type) } var c = this, d = this.tip(), e = a.Event("hide.bs." + this.type); return this.$element.trigger(e), e.isDefaultPrevented() ? void 0 : (d.removeClass("in"), a.support.transition && this.$tip.hasClass("fade") ? d.one(a.support.transition.end, b).emulateTransitionEnd(150) : b(), this.hoverState = null, this) }, b.prototype.fixTitle = function () { var a = this.$element; (a.attr("title") || "string" != typeof a.attr("data-original-title")) && a.attr("data-original-title", a.attr("title") || "").attr("title", "") }, b.prototype.hasContent = function () { return this.getTitle() }, b.prototype.getPosition = function () { var b = this.$element[0]; return a.extend({}, "function" == typeof b.getBoundingClientRect ? b.getBoundingClientRect() : { width: b.offsetWidth, height: b.offsetHeight }, this.$element.offset()) }, b.prototype.getCalculatedOffset = function (a, b, c, d) { return "bottom" == a ? { top: b.top + b.height, left: b.left + b.width / 2 - c / 2 } : "top" == a ? { top: b.top - d, left: b.left + b.width / 2 - c / 2 } : "left" == a ? { top: b.top + b.height / 2 - d / 2, left: b.left - c } : { top: b.top + b.height / 2 - d / 2, left: b.left + b.width } }, b.prototype.getTitle = function () { var a, b = this.$element, c = this.options; return a = b.attr("data-original-title") || ("function" == typeof c.title ? c.title.call(b[0]) : c.title) }, b.prototype.tip = function () { return this.$tip = this.$tip || a(this.options.template) }, b.prototype.arrow = function () { return this.$arrow = this.$arrow || this.tip().find(".tooltip-arrow") }, b.prototype.validate = function () { this.$element[0].parentNode || (this.hide(), this.$element = null, this.options = null) }, b.prototype.enable = function () { this.enabled = !0 }, b.prototype.disable = function () { this.enabled = !1 }, b.prototype.toggleEnabled = function () { this.enabled = !this.enabled }, b.prototype.toggle = function (b) { var c = b ? a(b.currentTarget)[this.type](this.getDelegateOptions()).data("bs." + this.type) : this; c.tip().hasClass("in") ? c.leave(c) : c.enter(c) }, b.prototype.destroy = function () { clearTimeout(this.timeout), this.hide().$element.off("." + this.type).removeData("bs." + this.type) }; var c = a.fn.tooltip; a.fn.tooltip = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.tooltip"), f = "object" == typeof c && c; (e || "destroy" != c) && (e || d.data("bs.tooltip", e = new b(this, f)), "string" == typeof c && e[c]()) }) }, a.fn.tooltip.Constructor = b, a.fn.tooltip.noConflict = function () { return a.fn.tooltip = c, this } }(jQuery), +function (a) { "use strict"; var b = function (a, b) { this.init("popover", a, b) }; if (!a.fn.tooltip) throw new Error("Popover requires tooltip.js"); b.DEFAULTS = a.extend({}, a.fn.tooltip.Constructor.DEFAULTS, { placement: "right", trigger: "click", content: "", template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div class="popover-content"></div></div>' }), b.prototype = a.extend({}, a.fn.tooltip.Constructor.prototype), b.prototype.constructor = b, b.prototype.getDefaults = function () { return b.DEFAULTS }, b.prototype.setContent = function () { var a = this.tip(), b = this.getTitle(), c = this.getContent(); a.find(".popover-title")[this.options.html ? "html" : "text"](b), a.find(".popover-content")[this.options.html ? "string" == typeof c ? "html" : "append" : "text"](c), a.removeClass("fade top bottom left right in"), a.find(".popover-title").html() || a.find(".popover-title").hide() }, b.prototype.hasContent = function () { return this.getTitle() || this.getContent() }, b.prototype.getContent = function () { var a = this.$element, b = this.options; return a.attr("data-content") || ("function" == typeof b.content ? b.content.call(a[0]) : b.content) }, b.prototype.arrow = function () { return this.$arrow = this.$arrow || this.tip().find(".arrow") }, b.prototype.tip = function () { return this.$tip || (this.$tip = a(this.options.template)), this.$tip }; var c = a.fn.popover; a.fn.popover = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.popover"), f = "object" == typeof c && c; (e || "destroy" != c) && (e || d.data("bs.popover", e = new b(this, f)), "string" == typeof c && e[c]()) }) }, a.fn.popover.Constructor = b, a.fn.popover.noConflict = function () { return a.fn.popover = c, this } }(jQuery), +function (a) { "use strict"; function b(c, d) { var e, f = a.proxy(this.process, this); this.$element = a(a(c).is("body") ? window : c), this.$body = a("body"), this.$scrollElement = this.$element.on("scroll.bs.scroll-spy.data-api", f), this.options = a.extend({}, b.DEFAULTS, d), this.selector = (this.options.target || (e = a(c).attr("href")) && e.replace(/.*(?=#[^\s]+$)/, "") || "") + " .nav li > a", this.offsets = a([]), this.targets = a([]), this.activeTarget = null, this.refresh(), this.process() } b.DEFAULTS = { offset: 10 }, b.prototype.refresh = function () { var b = this.$element[0] == window ? "offset" : "position"; this.offsets = a([]), this.targets = a([]); { var c = this; this.$body.find(this.selector).map(function () { var d = a(this), e = d.data("target") || d.attr("href"), f = /^#./.test(e) && a(e); return f && f.length && f.is(":visible") && [[f[b]().top + (!a.isWindow(c.$scrollElement.get(0)) && c.$scrollElement.scrollTop()), e]] || null }).sort(function (a, b) { return a[0] - b[0] }).each(function () { c.offsets.push(this[0]), c.targets.push(this[1]) }) } }, b.prototype.process = function () { var a, b = this.$scrollElement.scrollTop() + this.options.offset, c = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight, d = c - this.$scrollElement.height(), e = this.offsets, f = this.targets, g = this.activeTarget; if (b >= d) return g != (a = f.last()[0]) && this.activate(a); if (g && b <= e[0]) return g != (a = f[0]) && this.activate(a); for (a = e.length; a--;) g != f[a] && b >= e[a] && (!e[a + 1] || b <= e[a + 1]) && this.activate(f[a]) }, b.prototype.activate = function (b) { this.activeTarget = b, a(this.selector).parentsUntil(this.options.target, ".active").removeClass("active"); var c = this.selector + '[data-target="' + b + '"],' + this.selector + '[href="' + b + '"]', d = a(c).parents("li").addClass("active"); d.parent(".dropdown-menu").length && (d = d.closest("li.dropdown").addClass("active")), d.trigger("activate.bs.scrollspy") }; var c = a.fn.scrollspy; a.fn.scrollspy = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.scrollspy"), f = "object" == typeof c && c; e || d.data("bs.scrollspy", e = new b(this, f)), "string" == typeof c && e[c]() }) }, a.fn.scrollspy.Constructor = b, a.fn.scrollspy.noConflict = function () { return a.fn.scrollspy = c, this }, a(window).on("load", function () { a('[data-spy="scroll"]').each(function () { var b = a(this); b.scrollspy(b.data()) }) }) }(jQuery), +function (a) { "use strict"; var b = function (b) { this.element = a(b) }; b.prototype.show = function () { var b = this.element, c = b.closest("ul:not(.dropdown-menu)"), d = b.data("target"); if (d || (d = b.attr("href"), d = d && d.replace(/.*(?=#[^\s]*$)/, "")), !b.parent("li").hasClass("active")) { var e = c.find(".active:last a")[0], f = a.Event("show.bs.tab", { relatedTarget: e }); if (b.trigger(f), !f.isDefaultPrevented()) { var g = a(d); this.activate(b.parent("li"), c), this.activate(g, g.parent(), function () { b.trigger({ type: "shown.bs.tab", relatedTarget: e }) }) } } }, b.prototype.activate = function (b, c, d) { function e() { f.removeClass("active").find("> .dropdown-menu > .active").removeClass("active"), b.addClass("active"), g ? (b[0].offsetWidth, b.addClass("in")) : b.removeClass("fade"), b.parent(".dropdown-menu") && b.closest("li.dropdown").addClass("active"), d && d() } var f = c.find("> .active"), g = d && a.support.transition && f.hasClass("fade"); g ? f.one(a.support.transition.end, e).emulateTransitionEnd(150) : e(), f.removeClass("in") }; var c = a.fn.tab; a.fn.tab = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.tab"); e || d.data("bs.tab", e = new b(this)), "string" == typeof c && e[c]() }) }, a.fn.tab.Constructor = b, a.fn.tab.noConflict = function () { return a.fn.tab = c, this }, a(document).on("click.bs.tab.data-api", '[data-toggle="tab"], [data-toggle="pill"]', function (b) { b.preventDefault(), a(this).tab("show") }) }(jQuery), +function (a) { "use strict"; var b = function (c, d) { this.options = a.extend({}, b.DEFAULTS, d), this.$window = a(window).on("scroll.bs.affix.data-api", a.proxy(this.checkPosition, this)).on("click.bs.affix.data-api", a.proxy(this.checkPositionWithEventLoop, this)), this.$element = a(c), this.affixed = this.unpin = this.pinnedOffset = null, this.checkPosition() }; b.RESET = "affix affix-top affix-bottom", b.DEFAULTS = { offset: 0 }, b.prototype.getPinnedOffset = function () { if (this.pinnedOffset) return this.pinnedOffset; this.$element.removeClass(b.RESET).addClass("affix"); var a = this.$window.scrollTop(), c = this.$element.offset(); return this.pinnedOffset = c.top - a }, b.prototype.checkPositionWithEventLoop = function () { setTimeout(a.proxy(this.checkPosition, this), 1) }, b.prototype.checkPosition = function () { if (this.$element.is(":visible")) { var c = a(document).height(), d = this.$window.scrollTop(), e = this.$element.offset(), f = this.options.offset, g = f.top, h = f.bottom; "top" == this.affixed && (e.top += d), "object" != typeof f && (h = g = f), "function" == typeof g && (g = f.top(this.$element)), "function" == typeof h && (h = f.bottom(this.$element)); var i = null != this.unpin && d + this.unpin <= e.top ? !1 : null != h && e.top + this.$element.height() >= c - h ? "bottom" : null != g && g >= d ? "top" : !1; if (this.affixed !== i) { this.unpin && this.$element.css("top", ""); var j = "affix" + (i ? "-" + i : ""), k = a.Event(j + ".bs.affix"); this.$element.trigger(k), k.isDefaultPrevented() || (this.affixed = i, this.unpin = "bottom" == i ? this.getPinnedOffset() : null, this.$element.removeClass(b.RESET).addClass(j).trigger(a.Event(j.replace("affix", "affixed"))), "bottom" == i && this.$element.offset({ top: c - h - this.$element.height() })) } } }; var c = a.fn.affix; a.fn.affix = function (c) { return this.each(function () { var d = a(this), e = d.data("bs.affix"), f = "object" == typeof c && c; e || d.data("bs.affix", e = new b(this, f)), "string" == typeof c && e[c]() }) }, a.fn.affix.Constructor = b, a.fn.affix.noConflict = function () { return a.fn.affix = c, this }, a(window).on("load", function () { a('[data-spy="affix"]').each(function () { var b = a(this), c = b.data(); c.offset = c.offset || {}, c.offsetBottom && (c.offset.bottom = c.offsetBottom), c.offsetTop && (c.offset.top = c.offsetTop), b.affix(c) }) }) }(jQuery);
 
-
    </script>
 
-
    <script lang="JavaScript">
 
-
 
-
        $(document).ready(function () {/* activate sidebar */
 
-
            $('#sidebar').affix({
 
-
                offset: {
 
-
                    top: 235
 
-
                }
 
-
            });
 
-
 
-
            /* activate scrollspy menu */
 
-
            var $body = $(document.body);
 
-
            var navHeight = $('.navbar').outerHeight(true) + 10;
 
-
 
-
            $body.scrollspy({
 
-
                target: '#leftCol',
 
-
                offset: navHeight
 
-
            });
 
-
 
-
            /* smooth scrolling sections */
 
-
            $('a[href*=#]:not([href=#])').click(function () {
 
-
                if (location.pathname.replace(/^\//, '') == this.pathname.replace(/^\//, '') && location.hostname == this.hostname) {
 
-
                    var target = $(this.hash);
 
-
                    target = target.length ? target : $('[name=' + this.hash.slice(1) + ']');
 
-
                    if (target.length) {
 
-
                        $('html,body').animate({
 
-
                            scrollTop: target.offset().top - 50
 
-
                        }, 1000);
 
-
                        return false;
 
-
                    }
 
-
                }
 
-
            });
 
-
        });
 
-
    </script>
 
</body>
</body>
-
 
-
 
</html>
</html>
-
 
-
<!-- end of page -->
 

Latest revision as of 03:55, 18 October 2014

Virtus Parva

Bio-NEMS Drill!


Traditionally pathogens have been annihilated using pharmaceuticals, but today nanotechnology offers a new possibility with the use of nanoelectromechanical systems (NEMS). We present a novel device that could make these processes possible: the BioNEMS Drill. This is a magnetic portion of chromatin. To construct the device we synthesized hydrophilic magnetite. We used it due to its bio-compatibility for medical applications and later functionalized them with amino groups, which can establish a peptide bond between nanoparticles and a protein. We used the HU histone-like protein, capable of coiling DNA around the nanoparticles. To get enough protein, we modified E. Coli to overexpress it. Since the core of the device is magnetic it can be controlled by applying an external magnetic field. Furthermore, the versatility of the DNA to be coated with various materials and its functionalization can selectively remove certain chemicals inside the human body such as cholesterol or toxic agents.