<html lang="en">
  <head>
    <meta charset="utf-8" />
    <title>iLightBox &middot; Revolutionary Lightbox Plugin</title>
	<meta http-equiv="X-UA-Compatible" content="IE=edge" />
	<meta name="viewport" content="initial-scale=1.0, maximum-scale=1.0, user-scalable=0, minimal-ui">
	<meta name="apple-mobile-web-app-capable" content="yes" />
	<meta name="apple-mobile-web-app-title" content="iLightBox" />
	<meta name="author" content="Hemn Chawroka" />
	<meta property="og:title" content="iLightBox - Revolutionary Lightbox Plugin" />
	<meta property="og:url" content="http://ilightbox.net/" />
	<meta property="og:image" content="http://ilightbox.net/assets/img/ilightbox_thumbnail.png" />
	<meta property="og:type" content="website" />
	<meta property="og:description" content="iLightBox allows you to easily create the most beautiful overlay windows using the jQuery Javascript library. By combining support for a wide range of media with gorgeous skins and a user-friendly API, iLightBox aims to push the Lightbox concept as far as possible." />
	<meta name="description" content="iLightBox allows you to easily create the most beautiful overlay windows using the jQuery Javascript library. By combining support for a wide range of media." />
	<meta name="keywords" content="jQuery, lightbox, lightboxs, jquery plugin, jquery lightbox plugin, design user interface, overlay, jquery overlay, slideshow maker, best light box, best lightbox, WordPress lightbox plugin, WordPress gallery, image gallery with slideshow, powerfull lightbox plugin, new lightbox plugin, new functional lightbox plugin, html5 video, media gallery, modern, video gallery, photo gallery, modal box, jquery modal box plugin, lightboxes, photo lightbox, website photo gallery, photo gallery for website, gallery photo album, video lightbox, slide show web, create picture gallery, photo light box, photo lightbox, light box photo, lightbox photo, web photo album, video and image slideshow, photography box, display lightbox, wordpress for photographers, JavaScript lightbox with API" />

	<meta name="twitter:card" content="summary" />
	<meta name="twitter:creator" content="@chawroka">
	<meta name="twitter:url" content="http://ilightbox.net/" />
	<meta name="twitter:title" content="iLightBox - Revolutionary Lightbox Plugin" />
	<meta name="twitter:description" content="iLightBox allows you to easily create the most beautiful overlay windows using the jQuery Javascript library. By combining support for a wide range of media." />
	<meta name="twitter:image" content="http://ilightbox.net/assets/img/ilightbox_thumbnail.png" />
	
	<script>
		var host = window.location.hostname.toLowerCase(),
		path = window.location.pathname.toLowerCase().replace('/ilightbox/', '');
		if(host == 'iprodev.com' || host == 'www.iprodev.com') window.location.href = 'http://ilightbox.net/' + path;
	</script>

    <!-- Le styles -->
    <link href="http://ilightbox.netassets/css/bootstrap.css" rel="stylesheet" />
    <link href="http://ilightbox.netassets/css/bootstrap-responsive.css" rel="stylesheet" />
    <link href="http://ilightbox.netassets/css/docs.css" rel="stylesheet" />
    <link href="http://ilightbox.netassets/js/google-code-prettify/prettify.css" rel="stylesheet" />
    <link href="http://ilightbox.netassets/css/demo_ajax_stevejobs.css" rel="stylesheet" />
    <link href="http://ilightbox.netsrc/css/ilightbox.css" rel="stylesheet" />
    <style>

    /* GLOBAL STYLES
    -------------------------------------------------- */
    /* Padding below the footer and lighter body text */

    body {
      padding-top: 0;
      padding-bottom: 40px;
      color: #5a5a5a;
    }
	
	.jumbotron {
	  background: #793e3a; /* Old browsers */
	  background: -moz-linear-gradient(45deg,  #793e3a 0%, #170f3e 100%); /* FF3.6+ */
	  background: -webkit-gradient(linear, left bottom, right top, color-stop(0%,#793e3a), color-stop(100%,#170f3e)); /* Chrome,Safari4+ */
	  background: -webkit-linear-gradient(45deg,  #793e3a 0%,#170f3e 100%); /* Chrome10+,Safari5.1+ */
	  background: -o-linear-gradient(45deg,  #793e3a 0%,#170f3e 100%); /* Opera 11.10+ */
	  background: -ms-linear-gradient(45deg,  #793e3a 0%,#170f3e 100%); /* IE10+ */
	  background: linear-gradient(45deg,  #793e3a 0%,#170f3e 100%); /* W3C */
	  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#793e3a', endColorstr='#170f3e',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	}
	
	.masthead .btn {
	  padding: 11px 19px;
	}
	
	.masthead .btn [class^="icon-"] {
	  margin-top: 7px;
	}



    /* CUSTOMIZE THE NAVBAR
    -------------------------------------------------- */

    /* Special class on .container surrounding .navbar, used for positioning it into place. */
    .navbar-wrapper {
      position: fixed;
      z-index: 1035;
	  top: 0;
	  left: 0;
	  right: 0;
    }

    .navbar  {
      margin-bottom: 0;
    }

    /* Remove border and change up box shadow for more contrast */
    .navbar .navbar-inner {
      border: 0;
      -webkit-box-shadow: 0 2px 10px rgba(0,0,0,.5);
         -moz-box-shadow: 0 2px 10px rgba(0,0,0,.5);
              box-shadow: 0 2px 10px rgba(0,0,0,.5);
			  
      -webkit-border-radius: 0 0 4px 4px;
         -moz-border-radius: 0 0 4px 4px;
              border-radius: 0 0 4px 4px;
    }

    /* Downsize the brand/project name a bit */
    .navbar .brand {
      padding: 14px 20px 16px; /* Increase vertical padding to match navbar links */
      font-size: 16px;
      font-weight: bold;
      text-shadow: 0 -1px 0 rgba(0,0,0,.5);
    }

    /* Navbar links: increase padding for taller navbar */
    .navbar .nav > li > a {
      padding: 15px 20px;
    }

    /* Offset the responsive button for proper vertical alignment */
    .navbar .btn-navbar {
      margin-top: 10px;
    }



    /* CUSTOMIZE THE NAVBAR
    -------------------------------------------------- */
	.masthead {
		padding-top: 110px;
		padding-bottom: 60px;
	}



    /* MARKETING CONTENT
    -------------------------------------------------- */

    /* Center align the text within the three columns below the carousel */
    .marketing .span4, .marketing .span4 p, .marketing .marketing-byline {
      text-align: center;
    }
	.marketing .marketing-byline.left {
	  text-align: left;
      margin-top: -50px;
    }
    .marketing h2 {
      font-weight: normal;
    }
	.marketing p, .hero-unit {
	  text-align: left;
	}


    /* Featurettes
    ------------------------- */

    .featurette-divider {
      margin: 80px 0; /* Space out the Bootstrap <hr> more */
    }
    .featurette {
      overflow: hidden; /* Vertically center images part 2: clear their floats. */
	  text-align: left;
    }
    .featurette-image {
      margin-top: -120px; /* Vertically center images part 3: negative margin up the image the same amount of the padding to center it. */
    }

    /* Give some space on the sides of the floated elements so text doesn't run right into it. */
    .featurette-image.pull-left {
      margin-right: 40px;
    }
    .featurette-image.pull-right {
      margin-left: 40px;
    }

    /* Thin out the marketing headings */
    .featurette-heading {
      font-size: 50px;
      font-weight: 300;
      line-height: 1;
      letter-spacing: -1px;
	  margin-bottom: 60px !important;
    }
	
	.thumbnail > img {
	  margin: 0 auto;
	}
	
	h3 sup {
		font-size: 13px;
		font-weight: normal;
	}



    /* RESPONSIVE CSS
    -------------------------------------------------- */

    @media (max-width: 979px) {

		.navbar-wrapper {
          position: relative;
		  margin-top: 20px;
		}

      .container.navbar-wrapper {
        margin-bottom: 0;
        width: auto;
      }
      .navbar-inner {
        border-radius: 0;
        margin: -20px 0;
      }

      .featurette {
        height: auto;
        padding: 0;
      }
      .featurette-image.pull-left,
      .featurette-image.pull-right {
        display: block;
        float: none;
        max-width: 40%;
        margin: 0 auto 20px;
      }
    }


    @media (max-width: 767px) {

      .navbar-inner {
        margin: -20px;
      }

      .marketing .span4 + .span4 {
        margin-top: 40px;
      }

      .featurette-heading {
        font-size: 30px;
      }
      .featurette .lead {
        font-size: 18px;
        line-height: 1.5;
      }

    }
	
	div.center {
		width: 450px;
		height: 260px;
		text-align: center;
	}
	
	div.center h2 {
		display: block;
		margin: 0;
	}
	
	div.center h2 img {
		display: block;
		margin: 0 auto;
		padding: 20px;
	}
	
	.ilightbox-dialogue .ilightbox-container, .ilightbox-dialogue .ilightbox-inner-toolbar {
		width: auto !important;
		height: auto !important;
	}
	
	.dialogue {
		min-width: 200px;
		max-width: 600px;
		max-height: 400px;
		padding: 20px;
		padding-top: 20px;
	}
	
	.dialogue .btn {
		float: right;
		padding-right: 20px;
		padding-left: 20px;
		margin-left: 10px;
		margin-top: 10px;
	}
	
	/* Slidshow button styles */
	a.slideshow_button {
		display: none;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 35px;
		padding: 14px 30px;
		margin: auto;
		cursor: pointer;
		font-size: 22px;
		z-index: 100001;
		width: 140px;
	}
	
	html.win .ilightbox-noscroll, html.win .ilightbox-noscroll .navbar-wrapper {
		padding-right: 17px;
	}
	
	html.linux .ilightbox-noscroll, html.linux .ilightbox-noscroll .navbar-wrapper {
		padding-right: 13px;
	}
    </style>
	<!--[if IE 7]>
    <style>
	.jumbotron {
	  background: #47263C url(assets/img/bs-docs-masthead-pattern.png) repeat center center;
	  filter: none;
	}
	
    .navbar-wrapper {
      width: 100%;
    }
    </style>
	<![endif]-->
	
    <!-- HTML5 shim, for IE6-8 support of HTML5 elements -->
    <!--[if lt IE 9]>
      <script src="https://html5shim.googlecode.com/svn/trunk/html5.js"></script>
    <![endif]-->
	
	<link rel="apple-touch-icon" href="assets/ico/57.png" />
	<link rel="apple-touch-icon" sizes="72x72" href="assets/ico/72.png" />
	<link rel="apple-touch-icon" sizes="114x114" href="assets/ico/114.png" />
	<link rel="apple-touch-icon" sizes="144x144" href="assets/ico/144.png" />
  </head>

  <body data-spy="scroll" data-target=".navbar">



    <!-- NAVBAR
    ================================================== -->
    <!-- Wrap the .navbar in .container to center it on the page and provide easy way to target it with .navbar-wrapper. -->
    <div class="container navbar-wrapper">

      <div class="navbar navbar-inverse">
        <div class="navbar-inner">
          <!-- Responsive Navbar Part 1: Button for triggering responsive navbar (not covered in tutorial). Include responsive CSS to utilize. -->
          <a class="btn btn-navbar" data-toggle="collapse" data-target=".nav-collapse">
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
            <span class="icon-bar"></span>
          </a>
          <a class="brand" href="http://ilightbox.net/">iLightBox</a>
          <!-- Responsive Navbar Part 2: Place all navbar contents you want collapsed withing .navbar-collapse.collapse. -->
          <div class="nav-collapse collapse">
            <ul class="nav">
              <li style="display: none;"><a href="#home">Home</a></li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Images <b class="caret"></b></a>
                <ul class="dropdown-menu">
                  <li><a href="#singleimage">Single Image</a></li>
                  <li><a href="#imagegallery">Image Gallery</a></li>
                  <li><a href="#deeplinking_looping">Deeplinking & Infinite</a></li>
                  <li><a href="#advanced_images">Advanced Examples</a></li>
                </ul>
              </li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">HTML <b class="caret"></b></a>
                <ul class="dropdown-menu">
                  <li><a href="#html_inline_content">Inline Content</a></li>
                  <li><a href="#html_ajax">Ajax</a></li>
                  <li><a href="#html_flash">Flash / SWF</a></li>
                  <li><a href="#html_iframe">IFRAME</a></li>
                  <li><a href="#html_advanced_examples">Advanced Examples</a></li>
                </ul>
              </li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Videos <b class="caret"></b></a>
                <ul class="dropdown-menu">
                  <li><a href="#video_simple">Simple Usage</a></li>
                  <li><a href="#video_advanced_examples">Advanced Examples</a></li>
                </ul>
              </li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Advanced Examples <b class="caret"></b></a>
                <ul class="dropdown-menu">
                  <li><a href="#advanced_mixed">Mixed Contents & Google Maps via API</a></li>
                  <li><a href="#advanced_events">Events</a></li>
                  <li><a href="#galley_with_slideshow">Image Gallery with Slideshow</a></li>
                  <li><a href="#advanced_dialogues">Alert/Confirm/Prompt</a></li>
                  <li><a href="plus_comment.html">Image Preview + Sidebar</a></li>
                  <li><a href="infinite_scroll.html">Infinite Scroll Gallery</a></li>
                  <li><a href="responsive_slider.html">Responsive Slider!</a></li>
                </ul>
              </li>
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Support <b class="caret"></b></a>
                <ul class="dropdown-menu">
                  <li><a href="discussion.html">Discussion</a></li>
                  <li><a href="faq.html">Frequently Asked Questions</a></li>
                  <li><a href="changelog.html">Changelog</a></li>
                </ul>
              </li>
            </ul>
            <ul class="nav pull-right">
              <li class="dropdown">
                <a href="#" class="dropdown-toggle" data-toggle="dropdown">Projects <b class="caret"></b></a>
                <ul class="dropdown-menu" id="projects_container">
                </ul>
              </li>
            </ul>
          </div><!--/.nav-collapse -->
        </div><!-- /.navbar-inner -->
      </div><!-- /.navbar -->

    </div><!-- /.container -->

<div class="jumbotron masthead" id="home">
  <div class="container">
    <h1>iLightBox</h1>
    <p>Sleek, smooth, powerful, and revolutionary jQuery lightbox plugin for creative and ambitious web designers and developers.</p>
    <p>
      <a href="https://goo.gl/nl0Bg" class="btn btn-primary btn-large">Download iLightBox&nbsp;&nbsp;<i class="icon-download-alt icon-white"></i></a>
      <a href="https://goo.gl/DlaJq" class="btn btn-info btn-large">Download for WordPress&nbsp;&nbsp;<i class="icon-download-alt icon-white"></i></a>
      <a href="discussion.html" class="btn btn-success btn-large">Discussion&nbsp;&nbsp;<i class="icon-comment icon-white"></i></a>
    </p>
    <ul class="masthead-links">
      <li>
        Version 2.2.0
      </li>
    </ul>
  </div>
</div>
<!--
<div class="bs-docs-social">
  <div class="container">
    <ul class="bs-docs-social-buttons">
      <li>
        <iframe src="https://www.facebook.com/plugins/like.php?href=http%3A%2F%2Filightbox.net%2F&amp;send=false&amp;layout=button_count&amp;width=150&amp;show_faces=true&amp;font&amp;colorscheme=light&amp;action=recommend&amp;height=21" scrolling="no" frameborder="0" style="border:none; overflow:hidden; width:150px; height:21px;" allowTransparency="true"></iframe>
      </li>
      <li>
        <div class="g-plusone" data-size="medium" data-href="http://ilightbox.net/"></div>
      </li>
      <li class="follow-btn">
        <a href="https://twitter.com/chawroka" class="twitter-follow-button" data-link-color="#0069D6" data-show-count="true">Follow @chawroka</a>
      </li>
      <li class="tweet-btn">
        <a href="https://twitter.com/share" class="twitter-share-button" data-url="http://ilightbox.net/" data-count="horizontal" data-via="chawroka" data-related="@chawroka:iLightBox - Revolutionary Lightbox for creative and ambitious web designers and developers.">Tweet</a>
      </li>
    </ul>
  </div>
</div>
-->


    <!-- Marketing messaging and featurettes
    ================================================== -->
    <!-- Wrap the rest of the page in another container to center all the content. -->

<div class="container marketing">


    <h1>Introducing iLightBox</h1>
    <p class="marketing-byline">iLightBox allows you to easily create the most beautiful responsive overlay windows using the jQuery JavaScript library.<br>
	By combining support for a wide range of media with gorgeous skins and a user-friendly API, iLightBox aims to push the Lightbox concept as far as possible.</p>
    <p class="marketing-byline">Need reasons to love iLightBox? Look no further.</p>

    <div class="row-fluid">
      <div class="span4">
        <img src="assets/img/cross-browser.png" alt="iLightBox Cross-Browser support">
        <h2>Browser support</h2>
        <p align="center">IE7+ (including IE10), Firefox, Safari, Opera, Chrome, IOS4+, and Android are supported.</p>
      </div>
      <div class="span4">
        <img src="assets/img/bs-docs-responsive-illustrations.png" alt="iLightBox Responsive Capability">
        <h2>Made for everyone.</h2>
        <p align="center">iLightBox was made to not only look and behave great in the latest desktop browsers (as well as IE7!), but in tablet and smartphone browsers as well.</p>
      </div>
      <div class="span4">
        <img src="assets/img/bs-docs-bootstrap-features.png" alt="iLightBox Features">
        <h2>Packed with features.</h2>
        <p align="center">To make things even more awesome iLightBox comes with fullscreen, retina-ready skins, supports for swipe events, Youtube and Vimeo integration for HTML5 video, powerful Javascript API and has lifetime free support and updates.</p>
      </div>
    </div>

    <hr class="featurette-divider">
	<style>
		.bigone {
			text-align: center;
			margin-bottom: 80px;
		}
		.bigone h2 {
			text-transform: uppercase;
		}
		.bigone img {
			margin: 0 auto;
		}
	</style>
      <div class="featurette bigone">
        <h2 class="featurette-heading">Responsive Lightbox</h2>
		<p class="marketing-byline">iLightBox adds beautiful and responsive Lightbox capability to your HTML and WordPress-powered website. Lightboxes automatically resize correctly on all screen resolutions, and allow for easy forward and backward navigation.</p>
		<img src="assets/img/responsive.jpg" />
	  </div>

    <hr class="featurette-divider">
	
      <div class="featurette bigone">
        <h2 class="featurette-heading">Social Sharing</h2>
		<p class="marketing-byline">Each window has social sharing icons which allows your visitors to easily share them across the social networks. <strong><u>Deep-Linking</u></strong> is also baked in, which means each window gets it’s own unique URL. When that special link is visited, iLightBox automatically opens that specific window! Supports Facebook, Twitter, Google+, Delicious, Digg and reddit – <u>you can even edit the default buttons or create your custom social button!</u></p>
		<img src="assets/img/social_sharing.jpg" />
	  </div>

    <hr class="featurette-divider">
	
      <div class="featurette bigone">
        <h2 class="featurette-heading">Mobile Friendly</h2>
		<p class="marketing-byline">Not only does it resize to fit perfectly on mobile devices, but mobile users can also use swipe gestures to navigate through the media galleries. Running out of space and can’t see the window in it’s full glory? We have you covered – just tap the window to hide the social icons and window caption. Tap again to bring them back.</p>
		<img src="assets/img/mobile_friendly.jpg" />
	  </div>

    <hr class="featurette-divider">
	
      <div class="featurette bigone">
        <h2 class="featurette-heading">So What Can iLightBox Do For Your Website and Business?</h2>
		<p class="marketing-byline" style="text-align: left; margin-bottom: 10px;">Your Lightboxes will become easily viewable on all devices screen sizes. No more frustrated users!</p>
		<p class="marketing-byline" style="text-align: left; margin-bottom: 10px;">Your Lightboxes become easily shared on social sharing networks.</p>
		<p class="marketing-byline" style="text-align: left; margin-bottom: 10px;">Built-in support for several of the most popular image and SEO plugins you’re probably already using.</p>
		<p class="marketing-byline" style="text-align: left; margin-bottom: 10px;">Fully customizable skins and settings to match your responsive Lightboxes to your website’s existing design.</p>
		<p class="marketing-byline" style="text-align: left; margin-bottom: 10px;">Include your own custom Javascript and CSS for complete flexibility to meet any need you may have.</p>

	  </div>
	
	<div class="hero-unit row" style="margin: 0; font-size: 14px; padding: 20px;">
		<div class="span6">
			<h3>Features</h3>
			<ul>
				<li>jQuery capabilities.</li>
				<li>Responsive design.</li>
				<li>6 ready to use skins.</li>
				<li>Native browser fullscreen support.</li>
				<li>Cross browser, supports Chrome, FireFox, Safari, Opera and IE7+</li>
				<li>Device friendly, works in iPhone, iPad, Android Devices and Windows Phone.</li>
				<li>Highly User Interface Design.</li>
				<li>Fully customizable, it’s possible to customize or redesign all parts of iLightBox.</li>
				<li>Search engine optimized (SEO)</li>
				<li>YouTube and Vimeo videos are supported.</li>
				<li>Video auto recognition from sites.</li>
				<li>Smart Content recognizer</li>
				<li>Option to preview thumbnail over navigation.</li>
				<li>Advanced JavaScript API considered.</li>
				<li>Smart resource loader</li>
				<li>Simple clean & valid markup</li>
				<li>Developed with pure object oriented JavaScript</li>
				<li>Multilanguage support</li>
				<li>Keyboard support</li>
				<li>Touch support</li>
				<li>Mouse support: (Click, Wheel)</li>
				<li>Extended HTML documentation</li>
				<li>Powerful, documented API — public methods, properties, callbacks</li>
				<li>Tons features more...</li>
			</ul>
		</div>
		<div class="span5">
			<h3>WordPress <sup>Version</sup> Features</h3>
			<ul>
				<li>Show galleries and inline galleries.</li>
				<li>Compatible with the regular wordpress gallery shortcode.</li>
				<li>Compatible with the Jetpack galleries.</li>
				<li>Compatible with the nextGEN galleries.</li>
				<li>Multisite Support.</li>
				<li>Shortcode parser for HTML contents.</li>
				<li>Multiple file upload.</li>
				<li>Works with Ajax Themes.</li>
				<li>Autodetect all Videos and Images links.</li>
				<li>Mobile Optimization capability.</li>
				<li>Search engine optimized (SEO)</li>
				<li>YouTube and Vimeo videos are supported.</li>
				<li>Multilanguage support</li>
				<li>Extended HTML documentation</li>
				<li>Powerful, documented API — public methods, properties, callbacks</li>
				<li>Tons features more...</li>
			</ul>
			<hr>
			<h3>Demo</h3>
			<strong>WP Demo:</strong> <a href="http://ilightbox.net/wordpress/" target="_blank">Click here to see examples</a><br>
			<strong>WP Admin:</strong> <a href="http://ilightbox.net/wordpress/wp-admin/admin.php?page=ilightbox_general" target="_blank">Click here to see admin dashboard</a><br>
			<strong>Username:</strong> <code>demo</code><br>
			<strong>Password:</strong> <code>demo</code><br>
		</div>
	</div>

      <hr class="featurette-divider">
	
	<div class="hero-unit">
	  IF YOU HAVE ANY QUESTION THAT ARE BEYOND THE SCOPE OF THE ILIGHTBOX, PLEASE FEEL FREE TO <a href="http://ilightbox.net/discussion.html">JOIN THE DISCUSSION</a> OR <a href="http://codecanyon.net/user/hemn?ref=hemn">EMAIL ME VIA MY USER PAGE CONTACT FORM</a>. THANKS SO MUCH!
	</div>



      <!-- START THE FEATURETTES -->

      <hr class="featurette-divider" id="singleimage">

      <div class="featurette">
        <h2 class="featurette-heading">IMAGES <span class="muted">&middot; Single Image</span></h2>
		<p class="marketing-byline left">Here we use default settings and default styles for single image preview.</p>
			<ul class="thumbnails">
              <li class="span3">
                <a id="singleimage_1" href="http://ilightbox.net/assets/img/photos/lost_in_the_world_by_vhm_alex-d5mbdg7.jpg" class="thumbnail" data-caption="I'm lost in the world, I'm down on my mind, I'm building a city, And I'm down for the night.">
                  <img src="http://ilightbox.net/assets/img/thumbnails/lost_in_the_world_by_vhm_alex-d5mbdg7.jpg" alt="iLightBox - Single Image" />
                </a>
              </li>
              <li class="span3">
                <a id="singleimage_2" href="http://ilightbox.net/assets/img/photos/princess_of_china_by_vhm_alex-d5gu1a2.jpg" class="thumbnail" data-caption="You really hurt me.">
                  <img src="http://ilightbox.net/assets/img/thumbnails/princess_of_china_by_vhm_alex-d5gu1a2.jpg" alt="iLightBox - Single Image" />
                </a>
              </li>
              <li class="span3">
                <a id="singleimage_3" href="assets/img/photos/shame_by_vhm_alex-d58ipnj.jpg" class="thumbnail" data-caption="An interpretation of Michael Fassbender as Brandon, a sex addict in director Steve McQueen's 2011 film <i>Shame</i>.">
                  <img src="assets/img/thumbnails/shame_by_vhm_alex-d58ipnj.jpg" alt="iLightBox - Single Image" />
                </a>
              </li>
              <li class="span3">
                <a id="singleimage_4" href="http://ilightbox.net/assets/img/photos/love_will_tear_us_apart_by_vhm_alex-d4tqff9.jpg" class="thumbnail">
                  <img src="http://ilightbox.net/assets/img/thumbnails/love_will_tear_us_apart_by_vhm_alex-d4tqff9.jpg" alt="iLightBox - Single Image" />
                </a>
              </li>
            </ul>
      </div>
	  
	  <div class="alert alert-info" align="left">
	    Pictures by <a href="http://oer-wout.deviantart.com/" target="_blank"><b>oer-wout</b></a>
	  </div>

      <hr class="featurette-divider" id="imagegallery">

      <div class="featurette">
        <h2 class="featurette-heading">IMAGES <span class="muted">&middot; Image Gallery</span></h2>
        <p class="marketing-byline left">Here we use default settings and customize skin for some pictures in image gallery preview.</p>
	  
		  <ul class="thumbnails" id="image_gallery">
			<li class="span5">
			  <a href="assets/img/photos/challenger_by_nikosalpha-d5mgk3u.jpg" data-options="thumbnail: 'assets/img/thumbnails/challenger_by_nikosalpha-d5mgk3u.jpg'" class="thumbnail" data-caption="Presenting Tonia Sotiropoulou, in a new 2012 shooting. Tonia is currently in the big screen with James Bond's Skyfall. This photo is a sample for magazine use, more photos will follow in the future. See previous work with her at <a href='http://nikosalpha.com/tonia'>nikosalpha.com/tonia</a>.">
				<img src="assets/img/thumbnails/challenger_by_nikosalpha-d5mgk3u.jpg" alt="iLightBox - Image Gallery" />
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/catharine_by_nikosalpha-d5drzr1.jpg" data-options="thumbnail: 'assets/img/thumbnails/catharine_by_nikosalpha-d5drzr1.jpg'" class="thumbnail" data-caption="Presenting Catharine. She is a young multitalented beautiful voice singing in the UK. Follow her work <a href='https://www.facebook.com/CatharineAmorosoMusic'>here</a>">
				<img src="assets/img/thumbnails/catharine_by_nikosalpha-d5drzr1.jpg" alt="iLightBox - Image Gallery" />
			  </a>
			</li>
			<li class="span3">
			  <a href="assets/img/photos/underexposed_by_nikosalpha.jpg" data-options="thumbnail: 'assets/img/thumbnails/underexposed_by_nikosalpha.jpg'" class="thumbnail">
				<img src="assets/img/thumbnails/underexposed_by_nikosalpha.jpg" alt="iLightBox - Image Gallery" />
			  </a>
			</li>
			<li class="span2 pull-right">
			  <a href="assets/img/photos/auric_by_nikosalpha-d4ymtor.jpg" data-options="thumbnail: 'assets/img/thumbnails/auric_by_nikosalpha-d4ymtor.jpg', skin: 'light'" class="thumbnail" data-caption="One more photo of one of my favorite subjects, the Lips. I decided to create a unique tag in my website only for them. Here they are so far: <a href='http://nikosalpha.com/lips'>nikosalpha.com/lips</a>.">
				<img src="assets/img/thumbnails/auric_by_nikosalpha-d4ymtor.jpg" alt="iLightBox - Image Gallery" />
			  </a>
			</li>
			<li class="span3">
			  <a href="assets/img/photos/piece_by_nikosalpha-d3bc2cc.jpg" data-options="thumbnail: 'assets/img/thumbnails/piece_by_nikosalpha-d3bc2cc.jpg'" class="thumbnail" data-caption="The sweetest piece of my life">
				<img src="assets/img/thumbnails/piece_by_nikosalpha-d3bc2cc.jpg" alt="iLightBox - Image Gallery" />
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/blonde_by_nikosalpha-d5hk45h.jpg" data-options="thumbnail: 'assets/img/thumbnails/blonde_by_nikosalpha-d5hk45h.jpg'" class="thumbnail" data-caption="New session with the singer Valerie Kalenti! (:">
				<img src="assets/img/thumbnails/blonde_by_nikosalpha-d5hk45h.jpg" alt="iLightBox - Image Gallery" />
			  </a>
			</li>
		  </ul>
      </div>
	  
	  <div class="alert alert-info" align="left">
	    Pictures by <a href="http://nikosalpha.com" target="_blank">nikos<b>vasilakis</b></a>
	  </div>

      <hr class="featurette-divider" id="deeplinking_looping">

      <div class="featurette">
        <h2 class="featurette-heading">IMAGES <span class="muted">&middot; Deeplinking & Infinite</span></h2>
        <p class="marketing-byline left">In this case iLightBox allow photos will be available for next references via URL and infinite the gallery.</p>
	  
		  <ul class="thumbnails" id="deeplinking_looping_gallery">
			<li class="span2">
			  <a href="assets/img/photos/music/01-G-Unit.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/01-G-Unit.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/02-G-Unit.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/02-G-Unit.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/03-G-Unit.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/03-G-Unit.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/04-G-Unit.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/04-G-Unit.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/07-Three-6-Mafia.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/07-Three-6-Mafia.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/08-Three-6-Mafia.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/08-Three-6-Mafia.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/09-Three-6-Mafia.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/09-Three-6-Mafia.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/10-Chris-Brown.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/10-Chris-Brown.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/11-Chris-Brown.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/11-Chris-Brown.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/13-Gym-Class-Heroes.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/13-Gym-Class-Heroes.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/16-3OH!3.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/16-3OH!3.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/music/17-3OH!3.jpg" class="thumbnail">
				<img src="assets/img/thumbnails/music/17-3OH!3.jpg" alt="iLightBox - Deeplinking & Infinite">
			  </a>
			</li>
		  </ul>
      </div>
	  
	  <div class="alert alert-info" align="left">
		Pictures by <a href="http://www.davehillphoto.com/music/" target="_blank"><b>DAVE HILL</b></a>
	  </div>

      <hr class="featurette-divider" id="advanced_images">

      <div class="featurette">
        <h2 class="featurette-heading">IMAGES <span class="muted">&middot; Advanced Examples</span></h2>
        <p class="marketing-byline left">Here we use custom settings and advanced options for making advanced previews.</p>
		
		<ul class="thumbnails advanced-images">
		  <li class="span4">
			  <a href="#" id="inline_gallery" class="thumbnail"><img src="assets/img/thumbnails/599_1nero_splash_1.jpg" alt="iLightBox - Inline Image Gallery" /></a>
			  <div class="caption">
				<h3>Inline Image Gallery</h3>
				<p>An image Gallery with a single click and some customization like: skin, path, startFrom, ...</p>
			  </div>
	  
			  <div class="alert alert-info" align="left">
				Pictures by <a href="http://www.caesarlima.com/#mi=2&pt=1&pi=10000&s=0&p=1&a=0&at=0" target="_blank"><b>caesarlima</b></a>
			  </div>
		  </li>
		  <li class="span4">
			  <a id="forceresize" href="http://www.caesarlima.com/#mi=2&pt=1&pi=10000&s=7&p=2&a=0&at=0" photo="assets/img/photos/caesarlima/481_1cae_shadow.jpg" data-options="width:400, width:400" target="_blank" class="thumbnail"><img src="assets/img/thumbnails/481_1cae_shadow.jpg" alt="iLightBox - Force Size & Custom Attribute" /></a>
			  <div class="caption">
				<h3>Force Size & Custom Attribute</h3>
				<p>A single image via custom attribute, force size and some customization like: skin, ...</p>
			  </div>
	  
			  <div class="alert alert-info" align="left">
				Picture by <a href="http://www.caesarlima.com/#mi=2&pt=1&pi=10000&s=7&p=2&a=0&at=0" target="_blank"><b>caesarlima</b></a>
			  </div>
		  </li>
		  <li class="span4">
			  <a id="open_in_modal" href="http://marcuseriksson.net/c/s/ski/" target="_blank" class="thumbnail"><img src="assets/img/thumbnails/MS-test-day-27749.jpg" alt="iLightBox - Open in Modal" /></a>
			  <div class="caption">
				<h3>Open in Modal</h3>
				<p>Toggle if <code>clicking the overlay</code> or <code>press "Esc"</code> key shouldn't close iLightBox.</p>
			  </div>
	  
			  <div class="alert alert-info" align="left">
				Pictures by <a href="http://marcuseriksson.net/" target="_blank"><b>MARCUS ERIKSSON</b></a>
			  </div>
		  </li>
		  <li class="span4">
			  <a id="image_recognizer" href="#" target="_blank" class="thumbnail"><img src="assets/img/thumbnails/advanced_thumbnail.jpg"></a>
			  <div class="caption">
				<h3>Auto recognition</h3>
				<p>In this case iLightBox auto recognize images from image sharing sites e.g. <code>flickr, instagram, deviantArt, ...</code> and captions and social buttons only appear when mouseover on images.</p>
			  </div>
		  </li>
		  <li class="span4">
			  <a id="cycling_arrows" href="#" target="_blank" class="thumbnail"><img src="assets/img/thumbnails/challenger_by_nikosalpha-d5mgk3u.jpg"></a>
			  <div class="caption">
				<h3>Auto cycling & Arrows</h3>
				<p>In this example iLightBox auto cycling images and the arrow buttons will be available for better control over changing images.</p>
			  </div>
	  
			  <div class="alert alert-info" align="left">
				Pictures by <a href="http://nikosalpha.com" target="_blank">nikos<b>vasilakis</b></a>
			  </div>
		  </li>
		</ul>

      </div>

      <hr class="featurette-divider" id="html_inline_content">

      <div class="featurette">
        <h2 class="featurette-heading">HTML <span class="muted">&middot; Inline Content</span></h2>
        <p class="lead"></p>
			<style>
				#demo_inline_element h1 {
					font-size: 19px;
					text-transform: uppercase;
					margin: 0;
					margin-bottom: 10px;
					line-height:100%;
					font-weight: 200;
					letter-spacing: -1px;
				}
				#demo_inline_element h1 span {
					display: block;
					font-size: 12px;
					line-height:100%;
				}
				#demo_inline_element div.span7 {
					font-size: 0px;
					line-height:0%;
				}
				#demo_inline_element p {
					font-size: smaller;
					line-height:150%;
				}
			</style>
			  <div class="well" style="margin: 20px auto;">
				<div class="row-fluid" id="demo_inline_element">
				  <div class="span7"><iframe width="100%" scrolling="auto" height="360" frameborder="0" hspace="0" src="https://player.vimeo.com/video/28379417?autoplay=0&amp;portrait=0&amp;title=0&amp;byline=0"></iframe></div>
				  <div class="span5">
					<h1>Tokyo Rising<span class="muted ">Featuring Pharrell Williams</span></h1>
					
					<p>Tokyo faces a new reality after the tragedy of 3/11. While persistent challenges still lay ahead, the city's creative class is hell-bent on making 
					sure that their hometown thrives. Innovative and resilient, they are defining the future of Tokyo on their own terms.
					<br><br>
					<a href="http://www.palladiumboots.com/video/tokyo-rising" target="_blank" class="pull-right">Full Documentary</a></p><br>
					
					<p>
					  <code><a href="http://www.palladiumboots.com/taxonomy/term/22" target="_blank">architecture & design</a></code>
					  <code><a href="http://www.palladiumboots.com/taxonomy/term/19" target="_blank">art</a></code>
					  <code><a href="http://www.palladiumboots.com/taxonomy/term/17" target="_blank">culture</a></code>
					  <code><a href="http://www.palladiumboots.com/taxonomy/term/72" target="_blank">japan</a></code> 
					  <code><a href="http://www.palladiumboots.com/taxonomy/term/16" target="_blank">music</a></code> 
					  <code><a href="http://www.palladiumboots.com/taxonomy/term/71" target="_blank">tokyo</a></code> 
					  <code><a href="http://www.palladiumboots.com/taxonomy/term/18" target="_blank">urban exploration</a></code>
					  <code><a href="http://www.palladiumboots.com/taxonomy/term/20" target="_blank">video</a></code>
					</p>
				  </div>
				</div>
			  </div>
			  
			<div class="well" style="margin: 20px auto;">
				<div class="row-fluid">
				  <div class="span6"><button type="button" id="inline_html_simple" target="#demo_inline_element" class="btn btn-large btn-block btn-inverse" data-type="inline" data-caption="Design custom layouts and pull them into iLightBox to create fancy overlays.">Open top content in iLightBox</button></div>
				  <div class="span6"><button type="button" id="inline_html_forced" class="btn btn-large btn-block btn-inverse">Open top content in iLightBox with forced size (720x360)</button></div>
				</div>
            </div>
      </div>

      <hr class="featurette-divider" id="html_ajax">

      <div class="featurette">
        <h2 class="featurette-heading">HTML <span class="muted">&middot; Ajax</span></h2>
        <p class="marketing-byline left">iLightBox can handle Ajax calls. All ajax options is customizable. The lazy loading can load ajax call and all entire elements.</p>

			<div class="well" style="margin: 20px auto;">
				<div class="row-fluid">
				  <div class="span4"><button type="button" id="ajax_simple" target="assets/ajax/stevejobs.html" data-type="ajax" class="btn btn-large btn-block btn-inverse">Open Ajax</button></div>
				  <div class="span4"><button type="button" id="ajax_forced" target="assets/ajax/stevejobs.html" data-type="ajax" data-options="width: 702, height: 300" class="btn btn-large btn-block btn-inverse">Open Ajax with forced size (702x300)</button></div>
				  <div class="span4"><button type="button" id="ajax_modal" target="assets/ajax/ajax-video.html" data-type="ajax" class="btn btn-large btn-block btn-inverse">Open Ajax in modal</button></div>
				</div>
            </div>
      </div>

      <hr class="featurette-divider" id="html_flash">

      <div class="featurette">
        <h2 class="featurette-heading">HTML <span class="muted">&middot; FLASH / SWF</span></h2>

			<div class="well" style="margin: 20px auto;">
				<div class="row-fluid">
				  <div class="span6"><a href="http://www.adobe.com/jp/events/cs3_web_edition_tour/swfs/perform.swf" id="flash_simple" data-options="width:595, height:380" class="btn btn-large btn-block btn-inverse">Open Flash in iLightBox</a></div>
				  <div class="span6"><a href="http://www.adobe.com/jp/events/cs3_web_edition_tour/swfs/perform.swf" id="flash_forced" data-options="width:720, height:460" class="btn btn-large btn-block btn-inverse">Open Flash with forced size (720x460)</a></div>
				</div>
            </div>
      </div>

      <hr class="featurette-divider" id="html_iframe">

      <div class="featurette">
        <h2 class="featurette-heading">HTML <span class="muted">&middot; IFRAME</span></h2>

			<div class="well" style="margin: 20px auto;">
				<div class="row-fluid">
				  <div class="span4"><a href="http://www.iprodev.com/" id="iframe_1" data-options="width:'95%', height:460" class="btn btn-large btn-block btn-inverse">Open iProDev (95%x460)</a></div>
				  <div class="span4"><a href="https://maps.google.com/maps?hl=en&q=Champ+de+Mars,+5+Avenue+Anatole+France,+75007+Paris,+France&panel=1&f=d&fb=1&dirflg=d&geocode=0,48.858278,2.294254&cid=0,0,10222232094831998944&hq=eiffel+tower&hnear=eiffel+tower&vpsrc=6&t=h&output=embed" id="iframe_2" data-options="width:860, height:420" data-caption="Champ de Mars, 5 Avenue Anatole France, 75007 Paris, France. <a href='http://en.wikipedia.org/wiki/Eiffel_Tower' target='_blank'>Eiffel Tower</a>" class="btn btn-large btn-block btn-inverse">Open Eiffel Tower (860x420)</a></div>
				  <div class="span4"><a href="https://maps.google.com/maps?f=d&amp;source=embed&amp;saddr=&amp;daddr=48.855927,2.298171&amp;hl=en&amp;geocode=&amp;sll=48.856005,2.298203&amp;sspn=0.004963,0.013078&amp;t=h&amp;mra=mift&amp;mrsp=1&amp;sz=17&amp;ie=UTF8&amp;ll=48.856019,2.298203&amp;spn=0.004934,0.013078&amp;layer=c&amp;cbll=48.855927,2.298171&amp;panoid=geXVBB0v9nE2d2ZSZFx4Jg&amp;cbp=12,315.41,,0,-9.17&amp;output=svembed" id="iframe_3" data-options="width:860, height:320" class="btn btn-large btn-block btn-inverse">Open Eiffel Tower Panoramio (860x320)</a></div>
				</div>
            </div>
      </div>

      <hr class="featurette-divider" id="html_advanced_examples">

      <div class="featurette">
        <h2 class="featurette-heading">HTML <span class="muted">&middot; Advanced Examples</span></h2>
		<p class="marketing-byline left">In this case iLightBox display the DOM elements that created on the fly and the lazy loading can load all entire elements.</p>

<pre class="prettyprint linenums">
&lt;div class="center"&gt;
  &lt;h2&gt;
    &lt;img src="assets/img/smile.gif"&gt;
    It's time to upgrade.
  &lt;/h2&gt;
  &lt;hr&gt;
  &lt;p&gt;iLightBox supports DOM elements created on the fly.&lt;/p&gt;
&lt;/div&gt;
</pre>

			<div class="well" style="margin: 20px auto;">
				<a href="#" id="DOM" data-options="width:860, height:420" class="btn btn-large btn-block btn-inverse">Create DOM elements 'on the fly'</a>
            </div>
      </div>

      <hr class="featurette-divider" id="video_simple">

      <div class="featurette">
        <h2 class="featurette-heading">Video <span class="muted">&middot; Simple Usage</span></h2>
		<p class="marketing-byline left">Here we use default settings for single video preview.</p>

			<ul class="thumbnails">
              <li class="span3">
                <a id="video_1" href="https://www.youtube.com/embed/uuwfgXD8qV8?autoplay=1&autohide=1&fs=1&rel=0&hd=1&wmode=opaque&enablejsapi=1" class="thumbnail" data-caption="Katy Perry - Part Of Me" data-options="width:1920, height:1080">
                  <img src="assets/img/photos/katy_perry_part_of_me.jpg" alt="iLightBox - YouTube Video" />
                </a>
				<center><code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>YouTube</b>&nbsp;&nbsp;</code></center>
              </li>
              <li class="span3">
                <a id="video_2" href="https://player.vimeo.com/video/54333970?autoplay=0" class="thumbnail" data-options="width:800, height:450">
                  <img src="assets/img/photos/376665716_1280.jpg" alt="iLightBox - Vimeo Video" />
                </a>
				<center><code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>Vimeo</b>&nbsp;&nbsp;</code></center>
              </li>
              <li class="span3">
                <a id="video_3" href="https://trailers.apple.com/movies/newline/thelaststand/laststand-tlr1_720p.mov" class="thumbnail" data-options="width:1280, height:544">
                  <img src="assets/img/photos/thumbnail_7050.jpg" alt="iLightBox - QuickTime Video" />
                </a>
				<center><code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>QuickTime</b>&nbsp;&nbsp;</code></center>
              </li>
              <li class="span3">
                <a id="video_html5" href="assets/macbookpro-colors-cc-us-20121116_848x480.ipad.mp4" class="thumbnail" data-options="width:848, height:480, html5video: { webm: 'assets/macbookpro-colors-cc-us-20121116_848x480.webmhd.webm', poster: 'assets/img/photos/macbook-pro-poster.jpg' }">
                  <img src="assets/img/photos/macbook-pro.jpg" alt="iLightBox - HTML5 Video" />
                </a>
				<center><code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>HTML5</b>&nbsp;&nbsp;</code></center>
              </li>
            </ul>
      </div>

      <hr class="featurette-divider" id="video_advanced_examples">

      <div class="featurette">
        <h2 class="featurette-heading">Video <span class="muted">&middot; Advanced Examples</span></h2>
		<p class="marketing-byline left">In this case iLightBox recognize the video from any sites that the video is available on it and just show the video. Awesome :-)</p>
			<ul class="thumbnails">
              <li class="span4">
                <a id="video_4" href="https://www.youtube.com/watch?v=_pV2zz3z0oM" class="thumbnail">
                  <img src="assets/img/photos/564645646.jpg" alt="iLightBox - Advanced YouTube Video" />
                </a>
				<code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>YouTube</b>&nbsp;&nbsp;</code>
              </li>
              <li class="span4">
                <a id="video_5" href="https://vimeo.com/55331511" class="thumbnail">
                  <img src="assets/img/photos/382910812_1280.jpg" alt="iLightBox - Advanced Vimeo Video" />
                </a>
				<code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>Vimeo</b>&nbsp;&nbsp;</code>
              </li>
              <li class="span4">
                <a id="video_6" href="http://www.hulu.com/watch/424558" class="thumbnail">
                  <img src="assets/img/photos/60159184.jpg" alt="iLightBox - Advanced Hulu Video" />
                </a>
				<code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>Hulu</b>&nbsp;&nbsp;</code>
              </li>
              <li class="span4">
                <a id="video_7" href="http://www.metacafe.com/watch/9542534/man_of_steel_trailer/" class="thumbnail">
                  <img src="assets/img/photos/man_of_steel_trailer.jpg" alt="iLightBox - Advanced MetaCafe Video" />
                </a>
				<code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>MetaCafe</b>&nbsp;&nbsp;</code>
              </li>
              <li class="span4">
                <a id="video_8" href="http://www.dailymotion.com/video/xp53r5_the-avengers-official-trailer-2_shortfilms" class="thumbnail">
                  <img src="assets/img/photos/42228545-jpeg_preview_large.jpg" alt="iLightBox - Advanced Dailymotion Video" />
                </a>
				<code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>Dailymotion</b>&nbsp;&nbsp;</code>
              </li>
              <li class="span4">
                <a id="video_9" href="http://www.gametrailers.com/videos/za4633/crysis-3-the-7-wonders---episode-1--hell-of-a-town" data-options="width: 1280, height: 720" class="thumbnail">
                  <img src="assets/img/photos/t_crysis3_7wonders_ep1trailer.jpg" alt="iLightBox - Advanced GameTrailers Video" />
                </a>
				<code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>GameTrailers</b>&nbsp;&nbsp;</code>
              </li>
            </ul>
			
			<div class="well" style="margin: 20px auto;">
				<a href="#" id="video_gallery" class="btn btn-large btn-block btn-inverse">Create "Video Gallery" from top videos in Modal</a>
            </div>
      </div>

      <hr class="featurette-divider" id="advanced_mixed">

      <div class="featurette">
        <h2 class="featurette-heading">Advanced Examples <span class="muted">&middot; Mixed & Google Maps</span></h2>

			<ul class="thumbnails">
              <li class="span6">
                <a id="mixed_contents" href="#" class="thumbnail">
                  <img src="assets/img/photos/mixed_contents.jpg" alt="iLightBox - Mixed Contents" />
                </a>
				<center><code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>Mixed Contents</b>&nbsp;&nbsp;</code></center>
              </li>
              <li class="span6">
                <a id="google_maps" href="#" class="thumbnail" alt="The White House">
                  <img src="assets/img/photos/maps.jpg" alt="iLightBox - Google Maps via API" />
                </a>
				<center><code style="display:inline-block; margin-top: 10px;">&nbsp;&nbsp;<b>Google Maps via API</b>&nbsp;&nbsp;</code></center>
              </li>
            </ul>
      </div>

      <hr class="featurette-divider" id="advanced_events">

      <div class="featurette">
        <h2 class="featurette-heading">Advanced Examples <span class="muted">&middot; Events</span></h2>

			<div class="well" style="margin: 20px auto;">
				<button type="button" id='events_gallery' class="btn btn-large btn-block btn-inverse">Click me</button>
            </div>
		<pre style="height: 300px; overflow: auto;" id="pre_events"></pre>
      </div>

      <hr class="featurette-divider" id="galley_with_slideshow">

      <div class="featurette">
        <h2 class="featurette-heading">Advanced Examples <span class="muted">&middot; Image Gallery with Slideshow</span></h2>
        <p class="marketing-byline left">Here we use some tricks in image gallery preview to give slideshow ability.</p>
	  
		  <ul class="thumbnails" id="image_gallery_with_slideshow">
			<li class="span5">
			  <a href="assets/img/photos/challenger_by_nikosalpha-d5mgk3u.jpg" data-options="thumbnail: 'assets/img/thumbnails/challenger_by_nikosalpha-d5mgk3u.jpg'" class="thumbnail">
				<img src="assets/img/thumbnails/challenger_by_nikosalpha-d5mgk3u.jpg" alt="iLightBox - Image Gallery with Slideshow" />
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/catharine_by_nikosalpha-d5drzr1.jpg" data-options="thumbnail: 'assets/img/thumbnails/catharine_by_nikosalpha-d5drzr1.jpg'" class="thumbnail">
				<img src="assets/img/thumbnails/catharine_by_nikosalpha-d5drzr1.jpg" alt="iLightBox - Image Gallery with Slideshow" />
			  </a>
			</li>
			<li class="span3">
			  <a href="assets/img/photos/underexposed_by_nikosalpha.jpg" data-options="thumbnail: 'assets/img/thumbnails/underexposed_by_nikosalpha.jpg'" class="thumbnail">
				<img src="assets/img/thumbnails/underexposed_by_nikosalpha.jpg" alt="iLightBox - Image Gallery with Slideshow" />
			  </a>
			</li>
			<li class="span2 pull-right">
			  <a href="assets/img/photos/auric_by_nikosalpha-d4ymtor.jpg" data-options="thumbnail: 'assets/img/thumbnails/auric_by_nikosalpha-d4ymtor.jpg'" class="thumbnail">
				<img src="assets/img/thumbnails/auric_by_nikosalpha-d4ymtor.jpg" alt="iLightBox - Image Gallery with Slideshow" />
			  </a>
			</li>
			<li class="span3">
			  <a href="assets/img/photos/piece_by_nikosalpha-d3bc2cc.jpg" data-options="thumbnail: 'assets/img/thumbnails/piece_by_nikosalpha-d3bc2cc.jpg'" class="thumbnail">
				<img src="assets/img/thumbnails/piece_by_nikosalpha-d3bc2cc.jpg" alt="iLightBox - Image Gallery with Slideshow" />
			  </a>
			</li>
			<li class="span2">
			  <a href="assets/img/photos/blonde_by_nikosalpha-d5hk45h.jpg" data-options="thumbnail: 'assets/img/thumbnails/blonde_by_nikosalpha-d5hk45h.jpg'" class="thumbnail">
				<img src="assets/img/thumbnails/blonde_by_nikosalpha-d5hk45h.jpg" alt="iLightBox - Image Gallery with Slideshow" />
			  </a>
			</li>
		  </ul>
      </div>
	  
	  <div class="alert alert-info" align="left">
	    Pictures by <a href="http://nikosalpha.com" target="_blank">nikos<b>vasilakis</b></a>
	  </div>

      <hr class="featurette-divider" id="advanced_dialogues">

      <div class="featurette">
        <h2 class="featurette-heading">Advanced Examples <span class="muted">&middot; Alert/Confirm/Prompt</span></h2>
		<p class="marketing-byline left">You can replace the basic functionality provided by the standard javascript alert(), confirm(), and prompt() functions.</p>

			<div class="well" style="margin: 20px auto;">
				<div class="row-fluid">
				  <div class="span4"><button type="button" id='show_alert' class="btn btn-large btn-block btn-inverse">Click me for an alert!</button></div>
				  <div class="span4"><button type="button" id='show_prompt' class="btn btn-large btn-block btn-inverse">Click me for a prompt dialogue</button></div>
				  <div class="span4"><button type="button" id='show_confirm' class="btn btn-large btn-block btn-inverse">Click me for a confirm dialogue</button></div>
				</div>
            </div>

      </div>

      <!-- /END THE FEATURETTES -->


      <hr class="featurette-divider">

      <!-- FOOTER -->
      <footer>
        <p class="pull-right"><a href="#home">Back to top</a></p>
        <p align="left">&copy; 2014 <a href="http://iprodev.com/">Hemn Chawroka</a> - <a href="https://plus.google.com/108136157352034274807?rel=author" rel="author">Google+</a>, <a href="https://facebook.com/iprofessionaldev">Facebook</a>, <a href="https://twitter.com/chawroka">Twitter</a>.</p>
      </footer>

    </div><!-- /.container -->



    <!-- Le javascript
    ================================================== -->
    <!-- Placed at the end of the document so the pages load faster -->
	<script type="text/javascript" src="assets/js/css_browser_selector.min.js"></script>
	<!-- <script type="text/javascript" src="https://platform.twitter.com/widgets.js"></script> -->
    <script src="assets/js/jquery.js"></script>
    <script src="assets/js/jquery.requestAnimationFrame.js"></script>
	<script type="text/javascript" async defer src="http://iprodev.com/projects.php?p=ilightbox"></script>
	<script src="assets/js/google-code-prettify/prettify.js"></script>
    <script src="src/js/jquery.mousewheel.js"></script>
    <script src="src/js/ilightbox.js"></script>
    <script src="assets/js/bootstrap-dropdown.js"></script>
    <script src="assets/js/bootstrap-scrollspy.js"></script>
    <script src="assets/js/bootstrap-tooltip.js"></script>
    <script src="assets/js/bootstrap-popover.js"></script>
    <script src="assets/js/bootstrap-collapse.js"></script>
    <script>

		eval(function(d,e,a,c,b,f){b=function(a){return(a<e?"":b(parseInt(a/e)))+(35<(a%=e)?String.fromCharCode(a+29):a.toString(36))};if(!"".replace(/^/,String)){for(;a--;)f[b(a)]=c[a]||b(a);c=[function(a){return f[a]}];b=function(){return"\\w+"};a=1}for(;a--;)c[a]&&(d=d.replace(new RegExp("\\b"+b(a)+"\\b","g"),c[a]));return d}("$(68).71(k(){6n.4k&&4k();$('#6k').o();$('#6q').o();$('#6J').o();$('#76').o();$('4j#6j 2d a').o();$('#6p').o({1N:'2U',D:'7H',1x:F,Y:{1f:0.7},15:{1e:r}});$('#5K').z(k(){$.o([{j:\"9/h/q/w/4g.i\",u:\"y\",l:{m:\"9/h/n/w/4g.i\",D:\"1k\"}},{j:\"9/h/q/w/4f.i\",u:\"y\",l:{m:\"9/h/n/w/4f.i\"}},{j:\"9/h/q/w/4e.i\",l:{m:\"9/h/n/w/4e.i\",D:\"1k\"},u:\"y\"},{j:\"9/h/q/w/4d.i\",l:{m:\"9/h/n/w/4d.i\"},u:\"y\",J:\"79 7a 7b 7h 7i 1q a 7K-4t 4F 57 5E.\"},{j:\"9/h/q/w/4c.i\",l:{m:\"9/h/n/w/4c.i\"},u:\"y\"},{j:\"9/h/q/w/4b.i\",l:{m:\"9/h/n/w/4b.i\",D:\"1k\"},u:\"y\"},{j:\"9/h/q/w/48.i\",l:{m:\"9/h/n/w/48.i\"},u:\"y\"},{j:\"9/h/q/w/44.i\",l:{m:\"9/h/n/w/44.i\",1h:6o},u:\"y\",J:\"1g 16 6H 1Y 6K:6N\"},{j:\"9/h/q/w/43.i\",l:{m:\"9/h/n/w/43.i\"},u:\"y\"},{j:\"9/h/q/w/41.i\",l:{m:\"9/h/n/w/41.i\"},u:\"y\"},{j:\"9/h/q/w/3X.i\",l:{m:\"9/h/n/w/3X.i\",D:\"1k\"},u:\"y\"},{j:\"9/h/q/w/3U.i\",l:{m:\"9/h/n/w/3U.i\"},u:\"y\"},{j:\"9/h/q/w/3T.i\",l:{m:\"9/h/n/w/3T.i\",D:\"1k\"},u:\"y\"},{j:\"9/h/q/w/3M.i\",l:{m:\"9/h/n/w/3M.i\"},u:\"y\"},{j:\"9/h/q/w/3L.i\",l:{m:\"9/h/n/w/3L.i\"},u:\"y\"},{j:\"9/h/q/w/3K.i\",l:{m:\"9/h/n/w/3K.i\"},u:\"y\"}],{7L:3,D:'4w',1a:'19',5m:1.3,Y:{1f:.4},1i:{3u:75,1u:.55,3r:75,1z:.55},n:{3q:.6,3l:1}});Z r});$('#6O').z(k(){$.o([{j:\"9/h/q/B-A-C-22.i\",l:{m:\"9/h/n/B-A-C-22.i\"},u:\"y\",J:\"3k 3i. 2v'3g 3c 39 30.\"},{j:\"9/h/q/B-A-C-23.i\",l:{m:\"9/h/n/B-A-C-23.i\"},u:\"y\",J:\"2Y 2X, 2V's 4i 4h. 2o 1b 3Z.\"},{j:\"9/h/q/B-A-C-1U.i\",l:{m:\"9/h/n/B-A-C-1U.i\"},u:\"y\",J:\"3Y 3G, L 16. 3z.\"},{j:\"9/h/q/B-A-C-20.i\",l:{m:\"9/h/n/B-A-C-20.i\"},u:\"y\"},{j:\"9/h/q/B-A-C-21.i\",l:{m:\"9/h/n/B-A-C-21.i\"},u:\"y\"},{j:\"9/h/q/B-A-C-3m.i\",l:{m:\"9/h/n/B-A-C-3f.i\"},u:\"y\"}],{D:'1c-2j',1a:'19',Y:{1f:.7,1K:r},2i:{2h:r},1i:{1u:.55,1z:.55}});Z r});$('#7J').z(k(){G a={1G:F,1R:F,2g:{4x:\"1p://4H.4J.x/58?5i={j}\",1V:\"5y 1q 5z+\"},2f:{1h:5I,1E:5L}};$.o([{j:\"1p://1o.x/p/1w/\",J:\"1g 16 2e 2A L <a 1v='E://1o.x/p/1w/' 1j='2u'>j</a> 1q 1o.\",l:{27:$.37(F,{},a,{1G:{j:\"E://1o.x/p/1w/\"},1R:{j:\"E://1o.x/p/1w/\"},2g:{j:\"E://1o.x/p/1w/\"},2f:{j:\"E://1o.x/p/1w/\"}})}},{j:\"1p://Q.1O.x/q/2a-2b/28/\",J:\"1g 16 2e 2A L <a 1v='1p://Q.1O.x/q/2a-2b/28/' 1j='2u'>j</a> 1q 1O.\",l:{27:{1G:{j:\"1p://Q.1O.x/q/2a-2b/28/\"},1R:{j:\"1p://Q.1O.x/q/2a-2b/28/\"}}}},{j:\"E://1A-1y.1r.x/1D/1B-1s\",J:\"1g 16 2e 2A L <a 1v='E://1A-1y.1r.x/1D/1B-1s' 1j='2u'>j</a> 1q 4o.\",l:{27:$.37(F,{},a,{1G:{j:\"E://1A-1y.1r.x/1D/1B-1s\"},1R:{j:\"E://1A-1y.1r.x/1D/1B-1s\"},2g:{j:\"E://1A-1y.1r.x/1D/1B-1s\"},2f:{j:\"E://1A-1y.1r.x/1D/1B-1s\"}})}}],{1d:F,D:'3h',1a:'19',3o:r,J:{3p:r},27:{3p:r,4G:a},1i:{3H:0.6,40:0.6,1u:0.6,1z:0.6},n:{3q:.6,3l:1}});Z r});$('#4U').z(k(){$.o([{j:\"9/h/q/47-32.i\",l:{m:\"9/h/n/47-32.i\"},J:\"34 35 5w, 1H a N 5A 5C. 35 2k 5H 1H 17 5J 2l 2m 5W 5X's 63. 1g 2U 2k a 64 1b 65 67, 3s q 6a 6b 1H 17 6f. 2o 6i 3w 2m 3y 6m <a 1v='E://1Z.x/3A'>1Z.x/3A</a>.\"},{j:\"9/h/q/3B-3C.i\",l:{m:\"9/h/n/3B-3C.i\"},J:\"34 6r. 6s 2k a 6u 6v 6w 6x 6y 1H 17 6A. 6C 3y 3w <a 1v='1p://Q.1G.x/6F'>6G</a>\"},{j:\"9/h/q/3D.i\",l:{m:\"9/h/n/3D.i\"}},{j:\"9/h/q/3E-3F.i\",l:{m:\"9/h/n/3E-3F.i\"},J:\"6L 3s 2U 1X 16 1X 2n 6P 6S, 17 6T. I 6V 1Y 6X a 6Y 6Z 1H 2n 70 7N 1b 72. 73 74 3I 77 78: <a 1v='E://1Z.x/3O'>1Z.x/3O</a>.\"},{j:\"9/h/q/3P-3Q.i\",l:{m:\"9/h/n/3P-3Q.i\"},J:\"7c 7d 7e 1X 2n 7f\"},{j:\"9/h/q/3R-3W.i\",l:{m:\"9/h/n/3R-3W.i\"},J:\"7m 7C 2m 17 7D 7E 7F! (:\"}],{D:'3h',1a:'19',3o:0,15:{m:0,7G:1,1n:1}});Z r});$('#7I 2d a').o({D:'1c-1I',1a:'19',1Q:'2p',7M:F,4m:\"4n\",Y:{1f:1,1K:r},15:{m:r},1i:{3u:-45,3r:-45}});$('#4p').o({1N:'1j',D:'1c-1I'});$('#4q').z(k(){$.o([{j:'#4r',u:'4s',l:{1h:1P,1E:4u}}],{D:'1c-1I'});Z r});$('#4v').o({1N:'1j',Y:{1f:.6},D:'29',18:1});$('#4y').o({1N:'1j',Y:{1f:.6},D:'29',18:1});$('#4z').o({1N:'1j',1x:F,Y:{1f:.6,1K:r},15:{1e:r},2i:{2h:r},D:'29',18:1});$('#4A').o({1x:F,15:{1e:r},D:'1k'});$('#4B').o({1x:F,15:{1e:r},18:1});$('#4C').o();$('#4D').o({18:1});$('#4E').o({18:1});$('#2W').z(k(){G a=$('<25 O=\"4I\"><2Z><h 4K=\"9/h/4L.4M\">2v\\'s 4N 1Y 4O.</2Z><4P><p>o 4Q 2W 4R 4S 1q 17 4T.</p></25>');$.o([{j:a,u:'P'}],{1x:F,15:{1e:r},D:'29',18:1});Z r});$('#4V').o();$('#4W').o();$('#4X').o();$('#4Y').o();$('#4Z').o({1d:F});$('#50').o({1d:F});$('#51').o({1d:F});$('#52').o({1d:F});$('#53').o({1d:F});$('#54').o({1d:F});$('#56').z(k(){$.o([{j:\"E://Q.31.x/2q?v=59\"},{j:\"E://5a.x/5b\"},{j:\"E://Q.5c.x/2q/5d\"},{j:\"E://Q.5e.x/2q/5f/5g/\"},{j:\"E://Q.5h.x/33/5j-5k-5l-2r-5n\"},{j:\"E://Q.5o.x/5p/5q/5r-3-17-7-5s---5t-1--5u-1X-a-5v\",l:{1h:2s,1E:1P}}],{1d:F,D:'1k',Y:{1K:r},2i:{2h:r},1i:{1u:.55,1z:.55}});Z r});$('#5x').z(k(){$.o([{j:\"E://36.x/2t/9/38.5B\",l:{m:\"9/h/n/H/2r.i\",5D:{3a:\"E://36.x/2t/9/38.3a\",5F:\"9/h/H/2r.i\"},1h:2s,1E:5G}},{j:\"9/h/H/1.i\",J:'1g 16 2p 17 2l 3b 1J 3d 1e.',l:{m:\"9/h/n/H/1.i\",1Q:'2p'}},{j:\"9/h/H/2.i\",J:'1g 16 3e 1Y 17 2l 3b 1J 3d 1e.',l:{m:\"9/h/n/H/2.i\",1Q:'3e'}},{j:\"E://Q.31.x/5M/5N?5O=1&5P=0&5Q=0&5R=0&5S=0\",l:{m:\"9/h/n/H/5T.i\",1Q:'5U',5V:\"33\",1h:2s,1E:1P}},{j:\"9/h/H/3.i\",l:{m:\"9/h/n/H/3.i\"}},{j:\"9/h/H/4.i\",l:{m:\"9/h/n/H/4.i\"}},{j:\"9/h/H/5.i\",l:{m:\"9/h/n/H/5.i\"}},{j:\"9/h/H/6.i\",l:{m:\"9/h/n/H/6.i\"}},{j:\"9/h/H/7.i\",l:{m:\"9/h/n/H/7.i\"}},{j:\"9/h/H/8.i\",l:{m:\"9/h/n/H/8.i\"}}],{1a:'19',D:'1c-2j',1i:{1u:0,1z:0}});Z r});$('#5Y').z(k(){$.o([{j:\"9/5Z/60.P\",l:{1h:1P,1E:61},u:'62'}],{18:1,D:'1c-2j'});Z r});G g=$('<a O=\"K K-1F 66\">3j</a>'),1n=r,24=69,1m=2w;$('4j#6c 2d a').o({D:'1c-1I',1a:'19',15:{m:r},1i:{6d:6e,3H:0.6,40:0.6,1u:0.6,1z:0.6},3n:{6g:6h},2x:{2y:k(){G t=L;$('6l').M(g);g.1q('z',k(){V(1n){2z()}3t{V(t.1L.3v==t.1L.2c-1)t.6t(0);3x();1m=2B(k(){t.2C('2D')},24)}})},2E:k(){g.6z('z').26().6B()},2F:k(){g.6D(L.l.3n.6E)},2G:k(){2H(1m)},2I:k(a){G t=L;V(1n){V(a.6I==L.1L.2c-1){2z()}3t 1m=2B(k(){t.2C('2D')},24)}},2J:k(){g.26();2H(1m)},2K:k(){G t=L;g.3J();V(1n){V(t.1L.3v!=t.1L.2c-1)1m=2B(k(){t.2C('2D')},24)}}}});k 3x(){1n=F;g.1V('6M')}k 2z(){1n=r;2H(1m);g.1V('3j')}k 1t(b,c){b=$('<25 />',{'O':'1t 6Q'}).M(b);$.o([{j:b,u:\"P\",6R:(c)?c:2w}],{D:'1c-1I 2t-1t',18:1,1x:F,3J:{3N:r},26:{3N:r},Y:{1K:r},15:{1e:r},2x:{2L:k(a){$('.K',a.2M).z(k(){$('.K',a.2M).6U('z');a.26()})},2N:k(a){$('.K-1F',a.2M).6W()}}})}k 2O(a,b){G a=$('<p />',{P:a,'O':'3S'}),1C=$('<1M />',{P:\"3V\",'O':'K K-1F',2P:k(e){V(e.2Q==13)$(L).2R('z')}});1t(a.1l(1C),b)}k 42(a,b,c,d){G f=$('<p />',{P:a,'O':'3S'}),1W=$('<1W />',{'u':'1V',46:c}),2S=$('<25 />',{'O':'2S'}),1C=$('<1M />',{P:\"3V\",'O':'K K-1F',z:k(){d(1W.46())},2P:k(e){V(e.2Q==13)$(L).2R('z')}}),1T=$('<1M />',{P:\"7g\",'O':'K',z:k(){d(2w)}});1t(f.1l(1W).1l(2S).1l(1C).1l(1T),b)}k 49(a,b,c){G d=$('<p />',{P:a}),1C=$('<1M />',{P:\"4a\",'O':'K K-1F',z:k(){c(F)},2P:k(e){V(e.2Q==13)$(L).2R('z')}}),1T=$('<1M />',{P:\"7j\",'O':'K',z:k(){c(r)}});1t(d.1l(1T).1l(1C),b,k(){c(r)})}$('#7k').z(k(){2O('7l 2T() 7n 3I 7o.','2O!')});$('#7p').z(k(){42('7q 7r 1J 7s o?','7t!','7u!',k(a){2T(a)})});$('#7v').z(k(){49('7w 4a V 1J 7x o','7y 1J 7z?',k(a){2T(a)})});$('#7A').z(k(){G c=$('#7B');$.o([{j:\"9/h/q/B-A-C-22.i\",l:{m:\"9/h/n/B-A-C-22.i\"},u:\"y\",J:\"3k 3i. 2v'3g 3c 39 30.\"},{j:\"9/h/q/B-A-C-23.i\",l:{m:\"9/h/n/B-A-C-23.i\"},u:\"y\",J:\"2Y 2X, 2V's 4i 4h. 2o 1b 3Z.\"},{j:\"9/h/q/B-A-C-1U.i\",l:{m:\"9/h/n/B-A-C-1U.i\"},u:\"y\",J:\"3Y 3G, L 16. 3z.\"},{j:\"9/h/q/B-A-C-20.i\",l:{m:\"9/h/n/B-A-C-20.i\"},u:\"y\"},{j:\"9/h/q/B-A-C-21.i\",l:{m:\"9/h/n/B-A-C-21.i\"},u:\"y\"},{j:\"9/h/q/B-A-C-3m.i\",l:{m:\"9/h/n/B-A-C-3f.i\"},u:\"y\"}],{1a:'19',Y:{1f:.7},2x:{2y:k(){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"2y\" 10<12 />').T(11)},2L:k(a,b){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"2L\" 10 1b 1S '+b+'.<12 />').T(11)},2N:k(a,b){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"2N\" 10 1b 1S '+b+'.<12 />').T(11)},2E:k(){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"2E\" 10.<12 /><p>-----------------------------------</p>').T(11)},2J:k(){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"2J\" 10.<12 />').T(11)},2K:k(){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"2K\" 10.<12 />').T(11)},4l:k(a,b){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"4l\" 10 1b 1S '+b+'.<12 />').T(11)},2F:k(a,b){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"2F\" 10 1b 1S '+b+'.<12 />').T(11)},2G:k(){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"2G\" 10.<12 />').T(11)},2I:k(){G d=N W();c.M(d.U()+':'+d.X()+':'+d.S()+'.'+d.14()+' - R \"2I\" 10.<12 />').T(11)}}});Z r})});",
62,484,"         assets        img jpg URL function options thumbnail thumbnails iLightBox  photos false   type  caesarlima com image click test MS day skin http true var sherlock_holmes  caption btn this append new class html www Event getSeconds scrollTop getHours if Date getMinutes overlay return fired 10000 br  getMilliseconds controls one the minScale horizontal path for metro smartRecognition fullscreen opacity This width styles target dark add changeTimeout slideshow instagram https on deviantart 473365198 dialogue nextOpacity href 37O9GLqlXJ innerToolbar wout prevOpacity oer Amber ok art height primary facebook in white you blur vars button attr flickr 720 fullViewPort twitter item cancel 27845 text input of to nikosalpha 27780 278081 27898 27771 pauseTime div hide social 8584616829 parade bruce hood total li recognized digg googleplus esc keyboard black is screen with my See fill watch trailer 1280 ilightbox _blank It null callback onOpen stopSlideshow from setTimeout moveTo next onHide onAfterLoad onBeforeChange clearTimeout onAfterChange onEnterFullScreen onExitFullScreen onRender currentElement onShow Alert keyup keyCode trigger clear alert photo it DOM yeah Oh h2 mind youtube d5mgk3u video Presenting Tonia iprodev extend MV5BMTM1NTMyMDE4OV5BMTFeQW1wNF5BbWU3MDEyNTI0OTU your webm when blow enter fit 27749_2 ll smooth Caption Slideshow First activeOpacity 27749 effects fullAlone start normalOpacity prevOffsetX more else nextOffsetX current work startSlideshow her Checkmate tonia catharine_by_nikosalpha d5drzr1 underexposed_by_nikosalpha auric_by_nikosalpha d4ymtor lastly nextScale are show 631_1steampunksplash4 603_1beauty4 604_1beauty3 effect lips piece_by_nikosalpha d3bc2cc blonde_by_nikosalpha dialogue_message 592_1r388_yb_banner 585_1DawnO_056casei OK d5hk45h 601_1beauty1 And yourself prevScale 583_1testsnowwhite Prompt 625_1beautykaetsite 350_1r3__2007__caesarlima_seb8mag3  val challenger_by_nikosalpha 319_1caenewpg2 Confirm Yes 618_1marilia_splash 481_1cae_shadow 599_1nero_splash_1 397_1natascha_wind 452_1npblonde 489_1zokvamp_beauty good that ul prettyPrint onBeforeLoad linkId music deviantArt inline_html_simple inline_html_forced demo_inline_element inline element 360 ajax_simple light source ajax_forced ajax_modal flash_simple flash_forced iframe_1 iframe_2 iframe_3 or buttons plus center google src smile gif time upgrade hr supports elements created fly cycling_arrows video_1 video_2 video_3 video_html5 video_4 video_5 video_6 video_7 video_8 video_9  video_gallery group share _pV2zz3z0oM vimeo 55331511 hulu 424558 metacafe 9542534 man_of_steel_trailer dailymotion url xp53r5_the avengers official maxScale 2_shortfilms gametrailers videos za4633 crysis wonders episode hell town Sotiropoulou mixed_contents Share Google 2012 mp4 shooting html5video basis poster 544 currently 800 big inline_gallery 480 embed lNxhpNpnAkk autohide border egm showinfo showsearch mqdefault stretch icon James Bond google_maps ajax maps 420 iframe Skyfall sample magazine slideshow_button use document 5000 will follow image_gallery_with_slideshow pageOffsetY 100 future switchSpeed 700 previous image_gallery singleimage_1 body at window 300 forceresize singleimage_2 Catharine She goTo young multitalented beautiful voice singing off UK remove Follow fadeIn loadedFadeSpeed CatharineAmorosoMusic here resized currentItem singleimage_3 wiidth One Stop 300px open_in_modal favorite clearfix title subjects Lips unbind decided focus create unique tag website ready them Here they  singleimage_4 so far Skins can even The sweetest piece life Cancel be modified No show_alert Custom New functions cool show_prompt How would describe Attention Awesome show_confirm Click love Do agree events_gallery pre_events session singer Valerie Kalenti arrows mac deeplinking_looping_gallery image_recognizer per startFrom infinite only".split(" "),
0,{}));

		$(window).load(function(){
			$('[data-spy="scroll"]').each(function () {
				var t = $(this);
				t.scrollspy();
				$(window).resize(function(){
					t.scrollspy('refresh');
					$(this).trigger('scroll');
				});
			});
		});

		var _gaq = _gaq || [];
		_gaq.push(['_setAccount', 'UA-37317936-3']);
		_gaq.push(['_setDomainName', 'ilightbox.net']);
		_gaq.push(['_trackPageview']);

		(function() {
			var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
			ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
			var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
		})();
/*
		window.___gcfg = {lang: "en"};
		(function() {
			var po = document.createElement("script"); po.type = "text/javascript"; po.async = true;
			po.src = "https://apis.google.com/js/plusone.js";
			var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(po, s);
		})();*/
    </script>
<script type="text/javascript" src="//s7.addthis.com/js/300/addthis_widget.js#pubid=ra-535426611b3c803d"></script>
  </body>
</html>

    body {
      padding-top: 0;
      padding-bottom: 40px;
      color: #5a5a5a;
    }
	
	.jumbotron {
	  background: #793e3a; /* Old browsers */
	  background: -moz-linear-gradient(45deg,  #793e3a 0%, #170f3e 100%); /* FF3.6+ */
	  background: -webkit-gradient(linear, left bottom, right top, color-stop(0%,#793e3a), color-stop(100%,#170f3e)); /* Chrome,Safari4+ */
	  background: -webkit-linear-gradient(45deg,  #793e3a 0%,#170f3e 100%); /* Chrome10+,Safari5.1+ */
	  background: -o-linear-gradient(45deg,  #793e3a 0%,#170f3e 100%); /* Opera 11.10+ */
	  background: -ms-linear-gradient(45deg,  #793e3a 0%,#170f3e 100%); /* IE10+ */
	  background: linear-gradient(45deg,  #793e3a 0%,#170f3e 100%); /* W3C */
	  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#793e3a', endColorstr='#170f3e',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
	}
	
	.masthead .btn {
	  padding: 11px 19px;
	}
	
	.masthead .btn [class^="icon-"] {
	  margin-top: 7px;
	}



    /* CUSTOMIZE THE NAVBAR
    -------------------------------------------------- */

    /* Special class on .container surrounding .navbar, used for positioning it into place. */
    .navbar-wrapper {
      position: fixed;
      z-index: 1035;
	  top: 0;
	  left: 0;
	  right: 0;
    }

    .navbar  {
      margin-bottom: 0;
    }

    /* Remove border and change up box shadow for more contrast */
    .navbar .navbar-inner {
      border: 0;
      -webkit-box-shadow: 0 2px 10px rgba(0,0,0,.5);
         -moz-box-shadow: 0 2px 10px rgba(0,0,0,.5);
              box-shadow: 0 2px 10px rgba(0,0,0,.5);
			  
      -webkit-border-radius: 0 0 4px 4px;
         -moz-border-radius: 0 0 4px 4px;
              border-radius: 0 0 4px 4px;
    }

    /* Downsize the brand/project name a bit */
    .navbar .brand {
      padding: 14px 20px 16px; /* Increase vertical padding to match navbar links */
      font-size: 16px;
      font-weight: bold;
      text-shadow: 0 -1px 0 rgba(0,0,0,.5);
    }

    /* Navbar links: increase padding for taller navbar */
    .navbar .nav > li > a {
      padding: 15px 20px;
    }

    /* Offset the responsive button for proper vertical alignment */
    .navbar .btn-navbar {
      margin-top: 10px;
    }



    /* CUSTOMIZE THE NAVBAR
    -------------------------------------------------- */
	.masthead {
		padding-top: 110px;
		padding-bottom: 60px;
	}



    /* MARKETING CONTENT
    -------------------------------------------------- */

    /* Center align the text within the three columns below the carousel */
    .marketing .span4, .marketing .span4 p, .marketing .marketing-byline {
      text-align: center;
    }
	.marketing .marketing-byline.left {
	  text-align: left;
      margin-top: -50px;
    }
    .marketing h2 {
      font-weight: normal;
    }
	.marketing p, .hero-unit {
	  text-align: left;
	}


    /* Featurettes
    ------------------------- */

    .featurette-divider {
      margin: 80px 0; /* Space out the Bootstrap <hr> more */
    }
    .featurette {
      overflow: hidden; /* Vertically center images part 2: clear their floats. */
	  text-align: left;
    }
    .featurette-image {
      margin-top: -120px; /* Vertically center images part 3: negative margin up the image the same amount of the padding to center it. */
    }

    /* Give some space on the sides of the floated elements so text doesn't run right into it. */
    .featurette-image.pull-left {
      margin-right: 40px;
    }
    .featurette-image.pull-right {
      margin-left: 40px;
    }

    /* Thin out the marketing headings */
    .featurette-heading {
      font-size: 50px;
      font-weight: 300;
      line-height: 1;
      letter-spacing: -1px;
	  margin-bottom: 60px !important;
    }
	
	.thumbnail > img {
	  margin: 0 auto;
	}
	
	h3 sup {
		font-size: 13px;
		font-weight: normal;
	}



    /* RESPONSIVE CSS
    -------------------------------------------------- */

    @media (max-width: 979px) {

		.navbar-wrapper {
          position: relative;
		  margin-top: 20px;
		}

      .container.navbar-wrapper {
        margin-bottom: 0;
        width: auto;
      }
      .navbar-inner {
        border-radius: 0;
        margin: -20px 0;
      }

      .featurette {
        height: auto;
        padding: 0;
      }
      .featurette-image.pull-left,
      .featurette-image.pull-right {
        display: block;
        float: none;
        max-width: 40%;
        margin: 0 auto 20px;
      }
    }


    @media (max-width: 767px) {

      .navbar-inner {
        margin: -20px;
      }

      .marketing .span4 + .span4 {
        margin-top: 40px;
      }

      .featurette-heading {
        font-size: 30px;
      }
      .featurette .lead {
        font-size: 18px;
        line-height: 1.5;
      }

    }
	
	div.center {
		width: 450px;
		height: 260px;
		text-align: center;
	}
	
	div.center h2 {
		display: block;
		margin: 0;
	}
	
	div.center h2 img {
		display: block;
		margin: 0 auto;
		padding: 20px;
	}
	
	.ilightbox-dialogue .ilightbox-container, .ilightbox-dialogue .ilightbox-inner-toolbar {
		width: auto !important;
		height: auto !important;
	}
	
	.dialogue {
		min-width: 200px;
		max-width: 600px;
		max-height: 400px;
		padding: 20px;
		padding-top: 20px;
	}
	
	.dialogue .btn {
		float: right;
		padding-right: 20px;
		padding-left: 20px;
		margin-left: 10px;
		margin-top: 10px;
	}
	
	/* Slidshow button styles */
	a.slideshow_button {
		display: none;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 35px;
		padding: 14px 30px;
		margin: auto;
		cursor: pointer;
		font-size: 22px;
		z-index: 100001;
		width: 140px;
	}
	
	html.win .ilightbox-noscroll, html.win .ilightbox-noscroll .navbar-wrapper {
		padding-right: 17px;
	}
	
	html.linux .ilightbox-noscroll, html.linux .ilightbox-noscroll .navbar-wrapper {
		padding-right: 13px;
	}

	.jumbotron {
	  background: #47263C url(assets/img/bs-docs-masthead-pattern.png) repeat center center;
	  filter: none;
	}
	
    .navbar-wrapper {
      width: 100%;
    }
/**
 * jQuery iLightBox - Revolutionary Lightbox Plugin
 * http://www.ilightbox.net/
 *
 * @version: 2.2.0 - September 23, 2014
 *
 * @author: Hemn Chawroka
 *          http://www.iprodev.com/
 *
 */
(function($, window, undefined) {

	var extensions = {
			flash: ['swf'],
			image: ['bmp', 'gif', 'jpeg', 'jpg', 'png', 'tiff', 'tif', 'jfif', 'jpe'],
			iframe: ['asp', 'aspx', 'cgi', 'cfm', 'htm', 'html', 'jsp', 'php', 'pl', 'php3', 'php4', 'php5', 'phtml', 'rb', 'rhtml', 'shtml', 'txt'],
			video: ['avi', 'mov', 'mpg', 'mpeg', 'movie', 'mp4', 'webm', 'ogv', 'ogg', '3gp', 'm4v']
		},

		// Global DOM elements
		$win = $(window),
		$doc = $(document),

		// Support indicators
		browser,
		transform,
		gpuAcceleration,
		fullScreenApi = '',
		supportTouch = !!('ontouchstart' in window) && (/Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(navigator.userAgent)),

		// Events
		clickEvent = supportTouch ? "itap.iLightBox" : "click.iLightBox",
		touchStartEvent = supportTouch ? "touchstart.iLightBox" : "mousedown.iLightBox",
		touchStopEvent = supportTouch ? "touchend.iLightBox" : "mouseup.iLightBox",
		touchMoveEvent = supportTouch ? "touchmove.iLightBox" : "mousemove.iLightBox",

		// Math shorthands
		abs = Math.abs,
		sqrt = Math.sqrt,
		round = Math.round,
		max = Math.max,
		min = Math.min,
		floor = Math.floor,
		random = Math.random,

		pluginspages = {
			quicktime: 'https://www.apple.com/quicktime/download',
			flash: 'http://www.adobe.com/go/getflash'
		},

		iLightBox = function(el, options, items, instant) {
			var iL = this;

			iL.options = options,
				iL.selector = el.selector || el,
				iL.context = el.context,
				iL.instant = instant;

			if (items.length < 1) { iL.attachItems(); }
			else { iL.items = items; }

			iL.vars = {
				total: iL.items.length,
				start: 0,
				current: null,
				next: null,
				prev: null,
				BODY: $('body'),
				loadRequests: 0,
				overlay: $('<div class="ilightbox-overlay"></div>'),
				loader: $('<div class="ilightbox-loader"><div></div></div>'),
				toolbar: $('<div class="ilightbox-toolbar"></div>'),
				innerToolbar: $('<div class="ilightbox-inner-toolbar"></div>'),
				title: $('<div class="ilightbox-title"></div>'),
				closeButton: $('<a class="ilightbox-close" title="' + iL.options.text.close + '"></a>'),
				fullScreenButton: $('<a class="ilightbox-fullscreen" title="' + iL.options.text.enterFullscreen + '"></a>'),
				innerPlayButton: $('<a class="ilightbox-play" title="' + iL.options.text.slideShow + '"></a>'),
				innerNextButton: $('<a class="ilightbox-next-button" title="' + iL.options.text.next + '"></a>'),
				innerPrevButton: $('<a class="ilightbox-prev-button" title="' + iL.options.text.previous + '"></a>'),
				holder: $('<div class="ilightbox-holder' + (supportTouch ? ' supportTouch' : '') + '" ondragstart="return false;"><div class="ilightbox-container"></div></div>'),
				nextPhoto: $('<div class="ilightbox-holder' + (supportTouch ? ' supportTouch' : '') + ' ilightbox-next" ondragstart="return false;"><div class="ilightbox-container"></div></div>'),
				prevPhoto: $('<div class="ilightbox-holder' + (supportTouch ? ' supportTouch' : '') + ' ilightbox-prev" ondragstart="return false;"><div class="ilightbox-container"></div></div>'),
				nextButton: $('<a class="ilightbox-button ilightbox-next-button" ondragstart="return false;" title="' + iL.options.text.next + '"><span></span></a>'),
				prevButton: $('<a class="ilightbox-button ilightbox-prev-button" ondragstart="return false;" title="' + iL.options.text.previous + '"><span></span></a>'),
				thumbnails: $('<div class="ilightbox-thumbnails" ondragstart="return false;"><div class="ilightbox-thumbnails-container"><a class="ilightbox-thumbnails-dragger"></a><div class="ilightbox-thumbnails-grid"></div></div></div>'),
				thumbs: false,
				nextLock: false,
				prevLock: false,
				hashLock: false,
				isMobile: false,
				mobileMaxWidth: 980,
				isInFullScreen: false,
				isSwipe: false,
				mouseID: 0,
				cycleID: 0,
				isPaused: 0
			};

			// Hideable elements with mousemove event
			iL.vars.hideableElements = iL.vars.nextButton.add(iL.vars.prevButton);

			iL.normalizeItems();

			//Check necessary plugins
			iL.availPlugins();

			//Set startFrom
			iL.options.startFrom = (iL.options.startFrom > 0 && iL.options.startFrom >= iL.vars.total) ? iL.vars.total - 1 : iL.options.startFrom;

			//If randomStart
			iL.options.startFrom = (iL.options.randomStart) ? floor(random() * iL.vars.total) : iL.options.startFrom;
			iL.vars.start = iL.options.startFrom;

			if (instant) {  iL.instantCall(); }
			else { iL.patchItemsEvents(); }

			if (iL.options.linkId) {
				iL.hashChangeHandler();
				$win.iLightBoxHashChange(function() {
					iL.hashChangeHandler();
				});
			}

			if (supportTouch) {
				var RegExp = /(click|mouseenter|mouseleave|mouseover|mouseout)/ig,
					replace = "itap";
				iL.options.caption.show = iL.options.caption.show.replace(RegExp, replace),
					iL.options.caption.hide = iL.options.caption.hide.replace(RegExp, replace),
					iL.options.social.show = iL.options.social.show.replace(RegExp, replace),
					iL.options.social.hide = iL.options.social.hide.replace(RegExp, replace);
			}

			if (iL.options.controls.arrows) {
				$.extend(iL.options.styles, {
					nextOffsetX: 0,
					prevOffsetX: 0,
					nextOpacity: 0,
					prevOpacity: 0
				});
			}
		};

	//iLightBox helpers
	iLightBox.prototype = {
		showLoader: function() {

			var iL = this;
			iL.vars.loadRequests += 1;
			if (iL.options.path.toLowerCase() == "horizontal") { iL.vars.loader.stop().animate({
				top: '-30px'
			}, iL.options.show.speed, 'easeOutCirc'); }
			else { iL.vars.loader.stop().animate({
				left: '-30px'
			}, iL.options.show.speed, 'easeOutCirc'); }
		},

		hideLoader: function() {
			var iL = this;
			iL.vars.loadRequests -= 1;
			iL.vars.loadRequests = (iL.vars.loadRequests < 0) ? 0 : iL.vars.loadRequests;
			if (iL.options.path.toLowerCase() == "horizontal") {
				if (iL.vars.loadRequests <= 0)  {
						iL.vars.loader.stop().animate({
						top: '-192px'
						}, iL.options.show.speed, 'easeInCirc');
				}
			} else {
				if (iL.vars.loadRequests <= 0) {
						iL.vars.loader.stop().animate({
						left: '-192px'
						}, iL.options.show.speed, 'easeInCirc');
				}
			}
		},

		createUI: function() {
			var iL = this;

			iL.ui = {
				currentElement: iL.vars.holder,
				nextElement: iL.vars.nextPhoto,
				prevElement: iL.vars.prevPhoto,
				currentItem: iL.vars.current,
				nextItem: iL.vars.next,
				prevItem: iL.vars.prev,
				hide: function() {
					iL.closeAction();
				},
				refresh: function() {
					(arguments.length > 0) ? iL.repositionPhoto(true): iL.repositionPhoto();
				},
				fullscreen: function() {
					iL.fullScreenAction();
				}
			};
		},

		attachItems: function() {
			var iL = this,
				itemsObject = new Array(),
				items = new Array();

			$(iL.selector, iL.context).each(function() {
				var t = $(this),
					URL = t.attr(iL.options.attr) || null,
					options = t.data("options") && eval("({" + t.data("options") + "})") || {},
					caption = t.data('caption'),
					title = t.data('title'),
					type = t.data('type') || getTypeByExtension(URL);

				items.push({
					URL: URL,
					caption: caption,
					title: title,
					type: type,
					options: options
				});

				if (!iL.instant) { itemsObject.push(t); }
			});

			iL.items = items,
				iL.itemsObject = itemsObject;

			/* Edit by ThemeFusion to fix the total amount of items issue on refresh */
			if( iL.vars ) {
				iL.vars.total = items.length;
			}
		},

		normalizeItems: function() {
			var iL = this,
				newItems = new Array();

			$.each(iL.items, function(key, val) {

				if (typeof val == "string") {
					val = {
						url: val
					};
				}

				var URL = val.url || val.URL || null,
					options = val.options || {},
					caption = val.caption || null,
					title = val.title || null,
					type = (val.type) ? val.type.toLowerCase() : getTypeByExtension(URL),
					ext = (typeof URL != 'object') ? getExtension(URL) : '';

				options.thumbnail = options.thumbnail || ((type == "image") ? URL : null),
				options.videoType = options.videoType || null,
				options.skin = options.skin || iL.options.skin,
				options.width = options.width || null,
				options.height = options.height || null,
				options.mousewheel = (typeof options.mousewheel != 'undefined') ? options.mousewheel : true,
				options.swipe = (typeof options.swipe != 'undefined') ? options.swipe : true,
				options.social = (typeof options.social != 'undefined') ? options.social : iL.options.social.buttons && $.extend({}, {}, iL.options.social.buttons);

				if (type == "video") {
					options.html5video = (typeof options.html5video != 'undefined') ? options.html5video : {};

					options.html5video.webm = options.html5video.webm || options.html5video.WEBM || null;
					options.html5video.controls = (typeof options.html5video.controls != 'undefined') ? options.html5video.controls : "controls";
					options.html5video.preload = options.html5video.preload || "metadata";
					options.html5video.autoplay = (typeof options.html5video.autoplay != 'undefined') ? options.html5video.autoplay : false;
				}

				if (!options.width || !options.height) {
					// ThemeFusion edit for Avada theme; set width from 1280x700 (100% for iframe) to the theme option values
					if (type == "video") { options.width = js_local_vars.lightbox_video_width, options.height = js_local_vars.lightbox_video_height; }
					else if (type == "iframe") { options.width = js_local_vars.lightbox_video_width, options.height = js_local_vars.lightbox_video_height; }
					else if (type == "flash") { options.width = js_local_vars.lightbox_video_width, options.height = js_local_vars.lightbox_video_height; }
				}

				delete val.url;
				val.index = key;
				val.URL = URL;
				val.caption = caption;
				val.title = title;
				val.type = type;
				val.options = options;
				val.ext = ext;

				newItems.push(val);
			});

			iL.items = newItems;
		},

		instantCall: function() {
			var iL = this,
				key = iL.vars.start;

			iL.vars.current = key;
			iL.vars.next = (iL.items[key + 1]) ? key + 1 : null;
			iL.vars.prev = (iL.items[key - 1]) ? key - 1 : null;

			iL.addContents();
			iL.patchEvents();
		},

		addContents: function() {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				viewport = getViewport(),
				path = opts.path.toLowerCase(),
				recognizingItems = vars.total > 0 && iL.items.filter(function(e, i, arr) {
					return ['image', 'flash', 'video'].indexOf(e.type) === -1 && typeof e.recognized === 'undefined' && (opts.smartRecognition || e.options.smartRecognition);
				}),
				needRecognition = recognizingItems.length > 0;

			if (opts.mobileOptimizer && !opts.innerToolbar) {
				vars.isMobile = viewport.width <= vars.mobileMaxWidth;
			}

			vars.overlay.addClass(opts.skin).hide().css('opacity', opts.overlay.opacity);

			if (opts.linkId) {
				vars.overlay[0].setAttribute('linkid', opts.linkId);
			}

			//Add Toolbar Buttons
			if (opts.controls.toolbar) {
				vars.toolbar.addClass(opts.skin).append(vars.closeButton);
				if (opts.controls.fullscreen) {
					vars.toolbar.append(vars.fullScreenButton);
				}
				if (opts.controls.slideshow) {
					vars.toolbar.append(vars.innerPlayButton);
				}
				if (vars.total > 1) {
					vars.toolbar.append(vars.innerPrevButton).append(vars.innerNextButton);
				}
			}

			//Append elements to body
			vars.BODY.addClass('ilightbox-noscroll').append(vars.overlay).append(vars.loader).append(vars.holder).append(vars.nextPhoto).append(vars.prevPhoto);

			if (!opts.innerToolbar) {
				vars.BODY.append(vars.toolbar);
			}
			if (opts.controls.arrows) {
				vars.BODY.append(vars.nextButton).append(vars.prevButton);
			}
			if (opts.controls.thumbnail && vars.total > 1) {
				vars.BODY.append(vars.thumbnails);
				vars.thumbnails.addClass(opts.skin).addClass('ilightbox-' + path);
				$('div.ilightbox-thumbnails-grid', vars.thumbnails).empty();
				vars.thumbs = true;
			}

			//Configure loader and arrows
			var loaderCss = (opts.path.toLowerCase() == "horizontal") ? {
				left: parseInt((viewport.width / 2) - (vars.loader.outerWidth() / 2))
			} : {
				top: parseInt((viewport.height / 2) - (vars.loader.outerHeight() / 2))
			};
			vars.loader.addClass(opts.skin).css(loaderCss);
			vars.nextButton.add(vars.prevButton).addClass(opts.skin);
			if (path == "horizontal") {
				vars.loader.add(vars.nextButton).add(vars.prevButton).addClass('horizontal');
			}
			// Configure arrow buttons
			vars.BODY[vars.isMobile ? 'addClass' : 'removeClass']('isMobile');

			if (!opts.infinite) {
				vars.prevButton.add(vars.prevButton).add(vars.innerPrevButton).add(vars.innerNextButton).removeClass('disabled');
				vars.nextButton.add(vars.prevButton).add(vars.innerPrevButton).add(vars.innerNextButton).removeClass('disabled');

				if (vars.current == 0) {
					vars.prevButton.add(vars.innerPrevButton).addClass('disabled');
				}
				if (vars.current >= vars.total - 1) {
					vars.nextButton.add(vars.innerNextButton).addClass('disabled');
				}
			}

			if (opts.show.effect) {
				vars.overlay.stop().fadeIn(opts.show.speed);
				vars.toolbar.stop().fadeIn(opts.show.speed);
			} else {
				vars.overlay.show();
				vars.toolbar.show();
			}

			var length = recognizingItems.length;
			if (needRecognition) {
				iL.showLoader();

				$.each(recognizingItems, function(key, val) {
					var resultFnc = function(result) {
							var key = -1,
								filter = iL.items.filter(function(e, i, arr) {
									if (e.URL == result.url) {
										key = i;
									}

									return e.URL == result.url;
								}),
								self = iL.items[key];

							if (result) {
								$.extend(true, self, {
									URL: result.source,
									type: result.type,
									recognized: true,
									options: {
										html5video: result.html5video,
										width: (result.type == "image") ? 0 : (result.width || self.width),
										height: (result.type == "image") ? 0 : (result.height || self.height),
										thumbnail: self.options.thumbnail || result.thumbnail
									}
								});
							}

							length--;

							if (length == 0) {
								iL.hideLoader();

								vars.dontGenerateThumbs = false;
								iL.generateThumbnails();

								if (opts.show.effect) {
									setTimeout(function() {
										iL.generateBoxes();
									}, opts.show.speed);
								}
								else {
									iL.generateBoxes();
								}
							}
						};

					iL.ogpRecognition(this, resultFnc);
				});
			}
			else {
				if (opts.show.effect) {
					setTimeout(function() {
						iL.generateBoxes();
					}, opts.show.speed);
				}
				else {
					iL.generateBoxes();
				}
			}

			iL.createUI();

			window.iLightBox = {
				close: function() {
					iL.closeAction();
				},
				fullscreen: function() {
					iL.fullScreenAction();
				},
				moveNext: function() {
					iL.moveTo('next');
				},
				movePrev: function() {
					iL.moveTo('prev');
				},
				goTo: function(index) {
					iL.goTo(index);
				},
				refresh: function() {
					iL.refresh();
				},
				reposition: function() {
					(arguments.length > 0) ? iL.repositionPhoto(true): iL.repositionPhoto();
				},
				setOption: function(options) {
					iL.setOption(options);
				},
				destroy: function() {
					iL.closeAction();
					iL.dispatchItemsEvents();
				}
			};

			if (opts.linkId) {
				vars.hashLock = true;
				window.location.hash = opts.linkId + '/' + vars.current;
				setTimeout(function() {
					vars.hashLock = false;
				}, 55);
			}

			if (!opts.slideshow.startPaused) {
				iL.resume();
				vars.innerPlayButton.removeClass('ilightbox-play').addClass('ilightbox-pause');
			}

			//Trigger the onOpen callback
			if (typeof iL.options.callback.onOpen == 'function') { iL.options.callback.onOpen.call(iL); }
		},

		loadContent: function(obj, opt, speed) {
			var iL = this,
				holder, item;

			iL.createUI();

			obj.speed = speed || iL.options.effects.loadedFadeSpeed;

			if (opt == 'current') {
				if (!obj.options.mousewheel) { iL.vars.lockWheel = true; }
				else { iL.vars.lockWheel = false; }

				if (!obj.options.swipe) { iL.vars.lockSwipe = true; }
				else { iL.vars.lockSwipe = false; }
			}

			switch (opt) {
				case 'current':
					holder = iL.vars.holder, item = iL.vars.current;
					break;
				case 'next':
					holder = iL.vars.nextPhoto, item = iL.vars.next;
					break;
				case 'prev':
					holder = iL.vars.prevPhoto, item = iL.vars.prev;
					break;
			}

			holder.removeAttr('style class').addClass('ilightbox-holder' + (supportTouch ? ' supportTouch' : '')).addClass(obj.options.skin);
			$('div.ilightbox-inner-toolbar', holder).remove();

			if (obj.title || iL.options.innerToolbar) {
				var innerToolbar = iL.vars.innerToolbar.clone();
				if (obj.title && iL.options.show.title) {
					var title = iL.vars.title.clone();
					title.empty().html(obj.title);
					innerToolbar.append(title);
				}
				if (iL.options.innerToolbar) {
					innerToolbar.append((iL.vars.total > 1) ? iL.vars.toolbar.clone() : iL.vars.toolbar);
				}
				holder.prepend(innerToolbar);
			}

			iL.loadSwitcher(obj, holder, item, opt);
		},

		loadSwitcher: function(obj, holder, item, opt) {
			var iL = this,
				opts = iL.options,
				api = {
					element: holder,
					position: item
				};

			switch (obj.type) {
				case 'image':
					//Trigger the onBeforeLoad callback
					if (typeof opts.callback.onBeforeLoad == 'function') { opts.callback.onBeforeLoad.call(iL, iL.ui, item); }
					if (typeof obj.options.onBeforeLoad == 'function') { obj.options.onBeforeLoad.call(iL, api); }

					iL.loadImage(obj.URL, function(img) {
						//Trigger the onAfterLoad callback
						if (typeof opts.callback.onAfterLoad == 'function') { opts.callback.onAfterLoad.call(iL, iL.ui, item); }
						if (typeof obj.options.onAfterLoad == 'function') { obj.options.onAfterLoad.call(iL, api); }

						var width = (img) ? img.width : 400,
							height = (img) ? img.height : 200;

						holder.data({
							naturalWidth: width,
							naturalHeight: height
						});
						$('div.ilightbox-container', holder).empty().append((img) ? '<img src="' + obj.URL + '" class="ilightbox-image" />' : '<span class="ilightbox-alert">' + opts.errors.loadImage + '</span>');

						//Trigger the onRender callback
						if (typeof opts.callback.onRender == 'function') { opts.callback.onRender.call(iL, iL.ui, item); }
						if (typeof obj.options.onRender == 'function') { obj.options.onRender.call(iL, api); }

						iL.configureHolder(obj, opt, holder);
					});

					break;

				case 'video':
					holder.data({
						naturalWidth: obj.options.width,
						naturalHeight: obj.options.height
					});

					iL.addContent(holder, obj);

					//Trigger the onRender callback
					if (typeof opts.callback.onRender == 'function') { opts.callback.onRender.call(iL, iL.ui, item); }
					if (typeof obj.options.onRender == 'function') { obj.options.onRender.call(iL, api); }

					iL.configureHolder(obj, opt, holder);

					break;

				case 'iframe':
					// ThemeFusion edit for Avada theme: added possibility to add width and height as part of query string for videos
					var $query_array = obj.URL.substring( obj.URL.indexOf( '?' ) + 1 ).split( '&' ),
						$query_object = {};

					for ( var $i = 0; $i < $query_array.length; ++$i ) {
						var $single_query = $query_array[$i].split( '=' );
						if ( $single_query.length != 2 ) continue;

						if ( $single_query[0] == 'w' ) {
							$single_query[0] = 'width';
						}

						if ( $single_query[0] == 'h' ) {
							$single_query[0] = 'height';
						}

						$query_object[$single_query[0]] = decodeURIComponent( $single_query[1].replace( /\+/g, " " ) );
					}
					// End Edit

					iL.showLoader();
					holder.data({
						naturalWidth: ( $query_object['width'] ) ? $query_object['width'] : obj.options.width,
						naturalHeight: ( $query_object['height'] ) ? $query_object['height'] : obj.options.height
					});
					var el = iL.addContent(holder, obj);

					//Trigger the onRender callback
					if (typeof opts.callback.onRender == 'function') { opts.callback.onRender.call(iL, iL.ui, item); }
					if (typeof obj.options.onRender == 'function') { obj.options.onRender.call(iL, api); }

					//Trigger the onBeforeLoad callback
					if (typeof opts.callback.onBeforeLoad == 'function') { opts.callback.onBeforeLoad.call(iL, iL.ui, item); }
					if (typeof obj.options.onBeforeLoad == 'function') { obj.options.onBeforeLoad.call(iL, api); }

					el.bind('load', function() {
						//Trigger the onAfterLoad callback
						if (typeof opts.callback.onAfterLoad == 'function') { opts.callback.onAfterLoad.call(iL, iL.ui, item); }
						if (typeof obj.options.onAfterLoad == 'function') { obj.options.onAfterLoad.call(iL, api); }

						iL.hideLoader();
						iL.configureHolder(obj, opt, holder);
						el.unbind('load');
					});

					break;

				case 'inline':
					var el = $(obj.URL),
						content = iL.addContent(holder, obj),
						images = findImageInElement(holder);

					holder.data({
						naturalWidth: (iL.items[item].options.width || el.outerWidth()),
						naturalHeight: (iL.items[item].options.height || el.outerHeight())
					});
					content.children().eq(0).show();

					//Trigger the onRender callback
					if (typeof opts.callback.onRender == 'function') { opts.callback.onRender.call(iL, iL.ui, item); }
					if (typeof obj.options.onRender == 'function') { obj.options.onRender.call(iL, api); }

					//Trigger the onBeforeLoad callback
					if (typeof opts.callback.onBeforeLoad == 'function') { opts.callback.onBeforeLoad.call(iL, iL.ui, item); }
					if (typeof obj.options.onBeforeLoad == 'function') { obj.options.onBeforeLoad.call(iL, api); }

					iL.loadImage(images, function() {
						//Trigger the onAfterLoad callback
						if (typeof opts.callback.onAfterLoad == 'function') { opts.callback.onAfterLoad.call(iL, iL.ui, item); }
						if (typeof obj.options.onAfterLoad == 'function') { obj.options.onAfterLoad.call(iL, api); }

						iL.configureHolder(obj, opt, holder);
					});

					break;

				case 'flash':
					var el = iL.addContent(holder, obj);

					holder.data({
						naturalWidth: (iL.items[item].options.width || el.outerWidth()),
						naturalHeight: (iL.items[item].options.height || el.outerHeight())
					});

					//Trigger the onRender callback
					if (typeof opts.callback.onRender == 'function') { opts.callback.onRender.call(iL, iL.ui, item); }
					if (typeof obj.options.onRender == 'function') { obj.options.onRender.call(iL, api); }

					iL.configureHolder(obj, opt, holder);

					break;

				case 'ajax':
					var ajax = obj.options.ajax || {};
					//Trigger the onBeforeLoad callback
					if (typeof opts.callback.onBeforeLoad == 'function') { opts.callback.onBeforeLoad.call(iL, iL.ui, item); }
					if (typeof obj.options.onBeforeLoad == 'function') { obj.options.onBeforeLoad.call(iL, api); }

					iL.showLoader();
					$.ajax({
						url: obj.URL || opts.ajaxSetup.url,
						data: ajax.data || null,
						dataType: ajax.dataType || "html",
						type: ajax.type || opts.ajaxSetup.type,
						cache: ajax.cache || opts.ajaxSetup.cache,
						crossDomain: ajax.crossDomain || opts.ajaxSetup.crossDomain,
						global: ajax.global || opts.ajaxSetup.global,
						ifModified: ajax.ifModified || opts.ajaxSetup.ifModified,
						username: ajax.username || opts.ajaxSetup.username,
						password: ajax.password || opts.ajaxSetup.password,
						beforeSend: ajax.beforeSend || opts.ajaxSetup.beforeSend,
						complete: ajax.complete || opts.ajaxSetup.complete,
						success: function(data, textStatus, jqXHR) {
							iL.hideLoader();

							var el = $(data),
								container = $('div.ilightbox-container', holder),
								elWidth = iL.items[item].options.width || parseInt(el[0].getAttribute('width')),
								elHeight = iL.items[item].options.height || parseInt(el[0].getAttribute('height')),
								css = (el[0].getAttribute('width') && el[0].getAttribute('height')) ? {
									'overflow': 'hidden'
								} : {};

							container.empty().append($('<div class="ilightbox-wrapper"></div>').css(css).html(el));
							holder.show().data({
								naturalWidth: (elWidth || container.outerWidth()),
								naturalHeight: (elHeight || container.outerHeight())
							}).hide();

							//Trigger the onRender callback
							if (typeof opts.callback.onRender == 'function') { opts.callback.onRender.call(iL, iL.ui, item); }
							if (typeof obj.options.onRender == 'function') { obj.options.onRender.call(iL, api); }

							var images = findImageInElement(holder);
							iL.loadImage(images, function() {
								//Trigger the onAfterLoad callback
								if (typeof opts.callback.onAfterLoad == 'function') { opts.callback.onAfterLoad.call(iL, iL.ui, item); }
								if (typeof obj.options.onAfterLoad == 'function') { obj.options.onAfterLoad.call(iL, api); }

								iL.configureHolder(obj, opt, holder);
							});

							opts.ajaxSetup.success(data, textStatus, jqXHR);
							if (typeof ajax.success == 'function') { ajax.success(data, textStatus, jqXHR); }
						},
						error: function(jqXHR, textStatus, errorThrown) {
							//Trigger the onAfterLoad callback
							if (typeof opts.callback.onAfterLoad == 'function') { opts.callback.onAfterLoad.call(iL, iL.ui, item); }
							if (typeof obj.options.onAfterLoad == 'function') { obj.options.onAfterLoad.call(iL, api); }f

							iL.hideLoader();
							$('div.ilightbox-container', holder).empty().append('<span class="ilightbox-alert">' + opts.errors.loadContents + '</span>');
							iL.configureHolder(obj, opt, holder);

							opts.ajaxSetup.error(jqXHR, textStatus, errorThrown);
							if (typeof ajax.error == 'function') { ajax.error(jqXHR, textStatus, errorThrown); }
						}
					});

					break;

				case 'html':
					var object = obj.URL,
						el
					container = $('div.ilightbox-container', holder);

					if (object[0].nodeName) { el = object.clone(); }
					else {
						var dom = $(object);
						if (dom.selector) { el = $('<div>' + dom + '</div>'); }
						else { el = dom; }
					}

					var elWidth = iL.items[item].options.width || parseInt(el.attr('width')),
						elHeight = iL.items[item].options.height || parseInt(el.attr('height'));

					iL.addContent(holder, obj);

					el.appendTo(document.documentElement).hide();

					//Trigger the onRender callback
					if (typeof opts.callback.onRender == 'function') { opts.callback.onRender.call(iL, iL.ui, item); }
					if (typeof obj.options.onRender == 'function') { obj.options.onRender.call(iL, api); }

					var images = findImageInElement(holder);

					//Trigger the onBeforeLoad callback
					if (typeof opts.callback.onBeforeLoad == 'function') { opts.callback.onBeforeLoad.call(iL, iL.ui, item); }
					if (typeof obj.options.onBeforeLoad == 'function') { obj.options.onBeforeLoad.call(iL, api); }

					iL.loadImage(images, function() {
						//Trigger the onAfterLoad callback
						if (typeof opts.callback.onAfterLoad == 'function') { opts.callback.onAfterLoad.call(iL, iL.ui, item); }
						if (typeof obj.options.onAfterLoad == 'function') { obj.options.onAfterLoad.call(iL, api); }

						holder.show().data({
							naturalWidth: (elWidth || container.outerWidth()),
							naturalHeight: (elHeight || container.outerHeight())
						}).hide();
						el.remove();

						iL.configureHolder(obj, opt, holder);
					});

					break;
			}
		},

		configureHolder: function(obj, opt, holder) {
			var iL = this,
				vars = iL.vars,
				opts = iL.options;

			if (opt != "current")(opt == "next") ? holder.addClass('ilightbox-next') : holder.addClass('ilightbox-prev');

			if (opt == "current") {
				var item = vars.current;
			} else if (opt == "next") {
				var opacity = opts.styles.nextOpacity,
					item = vars.next;
			} else {
				var opacity = opts.styles.prevOpacity,
					item = vars.prev;
			}

			var api = {
				element: holder,
				position: item
			};

			iL.items[item].options.width = iL.items[item].options.width || 0,
				iL.items[item].options.height = iL.items[item].options.height || 0;

			if (opt == "current") {
				if (opts.show.effect) { holder.css(transform, gpuAcceleration).fadeIn(obj.speed, function() {
					holder.css(transform, '');
					if (obj.caption) {
						iL.setCaption(obj, holder);
						var caption = $('div.ilightbox-caption', holder),
							percent = parseInt((caption.outerHeight() / holder.outerHeight()) * 100);
						if (opts.caption.start & percent <= 50) { caption.fadeIn(opts.effects.fadeSpeed); }
					}

					var social = obj.options.social;
					if (social) {
						iL.setSocial(social, obj.URL, holder);
						if (opts.social.start) { $('div.ilightbox-social', holder).fadeIn(opts.effects.fadeSpeed); }
					}

					//Generate thumbnails
					iL.generateThumbnails();

					//Trigger the onShow callback
					if (typeof opts.callback.onShow == 'function') { opts.callback.onShow.call(iL, iL.ui, item); }
					if (typeof obj.options.onShow == 'function') { obj.options.onShow.call(iL, api); }
				});
				} else {
					holder.show();

					//Generate thumbnails
					iL.generateThumbnails();

					//Trigger the onShow callback
					if (typeof opts.callback.onShow == 'function') { opts.callback.onShow.call(iL, iL.ui, item); }
					if (typeof obj.options.onShow == 'function') { obj.options.onShow.call(iL, api); }
				}
			} else {
				if (opts.show.effect) { holder.fadeTo(obj.speed, opacity, function() {
					if (opt == "next") { vars.nextLock = false; }
					else { vars.prevLock = false; }

					//Generate thumbnails
					iL.generateThumbnails();

					//Trigger the onShow callback
					if (typeof opts.callback.onShow == 'function') { opts.callback.onShow.call(iL, iL.ui, item); }
					if (typeof obj.options.onShow == 'function') { obj.options.onShow.call(iL, api); }
				});
				} else {
					holder.css({
						opacity: opacity
					}).show();
					if (opt == "next") { vars.nextLock = false; }
					else { vars.prevLock = false; }

					//Generate thumbnails
					iL.generateThumbnails();

					//Trigger the onShow callback
					if (typeof opts.callback.onShow == 'function') { opts.callback.onShow.call(iL, iL.ui, item); }
					if (typeof obj.options.onShow == 'function') { obj.options.onShow.call(iL, api); }
				}
			}

			setTimeout(function() {
				iL.repositionPhoto();
			}, 0);
		},

		generateBoxes: function() {
			var iL = this,
				vars = iL.vars,
				opts = iL.options;

			if (opts.infinite && vars.total >= 3) {
				if (vars.current == vars.total - 1) { vars.next = 0; }
				if (vars.current == 0) { vars.prev = vars.total - 1; }
			} else { opts.infinite = false; }

			iL.loadContent(iL.items[vars.current], 'current', opts.show.speed);

			if (iL.items[vars.next]) { iL.loadContent(iL.items[vars.next], 'next', opts.show.speed); }
			if (iL.items[vars.prev]) { iL.loadContent(iL.items[vars.prev], 'prev', opts.show.speed); }
		},

		generateThumbnails: function() {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				timeOut = null;

			if (vars.thumbs && !iL.vars.dontGenerateThumbs) {
				var thumbnails = vars.thumbnails,
					container = $('div.ilightbox-thumbnails-container', thumbnails),
					grid = $('div.ilightbox-thumbnails-grid', container),
					i = 0;

				grid.removeAttr('style').empty();

				$.each(iL.items, function(key, val) {
					var isActive = (vars.current == key) ? 'ilightbox-active' : '',
						opacity = (vars.current == key) ? opts.thumbnails.activeOpacity : opts.thumbnails.normalOpacity,
						thumb = val.options.thumbnail,
						thumbnail = $('<div class="ilightbox-thumbnail"></div>'),
						icon = $('<div class="ilightbox-thumbnail-icon"></div>');

					thumbnail.css({
						opacity: 0
					}).addClass(isActive);

					if ((val.type == "video" || val.type == "flash") && typeof val.options.icon == 'undefined') {
						icon.addClass('ilightbox-thumbnail-video');
						thumbnail.append(icon);
					} else if (val.options.icon) {
						icon.addClass('ilightbox-thumbnail-' + val.options.icon);
						thumbnail.append(icon);
					}

					if (thumb) { iL.loadImage(thumb, function(img) {
						i++;
						if (img) { thumbnail.data({
							naturalWidth: img.width,
							naturalHeight: img.height
						}).append('<img src="' + thumb + '" border="0" />');
						} else { thumbnail.data({
							naturalWidth: opts.thumbnails.maxWidth,
							naturalHeight: opts.thumbnails.maxHeight
						});
						}

						clearTimeout(timeOut);
						timeOut = setTimeout(function() {
							iL.positionThumbnails(thumbnails, container, grid);
						}, 20);
						setTimeout(function() {
							thumbnail.fadeTo(opts.effects.loadedFadeSpeed, opacity);
						}, i * 20);
					});
					}

					grid.append(thumbnail);
				});
				iL.vars.dontGenerateThumbs = true;
			}
		},

		positionThumbnails: function(thumbnails, container, grid) {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				viewport = getViewport(),
				path = opts.path.toLowerCase();

			if (!thumbnails) { thumbnails = vars.thumbnails; }
			if (!container) { container = $('div.ilightbox-thumbnails-container', thumbnails); }
			if (!grid) { grid = $('div.ilightbox-thumbnails-grid', container); }

			var thumbs = $('.ilightbox-thumbnail', grid),
				widthAvail = (path == 'horizontal') ? viewport.width - opts.styles.pageOffsetX : thumbs.eq(0).outerWidth() - opts.styles.pageOffsetX,
				heightAvail = (path == 'horizontal') ? thumbs.eq(0).outerHeight() - opts.styles.pageOffsetY : viewport.height - opts.styles.pageOffsetY,
				gridWidth = (path == 'horizontal') ? 0 : widthAvail,
				gridHeight = (path == 'horizontal') ? heightAvail : 0,
				active = $('.ilightbox-active', grid),
				gridCss = {},
				css = {};

			if (arguments.length < 3) {
				thumbs.css({
					opacity: opts.thumbnails.normalOpacity
				});
				active.css({
					opacity: opts.thumbnails.activeOpacity
				});
			}

			thumbs.each(function(i) {
				var t = $(this),
					data = t.data(),
					width = (path == 'horizontal') ? 0 : opts.thumbnails.maxWidth;
				height = (path == 'horizontal') ? opts.thumbnails.maxHeight : 0;
				dims = iL.getNewDimenstions(width, height, data.naturalWidth, data.naturalHeight, true);

				t.css({
					width: dims.width,
					height: dims.height
				});
				if (path == 'horizontal') { t.css({
					'float': 'left'
				});
				}

				(path == 'horizontal') ? (
					gridWidth += t.outerWidth()
				) : (
					gridHeight += t.outerHeight()
				);
			});

			gridCss = {
				width: gridWidth,
				height: gridHeight
			};

			grid.css(gridCss);

			gridCss = {};

			var gridOffset = grid.offset(),
				activeOffset = (active.length) ? active.offset() : {
					top: parseInt(heightAvail / 2),
					left: parseInt(widthAvail / 2)
				};

			gridOffset.top = (gridOffset.top - $doc.scrollTop()),
				gridOffset.left = (gridOffset.left - $doc.scrollLeft()),
				activeOffset.top = (activeOffset.top - gridOffset.top - $doc.scrollTop()),
				activeOffset.left = (activeOffset.left - gridOffset.left - $doc.scrollLeft());

			(path == 'horizontal') ? (
				gridCss.top = 0,
				gridCss.left = parseInt((widthAvail / 2) - activeOffset.left - (active.outerWidth() / 2))
			) : (
				gridCss.top = parseInt(((heightAvail / 2) - activeOffset.top - (active.outerHeight() / 2))),
				gridCss.left = 0
			);

			if (arguments.length < 3) { grid.stop().animate(gridCss, opts.effects.repositionSpeed, 'easeOutCirc'); }
			else { grid.css(gridCss); }
		},

		loadImage: function(image, callback) {
			if (!$.isArray(image)) { image = [image]; }

			var iL = this,
				length = image.length;

			if (length > 0) {
				iL.showLoader();
				$.each(image, function(index, value) {
					var img = new Image();
					img.onload = function() {
						length -= 1;
						if (length == 0) {
							iL.hideLoader();
							callback(img);
						}
					};
					img.onerror = img.onabort = function() {
						length -= 1;
						if (length == 0) {
							iL.hideLoader();
							callback(false);
						}
					};
					img.src = image[index];
				});
			} else callback(false);
		},

		patchItemsEvents: function() {
			var iL = this,
				vars = iL.vars,
				clickEvent = supportTouch ? "itap.iL" : "click.iL",
				vEvent = supportTouch ? "click.iL" : "itap.iL";

			if (iL.context && iL.selector) {
				var $items = $(iL.selector, iL.context);

				$(iL.context).on(clickEvent, iL.selector, function() {
					var $this = $(this),
						key = $items.index($this);

					vars.current = key;
					vars.next = iL.items[key + 1] ? key + 1 : null;
					vars.prev = iL.items[key - 1] ? key - 1 : null;

					iL.addContents();
					iL.patchEvents();

					return false;
				}).on(vEvent, iL.selector, function() {
					return false;
				});
			} else {
				$.each(iL.itemsObject, function(key, val) {
					val.on(clickEvent, function() {
						vars.current = key;
						vars.next = iL.items[key + 1] ? key + 1 : null;
						vars.prev = iL.items[key - 1] ? key - 1 : null;

						iL.addContents();
						iL.patchEvents();

						return false;
					}).on(vEvent, function() {
						return false;
					});
				});
			}
		},

		dispatchItemsEvents: function() {
			var iL = this,
				vars = iL.vars,
				opts = iL.options;

			if (iL.context && iL.selector) {
				$(iL.context).off('.iL', iL.selector);
			} else {
				$.each(iL.itemsObject, function(key, val) {
					val.off('.iL');
				});
			}
		},

		refresh: function() {
			var iL = this;
			iL.dispatchItemsEvents();
			iL.attachItems();
			iL.normalizeItems();
			iL.patchItemsEvents();
		},

		patchEvents: function() {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				path = opts.path.toLowerCase(),
				holders = $('.ilightbox-holder'),
				fullscreenEvent = fullScreenApi.fullScreenEventName + '.iLightBox',
				durationThreshold = 1000,
				horizontalDistanceThreshold =
				verticalDistanceThreshold = 100,
				buttonsArray = [vars.nextButton[0], vars.prevButton[0], vars.nextButton[0].firstChild, vars.prevButton[0].firstChild];

			$win.bind('resize.iLightBox', function() {
				var viewport = getViewport();

				if (opts.mobileOptimizer && !opts.innerToolbar) { vars.isMobile = viewport.width <= vars.mobileMaxWidth; }
				vars.BODY[vars.isMobile ? 'addClass' : 'removeClass']('isMobile');

				iL.repositionPhoto(null);
				if (supportTouch) {
					clearTimeout(vars.setTime);
					vars.setTime = setTimeout(function() {
						var scrollTop = getScrollXY().y;
						window.scrollTo(0, scrollTop - 30);
						window.scrollTo(0, scrollTop + 30);
						window.scrollTo(0, scrollTop);
					}, 2000);
				}
				if (vars.thumbs) { iL.positionThumbnails(); }
			}).bind('keydown.iLightBox', function(event) {
				if (opts.controls.keyboard) {
					switch (event.keyCode) {
						case 13:
							if (event.shiftKey && opts.keyboard.shift_enter) { iL.fullScreenAction(); }
							break;
						case 27:
							if (opts.keyboard.esc) { iL.closeAction(); }
							break;
						case 37:
							if (opts.keyboard.left && !vars.lockKey) { iL.moveTo('prev'); }
							break;
						case 38:
							if (opts.keyboard.up && !vars.lockKey) { iL.moveTo('prev'); }
							break;
						case 39:
							if (opts.keyboard.right && !vars.lockKey) { iL.moveTo('next'); }
							break;
						case 40:
							if (opts.keyboard.down && !vars.lockKey) { iL.moveTo('next'); }
							break;
					}
				}
			});

			if (fullScreenApi.supportsFullScreen) { $win.bind(fullscreenEvent, function() {
				iL.doFullscreen();
			});
			}

			var holderEventsArr = [opts.caption.show + '.iLightBox', opts.caption.hide + '.iLightBox', opts.social.show + '.iLightBox', opts.social.hide + '.iLightBox'].filter(function(e, i, arr) {
					return arr.lastIndexOf(e) === i;
				}),
				holderEvents = "";

			$.each(holderEventsArr, function(key, val) {
				if (key != 0) { holderEvents += ' '; }
				holderEvents += val;
			});

			$doc.on(clickEvent, '.ilightbox-overlay', function() {
				if (opts.overlay.blur) { iL.closeAction(); }
			}).on(clickEvent, '.ilightbox-next, .ilightbox-next-button', function() {
				iL.moveTo('next');
			}).on(clickEvent, '.ilightbox-prev, .ilightbox-prev-button', function() {
				iL.moveTo('prev');
			}).on(clickEvent, '.ilightbox-thumbnail', function() {
				var t = $(this),
					thumbs = $('.ilightbox-thumbnail', vars.thumbnails),
					index = thumbs.index(t);

				if (index != vars.current) { iL.goTo(index); }
			}).on(holderEvents, '.ilightbox-holder:not(.ilightbox-next, .ilightbox-prev)', function(e) {
				var caption = $('div.ilightbox-caption', vars.holder),
					social = $('div.ilightbox-social', vars.holder),
					fadeSpeed = opts.effects.fadeSpeed;

				if (vars.nextLock || vars.prevLock) {
					if (e.type == opts.caption.show && !caption.is(':visible')) { caption.fadeIn(fadeSpeed); }
					else if (e.type == opts.caption.hide && caption.is(':visible')) { caption.fadeOut(fadeSpeed); }

					if (e.type == opts.social.show && !social.is(':visible')) { social.fadeIn(fadeSpeed); }
					else if (e.type == opts.social.hide && social.is(':visible')) { social.fadeOut(fadeSpeed); }
				} else {
					if (e.type == opts.caption.show && !caption.is(':visible')) { caption.stop().fadeIn(fadeSpeed); }
					else if (e.type == opts.caption.hide && caption.is(':visible')) { caption.stop().fadeOut(fadeSpeed); }

					if (e.type == opts.social.show && !social.is(':visible')) { social.stop().fadeIn(fadeSpeed); }
					else if (e.type == opts.social.hide && social.is(':visible')) { social.stop().fadeOut(fadeSpeed); }
				}
			}).on('mouseenter.iLightBox mouseleave.iLightBox', '.ilightbox-wrapper', function(e) {
				if (e.type == 'mouseenter') { vars.lockWheel = true; }
				else { vars.lockWheel = false; }
			// ThemeFusion edit for Avada theme: added "click" to the event to make it always work
			}).on(clickEvent, '.ilightbox-toolbar a.ilightbox-close, .ilightbox-toolbar a.ilightbox-fullscreen, .ilightbox-toolbar a.ilightbox-play, .ilightbox-toolbar a.ilightbox-pause', function() {
				var t = $(this);

				if (t.hasClass('ilightbox-fullscreen')) { iL.fullScreenAction(); }
				else if (t.hasClass('ilightbox-play')) {
					iL.resume();
					t.addClass('ilightbox-pause').removeClass('ilightbox-play');
				} else if (t.hasClass('ilightbox-pause')) {
					iL.pause();
					t.addClass('ilightbox-play').removeClass('ilightbox-pause');
				} else { iL.closeAction(); }
			}).on(touchMoveEvent, '.ilightbox-overlay, .ilightbox-thumbnails-container', function(e) {
				// prevent scrolling
				e.preventDefault();
			});

			function mouseMoveHandler(e) {
				if (!vars.isMobile) {
					if (!vars.mouseID) {
						vars.hideableElements.show();
					}

					vars.mouseID = clearTimeout(vars.mouseID);

					if (buttonsArray.indexOf(e.target) === -1) {
						vars.mouseID = setTimeout(function() {
							vars.hideableElements.hide();
							vars.mouseID = clearTimeout(vars.mouseID);
						}, 3000);
					}
				}
			}

			if (opts.controls.arrows && !supportTouch) { $doc.on('mousemove.iLightBox', mouseMoveHandler); }

			if (opts.controls.slideshow && opts.slideshow.pauseOnHover) { $doc.on('mouseenter.iLightBox mouseleave.iLightBox', '.ilightbox-holder:not(.ilightbox-next, .ilightbox-prev)', function(e) {
				if (e.type == 'mouseenter' && vars.cycleID) { iL.pause(); }
				else if (e.type == 'mouseleave' && vars.isPaused) { iL.resume(); }
			});
			}

			var switchers = $('.ilightbox-overlay, .ilightbox-holder, .ilightbox-thumbnails');

			if (opts.controls.mousewheel) { switchers.on('mousewheel.iLightBox', function(event, delta) {
				if (!vars.lockWheel) {
					event.preventDefault();
					if (delta < 0) { iL.moveTo('next'); }
					else if (delta > 0) { iL.moveTo('prev'); }
				}
			});
			}

			if (opts.controls.swipe) { holders.on(touchStartEvent, function(event) {
				if (vars.nextLock || vars.prevLock || vars.total == 1 || vars.lockSwipe) { return; }

				vars.BODY.addClass('ilightbox-closedhand');

				var data = event.originalEvent.touches ? event.originalEvent.touches[0] : event,
					scrollTop = $doc.scrollTop(),
					scrollLeft = $doc.scrollLeft(),
					offsets = [
						holders.eq(0).offset(),
						holders.eq(1).offset(),
						holders.eq(2).offset()
					],
					offSet = [{
						top: offsets[0].top - scrollTop,
						left: offsets[0].left - scrollLeft
					}, {
						top: offsets[1].top - scrollTop,
						left: offsets[1].left - scrollLeft
					}, {
						top: offsets[2].top - scrollTop,
						left: offsets[2].left - scrollLeft
					}],
					start = {
						time: (new Date()).getTime(),
						coords: [data.pageX - scrollLeft, data.pageY - scrollTop]
					},
					stop;

				function moveEachHandler(i) {
					var t = $(this),
						offset = offSet[i],
						scroll = [(start.coords[0] - stop.coords[0]), (start.coords[1] - stop.coords[1])];

					t[0].style[path == "horizontal" ? 'left' : 'top'] = (path == "horizontal" ? offset.left - scroll[0] : offset.top - scroll[1]) + 'px';
				}

				function moveHandler(event) {

					if (!start) { return; }

					var data = event.originalEvent.touches ? event.originalEvent.touches[0] : event;

					stop = {
						time: (new Date()).getTime(),
						coords: [data.pageX - scrollLeft, data.pageY - scrollTop]
					};

					holders.each(moveEachHandler);

					// prevent scrolling
					event.preventDefault();
				}

				function repositionHolders() {
					holders.each(function() {
						var t = $(this),
							offset = t.data('offset') || {
								top: t.offset().top - scrollTop,
								left: t.offset().left - scrollLeft
							},
							top = offset.top,
							left = offset.left;

						t.css(transform, gpuAcceleration).stop().animate({
							top: top,
							left: left
						}, 500, 'easeOutCirc', function() {
							t.css(transform, '');
						});
					});
				}

				holders.bind(touchMoveEvent, moveHandler);
				$doc.one(touchStopEvent, function(event) {
					holders.unbind(touchMoveEvent, moveHandler);

					vars.BODY.removeClass('ilightbox-closedhand');

					if (start && stop) {
						if (path == "horizontal" && stop.time - start.time < durationThreshold && abs(start.coords[0] - stop.coords[0]) > horizontalDistanceThreshold && abs(start.coords[1] - stop.coords[1]) < verticalDistanceThreshold) {
							if (start.coords[0] > stop.coords[0]) {
								if (vars.current == vars.total - 1 && !opts.infinite) { repositionHolders(); }
								else {
									vars.isSwipe = true;
									iL.moveTo('next');
								}
							} else {
								if (vars.current == 0 && !opts.infinite) { repositionHolders(); }
								else {
									vars.isSwipe = true;
									iL.moveTo('prev');
								}
							}
						} else if (path == "vertical" && stop.time - start.time < durationThreshold && abs(start.coords[1] - stop.coords[1]) > horizontalDistanceThreshold && abs(start.coords[0] - stop.coords[0]) < verticalDistanceThreshold) {
							if (start.coords[1] > stop.coords[1]) {
								if (vars.current == vars.total - 1 && !opts.infinite) { repositionHolders(); }
								else {
									vars.isSwipe = true;
									iL.moveTo('next');
								}
							} else {
								if (vars.current == 0 && !opts.infinite) { repositionHolders(); }
								else {
									vars.isSwipe = true;
									iL.moveTo('prev');
								}
							}
						} else { repositionHolders(); }
					}
					start = stop = undefined;
				});
			});
			}
		},

		goTo: function(index) {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				diff = (index - vars.current);

			if (opts.infinite) {
				if (index == vars.total - 1 && vars.current == 0) { diff = -1; }
				if (vars.current == vars.total - 1 && index == 0) { diff = 1; }
			}

			if (diff == 1) { iL.moveTo('next'); }
			else if (diff == -1) { iL.moveTo('prev'); }
			else {

				if (vars.nextLock || vars.prevLock) { return false; }

				//Trigger the onBeforeChange callback
				if (typeof opts.callback.onBeforeChange == 'function') { opts.callback.onBeforeChange.call(iL, iL.ui); }

				if (opts.linkId) {
					vars.hashLock = true;
					window.location.hash = opts.linkId + '/' + index;
				}

				if (iL.items[index]) {
					if (!iL.items[index].options.mousewheel) { vars.lockWheel = true; }
					else { iL.vars.lockWheel = false; }

					if (!iL.items[index].options.swipe) { vars.lockSwipe = true; }
					else { vars.lockSwipe = false; }
				}

				$.each([vars.holder, vars.nextPhoto, vars.prevPhoto], function(key, val) {
					val.css(transform, gpuAcceleration).fadeOut(opts.effects.loadedFadeSpeed);
				});

				vars.current = index;
				vars.next = index + 1;
				vars.prev = index - 1;

				iL.createUI();

				setTimeout(function() {
					iL.generateBoxes();
				}, opts.effects.loadedFadeSpeed + 50);

				$('.ilightbox-thumbnail', vars.thumbnails).removeClass('ilightbox-active').eq(index).addClass('ilightbox-active');
				iL.positionThumbnails();

				if (opts.linkId) { setTimeout(function() {
					vars.hashLock = false;
				}, 55);
				}

				// Configure arrow buttons
				if (!opts.infinite) {
					vars.nextButton.add(vars.prevButton).add(vars.innerPrevButton).add(vars.innerNextButton).removeClass('disabled');

					if (vars.current == 0) {
						vars.prevButton.add(vars.innerPrevButton).addClass('disabled');
					}
					if (vars.current >= vars.total - 1) {
						vars.nextButton.add(vars.innerNextButton).addClass('disabled');
					}
				}

				// Reset next cycle timeout
				iL.resetCycle();

				//Trigger the onAfterChange callback
				if (typeof opts.callback.onAfterChange == 'function') { opts.callback.onAfterChange.call(iL, iL.ui); }
			}
		},

		moveTo: function(side) {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				path = opts.path.toLowerCase(),
				viewport = getViewport(),
				switchSpeed = opts.effects.switchSpeed;

			if (vars.nextLock || vars.prevLock) { return false; }
			else {

				var item = (side == "next") ? vars.next : vars.prev;

				if (opts.linkId) {
					vars.hashLock = true;
					window.location.hash = opts.linkId + '/' + item;
				}

				if (side == "next") {
					if (!iL.items[item]) { return false; }
					var firstHolder = vars.nextPhoto,
						secondHolder = vars.holder,
						lastHolder = vars.prevPhoto,
						firstClass = 'ilightbox-prev',
						secondClass = 'ilightbox-next';
				} else if (side == "prev") {
					if (!iL.items[item]) { return false; }
					var firstHolder = vars.prevPhoto,
						secondHolder = vars.holder,
						lastHolder = vars.nextPhoto,
						firstClass = 'ilightbox-next',
						secondClass = 'ilightbox-prev';
				}

				//Trigger the onBeforeChange callback
				if (typeof opts.callback.onBeforeChange == 'function') {
					opts.callback.onBeforeChange.call(iL, iL.ui);
				}

				(side == "next") ? vars.nextLock = true: vars.prevLock = true;

				var captionFirst = $('div.ilightbox-caption', secondHolder),
					socialFirst = $('div.ilightbox-social', secondHolder);

				if (captionFirst.length) {
					captionFirst.stop().fadeOut(switchSpeed, function() {
						$(this).remove();
					});
				}
				if (socialFirst.length) {
					socialFirst.stop().fadeOut(switchSpeed, function() {
						$(this).remove();
					});
				}

				if (iL.items[item].caption) {
					iL.setCaption(iL.items[item], firstHolder);
					var caption = $('div.ilightbox-caption', firstHolder),
						percent = parseInt((caption.outerHeight() / firstHolder.outerHeight()) * 100);
					if (opts.caption.start && percent <= 50) { caption.fadeIn(switchSpeed); }
				}

				var social = iL.items[item].options.social;
				if (social) {
					iL.setSocial(social, iL.items[item].URL, firstHolder);
					if (opts.social.start) { $('div.ilightbox-social', firstHolder).fadeIn(opts.effects.fadeSpeed); }
				}

				$.each([firstHolder, secondHolder, lastHolder], function(key, val) {
					val.removeClass('ilightbox-next ilightbox-prev');
				});

				var firstOffset = firstHolder.data('offset'),
					winW = (viewport.width - (opts.styles.pageOffsetX)),
					winH = (viewport.height - (opts.styles.pageOffsetY)),
					width = firstOffset.newDims.width,
					height = firstOffset.newDims.height,
					thumbsOffset = firstOffset.thumbsOffset,
					diff = firstOffset.diff,
					top = parseInt((winH / 2) - (height / 2) - diff.H - (thumbsOffset.H / 2)),
					left = parseInt((winW / 2) - (width / 2) - diff.W - (thumbsOffset.W / 2));

				firstHolder.css(transform, gpuAcceleration).animate({
					top: top,
					left: left,
					opacity: 1
				}, switchSpeed, (vars.isSwipe) ? 'easeOutCirc' : 'easeInOutCirc', function() {
					firstHolder.css(transform, '');
				});

				$('div.ilightbox-container', firstHolder).animate({
					width: width,
					height: height
				}, switchSpeed, (vars.isSwipe) ? 'easeOutCirc' : 'easeInOutCirc');

				var secondOffset = secondHolder.data('offset'),
					object = secondOffset.object;

				diff = secondOffset.diff;

				width = secondOffset.newDims.width,
					height = secondOffset.newDims.height;

				width = parseInt(width * opts.styles[side == 'next' ? 'prevScale' : 'nextScale']),
					height = parseInt(height * opts.styles[side == 'next' ? 'prevScale' : 'nextScale']),
					top = (path == 'horizontal') ? parseInt((winH / 2) - object.offsetY - (height / 2) - diff.H - (thumbsOffset.H / 2)) : parseInt(winH - object.offsetX - diff.H - (thumbsOffset.H / 2));

				if (side == 'prev') {
					left = (path == 'horizontal') ? parseInt(winW - object.offsetX - diff.W - (thumbsOffset.W / 2)) : parseInt((winW / 2) - (width / 2) - diff.W - object.offsetY - (thumbsOffset.W / 2));
				} else {
					top = (path == 'horizontal') ? top : parseInt(object.offsetX - diff.H - height - (thumbsOffset.H / 2)),
						left = (path == 'horizontal') ? parseInt(object.offsetX - diff.W - width - (thumbsOffset.W / 2)) : parseInt((winW / 2) - object.offsetY - (width / 2) - diff.W - (thumbsOffset.W / 2));
				}

				$('div.ilightbox-container', secondHolder).animate({
					width: width,
					height: height
				}, switchSpeed, (vars.isSwipe) ? 'easeOutCirc' : 'easeInOutCirc');

				secondHolder.addClass(firstClass).css(transform, gpuAcceleration).animate({
					top: top,
					left: left,
					opacity: opts.styles.prevOpacity
				}, switchSpeed, (vars.isSwipe) ? 'easeOutCirc' : 'easeInOutCirc', function() {
					secondHolder.css(transform, '');

					$('.ilightbox-thumbnail', vars.thumbnails).removeClass('ilightbox-active').eq(item).addClass('ilightbox-active');
					iL.positionThumbnails();

					if (iL.items[item]) {
						if (!iL.items[item].options.mousewheel) { vars.lockWheel = true; }
						else { vars.lockWheel = false; }

						if (!iL.items[item].options.swipe) { vars.lockSwipe = true; }
						else { vars.lockSwipe = false; }
					}

					vars.isSwipe = false;

					if (side == "next") {
						vars.nextPhoto = lastHolder,
							vars.prevPhoto = secondHolder,
							vars.holder = firstHolder;

						vars.nextPhoto.hide();

						vars.next = vars.next + 1,
							vars.prev = vars.current,
							vars.current = vars.current + 1;

						if (opts.infinite) {
							if (vars.current > vars.total - 1) { vars.current = 0; }
							if (vars.current == vars.total - 1) { vars.next = 0; }
							if (vars.current == 0) { vars.prev = vars.total - 1; }
						}

						iL.createUI();

						if (!iL.items[vars.next]) {
							vars.nextLock = false;
						} else {
							iL.loadContent(iL.items[vars.next], 'next');
						}
					} else {
						vars.prevPhoto = lastHolder;
						vars.nextPhoto = secondHolder;
						vars.holder = firstHolder;

						vars.prevPhoto.hide();

						vars.next = vars.current;
						vars.current = vars.prev;
						vars.prev = vars.current - 1;

						if (opts.infinite) {
							if (vars.current == vars.total - 1) { vars.next = 0; }
							if (vars.current == 0) { vars.prev = vars.total - 1; }
						}

						iL.createUI();

						if (!iL.items[vars.prev]) {
							vars.prevLock = false;
						} else {
							iL.loadContent(iL.items[vars.prev], 'prev');
						}
					}

					if (opts.linkId) { setTimeout(function() {
						vars.hashLock = false;
					}, 55);
					}

					// Configure arrow buttons
					if (!opts.infinite) {
						vars.nextButton.add(vars.prevButton).add(vars.innerPrevButton).add(vars.innerNextButton).removeClass('disabled');

						if (vars.current == 0) {
							vars.prevButton.add(vars.innerPrevButton).addClass('disabled');
						}

						if (vars.current >= vars.total - 1) {
							vars.nextButton.add(vars.innerNextButton).addClass('disabled');
						}
					}

					iL.repositionPhoto();

					// Reset next cycle timeout
					iL.resetCycle();

					//Trigger the onAfterChange callback
					if (typeof opts.callback.onAfterChange == 'function') {
						opts.callback.onAfterChange.call(iL, iL.ui);
					}
				});

				top = (path == 'horizontal') ? getPixel(lastHolder, 'top') : ((side == "next") ? parseInt(-(winH / 2) - lastHolder.outerHeight()) : parseInt(top * 2)),
					left = (path == 'horizontal') ? ((side == "next") ? parseInt(-(winW / 2) - lastHolder.outerWidth()) : parseInt(left * 2)) : getPixel(lastHolder, 'left');

				lastHolder.css(transform, gpuAcceleration).animate({
					top: top,
					left: left,
					opacity: opts.styles.nextOpacity
				}, switchSpeed, (vars.isSwipe) ? 'easeOutCirc' : 'easeInOutCirc', function() {
					lastHolder.css(transform, '');
				}).addClass(secondClass);
			}
		},

		setCaption: function(obj, target) {
			var iL = this,
				caption = $('<div class="ilightbox-caption"></div>');

			if (obj.caption) {
				caption.html(obj.caption);
				$('div.ilightbox-container', target).append(caption);
			}
		},

		normalizeSocial: function(obj, url) {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				baseURL = window.location.href;

			$.each(obj, function(key, value) {
				if (!value) {
					return true;
				}
				var item = key.toLowerCase(),
					source, text;

				switch (item) {
					case 'facebook':
						source = "https://www.facebook.com/share.php?v=4&src=bm&u={URL}",
							text = "Share on Facebook";
						break;
					case 'twitter':
						source = "https://twitter.com/home?status={URL}",
							text = "Share on Twitter";
						break;
					case 'googleplus':
						source = "https://plus.google.com/share?url={URL}",
							text = "Share on Google+";
						break;
					case 'delicious':
						source = "http://delicious.com/post?url={URL}",
							text = "Share on Delicious";
						break;
					case 'digg':
						source = "https://digg.com/submit?phase=2&url={URL}",
							text = "Share on Digg";
						break;
					case 'reddit':
						source = "http://reddit.com/submit?url={URL}",
							text = "Share on reddit";
						break;
				}

				obj[key] = {
					URL: value.URL && absolutizeURI(baseURL, value.URL) || opts.linkId && window.location.href || typeof url !== 'string' && baseURL || url && absolutizeURI(baseURL, url) || baseURL,
					source: value.source || source || value.URL && absolutizeURI(baseURL, value.URL) || url && absolutizeURI(baseURL, url),
					text: value.text || text || "Share on " + key,
					width: (typeof(value.width) != 'undefined' && !isNaN(value.width)) ? parseInt(value.width) : 640,
					height: value.height || 360
				};

			});

			return obj;
		},

		setSocial: function(obj, url, target) {
			var iL = this,
				socialBar = $('<div class="ilightbox-social"></div>'),
				buttons = '<ul>';

			obj = iL.normalizeSocial(obj, url);

			$.each(obj, function(key, value) {
				var item = key.toLowerCase(),
					source = value.source.replace(/\{URL\}/g, encodeURIComponent(value.URL).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28').replace(/\)/g, '%29').replace(/\*/g, '%2A').replace(/%20/g, '+'));
				buttons += '<li class="' + key + '"><a href="' + source + '" onclick="javascript:window.open(this.href' + ((value.width <= 0 || value.height <= 0) ? '' : ', \'\', \'menubar=no,toolbar=no,resizable=yes,scrollbars=yes,height=' + value.height + ',width=' + value.width + ',left=40,top=40\'') + ');return false;" title="' + value.text + '" target="_blank"></a></li>';
			});

			buttons += '</ul>';

			socialBar.html(buttons);
			$('div.ilightbox-container', target).append(socialBar);
		},

		fullScreenAction: function() {
			var iL = this,
				vars = iL.vars;

			if (fullScreenApi.supportsFullScreen) {
				if (fullScreenApi.isFullScreen()) { fullScreenApi.cancelFullScreen(document.documentElement); }
				else { fullScreenApi.requestFullScreen(document.documentElement); }
			} else {
				iL.doFullscreen();
			}
		},

		doFullscreen: function() {
			var iL = this,
				vars = iL.vars,
				viewport = getViewport(),
				opts = iL.options;

			if (opts.fullAlone) {
				var currentHolder = vars.holder,
					current = iL.items[vars.current],
					windowWidth = viewport.width,
					windowHeight = viewport.height,
					elements = [currentHolder, vars.nextPhoto, vars.prevPhoto, vars.nextButton, vars.prevButton, vars.overlay, vars.toolbar, vars.thumbnails, vars.loader],
					// ThemeFusion edit for Avada theme: fix fullscreen issues with second slide and nav arrows
					//hideElements = [vars.nextPhoto, vars.prevPhoto, vars.nextButton, vars.prevButton, vars.loader, vars.thumbnails];
					hideElements = [vars.loader, vars.thumbnails];

				if (!vars.isInFullScreen) {
					vars.isInFullScreen = vars.lockKey = vars.lockWheel = vars.lockSwipe = true;
					vars.overlay.css({
						opacity: 1
					});

					$.each(hideElements, function(i, element) {
						element.hide();
					});

					vars.fullScreenButton.attr('title', opts.text.exitFullscreen);

					if (opts.fullStretchTypes.indexOf(current.type) != -1) { currentHolder.data({
						naturalWidthOld: currentHolder.data('naturalWidth'),
						naturalHeightOld: currentHolder.data('naturalHeight'),
						naturalWidth: windowWidth,
						naturalHeight: windowHeight
					});
					} else {
						var viewport = current.options.fullViewPort || opts.fullViewPort || '',
							newWidth = windowWidth,
							newHeight = windowHeight,
							width = currentHolder.data('naturalWidth'),
							height = currentHolder.data('naturalHeight');

						if (viewport.toLowerCase() == 'fill') {
							newHeight = (newWidth / width) * height;

							if (newHeight < windowHeight) {
								newWidth = (windowHeight / height) * width,
									newHeight = windowHeight;
							}
						} else if (viewport.toLowerCase() == 'fit') {
							var dims = iL.getNewDimenstions(newWidth, newHeight, width, height, true);

							newWidth = dims.width,
								newHeight = dims.height;
						} else if (viewport.toLowerCase() == 'stretch') {
							newWidth = newWidth,
								newHeight = newHeight;
						} else {
							var scale = (width > newWidth || height > newHeight) ? true : false,
								dims = iL.getNewDimenstions(newWidth, newHeight, width, height, scale);
							newWidth = dims.width,
								newHeight = dims.height;
						}

						currentHolder.data({
							naturalWidthOld: currentHolder.data('naturalWidth'),
							naturalHeightOld: currentHolder.data('naturalHeight'),
							naturalWidth: newWidth,
							naturalHeight: newHeight
						});
					}

					$.each(elements, function(key, val) {
						val.addClass('ilightbox-fullscreen');
					});

					//Trigger the onEnterFullScreen callback
					if (typeof opts.callback.onEnterFullScreen == 'function') { opts.callback.onEnterFullScreen.call(iL, iL.ui); }
				} else {
					vars.isInFullScreen = vars.lockKey = vars.lockWheel = vars.lockSwipe = false;
					vars.overlay.css({
						opacity: iL.options.overlay.opacity
					});

					$.each(hideElements, function(i, element) {
						element.show();
					});

					vars.fullScreenButton.attr('title', opts.text.enterFullscreen);

					currentHolder.data({
						naturalWidth: currentHolder.data('naturalWidthOld'),
						naturalHeight: currentHolder.data('naturalHeightOld'),
						naturalWidthOld: null,
						naturalHeightOld: null
					});

					$.each(elements, function(key, val) {
						val.removeClass('ilightbox-fullscreen');
					});

					//Trigger the onExitFullScreen callback
					if (typeof opts.callback.onExitFullScreen == 'function') { opts.callback.onExitFullScreen.call(iL, iL.ui); }
				}
			} else {
				if (!vars.isInFullScreen) { vars.isInFullScreen = true; }
				else { vars.isInFullScreen = false; }
			}
			iL.repositionPhoto(true);
		},

		closeAction: function() {
			var iL = this,
				vars = iL.vars,
				opts = iL.options;

			$win.unbind('.iLightBox');
			$doc.off('.iLightBox');

			if (vars.isInFullScreen) { fullScreenApi.cancelFullScreen(document.documentElement); }

			$('.ilightbox-overlay, .ilightbox-holder, .ilightbox-thumbnails').off('.iLightBox');

			if (opts.hide.effect) { vars.overlay.stop().fadeOut(opts.hide.speed, function() {
				vars.overlay.remove();
				vars.BODY.removeClass('ilightbox-noscroll').off('.iLightBox');
			});
			} else {
				vars.overlay.remove();
				vars.BODY.removeClass('ilightbox-noscroll').off('.iLightBox');
			}

			var fadeOuts = [vars.toolbar, vars.holder, vars.nextPhoto, vars.prevPhoto, vars.nextButton, vars.prevButton, vars.loader, vars.thumbnails];

			$.each(fadeOuts, function(i, element) {
				element.removeAttr('style').remove();
			});

			vars.dontGenerateThumbs = vars.isInFullScreen = false;

			window.iLightBox = null;

			if (opts.linkId) {
				vars.hashLock = true;
				removeHash();
				setTimeout(function() {
					vars.hashLock = false;
				}, 55);
			}

			//Trigger the onHide callback
			if (typeof opts.callback.onHide == 'function') { opts.callback.onHide.call(iL, iL.ui); }
		},

		repositionPhoto: function() {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				path = opts.path.toLowerCase(),
				viewport = getViewport(),
				winWidth = viewport.width,
				winHeight = viewport.height;

			var thumbsOffsetW = (vars.isInFullScreen && opts.fullAlone || vars.isMobile) ? 0 : ((path == 'horizontal') ? 0 : vars.thumbnails.outerWidth()),
				thumbsOffsetH = vars.isMobile ? vars.toolbar.outerHeight() : ((vars.isInFullScreen && opts.fullAlone) ? 0 : ((path == 'horizontal') ? vars.thumbnails.outerHeight() : 0)),
				width = (vars.isInFullScreen && opts.fullAlone) ? winWidth : (winWidth - (opts.styles.pageOffsetX)),
				height = (vars.isInFullScreen && opts.fullAlone) ? winHeight : (winHeight - (opts.styles.pageOffsetY)),
				offsetW = (path == 'horizontal') ? parseInt((iL.items[vars.next] || iL.items[vars.prev]) ? ((opts.styles.nextOffsetX + opts.styles.prevOffsetX)) * 2 : (((width / 10) <= 30) ? 30 : (width / 10))) : parseInt(((width / 10) <= 30) ? 30 : (width / 10)) + thumbsOffsetW,
				offsetH = (path == 'horizontal') ? parseInt(((height / 10) <= 30) ? 30 : (height / 10)) + thumbsOffsetH : parseInt((iL.items[vars.next] || iL.items[vars.prev]) ? ((opts.styles.nextOffsetX + opts.styles.prevOffsetX)) * 2 : (((height / 10) <= 30) ? 30 : (height / 10)));

			var elObject = {
				type: 'current',
				width: width,
				height: height,
				item: iL.items[vars.current],
				offsetW: offsetW,
				offsetH: offsetH,
				thumbsOffsetW: thumbsOffsetW,
				thumbsOffsetH: thumbsOffsetH,
				animate: arguments.length,
				holder: vars.holder
			};

			iL.repositionEl(elObject);

			if (iL.items[vars.next]) {
				elObject = $.extend(elObject, {
					type: 'next',
					item: iL.items[vars.next],
					offsetX: opts.styles.nextOffsetX,
					offsetY: opts.styles.nextOffsetY,
					holder: vars.nextPhoto
				});

				iL.repositionEl(elObject);
			}

			if (iL.items[vars.prev]) {
				elObject = $.extend(elObject, {
					type: 'prev',
					item: iL.items[vars.prev],
					offsetX: opts.styles.prevOffsetX,
					offsetY: opts.styles.prevOffsetY,
					holder: vars.prevPhoto
				});

				iL.repositionEl(elObject);
			}

			var loaderCss = (path == "horizontal") ? {
				left: parseInt((width / 2) - (vars.loader.outerWidth() / 2))
			} : {
				top: parseInt((height / 2) - (vars.loader.outerHeight() / 2))
			};
			vars.loader.css(loaderCss);
		},

		repositionEl: function(obj) {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				path = opts.path.toLowerCase(),
				widthAvail = (obj.type == 'current') ? ((vars.isInFullScreen && opts.fullAlone) ? obj.width : (obj.width - obj.offsetW)) : (obj.width - obj.offsetW),
				heightAvail = (obj.type == 'current') ? ((vars.isInFullScreen && opts.fullAlone) ? obj.height : (obj.height - obj.offsetH)) : (obj.height - obj.offsetH),
				itemParent = obj.item,
				item = obj.item.options,
				holder = obj.holder,
				offsetX = obj.offsetX || 0,
				offsetY = obj.offsetY || 0,
				thumbsOffsetW = obj.thumbsOffsetW,
				thumbsOffsetH = obj.thumbsOffsetH;

			if (obj.type == 'current') {
				if (typeof item.width == 'number' && item.width) { widthAvail = ((vars.isInFullScreen && opts.fullAlone) && (opts.fullStretchTypes.indexOf(itemParent.type) != -1 || item.fullViewPort || opts.fullViewPort)) ? widthAvail : ((item.width > widthAvail) ? widthAvail : item.width);
				}
				if (typeof item.height == 'number' && item.height) { heightAvail = ((vars.isInFullScreen && opts.fullAlone) && (opts.fullStretchTypes.indexOf(itemParent.type) != -1 || item.fullViewPort || opts.fullViewPort)) ? heightAvail : ((item.height > heightAvail) ? heightAvail : item.height);
				}
			} else {
				if (typeof item.width == 'number' && item.width) { widthAvail = (item.width > widthAvail) ? widthAvail : item.width; }
				if (typeof item.height == 'number' && item.height) { heightAvail = (item.height > heightAvail) ? heightAvail : item.height; }
			}

			heightAvail = parseInt(heightAvail - $('.ilightbox-inner-toolbar', holder).outerHeight());

			var width = (typeof item.width == 'string' && item.width.indexOf('%') != -1) ? percentToValue(parseInt(item.width.replace('%', '')), obj.width) : holder.data('naturalWidth'),
				height = (typeof item.height == 'string' && item.height.indexOf('%') != -1) ? percentToValue(parseInt(item.height.replace('%', '')), obj.height) : holder.data('naturalHeight');

			var dims = ((typeof item.width == 'string' && item.width.indexOf('%') != -1 || typeof item.height == 'string' && item.height.indexOf('%') != -1) ? {
					width: width,
					height: height
				} : iL.getNewDimenstions(widthAvail, heightAvail, width, height)),
				newDims = $.extend({}, dims, {});

			if (obj.type == 'prev' || obj.type == 'next') {
				width = parseInt(dims.width * ((obj.type == 'next') ? opts.styles.nextScale : opts.styles.prevScale)),
				height = parseInt(dims.height * ((obj.type == 'next') ? opts.styles.nextScale : opts.styles.prevScale));
			} else {
				width = dims.width,
				height = dims.height;
			}

			var widthDiff = parseInt((getPixel(holder, 'padding-left') + getPixel(holder, 'padding-right') + getPixel(holder, 'border-left-width') + getPixel(holder, 'border-right-width')) / 2),
				heightDiff = parseInt((getPixel(holder, 'padding-top') + getPixel(holder, 'padding-bottom') + getPixel(holder, 'border-top-width') + getPixel(holder, 'border-bottom-width') + $('.ilightbox-inner-toolbar', holder).outerHeight()) / 2);

			switch (obj.type) {
				case 'current':
					var top = parseInt((obj.height / 2) - (height / 2) - heightDiff - (thumbsOffsetH / 2)),
						left = parseInt((obj.width / 2) - (width / 2) - widthDiff - (thumbsOffsetW / 2));
					break;

				case 'next':
					var top = (path == 'horizontal') ? parseInt((obj.height / 2) - offsetY - (height / 2) - heightDiff - (thumbsOffsetH / 2)) : parseInt(obj.height - offsetX - heightDiff - (thumbsOffsetH / 2)),
						left = (path == 'horizontal') ? parseInt(obj.width - offsetX - widthDiff - (thumbsOffsetW / 2)) : parseInt((obj.width / 2) - (width / 2) - widthDiff - offsetY - (thumbsOffsetW / 2));
					break;

				case 'prev':
					var top = (path == 'horizontal') ? parseInt((obj.height / 2) - offsetY - (height / 2) - heightDiff - (thumbsOffsetH / 2)) : parseInt(offsetX - heightDiff - height - (thumbsOffsetH / 2)),
						left = (path == 'horizontal') ? parseInt(offsetX - widthDiff - width - (thumbsOffsetW / 2)) : parseInt((obj.width / 2) - offsetY - (width / 2) - widthDiff - (thumbsOffsetW / 2));
					break;
			}

			holder.data('offset', {
				top: top,
				left: left,
				newDims: newDims,
				diff: {
					W: widthDiff,
					H: heightDiff
				},
				thumbsOffset: {
					W: thumbsOffsetW,
					H: thumbsOffsetH
				},
				object: obj
			});

			if (obj.animate > 0 && opts.effects.reposition) {
				holder.css(transform, gpuAcceleration).stop().animate({
					top: top,
					left: left
				}, opts.effects.repositionSpeed, 'easeOutCirc', function() {
					holder.css(transform, '');
				});
				$('div.ilightbox-container', holder).stop().animate({
					width: width,
					height: height
				}, opts.effects.repositionSpeed, 'easeOutCirc');
				$('div.ilightbox-inner-toolbar', holder).stop().animate({
					width: width
				}, opts.effects.repositionSpeed, 'easeOutCirc', function() {
					$(this).css('overflow', 'visible');
				});
			} else {
				holder.css({
					top: top,
					left: left
				});
				$('div.ilightbox-container', holder).css({
					width: width,
					height: height
				});
				$('div.ilightbox-inner-toolbar', holder).css({
					width: width
				});
			}
		},

		resume: function(priority) {
			var iL = this,
				vars = iL.vars,
				opts = iL.options;

			if (!opts.slideshow.pauseTime || opts.controls.slideshow && vars.total <= 1 || priority < vars.isPaused) {
				return;
			}

			vars.isPaused = 0;

			if (vars.cycleID) {
				vars.cycleID = clearTimeout(vars.cycleID);
			}

			vars.cycleID = setTimeout(function() {
				if (vars.current == vars.total - 1) { iL.goTo(0); }
				else { iL.moveTo('next'); }
			}, opts.slideshow.pauseTime);
		},

		pause: function(priority) {
			var iL = this,
				vars = iL.vars,
				opts = iL.options;

			if (priority < vars.isPaused) {
				return;
			}

			vars.isPaused = priority || 100;

			if (vars.cycleID) {
				vars.cycleID = clearTimeout(vars.cycleID);
			}
		},

		resetCycle: function() {
			var iL = this,
				vars = iL.vars,
				opts = iL.options;

			if (opts.controls.slideshow && vars.cycleID && !vars.isPaused) {
				iL.resume();
			}
		},

		getNewDimenstions: function(width, height, width_old, height_old, thumb) {
			var iL = this;

			if (!width) { factor = height / height_old; }
			else if (!height) { factor = width / width_old; }
			else { factor = min(width / width_old, height / height_old); }

			if (!thumb) {
				if (factor > iL.options.maxScale) { factor = iL.options.maxScale; }
				else if (factor < iL.options.minScale) { factor = iL.options.minScale; }
			}

			var final_width = (iL.options.keepAspectRatio) ? round(width_old * factor) : width,
				final_height = (iL.options.keepAspectRatio) ? round(height_old * factor) : height;

			return {
				width: final_width,
				height: final_height,
				ratio: factor
			};
		},

		setOption: function(options) {
			var iL = this;

			iL.options = $.extend(true, iL.options, options || {});
			iL.refresh();
		},

		availPlugins: function() {
			var iL = this,
				testEl = document.createElement("video");

			iL.plugins = {
				flash: (parseInt(PluginDetect.getVersion("Shockwave")) >= 0 || parseInt(PluginDetect.getVersion("Flash")) >= 0) ? true : false,
				quicktime: (parseInt(PluginDetect.getVersion("QuickTime")) >= 0) ? true : false,
				html5H264: !!(testEl.canPlayType && testEl.canPlayType('video/mp4').replace(/no/, '')),
				html5WebM: !!(testEl.canPlayType && testEl.canPlayType('video/webm').replace(/no/, '')),
				html5Vorbis: !!(testEl.canPlayType && testEl.canPlayType('video/ogg').replace(/no/, '')),
				html5QuickTime: !!(testEl.canPlayType && testEl.canPlayType('video/quicktime').replace(/no/, ''))
			};
		},

		addContent: function(element, obj) {
			var iL = this,
				el;

			switch (obj.type) {
				case 'video':
					var HTML5 = false,
						videoType = obj.videoType,
						html5video = obj.options.html5video;

					if (((videoType == 'video/mp4' || obj.ext == 'mp4' || obj.ext == 'm4v') || html5video.h264) && iL.plugins.html5H264) {
						obj.ext = 'mp4',
						obj.URL = html5video.h264 || obj.URL;
					} else if (html5video.webm && iL.plugins.html5WebM) {
						obj.ext = 'webm',
						obj.URL = html5video.webm || obj.URL;
					} else if (html5video.ogg && iL.plugins.html5Vorbis) {
						obj.ext = 'ogv',
						obj.URL = html5video.ogg || obj.URL;
					}

					if (iL.plugins.html5H264 && (videoType == 'video/mp4' || obj.ext == 'mp4' || obj.ext == 'm4v')) { HTML5 = true, videoType = "video/mp4"; }
					else if (iL.plugins.html5WebM && (videoType == 'video/webm' || obj.ext == 'webm')) { HTML5 = true, videoType = "video/webm"; }
					else if (iL.plugins.html5Vorbis && (videoType == 'video/ogg' || obj.ext == 'ogv')) { HTML5 = true, videoType = "video/ogg"; }
					else if (iL.plugins.html5QuickTime && (videoType == 'video/quicktime' || obj.ext == 'mov' || obj.ext == 'qt')) { HTML5 = true, videoType = "video/quicktime"; }

					if (HTML5) {
						el = $('<video />', {
							"width": "100%",
							"height": "100%",
							"preload": html5video.preload,
							"autoplay": html5video.autoplay,
							"poster": html5video.poster,
							"controls": html5video.controls
						}).append($('<source />', {
							"src": obj.URL,
							"type": videoType
						}));
					} else {
						if (!iL.plugins.quicktime) { el = $('<span />', {
							"class": "ilightbox-alert",
							html: iL.options.errors.missingPlugin.replace('{pluginspage}', pluginspages.quicktime).replace('{type}', 'QuickTime')
						});
						} else {

							el = $('<object />', {
								"type": "video/quicktime",
								"pluginspage": pluginspages.quicktime
							}).attr({
								"data": obj.URL,
								"width": "100%",
								"height": "100%"
							}).append($('<param />', {
								"name": "src",
								"value": obj.URL
							})).append($('<param />', {
								"name": "autoplay",
								"value": "false"
							})).append($('<param />', {
								"name": "loop",
								"value": "false"
							})).append($('<param />', {
								"name": "scale",
								"value": "tofit"
							}));

							if (browser.msie) { el = QT_GenerateOBJECTText(obj.URL, '100%', '100%', '', 'SCALE', 'tofit', 'AUTOPLAY', 'false', 'LOOP', 'false'); }
						}
					}

					break;

				case 'flash':
					if (!iL.plugins.flash) { el = $('<span />', {
						"class": "ilightbox-alert",
						html: iL.options.errors.missingPlugin.replace('{pluginspage}', pluginspages.flash).replace('{type}', 'Adobe Flash player')
					});
					} else {
						var flashvars = "",
							i = 0;

						if (obj.options.flashvars) { $.each(obj.options.flashvars, function(k, v) {
							if (i != 0) flashvars += "&";
							flashvars += k + "=" + encodeURIComponent(v);
							i++;
						});
						} else { flashvars = null; }

						el = $('<embed />').attr({
							"type": "application/x-shockwave-flash",
							"src": obj.URL,
							"width": (typeof obj.options.width == 'number' && obj.options.width && iL.options.minScale == '1' && iL.options.maxScale == '1') ? obj.options.width : "100%",
							"height": (typeof obj.options.height == 'number' && obj.options.height && iL.options.minScale == '1' && iL.options.maxScale == '1') ? obj.options.height : "100%",
							"quality": "high",
							"bgcolor": "#000000",
							"play": "true",
							"loop": "true",
							"menu": "true",
							"wmode": "transparent",
							"scale": "showall",
							"allowScriptAccess": "always",
							"allowFullScreen": "true",
							"flashvars": flashvars,
							"fullscreen": "yes"
						});
					}

					break;

				case 'iframe':
					// ThemeFusion edit for Avada theme: added possibility to add autoplay and rel as part of query string for videos
					var $query_array = obj.URL.substring( obj.URL.indexOf( '?' ) + 1 ).split( '&' ),
						$query_object = {},
						$query_string = '?';

					for ( var $i = 0; $i < $query_array.length; ++$i ) {
						var $single_query = $query_array[$i].split( '=' );
						if ( $single_query.length != 2 ) continue;

						$query_object[$single_query[0]] = decodeURIComponent( $single_query[1].replace( /\+/g, " " ) );
					}

					$query_string += ( $query_object['autoplay'] !== undefined ) ? '&autoplay=' + $query_object['autoplay'] : '';
					$query_string += ( $query_object['rel'] !== undefined ) ? '&rel=' + $query_object['rel'] : '';

					// ThemeFusion edit for Avada theme: short url support for videos
					if ( obj.URL.indexOf( 'vimeo.com' ) != -1 ) {
						// For vimeo videos, also support urls like https://vimeo.com/8245346
						var $reg_exp = /http(s?):\/\/(www\.)?vimeo.com\/(\d+)/;
						var $match = obj.URL.match( $reg_exp );

						if ( $match ) {
							var $movie = '//player.vimeo.com/video/'+ $match[3] +'?title=0&amp;byline=0&amp;portrait=0' + $query_string;
						} else {
							var $movie = obj.URL;
						}
					} else {
						// For youtube videos, also support urls like http://youtu.be/hsEUBLIJvmE
						var $reg_exp =  /^.*((youtu.be\/)|(v\/)|(\/u\/\w\/)|(embed\/)|(watch\?))\??v?=?([^#\&\?]*).*/;
						var $match = obj.URL.match( $reg_exp );

						if ( $match ) {
							var $movie = '//www.youtube.com/embed/' + $match[7] + $query_string;
						} else {
							var $movie = obj.URL;
						}
					}


					// End Edit

					el = $('<iframe />').attr({
						"width": (typeof obj.options.width == 'number' && obj.options.width && iL.options.minScale == '1' && iL.options.maxScale == '1') ? obj.options.width : "100%",
						"height": (typeof obj.options.height == 'number' && obj.options.height && iL.options.minScale == '1' && iL.options.maxScale == '1') ? obj.options.height : "100%",
						src: $movie,
						frameborder: 0,
						'hspace': 0,
						'vspace': 0,
						'scrolling': supportTouch ? 'auto' : 'scroll',
						'webkitAllowFullScreen': '',
						'mozallowfullscreen': '',
						'allowFullScreen': ''
					});

					break;

				case 'inline':
					el = $('<div class="ilightbox-wrapper"></div>').html($(obj.URL).clone(true));

					break;

				case 'html':
					var object = obj.URL,
						el;

					if (object[0].nodeName) {
						el = $('<div class="ilightbox-wrapper"></div>').html(object);
					} else {
						var dom = $(obj.URL),
							html = (dom.selector) ? $('<div>' + dom + '</div>') : dom;
						el = $('<div class="ilightbox-wrapper"></div>').html(html);
					}

					break;
			}

			$('div.ilightbox-container', element).empty().html(el);

			// For fixing Chrome about just playing the video for first time
			if (el[0].tagName.toLowerCase() === 'video' && browser.webkit) { setTimeout(function() {
				var src = el[0].currentSrc + '?' + floor(random() * 30000);
				el[0].currentSrc = src;
				el[0].src = src;
			});
			}

			return el;
		},

		ogpRecognition: function(obj, callback) {
			var iL = this,
				url = obj.URL;

			iL.showLoader();
			doAjax(url, function(data) {
				iL.hideLoader();

				if (data) {
					var object = new Object();

					object.length = false,
					object.url = data.url;

					if (data.status == 200) {
						var result = data.results,
							type = result.type,
							source = result.source;

						object.type = type,
						object.html5video = result.html5video || {},
						object.length = true;

						if( result.images ) {
							object.thumbnail = result.images[0];
						}

						if( source ) {

							object.source = source.src,
							object.width = source.width && parseInt(source.width) || 0,
							object.height = source.height && parseInt(source.height) || 0,
							object.thumbnail = source.thumbnail;

							if (source.type == 'application/x-shockwave-flash') { object.type = "flash"; }
							else if (source.type.indexOf("video/") != -1) { object.type = "video"; }
							else if (source.type.indexOf("/html") != -1) { object.type = "iframe"; }
							else if (source.type.indexOf("image/") != -1) { object.type = "image"; }
						}

					} else if (typeof data.response != 'undefined') {
						throw data.response;
					}

					callback.call(this, object.length ? object : false);
				}
			});
		},

		hashChangeHandler: function(url) {
			var iL = this,
				vars = iL.vars,
				opts = iL.options,
				URL = url || window.location.href,
				hash = parseURI(URL).hash,
				split = hash.split('/'),
				index = split[1];

			if (vars.hashLock || ('#' + opts.linkId != split[0] && hash.length > 1)) { return; }

			if (index) {
				var target = split[1] || 0;
				if (iL.items[target]) {
					var overlay = $('.ilightbox-overlay');
					if (overlay.length && overlay.attr('linkid') == opts.linkId) {
						iL.goTo(target);
					} else {
						iL.itemsObject[target].trigger(supportTouch ? 'itap' : 'click');
					}
				} else {
					var overlay = $('.ilightbox-overlay');
					if (overlay.length) { iL.closeAction(); }
				}
			} else {
				var overlay = $('.ilightbox-overlay');
				if (overlay.length) { iL.closeAction(); }
			}
		}
	};

	/**
	 * Parse style to pixels.
	 *
	 * @param {Object}   $element   jQuery object with element.
	 * @param {Property} property   CSS property to get the pixels from.
	 *
	 * @return {Int}
	 */
	function getPixel($element, property) {
		return parseInt($element.css(property), 10) || 0;
	}

	/**
	 * Make sure that number is within the limits.
	 *
	 * @param {Number} number
	 * @param {Number} min
	 * @param {Number} max
	 *
	 * @return {Number}
	 */
	function within(number, min, max) {
		return number < min ? min : number > max ? max : number;
	}

	/**
	 * Get viewport/window size (width and height).
	 *
	 * @return {Object}
	 */
	function getViewport() {
		var e = window,
			a = 'inner';
		if (!('innerWidth' in window)) {
			a = 'client';
			e = document.documentElement || document.body;
		}
		return {
			width: e[a + 'Width'],
			height: e[a + 'Height']
		}
	}

	/**
	 * Remove hash tag from the URL
	 *
	 * @return {Void}
	 */
	function removeHash() {

		// ThemeFusion edit for Avada theme: the original removeHash approach makes old IE versions shake. So we just use a HTML5 browser feature for removal and leave old IEs unaltered
		if ( history && history.pushState ) {
			history.pushState('', document.title, window.location.pathname + window.location.search);
		}

		/*
		var scroll = getScrollXY();

		window.location.hash = "";

		// Restore the scroll offset, should be flicker free
		window.scrollTo(scroll.x, scroll.y);
		*/
	}

	/**
	 * Do the ajax requests with callback.
	 *
	 * @param {String}   url
	 * @param {Function} callback
	 *
	 * @return {Void}
	 */
	function doAjax(url, callback) {
		var url = "http://ilightbox.net/getSource/jsonp.php?url=" + encodeURIComponent(url).replace(/!/g, '%21').replace(/'/g, '%27').replace(/\(/g, '%28').replace(/\)/g, '%29').replace(/\*/g, '%2A');
		$.ajax({
			url: url,
			dataType: 'jsonp'
		});

		iLCallback = function(data) {
			callback.call(this, data);
		};
	}

	/**
	 * Find image from DOM elements
	 *
	 * @param {Element} element
	 *
	 * @return {Void}
	 */
	function findImageInElement(element) {
		var elements = $('*', element),
			imagesArr = new Array();

		elements.each(function() {
			var url = "",
				element = this;

			if ($(element).css("background-image") != "none") {
				url = $(element).css("background-image");
			} else if (typeof($(element).attr("src")) != "undefined" && element.nodeName.toLowerCase() == "img") {
				url = $(element).attr("src");
			}

			if (url.indexOf("gradient") == -1) {
				url = url.replace(/url\(\"/g, "");
				url = url.replace(/url\(/g, "");
				url = url.replace(/\"\)/g, "");
				url = url.replace(/\)/g, "");

				var urls = url.split(",");

				for (var i = 0; i < urls.length; i++) {
					if (urls[i].length > 0 && $.inArray(urls[i], imagesArr) == -1) {
						var extra = "";
						if (browser.msie && browser.version < 9) {
							extra = "?" + floor(random() * 3000);
						}
						imagesArr.push(urls[i] + extra);
					}
				}
			}
		});

		return imagesArr;
	}

	/**
	 * Get file extension.
	 *
	 * @param {String} URL
	 *
	 * @return {String}
	 */
	function getExtension(URL) {
		var ext = ( URL ) ? URL.split('.').pop().toLowerCase() : '',
			extra = ext.indexOf('?') !== -1 ? '?' + ext.split('?').pop() : ''; // ThemeFusion edit for Avada theme: added the ? sign in front of the extra string to ensure it works correctly

		return ext.replace(extra, '');
	}

	/**
	 * Get type via extension.
	 *
	 * @param {String} URL
	 *
	 * @return {String}
	 */
	function getTypeByExtension(URL) {
		var type,
			ext = getExtension(URL);

		if (extensions.image.indexOf(ext) !== -1) { type = 'image'; }
		else if (extensions.flash.indexOf(ext) !== -1) { type = 'flash'; }
		else if (extensions.video.indexOf(ext) !== -1) { type = 'video'; }
		else { type = 'iframe'; }

		return type;
	}

	/**
	 * Return value from percent of a number.
	 *
	 * @param {Number} percent
	 * @param {Number} total
	 *
	 * @return {Number}
	 */
	function percentToValue(percent, total) {
		return parseInt((total / 100) * percent);
	}

	/**
	 * A JavaScript equivalent of PHP’s parse_url.
	 *
	 * @param {String} url           The URL to parse.
	 *
	 * @return {Mixed}
	 */
	function parseURI(url) {
		var m = String(url).replace(/^\s+|\s+$/g, '').match(/^([^:\/?#]+:)?(\/\/(?:[^:@]*(?::[^:@]*)?@)?(([^:\/?#]*)(?::(\d*))?))?([^?#]*)(\?[^#]*)?(#[\s\S]*)?/);
		// authority = '//' + user + ':' + pass '@' + hostname + ':' port
		return (m ? {
			href: m[0] || '',
			protocol: m[1] || '',
			authority: m[2] || '',
			host: m[3] || '',
			hostname: m[4] || '',
			port: m[5] || '',
			pathname: m[6] || '',
			search: m[7] || '',
			hash: m[8] || ''
		} : null);
	}

	/**
	 * Gets the absolute URI.
	 *
	 * @param {String} href     The relative URL.
	 * @param {String} base     The base URL.
	 *
	 * @return {String}         The absolute URL.
	 */
	function absolutizeURI(base, href) { // RFC 3986
		var iL = this;

		function removeDotSegments(input) {
			var output = [];
			input.replace(/^(\.\.?(\/|$))+/, '')
				.replace(/\/(\.(\/|$))+/g, '/')
				.replace(/\/\.\.$/, '/../')
				.replace(/\/?[^\/]*/g, function(p) {
					if (p === '/..') {
						output.pop();
					} else {
						output.push(p);
					}
				});
			return output.join('').replace(/^\//, input.charAt(0) === '/' ? '/' : '');
		}

		href = parseURI(href || '');
		base = parseURI(base || '');

		return !href || !base ? null : (href.protocol || base.protocol) +
			(href.protocol || href.authority ? href.authority : base.authority) +
			removeDotSegments(href.protocol || href.authority || href.pathname.charAt(0) === '/' ? href.pathname : (href.pathname ? ((base.authority && !base.pathname ? '/' : '') + base.pathname.slice(0, base.pathname.lastIndexOf('/') + 1) + href.pathname) : base.pathname)) +
			(href.protocol || href.authority || href.pathname ? href.search : (href.search || base.search)) +
			href.hash;
	}

	/**
	 * A JavaScript equivalent of PHP’s version_compare.
	 *
	 * @param {String} v1
	 * @param {String} v2
	 * @param {String} operator
	 *
	 * @return {Boolean}
	 */
	function version_compare(v1, v2, operator) {
		this.php_js = this.php_js || {};
		this.php_js.ENV = this.php_js.ENV || {};
		var i = 0,
			x = 0,
			compare = 0,
			vm = {
				'dev': -6,
				'alpha': -5,
				'a': -5,
				'beta': -4,
				'b': -4,
				'RC': -3,
				'rc': -3,
				'#': -2,
				'p': 1,
				'pl': 1
			},
			prepVersion = function(v) {
				v = ('' + v).replace(/[_\-+]/g, '.');
				v = v.replace(/([^.\d]+)/g, '.$1.').replace(/\.{2,}/g, '.');
				return (!v.length ? [-8] : v.split('.'));
			},
			numVersion = function(v) {
				return !v ? 0 : (isNaN(v) ? vm[v] || -7 : parseInt(v, 10));
			};
		v1 = prepVersion(v1);
		v2 = prepVersion(v2);
		x = max(v1.length, v2.length);
		for (i = 0; i < x; i++) {
			if (v1[i] == v2[i]) {
				continue;
			}
			v1[i] = numVersion(v1[i]);
			v2[i] = numVersion(v2[i]);
			if (v1[i] < v2[i]) {
				compare = -1;
				break;
			} else if (v1[i] > v2[i]) {
				compare = 1;
				break;
			}
		}
		if (!operator) {
			return compare;
		}

		switch (operator) {
			case '>':
			case 'gt':
				return (compare > 0);
			case '>=':
			case 'ge':
				return (compare >= 0);
			case '<=':
			case 'le':
				return (compare <= 0);
			case '==':
			case '=':
			case 'eq':
				return (compare === 0);
			case '<>':
			case '!=':
			case 'ne':
				return (compare !== 0);
			case '':
			case '<':
			case 'lt':
				return (compare < 0);
			default:
				return null;
		}
	}


	// Begin the iLightBox plugin
	$.fn.iLightBox = function() {

		var args = arguments,
			opt = ($.isPlainObject(args[0])) ? args[0] : args[1],
			items = ($.isArray(args[0]) || typeof args[0] == 'string') ? args[0] : args[1];

		if (!opt) { opt = {}; }

		// Default options. Play carefully.
		var options = $.extend(true, {
			attr: 'href',
			path: 'vertical',
			skin: 'dark',
			linkId: false,
			infinite: false,
			startFrom: 0,
			randomStart: false,
			keepAspectRatio: true,
			maxScale: 1,
			minScale: .2,
			innerToolbar: false,
			smartRecognition: false,
			mobileOptimizer: true,
			fullAlone: true,
			fullViewPort: null,
			fullStretchTypes: 'flash, video',
			overlay: {
				blur: true,
				opacity: .85
			},
			controls: {
				arrows: false,
				slideshow: false,
				toolbar: true,
				fullscreen: true,
				thumbnail: true,
				keyboard: true,
				mousewheel: true,
				swipe: true
			},
			keyboard: {
				left: true, // previous
				right: true, // next
				up: true, // previous
				down: true, // next
				esc: true, // close
				shift_enter: true // fullscreen
			},
			show: {
				effect: true,
				speed: 300,
				title: true
			},
			hide: {
				effect: true,
				speed: 300
			},
			caption: {
				start: true,
				show: 'mouseenter',
				hide: 'mouseleave'
			},
			social: {
				start: true,
				show: 'mouseenter',
				hide: 'mouseleave',
				buttons: false
			},
			styles: {
				pageOffsetX: 0,
				pageOffsetY: 0,
				nextOffsetX: 45,
				nextOffsetY: 0,
				nextOpacity: 1,
				nextScale: 1,
				prevOffsetX: 45,
				prevOffsetY: 0,
				prevOpacity: 1,
				prevScale: 1
			},
			thumbnails: {
				maxWidth: 120,
				maxHeight: 80,
				normalOpacity: 1,
				activeOpacity: .6
			},
			effects: {
				reposition: true,
				repositionSpeed: 200,
				switchSpeed: 500,
				loadedFadeSpeed: 180,
				fadeSpeed: 200
			},
			slideshow: {
				pauseTime: 5000,
				pauseOnHover: false,
				startPaused: true
			},
			text: {
				close: "Press Esc to close",
				enterFullscreen: "Enter Fullscreen (Shift+Enter)",
				exitFullscreen: "Exit Fullscreen (Shift+Enter)",
				slideShow: "Slideshow",
				next: "Next",
				previous: "Previous"
			},
			errors: {
				loadImage: "An error occurred when trying to load photo.",
				loadContents: "An error occurred when trying to load contents.",
				missingPlugin: "The content your are attempting to view requires the <a href='{pluginspage}' target='_blank'>{type} plugin<\/a>."
			},
			ajaxSetup: {
				url: '',
				beforeSend: function(jqXHR, settings) {},
				cache: false,
				complete: function(jqXHR, textStatus) {},
				crossDomain: false,
				error: function(jqXHR, textStatus, errorThrown) {},
				success: function(data, textStatus, jqXHR) {},
				global: true,
				ifModified: false,
				username: null,
				password: null,
				type: 'GET'
			},
			callback: {}
		}, opt);

		var instant = ($.isArray(items) || typeof items == 'string') ? true : false;

		items = $.isArray(items) ? items : new Array();

		if (typeof args[0] == 'string') { items[0] = args[0]; }

		if (version_compare($.fn.jquery, '1.8', '>=')) {
			var iLB = new iLightBox($(this), options, items, instant);
			return {
				close: function() {
					iLB.closeAction();
				},
				fullscreen: function() {
					iLB.fullScreenAction();
				},
				moveNext: function() {
					iLB.moveTo('next');
				},
				movePrev: function() {
					iLB.moveTo('prev');
				},
				goTo: function(index) {
					iLB.goTo(index);
				},
				refresh: function() {
					iLB.refresh();
				},
				reposition: function() {
					(arguments.length > 0) ? iLB.repositionPhoto(true): iLB.repositionPhoto();
				},
				setOption: function(options) {
					iLB.setOption(options);
				},
				destroy: function() {
					iLB.closeAction();
					iLB.dispatchItemsEvents();
				}
			};
		} else {
			throw "The jQuery version that was loaded is too old. iLightBox requires jQuery 1.8+";
		}

	};


	$.iLightBox = function() {
		return $.fn.iLightBox(arguments[0], arguments[1]);
	};


	$.extend($.easing, {
		easeInCirc: function(x, t, b, c, d) {
			return -c * (sqrt(1 - (t /= d) * t) - 1) + b;
		},
		easeOutCirc: function(x, t, b, c, d) {
			return c * sqrt(1 - (t = t / d - 1) * t) + b;
		},
		easeInOutCirc: function(x, t, b, c, d) {
			if ((t /= d / 2) < 1) { return -c / 2 * (sqrt(1 - t * t) - 1) + b; }
			return c / 2 * (sqrt(1 - (t -= 2) * t) + 1) + b;
		}
	});

	function getScrollXY() {
		var scrOfX = 0,
			scrOfY = 0;
		if (typeof(window.pageYOffset) == 'number') {
			//Netscape compliant
			scrOfY = window.pageYOffset;
			scrOfX = window.pageXOffset;
		} else if (document.body && (document.body.scrollLeft || document.body.scrollTop)) {
			//DOM compliant
			scrOfY = document.body.scrollTop;
			scrOfX = document.body.scrollLeft;
		} else if (document.documentElement && (document.documentElement.scrollLeft || document.documentElement.scrollTop)) {
			//IE6 standards compliant mode
			scrOfY = document.documentElement.scrollTop;
			scrOfX = document.documentElement.scrollLeft;
		}
		return {
			x: scrOfX,
			y: scrOfY
		};
	}

	(function() {
		// add new event shortcuts
		$.each(("touchstart touchmove touchend " +
			"tap taphold " +
			"swipeleft swiperight " + // ThemeFusion edit for Avada theme: delete "swipe" keyword
			"scrollstart scrollstop").split(" "), function(i, name) {

			$.fn[name] = function(fn) {
				return fn ? this.bind(name, fn) : this.trigger(name);
			};

			// jQuery < 1.8
			if ($.attrFn) {
				$.attrFn[name] = true;
			}
		});

		var tapSettings = {
			startEvent: 'touchstart.iTap',
			endEvent: 'touchend.iTap'
		};

		// tap Event:
		$.event.special.itap = {
			setup: function() {

				var self = this,
					$self = $(this),
					start, stop;

				$self.bind(tapSettings.startEvent, function(event) {
					start = getScrollXY();

					$self.one(tapSettings.endEvent, function(event) {
						stop = getScrollXY();

						var orgEvent = event || window.event;
						event = $.event.fix(orgEvent);
						event.type = "itap";

						if ((start && stop) && (start.x == stop.x && start.y == stop.y))($.event.dispatch || $.event.handle).call(self, event);

						start = stop = undefined;
					});
				});
			},

			teardown: function() {
				$(this).unbind(tapSettings.startEvent);
			}
		};
	}());


	//Fullscreen API
	(function() {
		fullScreenApi = {
				supportsFullScreen: false,
				isFullScreen: function() {
					return false;
				},
				requestFullScreen: function() {},
				cancelFullScreen: function() {},
				fullScreenEventName: '',
				prefix: ''
			},
			browserPrefixes = 'webkit moz o ms khtml'.split(' ');

		// check for native support
		if (typeof document.cancelFullScreen != 'undefined') {
			fullScreenApi.supportsFullScreen = true;
		} else {
			// check for fullscreen support by vendor prefix
			for (var i = 0, il = browserPrefixes.length; i < il; i++) {
				fullScreenApi.prefix = browserPrefixes[i];

				if (typeof document[fullScreenApi.prefix + 'CancelFullScreen'] != 'undefined') {
					fullScreenApi.supportsFullScreen = true;

					break;
				}
			}
		}

		// update methods to do something useful
		if (fullScreenApi.supportsFullScreen) {
			fullScreenApi.fullScreenEventName = fullScreenApi.prefix + 'fullscreenchange';

			fullScreenApi.isFullScreen = function() {
				switch (this.prefix) {
					case '':
						return document.fullScreen;
					case 'webkit':
						return document.webkitIsFullScreen;
					default:
						return document[this.prefix + 'FullScreen'];
				}
			};

			fullScreenApi.requestFullScreen = function(el) {
				return (this.prefix === '') ? el.requestFullScreen() : el[this.prefix + 'RequestFullScreen']();
			};
			fullScreenApi.cancelFullScreen = function(el) {
				return (this.prefix === '') ? document.cancelFullScreen() : document[this.prefix + 'CancelFullScreen']();
			};
		}
	}());

	// Browser detect
	(function() {
		function uaMatch(ua) {
			ua = ua.toLowerCase();

			var match = /(chrome)[ \/]([\w.]+)/.exec(ua) ||
				/(webkit)[ \/]([\w.]+)/.exec(ua) ||
				/(opera)(?:.*version|)[ \/]([\w.]+)/.exec(ua) ||
				/(msie) ([\w.]+)/.exec(ua) ||
				ua.indexOf("compatible") < 0 && /(mozilla)(?:.*? rv:([\w.]+)|)/.exec(ua) || [];

			return {
				browser: match[1] || "",
				version: match[2] || "0"
			};
		}

		var matched = uaMatch(navigator.userAgent);
		browser = {};

		if (matched.browser) {
			browser[matched.browser] = true;
			browser.version = matched.version;
		}

		// Chrome is Webkit, but Webkit is also Safari.
		if (browser.chrome) {
			browser.webkit = true;
		} else if (browser.webkit) {
			browser.safari = true;
		}
	}());

	// Feature detects
	(function() {
		var prefixes = ['', 'webkit', 'moz', 'ms', 'o'];
		var el = document.createElement('div');

		function testProp(prop) {
			for (var p = 0, pl = prefixes.length; p < pl; p++) {
				var prefixedProp = prefixes[p] ? prefixes[p] + prop.charAt(0).toUpperCase() + prop.slice(1) : prop;
				if (el.style[prefixedProp] !== undefined) {
					return prefixedProp;
				}
			}
		}

		// Global support indicators
		transform = testProp('transform') || '';
		gpuAcceleration = testProp('perspective') ? 'translateZ(0) ' : '';
	}());


	/*
		PluginDetect v0.7.9
		www.pinlady.net/PluginDetect/license/
		[ getVersion onWindowLoaded BetterIE ]
		[ Flash QuickTime Shockwave ]
	*/
	var PluginDetect={version:"0.7.9",name:"PluginDetect",handler:function(c,b,a){return function(){c(b,a)}},openTag:"<",isDefined:function(b){return typeof b!="undefined"},isArray:function(b){return(/array/i).test(Object.prototype.toString.call(b))},isFunc:function(b){return typeof b=="function"},isString:function(b){return typeof b=="string"},isNum:function(b){return typeof b=="number"},isStrNum:function(b){return(typeof b=="string"&&(/\d/).test(b))},getNumRegx:/[\d][\d\.\_,-]*/,splitNumRegx:/[\.\_,-]/g,getNum:function(b,c){var d=this,a=d.isStrNum(b)?(d.isDefined(c)?new RegExp(c):d.getNumRegx).exec(b):null;return a?a[0]:null},compareNums:function(h,f,d){var e=this,c,b,a,g=parseInt;if(e.isStrNum(h)&&e.isStrNum(f)){if(e.isDefined(d)&&d.compareNums){return d.compareNums(h,f)}c=h.split(e.splitNumRegx);b=f.split(e.splitNumRegx);for(a=0;a<min(c.length,b.length);a++){if(g(c[a],10)>g(b[a],10)){return 1}if(g(c[a],10)<g(b[a],10)){return -1}}}return 0},formatNum:function(b,c){var d=this,a,e;if(!d.isStrNum(b)){return null}if(!d.isNum(c)){c=4}c--;e=b.replace(/\s/g,"").split(d.splitNumRegx).concat(["0","0","0","0"]);for(a=0;a<4;a++){if(/^(0+)(.+)$/.test(e[a])){e[a]=RegExp.$2}if(a>c||!(/\d/).test(e[a])){e[a]="0"}}return e.slice(0,4).join(",")},$$hasMimeType:function(a){return function(c){if(!a.isIE&&c){var f,e,b,d=a.isArray(c)?c:(a.isString(c)?[c]:[]);for(b=0;b<d.length;b++){if(a.isString(d[b])&&/[^\s]/.test(d[b])){f=navigator.mimeTypes[d[b]];e=f?f.enabledPlugin:0;if(e&&(e.name||e.description)){return f}}}}return null}},findNavPlugin:function(l,e,c){var j=this,h=new RegExp(l,"i"),d=(!j.isDefined(e)||e)?/\d/:0,k=c?new RegExp(c,"i"):0,a=navigator.plugins,g="",f,b,m;for(f=0;f<a.length;f++){m=a[f].description||g;b=a[f].name||g;if((h.test(m)&&(!d||d.test(RegExp.leftContext+RegExp.rightContext)))||(h.test(b)&&(!d||d.test(RegExp.leftContext+RegExp.rightContext)))){if(!k||!(k.test(m)||k.test(b))){return a[f]}}}return null},getMimeEnabledPlugin:function(k,m,c){var e=this,f,b=new RegExp(m,"i"),h="",g=c?new RegExp(c,"i"):0,a,l,d,j=e.isString(k)?[k]:k;for(d=0;d<j.length;d++){if((f=e.hasMimeType(j[d]))&&(f=f.enabledPlugin)){l=f.description||h;a=f.name||h;if(b.test(l)||b.test(a)){if(!g||!(g.test(l)||g.test(a))){return f}}}}return 0},getPluginFileVersion:function(f,b){var h=this,e,d,g,a,c=-1;if(h.OS>2||!f||!f.version||!(e=h.getNum(f.version))){return b}if(!b){return e}e=h.formatNum(e);b=h.formatNum(b);d=b.split(h.splitNumRegx);g=e.split(h.splitNumRegx);for(a=0;a<d.length;a++){if(c>-1&&a>c&&d[a]!="0"){return b}if(g[a]!=d[a]){if(c==-1){c=a}if(d[a]!="0"){return b}}}return e},AXO:window.ActiveXObject,getAXO:function(a){var f=null,d,b=this,c={};try{f=new b.AXO(a)}catch(d){}return f},convertFuncs:function(f){var a,g,d,b=/^[\$][\$]/,c=this;for(a in f){if(b.test(a)){try{g=a.slice(2);if(g.length>0&&!f[g]){f[g]=f[a](f);delete f[a]}}catch(d){}}}},initObj:function(e,b,d){var a,c;if(e){if(e[b[0]]==1||d){for(a=0;a<b.length;a=a+2){e[b[a]]=b[a+1]}}for(a in e){c=e[a];if(c&&c[b[0]]==1){this.initObj(c,b)}}}},initScript:function(){var d=this,a=navigator,h,i=document,l=a.userAgent||"",j=a.vendor||"",b=a.platform||"",k=a.product||"";d.initObj(d,["$",d]);for(h in d.Plugins){if(d.Plugins[h]){d.initObj(d.Plugins[h],["$",d,"$$",d.Plugins[h]],1)}}d.convertFuncs(d);d.OS=100;if(b){var g=["Win",1,"Mac",2,"Linux",3,"FreeBSD",4,"iPhone",21.1,"iPod",21.2,"iPad",21.3,"Win.*CE",22.1,"Win.*Mobile",22.2,"Pocket\\s*PC",22.3,"",100];for(h=g.length-2;h>=0;h=h-2){if(g[h]&&new RegExp(g[h],"i").test(b)){d.OS=g[h+1];break}}};d.head=i.getElementsByTagName("head")[0]||i.getElementsByTagName("body")[0]||i.body||null;d.isIE=new Function("return/*@cc_on!@*/!1")();d.verIE=d.isIE&&(/MSIE\s*(\d+\.?\d*)/i).test(l)?parseFloat(RegExp.$1,10):null;d.verIEfull=null;d.docModeIE=null;if(d.isIE){var f,n,c=document.createElement("div");try{c.style.behavior="url(#default#clientcaps)";d.verIEfull=(c.getComponentVersion("{89820200-ECBD-11CF-8B85-00AA005B4383}","componentid")).replace(/,/g,".")}catch(f){}n=parseFloat(d.verIEfull||"0",10);d.docModeIE=i.documentMode||((/back/i).test(i.compatMode||"")?5:n)||d.verIE;d.verIE=n||d.docModeIE};d.ActiveXEnabled=false;if(d.isIE){var h,m=["Msxml2.XMLHTTP","Msxml2.DOMDocument","Microsoft.XMLDOM","ShockwaveFlash.ShockwaveFlash","TDCCtl.TDCCtl","Shell.UIHelper","Scripting.Dictionary","wmplayer.ocx"];for(h=0;h<m.length;h++){if(d.getAXO(m[h])){d.ActiveXEnabled=true;break}}};d.isGecko=(/Gecko/i).test(k)&&(/Gecko\s*\/\s*\d/i).test(l);d.verGecko=d.isGecko?d.formatNum((/rv\s*\:\s*([\.\,\d]+)/i).test(l)?RegExp.$1:"0.9"):null;d.isChrome=(/Chrome\s*\/\s*(\d[\d\.]*)/i).test(l);d.verChrome=d.isChrome?d.formatNum(RegExp.$1):null;d.isSafari=((/Apple/i).test(j)||(!j&&!d.isChrome))&&(/Safari\s*\/\s*(\d[\d\.]*)/i).test(l);d.verSafari=d.isSafari&&(/Version\s*\/\s*(\d[\d\.]*)/i).test(l)?d.formatNum(RegExp.$1):null;d.isOpera=(/Opera\s*[\/]?\s*(\d+\.?\d*)/i).test(l);d.verOpera=d.isOpera&&((/Version\s*\/\s*(\d+\.?\d*)/i).test(l)||1)?parseFloat(RegExp.$1,10):null;d.addWinEvent("load",d.handler(d.runWLfuncs,d))},init:function(d){var c=this,b,d,a={status:-3,plugin:0};if(!c.isString(d)){return a}if(d.length==1){c.getVersionDelimiter=d;return a}d=d.toLowerCase().replace(/\s/g,"");b=c.Plugins[d];if(!b||!b.getVersion){return a}a.plugin=b;if(!c.isDefined(b.installed)){b.installed=null;b.version=null;b.version0=null;b.getVersionDone=null;b.pluginName=d}c.garbage=false;if(c.isIE&&!c.ActiveXEnabled&&d!=="java"){a.status=-2;return a}a.status=1;return a},fPush:function(b,a){var c=this;if(c.isArray(a)&&(c.isFunc(b)||(c.isArray(b)&&b.length>0&&c.isFunc(b[0])))){a.push(b)}},callArray:function(b){var c=this,a;if(c.isArray(b)){for(a=0;a<b.length;a++){if(b[a]===null){return}c.call(b[a]);b[a]=null}}},call:function(c){var b=this,a=b.isArray(c)?c.length:-1;if(a>0&&b.isFunc(c[0])){c[0](b,a>1?c[1]:0,a>2?c[2]:0,a>3?c[3]:0)}else{if(b.isFunc(c)){c(b)}}},getVersionDelimiter:",",$$getVersion:function(a){return function(g,d,c){var e=a.init(g),f,b,h={};if(e.status<0){return null};f=e.plugin;if(f.getVersionDone!=1){f.getVersion(null,d,c);if(f.getVersionDone===null){f.getVersionDone=1}}a.cleanup();b=(f.version||f.version0);b=b?b.replace(a.splitNumRegx,a.getVersionDelimiter):b;return b}},cleanup:function(){var a=this;if(a.garbage&&a.isDefined(window.CollectGarbage)){window.CollectGarbage()}},isActiveXObject:function(d,b){var f=this,a=false,g,c='<object width="1" height="1" style="display:none" '+d.getCodeBaseVersion(b)+">"+d.HTML+f.openTag+"/object>";if(!f.head){return a}f.head.insertBefore(document.createElement("object"),f.head.firstChild);f.head.firstChild.outerHTML=c;try{f.head.firstChild.classid=d.classID}catch(g){}try{if(f.head.firstChild.object){a=true}}catch(g){}try{if(a&&f.head.firstChild.readyState<4){f.garbage=true}}catch(g){}f.head.removeChild(f.head.firstChild);return a},codebaseSearch:function(f,b){var c=this;if(!c.ActiveXEnabled||!f){return null}if(f.BIfuncs&&f.BIfuncs.length&&f.BIfuncs[f.BIfuncs.length-1]!==null){c.callArray(f.BIfuncs)}var d,o=f.SEARCH,k={};if(c.isStrNum(b)){if(o.match&&o.min&&c.compareNums(b,o.min)<=0){return true}if(o.match&&o.max&&c.compareNums(b,o.max)>=0){return false}d=c.isActiveXObject(f,b);if(d&&(!o.min||c.compareNums(b,o.min)>0)){o.min=b}if(!d&&(!o.max||c.compareNums(b,o.max)<0)){o.max=b}return d};var e=[0,0,0,0],l=[].concat(o.digits),a=o.min?1:0,j,i,h,g,m,n=function(p,r){var q=[].concat(e);q[p]=r;return c.isActiveXObject(f,q.join(","))};if(o.max){g=o.max.split(c.splitNumRegx);for(j=0;j<g.length;j++){g[j]=parseInt(g[j],10)}if(g[0]<l[0]){l[0]=g[0]}}if(o.min){m=o.min.split(c.splitNumRegx);for(j=0;j<m.length;j++){m[j]=parseInt(m[j],10)}if(m[0]>e[0]){e[0]=m[0]}}if(m&&g){for(j=1;j<m.length;j++){if(m[j-1]!=g[j-1]){break}if(g[j]<l[j]){l[j]=g[j]}if(m[j]>e[j]){e[j]=m[j]}}}if(o.max){for(j=1;j<l.length;j++){if(g[j]>0&&l[j]==0&&l[j-1]<o.digits[j-1]){l[j-1]+=1;break}}};for(j=0;j<l.length;j++){h={};for(i=0;i<20;i++){if(l[j]-e[j]<1){break}d=round((l[j]+e[j])/2);if(h["a"+d]){break}h["a"+d]=1;if(n(j,d)){e[j]=d;a=1}else{l[j]=d}}l[j]=e[j];if(!a&&n(j,e[j])){a=1};if(!a){break}};return a?e.join(","):null},addWinEvent:function(d,c){var e=this,a=window,b;if(e.isFunc(c)){if(a.addEventListener){a.addEventListener(d,c,false)}else{if(a.attachEvent){a.attachEvent("on"+d,c)}else{b=a["on"+d];a["on"+d]=e.winHandler(c,b)}}}},winHandler:function(d,c){return function(){d();if(typeof c=="function"){c()}}},WLfuncs0:[],WLfuncs:[],runWLfuncs:function(a){var b={};a.winLoaded=true;a.callArray(a.WLfuncs0);a.callArray(a.WLfuncs);if(a.onDoneEmptyDiv){a.onDoneEmptyDiv()}},winLoaded:false,$$onWindowLoaded:function(a){return function(b){if(a.winLoaded){a.call(b)}else{a.fPush(b,a.WLfuncs)}}},div:null,divID:"plugindetect",divWidth:50,pluginSize:1,emptyDiv:function(){var d=this,b,h,c,a,f,g;if(d.div&&d.div.childNodes){for(b=d.div.childNodes.length-1;b>=0;b--){c=d.div.childNodes[b];if(c&&c.childNodes){for(h=c.childNodes.length-1;h>=0;h--){g=c.childNodes[h];try{c.removeChild(g)}catch(f){}}}if(c){try{d.div.removeChild(c)}catch(f){}}}}if(!d.div){a=document.getElementById(d.divID);if(a){d.div=a}}if(d.div&&d.div.parentNode){try{d.div.parentNode.removeChild(d.div)}catch(f){}d.div=null}},DONEfuncs:[],onDoneEmptyDiv:function(){var c=this,a,b;if(!c.winLoaded){return}if(c.WLfuncs&&c.WLfuncs.length&&c.WLfuncs[c.WLfuncs.length-1]!==null){return}for(a in c){b=c[a];if(b&&b.funcs){if(b.OTF==3){return}if(b.funcs.length&&b.funcs[b.funcs.length-1]!==null){return}}}for(a=0;a<c.DONEfuncs.length;a++){c.callArray(c.DONEfuncs)}c.emptyDiv()},getWidth:function(c){if(c){var a=c.scrollWidth||c.offsetWidth,b=this;if(b.isNum(a)){return a}}return -1},getTagStatus:function(m,g,a,b){var c=this,f,k=m.span,l=c.getWidth(k),h=a.span,j=c.getWidth(h),d=g.span,i=c.getWidth(d);if(!k||!h||!d||!c.getDOMobj(m)){return -2}if(j<i||l<0||j<0||i<0||i<=c.pluginSize||c.pluginSize<1){return 0}if(l>=i){return -1}try{if(l==c.pluginSize&&(!c.isIE||c.getDOMobj(m).readyState==4)){if(!m.winLoaded&&c.winLoaded){return 1}if(m.winLoaded&&c.isNum(b)){if(!c.isNum(m.count)){m.count=b}if(b-m.count>=10){return 1}}}}catch(f){}return 0},getDOMobj:function(g,a){var f,d=this,c=g?g.span:0,b=c&&c.firstChild?1:0;try{if(b&&a){d.div.focus()}}catch(f){}return b?c.firstChild:null},setStyle:function(b,g){var f=b.style,a,d,c=this;if(f&&g){for(a=0;a<g.length;a=a+2){try{f[g[a]]=g[a+1]}catch(d){}}}},insertDivInBody:function(i,g){var f,c=this,h="pd33993399",b=null,d=g?window.top.document:window.document,a=d.getElementsByTagName("body")[0]||d.body;if(!a){try{d.write('<div id="'+h+'">.'+c.openTag+"/div>");b=d.getElementById(h)}catch(f){}}a=d.getElementsByTagName("body")[0]||d.body;if(a){a.insertBefore(i,a.firstChild);if(b){a.removeChild(b)}}},insertHTML:function(f,b,g,a,k){var l,m=document,j=this,p,o=m.createElement("span"),n,i;var c=["outlineStyle","none","borderStyle","none","padding","0px","margin","0px","visibility","visible"];var h="outline-style:none;border-style:none;padding:0px;margin:0px;visibility:visible;";if(!j.isDefined(a)){a=""}if(j.isString(f)&&(/[^\s]/).test(f)){f=f.toLowerCase().replace(/\s/g,"");p=j.openTag+f+' width="'+j.pluginSize+'" height="'+j.pluginSize+'" ';p+='style="'+h+'display:inline;" ';for(n=0;n<b.length;n=n+2){if(/[^\s]/.test(b[n+1])){p+=b[n]+'="'+b[n+1]+'" '}}p+=">";for(n=0;n<g.length;n=n+2){if(/[^\s]/.test(g[n+1])){p+=j.openTag+'param name="'+g[n]+'" value="'+g[n+1]+'" />'}}p+=a+j.openTag+"/"+f+">"}else{p=a}if(!j.div){i=m.getElementById(j.divID);if(i){j.div=i}else{j.div=m.createElement("div");j.div.id=j.divID}j.setStyle(j.div,c.concat(["width",j.divWidth+"px","height",(j.pluginSize+3)+"px","fontSize",(j.pluginSize+3)+"px","lineHeight",(j.pluginSize+3)+"px","verticalAlign","baseline","display","block"]));if(!i){j.setStyle(j.div,["position","absolute","right","0px","top","0px"]);j.insertDivInBody(j.div)}}if(j.div&&j.div.parentNode){j.setStyle(o,c.concat(["fontSize",(j.pluginSize+3)+"px","lineHeight",(j.pluginSize+3)+"px","verticalAlign","baseline","display","inline"]));try{o.innerHTML=p}catch(l){};try{j.div.appendChild(o)}catch(l){};return{span:o,winLoaded:j.winLoaded,tagName:f,outerHTML:p}}return{span:null,winLoaded:j.winLoaded,tagName:"",outerHTML:p}},Plugins:{quicktime:{mimeType:["video/quicktime","application/x-quicktimeplayer","image/x-macpaint","image/x-quicktime"],progID:"QuickTimeCheckObject.QuickTimeCheck.1",progID0:"QuickTime.QuickTime",classID:"clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B",minIEver:7,HTML:'<param name="src" value="" /><param name="controller" value="false" />',getCodeBaseVersion:function(a){return'codebase="#version='+a+'"'},SEARCH:{min:0,max:0,match:0,digits:[16,128,128,0]},getVersion:function(c){var f=this,d=f.$,a=null,e=null,b;if(!d.isIE){if(d.hasMimeType(f.mimeType)){e=d.OS!=3?d.findNavPlugin("QuickTime.*Plug-?in",0):null;if(e&&e.name){a=d.getNum(e.name)}}}else{if(d.isStrNum(c)){b=c.split(d.splitNumRegx);if(b.length>3&&parseInt(b[3],10)>0){b[3]="9999"}c=b.join(",")}if(d.isStrNum(c)&&d.verIE>=f.minIEver&&f.canUseIsMin()>0){f.installed=f.isMin(c);f.getVersionDone=0;return}f.getVersionDone=1;if(!a&&d.verIE>=f.minIEver){a=f.CDBASE2VER(d.codebaseSearch(f))}if(!a){e=d.getAXO(f.progID);if(e&&e.QuickTimeVersion){a=e.QuickTimeVersion.toString(16);a=parseInt(a.charAt(0),16)+"."+parseInt(a.charAt(1),16)+"."+parseInt(a.charAt(2),16)}}}f.installed=a?1:(e?0:-1);f.version=d.formatNum(a,3)},cdbaseUpper:["7,60,0,0","0,0,0,0"],cdbaseLower:["7,50,0,0",null],cdbase2ver:[function(c,b){var a=b.split(c.$.splitNumRegx);return[a[0],a[1].charAt(0),a[1].charAt(1),a[2]].join(",")},null],CDBASE2VER:function(f){var e=this,c=e.$,b,a=e.cdbaseUpper,d=e.cdbaseLower;if(f){f=c.formatNum(f);for(b=0;b<a.length;b++){if(a[b]&&c.compareNums(f,a[b])<0&&d[b]&&c.compareNums(f,d[b])>=0&&e.cdbase2ver[b]){return e.cdbase2ver[b](e,f)}}}return f},canUseIsMin:function(){var f=this,d=f.$,b,c=f.canUseIsMin,a=f.cdbaseUpper,e=f.cdbaseLower;if(!c.value){c.value=-1;for(b=0;b<a.length;b++){if(a[b]&&d.codebaseSearch(f,a[b])){c.value=1;break}if(e[b]&&d.codebaseSearch(f,e[b])){c.value=-1;break}}}f.SEARCH.match=c.value==1?1:0;return c.value},isMin:function(c){var b=this,a=b.$;return a.codebaseSearch(b,c)?0.7:-1}},flash:{mimeType:"application/x-shockwave-flash",progID:"ShockwaveFlash.ShockwaveFlash",classID:"clsid:D27CDB6E-AE6D-11CF-96B8-444553540000",getVersion:function(){var b=function(i){if(!i){return null}var e=/[\d][\d\,\.\s]*[rRdD]{0,1}[\d\,]*/.exec(i);return e?e[0].replace(/[rRdD\.]/g,",").replace(/\s/g,""):null};var j=this,g=j.$,k,h,l=null,c=null,a=null,f,m,d;if(!g.isIE){m=g.hasMimeType(j.mimeType);if(m){f=g.getDOMobj(g.insertHTML("object",["type",j.mimeType],[],"",j));try{l=g.getNum(f.GetVariable("$version"))}catch(k){}}if(!l){d=m?m.enabledPlugin:null;if(d&&d.description){l=b(d.description)}if(l){l=g.getPluginFileVersion(d,l)}}}else{for(h=15;h>2;h--){c=g.getAXO(j.progID+"."+h);if(c){a=h.toString();break}}if(!c){c=g.getAXO(j.progID)}if(a=="6"){try{c.AllowScriptAccess="always"}catch(k){return"6,0,21,0"}}try{l=b(c.GetVariable("$version"))}catch(k){}if(!l&&a){l=a}}j.installed=l?1:-1;j.version=g.formatNum(l);return true}},shockwave:{mimeType:"application/x-director",progID:"SWCtl.SWCtl",classID:"clsid:166B1BCA-3F9C-11CF-8075-444553540000",getVersion:function(){var a=null,b=null,g,f,d=this,c=d.$;if(!c.isIE){f=c.findNavPlugin("Shockwave\\s*for\\s*Director");if(f&&f.description&&c.hasMimeType(d.mimeType)){a=c.getNum(f.description)}if(a){a=c.getPluginFileVersion(f,a)}}else{try{b=c.getAXO(d.progID).ShockwaveVersion("")}catch(g){}if(c.isString(b)&&b.length>0){a=c.getNum(b)}else{if(c.getAXO(d.progID+".8")){a="8"}else{if(c.getAXO(d.progID+".7")){a="7"}else{if(c.getAXO(d.progID+".1")){a="6"}}}}}d.installed=a?1:-1;d.version=c.formatNum(a)}},zz:0}};PluginDetect.initScript();

	var gArgCountErr='The "%%" function requires an even number of arguments.\nArguments should be in the form "atttributeName", "attributeValue", ...',gTagAttrs=null,gQTGeneratorVersion=1;function AC_QuickTimeVersion(){return gQTGeneratorVersion}function _QTComplain(a,b){b=b.replace("%%",a);alert(b)}function _QTAddAttribute(a,b,c){var d;d=gTagAttrs[a+b];null==d&&(d=gTagAttrs[b]);return null!=d?(0==b.indexOf(a)&&null==c&&(c=b.substring(a.length)),null==c&&(c=b),c+'="'+d+'" '):""}function _QTAddObjectAttr(a,b){if(0==a.indexOf("emb#"))return"";0==a.indexOf("obj#")&&null==b&&(b=a.substring(4));return _QTAddAttribute("obj#",a,b)}function _QTAddEmbedAttr(a,b){if(0==a.indexOf("obj#"))return"";0==a.indexOf("emb#")&&null==b&&(b=a.substring(4));return _QTAddAttribute("emb#",a,b)}function _QTAddObjectParam(a,b){var c,d="",e=b?" />":">";-1==a.indexOf("emb#")&&(c=gTagAttrs["obj#"+a],null==c&&(c=gTagAttrs[a]),0==a.indexOf("obj#")&&(a=a.substring(4)),null!=c&&(d='  <param name="'+a+'" value="'+c+'"'+e+"\n"));return d}function _QTDeleteTagAttrs(){for(var a=0;a<arguments.length;a++){var b=arguments[a];delete gTagAttrs[b];delete gTagAttrs["emb#"+b];delete gTagAttrs["obj#"+b]}}function _QTGenerate(a,b,c){if(4>c.length||0!=c.length%2)return _QTComplain(a,gArgCountErr),"";gTagAttrs=[];gTagAttrs.src=c[0];gTagAttrs.width=c[1];gTagAttrs.height=c[2];gTagAttrs.classid="clsid:02BF25D5-8C17-4B23-BC80-D3488ABDDC6B";gTagAttrs.pluginspage="https://www.apple.com/quicktime/download/";a=c[3];if(null==a||""==a)a="6,0,2,0";gTagAttrs.codebase="https://www.apple.com/qtactivex/qtplugin.cab#version="+a;for(var d,e=4;e<c.length;e+=2)d=c[e].toLowerCase(),a=c[e+1],"name"==d||"id"==d?gTagAttrs.name=a:gTagAttrs[d]=a;c="<object "+_QTAddObjectAttr("classid")+_QTAddObjectAttr("width")+_QTAddObjectAttr("height")+_QTAddObjectAttr("codebase")+_QTAddObjectAttr("name","id")+_QTAddObjectAttr("tabindex")+_QTAddObjectAttr("hspace")+_QTAddObjectAttr("vspace")+_QTAddObjectAttr("border")+_QTAddObjectAttr("align")+_QTAddObjectAttr("class")+_QTAddObjectAttr("title")+_QTAddObjectAttr("accesskey")+_QTAddObjectAttr("noexternaldata")+">\n"+_QTAddObjectParam("src",b);e="  <embed "+_QTAddEmbedAttr("src")+_QTAddEmbedAttr("width")+_QTAddEmbedAttr("height")+_QTAddEmbedAttr("pluginspage")+_QTAddEmbedAttr("name")+_QTAddEmbedAttr("align")+_QTAddEmbedAttr("tabindex");_QTDeleteTagAttrs("src","width","height","pluginspage","classid","codebase","name","tabindex","hspace","vspace","border","align","noexternaldata","class","title","accesskey");for(d in gTagAttrs)a=gTagAttrs[d],null!=a&&(e+=_QTAddEmbedAttr(d),c+=_QTAddObjectParam(d,b));return c+e+"> </embed>\n</object>"}function QT_GenerateOBJECTText(){return _QTGenerate("QT_GenerateOBJECTText",!1,arguments)};


	/*
		jQuery hashchange event v1.3
		https://github.com/cowboy/jquery-hashchange
		Copyright (c) 2010 "Cowboy" Ben Alman
		Dual licensed under the MIT and GPL licenses.
	*/
	(function(){function e(a){a=a||location.href;return"#"+a.replace(/^[^#]*#?(.*)$/,"$1")}var k=document,b,f=$.event.special,p=k.documentMode,m="oniLightBoxHashChange"in window&&(void 0===p||7<p);$.fn.iLightBoxHashChange=function(a){return a?this.bind("iLightBoxHashChange",a):this.trigger("iLightBoxHashChange")};$.fn.iLightBoxHashChange.delay=50;f.iLightBoxHashChange=$.extend(f.iLightBoxHashChange,{setup:function(){if(m)return!1;$(b.start)},teardown:function(){if(m)return!1;$(b.stop)}});b=function(){function a(){var c=
	e(),d=f(l);c!==l?(n(l=c,d),$(window).trigger("iLightBoxHashChange")):d!==l&&(location.href=location.href.replace(/#.*/,"")+d);g=setTimeout(a,$.fn.iLightBoxHashChange.delay)}var h={},g,l=e(),b=function(c){return c},n=b,f=b;h.start=function(){g||a()};h.stop=function(){g&&clearTimeout(g);g=void 0};browser.msie&&!m&&function(){var c,d;h.start=function(){c||(d=(d=$.fn.iLightBoxHashChange.src)&&d+e(),c=$('<iframe tabindex="-1" title="empty"/>').hide().one("load",function(){d||n(e());a()}).attr("src",d||
	"javascript:0").insertAfter("body")[0].contentWindow,k.onpropertychange=function(){try{"title"===event.propertyName&&(c.document.title=k.title)}catch(a){}})};h.stop=b;f=function(){return e(c.location.href)};n=function(a,d){var b=c.document,e=$.fn.iLightBoxHashChange.domain;a!==d&&(b.title=k.title,b.open(),e&&b.write('<script>document.domain="'+e+'"\x3c/script>'),b.close(),c.location.hash=a)}}();return h}()})();

	if (!Array.prototype.filter) {
		Array.prototype.filter = function(fun /*, thisp */ ) {
			"use strict";

			if (this == null)
				throw new TypeError();

			var t = Object(this);
			var len = t.length >>> 0;
			if (typeof fun != "function")
				throw new TypeError();

			var res = [];
			var thisp = arguments[1];
			for (var i = 0; i < len; i++) {
				if (i in t) {
					var val = t[i]; // in case fun mutates this
					if (fun.call(thisp, val, i, t))
						res.push(val);
				}
			}

			return res;
		};
	}

	if (!Array.prototype.indexOf) {
		Array.prototype.indexOf = function(searchElement, fromIndex) {
			var k;

			if (this == null) {
				throw new TypeError('"this" is null or not defined');
			}

			var O = Object(this);

			var len = O.length >>> 0;

			if (len === 0) {
				return -1;
			}

			var n = +fromIndex || 0;

			if (abs(n) === Infinity) {
				n = 0;
			}

			if (n >= len) {
				return -1;
			}

			k = max(n >= 0 ? n : len - abs(n), 0);

			while (k < len) {
				var kValue;
				if (k in O && O[k] === searchElement) {
					return k;
				}
				k++;
			}
			return -1;
		};
	}

	if (!Array.prototype.lastIndexOf) {
		Array.prototype.lastIndexOf = function(searchElement /*, fromIndex*/ ) {
			"use strict";

			if (this == null)
				throw new TypeError();

			var t = Object(this);
			var len = t.length >>> 0;
			if (len === 0)
				return -1;

			var n = len;
			if (arguments.length > 1) {
				n = Number(arguments[1]);
				if (n != n)
					n = 0;
				else if (n != 0 && n != (1 / 0) && n != -(1 / 0))
					n = (n > 0 || -1) * floor(abs(n));
			}

			var k = n >= 0 ? min(n, len - 1) : len - abs(n);

			for (; k >= 0; k--) {
				if (k in t && t[k] === searchElement)
					return k;
			}
			return -1;
		};
	}
})(jQuery, this);

External CSS

  1. http://www.ilightbox.net/assets/css/bootstrap-responsive.css
  2. http://www.ilightbox.net/assets/css/docs.css
  3. http://www.ilightbox.net/assets/css/demo_ajax_stevejobs.css
  4. http://www.ilightbox.net/assets/css/bootstrap.css
  5. https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css
  6. http://www.zlatibor.org/wp-content/themes/Avada/ilightbox.css

External JavaScript

  1. https://code.jquery.com/jquery-2.2.4.min.js
  2. https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js