[opw-web] Create EasternGreen skin



commit 823c7567a53c7138549d1a80ac532c2c14f488b4
Author: Behnam Esfahbod <behnam behnam es>
Date:   Tue Nov 12 17:57:32 2013 -0800

    Create EasternGreen skin

 .gitignore                                         |    3 +
 classes/class_config.php                           |   20 +-
 classes/class_gsod.php                             |   43 +-
 classes/class_user.php                             |  150 +-
 config.sample.php                                  |    4 +-
 gfx/girl-square-green-01.16px.png                  |  Bin 0 -> 582 bytes
 gfx/girl-square-green-01.32px.png                  |  Bin 0 -> 1228 bytes
 gfx/girl-square-green-01.78px.png                  |  Bin 0 -> 2088 bytes
 gfx/girl-square-green-01.xcf                       |  Bin 0 -> 4766 bytes
 index.php                                          |    1 -
 init.php                                           |    8 +-
 lang/en-gb.php                                     |    9 +-
 modules/mod_login.php                              |   32 +-
 modules/mod_logout.php                             |    1 -
 opw-web.doap                                       |    1 +
 skins/easterngreen/css/bootstrap.css               | 6167 ++++++++++++++++++++
 skins/easterngreen/css/bootstrap.min.css           |    9 +
 skins/easterngreen/css/fonts/Chunkfive-webfont.ttf |  Bin 0 -> 17940 bytes
 skins/easterngreen/css/gnome.css                   |   49 +
 skins/easterngreen/css/img/footer-balloons.png     |  Bin 0 -> 6494 bytes
 skins/easterngreen/css/img/footer-grass.png        |  Bin 0 -> 10178 bytes
 skins/easterngreen/css/img/girl.png                |  Bin 0 -> 5900 bytes
 skins/easterngreen/css/img/gnome-favicon.png       |  Bin 0 -> 895 bytes
 skins/easterngreen/css/img/opw-favicon.png         |  Bin 0 -> 582 bytes
 skins/easterngreen/css/img/opw-logo.png            |  Bin 0 -> 1228 bytes
 skins/easterngreen/css/img/sponsor-bloomberg.png   |  Bin 0 -> 9747 bytes
 .../css/img/sponsor-cloudera-includer.png          |  Bin 0 -> 4257 bytes
 .../css/img/sponsor-codethink-includer.png         |  Bin 0 -> 7600 bytes
 .../css/img/sponsor-debian-includer.png            |  Bin 0 -> 3784 bytes
 skins/easterngreen/css/img/sponsor-eff.png         |  Bin 0 -> 3600 bytes
 skins/easterngreen/css/img/sponsor-fsf.png         |  Bin 0 -> 5352 bytes
 skins/easterngreen/css/img/sponsor-gnome.png       |  Bin 0 -> 4105 bytes
 .../css/img/sponsor-google-promoter.png            |  Bin 0 -> 19054 bytes
 skins/easterngreen/css/img/sponsor-google.png      |  Bin 0 -> 26944 bytes
 skins/easterngreen/css/img/sponsor-hp-promoter.png |  Bin 0 -> 8965 bytes
 skins/easterngreen/css/img/sponsor-intel.png       |  Bin 0 -> 5320 bytes
 skins/easterngreen/css/img/sponsor-joomla.png      |  Bin 0 -> 6218 bytes
 skins/easterngreen/css/img/sponsor-kdab.png        |  Bin 0 -> 7371 bytes
 .../css/img/sponsor-linaro-includer.png            |  Bin 0 -> 4468 bytes
 .../css/img/sponsor-linuxfoundation.png            |  Bin 0 -> 5228 bytes
 skins/easterngreen/css/img/sponsor-mediagoblin.png |  Bin 0 -> 3588 bytes
 skins/easterngreen/css/img/sponsor-mozilla.png     |  Bin 0 -> 5716 bytes
 skins/easterngreen/css/img/sponsor-nescent.png     |  Bin 0 -> 5251 bytes
 skins/easterngreen/css/img/sponsor-openmrs.png     |  Bin 0 -> 4560 bytes
 skins/easterngreen/css/img/sponsor-openstack.png   |  Bin 0 -> 9341 bytes
 .../easterngreen/css/img/sponsor-osrf-promoter.png |  Bin 0 -> 6148 bytes
 skins/easterngreen/css/img/sponsor-oti.png         |  Bin 0 -> 5832 bytes
 skins/easterngreen/css/img/sponsor-perl.png        |  Bin 0 -> 8153 bytes
 .../css/img/sponsor-rackspace-includer.png         |  Bin 0 -> 8722 bytes
 skins/easterngreen/css/img/sponsor-redhat.png      |  Bin 0 -> 4845 bytes
 skins/easterngreen/css/img/sponsor-ropesgray.png   |  Bin 0 -> 1699 bytes
 skins/easterngreen/css/img/sponsor-tor.png         |  Bin 0 -> 5771 bytes
 .../css/img/sponsor-wikimedia-equalizer.png        |  Bin 0 -> 26409 bytes
 skins/easterngreen/css/img/sponsor-wikimedia.png   |  Bin 0 -> 4835 bytes
 skins/easterngreen/css/img/sponsor-wordpress.png   |  Bin 0 -> 7593 bytes
 skins/easterngreen/css/img/sponsor-yocto.png       |  Bin 0 -> 5779 bytes
 skins/easterngreen/css/main.css                    |  341 ++
 skins/easterngreen/css/reset.css                   |   48 +
 skins/easterngreen/html/index.html                 |  256 +
 skins/easterngreen/html/tpl_approve_mentors.html   |   24 +
 .../html/tpl_approve_mentors_item.html             |   15 +
 skins/easterngreen/html/tpl_confirm_box.html       |    9 +
 skins/easterngreen/html/tpl_edit_templates.html    |   82 +
 skins/easterngreen/html/tpl_footer.html            |   31 +
 skins/easterngreen/html/tpl_header.html            |  180 +
 skins/easterngreen/html/tpl_home.html              |  207 +
 skins/easterngreen/html/tpl_login.html             |   38 +
 skins/easterngreen/html/tpl_manage_programs.html   |   34 +
 .../html/tpl_manage_programs_editor.html           |   77 +
 .../html/tpl_manage_programs_item.html             |   25 +
 skins/easterngreen/html/tpl_master.html            |    1 +
 skins/easterngreen/html/tpl_notifications.html     |   49 +
 skins/easterngreen/html/tpl_program_home.html      |  152 +
 skins/easterngreen/html/tpl_queue_item.html        |   25 +
 skins/easterngreen/html/tpl_user_ban.html          |   37 +
 skins/easterngreen/html/tpl_user_ban_item.html     |   11 +
 skins/easterngreen/html/tpl_user_profile.html      |   62 +
 skins/easterngreen/html/tpl_view_participants.html |   30 +
 .../html/tpl_view_participants_item.html           |   13 +
 skins/easterngreen/html/tpl_view_programs.html     |   25 +
 .../easterngreen/html/tpl_view_programs_item.html  |   11 +
 skins/easterngreen/html/tpl_view_project.html      |   73 +
 skins/easterngreen/html/tpl_view_projects.html     |   37 +
 .../html/tpl_view_projects_editor.html             |   99 +
 .../easterngreen/html/tpl_view_projects_item.html  |   23 +
 skins/easterngreen/images/active-programs.png      |  Bin 0 -> 244 bytes
 skins/easterngreen/images/cancel-mentor.png        |  Bin 0 -> 296 bytes
 skins/easterngreen/images/deadline.png             |  Bin 0 -> 287 bytes
 skins/easterngreen/images/default-avatar.png       |  Bin 0 -> 3926 bytes
 skins/easterngreen/images/login.png                |  Bin 0 -> 331 bytes
 skins/easterngreen/images/mentor-project.png       |  Bin 0 -> 350 bytes
 skins/easterngreen/images/opw-favicon.png          |  Bin 0 -> 906 bytes
 skins/easterngreen/images/programs.png             |  Bin 0 -> 4914 bytes
 skins/easterngreen/images/projects.png             |  Bin 0 -> 170 bytes
 skins/easterngreen/images/proposals.png            |  Bin 0 -> 128 bytes
 skins/easterngreen/images/submit-project.png       |  Bin 0 -> 256 bytes
 .../img/glyphicons-halflings-white.png             |  Bin 0 -> 8777 bytes
 skins/easterngreen/img/glyphicons-halflings.png    |  Bin 0 -> 12799 bytes
 skins/easterngreen/js/bootstrap.js                 | 2280 ++++++++
 skins/easterngreen/js/bootstrap.min.js             |    6 +
 skins/easterngreen/js/main.js                      |   46 +
 skins/easterngreen/js/processing.js                |  241 +
 skins/easterngreen/js/tween.js                     |   24 +
 skins/neverland/html/tpl_login.html                |    4 +-
 104 files changed, 10934 insertions(+), 179 deletions(-)
---
diff --git a/.gitignore b/.gitignore
index 4f4773f..d4269f8 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1 +1,4 @@
 config.php
+tags
+Makefile
+phpinfo.php
diff --git a/classes/class_config.php b/classes/class_config.php
index ed57195..47a3bb6 100644
--- a/classes/class_config.php
+++ b/classes/class_config.php
@@ -7,7 +7,7 @@
 
 class config
 {
-    // Declare config variables   
+    // Declare config variables
     var $db_host;
     var $db_port;
     var $db_name;
@@ -16,7 +16,9 @@ class config
     var $db_prefix;
 
     var $site_name;
+    var $site_url;
     var $site_copyright;
+
     var $webmaster;
     var $http_host;
     var $skin_name;
@@ -42,15 +44,15 @@ class config
     var $smtp_username;
     var $smtp_password;
     var $smtp_from;
-    
+
     // Constructor
     function __construct()
     {
         global $core;
-        
+
         // Set the load flag
         $load_data = true;
-        
+
         if (strpos($_SERVER['PHP_SELF'], '/admin/') !== false)
         {
             if (file_exists(realpath('../config.php')))
@@ -73,18 +75,19 @@ class config
                 $load_data = false;
             }
         }
-        
+
         // Set the data
         if ($load_data)
-        {           
+        {
             $this->db_host          = isset($db_host) ? $db_host : '';
             $this->db_port          = isset($db_port) ? $db_port : '';
             $this->db_name          = isset($db_name) ? $db_name : '';
             $this->db_username      = isset($db_username) ? $db_username : '';
             $this->db_password      = isset($db_password) ? $db_password : '';
             $this->db_prefix        = isset($db_prefix) ? $db_prefix : '';
-            
+
             $this->site_name        = isset($site_name) ? $site_name : 'Pandora';
+            $this->site_url         = isset($site_url ) ? $site_url  : 'https://' . $_SERVER["HTTP_HOST"];
             $this->site_copyright   = isset($site_copyright) ? $site_copyright : '&copy; 2012 KDE';
             $this->webmaster        = isset($webmaster) ? $webmaster : '';
             $this->http_host        = isset($http_host) ? $http_host : '';
@@ -92,7 +95,7 @@ class config
             $this->lang_name        = isset($lang_name) ? $lang_name : 'en-gb';
             $this->per_page         = isset($per_page) ? $per_page : 10;
             $this->show_debug       = isset($show_debug) ? $show_debug : false;
-            
+
             $this->ldap_server      = isset($ldap_server) ? $ldap_server : '';
             $this->ldap_port        = isset($ldap_port) ? $ldap_port : '';
             $this->ldap_base_dn     = isset($ldap_base_dn) ? $ldap_base_dn : '';
@@ -115,4 +118,3 @@ class config
     }
 }
 
-?>
diff --git a/classes/class_gsod.php b/classes/class_gsod.php
index 9c9dd64..4a4c9de 100644
--- a/classes/class_gsod.php
+++ b/classes/class_gsod.php
@@ -14,24 +14,33 @@ class gsod
     // Method to trigger an error
     function trigger($title, $message)
     {
+        global $config;
         // This needs to be hard coded, we can't depend on any of the class files
-        echo
-            '<html>' .
-                '<head>' .
-                    '<title>Fatal error</title>' .
-                    '<style type="text/css">' .
-                        'a {color: #000;}' .
-                    '</style>' .
-                '</head>' .
-                '<body style="background:#efefef; font-family:Arial; font-size:0.95em;">' .
-                    '<div style="border:1px solid #aeaeae; border-radius:10px;'.
-                        'padding:10px; background: #fff;">' .
-                        '<b>' . $title . '</b><br /><br />' .
-                        $message .
-                    '</div>'.
-                '</body>'.
-            '</html>';
+        ?>
+            <html>
+                <head>
+                  <title><?php echo $config->site_name; ?> - Oops... Fatal Error!</title>
+                    <style type="text/css">
+                        body {background:#ccc; font-family:sans-serif; font-size:10pt; text-align: center;}
+                        div {border:2px solid #20b2aa; border-radius:10px; padding:2em; margin:3em; 
background: #fff;}
+                        h1 a {color: #20b2aa;}
+                        p {margin: 2em 0;}
+                        code {font-size: 8pt; color: gray;}
+                    </style>
+                </head>
+                <body>
+                    <div>
+                        <h1><a href="<?php echo $config->site_url; ?>"><?php echo $config->site_name; 
?></a></h1>
+                        <br/>
+                        <p style="color: #700;"><b>Oops... Fatal Error!</b></p>
+                        <p>Please try again later.</p>
+                        <br/>
+                    </div>
+                    <code>[<i><?php echo $title; ?></i>: <?php echo $message; ?>]</code>
+                </body>
+            </html>
+        <?php
         exit;
     }
 }
-?>
+
diff --git a/classes/class_user.php b/classes/class_user.php
index 7494278..1bcd3cf 100644
--- a/classes/class_user.php
+++ b/classes/class_user.php
@@ -99,7 +99,7 @@ class user
     function is_banned($username)
     {
         global $db;
-        
+
         $db->escape($username);
 
         // Check if an entry for the user exists in the ban table
@@ -134,156 +134,59 @@ class user
         $entries = !is_array($entries) ? array($entries) : $entries;
 
         // Username is required
-        if (empty($username))
-        {
+        if (empty($username)) {
             return false;
         }
 
         // Read user data from cache
         $crc = crc32($username . implode('', $entries));
         $cached = $cache->get($crc, 'users');
-        
-        if ($cached !== false)
-        {
+        if ($cached !== false) {
             return $cached;
         }
 
-        // Connect to the LDAP server
-        if (!empty($config->ldap_port))
-        {
-            $ldap = @ldap_connect($config->ldap_server, (int)$config->ldap_port);
-        }
-        else
-        {
-            $ldap = @ldap_connect($config->ldap_server);
-        }
+        //TODO
+        $user_data = null;
 
-        // Check if connection failed
-        if (!$ldap)
-        {
+        if ($user_data === null) {
             return false;
         }
 
-        @ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
-        @ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0);
-
-        // Try to bind with the user DN and password, if provided
-        if ($config->ldap_user_dn || $config->ldap_password)
-        {
-            if (! ldap_bind($ldap, htmlspecialchars_decode($config->ldap_user_dn), 
htmlspecialchars_decode($config->ldap_password)))
-            {
-                return false;
-            }
+        foreach ($entries as $entry) {
+            $values[$entry] = (isset($user_data[0][$entry]))
+                ? $user_data[0][$entry]
+                : array('');
         }
 
-        // Look up for the user
-        $filter = $config->ldap_uid . '=' . $this->escape(htmlspecialchars_decode($username));
-        $search = @ldap_search($ldap, htmlspecialchars_decode($config->ldap_base_dn), $filter);
-        $user_data = @ldap_get_entries($ldap, $search);
+        // Add values to cache
+        $cache->put($crc, $values, 'users');
 
-        if ($user_data !== false)
-        {
-            // Traverse through all keys and populate their data
-            foreach ($entries as $entry)
-            {
-                if (isset($user_data[0][$entry]))
-                {
-                    $values[$entry] = $user_data[0][$entry];
-                }
-                else
-                {
-                    $values[$entry] = array('');
-                }
-            }
-
-            // Add values to cache
-            $cache->put($crc, $values, 'users');
-            
-            return $values;
-        }
-        else
-        {
-            return false;
-        }
+        return $values;
     }
 
     // Method for authenticating a user
     function login($username, $password)
     {
         global $config, $db;
+        $is_admin = false;
 
         // Connect to the LDAP server
-        if (!empty($config->ldap_port))
-        {
-            $ldap = @ldap_connect($config->ldap_server, (int)$config->ldap_port);
-        }
-        else
-        {
-            $ldap = @ldap_connect($config->ldap_server);
-        }
-
-        // Check if connection failed
-        if (!$ldap)
-        {
-            return false;
-        }
-
-        @ldap_set_option($ldap, LDAP_OPT_PROTOCOL_VERSION, 3);
-        @ldap_set_option($ldap, LDAP_OPT_REFERRALS, 0);
 
-        // Try to bind with the user DN and password, if provided
-        if ($config->ldap_user_dn || $config->ldap_password)
-        {
-            if (! ldap_bind($ldap, htmlspecialchars_decode($config->ldap_user_dn), 
htmlspecialchars_decode($config->ldap_password)))
-            {
-                return false;
-            }
+        /*TODO
+        if (true) {
+          $is_admin = true;
         }
+         */
 
-        // Look up for the user
-        $filter = $config->ldap_uid . '=' . $this->escape(htmlspecialchars_decode($username));
-        $search = @ldap_search($ldap, htmlspecialchars_decode($config->ldap_base_dn), $filter);
-        $user_entry = @ldap_first_entry($ldap, $search);
+        /*TODO
+        if (true) {
+          // Create a new session for the user
+          $this->create_session($username, $is_admin);
 
-        // Was the user found?
-        if ($user_entry !== false)
-        {
-            // Validate credentials by binding with user's password
-            $user_dn = @ldap_get_dn($ldap, $user_entry);
-            
-            if (@ldap_bind($ldap, htmlspecialchars_decode($user_dn), htmlspecialchars_decode($password)))
-            {
-                // Check if user is an admin
-                if (!empty($config->ldap_group) && !empty($config->ldap_admin_group))
-                {
-                    $user_values = @ldap_get_values($ldap, $user_entry, $config->ldap_group);
-                    $is_admin = in_array($config->ldap_admin_group, $user_values);
-                }
-                else
-                {
-                    $is_admin = false;
-                }
-
-                // Create a new session for the user
-                $this->create_session($username, $is_admin);
-
-                @ldap_close($ldap);
-                unset($user_entry);
-
-                // Authentication was successful
-                return true;
-            }
-            else
-            {
-                @ldap_close($ldap);
-                unset($user_entry);
-
-                // Password was wrong
-                return false;
-            }
+          // Authentication was successful
+          return true;
         }
-
-        @ldap_close($ldap);
+         */
 
         // Username was not found
         return false;
@@ -317,7 +220,7 @@ class user
     function profile($username, $return = false)
     {
         global $core;
-        
+
         if ($username != '-')
         {
             $username_url = urlencode($username);
@@ -358,4 +261,3 @@ class user
     }
 }
 
-?>
diff --git a/config.sample.php b/config.sample.php
index 68dce5a..bd05889 100644
--- a/config.sample.php
+++ b/config.sample.php
@@ -31,6 +31,9 @@ $db_prefix = "";
 // Site name
 $site_name = "Outreach Program for Women";
 
+// Site canonize url
+$site_url = "https://opw.gnome.org/";;
+
 // Site copyright notice
 $site_copyright = "&copy; GNOME Foundation";
 
@@ -97,4 +100,3 @@ $smtp_password = "";
 // From address for sending emails
 $smtp_from = "webmaster yoursite com";
 
-?>
diff --git a/gfx/girl-square-green-01.16px.png b/gfx/girl-square-green-01.16px.png
new file mode 100644
index 0000000..e195fda
Binary files /dev/null and b/gfx/girl-square-green-01.16px.png differ
diff --git a/gfx/girl-square-green-01.32px.png b/gfx/girl-square-green-01.32px.png
new file mode 100644
index 0000000..01e39de
Binary files /dev/null and b/gfx/girl-square-green-01.32px.png differ
diff --git a/gfx/girl-square-green-01.78px.png b/gfx/girl-square-green-01.78px.png
new file mode 100644
index 0000000..45380e7
Binary files /dev/null and b/gfx/girl-square-green-01.78px.png differ
diff --git a/gfx/girl-square-green-01.xcf b/gfx/girl-square-green-01.xcf
new file mode 100644
index 0000000..af654db
Binary files /dev/null and b/gfx/girl-square-green-01.xcf differ
diff --git a/index.php b/index.php
index c4d4084..1fda478 100644
--- a/index.php
+++ b/index.php
@@ -30,4 +30,3 @@ $skin->assign(array(
 $skin->title($module_title . ' &bull; ' . $config->site_name);
 $skin->output();
 
-?>
diff --git a/init.php b/init.php
index 070a323..f813fbc 100644
--- a/init.php
+++ b/init.php
@@ -10,6 +10,11 @@ if (!defined('IN_PANDORA')) exit;
 // Turn off error reporting
 error_reporting(0);
 
+/*DEBUG*/ //XXX
+error_reporting(E_ALL);
+ini_set("display_errors", 1);
+/**/
+
 // Set default timezone to UTC
 date_default_timezone_set('UTC');
 
@@ -27,10 +32,10 @@ include_once('classes/class_module.php');
 include_once('classes/class_donut.php');
 
 // We need to instantiate the GSoD class first, just in case!
+$config = new config();
 $gsod = new gsod();
 
 // Instantiate general classes
-$config = new config();
 $core   = new core();
 $db     = new db();
 $user   = new user();
@@ -62,4 +67,3 @@ include_once('cron.php');
 // Verify user authentication
 $user->verify();
 
-?>
diff --git a/lang/en-gb.php b/lang/en-gb.php
index 06b796f..7c2304e 100644
--- a/lang/en-gb.php
+++ b/lang/en-gb.php
@@ -8,6 +8,13 @@
 if (!defined('IN_PANDORA')) exit;
 
 $lang_data = array(
+    /* Basic i18n */
+    'html_direction'        => 'ltr',
+
+    /* Site */
+    'site_title'            => "Outreach Program For Women - Free and Open Source Software internships for 
women",
+    'site_desc'             => "The Outreach Program for Women (OPW) helps women get involved in free and 
open source software. We provide a supportive community for beginning to contribute any time throughout the 
year and offer focused internship opportunities twice a year with a number of free software organizations.",
+
     /* Global keys */
     'kde_links'             => 'KDE Links',
     'not_logged_in'         => 'You are not logged in',
@@ -236,6 +243,6 @@ $lang_data = array(
     'sendmail_output'       => 'Sendmail output',
     'processing_program'    => 'Processing program #',
     'program_no_mail'       => 'No mails were sent for this program',
+
 );
 
-?>
diff --git a/modules/mod_login.php b/modules/mod_login.php
index 8df7b65..9055e9b 100644
--- a/modules/mod_login.php
+++ b/modules/mod_login.php
@@ -11,48 +11,39 @@ if (!defined('IN_PANDORA')) exit;
 $username = $core->variable('username', '', false, true);
 $password = $core->variable('password', '');
 $redir_url = $core->variable('r', '');
-
-$login_submit = isset($_POST['login']);
+$dest_url = !empty($redir_url) ? urldecode($redir_url) : $core->path();
 
 // Log the user out if already logged in
 if ($user->is_logged_in)
 {
-    $user->logout();
-    $core->redirect('?q=login');
+    $core->redirect($dest_url);
 }
 
 // Login data was submitted
-if ($login_submit)
-{
-    if (!empty($username) && !empty($password))
-    {
+$login_submit = isset($_POST['login']);
+if ($login_submit) {
+    if (!empty($username) && !empty($password)) {
         // Check if user is banned
         $is_banned = $user->is_banned($username);
 
         // User isn't banned
-        if (!$is_banned)
-        {
+        if (!$is_banned) {
             // Log in user
             $login_success = $user->login($username, $password);
 
             // Check if login succeeded
-            if ($login_success)
-            {
-                $url = !empty($redir_url) ? urldecode($redir_url) : $core->path();
-                $core->redirect($url);
+            if ($login_success) {
+                $core->redirect($dest_url);
             }
-            else
-            {
+            else {
                 $error_message = $lang->get('login_error');
             }
         }
-        else
-        {
+        else {
             $error_message = $lang->get('account_banned');
         }
     }
-    else
-    {
+    else {
         $error_message = $lang->get('enter_user_pw');
     }
 }
@@ -67,4 +58,3 @@ $skin->assign(array(
 $module_title = $lang->get('log_in');
 $module_data = $skin->output('tpl_login');
 
-?>
\ No newline at end of file
diff --git a/modules/mod_logout.php b/modules/mod_logout.php
index 0df0ade..219fa77 100644
--- a/modules/mod_logout.php
+++ b/modules/mod_logout.php
@@ -13,4 +13,3 @@ $user->logout();
 // Redirect to homepage
 $core->redirect($core->path());
 
-?>
\ No newline at end of file
diff --git a/opw-web.doap b/opw-web.doap
index 437aaa4..161f9ee 100644
--- a/opw-web.doap
+++ b/opw-web.doap
@@ -17,6 +17,7 @@
     <foaf:Person>
       <foaf:name>Behnam Esfahbod</foaf:name>
       <foaf:mbox rdf:resource="mailto:behnam gnome org" />
+      <foaf:openid rdf:resource="http://behnam.es/"; />
       <gnome:userid>behnam</gnome:userid>
     </foaf:Person>
   </maintainer>
diff --git a/skins/easterngreen/css/bootstrap.css b/skins/easterngreen/css/bootstrap.css
new file mode 100644
index 0000000..5b7fe7e
--- /dev/null
+++ b/skins/easterngreen/css/bootstrap.css
@@ -0,0 +1,6167 @@
+/*!
+ * Bootstrap v2.3.2
+ *
+ * Copyright 2013 Twitter, Inc
+ * Licensed under the Apache License v2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Designed and built with all the love in the world by @mdo and @fat.
+ */
+
+.clearfix {
+  *zoom: 1;
+}
+
+.clearfix:before,
+.clearfix:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.clearfix:after {
+  clear: both;
+}
+
+.hide-text {
+  font: 0/0 a;
+  color: transparent;
+  text-shadow: none;
+  background-color: transparent;
+  border: 0;
+}
+
+.input-block-level {
+  display: block;
+  width: 100%;
+  min-height: 30px;
+  -webkit-box-sizing: border-box;
+     -moz-box-sizing: border-box;
+          box-sizing: border-box;
+}
+
+article,
+aside,
+details,
+figcaption,
+figure,
+footer,
+header,
+hgroup,
+nav,
+section {
+  display: block;
+}
+
+audio,
+canvas,
+video {
+  display: inline-block;
+  *display: inline;
+  *zoom: 1;
+}
+
+audio:not([controls]) {
+  display: none;
+}
+
+html {
+  font-size: 100%;
+  -webkit-text-size-adjust: 100%;
+      -ms-text-size-adjust: 100%;
+}
+
+a:focus {
+  outline: thin dotted #333;
+  outline: 5px auto -webkit-focus-ring-color;
+  outline-offset: -2px;
+}
+
+a:hover,
+a:active {
+  outline: 0;
+}
+
+sub,
+sup {
+  position: relative;
+  font-size: 75%;
+  line-height: 0;
+  vertical-align: baseline;
+}
+
+sup {
+  top: -0.5em;
+}
+
+sub {
+  bottom: -0.25em;
+}
+
+img {
+  width: auto\9;
+  height: auto;
+  max-width: 100%;
+  vertical-align: middle;
+  border: 0;
+  -ms-interpolation-mode: bicubic;
+}
+
+#map_canvas img,
+.google-maps img {
+  max-width: none;
+}
+
+button,
+input,
+select,
+textarea {
+  margin: 0;
+  font-size: 100%;
+  vertical-align: middle;
+}
+
+button,
+input {
+  *overflow: visible;
+  line-height: normal;
+}
+
+button::-moz-focus-inner,
+input::-moz-focus-inner {
+  padding: 0;
+  border: 0;
+}
+
+button,
+html input[type="button"],
+input[type="reset"],
+input[type="submit"] {
+  cursor: pointer;
+  -webkit-appearance: button;
+}
+
+label,
+select,
+button,
+input[type="button"],
+input[type="reset"],
+input[type="submit"],
+input[type="radio"],
+input[type="checkbox"] {
+  cursor: pointer;
+}
+
+input[type="search"] {
+  -webkit-box-sizing: content-box;
+     -moz-box-sizing: content-box;
+          box-sizing: content-box;
+  -webkit-appearance: textfield;
+}
+
+input[type="search"]::-webkit-search-decoration,
+input[type="search"]::-webkit-search-cancel-button {
+  -webkit-appearance: none;
+}
+
+textarea {
+  overflow: auto;
+  vertical-align: top;
+}
+
+ media print {
+  * {
+    color: #000 !important;
+    text-shadow: none !important;
+    background: transparent !important;
+    box-shadow: none !important;
+  }
+  a,
+  a:visited {
+    text-decoration: underline;
+  }
+  a[href]:after {
+    content: " (" attr(href) ")";
+  }
+  abbr[title]:after {
+    content: " (" attr(title) ")";
+  }
+  .ir a:after,
+  a[href^="javascript:"]:after,
+  a[href^="#"]:after {
+    content: "";
+  }
+  pre,
+  blockquote {
+    border: 1px solid #999;
+    page-break-inside: avoid;
+  }
+  thead {
+    display: table-header-group;
+  }
+  tr,
+  img {
+    page-break-inside: avoid;
+  }
+  img {
+    max-width: 100% !important;
+  }
+  @page  {
+    margin: 0.5cm;
+  }
+  p,
+  h2,
+  h3 {
+    orphans: 3;
+    widows: 3;
+  }
+  h2,
+  h3 {
+    page-break-after: avoid;
+  }
+}
+
+body {
+  margin: 0;
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+  font-size: 14px;
+  line-height: 20px;
+  color: #333333;
+  background-color: #ffffff;
+}
+
+a {
+  color: #0088cc;
+  text-decoration: none;
+}
+
+a:hover,
+a:focus {
+  color: #005580;
+  text-decoration: underline;
+}
+
+.img-rounded {
+  -webkit-border-radius: 6px;
+     -moz-border-radius: 6px;
+          border-radius: 6px;
+}
+
+.img-polaroid {
+  padding: 4px;
+  background-color: #fff;
+  border: 1px solid #ccc;
+  border: 1px solid rgba(0, 0, 0, 0.2);
+  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
+     -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
+          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
+}
+
+.img-circle {
+  -webkit-border-radius: 500px;
+     -moz-border-radius: 500px;
+          border-radius: 500px;
+}
+
+.row {
+  margin-left: -20px;
+  *zoom: 1;
+}
+
+.row:before,
+.row:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.row:after {
+  clear: both;
+}
+
+[class*="span"] {
+  float: left;
+  min-height: 1px;
+  margin-left: 20px;
+}
+
+.container,
+.navbar-static-top .container,
+.navbar-fixed-top .container,
+.navbar-fixed-bottom .container {
+  width: 940px;
+}
+
+.span12 {
+  width: 940px;
+}
+
+.span11 {
+  width: 860px;
+}
+
+.span10 {
+  width: 780px;
+}
+
+.span9 {
+  width: 700px;
+}
+
+.span8 {
+  width: 620px;
+}
+
+.span7 {
+  width: 540px;
+}
+
+.span6 {
+  width: 460px;
+}
+
+.span5 {
+  width: 380px;
+}
+
+.span4 {
+  width: 300px;
+}
+
+.span3 {
+  width: 220px;
+}
+
+.span2 {
+  width: 140px;
+}
+
+.span1 {
+  width: 60px;
+}
+
+.offset12 {
+  margin-left: 980px;
+}
+
+.offset11 {
+  margin-left: 900px;
+}
+
+.offset10 {
+  margin-left: 820px;
+}
+
+.offset9 {
+  margin-left: 740px;
+}
+
+.offset8 {
+  margin-left: 660px;
+}
+
+.offset7 {
+  margin-left: 580px;
+}
+
+.offset6 {
+  margin-left: 500px;
+}
+
+.offset5 {
+  margin-left: 420px;
+}
+
+.offset4 {
+  margin-left: 340px;
+}
+
+.offset3 {
+  margin-left: 260px;
+}
+
+.offset2 {
+  margin-left: 180px;
+}
+
+.offset1 {
+  margin-left: 100px;
+}
+
+.row-fluid {
+  width: 100%;
+  *zoom: 1;
+}
+
+.row-fluid:before,
+.row-fluid:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.row-fluid:after {
+  clear: both;
+}
+
+.row-fluid [class*="span"] {
+  display: block;
+  float: left;
+  width: 100%;
+  min-height: 30px;
+  margin-left: 2.127659574468085%;
+  *margin-left: 2.074468085106383%;
+  -webkit-box-sizing: border-box;
+     -moz-box-sizing: border-box;
+          box-sizing: border-box;
+}
+
+.row-fluid [class*="span"]:first-child {
+  margin-left: 0;
+}
+
+.row-fluid .controls-row [class*="span"] + [class*="span"] {
+  margin-left: 2.127659574468085%;
+}
+
+.row-fluid .span12 {
+  width: 100%;
+  *width: 99.94680851063829%;
+}
+
+.row-fluid .span11 {
+  width: 91.48936170212765%;
+  *width: 91.43617021276594%;
+}
+
+.row-fluid .span10 {
+  width: 82.97872340425532%;
+  *width: 82.92553191489361%;
+}
+
+.row-fluid .span9 {
+  width: 74.46808510638297%;
+  *width: 74.41489361702126%;
+}
+
+.row-fluid .span8 {
+  width: 65.95744680851064%;
+  *width: 65.90425531914893%;
+}
+
+.row-fluid .span7 {
+  width: 57.44680851063829%;
+  *width: 57.39361702127659%;
+}
+
+.row-fluid .span6 {
+  width: 48.93617021276595%;
+  *width: 48.88297872340425%;
+}
+
+.row-fluid .span5 {
+  width: 40.42553191489362%;
+  *width: 40.37234042553192%;
+}
+
+.row-fluid .span4 {
+  width: 31.914893617021278%;
+  *width: 31.861702127659576%;
+}
+
+.row-fluid .span3 {
+  width: 23.404255319148934%;
+  *width: 23.351063829787233%;
+}
+
+.row-fluid .span2 {
+  width: 14.893617021276595%;
+  *width: 14.840425531914894%;
+}
+
+.row-fluid .span1 {
+  width: 6.382978723404255%;
+  *width: 6.329787234042553%;
+}
+
+.row-fluid .offset12 {
+  margin-left: 104.25531914893617%;
+  *margin-left: 104.14893617021275%;
+}
+
+.row-fluid .offset12:first-child {
+  margin-left: 102.12765957446808%;
+  *margin-left: 102.02127659574467%;
+}
+
+.row-fluid .offset11 {
+  margin-left: 95.74468085106382%;
+  *margin-left: 95.6382978723404%;
+}
+
+.row-fluid .offset11:first-child {
+  margin-left: 93.61702127659574%;
+  *margin-left: 93.51063829787232%;
+}
+
+.row-fluid .offset10 {
+  margin-left: 87.23404255319149%;
+  *margin-left: 87.12765957446807%;
+}
+
+.row-fluid .offset10:first-child {
+  margin-left: 85.1063829787234%;
+  *margin-left: 84.99999999999999%;
+}
+
+.row-fluid .offset9 {
+  margin-left: 78.72340425531914%;
+  *margin-left: 78.61702127659572%;
+}
+
+.row-fluid .offset9:first-child {
+  margin-left: 76.59574468085106%;
+  *margin-left: 76.48936170212764%;
+}
+
+.row-fluid .offset8 {
+  margin-left: 70.2127659574468%;
+  *margin-left: 70.10638297872339%;
+}
+
+.row-fluid .offset8:first-child {
+  margin-left: 68.08510638297872%;
+  *margin-left: 67.9787234042553%;
+}
+
+.row-fluid .offset7 {
+  margin-left: 61.70212765957446%;
+  *margin-left: 61.59574468085106%;
+}
+
+.row-fluid .offset7:first-child {
+  margin-left: 59.574468085106375%;
+  *margin-left: 59.46808510638297%;
+}
+
+.row-fluid .offset6 {
+  margin-left: 53.191489361702125%;
+  *margin-left: 53.085106382978715%;
+}
+
+.row-fluid .offset6:first-child {
+  margin-left: 51.063829787234035%;
+  *margin-left: 50.95744680851063%;
+}
+
+.row-fluid .offset5 {
+  margin-left: 44.68085106382979%;
+  *margin-left: 44.57446808510638%;
+}
+
+.row-fluid .offset5:first-child {
+  margin-left: 42.5531914893617%;
+  *margin-left: 42.4468085106383%;
+}
+
+.row-fluid .offset4 {
+  margin-left: 36.170212765957444%;
+  *margin-left: 36.06382978723405%;
+}
+
+.row-fluid .offset4:first-child {
+  margin-left: 34.04255319148936%;
+  *margin-left: 33.93617021276596%;
+}
+
+.row-fluid .offset3 {
+  margin-left: 27.659574468085104%;
+  *margin-left: 27.5531914893617%;
+}
+
+.row-fluid .offset3:first-child {
+  margin-left: 25.53191489361702%;
+  *margin-left: 25.425531914893618%;
+}
+
+.row-fluid .offset2 {
+  margin-left: 19.148936170212764%;
+  *margin-left: 19.04255319148936%;
+}
+
+.row-fluid .offset2:first-child {
+  margin-left: 17.02127659574468%;
+  *margin-left: 16.914893617021278%;
+}
+
+.row-fluid .offset1 {
+  margin-left: 10.638297872340425%;
+  *margin-left: 10.53191489361702%;
+}
+
+.row-fluid .offset1:first-child {
+  margin-left: 8.51063829787234%;
+  *margin-left: 8.404255319148938%;
+}
+
+[class*="span"].hide,
+.row-fluid [class*="span"].hide {
+  display: none;
+}
+
+[class*="span"].pull-right,
+.row-fluid [class*="span"].pull-right {
+  float: right;
+}
+
+.container {
+  margin-right: auto;
+  margin-left: auto;
+  *zoom: 1;
+}
+
+.container:before,
+.container:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.container:after {
+  clear: both;
+}
+
+.container-fluid {
+  padding-right: 20px;
+  padding-left: 20px;
+  *zoom: 1;
+}
+
+.container-fluid:before,
+.container-fluid:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.container-fluid:after {
+  clear: both;
+}
+
+p {
+  margin: 0 0 10px;
+}
+
+.lead {
+  margin-bottom: 20px;
+  font-size: 21px;
+  font-weight: 200;
+  line-height: 30px;
+}
+
+small {
+  font-size: 85%;
+}
+
+strong {
+  font-weight: bold;
+}
+
+em {
+  font-style: italic;
+}
+
+cite {
+  font-style: normal;
+}
+
+.muted {
+  color: #999999;
+}
+
+a.muted:hover,
+a.muted:focus {
+  color: #808080;
+}
+
+.text-warning {
+  color: #c09853;
+}
+
+a.text-warning:hover,
+a.text-warning:focus {
+  color: #a47e3c;
+}
+
+.text-error {
+  color: #b94a48;
+}
+
+a.text-error:hover,
+a.text-error:focus {
+  color: #953b39;
+}
+
+.text-info {
+  color: #3a87ad;
+}
+
+a.text-info:hover,
+a.text-info:focus {
+  color: #2d6987;
+}
+
+.text-success {
+  color: #468847;
+}
+
+a.text-success:hover,
+a.text-success:focus {
+  color: #356635;
+}
+
+.text-left {
+  text-align: left;
+}
+
+.text-right {
+  text-align: right;
+}
+
+.text-center {
+  text-align: center;
+}
+
+h1,
+h2,
+h3,
+h4,
+h5,
+h6 {
+  margin: 10px 0;
+  font-family: inherit;
+  font-weight: bold;
+  line-height: 20px;
+  color: inherit;
+  text-rendering: optimizelegibility;
+}
+
+h1 small,
+h2 small,
+h3 small,
+h4 small,
+h5 small,
+h6 small {
+  font-weight: normal;
+  line-height: 1;
+  color: #999999;
+}
+
+h1,
+h2,
+h3 {
+  line-height: 40px;
+}
+
+h1 {
+  font-size: 38.5px;
+}
+
+h2 {
+  font-size: 31.5px;
+}
+
+h3 {
+  font-size: 24.5px;
+}
+
+h4 {
+  font-size: 17.5px;
+}
+
+h5 {
+  font-size: 14px;
+}
+
+h6 {
+  font-size: 11.9px;
+}
+
+h1 small {
+  font-size: 24.5px;
+}
+
+h2 small {
+  font-size: 17.5px;
+}
+
+h3 small {
+  font-size: 14px;
+}
+
+h4 small {
+  font-size: 14px;
+}
+
+.page-header {
+  padding-bottom: 9px;
+  margin: 20px 0 30px;
+  border-bottom: 1px solid #eeeeee;
+}
+
+ul,
+ol {
+  padding: 0;
+  margin: 0 0 10px 25px;
+}
+
+ul ul,
+ul ol,
+ol ol,
+ol ul {
+  margin-bottom: 0;
+}
+
+li {
+  line-height: 20px;
+}
+
+ul.unstyled,
+ol.unstyled {
+  margin-left: 0;
+  list-style: none;
+}
+
+ul.inline,
+ol.inline {
+  margin-left: 0;
+  list-style: none;
+}
+
+ul.inline > li,
+ol.inline > li {
+  display: inline-block;
+  *display: inline;
+  padding-right: 5px;
+  padding-left: 5px;
+  *zoom: 1;
+}
+
+dl {
+  margin-bottom: 20px;
+}
+
+dt,
+dd {
+  line-height: 20px;
+}
+
+dt {
+  font-weight: bold;
+}
+
+dd {
+  margin-left: 10px;
+}
+
+.dl-horizontal {
+  *zoom: 1;
+}
+
+.dl-horizontal:before,
+.dl-horizontal:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.dl-horizontal:after {
+  clear: both;
+}
+
+.dl-horizontal dt {
+  float: left;
+  width: 160px;
+  overflow: hidden;
+  clear: left;
+  text-align: right;
+  text-overflow: ellipsis;
+  white-space: nowrap;
+}
+
+.dl-horizontal dd {
+  margin-left: 180px;
+}
+
+hr {
+  margin: 20px 0;
+  border: 0;
+  border-top: 1px solid #eeeeee;
+  border-bottom: 1px solid #ffffff;
+}
+
+abbr[title],
+abbr[data-original-title] {
+  cursor: help;
+  border-bottom: 1px dotted #999999;
+}
+
+abbr.initialism {
+  font-size: 90%;
+  text-transform: uppercase;
+}
+
+blockquote {
+  padding: 0 0 0 15px;
+  margin: 0 0 20px;
+  border-left: 5px solid #eeeeee;
+}
+
+blockquote p {
+  margin-bottom: 0;
+  font-size: 17.5px;
+  font-weight: 300;
+  line-height: 1.25;
+}
+
+blockquote small {
+  display: block;
+  line-height: 20px;
+  color: #999999;
+}
+
+blockquote small:before {
+  content: '\2014 \00A0';
+}
+
+blockquote.pull-right {
+  float: right;
+  padding-right: 15px;
+  padding-left: 0;
+  border-right: 5px solid #eeeeee;
+  border-left: 0;
+}
+
+blockquote.pull-right p,
+blockquote.pull-right small {
+  text-align: right;
+}
+
+blockquote.pull-right small:before {
+  content: '';
+}
+
+blockquote.pull-right small:after {
+  content: '\00A0 \2014';
+}
+
+q:before,
+q:after,
+blockquote:before,
+blockquote:after {
+  content: "";
+}
+
+address {
+  display: block;
+  margin-bottom: 20px;
+  font-style: normal;
+  line-height: 20px;
+}
+
+code,
+pre {
+  padding: 0 3px 2px;
+  font-family: Monaco, Menlo, Consolas, "Courier New", monospace;
+  font-size: 12px;
+  color: #333333;
+  -webkit-border-radius: 3px;
+     -moz-border-radius: 3px;
+          border-radius: 3px;
+}
+
+code {
+  padding: 2px 4px;
+  color: #d14;
+  white-space: nowrap;
+  background-color: #f7f7f9;
+  border: 1px solid #e1e1e8;
+}
+
+pre {
+  display: block;
+  padding: 9.5px;
+  margin: 0 0 10px;
+  font-size: 13px;
+  line-height: 20px;
+  word-break: break-all;
+  word-wrap: break-word;
+  white-space: pre;
+  white-space: pre-wrap;
+  background-color: #f5f5f5;
+  border: 1px solid #ccc;
+  border: 1px solid rgba(0, 0, 0, 0.15);
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+}
+
+pre.prettyprint {
+  margin-bottom: 20px;
+}
+
+pre code {
+  padding: 0;
+  color: inherit;
+  white-space: pre;
+  white-space: pre-wrap;
+  background-color: transparent;
+  border: 0;
+}
+
+.pre-scrollable {
+  max-height: 340px;
+  overflow-y: scroll;
+}
+
+form {
+  margin: 0 0 20px;
+}
+
+fieldset {
+  padding: 0;
+  margin: 0;
+  border: 0;
+}
+
+legend {
+  display: block;
+  width: 100%;
+  padding: 0;
+  margin-bottom: 20px;
+  font-size: 21px;
+  line-height: 40px;
+  color: #333333;
+  border: 0;
+  border-bottom: 1px solid #e5e5e5;
+}
+
+legend small {
+  font-size: 15px;
+  color: #999999;
+}
+
+label,
+input,
+button,
+select,
+textarea {
+  font-size: 14px;
+  font-weight: normal;
+  line-height: 20px;
+}
+
+input,
+button,
+select,
+textarea {
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+}
+
+label {
+  display: block;
+  margin-bottom: 5px;
+}
+
+select,
+textarea,
+input[type="text"],
+input[type="password"],
+input[type="datetime"],
+input[type="datetime-local"],
+input[type="date"],
+input[type="month"],
+input[type="time"],
+input[type="week"],
+input[type="number"],
+input[type="email"],
+input[type="url"],
+input[type="search"],
+input[type="tel"],
+input[type="color"],
+.uneditable-input {
+  display: inline-block;
+  height: 20px;
+  padding: 4px 6px;
+  margin-bottom: 10px;
+  font-size: 14px;
+  line-height: 20px;
+  color: #555555;
+  vertical-align: middle;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+}
+
+input,
+textarea,
+.uneditable-input {
+  width: 206px;
+}
+
+textarea {
+  height: auto;
+}
+
+textarea,
+input[type="text"],
+input[type="password"],
+input[type="datetime"],
+input[type="datetime-local"],
+input[type="date"],
+input[type="month"],
+input[type="time"],
+input[type="week"],
+input[type="number"],
+input[type="email"],
+input[type="url"],
+input[type="search"],
+input[type="tel"],
+input[type="color"],
+.uneditable-input {
+  background-color: #ffffff;
+  border: 1px solid #cccccc;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+  -webkit-transition: border linear 0.2s, box-shadow linear 0.2s;
+     -moz-transition: border linear 0.2s, box-shadow linear 0.2s;
+       -o-transition: border linear 0.2s, box-shadow linear 0.2s;
+          transition: border linear 0.2s, box-shadow linear 0.2s;
+}
+
+textarea:focus,
+input[type="text"]:focus,
+input[type="password"]:focus,
+input[type="datetime"]:focus,
+input[type="datetime-local"]:focus,
+input[type="date"]:focus,
+input[type="month"]:focus,
+input[type="time"]:focus,
+input[type="week"]:focus,
+input[type="number"]:focus,
+input[type="email"]:focus,
+input[type="url"]:focus,
+input[type="search"]:focus,
+input[type="tel"]:focus,
+input[type="color"]:focus,
+.uneditable-input:focus {
+  border-color: rgba(82, 168, 236, 0.8);
+  outline: 0;
+  outline: thin dotted \9;
+  /* IE6-9 */
+
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 8px rgba(82, 168, 236, 0.6);
+}
+
+input[type="radio"],
+input[type="checkbox"] {
+  margin: 4px 0 0;
+  margin-top: 1px \9;
+  *margin-top: 0;
+  line-height: normal;
+}
+
+input[type="file"],
+input[type="image"],
+input[type="submit"],
+input[type="reset"],
+input[type="button"],
+input[type="radio"],
+input[type="checkbox"] {
+  width: auto;
+}
+
+select,
+input[type="file"] {
+  height: 30px;
+  /* In IE7, the height of the select element cannot be changed by height, only font-size */
+
+  *margin-top: 4px;
+  /* For IE7, add top margin to align select with labels */
+
+  line-height: 30px;
+}
+
+select {
+  width: 220px;
+  background-color: #ffffff;
+  border: 1px solid #cccccc;
+}
+
+select[multiple],
+select[size] {
+  height: auto;
+}
+
+select:focus,
+input[type="file"]:focus,
+input[type="radio"]:focus,
+input[type="checkbox"]:focus {
+  outline: thin dotted #333;
+  outline: 5px auto -webkit-focus-ring-color;
+  outline-offset: -2px;
+}
+
+.uneditable-input,
+.uneditable-textarea {
+  color: #999999;
+  cursor: not-allowed;
+  background-color: #fcfcfc;
+  border-color: #cccccc;
+  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
+     -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
+          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.025);
+}
+
+.uneditable-input {
+  overflow: hidden;
+  white-space: nowrap;
+}
+
+.uneditable-textarea {
+  width: auto;
+  height: auto;
+}
+
+input:-moz-placeholder,
+textarea:-moz-placeholder {
+  color: #999999;
+}
+
+input:-ms-input-placeholder,
+textarea:-ms-input-placeholder {
+  color: #999999;
+}
+
+input::-webkit-input-placeholder,
+textarea::-webkit-input-placeholder {
+  color: #999999;
+}
+
+.radio,
+.checkbox {
+  min-height: 20px;
+  padding-left: 20px;
+}
+
+.radio input[type="radio"],
+.checkbox input[type="checkbox"] {
+  float: left;
+  margin-left: -20px;
+}
+
+.controls > .radio:first-child,
+.controls > .checkbox:first-child {
+  padding-top: 5px;
+}
+
+.radio.inline,
+.checkbox.inline {
+  display: inline-block;
+  padding-top: 5px;
+  margin-bottom: 0;
+  vertical-align: middle;
+}
+
+.radio.inline + .radio.inline,
+.checkbox.inline + .checkbox.inline {
+  margin-left: 10px;
+}
+
+.input-mini {
+  width: 60px;
+}
+
+.input-small {
+  width: 90px;
+}
+
+.input-medium {
+  width: 150px;
+}
+
+.input-large {
+  width: 210px;
+}
+
+.input-xlarge {
+  width: 270px;
+}
+
+.input-xxlarge {
+  width: 530px;
+}
+
+input[class*="span"],
+select[class*="span"],
+textarea[class*="span"],
+.uneditable-input[class*="span"],
+.row-fluid input[class*="span"],
+.row-fluid select[class*="span"],
+.row-fluid textarea[class*="span"],
+.row-fluid .uneditable-input[class*="span"] {
+  float: none;
+  margin-left: 0;
+}
+
+.input-append input[class*="span"],
+.input-append .uneditable-input[class*="span"],
+.input-prepend input[class*="span"],
+.input-prepend .uneditable-input[class*="span"],
+.row-fluid input[class*="span"],
+.row-fluid select[class*="span"],
+.row-fluid textarea[class*="span"],
+.row-fluid .uneditable-input[class*="span"],
+.row-fluid .input-prepend [class*="span"],
+.row-fluid .input-append [class*="span"] {
+  display: inline-block;
+}
+
+input,
+textarea,
+.uneditable-input {
+  margin-left: 0;
+}
+
+.controls-row [class*="span"] + [class*="span"] {
+  margin-left: 20px;
+}
+
+input.span12,
+textarea.span12,
+.uneditable-input.span12 {
+  width: 926px;
+}
+
+input.span11,
+textarea.span11,
+.uneditable-input.span11 {
+  width: 846px;
+}
+
+input.span10,
+textarea.span10,
+.uneditable-input.span10 {
+  width: 766px;
+}
+
+input.span9,
+textarea.span9,
+.uneditable-input.span9 {
+  width: 686px;
+}
+
+input.span8,
+textarea.span8,
+.uneditable-input.span8 {
+  width: 606px;
+}
+
+input.span7,
+textarea.span7,
+.uneditable-input.span7 {
+  width: 526px;
+}
+
+input.span6,
+textarea.span6,
+.uneditable-input.span6 {
+  width: 446px;
+}
+
+input.span5,
+textarea.span5,
+.uneditable-input.span5 {
+  width: 366px;
+}
+
+input.span4,
+textarea.span4,
+.uneditable-input.span4 {
+  width: 286px;
+}
+
+input.span3,
+textarea.span3,
+.uneditable-input.span3 {
+  width: 206px;
+}
+
+input.span2,
+textarea.span2,
+.uneditable-input.span2 {
+  width: 126px;
+}
+
+input.span1,
+textarea.span1,
+.uneditable-input.span1 {
+  width: 46px;
+}
+
+.controls-row {
+  *zoom: 1;
+}
+
+.controls-row:before,
+.controls-row:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.controls-row:after {
+  clear: both;
+}
+
+.controls-row [class*="span"],
+.row-fluid .controls-row [class*="span"] {
+  float: left;
+}
+
+.controls-row .checkbox[class*="span"],
+.controls-row .radio[class*="span"] {
+  padding-top: 5px;
+}
+
+input[disabled],
+select[disabled],
+textarea[disabled],
+input[readonly],
+select[readonly],
+textarea[readonly] {
+  cursor: not-allowed;
+  background-color: #eeeeee;
+}
+
+input[type="radio"][disabled],
+input[type="checkbox"][disabled],
+input[type="radio"][readonly],
+input[type="checkbox"][readonly] {
+  background-color: transparent;
+}
+
+.control-group.warning .control-label,
+.control-group.warning .help-block,
+.control-group.warning .help-inline {
+  color: #c09853;
+}
+
+.control-group.warning .checkbox,
+.control-group.warning .radio,
+.control-group.warning input,
+.control-group.warning select,
+.control-group.warning textarea {
+  color: #c09853;
+}
+
+.control-group.warning input,
+.control-group.warning select,
+.control-group.warning textarea {
+  border-color: #c09853;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+}
+
+.control-group.warning input:focus,
+.control-group.warning select:focus,
+.control-group.warning textarea:focus {
+  border-color: #a47e3c;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e;
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e;
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #dbc59e;
+}
+
+.control-group.warning .input-prepend .add-on,
+.control-group.warning .input-append .add-on {
+  color: #c09853;
+  background-color: #fcf8e3;
+  border-color: #c09853;
+}
+
+.control-group.error .control-label,
+.control-group.error .help-block,
+.control-group.error .help-inline {
+  color: #b94a48;
+}
+
+.control-group.error .checkbox,
+.control-group.error .radio,
+.control-group.error input,
+.control-group.error select,
+.control-group.error textarea {
+  color: #b94a48;
+}
+
+.control-group.error input,
+.control-group.error select,
+.control-group.error textarea {
+  border-color: #b94a48;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+}
+
+.control-group.error input:focus,
+.control-group.error select:focus,
+.control-group.error textarea:focus {
+  border-color: #953b39;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392;
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392;
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #d59392;
+}
+
+.control-group.error .input-prepend .add-on,
+.control-group.error .input-append .add-on {
+  color: #b94a48;
+  background-color: #f2dede;
+  border-color: #b94a48;
+}
+
+.control-group.success .control-label,
+.control-group.success .help-block,
+.control-group.success .help-inline {
+  color: #468847;
+}
+
+.control-group.success .checkbox,
+.control-group.success .radio,
+.control-group.success input,
+.control-group.success select,
+.control-group.success textarea {
+  color: #468847;
+}
+
+.control-group.success input,
+.control-group.success select,
+.control-group.success textarea {
+  border-color: #468847;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+}
+
+.control-group.success input:focus,
+.control-group.success select:focus,
+.control-group.success textarea:focus {
+  border-color: #356635;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b;
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b;
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7aba7b;
+}
+
+.control-group.success .input-prepend .add-on,
+.control-group.success .input-append .add-on {
+  color: #468847;
+  background-color: #dff0d8;
+  border-color: #468847;
+}
+
+.control-group.info .control-label,
+.control-group.info .help-block,
+.control-group.info .help-inline {
+  color: #3a87ad;
+}
+
+.control-group.info .checkbox,
+.control-group.info .radio,
+.control-group.info input,
+.control-group.info select,
+.control-group.info textarea {
+  color: #3a87ad;
+}
+
+.control-group.info input,
+.control-group.info select,
+.control-group.info textarea {
+  border-color: #3a87ad;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075);
+}
+
+.control-group.info input:focus,
+.control-group.info select:focus,
+.control-group.info textarea:focus {
+  border-color: #2d6987;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3;
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3;
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.075), 0 0 6px #7ab5d3;
+}
+
+.control-group.info .input-prepend .add-on,
+.control-group.info .input-append .add-on {
+  color: #3a87ad;
+  background-color: #d9edf7;
+  border-color: #3a87ad;
+}
+
+input:focus:invalid,
+textarea:focus:invalid,
+select:focus:invalid {
+  color: #b94a48;
+  border-color: #ee5f5b;
+}
+
+input:focus:invalid:focus,
+textarea:focus:invalid:focus,
+select:focus:invalid:focus {
+  border-color: #e9322d;
+  -webkit-box-shadow: 0 0 6px #f8b9b7;
+     -moz-box-shadow: 0 0 6px #f8b9b7;
+          box-shadow: 0 0 6px #f8b9b7;
+}
+
+.form-actions {
+  padding: 19px 20px 20px;
+  margin-top: 20px;
+  margin-bottom: 20px;
+  background-color: #f5f5f5;
+  border-top: 1px solid #e5e5e5;
+  *zoom: 1;
+}
+
+.form-actions:before,
+.form-actions:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.form-actions:after {
+  clear: both;
+}
+
+.help-block,
+.help-inline {
+  color: #595959;
+}
+
+.help-block {
+  display: block;
+  margin-bottom: 10px;
+}
+
+.help-inline {
+  display: inline-block;
+  *display: inline;
+  padding-left: 5px;
+  vertical-align: middle;
+  *zoom: 1;
+}
+
+.input-append,
+.input-prepend {
+  display: inline-block;
+  margin-bottom: 10px;
+  font-size: 0;
+  white-space: nowrap;
+  vertical-align: middle;
+}
+
+.input-append input,
+.input-prepend input,
+.input-append select,
+.input-prepend select,
+.input-append .uneditable-input,
+.input-prepend .uneditable-input,
+.input-append .dropdown-menu,
+.input-prepend .dropdown-menu,
+.input-append .popover,
+.input-prepend .popover {
+  font-size: 14px;
+}
+
+.input-append input,
+.input-prepend input,
+.input-append select,
+.input-prepend select,
+.input-append .uneditable-input,
+.input-prepend .uneditable-input {
+  position: relative;
+  margin-bottom: 0;
+  *margin-left: 0;
+  vertical-align: top;
+  -webkit-border-radius: 0 4px 4px 0;
+     -moz-border-radius: 0 4px 4px 0;
+          border-radius: 0 4px 4px 0;
+}
+
+.input-append input:focus,
+.input-prepend input:focus,
+.input-append select:focus,
+.input-prepend select:focus,
+.input-append .uneditable-input:focus,
+.input-prepend .uneditable-input:focus {
+  z-index: 2;
+}
+
+.input-append .add-on,
+.input-prepend .add-on {
+  display: inline-block;
+  width: auto;
+  height: 20px;
+  min-width: 16px;
+  padding: 4px 5px;
+  font-size: 14px;
+  font-weight: normal;
+  line-height: 20px;
+  text-align: center;
+  text-shadow: 0 1px 0 #ffffff;
+  background-color: #eeeeee;
+  border: 1px solid #ccc;
+}
+
+.input-append .add-on,
+.input-prepend .add-on,
+.input-append .btn,
+.input-prepend .btn,
+.input-append .btn-group > .dropdown-toggle,
+.input-prepend .btn-group > .dropdown-toggle {
+  vertical-align: top;
+  -webkit-border-radius: 0;
+     -moz-border-radius: 0;
+          border-radius: 0;
+}
+
+.input-append .active,
+.input-prepend .active {
+  background-color: #a9dba9;
+  border-color: #46a546;
+}
+
+.input-prepend .add-on,
+.input-prepend .btn {
+  margin-right: -1px;
+}
+
+.input-prepend .add-on:first-child,
+.input-prepend .btn:first-child {
+  -webkit-border-radius: 4px 0 0 4px;
+     -moz-border-radius: 4px 0 0 4px;
+          border-radius: 4px 0 0 4px;
+}
+
+.input-append input,
+.input-append select,
+.input-append .uneditable-input {
+  -webkit-border-radius: 4px 0 0 4px;
+     -moz-border-radius: 4px 0 0 4px;
+          border-radius: 4px 0 0 4px;
+}
+
+.input-append input + .btn-group .btn:last-child,
+.input-append select + .btn-group .btn:last-child,
+.input-append .uneditable-input + .btn-group .btn:last-child {
+  -webkit-border-radius: 0 4px 4px 0;
+     -moz-border-radius: 0 4px 4px 0;
+          border-radius: 0 4px 4px 0;
+}
+
+.input-append .add-on,
+.input-append .btn,
+.input-append .btn-group {
+  margin-left: -1px;
+}
+
+.input-append .add-on:last-child,
+.input-append .btn:last-child,
+.input-append .btn-group:last-child > .dropdown-toggle {
+  -webkit-border-radius: 0 4px 4px 0;
+     -moz-border-radius: 0 4px 4px 0;
+          border-radius: 0 4px 4px 0;
+}
+
+.input-prepend.input-append input,
+.input-prepend.input-append select,
+.input-prepend.input-append .uneditable-input {
+  -webkit-border-radius: 0;
+     -moz-border-radius: 0;
+          border-radius: 0;
+}
+
+.input-prepend.input-append input + .btn-group .btn,
+.input-prepend.input-append select + .btn-group .btn,
+.input-prepend.input-append .uneditable-input + .btn-group .btn {
+  -webkit-border-radius: 0 4px 4px 0;
+     -moz-border-radius: 0 4px 4px 0;
+          border-radius: 0 4px 4px 0;
+}
+
+.input-prepend.input-append .add-on:first-child,
+.input-prepend.input-append .btn:first-child {
+  margin-right: -1px;
+  -webkit-border-radius: 4px 0 0 4px;
+     -moz-border-radius: 4px 0 0 4px;
+          border-radius: 4px 0 0 4px;
+}
+
+.input-prepend.input-append .add-on:last-child,
+.input-prepend.input-append .btn:last-child {
+  margin-left: -1px;
+  -webkit-border-radius: 0 4px 4px 0;
+     -moz-border-radius: 0 4px 4px 0;
+          border-radius: 0 4px 4px 0;
+}
+
+.input-prepend.input-append .btn-group:first-child {
+  margin-left: 0;
+}
+
+input.search-query {
+  padding-right: 14px;
+  padding-right: 4px \9;
+  padding-left: 14px;
+  padding-left: 4px \9;
+  /* IE7-8 doesn't have border-radius, so don't indent the padding */
+
+  margin-bottom: 0;
+  -webkit-border-radius: 15px;
+     -moz-border-radius: 15px;
+          border-radius: 15px;
+}
+
+/* Allow for input prepend/append in search forms */
+
+.form-search .input-append .search-query,
+.form-search .input-prepend .search-query {
+  -webkit-border-radius: 0;
+     -moz-border-radius: 0;
+          border-radius: 0;
+}
+
+.form-search .input-append .search-query {
+  -webkit-border-radius: 14px 0 0 14px;
+     -moz-border-radius: 14px 0 0 14px;
+          border-radius: 14px 0 0 14px;
+}
+
+.form-search .input-append .btn {
+  -webkit-border-radius: 0 14px 14px 0;
+     -moz-border-radius: 0 14px 14px 0;
+          border-radius: 0 14px 14px 0;
+}
+
+.form-search .input-prepend .search-query {
+  -webkit-border-radius: 0 14px 14px 0;
+     -moz-border-radius: 0 14px 14px 0;
+          border-radius: 0 14px 14px 0;
+}
+
+.form-search .input-prepend .btn {
+  -webkit-border-radius: 14px 0 0 14px;
+     -moz-border-radius: 14px 0 0 14px;
+          border-radius: 14px 0 0 14px;
+}
+
+.form-search input,
+.form-inline input,
+.form-horizontal input,
+.form-search textarea,
+.form-inline textarea,
+.form-horizontal textarea,
+.form-search select,
+.form-inline select,
+.form-horizontal select,
+.form-search .help-inline,
+.form-inline .help-inline,
+.form-horizontal .help-inline,
+.form-search .uneditable-input,
+.form-inline .uneditable-input,
+.form-horizontal .uneditable-input,
+.form-search .input-prepend,
+.form-inline .input-prepend,
+.form-horizontal .input-prepend,
+.form-search .input-append,
+.form-inline .input-append,
+.form-horizontal .input-append {
+  display: inline-block;
+  *display: inline;
+  margin-bottom: 0;
+  vertical-align: middle;
+  *zoom: 1;
+}
+
+.form-search .hide,
+.form-inline .hide,
+.form-horizontal .hide {
+  display: none;
+}
+
+.form-search label,
+.form-inline label,
+.form-search .btn-group,
+.form-inline .btn-group {
+  display: inline-block;
+}
+
+.form-search .input-append,
+.form-inline .input-append,
+.form-search .input-prepend,
+.form-inline .input-prepend {
+  margin-bottom: 0;
+}
+
+.form-search .radio,
+.form-search .checkbox,
+.form-inline .radio,
+.form-inline .checkbox {
+  padding-left: 0;
+  margin-bottom: 0;
+  vertical-align: middle;
+}
+
+.form-search .radio input[type="radio"],
+.form-search .checkbox input[type="checkbox"],
+.form-inline .radio input[type="radio"],
+.form-inline .checkbox input[type="checkbox"] {
+  float: left;
+  margin-right: 3px;
+  margin-left: 0;
+}
+
+.control-group {
+  margin-bottom: 10px;
+}
+
+legend + .control-group {
+  margin-top: 20px;
+  -webkit-margin-top-collapse: separate;
+}
+
+.form-horizontal .control-group {
+  margin-bottom: 20px;
+  *zoom: 1;
+}
+
+.form-horizontal .control-group:before,
+.form-horizontal .control-group:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.form-horizontal .control-group:after {
+  clear: both;
+}
+
+.form-horizontal .control-label {
+  float: left;
+  width: 160px;
+  padding-top: 5px;
+  text-align: right;
+}
+
+.form-horizontal .controls {
+  *display: inline-block;
+  *padding-left: 20px;
+  margin-left: 180px;
+  *margin-left: 0;
+}
+
+.form-horizontal .controls:first-child {
+  *padding-left: 180px;
+}
+
+.form-horizontal .help-block {
+  margin-bottom: 0;
+}
+
+.form-horizontal input + .help-block,
+.form-horizontal select + .help-block,
+.form-horizontal textarea + .help-block,
+.form-horizontal .uneditable-input + .help-block,
+.form-horizontal .input-prepend + .help-block,
+.form-horizontal .input-append + .help-block {
+  margin-top: 10px;
+}
+
+.form-horizontal .form-actions {
+  padding-left: 180px;
+}
+
+table {
+  max-width: 100%;
+  background-color: transparent;
+  border-collapse: collapse;
+  border-spacing: 0;
+}
+
+.table {
+  width: 100%;
+  margin-bottom: 20px;
+}
+
+.table th,
+.table td {
+  padding: 8px;
+  line-height: 20px;
+  text-align: left;
+  vertical-align: top;
+  border-top: 1px solid #dddddd;
+}
+
+.table th {
+  font-weight: bold;
+}
+
+.table thead th {
+  vertical-align: bottom;
+}
+
+.table caption + thead tr:first-child th,
+.table caption + thead tr:first-child td,
+.table colgroup + thead tr:first-child th,
+.table colgroup + thead tr:first-child td,
+.table thead:first-child tr:first-child th,
+.table thead:first-child tr:first-child td {
+  border-top: 0;
+}
+
+.table tbody + tbody {
+  border-top: 2px solid #dddddd;
+}
+
+.table .table {
+  background-color: #ffffff;
+}
+
+.table-condensed th,
+.table-condensed td {
+  padding: 4px 5px;
+}
+
+.table-bordered {
+  border: 1px solid #dddddd;
+  border-collapse: separate;
+  *border-collapse: collapse;
+  border-left: 0;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+}
+
+.table-bordered th,
+.table-bordered td {
+  border-left: 1px solid #dddddd;
+}
+
+.table-bordered caption + thead tr:first-child th,
+.table-bordered caption + tbody tr:first-child th,
+.table-bordered caption + tbody tr:first-child td,
+.table-bordered colgroup + thead tr:first-child th,
+.table-bordered colgroup + tbody tr:first-child th,
+.table-bordered colgroup + tbody tr:first-child td,
+.table-bordered thead:first-child tr:first-child th,
+.table-bordered tbody:first-child tr:first-child th,
+.table-bordered tbody:first-child tr:first-child td {
+  border-top: 0;
+}
+
+.table-bordered thead:first-child tr:first-child > th:first-child,
+.table-bordered tbody:first-child tr:first-child > td:first-child,
+.table-bordered tbody:first-child tr:first-child > th:first-child {
+  -webkit-border-top-left-radius: 4px;
+          border-top-left-radius: 4px;
+  -moz-border-radius-topleft: 4px;
+}
+
+.table-bordered thead:first-child tr:first-child > th:last-child,
+.table-bordered tbody:first-child tr:first-child > td:last-child,
+.table-bordered tbody:first-child tr:first-child > th:last-child {
+  -webkit-border-top-right-radius: 4px;
+          border-top-right-radius: 4px;
+  -moz-border-radius-topright: 4px;
+}
+
+.table-bordered thead:last-child tr:last-child > th:first-child,
+.table-bordered tbody:last-child tr:last-child > td:first-child,
+.table-bordered tbody:last-child tr:last-child > th:first-child,
+.table-bordered tfoot:last-child tr:last-child > td:first-child,
+.table-bordered tfoot:last-child tr:last-child > th:first-child {
+  -webkit-border-bottom-left-radius: 4px;
+          border-bottom-left-radius: 4px;
+  -moz-border-radius-bottomleft: 4px;
+}
+
+.table-bordered thead:last-child tr:last-child > th:last-child,
+.table-bordered tbody:last-child tr:last-child > td:last-child,
+.table-bordered tbody:last-child tr:last-child > th:last-child,
+.table-bordered tfoot:last-child tr:last-child > td:last-child,
+.table-bordered tfoot:last-child tr:last-child > th:last-child {
+  -webkit-border-bottom-right-radius: 4px;
+          border-bottom-right-radius: 4px;
+  -moz-border-radius-bottomright: 4px;
+}
+
+.table-bordered tfoot + tbody:last-child tr:last-child td:first-child {
+  -webkit-border-bottom-left-radius: 0;
+          border-bottom-left-radius: 0;
+  -moz-border-radius-bottomleft: 0;
+}
+
+.table-bordered tfoot + tbody:last-child tr:last-child td:last-child {
+  -webkit-border-bottom-right-radius: 0;
+          border-bottom-right-radius: 0;
+  -moz-border-radius-bottomright: 0;
+}
+
+.table-bordered caption + thead tr:first-child th:first-child,
+.table-bordered caption + tbody tr:first-child td:first-child,
+.table-bordered colgroup + thead tr:first-child th:first-child,
+.table-bordered colgroup + tbody tr:first-child td:first-child {
+  -webkit-border-top-left-radius: 4px;
+          border-top-left-radius: 4px;
+  -moz-border-radius-topleft: 4px;
+}
+
+.table-bordered caption + thead tr:first-child th:last-child,
+.table-bordered caption + tbody tr:first-child td:last-child,
+.table-bordered colgroup + thead tr:first-child th:last-child,
+.table-bordered colgroup + tbody tr:first-child td:last-child {
+  -webkit-border-top-right-radius: 4px;
+          border-top-right-radius: 4px;
+  -moz-border-radius-topright: 4px;
+}
+
+.table-striped tbody > tr:nth-child(odd) > td,
+.table-striped tbody > tr:nth-child(odd) > th {
+  background-color: #f9f9f9;
+}
+
+.table-hover tbody tr:hover > td,
+.table-hover tbody tr:hover > th {
+  background-color: #f5f5f5;
+}
+
+table td[class*="span"],
+table th[class*="span"],
+.row-fluid table td[class*="span"],
+.row-fluid table th[class*="span"] {
+  display: table-cell;
+  float: none;
+  margin-left: 0;
+}
+
+.table td.span1,
+.table th.span1 {
+  float: none;
+  width: 44px;
+  margin-left: 0;
+}
+
+.table td.span2,
+.table th.span2 {
+  float: none;
+  width: 124px;
+  margin-left: 0;
+}
+
+.table td.span3,
+.table th.span3 {
+  float: none;
+  width: 204px;
+  margin-left: 0;
+}
+
+.table td.span4,
+.table th.span4 {
+  float: none;
+  width: 284px;
+  margin-left: 0;
+}
+
+.table td.span5,
+.table th.span5 {
+  float: none;
+  width: 364px;
+  margin-left: 0;
+}
+
+.table td.span6,
+.table th.span6 {
+  float: none;
+  width: 444px;
+  margin-left: 0;
+}
+
+.table td.span7,
+.table th.span7 {
+  float: none;
+  width: 524px;
+  margin-left: 0;
+}
+
+.table td.span8,
+.table th.span8 {
+  float: none;
+  width: 604px;
+  margin-left: 0;
+}
+
+.table td.span9,
+.table th.span9 {
+  float: none;
+  width: 684px;
+  margin-left: 0;
+}
+
+.table td.span10,
+.table th.span10 {
+  float: none;
+  width: 764px;
+  margin-left: 0;
+}
+
+.table td.span11,
+.table th.span11 {
+  float: none;
+  width: 844px;
+  margin-left: 0;
+}
+
+.table td.span12,
+.table th.span12 {
+  float: none;
+  width: 924px;
+  margin-left: 0;
+}
+
+.table tbody tr.success > td {
+  background-color: #dff0d8;
+}
+
+.table tbody tr.error > td {
+  background-color: #f2dede;
+}
+
+.table tbody tr.warning > td {
+  background-color: #fcf8e3;
+}
+
+.table tbody tr.info > td {
+  background-color: #d9edf7;
+}
+
+.table-hover tbody tr.success:hover > td {
+  background-color: #d0e9c6;
+}
+
+.table-hover tbody tr.error:hover > td {
+  background-color: #ebcccc;
+}
+
+.table-hover tbody tr.warning:hover > td {
+  background-color: #faf2cc;
+}
+
+.table-hover tbody tr.info:hover > td {
+  background-color: #c4e3f3;
+}
+
+[class^="icon-"],
+[class*=" icon-"] {
+  display: inline-block;
+  width: 14px;
+  height: 14px;
+  margin-top: 1px;
+  *margin-right: .3em;
+  line-height: 14px;
+  vertical-align: text-top;
+  background-image: url("../img/glyphicons-halflings.png");
+  background-position: 14px 14px;
+  background-repeat: no-repeat;
+}
+
+/* White icons with optional class, or on hover/focus/active states of certain elements */
+
+.icon-white,
+.nav-pills > .active > a > [class^="icon-"],
+.nav-pills > .active > a > [class*=" icon-"],
+.nav-list > .active > a > [class^="icon-"],
+.nav-list > .active > a > [class*=" icon-"],
+.navbar-inverse .nav > .active > a > [class^="icon-"],
+.navbar-inverse .nav > .active > a > [class*=" icon-"],
+.dropdown-menu > li > a:hover > [class^="icon-"],
+.dropdown-menu > li > a:focus > [class^="icon-"],
+.dropdown-menu > li > a:hover > [class*=" icon-"],
+.dropdown-menu > li > a:focus > [class*=" icon-"],
+.dropdown-menu > .active > a > [class^="icon-"],
+.dropdown-menu > .active > a > [class*=" icon-"],
+.dropdown-submenu:hover > a > [class^="icon-"],
+.dropdown-submenu:focus > a > [class^="icon-"],
+.dropdown-submenu:hover > a > [class*=" icon-"],
+.dropdown-submenu:focus > a > [class*=" icon-"] {
+  background-image: url("../img/glyphicons-halflings-white.png");
+}
+
+.icon-glass {
+  background-position: 0      0;
+}
+
+.icon-music {
+  background-position: -24px 0;
+}
+
+.icon-search {
+  background-position: -48px 0;
+}
+
+.icon-envelope {
+  background-position: -72px 0;
+}
+
+.icon-heart {
+  background-position: -96px 0;
+}
+
+.icon-star {
+  background-position: -120px 0;
+}
+
+.icon-star-empty {
+  background-position: -144px 0;
+}
+
+.icon-user {
+  background-position: -168px 0;
+}
+
+.icon-film {
+  background-position: -192px 0;
+}
+
+.icon-th-large {
+  background-position: -216px 0;
+}
+
+.icon-th {
+  background-position: -240px 0;
+}
+
+.icon-th-list {
+  background-position: -264px 0;
+}
+
+.icon-ok {
+  background-position: -288px 0;
+}
+
+.icon-remove {
+  background-position: -312px 0;
+}
+
+.icon-zoom-in {
+  background-position: -336px 0;
+}
+
+.icon-zoom-out {
+  background-position: -360px 0;
+}
+
+.icon-off {
+  background-position: -384px 0;
+}
+
+.icon-signal {
+  background-position: -408px 0;
+}
+
+.icon-cog {
+  background-position: -432px 0;
+}
+
+.icon-trash {
+  background-position: -456px 0;
+}
+
+.icon-home {
+  background-position: 0 -24px;
+}
+
+.icon-file {
+  background-position: -24px -24px;
+}
+
+.icon-time {
+  background-position: -48px -24px;
+}
+
+.icon-road {
+  background-position: -72px -24px;
+}
+
+.icon-download-alt {
+  background-position: -96px -24px;
+}
+
+.icon-download {
+  background-position: -120px -24px;
+}
+
+.icon-upload {
+  background-position: -144px -24px;
+}
+
+.icon-inbox {
+  background-position: -168px -24px;
+}
+
+.icon-play-circle {
+  background-position: -192px -24px;
+}
+
+.icon-repeat {
+  background-position: -216px -24px;
+}
+
+.icon-refresh {
+  background-position: -240px -24px;
+}
+
+.icon-list-alt {
+  background-position: -264px -24px;
+}
+
+.icon-lock {
+  background-position: -287px -24px;
+}
+
+.icon-flag {
+  background-position: -312px -24px;
+}
+
+.icon-headphones {
+  background-position: -336px -24px;
+}
+
+.icon-volume-off {
+  background-position: -360px -24px;
+}
+
+.icon-volume-down {
+  background-position: -384px -24px;
+}
+
+.icon-volume-up {
+  background-position: -408px -24px;
+}
+
+.icon-qrcode {
+  background-position: -432px -24px;
+}
+
+.icon-barcode {
+  background-position: -456px -24px;
+}
+
+.icon-tag {
+  background-position: 0 -48px;
+}
+
+.icon-tags {
+  background-position: -25px -48px;
+}
+
+.icon-book {
+  background-position: -48px -48px;
+}
+
+.icon-bookmark {
+  background-position: -72px -48px;
+}
+
+.icon-print {
+  background-position: -96px -48px;
+}
+
+.icon-camera {
+  background-position: -120px -48px;
+}
+
+.icon-font {
+  background-position: -144px -48px;
+}
+
+.icon-bold {
+  background-position: -167px -48px;
+}
+
+.icon-italic {
+  background-position: -192px -48px;
+}
+
+.icon-text-height {
+  background-position: -216px -48px;
+}
+
+.icon-text-width {
+  background-position: -240px -48px;
+}
+
+.icon-align-left {
+  background-position: -264px -48px;
+}
+
+.icon-align-center {
+  background-position: -288px -48px;
+}
+
+.icon-align-right {
+  background-position: -312px -48px;
+}
+
+.icon-align-justify {
+  background-position: -336px -48px;
+}
+
+.icon-list {
+  background-position: -360px -48px;
+}
+
+.icon-indent-left {
+  background-position: -384px -48px;
+}
+
+.icon-indent-right {
+  background-position: -408px -48px;
+}
+
+.icon-facetime-video {
+  background-position: -432px -48px;
+}
+
+.icon-picture {
+  background-position: -456px -48px;
+}
+
+.icon-pencil {
+  background-position: 0 -72px;
+}
+
+.icon-map-marker {
+  background-position: -24px -72px;
+}
+
+.icon-adjust {
+  background-position: -48px -72px;
+}
+
+.icon-tint {
+  background-position: -72px -72px;
+}
+
+.icon-edit {
+  background-position: -96px -72px;
+}
+
+.icon-share {
+  background-position: -120px -72px;
+}
+
+.icon-check {
+  background-position: -144px -72px;
+}
+
+.icon-move {
+  background-position: -168px -72px;
+}
+
+.icon-step-backward {
+  background-position: -192px -72px;
+}
+
+.icon-fast-backward {
+  background-position: -216px -72px;
+}
+
+.icon-backward {
+  background-position: -240px -72px;
+}
+
+.icon-play {
+  background-position: -264px -72px;
+}
+
+.icon-pause {
+  background-position: -288px -72px;
+}
+
+.icon-stop {
+  background-position: -312px -72px;
+}
+
+.icon-forward {
+  background-position: -336px -72px;
+}
+
+.icon-fast-forward {
+  background-position: -360px -72px;
+}
+
+.icon-step-forward {
+  background-position: -384px -72px;
+}
+
+.icon-eject {
+  background-position: -408px -72px;
+}
+
+.icon-chevron-left {
+  background-position: -432px -72px;
+}
+
+.icon-chevron-right {
+  background-position: -456px -72px;
+}
+
+.icon-plus-sign {
+  background-position: 0 -96px;
+}
+
+.icon-minus-sign {
+  background-position: -24px -96px;
+}
+
+.icon-remove-sign {
+  background-position: -48px -96px;
+}
+
+.icon-ok-sign {
+  background-position: -72px -96px;
+}
+
+.icon-question-sign {
+  background-position: -96px -96px;
+}
+
+.icon-info-sign {
+  background-position: -120px -96px;
+}
+
+.icon-screenshot {
+  background-position: -144px -96px;
+}
+
+.icon-remove-circle {
+  background-position: -168px -96px;
+}
+
+.icon-ok-circle {
+  background-position: -192px -96px;
+}
+
+.icon-ban-circle {
+  background-position: -216px -96px;
+}
+
+.icon-arrow-left {
+  background-position: -240px -96px;
+}
+
+.icon-arrow-right {
+  background-position: -264px -96px;
+}
+
+.icon-arrow-up {
+  background-position: -289px -96px;
+}
+
+.icon-arrow-down {
+  background-position: -312px -96px;
+}
+
+.icon-share-alt {
+  background-position: -336px -96px;
+}
+
+.icon-resize-full {
+  background-position: -360px -96px;
+}
+
+.icon-resize-small {
+  background-position: -384px -96px;
+}
+
+.icon-plus {
+  background-position: -408px -96px;
+}
+
+.icon-minus {
+  background-position: -433px -96px;
+}
+
+.icon-asterisk {
+  background-position: -456px -96px;
+}
+
+.icon-exclamation-sign {
+  background-position: 0 -120px;
+}
+
+.icon-gift {
+  background-position: -24px -120px;
+}
+
+.icon-leaf {
+  background-position: -48px -120px;
+}
+
+.icon-fire {
+  background-position: -72px -120px;
+}
+
+.icon-eye-open {
+  background-position: -96px -120px;
+}
+
+.icon-eye-close {
+  background-position: -120px -120px;
+}
+
+.icon-warning-sign {
+  background-position: -144px -120px;
+}
+
+.icon-plane {
+  background-position: -168px -120px;
+}
+
+.icon-calendar {
+  background-position: -192px -120px;
+}
+
+.icon-random {
+  width: 16px;
+  background-position: -216px -120px;
+}
+
+.icon-comment {
+  background-position: -240px -120px;
+}
+
+.icon-magnet {
+  background-position: -264px -120px;
+}
+
+.icon-chevron-up {
+  background-position: -288px -120px;
+}
+
+.icon-chevron-down {
+  background-position: -313px -119px;
+}
+
+.icon-retweet {
+  background-position: -336px -120px;
+}
+
+.icon-shopping-cart {
+  background-position: -360px -120px;
+}
+
+.icon-folder-close {
+  width: 16px;
+  background-position: -384px -120px;
+}
+
+.icon-folder-open {
+  width: 16px;
+  background-position: -408px -120px;
+}
+
+.icon-resize-vertical {
+  background-position: -432px -119px;
+}
+
+.icon-resize-horizontal {
+  background-position: -456px -118px;
+}
+
+.icon-hdd {
+  background-position: 0 -144px;
+}
+
+.icon-bullhorn {
+  background-position: -24px -144px;
+}
+
+.icon-bell {
+  background-position: -48px -144px;
+}
+
+.icon-certificate {
+  background-position: -72px -144px;
+}
+
+.icon-thumbs-up {
+  background-position: -96px -144px;
+}
+
+.icon-thumbs-down {
+  background-position: -120px -144px;
+}
+
+.icon-hand-right {
+  background-position: -144px -144px;
+}
+
+.icon-hand-left {
+  background-position: -168px -144px;
+}
+
+.icon-hand-up {
+  background-position: -192px -144px;
+}
+
+.icon-hand-down {
+  background-position: -216px -144px;
+}
+
+.icon-circle-arrow-right {
+  background-position: -240px -144px;
+}
+
+.icon-circle-arrow-left {
+  background-position: -264px -144px;
+}
+
+.icon-circle-arrow-up {
+  background-position: -288px -144px;
+}
+
+.icon-circle-arrow-down {
+  background-position: -312px -144px;
+}
+
+.icon-globe {
+  background-position: -336px -144px;
+}
+
+.icon-wrench {
+  background-position: -360px -144px;
+}
+
+.icon-tasks {
+  background-position: -384px -144px;
+}
+
+.icon-filter {
+  background-position: -408px -144px;
+}
+
+.icon-briefcase {
+  background-position: -432px -144px;
+}
+
+.icon-fullscreen {
+  background-position: -456px -144px;
+}
+
+.dropup,
+.dropdown {
+  position: relative;
+}
+
+.dropdown-toggle {
+  *margin-bottom: -3px;
+}
+
+.dropdown-toggle:active,
+.open .dropdown-toggle {
+  outline: 0;
+}
+
+.caret {
+  display: inline-block;
+  width: 0;
+  height: 0;
+  vertical-align: top;
+  border-top: 4px solid #000000;
+  border-right: 4px solid transparent;
+  border-left: 4px solid transparent;
+  content: "";
+}
+
+.dropdown .caret {
+  margin-top: 8px;
+  margin-left: 2px;
+}
+
+.dropdown-menu {
+  position: absolute;
+  top: 100%;
+  left: 0;
+  z-index: 1000;
+  display: none;
+  float: left;
+  min-width: 160px;
+  padding: 5px 0;
+  margin: 2px 0 0;
+  list-style: none;
+  background-color: #ffffff;
+  border: 1px solid #ccc;
+  border: 1px solid rgba(0, 0, 0, 0.2);
+  *border-right-width: 2px;
+  *border-bottom-width: 2px;
+  -webkit-border-radius: 6px;
+     -moz-border-radius: 6px;
+          border-radius: 6px;
+  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+     -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+  -webkit-background-clip: padding-box;
+     -moz-background-clip: padding;
+          background-clip: padding-box;
+}
+
+.dropdown-menu.pull-right {
+  right: 0;
+  left: auto;
+}
+
+.dropdown-menu .divider {
+  *width: 100%;
+  height: 1px;
+  margin: 9px 1px;
+  *margin: -5px 0 5px;
+  overflow: hidden;
+  background-color: #e5e5e5;
+  border-bottom: 1px solid #ffffff;
+}
+
+.dropdown-menu > li > a {
+  display: block;
+  padding: 3px 20px;
+  clear: both;
+  font-weight: normal;
+  line-height: 20px;
+  color: #333333;
+  white-space: nowrap;
+}
+
+.dropdown-menu > li > a:hover,
+.dropdown-menu > li > a:focus,
+.dropdown-submenu:hover > a,
+.dropdown-submenu:focus > a {
+  color: #ffffff;
+  text-decoration: none;
+  background-color: #0081c2;
+  background-image: -moz-linear-gradient(top, #0088cc, #0077b3);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));
+  background-image: -webkit-linear-gradient(top, #0088cc, #0077b3);
+  background-image: -o-linear-gradient(top, #0088cc, #0077b3);
+  background-image: linear-gradient(to bottom, #0088cc, #0077b3);
+  background-repeat: repeat-x;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', 
GradientType=0);
+}
+
+.dropdown-menu > .active > a,
+.dropdown-menu > .active > a:hover,
+.dropdown-menu > .active > a:focus {
+  color: #ffffff;
+  text-decoration: none;
+  background-color: #0081c2;
+  background-image: -moz-linear-gradient(top, #0088cc, #0077b3);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0077b3));
+  background-image: -webkit-linear-gradient(top, #0088cc, #0077b3);
+  background-image: -o-linear-gradient(top, #0088cc, #0077b3);
+  background-image: linear-gradient(to bottom, #0088cc, #0077b3);
+  background-repeat: repeat-x;
+  outline: 0;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0077b3', 
GradientType=0);
+}
+
+.dropdown-menu > .disabled > a,
+.dropdown-menu > .disabled > a:hover,
+.dropdown-menu > .disabled > a:focus {
+  color: #999999;
+}
+
+.dropdown-menu > .disabled > a:hover,
+.dropdown-menu > .disabled > a:focus {
+  text-decoration: none;
+  cursor: default;
+  background-color: transparent;
+  background-image: none;
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+}
+
+.open {
+  *z-index: 1000;
+}
+
+.open > .dropdown-menu {
+  display: block;
+}
+
+.dropdown-backdrop {
+  position: fixed;
+  top: 0;
+  right: 0;
+  bottom: 0;
+  left: 0;
+  z-index: 990;
+}
+
+.pull-right > .dropdown-menu {
+  right: 0;
+  left: auto;
+}
+
+.dropup .caret,
+.navbar-fixed-bottom .dropdown .caret {
+  border-top: 0;
+  border-bottom: 4px solid #000000;
+  content: "";
+}
+
+.dropup .dropdown-menu,
+.navbar-fixed-bottom .dropdown .dropdown-menu {
+  top: auto;
+  bottom: 100%;
+  margin-bottom: 1px;
+}
+
+.dropdown-submenu {
+  position: relative;
+}
+
+.dropdown-submenu > .dropdown-menu {
+  top: 0;
+  left: 100%;
+  margin-top: -6px;
+  margin-left: -1px;
+  -webkit-border-radius: 0 6px 6px 6px;
+     -moz-border-radius: 0 6px 6px 6px;
+          border-radius: 0 6px 6px 6px;
+}
+
+.dropdown-submenu:hover > .dropdown-menu {
+  display: block;
+}
+
+.dropup .dropdown-submenu > .dropdown-menu {
+  top: auto;
+  bottom: 0;
+  margin-top: 0;
+  margin-bottom: -2px;
+  -webkit-border-radius: 5px 5px 5px 0;
+     -moz-border-radius: 5px 5px 5px 0;
+          border-radius: 5px 5px 5px 0;
+}
+
+.dropdown-submenu > a:after {
+  display: block;
+  float: right;
+  width: 0;
+  height: 0;
+  margin-top: 5px;
+  margin-right: -10px;
+  border-color: transparent;
+  border-left-color: #cccccc;
+  border-style: solid;
+  border-width: 5px 0 5px 5px;
+  content: " ";
+}
+
+.dropdown-submenu:hover > a:after {
+  border-left-color: #ffffff;
+}
+
+.dropdown-submenu.pull-left {
+  float: none;
+}
+
+.dropdown-submenu.pull-left > .dropdown-menu {
+  left: -100%;
+  margin-left: 10px;
+  -webkit-border-radius: 6px 0 6px 6px;
+     -moz-border-radius: 6px 0 6px 6px;
+          border-radius: 6px 0 6px 6px;
+}
+
+.dropdown .dropdown-menu .nav-header {
+  padding-right: 20px;
+  padding-left: 20px;
+}
+
+.typeahead {
+  z-index: 1051;
+  margin-top: 2px;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+}
+
+.well {
+  min-height: 20px;
+  padding: 19px;
+  margin-bottom: 20px;
+  background-color: #f5f5f5;
+  border: 1px solid #e3e3e3;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+  -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
+     -moz-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
+          box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.05);
+}
+
+.well blockquote {
+  border-color: #ddd;
+  border-color: rgba(0, 0, 0, 0.15);
+}
+
+.well-large {
+  padding: 24px;
+  -webkit-border-radius: 6px;
+     -moz-border-radius: 6px;
+          border-radius: 6px;
+}
+
+.well-small {
+  padding: 9px;
+  -webkit-border-radius: 3px;
+     -moz-border-radius: 3px;
+          border-radius: 3px;
+}
+
+.fade {
+  opacity: 0;
+  -webkit-transition: opacity 0.15s linear;
+     -moz-transition: opacity 0.15s linear;
+       -o-transition: opacity 0.15s linear;
+          transition: opacity 0.15s linear;
+}
+
+.fade.in {
+  opacity: 1;
+}
+
+.collapse {
+  position: relative;
+  height: 0;
+  overflow: hidden;
+  -webkit-transition: height 0.35s ease;
+     -moz-transition: height 0.35s ease;
+       -o-transition: height 0.35s ease;
+          transition: height 0.35s ease;
+}
+
+.collapse.in {
+  height: auto;
+}
+
+.close {
+  float: right;
+  font-size: 20px;
+  font-weight: bold;
+  line-height: 20px;
+  color: #000000;
+  text-shadow: 0 1px 0 #ffffff;
+  opacity: 0.2;
+  filter: alpha(opacity=20);
+}
+
+.close:hover,
+.close:focus {
+  color: #000000;
+  text-decoration: none;
+  cursor: pointer;
+  opacity: 0.4;
+  filter: alpha(opacity=40);
+}
+
+button.close {
+  padding: 0;
+  cursor: pointer;
+  background: transparent;
+  border: 0;
+  -webkit-appearance: none;
+}
+
+.btn {
+  display: inline-block;
+  *display: inline;
+  padding: 4px 12px;
+  margin-bottom: 0;
+  *margin-left: .3em;
+  font-size: 14px;
+  line-height: 20px;
+  color: #333333;
+  text-align: center;
+  text-shadow: 0 1px 1px rgba(255, 255, 255, 0.75);
+  vertical-align: middle;
+  cursor: pointer;
+  background-color: #f5f5f5;
+  *background-color: #e6e6e6;
+  background-image: -moz-linear-gradient(top, #ffffff, #e6e6e6);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#e6e6e6));
+  background-image: -webkit-linear-gradient(top, #ffffff, #e6e6e6);
+  background-image: -o-linear-gradient(top, #ffffff, #e6e6e6);
+  background-image: linear-gradient(to bottom, #ffffff, #e6e6e6);
+  background-repeat: repeat-x;
+  border: 1px solid #cccccc;
+  *border: 0;
+  border-color: #e6e6e6 #e6e6e6 #bfbfbf;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  border-bottom-color: #b3b3b3;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#ffe6e6e6', 
GradientType=0);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+  *zoom: 1;
+  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+     -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+          box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 1px 2px rgba(0, 0, 0, 0.05);
+}
+
+.btn:hover,
+.btn:focus,
+.btn:active,
+.btn.active,
+.btn.disabled,
+.btn[disabled] {
+  color: #333333;
+  background-color: #e6e6e6;
+  *background-color: #d9d9d9;
+}
+
+.btn:active,
+.btn.active {
+  background-color: #cccccc \9;
+}
+
+.btn:first-child {
+  *margin-left: 0;
+}
+
+.btn:hover,
+.btn:focus {
+  color: #333333;
+  text-decoration: none;
+  background-position: 0 -15px;
+  -webkit-transition: background-position 0.1s linear;
+     -moz-transition: background-position 0.1s linear;
+       -o-transition: background-position 0.1s linear;
+          transition: background-position 0.1s linear;
+}
+
+.btn:focus {
+  outline: thin dotted #333;
+  outline: 5px auto -webkit-focus-ring-color;
+  outline-offset: -2px;
+}
+
+.btn.active,
+.btn:active {
+  background-image: none;
+  outline: 0;
+  -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+     -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+          box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+}
+
+.btn.disabled,
+.btn[disabled] {
+  cursor: default;
+  background-image: none;
+  opacity: 0.65;
+  filter: alpha(opacity=65);
+  -webkit-box-shadow: none;
+     -moz-box-shadow: none;
+          box-shadow: none;
+}
+
+.btn-large {
+  padding: 11px 19px;
+  font-size: 17.5px;
+  -webkit-border-radius: 6px;
+     -moz-border-radius: 6px;
+          border-radius: 6px;
+}
+
+.btn-large [class^="icon-"],
+.btn-large [class*=" icon-"] {
+  margin-top: 4px;
+}
+
+.btn-small {
+  padding: 2px 10px;
+  font-size: 11.9px;
+  -webkit-border-radius: 3px;
+     -moz-border-radius: 3px;
+          border-radius: 3px;
+}
+
+.btn-small [class^="icon-"],
+.btn-small [class*=" icon-"] {
+  margin-top: 0;
+}
+
+.btn-mini [class^="icon-"],
+.btn-mini [class*=" icon-"] {
+  margin-top: -1px;
+}
+
+.btn-mini {
+  padding: 0 6px;
+  font-size: 10.5px;
+  -webkit-border-radius: 3px;
+     -moz-border-radius: 3px;
+          border-radius: 3px;
+}
+
+.btn-block {
+  display: block;
+  width: 100%;
+  padding-right: 0;
+  padding-left: 0;
+  -webkit-box-sizing: border-box;
+     -moz-box-sizing: border-box;
+          box-sizing: border-box;
+}
+
+.btn-block + .btn-block {
+  margin-top: 5px;
+}
+
+input[type="submit"].btn-block,
+input[type="reset"].btn-block,
+input[type="button"].btn-block {
+  width: 100%;
+}
+
+.btn-primary.active,
+.btn-warning.active,
+.btn-danger.active,
+.btn-success.active,
+.btn-info.active,
+.btn-inverse.active {
+  color: rgba(255, 255, 255, 0.75);
+}
+
+.btn-primary {
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  background-color: #006dcc;
+  *background-color: #0044cc;
+  background-image: -moz-linear-gradient(top, #0088cc, #0044cc);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#0088cc), to(#0044cc));
+  background-image: -webkit-linear-gradient(top, #0088cc, #0044cc);
+  background-image: -o-linear-gradient(top, #0088cc, #0044cc);
+  background-image: linear-gradient(to bottom, #0088cc, #0044cc);
+  background-repeat: repeat-x;
+  border-color: #0044cc #0044cc #002a80;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc', endColorstr='#ff0044cc', 
GradientType=0);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+}
+
+.btn-primary:hover,
+.btn-primary:focus,
+.btn-primary:active,
+.btn-primary.active,
+.btn-primary.disabled,
+.btn-primary[disabled] {
+  color: #ffffff;
+  background-color: #0044cc;
+  *background-color: #003bb3;
+}
+
+.btn-primary:active,
+.btn-primary.active {
+  background-color: #003399 \9;
+}
+
+.btn-warning {
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  background-color: #faa732;
+  *background-color: #f89406;
+  background-image: -moz-linear-gradient(top, #fbb450, #f89406);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
+  background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
+  background-image: -o-linear-gradient(top, #fbb450, #f89406);
+  background-image: linear-gradient(to bottom, #fbb450, #f89406);
+  background-repeat: repeat-x;
+  border-color: #f89406 #f89406 #ad6704;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', 
GradientType=0);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+}
+
+.btn-warning:hover,
+.btn-warning:focus,
+.btn-warning:active,
+.btn-warning.active,
+.btn-warning.disabled,
+.btn-warning[disabled] {
+  color: #ffffff;
+  background-color: #f89406;
+  *background-color: #df8505;
+}
+
+.btn-warning:active,
+.btn-warning.active {
+  background-color: #c67605 \9;
+}
+
+.btn-danger {
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  background-color: #da4f49;
+  *background-color: #bd362f;
+  background-image: -moz-linear-gradient(top, #ee5f5b, #bd362f);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#bd362f));
+  background-image: -webkit-linear-gradient(top, #ee5f5b, #bd362f);
+  background-image: -o-linear-gradient(top, #ee5f5b, #bd362f);
+  background-image: linear-gradient(to bottom, #ee5f5b, #bd362f);
+  background-repeat: repeat-x;
+  border-color: #bd362f #bd362f #802420;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffbd362f', 
GradientType=0);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+}
+
+.btn-danger:hover,
+.btn-danger:focus,
+.btn-danger:active,
+.btn-danger.active,
+.btn-danger.disabled,
+.btn-danger[disabled] {
+  color: #ffffff;
+  background-color: #bd362f;
+  *background-color: #a9302a;
+}
+
+.btn-danger:active,
+.btn-danger.active {
+  background-color: #942a25 \9;
+}
+
+.btn-success {
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  background-color: #5bb75b;
+  *background-color: #51a351;
+  background-image: -moz-linear-gradient(top, #62c462, #51a351);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#51a351));
+  background-image: -webkit-linear-gradient(top, #62c462, #51a351);
+  background-image: -o-linear-gradient(top, #62c462, #51a351);
+  background-image: linear-gradient(to bottom, #62c462, #51a351);
+  background-repeat: repeat-x;
+  border-color: #51a351 #51a351 #387038;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff51a351', 
GradientType=0);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+}
+
+.btn-success:hover,
+.btn-success:focus,
+.btn-success:active,
+.btn-success.active,
+.btn-success.disabled,
+.btn-success[disabled] {
+  color: #ffffff;
+  background-color: #51a351;
+  *background-color: #499249;
+}
+
+.btn-success:active,
+.btn-success.active {
+  background-color: #408140 \9;
+}
+
+.btn-info {
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  background-color: #49afcd;
+  *background-color: #2f96b4;
+  background-image: -moz-linear-gradient(top, #5bc0de, #2f96b4);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#2f96b4));
+  background-image: -webkit-linear-gradient(top, #5bc0de, #2f96b4);
+  background-image: -o-linear-gradient(top, #5bc0de, #2f96b4);
+  background-image: linear-gradient(to bottom, #5bc0de, #2f96b4);
+  background-repeat: repeat-x;
+  border-color: #2f96b4 #2f96b4 #1f6377;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff2f96b4', 
GradientType=0);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+}
+
+.btn-info:hover,
+.btn-info:focus,
+.btn-info:active,
+.btn-info.active,
+.btn-info.disabled,
+.btn-info[disabled] {
+  color: #ffffff;
+  background-color: #2f96b4;
+  *background-color: #2a85a0;
+}
+
+.btn-info:active,
+.btn-info.active {
+  background-color: #24748c \9;
+}
+
+.btn-inverse {
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  background-color: #363636;
+  *background-color: #222222;
+  background-image: -moz-linear-gradient(top, #444444, #222222);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#444444), to(#222222));
+  background-image: -webkit-linear-gradient(top, #444444, #222222);
+  background-image: -o-linear-gradient(top, #444444, #222222);
+  background-image: linear-gradient(to bottom, #444444, #222222);
+  background-repeat: repeat-x;
+  border-color: #222222 #222222 #000000;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444', endColorstr='#ff222222', 
GradientType=0);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+}
+
+.btn-inverse:hover,
+.btn-inverse:focus,
+.btn-inverse:active,
+.btn-inverse.active,
+.btn-inverse.disabled,
+.btn-inverse[disabled] {
+  color: #ffffff;
+  background-color: #222222;
+  *background-color: #151515;
+}
+
+.btn-inverse:active,
+.btn-inverse.active {
+  background-color: #080808 \9;
+}
+
+button.btn,
+input[type="submit"].btn {
+  *padding-top: 3px;
+  *padding-bottom: 3px;
+}
+
+button.btn::-moz-focus-inner,
+input[type="submit"].btn::-moz-focus-inner {
+  padding: 0;
+  border: 0;
+}
+
+button.btn.btn-large,
+input[type="submit"].btn.btn-large {
+  *padding-top: 7px;
+  *padding-bottom: 7px;
+}
+
+button.btn.btn-small,
+input[type="submit"].btn.btn-small {
+  *padding-top: 3px;
+  *padding-bottom: 3px;
+}
+
+button.btn.btn-mini,
+input[type="submit"].btn.btn-mini {
+  *padding-top: 1px;
+  *padding-bottom: 1px;
+}
+
+.btn-link,
+.btn-link:active,
+.btn-link[disabled] {
+  background-color: transparent;
+  background-image: none;
+  -webkit-box-shadow: none;
+     -moz-box-shadow: none;
+          box-shadow: none;
+}
+
+.btn-link {
+  color: #0088cc;
+  cursor: pointer;
+  border-color: transparent;
+  -webkit-border-radius: 0;
+     -moz-border-radius: 0;
+          border-radius: 0;
+}
+
+.btn-link:hover,
+.btn-link:focus {
+  color: #005580;
+  text-decoration: underline;
+  background-color: transparent;
+}
+
+.btn-link[disabled]:hover,
+.btn-link[disabled]:focus {
+  color: #333333;
+  text-decoration: none;
+}
+
+.btn-group {
+  position: relative;
+  display: inline-block;
+  *display: inline;
+  *margin-left: .3em;
+  font-size: 0;
+  white-space: nowrap;
+  vertical-align: middle;
+  *zoom: 1;
+}
+
+.btn-group:first-child {
+  *margin-left: 0;
+}
+
+.btn-group + .btn-group {
+  margin-left: 5px;
+}
+
+.btn-toolbar {
+  margin-top: 10px;
+  margin-bottom: 10px;
+  font-size: 0;
+}
+
+.btn-toolbar > .btn + .btn,
+.btn-toolbar > .btn-group + .btn,
+.btn-toolbar > .btn + .btn-group {
+  margin-left: 5px;
+}
+
+.btn-group > .btn {
+  position: relative;
+  -webkit-border-radius: 0;
+     -moz-border-radius: 0;
+          border-radius: 0;
+}
+
+.btn-group > .btn + .btn {
+  margin-left: -1px;
+}
+
+.btn-group > .btn,
+.btn-group > .dropdown-menu,
+.btn-group > .popover {
+  font-size: 14px;
+}
+
+.btn-group > .btn-mini {
+  font-size: 10.5px;
+}
+
+.btn-group > .btn-small {
+  font-size: 11.9px;
+}
+
+.btn-group > .btn-large {
+  font-size: 17.5px;
+}
+
+.btn-group > .btn:first-child {
+  margin-left: 0;
+  -webkit-border-bottom-left-radius: 4px;
+          border-bottom-left-radius: 4px;
+  -webkit-border-top-left-radius: 4px;
+          border-top-left-radius: 4px;
+  -moz-border-radius-bottomleft: 4px;
+  -moz-border-radius-topleft: 4px;
+}
+
+.btn-group > .btn:last-child,
+.btn-group > .dropdown-toggle {
+  -webkit-border-top-right-radius: 4px;
+          border-top-right-radius: 4px;
+  -webkit-border-bottom-right-radius: 4px;
+          border-bottom-right-radius: 4px;
+  -moz-border-radius-topright: 4px;
+  -moz-border-radius-bottomright: 4px;
+}
+
+.btn-group > .btn.large:first-child {
+  margin-left: 0;
+  -webkit-border-bottom-left-radius: 6px;
+          border-bottom-left-radius: 6px;
+  -webkit-border-top-left-radius: 6px;
+          border-top-left-radius: 6px;
+  -moz-border-radius-bottomleft: 6px;
+  -moz-border-radius-topleft: 6px;
+}
+
+.btn-group > .btn.large:last-child,
+.btn-group > .large.dropdown-toggle {
+  -webkit-border-top-right-radius: 6px;
+          border-top-right-radius: 6px;
+  -webkit-border-bottom-right-radius: 6px;
+          border-bottom-right-radius: 6px;
+  -moz-border-radius-topright: 6px;
+  -moz-border-radius-bottomright: 6px;
+}
+
+.btn-group > .btn:hover,
+.btn-group > .btn:focus,
+.btn-group > .btn:active,
+.btn-group > .btn.active {
+  z-index: 2;
+}
+
+.btn-group .dropdown-toggle:active,
+.btn-group.open .dropdown-toggle {
+  outline: 0;
+}
+
+.btn-group > .btn + .dropdown-toggle {
+  *padding-top: 5px;
+  padding-right: 8px;
+  *padding-bottom: 5px;
+  padding-left: 8px;
+  -webkit-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 
1px 2px rgba(0, 0, 0, 0.05);
+     -moz-box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 
1px 2px rgba(0, 0, 0, 0.05);
+          box-shadow: inset 1px 0 0 rgba(255, 255, 255, 0.125), inset 0 1px 0 rgba(255, 255, 255, 0.2), 0 
1px 2px rgba(0, 0, 0, 0.05);
+}
+
+.btn-group > .btn-mini + .dropdown-toggle {
+  *padding-top: 2px;
+  padding-right: 5px;
+  *padding-bottom: 2px;
+  padding-left: 5px;
+}
+
+.btn-group > .btn-small + .dropdown-toggle {
+  *padding-top: 5px;
+  *padding-bottom: 4px;
+}
+
+.btn-group > .btn-large + .dropdown-toggle {
+  *padding-top: 7px;
+  padding-right: 12px;
+  *padding-bottom: 7px;
+  padding-left: 12px;
+}
+
+.btn-group.open .dropdown-toggle {
+  background-image: none;
+  -webkit-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+     -moz-box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+          box-shadow: inset 0 2px 4px rgba(0, 0, 0, 0.15), 0 1px 2px rgba(0, 0, 0, 0.05);
+}
+
+.btn-group.open .btn.dropdown-toggle {
+  background-color: #e6e6e6;
+}
+
+.btn-group.open .btn-primary.dropdown-toggle {
+  background-color: #0044cc;
+}
+
+.btn-group.open .btn-warning.dropdown-toggle {
+  background-color: #f89406;
+}
+
+.btn-group.open .btn-danger.dropdown-toggle {
+  background-color: #bd362f;
+}
+
+.btn-group.open .btn-success.dropdown-toggle {
+  background-color: #51a351;
+}
+
+.btn-group.open .btn-info.dropdown-toggle {
+  background-color: #2f96b4;
+}
+
+.btn-group.open .btn-inverse.dropdown-toggle {
+  background-color: #222222;
+}
+
+.btn .caret {
+  margin-top: 8px;
+  margin-left: 0;
+}
+
+.btn-large .caret {
+  margin-top: 6px;
+}
+
+.btn-large .caret {
+  border-top-width: 5px;
+  border-right-width: 5px;
+  border-left-width: 5px;
+}
+
+.btn-mini .caret,
+.btn-small .caret {
+  margin-top: 8px;
+}
+
+.dropup .btn-large .caret {
+  border-bottom-width: 5px;
+}
+
+.btn-primary .caret,
+.btn-warning .caret,
+.btn-danger .caret,
+.btn-info .caret,
+.btn-success .caret,
+.btn-inverse .caret {
+  border-top-color: #ffffff;
+  border-bottom-color: #ffffff;
+}
+
+.btn-group-vertical {
+  display: inline-block;
+  *display: inline;
+  /* IE7 inline-block hack */
+
+  *zoom: 1;
+}
+
+.btn-group-vertical > .btn {
+  display: block;
+  float: none;
+  max-width: 100%;
+  -webkit-border-radius: 0;
+     -moz-border-radius: 0;
+          border-radius: 0;
+}
+
+.btn-group-vertical > .btn + .btn {
+  margin-top: -1px;
+  margin-left: 0;
+}
+
+.btn-group-vertical > .btn:first-child {
+  -webkit-border-radius: 4px 4px 0 0;
+     -moz-border-radius: 4px 4px 0 0;
+          border-radius: 4px 4px 0 0;
+}
+
+.btn-group-vertical > .btn:last-child {
+  -webkit-border-radius: 0 0 4px 4px;
+     -moz-border-radius: 0 0 4px 4px;
+          border-radius: 0 0 4px 4px;
+}
+
+.btn-group-vertical > .btn-large:first-child {
+  -webkit-border-radius: 6px 6px 0 0;
+     -moz-border-radius: 6px 6px 0 0;
+          border-radius: 6px 6px 0 0;
+}
+
+.btn-group-vertical > .btn-large:last-child {
+  -webkit-border-radius: 0 0 6px 6px;
+     -moz-border-radius: 0 0 6px 6px;
+          border-radius: 0 0 6px 6px;
+}
+
+.alert {
+  padding: 8px 35px 8px 14px;
+  margin-bottom: 20px;
+  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+  background-color: #fcf8e3;
+  border: 1px solid #fbeed5;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+}
+
+.alert,
+.alert h4 {
+  color: #c09853;
+}
+
+.alert h4 {
+  margin: 0;
+}
+
+.alert .close {
+  position: relative;
+  top: -2px;
+  right: -21px;
+  line-height: 20px;
+}
+
+.alert-success {
+  color: #468847;
+  background-color: #dff0d8;
+  border-color: #d6e9c6;
+}
+
+.alert-success h4 {
+  color: #468847;
+}
+
+.alert-danger,
+.alert-error {
+  color: #b94a48;
+  background-color: #f2dede;
+  border-color: #eed3d7;
+}
+
+.alert-danger h4,
+.alert-error h4 {
+  color: #b94a48;
+}
+
+.alert-info {
+  color: #3a87ad;
+  background-color: #d9edf7;
+  border-color: #bce8f1;
+}
+
+.alert-info h4 {
+  color: #3a87ad;
+}
+
+.alert-block {
+  padding-top: 14px;
+  padding-bottom: 14px;
+}
+
+.alert-block > p,
+.alert-block > ul {
+  margin-bottom: 0;
+}
+
+.alert-block p + p {
+  margin-top: 5px;
+}
+
+.nav {
+  margin-bottom: 20px;
+  margin-left: 0;
+  list-style: none;
+}
+
+.nav > li > a {
+  display: block;
+}
+
+.nav > li > a:hover,
+.nav > li > a:focus {
+  text-decoration: none;
+  background-color: #eeeeee;
+}
+
+.nav > li > a > img {
+  max-width: none;
+}
+
+.nav > .pull-right {
+  float: right;
+}
+
+.nav-header {
+  display: block;
+  padding: 3px 15px;
+  font-size: 11px;
+  font-weight: bold;
+  line-height: 20px;
+  color: #999999;
+  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+  text-transform: uppercase;
+}
+
+.nav li + .nav-header {
+  margin-top: 9px;
+}
+
+.nav-list {
+  padding-right: 15px;
+  padding-left: 15px;
+  margin-bottom: 0;
+}
+
+.nav-list > li > a,
+.nav-list .nav-header {
+  margin-right: -15px;
+  margin-left: -15px;
+  text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
+}
+
+.nav-list > li > a {
+  padding: 3px 15px;
+}
+
+.nav-list > .active > a,
+.nav-list > .active > a:hover,
+.nav-list > .active > a:focus {
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.2);
+  background-color: #0088cc;
+}
+
+.nav-list [class^="icon-"],
+.nav-list [class*=" icon-"] {
+  margin-right: 2px;
+}
+
+.nav-list .divider {
+  *width: 100%;
+  height: 1px;
+  margin: 9px 1px;
+  *margin: -5px 0 5px;
+  overflow: hidden;
+  background-color: #e5e5e5;
+  border-bottom: 1px solid #ffffff;
+}
+
+.nav-tabs,
+.nav-pills {
+  *zoom: 1;
+}
+
+.nav-tabs:before,
+.nav-pills:before,
+.nav-tabs:after,
+.nav-pills:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.nav-tabs:after,
+.nav-pills:after {
+  clear: both;
+}
+
+.nav-tabs > li,
+.nav-pills > li {
+  float: left;
+}
+
+.nav-tabs > li > a,
+.nav-pills > li > a {
+  padding-right: 12px;
+  padding-left: 12px;
+  margin-right: 2px;
+  line-height: 14px;
+}
+
+.nav-tabs {
+  border-bottom: 1px solid #ddd;
+}
+
+.nav-tabs > li {
+  margin-bottom: -1px;
+}
+
+.nav-tabs > li > a {
+  padding-top: 8px;
+  padding-bottom: 8px;
+  line-height: 20px;
+  border: 1px solid transparent;
+  -webkit-border-radius: 4px 4px 0 0;
+     -moz-border-radius: 4px 4px 0 0;
+          border-radius: 4px 4px 0 0;
+}
+
+.nav-tabs > li > a:hover,
+.nav-tabs > li > a:focus {
+  border-color: #eeeeee #eeeeee #dddddd;
+}
+
+.nav-tabs > .active > a,
+.nav-tabs > .active > a:hover,
+.nav-tabs > .active > a:focus {
+  color: #555555;
+  cursor: default;
+  background-color: #ffffff;
+  border: 1px solid #ddd;
+  border-bottom-color: transparent;
+}
+
+.nav-pills > li > a {
+  padding-top: 8px;
+  padding-bottom: 8px;
+  margin-top: 2px;
+  margin-bottom: 2px;
+  -webkit-border-radius: 5px;
+     -moz-border-radius: 5px;
+          border-radius: 5px;
+}
+
+.nav-pills > .active > a,
+.nav-pills > .active > a:hover,
+.nav-pills > .active > a:focus {
+  color: #ffffff;
+  background-color: #0088cc;
+}
+
+.nav-stacked > li {
+  float: none;
+}
+
+.nav-stacked > li > a {
+  margin-right: 0;
+}
+
+.nav-tabs.nav-stacked {
+  border-bottom: 0;
+}
+
+.nav-tabs.nav-stacked > li > a {
+  border: 1px solid #ddd;
+  -webkit-border-radius: 0;
+     -moz-border-radius: 0;
+          border-radius: 0;
+}
+
+.nav-tabs.nav-stacked > li:first-child > a {
+  -webkit-border-top-right-radius: 4px;
+          border-top-right-radius: 4px;
+  -webkit-border-top-left-radius: 4px;
+          border-top-left-radius: 4px;
+  -moz-border-radius-topright: 4px;
+  -moz-border-radius-topleft: 4px;
+}
+
+.nav-tabs.nav-stacked > li:last-child > a {
+  -webkit-border-bottom-right-radius: 4px;
+          border-bottom-right-radius: 4px;
+  -webkit-border-bottom-left-radius: 4px;
+          border-bottom-left-radius: 4px;
+  -moz-border-radius-bottomright: 4px;
+  -moz-border-radius-bottomleft: 4px;
+}
+
+.nav-tabs.nav-stacked > li > a:hover,
+.nav-tabs.nav-stacked > li > a:focus {
+  z-index: 2;
+  border-color: #ddd;
+}
+
+.nav-pills.nav-stacked > li > a {
+  margin-bottom: 3px;
+}
+
+.nav-pills.nav-stacked > li:last-child > a {
+  margin-bottom: 1px;
+}
+
+.nav-tabs .dropdown-menu {
+  -webkit-border-radius: 0 0 6px 6px;
+     -moz-border-radius: 0 0 6px 6px;
+          border-radius: 0 0 6px 6px;
+}
+
+.nav-pills .dropdown-menu {
+  -webkit-border-radius: 6px;
+     -moz-border-radius: 6px;
+          border-radius: 6px;
+}
+
+.nav .dropdown-toggle .caret {
+  margin-top: 6px;
+  border-top-color: #0088cc;
+  border-bottom-color: #0088cc;
+}
+
+.nav .dropdown-toggle:hover .caret,
+.nav .dropdown-toggle:focus .caret {
+  border-top-color: #005580;
+  border-bottom-color: #005580;
+}
+
+/* move down carets for tabs */
+
+.nav-tabs .dropdown-toggle .caret {
+  margin-top: 8px;
+}
+
+.nav .active .dropdown-toggle .caret {
+  border-top-color: #fff;
+  border-bottom-color: #fff;
+}
+
+.nav-tabs .active .dropdown-toggle .caret {
+  border-top-color: #555555;
+  border-bottom-color: #555555;
+}
+
+.nav > .dropdown.active > a:hover,
+.nav > .dropdown.active > a:focus {
+  cursor: pointer;
+}
+
+.nav-tabs .open .dropdown-toggle,
+.nav-pills .open .dropdown-toggle,
+.nav > li.dropdown.open.active > a:hover,
+.nav > li.dropdown.open.active > a:focus {
+  color: #ffffff;
+  background-color: #999999;
+  border-color: #999999;
+}
+
+.nav li.dropdown.open .caret,
+.nav li.dropdown.open.active .caret,
+.nav li.dropdown.open a:hover .caret,
+.nav li.dropdown.open a:focus .caret {
+  border-top-color: #ffffff;
+  border-bottom-color: #ffffff;
+  opacity: 1;
+  filter: alpha(opacity=100);
+}
+
+.tabs-stacked .open > a:hover,
+.tabs-stacked .open > a:focus {
+  border-color: #999999;
+}
+
+.tabbable {
+  *zoom: 1;
+}
+
+.tabbable:before,
+.tabbable:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.tabbable:after {
+  clear: both;
+}
+
+.tab-content {
+  overflow: auto;
+}
+
+.tabs-below > .nav-tabs,
+.tabs-right > .nav-tabs,
+.tabs-left > .nav-tabs {
+  border-bottom: 0;
+}
+
+.tab-content > .tab-pane,
+.pill-content > .pill-pane {
+  display: none;
+}
+
+.tab-content > .active,
+.pill-content > .active {
+  display: block;
+}
+
+.tabs-below > .nav-tabs {
+  border-top: 1px solid #ddd;
+}
+
+.tabs-below > .nav-tabs > li {
+  margin-top: -1px;
+  margin-bottom: 0;
+}
+
+.tabs-below > .nav-tabs > li > a {
+  -webkit-border-radius: 0 0 4px 4px;
+     -moz-border-radius: 0 0 4px 4px;
+          border-radius: 0 0 4px 4px;
+}
+
+.tabs-below > .nav-tabs > li > a:hover,
+.tabs-below > .nav-tabs > li > a:focus {
+  border-top-color: #ddd;
+  border-bottom-color: transparent;
+}
+
+.tabs-below > .nav-tabs > .active > a,
+.tabs-below > .nav-tabs > .active > a:hover,
+.tabs-below > .nav-tabs > .active > a:focus {
+  border-color: transparent #ddd #ddd #ddd;
+}
+
+.tabs-left > .nav-tabs > li,
+.tabs-right > .nav-tabs > li {
+  float: none;
+}
+
+.tabs-left > .nav-tabs > li > a,
+.tabs-right > .nav-tabs > li > a {
+  min-width: 74px;
+  margin-right: 0;
+  margin-bottom: 3px;
+}
+
+.tabs-left > .nav-tabs {
+  float: left;
+  margin-right: 19px;
+  border-right: 1px solid #ddd;
+}
+
+.tabs-left > .nav-tabs > li > a {
+  margin-right: -1px;
+  -webkit-border-radius: 4px 0 0 4px;
+     -moz-border-radius: 4px 0 0 4px;
+          border-radius: 4px 0 0 4px;
+}
+
+.tabs-left > .nav-tabs > li > a:hover,
+.tabs-left > .nav-tabs > li > a:focus {
+  border-color: #eeeeee #dddddd #eeeeee #eeeeee;
+}
+
+.tabs-left > .nav-tabs .active > a,
+.tabs-left > .nav-tabs .active > a:hover,
+.tabs-left > .nav-tabs .active > a:focus {
+  border-color: #ddd transparent #ddd #ddd;
+  *border-right-color: #ffffff;
+}
+
+.tabs-right > .nav-tabs {
+  float: right;
+  margin-left: 19px;
+  border-left: 1px solid #ddd;
+}
+
+.tabs-right > .nav-tabs > li > a {
+  margin-left: -1px;
+  -webkit-border-radius: 0 4px 4px 0;
+     -moz-border-radius: 0 4px 4px 0;
+          border-radius: 0 4px 4px 0;
+}
+
+.tabs-right > .nav-tabs > li > a:hover,
+.tabs-right > .nav-tabs > li > a:focus {
+  border-color: #eeeeee #eeeeee #eeeeee #dddddd;
+}
+
+.tabs-right > .nav-tabs .active > a,
+.tabs-right > .nav-tabs .active > a:hover,
+.tabs-right > .nav-tabs .active > a:focus {
+  border-color: #ddd #ddd #ddd transparent;
+  *border-left-color: #ffffff;
+}
+
+.nav > .disabled > a {
+  color: #999999;
+}
+
+.nav > .disabled > a:hover,
+.nav > .disabled > a:focus {
+  text-decoration: none;
+  cursor: default;
+  background-color: transparent;
+}
+
+.navbar {
+  *position: relative;
+  *z-index: 2;
+  margin-bottom: 20px;
+  overflow: visible;
+}
+
+.navbar-inner {
+  min-height: 40px;
+  padding-right: 20px;
+  padding-left: 20px;
+  background-color: #fafafa;
+  background-image: -moz-linear-gradient(top, #ffffff, #f2f2f2);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ffffff), to(#f2f2f2));
+  background-image: -webkit-linear-gradient(top, #ffffff, #f2f2f2);
+  background-image: -o-linear-gradient(top, #ffffff, #f2f2f2);
+  background-image: linear-gradient(to bottom, #ffffff, #f2f2f2);
+  background-repeat: repeat-x;
+  border: 1px solid #d4d4d4;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff', endColorstr='#fff2f2f2', 
GradientType=0);
+  *zoom: 1;
+  -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065);
+     -moz-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065);
+          box-shadow: 0 1px 4px rgba(0, 0, 0, 0.065);
+}
+
+.navbar-inner:before,
+.navbar-inner:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.navbar-inner:after {
+  clear: both;
+}
+
+.navbar .container {
+  width: auto;
+}
+
+.nav-collapse.collapse {
+  height: auto;
+  overflow: visible;
+}
+
+.navbar .brand {
+  display: block;
+  float: left;
+  padding: 10px 20px 10px;
+  margin-left: -20px;
+  font-size: 20px;
+  font-weight: 200;
+  color: #777777;
+  text-shadow: 0 1px 0 #ffffff;
+}
+
+.navbar .brand:hover,
+.navbar .brand:focus {
+  text-decoration: none;
+}
+
+.navbar-text {
+  margin-bottom: 0;
+  line-height: 40px;
+  color: #777777;
+}
+
+.navbar-link {
+  color: #777777;
+}
+
+.navbar-link:hover,
+.navbar-link:focus {
+  color: #333333;
+}
+
+.navbar .divider-vertical {
+  height: 40px;
+  margin: 0 9px;
+  border-right: 1px solid #ffffff;
+  border-left: 1px solid #f2f2f2;
+}
+
+.navbar .btn,
+.navbar .btn-group {
+  margin-top: 5px;
+}
+
+.navbar .btn-group .btn,
+.navbar .input-prepend .btn,
+.navbar .input-append .btn,
+.navbar .input-prepend .btn-group,
+.navbar .input-append .btn-group {
+  margin-top: 0;
+}
+
+.navbar-form {
+  margin-bottom: 0;
+  *zoom: 1;
+}
+
+.navbar-form:before,
+.navbar-form:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.navbar-form:after {
+  clear: both;
+}
+
+.navbar-form input,
+.navbar-form select,
+.navbar-form .radio,
+.navbar-form .checkbox {
+  margin-top: 5px;
+}
+
+.navbar-form input,
+.navbar-form select,
+.navbar-form .btn {
+  display: inline-block;
+  margin-bottom: 0;
+}
+
+.navbar-form input[type="image"],
+.navbar-form input[type="checkbox"],
+.navbar-form input[type="radio"] {
+  margin-top: 3px;
+}
+
+.navbar-form .input-append,
+.navbar-form .input-prepend {
+  margin-top: 5px;
+  white-space: nowrap;
+}
+
+.navbar-form .input-append input,
+.navbar-form .input-prepend input {
+  margin-top: 0;
+}
+
+.navbar-search {
+  position: relative;
+  float: left;
+  margin-top: 5px;
+  margin-bottom: 0;
+}
+
+.navbar-search .search-query {
+  padding: 4px 14px;
+  margin-bottom: 0;
+  font-family: "Helvetica Neue", Helvetica, Arial, sans-serif;
+  font-size: 13px;
+  font-weight: normal;
+  line-height: 1;
+  -webkit-border-radius: 15px;
+     -moz-border-radius: 15px;
+          border-radius: 15px;
+}
+
+.navbar-static-top {
+  position: static;
+  margin-bottom: 0;
+}
+
+.navbar-static-top .navbar-inner {
+  -webkit-border-radius: 0;
+     -moz-border-radius: 0;
+          border-radius: 0;
+}
+
+.navbar-fixed-top,
+.navbar-fixed-bottom {
+  position: fixed;
+  right: 0;
+  left: 0;
+  z-index: 1030;
+  margin-bottom: 0;
+}
+
+.navbar-fixed-top .navbar-inner,
+.navbar-static-top .navbar-inner {
+  border-width: 0 0 1px;
+}
+
+.navbar-fixed-bottom .navbar-inner {
+  border-width: 1px 0 0;
+}
+
+.navbar-fixed-top .navbar-inner,
+.navbar-fixed-bottom .navbar-inner {
+  padding-right: 0;
+  padding-left: 0;
+  -webkit-border-radius: 0;
+     -moz-border-radius: 0;
+          border-radius: 0;
+}
+
+.navbar-static-top .container,
+.navbar-fixed-top .container,
+.navbar-fixed-bottom .container {
+  width: 940px;
+}
+
+.navbar-fixed-top {
+  top: 0;
+}
+
+.navbar-fixed-top .navbar-inner,
+.navbar-static-top .navbar-inner {
+  -webkit-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
+     -moz-box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
+          box-shadow: 0 1px 10px rgba(0, 0, 0, 0.1);
+}
+
+.navbar-fixed-bottom {
+  bottom: 0;
+}
+
+.navbar-fixed-bottom .navbar-inner {
+  -webkit-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1);
+     -moz-box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1);
+          box-shadow: 0 -1px 10px rgba(0, 0, 0, 0.1);
+}
+
+.navbar .nav {
+  position: relative;
+  left: 0;
+  display: block;
+  float: left;
+  margin: 0 10px 0 0;
+}
+
+.navbar .nav.pull-right {
+  float: right;
+  margin-right: 0;
+}
+
+.navbar .nav > li {
+  float: left;
+}
+
+.navbar .nav > li > a {
+  float: none;
+  padding: 10px 15px 10px;
+  color: #777777;
+  text-decoration: none;
+  text-shadow: 0 1px 0 #ffffff;
+}
+
+.navbar .nav .dropdown-toggle .caret {
+  margin-top: 8px;
+}
+
+.navbar .nav > li > a:focus,
+.navbar .nav > li > a:hover {
+  color: #333333;
+  text-decoration: none;
+  background-color: transparent;
+}
+
+.navbar .nav > .active > a,
+.navbar .nav > .active > a:hover,
+.navbar .nav > .active > a:focus {
+  color: #555555;
+  text-decoration: none;
+  background-color: #e5e5e5;
+  -webkit-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125);
+     -moz-box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125);
+          box-shadow: inset 0 3px 8px rgba(0, 0, 0, 0.125);
+}
+
+.navbar .btn-navbar {
+  display: none;
+  float: right;
+  padding: 7px 10px;
+  margin-right: 5px;
+  margin-left: 5px;
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  background-color: #ededed;
+  *background-color: #e5e5e5;
+  background-image: -moz-linear-gradient(top, #f2f2f2, #e5e5e5);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f2f2f2), to(#e5e5e5));
+  background-image: -webkit-linear-gradient(top, #f2f2f2, #e5e5e5);
+  background-image: -o-linear-gradient(top, #f2f2f2, #e5e5e5);
+  background-image: linear-gradient(to bottom, #f2f2f2, #e5e5e5);
+  background-repeat: repeat-x;
+  border-color: #e5e5e5 #e5e5e5 #bfbfbf;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff2f2f2', endColorstr='#ffe5e5e5', 
GradientType=0);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+  -webkit-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
+     -moz-box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
+          box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.1), 0 1px 0 rgba(255, 255, 255, 0.075);
+}
+
+.navbar .btn-navbar:hover,
+.navbar .btn-navbar:focus,
+.navbar .btn-navbar:active,
+.navbar .btn-navbar.active,
+.navbar .btn-navbar.disabled,
+.navbar .btn-navbar[disabled] {
+  color: #ffffff;
+  background-color: #e5e5e5;
+  *background-color: #d9d9d9;
+}
+
+.navbar .btn-navbar:active,
+.navbar .btn-navbar.active {
+  background-color: #cccccc \9;
+}
+
+.navbar .btn-navbar .icon-bar {
+  display: block;
+  width: 18px;
+  height: 2px;
+  background-color: #f5f5f5;
+  -webkit-border-radius: 1px;
+     -moz-border-radius: 1px;
+          border-radius: 1px;
+  -webkit-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
+     -moz-box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
+          box-shadow: 0 1px 0 rgba(0, 0, 0, 0.25);
+}
+
+.btn-navbar .icon-bar + .icon-bar {
+  margin-top: 3px;
+}
+
+.navbar .nav > li > .dropdown-menu:before {
+  position: absolute;
+  top: -7px;
+  left: 9px;
+  display: inline-block;
+  border-right: 7px solid transparent;
+  border-bottom: 7px solid #ccc;
+  border-left: 7px solid transparent;
+  border-bottom-color: rgba(0, 0, 0, 0.2);
+  content: '';
+}
+
+.navbar .nav > li > .dropdown-menu:after {
+  position: absolute;
+  top: -6px;
+  left: 10px;
+  display: inline-block;
+  border-right: 6px solid transparent;
+  border-bottom: 6px solid #ffffff;
+  border-left: 6px solid transparent;
+  content: '';
+}
+
+.navbar-fixed-bottom .nav > li > .dropdown-menu:before {
+  top: auto;
+  bottom: -7px;
+  border-top: 7px solid #ccc;
+  border-bottom: 0;
+  border-top-color: rgba(0, 0, 0, 0.2);
+}
+
+.navbar-fixed-bottom .nav > li > .dropdown-menu:after {
+  top: auto;
+  bottom: -6px;
+  border-top: 6px solid #ffffff;
+  border-bottom: 0;
+}
+
+.navbar .nav li.dropdown > a:hover .caret,
+.navbar .nav li.dropdown > a:focus .caret {
+  border-top-color: #333333;
+  border-bottom-color: #333333;
+}
+
+.navbar .nav li.dropdown.open > .dropdown-toggle,
+.navbar .nav li.dropdown.active > .dropdown-toggle,
+.navbar .nav li.dropdown.open.active > .dropdown-toggle {
+  color: #555555;
+  background-color: #e5e5e5;
+}
+
+.navbar .nav li.dropdown > .dropdown-toggle .caret {
+  border-top-color: #777777;
+  border-bottom-color: #777777;
+}
+
+.navbar .nav li.dropdown.open > .dropdown-toggle .caret,
+.navbar .nav li.dropdown.active > .dropdown-toggle .caret,
+.navbar .nav li.dropdown.open.active > .dropdown-toggle .caret {
+  border-top-color: #555555;
+  border-bottom-color: #555555;
+}
+
+.navbar .pull-right > li > .dropdown-menu,
+.navbar .nav > li > .dropdown-menu.pull-right {
+  right: 0;
+  left: auto;
+}
+
+.navbar .pull-right > li > .dropdown-menu:before,
+.navbar .nav > li > .dropdown-menu.pull-right:before {
+  right: 12px;
+  left: auto;
+}
+
+.navbar .pull-right > li > .dropdown-menu:after,
+.navbar .nav > li > .dropdown-menu.pull-right:after {
+  right: 13px;
+  left: auto;
+}
+
+.navbar .pull-right > li > .dropdown-menu .dropdown-menu,
+.navbar .nav > li > .dropdown-menu.pull-right .dropdown-menu {
+  right: 100%;
+  left: auto;
+  margin-right: -1px;
+  margin-left: 0;
+  -webkit-border-radius: 6px 0 6px 6px;
+     -moz-border-radius: 6px 0 6px 6px;
+          border-radius: 6px 0 6px 6px;
+}
+
+.navbar-inverse .navbar-inner {
+  background-color: #1b1b1b;
+  background-image: -moz-linear-gradient(top, #222222, #111111);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#222222), to(#111111));
+  background-image: -webkit-linear-gradient(top, #222222, #111111);
+  background-image: -o-linear-gradient(top, #222222, #111111);
+  background-image: linear-gradient(to bottom, #222222, #111111);
+  background-repeat: repeat-x;
+  border-color: #252525;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222', endColorstr='#ff111111', 
GradientType=0);
+}
+
+.navbar-inverse .brand,
+.navbar-inverse .nav > li > a {
+  color: #999999;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+}
+
+.navbar-inverse .brand:hover,
+.navbar-inverse .nav > li > a:hover,
+.navbar-inverse .brand:focus,
+.navbar-inverse .nav > li > a:focus {
+  color: #ffffff;
+}
+
+.navbar-inverse .brand {
+  color: #999999;
+}
+
+.navbar-inverse .navbar-text {
+  color: #999999;
+}
+
+.navbar-inverse .nav > li > a:focus,
+.navbar-inverse .nav > li > a:hover {
+  color: #ffffff;
+  background-color: transparent;
+}
+
+.navbar-inverse .nav .active > a,
+.navbar-inverse .nav .active > a:hover,
+.navbar-inverse .nav .active > a:focus {
+  color: #ffffff;
+  background-color: #111111;
+}
+
+.navbar-inverse .navbar-link {
+  color: #999999;
+}
+
+.navbar-inverse .navbar-link:hover,
+.navbar-inverse .navbar-link:focus {
+  color: #ffffff;
+}
+
+.navbar-inverse .divider-vertical {
+  border-right-color: #222222;
+  border-left-color: #111111;
+}
+
+.navbar-inverse .nav li.dropdown.open > .dropdown-toggle,
+.navbar-inverse .nav li.dropdown.active > .dropdown-toggle,
+.navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle {
+  color: #ffffff;
+  background-color: #111111;
+}
+
+.navbar-inverse .nav li.dropdown > a:hover .caret,
+.navbar-inverse .nav li.dropdown > a:focus .caret {
+  border-top-color: #ffffff;
+  border-bottom-color: #ffffff;
+}
+
+.navbar-inverse .nav li.dropdown > .dropdown-toggle .caret {
+  border-top-color: #999999;
+  border-bottom-color: #999999;
+}
+
+.navbar-inverse .nav li.dropdown.open > .dropdown-toggle .caret,
+.navbar-inverse .nav li.dropdown.active > .dropdown-toggle .caret,
+.navbar-inverse .nav li.dropdown.open.active > .dropdown-toggle .caret {
+  border-top-color: #ffffff;
+  border-bottom-color: #ffffff;
+}
+
+.navbar-inverse .navbar-search .search-query {
+  color: #ffffff;
+  background-color: #515151;
+  border-color: #111111;
+  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15);
+     -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15);
+          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1), 0 1px 0 rgba(255, 255, 255, 0.15);
+  -webkit-transition: none;
+     -moz-transition: none;
+       -o-transition: none;
+          transition: none;
+}
+
+.navbar-inverse .navbar-search .search-query:-moz-placeholder {
+  color: #cccccc;
+}
+
+.navbar-inverse .navbar-search .search-query:-ms-input-placeholder {
+  color: #cccccc;
+}
+
+.navbar-inverse .navbar-search .search-query::-webkit-input-placeholder {
+  color: #cccccc;
+}
+
+.navbar-inverse .navbar-search .search-query:focus,
+.navbar-inverse .navbar-search .search-query.focused {
+  padding: 5px 15px;
+  color: #333333;
+  text-shadow: 0 1px 0 #ffffff;
+  background-color: #ffffff;
+  border: 0;
+  outline: 0;
+  -webkit-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
+     -moz-box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
+          box-shadow: 0 0 3px rgba(0, 0, 0, 0.15);
+}
+
+.navbar-inverse .btn-navbar {
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  background-color: #0e0e0e;
+  *background-color: #040404;
+  background-image: -moz-linear-gradient(top, #151515, #040404);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#151515), to(#040404));
+  background-image: -webkit-linear-gradient(top, #151515, #040404);
+  background-image: -o-linear-gradient(top, #151515, #040404);
+  background-image: linear-gradient(to bottom, #151515, #040404);
+  background-repeat: repeat-x;
+  border-color: #040404 #040404 #000000;
+  border-color: rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.1) rgba(0, 0, 0, 0.25);
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515', endColorstr='#ff040404', 
GradientType=0);
+  filter: progid:DXImageTransform.Microsoft.gradient(enabled=false);
+}
+
+.navbar-inverse .btn-navbar:hover,
+.navbar-inverse .btn-navbar:focus,
+.navbar-inverse .btn-navbar:active,
+.navbar-inverse .btn-navbar.active,
+.navbar-inverse .btn-navbar.disabled,
+.navbar-inverse .btn-navbar[disabled] {
+  color: #ffffff;
+  background-color: #040404;
+  *background-color: #000000;
+}
+
+.navbar-inverse .btn-navbar:active,
+.navbar-inverse .btn-navbar.active {
+  background-color: #000000 \9;
+}
+
+.breadcrumb {
+  padding: 8px 15px;
+  margin: 0 0 20px;
+  list-style: none;
+  background-color: #f5f5f5;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+}
+
+.breadcrumb > li {
+  display: inline-block;
+  *display: inline;
+  text-shadow: 0 1px 0 #ffffff;
+  *zoom: 1;
+}
+
+.breadcrumb > li > .divider {
+  padding: 0 5px;
+  color: #ccc;
+}
+
+.breadcrumb > .active {
+  color: #999999;
+}
+
+.pagination {
+  margin: 20px 0;
+}
+
+.pagination ul {
+  display: inline-block;
+  *display: inline;
+  margin-bottom: 0;
+  margin-left: 0;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+  *zoom: 1;
+  -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
+     -moz-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
+          box-shadow: 0 1px 2px rgba(0, 0, 0, 0.05);
+}
+
+.pagination ul > li {
+  display: inline;
+}
+
+.pagination ul > li > a,
+.pagination ul > li > span {
+  float: left;
+  padding: 4px 12px;
+  line-height: 20px;
+  text-decoration: none;
+  background-color: #ffffff;
+  border: 1px solid #dddddd;
+  border-left-width: 0;
+}
+
+.pagination ul > li > a:hover,
+.pagination ul > li > a:focus,
+.pagination ul > .active > a,
+.pagination ul > .active > span {
+  background-color: #f5f5f5;
+}
+
+.pagination ul > .active > a,
+.pagination ul > .active > span {
+  color: #999999;
+  cursor: default;
+}
+
+.pagination ul > .disabled > span,
+.pagination ul > .disabled > a,
+.pagination ul > .disabled > a:hover,
+.pagination ul > .disabled > a:focus {
+  color: #999999;
+  cursor: default;
+  background-color: transparent;
+}
+
+.pagination ul > li:first-child > a,
+.pagination ul > li:first-child > span {
+  border-left-width: 1px;
+  -webkit-border-bottom-left-radius: 4px;
+          border-bottom-left-radius: 4px;
+  -webkit-border-top-left-radius: 4px;
+          border-top-left-radius: 4px;
+  -moz-border-radius-bottomleft: 4px;
+  -moz-border-radius-topleft: 4px;
+}
+
+.pagination ul > li:last-child > a,
+.pagination ul > li:last-child > span {
+  -webkit-border-top-right-radius: 4px;
+          border-top-right-radius: 4px;
+  -webkit-border-bottom-right-radius: 4px;
+          border-bottom-right-radius: 4px;
+  -moz-border-radius-topright: 4px;
+  -moz-border-radius-bottomright: 4px;
+}
+
+.pagination-centered {
+  text-align: center;
+}
+
+.pagination-right {
+  text-align: right;
+}
+
+.pagination-large ul > li > a,
+.pagination-large ul > li > span {
+  padding: 11px 19px;
+  font-size: 17.5px;
+}
+
+.pagination-large ul > li:first-child > a,
+.pagination-large ul > li:first-child > span {
+  -webkit-border-bottom-left-radius: 6px;
+          border-bottom-left-radius: 6px;
+  -webkit-border-top-left-radius: 6px;
+          border-top-left-radius: 6px;
+  -moz-border-radius-bottomleft: 6px;
+  -moz-border-radius-topleft: 6px;
+}
+
+.pagination-large ul > li:last-child > a,
+.pagination-large ul > li:last-child > span {
+  -webkit-border-top-right-radius: 6px;
+          border-top-right-radius: 6px;
+  -webkit-border-bottom-right-radius: 6px;
+          border-bottom-right-radius: 6px;
+  -moz-border-radius-topright: 6px;
+  -moz-border-radius-bottomright: 6px;
+}
+
+.pagination-mini ul > li:first-child > a,
+.pagination-small ul > li:first-child > a,
+.pagination-mini ul > li:first-child > span,
+.pagination-small ul > li:first-child > span {
+  -webkit-border-bottom-left-radius: 3px;
+          border-bottom-left-radius: 3px;
+  -webkit-border-top-left-radius: 3px;
+          border-top-left-radius: 3px;
+  -moz-border-radius-bottomleft: 3px;
+  -moz-border-radius-topleft: 3px;
+}
+
+.pagination-mini ul > li:last-child > a,
+.pagination-small ul > li:last-child > a,
+.pagination-mini ul > li:last-child > span,
+.pagination-small ul > li:last-child > span {
+  -webkit-border-top-right-radius: 3px;
+          border-top-right-radius: 3px;
+  -webkit-border-bottom-right-radius: 3px;
+          border-bottom-right-radius: 3px;
+  -moz-border-radius-topright: 3px;
+  -moz-border-radius-bottomright: 3px;
+}
+
+.pagination-small ul > li > a,
+.pagination-small ul > li > span {
+  padding: 2px 10px;
+  font-size: 11.9px;
+}
+
+.pagination-mini ul > li > a,
+.pagination-mini ul > li > span {
+  padding: 0 6px;
+  font-size: 10.5px;
+}
+
+.pager {
+  margin: 20px 0;
+  text-align: center;
+  list-style: none;
+  *zoom: 1;
+}
+
+.pager:before,
+.pager:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.pager:after {
+  clear: both;
+}
+
+.pager li {
+  display: inline;
+}
+
+.pager li > a,
+.pager li > span {
+  display: inline-block;
+  padding: 5px 14px;
+  background-color: #fff;
+  border: 1px solid #ddd;
+  -webkit-border-radius: 15px;
+     -moz-border-radius: 15px;
+          border-radius: 15px;
+}
+
+.pager li > a:hover,
+.pager li > a:focus {
+  text-decoration: none;
+  background-color: #f5f5f5;
+}
+
+.pager .next > a,
+.pager .next > span {
+  float: right;
+}
+
+.pager .previous > a,
+.pager .previous > span {
+  float: left;
+}
+
+.pager .disabled > a,
+.pager .disabled > a:hover,
+.pager .disabled > a:focus,
+.pager .disabled > span {
+  color: #999999;
+  cursor: default;
+  background-color: #fff;
+}
+
+.modal-backdrop {
+  position: fixed;
+  top: 0;
+  right: 0;
+  bottom: 0;
+  left: 0;
+  z-index: 1040;
+  background-color: #000000;
+}
+
+.modal-backdrop.fade {
+  opacity: 0;
+}
+
+.modal-backdrop,
+.modal-backdrop.fade.in {
+  opacity: 0.8;
+  filter: alpha(opacity=80);
+}
+
+.modal {
+  position: fixed;
+  top: 10%;
+  left: 50%;
+  z-index: 1050;
+  width: 560px;
+  margin-left: -280px;
+  background-color: #ffffff;
+  border: 1px solid #999;
+  border: 1px solid rgba(0, 0, 0, 0.3);
+  *border: 1px solid #999;
+  -webkit-border-radius: 6px;
+     -moz-border-radius: 6px;
+          border-radius: 6px;
+  outline: none;
+  -webkit-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+     -moz-box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+          box-shadow: 0 3px 7px rgba(0, 0, 0, 0.3);
+  -webkit-background-clip: padding-box;
+     -moz-background-clip: padding-box;
+          background-clip: padding-box;
+}
+
+.modal.fade {
+  top: -25%;
+  -webkit-transition: opacity 0.3s linear, top 0.3s ease-out;
+     -moz-transition: opacity 0.3s linear, top 0.3s ease-out;
+       -o-transition: opacity 0.3s linear, top 0.3s ease-out;
+          transition: opacity 0.3s linear, top 0.3s ease-out;
+}
+
+.modal.fade.in {
+  top: 10%;
+}
+
+.modal-header {
+  padding: 9px 15px;
+  border-bottom: 1px solid #eee;
+}
+
+.modal-header .close {
+  margin-top: 2px;
+}
+
+.modal-header h3 {
+  margin: 0;
+  line-height: 30px;
+}
+
+.modal-body {
+  position: relative;
+  max-height: 400px;
+  padding: 15px;
+  overflow-y: auto;
+}
+
+.modal-form {
+  margin-bottom: 0;
+}
+
+.modal-footer {
+  padding: 14px 15px 15px;
+  margin-bottom: 0;
+  text-align: right;
+  background-color: #f5f5f5;
+  border-top: 1px solid #ddd;
+  -webkit-border-radius: 0 0 6px 6px;
+     -moz-border-radius: 0 0 6px 6px;
+          border-radius: 0 0 6px 6px;
+  *zoom: 1;
+  -webkit-box-shadow: inset 0 1px 0 #ffffff;
+     -moz-box-shadow: inset 0 1px 0 #ffffff;
+          box-shadow: inset 0 1px 0 #ffffff;
+}
+
+.modal-footer:before,
+.modal-footer:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.modal-footer:after {
+  clear: both;
+}
+
+.modal-footer .btn + .btn {
+  margin-bottom: 0;
+  margin-left: 5px;
+}
+
+.modal-footer .btn-group .btn + .btn {
+  margin-left: -1px;
+}
+
+.modal-footer .btn-block + .btn-block {
+  margin-left: 0;
+}
+
+.tooltip {
+  position: absolute;
+  z-index: 1030;
+  display: block;
+  font-size: 11px;
+  line-height: 1.4;
+  opacity: 0;
+  filter: alpha(opacity=0);
+  visibility: visible;
+}
+
+.tooltip.in {
+  opacity: 0.8;
+  filter: alpha(opacity=80);
+}
+
+.tooltip.top {
+  padding: 5px 0;
+  margin-top: -3px;
+}
+
+.tooltip.right {
+  padding: 0 5px;
+  margin-left: 3px;
+}
+
+.tooltip.bottom {
+  padding: 5px 0;
+  margin-top: 3px;
+}
+
+.tooltip.left {
+  padding: 0 5px;
+  margin-left: -3px;
+}
+
+.tooltip-inner {
+  max-width: 200px;
+  padding: 8px;
+  color: #ffffff;
+  text-align: center;
+  text-decoration: none;
+  background-color: #000000;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+}
+
+.tooltip-arrow {
+  position: absolute;
+  width: 0;
+  height: 0;
+  border-color: transparent;
+  border-style: solid;
+}
+
+.tooltip.top .tooltip-arrow {
+  bottom: 0;
+  left: 50%;
+  margin-left: -5px;
+  border-top-color: #000000;
+  border-width: 5px 5px 0;
+}
+
+.tooltip.right .tooltip-arrow {
+  top: 50%;
+  left: 0;
+  margin-top: -5px;
+  border-right-color: #000000;
+  border-width: 5px 5px 5px 0;
+}
+
+.tooltip.left .tooltip-arrow {
+  top: 50%;
+  right: 0;
+  margin-top: -5px;
+  border-left-color: #000000;
+  border-width: 5px 0 5px 5px;
+}
+
+.tooltip.bottom .tooltip-arrow {
+  top: 0;
+  left: 50%;
+  margin-left: -5px;
+  border-bottom-color: #000000;
+  border-width: 0 5px 5px;
+}
+
+.popover {
+  position: absolute;
+  top: 0;
+  left: 0;
+  z-index: 1010;
+  display: none;
+  max-width: 276px;
+  padding: 1px;
+  text-align: left;
+  white-space: normal;
+  background-color: #ffffff;
+  border: 1px solid #ccc;
+  border: 1px solid rgba(0, 0, 0, 0.2);
+  -webkit-border-radius: 6px;
+     -moz-border-radius: 6px;
+          border-radius: 6px;
+  -webkit-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+     -moz-box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+          box-shadow: 0 5px 10px rgba(0, 0, 0, 0.2);
+  -webkit-background-clip: padding-box;
+     -moz-background-clip: padding;
+          background-clip: padding-box;
+}
+
+.popover.top {
+  margin-top: -10px;
+}
+
+.popover.right {
+  margin-left: 10px;
+}
+
+.popover.bottom {
+  margin-top: 10px;
+}
+
+.popover.left {
+  margin-left: -10px;
+}
+
+.popover-title {
+  padding: 8px 14px;
+  margin: 0;
+  font-size: 14px;
+  font-weight: normal;
+  line-height: 18px;
+  background-color: #f7f7f7;
+  border-bottom: 1px solid #ebebeb;
+  -webkit-border-radius: 5px 5px 0 0;
+     -moz-border-radius: 5px 5px 0 0;
+          border-radius: 5px 5px 0 0;
+}
+
+.popover-title:empty {
+  display: none;
+}
+
+.popover-content {
+  padding: 9px 14px;
+}
+
+.popover .arrow,
+.popover .arrow:after {
+  position: absolute;
+  display: block;
+  width: 0;
+  height: 0;
+  border-color: transparent;
+  border-style: solid;
+}
+
+.popover .arrow {
+  border-width: 11px;
+}
+
+.popover .arrow:after {
+  border-width: 10px;
+  content: "";
+}
+
+.popover.top .arrow {
+  bottom: -11px;
+  left: 50%;
+  margin-left: -11px;
+  border-top-color: #999;
+  border-top-color: rgba(0, 0, 0, 0.25);
+  border-bottom-width: 0;
+}
+
+.popover.top .arrow:after {
+  bottom: 1px;
+  margin-left: -10px;
+  border-top-color: #ffffff;
+  border-bottom-width: 0;
+}
+
+.popover.right .arrow {
+  top: 50%;
+  left: -11px;
+  margin-top: -11px;
+  border-right-color: #999;
+  border-right-color: rgba(0, 0, 0, 0.25);
+  border-left-width: 0;
+}
+
+.popover.right .arrow:after {
+  bottom: -10px;
+  left: 1px;
+  border-right-color: #ffffff;
+  border-left-width: 0;
+}
+
+.popover.bottom .arrow {
+  top: -11px;
+  left: 50%;
+  margin-left: -11px;
+  border-bottom-color: #999;
+  border-bottom-color: rgba(0, 0, 0, 0.25);
+  border-top-width: 0;
+}
+
+.popover.bottom .arrow:after {
+  top: 1px;
+  margin-left: -10px;
+  border-bottom-color: #ffffff;
+  border-top-width: 0;
+}
+
+.popover.left .arrow {
+  top: 50%;
+  right: -11px;
+  margin-top: -11px;
+  border-left-color: #999;
+  border-left-color: rgba(0, 0, 0, 0.25);
+  border-right-width: 0;
+}
+
+.popover.left .arrow:after {
+  right: 1px;
+  bottom: -10px;
+  border-left-color: #ffffff;
+  border-right-width: 0;
+}
+
+.thumbnails {
+  margin-left: -20px;
+  list-style: none;
+  *zoom: 1;
+}
+
+.thumbnails:before,
+.thumbnails:after {
+  display: table;
+  line-height: 0;
+  content: "";
+}
+
+.thumbnails:after {
+  clear: both;
+}
+
+.row-fluid .thumbnails {
+  margin-left: 0;
+}
+
+.thumbnails > li {
+  float: left;
+  margin-bottom: 20px;
+  margin-left: 20px;
+}
+
+.thumbnail {
+  display: block;
+  padding: 4px;
+  line-height: 20px;
+  border: 1px solid #ddd;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+  -webkit-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
+     -moz-box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
+          box-shadow: 0 1px 3px rgba(0, 0, 0, 0.055);
+  -webkit-transition: all 0.2s ease-in-out;
+     -moz-transition: all 0.2s ease-in-out;
+       -o-transition: all 0.2s ease-in-out;
+          transition: all 0.2s ease-in-out;
+}
+
+a.thumbnail:hover,
+a.thumbnail:focus {
+  border-color: #0088cc;
+  -webkit-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
+     -moz-box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
+          box-shadow: 0 1px 4px rgba(0, 105, 214, 0.25);
+}
+
+.thumbnail > img {
+  display: block;
+  max-width: 100%;
+  margin-right: auto;
+  margin-left: auto;
+}
+
+.thumbnail .caption {
+  padding: 9px;
+  color: #555555;
+}
+
+.media,
+.media-body {
+  overflow: hidden;
+  *overflow: visible;
+  zoom: 1;
+}
+
+.media,
+.media .media {
+  margin-top: 15px;
+}
+
+.media:first-child {
+  margin-top: 0;
+}
+
+.media-object {
+  display: block;
+}
+
+.media-heading {
+  margin: 0 0 5px;
+}
+
+.media > .pull-left {
+  margin-right: 10px;
+}
+
+.media > .pull-right {
+  margin-left: 10px;
+}
+
+.media-list {
+  margin-left: 0;
+  list-style: none;
+}
+
+.label,
+.badge {
+  display: inline-block;
+  padding: 2px 4px;
+  font-size: 11.844px;
+  font-weight: bold;
+  line-height: 14px;
+  color: #ffffff;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  white-space: nowrap;
+  vertical-align: baseline;
+  background-color: #999999;
+}
+
+.label {
+  -webkit-border-radius: 3px;
+     -moz-border-radius: 3px;
+          border-radius: 3px;
+}
+
+.badge {
+  padding-right: 9px;
+  padding-left: 9px;
+  -webkit-border-radius: 9px;
+     -moz-border-radius: 9px;
+          border-radius: 9px;
+}
+
+.label:empty,
+.badge:empty {
+  display: none;
+}
+
+a.label:hover,
+a.label:focus,
+a.badge:hover,
+a.badge:focus {
+  color: #ffffff;
+  text-decoration: none;
+  cursor: pointer;
+}
+
+.label-important,
+.badge-important {
+  background-color: #b94a48;
+}
+
+.label-important[href],
+.badge-important[href] {
+  background-color: #953b39;
+}
+
+.label-warning,
+.badge-warning {
+  background-color: #f89406;
+}
+
+.label-warning[href],
+.badge-warning[href] {
+  background-color: #c67605;
+}
+
+.label-success,
+.badge-success {
+  background-color: #468847;
+}
+
+.label-success[href],
+.badge-success[href] {
+  background-color: #356635;
+}
+
+.label-info,
+.badge-info {
+  background-color: #3a87ad;
+}
+
+.label-info[href],
+.badge-info[href] {
+  background-color: #2d6987;
+}
+
+.label-inverse,
+.badge-inverse {
+  background-color: #333333;
+}
+
+.label-inverse[href],
+.badge-inverse[href] {
+  background-color: #1a1a1a;
+}
+
+.btn .label,
+.btn .badge {
+  position: relative;
+  top: -1px;
+}
+
+.btn-mini .label,
+.btn-mini .badge {
+  top: 0;
+}
+
+ -webkit-keyframes progress-bar-stripes {
+  from {
+    background-position: 40px 0;
+  }
+  to {
+    background-position: 0 0;
+  }
+}
+
+ -moz-keyframes progress-bar-stripes {
+  from {
+    background-position: 40px 0;
+  }
+  to {
+    background-position: 0 0;
+  }
+}
+
+ -ms-keyframes progress-bar-stripes {
+  from {
+    background-position: 40px 0;
+  }
+  to {
+    background-position: 0 0;
+  }
+}
+
+ -o-keyframes progress-bar-stripes {
+  from {
+    background-position: 0 0;
+  }
+  to {
+    background-position: 40px 0;
+  }
+}
+
+ keyframes progress-bar-stripes {
+  from {
+    background-position: 40px 0;
+  }
+  to {
+    background-position: 0 0;
+  }
+}
+
+.progress {
+  height: 20px;
+  margin-bottom: 20px;
+  overflow: hidden;
+  background-color: #f7f7f7;
+  background-image: -moz-linear-gradient(top, #f5f5f5, #f9f9f9);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#f5f5f5), to(#f9f9f9));
+  background-image: -webkit-linear-gradient(top, #f5f5f5, #f9f9f9);
+  background-image: -o-linear-gradient(top, #f5f5f5, #f9f9f9);
+  background-image: linear-gradient(to bottom, #f5f5f5, #f9f9f9);
+  background-repeat: repeat-x;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5', endColorstr='#fff9f9f9', 
GradientType=0);
+  -webkit-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
+     -moz-box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
+          box-shadow: inset 0 1px 2px rgba(0, 0, 0, 0.1);
+}
+
+.progress .bar {
+  float: left;
+  width: 0;
+  height: 100%;
+  font-size: 12px;
+  color: #ffffff;
+  text-align: center;
+  text-shadow: 0 -1px 0 rgba(0, 0, 0, 0.25);
+  background-color: #0e90d2;
+  background-image: -moz-linear-gradient(top, #149bdf, #0480be);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#149bdf), to(#0480be));
+  background-image: -webkit-linear-gradient(top, #149bdf, #0480be);
+  background-image: -o-linear-gradient(top, #149bdf, #0480be);
+  background-image: linear-gradient(to bottom, #149bdf, #0480be);
+  background-repeat: repeat-x;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf', endColorstr='#ff0480be', 
GradientType=0);
+  -webkit-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
+     -moz-box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
+          box-shadow: inset 0 -1px 0 rgba(0, 0, 0, 0.15);
+  -webkit-box-sizing: border-box;
+     -moz-box-sizing: border-box;
+          box-sizing: border-box;
+  -webkit-transition: width 0.6s ease;
+     -moz-transition: width 0.6s ease;
+       -o-transition: width 0.6s ease;
+          transition: width 0.6s ease;
+}
+
+.progress .bar + .bar {
+  -webkit-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15);
+     -moz-box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15);
+          box-shadow: inset 1px 0 0 rgba(0, 0, 0, 0.15), inset 0 -1px 0 rgba(0, 0, 0, 0.15);
+}
+
+.progress-striped .bar {
+  background-color: #149bdf;
+  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), 
color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), 
color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
+  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, 
transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, 
rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  -webkit-background-size: 40px 40px;
+     -moz-background-size: 40px 40px;
+       -o-background-size: 40px 40px;
+          background-size: 40px 40px;
+}
+
+.progress.active .bar {
+  -webkit-animation: progress-bar-stripes 2s linear infinite;
+     -moz-animation: progress-bar-stripes 2s linear infinite;
+      -ms-animation: progress-bar-stripes 2s linear infinite;
+       -o-animation: progress-bar-stripes 2s linear infinite;
+          animation: progress-bar-stripes 2s linear infinite;
+}
+
+.progress-danger .bar,
+.progress .bar-danger {
+  background-color: #dd514c;
+  background-image: -moz-linear-gradient(top, #ee5f5b, #c43c35);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#ee5f5b), to(#c43c35));
+  background-image: -webkit-linear-gradient(top, #ee5f5b, #c43c35);
+  background-image: -o-linear-gradient(top, #ee5f5b, #c43c35);
+  background-image: linear-gradient(to bottom, #ee5f5b, #c43c35);
+  background-repeat: repeat-x;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b', endColorstr='#ffc43c35', 
GradientType=0);
+}
+
+.progress-danger.progress-striped .bar,
+.progress-striped .bar-danger {
+  background-color: #ee5f5b;
+  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), 
color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), 
color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
+  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, 
transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, 
rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+}
+
+.progress-success .bar,
+.progress .bar-success {
+  background-color: #5eb95e;
+  background-image: -moz-linear-gradient(top, #62c462, #57a957);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#62c462), to(#57a957));
+  background-image: -webkit-linear-gradient(top, #62c462, #57a957);
+  background-image: -o-linear-gradient(top, #62c462, #57a957);
+  background-image: linear-gradient(to bottom, #62c462, #57a957);
+  background-repeat: repeat-x;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462', endColorstr='#ff57a957', 
GradientType=0);
+}
+
+.progress-success.progress-striped .bar,
+.progress-striped .bar-success {
+  background-color: #62c462;
+  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), 
color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), 
color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
+  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, 
transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, 
rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+}
+
+.progress-info .bar,
+.progress .bar-info {
+  background-color: #4bb1cf;
+  background-image: -moz-linear-gradient(top, #5bc0de, #339bb9);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#5bc0de), to(#339bb9));
+  background-image: -webkit-linear-gradient(top, #5bc0de, #339bb9);
+  background-image: -o-linear-gradient(top, #5bc0de, #339bb9);
+  background-image: linear-gradient(to bottom, #5bc0de, #339bb9);
+  background-repeat: repeat-x;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de', endColorstr='#ff339bb9', 
GradientType=0);
+}
+
+.progress-info.progress-striped .bar,
+.progress-striped .bar-info {
+  background-color: #5bc0de;
+  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), 
color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), 
color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
+  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, 
transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, 
rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+}
+
+.progress-warning .bar,
+.progress .bar-warning {
+  background-color: #faa732;
+  background-image: -moz-linear-gradient(top, #fbb450, #f89406);
+  background-image: -webkit-gradient(linear, 0 0, 0 100%, from(#fbb450), to(#f89406));
+  background-image: -webkit-linear-gradient(top, #fbb450, #f89406);
+  background-image: -o-linear-gradient(top, #fbb450, #f89406);
+  background-image: linear-gradient(to bottom, #fbb450, #f89406);
+  background-repeat: repeat-x;
+  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450', endColorstr='#fff89406', 
GradientType=0);
+}
+
+.progress-warning.progress-striped .bar,
+.progress-striped .bar-warning {
+  background-color: #fbb450;
+  background-image: -webkit-gradient(linear, 0 100%, 100% 0, color-stop(0.25, rgba(255, 255, 255, 0.15)), 
color-stop(0.25, transparent), color-stop(0.5, transparent), color-stop(0.5, rgba(255, 255, 255, 0.15)), 
color-stop(0.75, rgba(255, 255, 255, 0.15)), color-stop(0.75, transparent), to(transparent));
+  background-image: -webkit-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, 
transparent 50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -moz-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: -o-linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 
50%, rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+  background-image: linear-gradient(45deg, rgba(255, 255, 255, 0.15) 25%, transparent 25%, transparent 50%, 
rgba(255, 255, 255, 0.15) 50%, rgba(255, 255, 255, 0.15) 75%, transparent 75%, transparent);
+}
+
+.accordion {
+  margin-bottom: 20px;
+}
+
+.accordion-group {
+  margin-bottom: 2px;
+  border: 1px solid #e5e5e5;
+  -webkit-border-radius: 4px;
+     -moz-border-radius: 4px;
+          border-radius: 4px;
+}
+
+.accordion-heading {
+  border-bottom: 0;
+}
+
+.accordion-heading .accordion-toggle {
+  display: block;
+  padding: 8px 15px;
+}
+
+.accordion-toggle {
+  cursor: pointer;
+}
+
+.accordion-inner {
+  padding: 9px 15px;
+  border-top: 1px solid #e5e5e5;
+}
+
+.carousel {
+  position: relative;
+  margin-bottom: 20px;
+  line-height: 1;
+}
+
+.carousel-inner {
+  position: relative;
+  width: 100%;
+  overflow: hidden;
+}
+
+.carousel-inner > .item {
+  position: relative;
+  display: none;
+  -webkit-transition: 0.6s ease-in-out left;
+     -moz-transition: 0.6s ease-in-out left;
+       -o-transition: 0.6s ease-in-out left;
+          transition: 0.6s ease-in-out left;
+}
+
+.carousel-inner > .item > img,
+.carousel-inner > .item > a > img {
+  display: block;
+  line-height: 1;
+}
+
+.carousel-inner > .active,
+.carousel-inner > .next,
+.carousel-inner > .prev {
+  display: block;
+}
+
+.carousel-inner > .active {
+  left: 0;
+}
+
+.carousel-inner > .next,
+.carousel-inner > .prev {
+  position: absolute;
+  top: 0;
+  width: 100%;
+}
+
+.carousel-inner > .next {
+  left: 100%;
+}
+
+.carousel-inner > .prev {
+  left: -100%;
+}
+
+.carousel-inner > .next.left,
+.carousel-inner > .prev.right {
+  left: 0;
+}
+
+.carousel-inner > .active.left {
+  left: -100%;
+}
+
+.carousel-inner > .active.right {
+  left: 100%;
+}
+
+.carousel-control {
+  position: absolute;
+  top: 40%;
+  left: 15px;
+  width: 40px;
+  height: 40px;
+  margin-top: -20px;
+  font-size: 60px;
+  font-weight: 100;
+  line-height: 30px;
+  color: #ffffff;
+  text-align: center;
+  background: #222222;
+  border: 3px solid #ffffff;
+  -webkit-border-radius: 23px;
+     -moz-border-radius: 23px;
+          border-radius: 23px;
+  opacity: 0.5;
+  filter: alpha(opacity=50);
+}
+
+.carousel-control.right {
+  right: 15px;
+  left: auto;
+}
+
+.carousel-control:hover,
+.carousel-control:focus {
+  color: #ffffff;
+  text-decoration: none;
+  opacity: 0.9;
+  filter: alpha(opacity=90);
+}
+
+.carousel-indicators {
+  position: absolute;
+  top: 15px;
+  right: 15px;
+  z-index: 5;
+  margin: 0;
+  list-style: none;
+}
+
+.carousel-indicators li {
+  display: block;
+  float: left;
+  width: 10px;
+  height: 10px;
+  margin-left: 5px;
+  text-indent: -999px;
+  background-color: #ccc;
+  background-color: rgba(255, 255, 255, 0.25);
+  border-radius: 5px;
+}
+
+.carousel-indicators .active {
+  background-color: #fff;
+}
+
+.carousel-caption {
+  position: absolute;
+  right: 0;
+  bottom: 0;
+  left: 0;
+  padding: 15px;
+  background: #333333;
+  background: rgba(0, 0, 0, 0.75);
+}
+
+.carousel-caption h4,
+.carousel-caption p {
+  line-height: 20px;
+  color: #ffffff;
+}
+
+.carousel-caption h4 {
+  margin: 0 0 5px;
+}
+
+.carousel-caption p {
+  margin-bottom: 0;
+}
+
+.hero-unit {
+  padding: 60px;
+  margin-bottom: 30px;
+  font-size: 18px;
+  font-weight: 200;
+  line-height: 30px;
+  color: inherit;
+  background-color: #eeeeee;
+  -webkit-border-radius: 6px;
+     -moz-border-radius: 6px;
+          border-radius: 6px;
+}
+
+.hero-unit h1 {
+  margin-bottom: 0;
+  font-size: 60px;
+  line-height: 1;
+  letter-spacing: -1px;
+  color: inherit;
+}
+
+.hero-unit li {
+  line-height: 30px;
+}
+
+.pull-right {
+  float: right;
+}
+
+.pull-left {
+  float: left;
+}
+
+.hide {
+  display: none;
+}
+
+.show {
+  display: block;
+}
+
+.invisible {
+  visibility: hidden;
+}
+
+.affix {
+  position: fixed;
+}
diff --git a/skins/easterngreen/css/bootstrap.min.css b/skins/easterngreen/css/bootstrap.min.css
new file mode 100644
index 0000000..df96c86
--- /dev/null
+++ b/skins/easterngreen/css/bootstrap.min.css
@@ -0,0 +1,9 @@
+/*!
+ * Bootstrap v2.3.2
+ *
+ * Copyright 2013 Twitter, Inc
+ * Licensed under the Apache License v2.0
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Designed and built with all the love in the world by @mdo and @fat.
+ 
*/.clearfix{*zoom:1}.clearfix:before,.clearfix:after{display:table;line-height:0;content:""}.clearfix:after{clear:both}.hide-text{font:0/0
 
a;color:transparent;text-shadow:none;background-color:transparent;border:0}.input-block-level{display:block;width:100%;min-height:30px;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}article,aside,details,figcaption,figure,footer,header,hgroup,nav,section{display:block}audio,canvas,video{display:inline-block;*display:inline;*zoom:1}audio:not([controls]){display:none}html{font-size:100%;-webkit-text-size-adjust:100%;-ms-text-size-adjust:100%}a:focus{outline:thin
 dotted #333;outline:5px auto 
-webkit-focus-ring-color;outline-offset:-2px}a:hover,a:active{outline:0}sub,sup{position:relative;font-size:75%;line-height:0;vertical-align:baseline}sup{top:-0.5em}sub{bottom:-0.25em}img{width:auto\9;height:auto;max-width:100%;vertical-align:middle;border:0;-ms-interpolation-mode:bicubic}#map_canvas
 img,.google-maps img{
 
max-width:none}button,input,select,textarea{margin:0;font-size:100%;vertical-align:middle}button,input{*overflow:visible;line-height:normal}button::-moz-focus-inner,input::-moz-focus-inner{padding:0;border:0}button,html
 
input[type="button"],input[type="reset"],input[type="submit"]{cursor:pointer;-webkit-appearance:button}label,select,button,input[type="button"],input[type="reset"],input[type="submit"],input[type="radio"],input[type="checkbox"]{cursor:pointer}input[type="search"]{-webkit-box-sizing:content-box;-moz-box-sizing:content-box;box-sizing:content-box;-webkit-appearance:textfield}input[type="search"]::-webkit-search-decoration,input[type="search"]::-webkit-search-cancel-button{-webkit-appearance:none}textarea{overflow:auto;vertical-align:top}
 media 
print{*{color:#000!important;text-shadow:none!important;background:transparent!important;box-shadow:none!important}a,a:visited{text-decoration:underline}a[href]:after{content:"
 (" attr(href) ")"}abbr[title]:after{content:"
  (" attr(title) ")"}.ir 
a:after,a[href^="javascript:"]:after,a[href^="#"]:after{content:""}pre,blockquote{border:1px solid 
#999;page-break-inside:avoid}thead{display:table-header-group}tr,img{page-break-inside:avoid}img{max-width:100%!important}
 
page{margin:.5cm}p,h2,h3{orphans:3;widows:3}h2,h3{page-break-after:avoid}}body{margin:0;font-family:"Helvetica
 
Neue",Helvetica,Arial,sans-serif;font-size:14px;line-height:20px;color:#333;background-color:#fff}a{color:#08c;text-decoration:none}a:hover,a:focus{color:#005580;text-decoration:underline}.img-rounded{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.img-polaroid{padding:4px;background-color:#fff;border:1px
 solid #ccc;border:1px solid rgba(0,0,0,0.2);-webkit-box-shadow:0 1px 3px rgba(0,0,0,0.1);-moz-box-shadow:0 
1px 3px rgba(0,0,0,0.1);box-shadow:0 1px 3px 
rgba(0,0,0,0.1)}.img-circle{-webkit-border-radius:500px;-moz-border-radius:500px;border-radius:500px}.row{margin-left:-20px;*zoom:1}.row:before,.row:afte
 
r{display:table;line-height:0;content:""}.row:after{clear:both}[class*="span"]{float:left;min-height:1px;margin-left:20px}.container,.navbar-static-top
 .container,.navbar-fixed-top .container,.navbar-fixed-bottom 
.container{width:940px}.span12{width:940px}.span11{width:860px}.span10{width:780px}.span9{width:700px}.span8{width:620px}.span7{width:540px}.span6{width:460px}.span5{width:380px}.span4{width:300px}.span3{width:220px}.span2{width:140px}.span1{width:60px}.offset12{margin-left:980px}.offset11{margin-left:900px}.offset10{margin-left:820px}.offset9{margin-left:740px}.offset8{margin-left:660px}.offset7{margin-left:580px}.offset6{margin-left:500px}.offset5{margin-left:420px}.offset4{margin-left:340px}.offset3{margin-left:260px}.offset2{margin-left:180px}.offset1{margin-left:100px}.row-fluid{width:100%;*zoom:1}.row-fluid:before,.row-fluid:after{display:table;line-height:0;content:""}.row-fluid:after{clear:both}.row-fluid
 [class*="span"]{display:block;float:left;width:100%;m
 
in-height:30px;margin-left:2.127659574468085%;*margin-left:2.074468085106383%;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box}.row-fluid
 [class*="span"]:first-child{margin-left:0}.row-fluid .controls-row 
[class*="span"]+[class*="span"]{margin-left:2.127659574468085%}.row-fluid 
.span12{width:100%;*width:99.94680851063829%}.row-fluid 
.span11{width:91.48936170212765%;*width:91.43617021276594%}.row-fluid 
.span10{width:82.97872340425532%;*width:82.92553191489361%}.row-fluid 
.span9{width:74.46808510638297%;*width:74.41489361702126%}.row-fluid 
.span8{width:65.95744680851064%;*width:65.90425531914893%}.row-fluid 
.span7{width:57.44680851063829%;*width:57.39361702127659%}.row-fluid 
.span6{width:48.93617021276595%;*width:48.88297872340425%}.row-fluid 
.span5{width:40.42553191489362%;*width:40.37234042553192%}.row-fluid 
.span4{width:31.914893617021278%;*width:31.861702127659576%}.row-fluid 
.span3{width:23.404255319148934%;*width:23.351063829787233%}.row-flu
 id .span2{width:14.893617021276595%;*width:14.840425531914894%}.row-fluid 
.span1{width:6.382978723404255%;*width:6.329787234042553%}.row-fluid 
.offset12{margin-left:104.25531914893617%;*margin-left:104.14893617021275%}.row-fluid 
.offset12:first-child{margin-left:102.12765957446808%;*margin-left:102.02127659574467%}.row-fluid 
.offset11{margin-left:95.74468085106382%;*margin-left:95.6382978723404%}.row-fluid 
.offset11:first-child{margin-left:93.61702127659574%;*margin-left:93.51063829787232%}.row-fluid 
.offset10{margin-left:87.23404255319149%;*margin-left:87.12765957446807%}.row-fluid 
.offset10:first-child{margin-left:85.1063829787234%;*margin-left:84.99999999999999%}.row-fluid 
.offset9{margin-left:78.72340425531914%;*margin-left:78.61702127659572%}.row-fluid 
.offset9:first-child{margin-left:76.59574468085106%;*margin-left:76.48936170212764%}.row-fluid 
.offset8{margin-left:70.2127659574468%;*margin-left:70.10638297872339%}.row-fluid 
.offset8:first-child{margin-left:68.08510638
 297872%;*margin-left:67.9787234042553%}.row-fluid 
.offset7{margin-left:61.70212765957446%;*margin-left:61.59574468085106%}.row-fluid 
.offset7:first-child{margin-left:59.574468085106375%;*margin-left:59.46808510638297%}.row-fluid 
.offset6{margin-left:53.191489361702125%;*margin-left:53.085106382978715%}.row-fluid 
.offset6:first-child{margin-left:51.063829787234035%;*margin-left:50.95744680851063%}.row-fluid 
.offset5{margin-left:44.68085106382979%;*margin-left:44.57446808510638%}.row-fluid 
.offset5:first-child{margin-left:42.5531914893617%;*margin-left:42.4468085106383%}.row-fluid 
.offset4{margin-left:36.170212765957444%;*margin-left:36.06382978723405%}.row-fluid 
.offset4:first-child{margin-left:34.04255319148936%;*margin-left:33.93617021276596%}.row-fluid 
.offset3{margin-left:27.659574468085104%;*margin-left:27.5531914893617%}.row-fluid 
.offset3:first-child{margin-left:25.53191489361702%;*margin-left:25.425531914893618%}.row-fluid 
.offset2{margin-left:19.148936170212764%;*mar
 gin-left:19.04255319148936%}.row-fluid 
.offset2:first-child{margin-left:17.02127659574468%;*margin-left:16.914893617021278%}.row-fluid 
.offset1{margin-left:10.638297872340425%;*margin-left:10.53191489361702%}.row-fluid 
.offset1:first-child{margin-left:8.51063829787234%;*margin-left:8.404255319148938%}[class*="span"].hide,.row-fluid
 [class*="span"].hide{display:none}[class*="span"].pull-right,.row-fluid 
[class*="span"].pull-right{float:right}.container{margin-right:auto;margin-left:auto;*zoom:1}.container:before,.container:after{display:table;line-height:0;content:""}.container:after{clear:both}.container-fluid{padding-right:20px;padding-left:20px;*zoom:1}.container-fluid:before,.container-fluid:after{display:table;line-height:0;content:""}.container-fluid:after{clear:both}p{margin:0
 0 
10px}.lead{margin-bottom:20px;font-size:21px;font-weight:200;line-height:30px}small{font-size:85%}strong{font-weight:bold}em{font-style:italic}cite{font-style:normal}.muted{color:#999}a.muted:h
 
over,a.muted:focus{color:#808080}.text-warning{color:#c09853}a.text-warning:hover,a.text-warning:focus{color:#a47e3c}.text-error{color:#b94a48}a.text-error:hover,a.text-error:focus{color:#953b39}.text-info{color:#3a87ad}a.text-info:hover,a.text-info:focus{color:#2d6987}.text-success{color:#468847}a.text-success:hover,a.text-success:focus{color:#356635}.text-left{text-align:left}.text-right{text-align:right}.text-center{text-align:center}h1,h2,h3,h4,h5,h6{margin:10px
 0;font-family:inherit;font-weight:bold;line-height:20px;color:inherit;text-rendering:optimizelegibility}h1 
small,h2 small,h3 small,h4 small,h5 small,h6 
small{font-weight:normal;line-height:1;color:#999}h1,h2,h3{line-height:40px}h1{font-size:38.5px}h2{font-size:31.5px}h3{font-size:24.5px}h4{font-size:17.5px}h5{font-size:14px}h6{font-size:11.9px}h1
 small{font-size:24.5px}h2 small{font-size:17.5px}h3 small{font-size:14px}h4 
small{font-size:14px}.page-header{padding-bottom:9px;margin:20px 0 30px;border-bottom:1px sol
 id #eee}ul,ol{padding:0;margin:0 0 10px 25px}ul ul,ul ol,ol ol,ol 
ul{margin-bottom:0}li{line-height:20px}ul.unstyled,ol.unstyled{margin-left:0;list-style:none}ul.inline,ol.inline{margin-left:0;list-style:none}ul.inline>li,ol.inline>li{display:inline-block;*display:inline;padding-right:5px;padding-left:5px;*zoom:1}dl{margin-bottom:20px}dt,dd{line-height:20px}dt{font-weight:bold}dd{margin-left:10px}.dl-horizontal{*zoom:1}.dl-horizontal:before,.dl-horizontal:after{display:table;line-height:0;content:""}.dl-horizontal:after{clear:both}.dl-horizontal
 
dt{float:left;width:160px;overflow:hidden;clear:left;text-align:right;text-overflow:ellipsis;white-space:nowrap}.dl-horizontal
 dd{margin-left:180px}hr{margin:20px 0;border:0;border-top:1px solid #eee;border-bottom:1px solid 
#fff}abbr[title],abbr[data-original-title]{cursor:help;border-bottom:1px dotted 
#999}abbr.initialism{font-size:90%;text-transform:uppercase}blockquote{padding:0 0 0 15px;margin:0 0 
20px;border-left:5px solid #eee}
 blockquote p{margin-bottom:0;font-size:17.5px;font-weight:300;line-height:1.25}blockquote 
small{display:block;line-height:20px;color:#999}blockquote small:before{content:'\2014 
\00A0'}blockquote.pull-right{float:right;padding-right:15px;padding-left:0;border-right:5px solid 
#eee;border-left:0}blockquote.pull-right p,blockquote.pull-right small{text-align:right}blockquote.pull-right 
small:before{content:''}blockquote.pull-right small:after{content:'\00A0 
\2014'}q:before,q:after,blockquote:before,blockquote:after{content:""}address{display:block;margin-bottom:20px;font-style:normal;line-height:20px}code,pre{padding:0
 3px 2px;font-family:Monaco,Menlo,Consolas,"Courier 
New",monospace;font-size:12px;color:#333;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}code{padding:2px
 4px;color:#d14;white-space:nowrap;background-color:#f7f7f9;border:1px solid 
#e1e1e8}pre{display:block;padding:9.5px;margin:0 0 
10px;font-size:13px;line-height:20px;word-break:break-all;word-
 wrap:break-word;white-space:pre;white-space:pre-wrap;background-color:#f5f5f5;border:1px solid 
#ccc;border:1px solid 
rgba(0,0,0,0.15);-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}pre.prettyprint{margin-bottom:20px}pre
 
code{padding:0;color:inherit;white-space:pre;white-space:pre-wrap;background-color:transparent;border:0}.pre-scrollable{max-height:340px;overflow-y:scroll}form{margin:0
 0 
20px}fieldset{padding:0;margin:0;border:0}legend{display:block;width:100%;padding:0;margin-bottom:20px;font-size:21px;line-height:40px;color:#333;border:0;border-bottom:1px
 solid #e5e5e5}legend 
small{font-size:15px;color:#999}label,input,button,select,textarea{font-size:14px;font-weight:normal;line-height:20px}input,button,select,textarea{font-family:"Helvetica
 
Neue",Helvetica,Arial,sans-serif}label{display:block;margin-bottom:5px}select,textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="mo
 
nth"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{display:inline-block;height:20px;padding:4px
 
6px;margin-bottom:10px;font-size:14px;line-height:20px;color:#555;vertical-align:middle;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}input,textarea,.uneditable-input{width:206px}textarea{height:auto}textarea,input[type="text"],input[type="password"],input[type="datetime"],input[type="datetime-local"],input[type="date"],input[type="month"],input[type="time"],input[type="week"],input[type="number"],input[type="email"],input[type="url"],input[type="search"],input[type="tel"],input[type="color"],.uneditable-input{background-color:#fff;border:1px
 solid #ccc;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px 
rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-webkit-transition:border linear .2
 s,box-shadow linear .2s;-moz-transition:border linear .2s,box-shadow linear .2s;-o-transition:border linear 
.2s,box-shadow linear .2s;transition:border linear .2s,box-shadow linear 
.2s}textarea:focus,input[type="text"]:focus,input[type="password"]:focus,input[type="datetime"]:focus,input[type="datetime-local"]:focus,input[type="date"]:focus,input[type="month"]:focus,input[type="time"]:focus,input[type="week"]:focus,input[type="number"]:focus,input[type="email"]:focus,input[type="url"]:focus,input[type="search"]:focus,input[type="tel"]:focus,input[type="color"]:focus,.uneditable-input:focus{border-color:rgba(82,168,236,0.8);outline:0;outline:thin
 dotted \9;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px 
rgba(82,168,236,0.6);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px 
rgba(82,168,236,0.6);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 8px 
rgba(82,168,236,0.6)}input[type="radio"],input[type="checkbox"]{margin:4px 0 0;margin-top:1px 
\9;*margin-top:0;
 
line-height:normal}input[type="file"],input[type="image"],input[type="submit"],input[type="reset"],input[type="button"],input[type="radio"],input[type="checkbox"]{width:auto}select,input[type="file"]{height:30px;*margin-top:4px;line-height:30px}select{width:220px;background-color:#fff;border:1px
 solid 
#ccc}select[multiple],select[size]{height:auto}select:focus,input[type="file"]:focus,input[type="radio"]:focus,input[type="checkbox"]:focus{outline:thin
 dotted #333;outline:5px auto 
-webkit-focus-ring-color;outline-offset:-2px}.uneditable-input,.uneditable-textarea{color:#999;cursor:not-allowed;background-color:#fcfcfc;border-color:#ccc;-webkit-box-shadow:inset
 0 1px 2px rgba(0,0,0,0.025);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.025);box-shadow:inset 0 1px 2px 
rgba(0,0,0,0.025)}.uneditable-input{overflow:hidden;white-space:nowrap}.uneditable-textarea{width:auto;height:auto}input:-moz-placeholder,textarea:-moz-placeholder{color:#999}input:-ms-input-placeholder,textarea:-ms-i
 
nput-placeholder{color:#999}input::-webkit-input-placeholder,textarea::-webkit-input-placeholder{color:#999}.radio,.checkbox{min-height:20px;padding-left:20px}.radio
 input[type="radio"],.checkbox 
input[type="checkbox"]{float:left;margin-left:-20px}.controls>.radio:first-child,.controls>.checkbox:first-child{padding-top:5px}.radio.inline,.checkbox.inline{display:inline-block;padding-top:5px;margin-bottom:0;vertical-align:middle}.radio.inline+.radio.inline,.checkbox.inline+.checkbox.inline{margin-left:10px}.input-mini{width:60px}.input-small{width:90px}.input-medium{width:150px}.input-large{width:210px}.input-xlarge{width:270px}.input-xxlarge{width:530px}input[class*="span"],select[class*="span"],textarea[class*="span"],.uneditable-input[class*="span"],.row-fluid
 input[class*="span"],.row-fluid select[class*="span"],.row-fluid textarea[class*="span"],.row-fluid 
.uneditable-input[class*="span"]{float:none;margin-left:0}.input-append input[class*="span"],.input-append 
.uneditabl
 e-input[class*="span"],.input-prepend input[class*="span"],.input-prepend 
.uneditable-input[class*="span"],.row-fluid input[class*="span"],.row-fluid select[class*="span"],.row-fluid 
textarea[class*="span"],.row-fluid .uneditable-input[class*="span"],.row-fluid .input-prepend 
[class*="span"],.row-fluid .input-append 
[class*="span"]{display:inline-block}input,textarea,.uneditable-input{margin-left:0}.controls-row 
[class*="span"]+[class*="span"]{margin-left:20px}input.span12,textarea.span12,.uneditable-input.span12{width:926px}input.span11,textarea.span11,.uneditable-input.span11{width:846px}input.span10,textarea.span10,.uneditable-input.span10{width:766px}input.span9,textarea.span9,.uneditable-input.span9{width:686px}input.span8,textarea.span8,.uneditable-input.span8{width:606px}input.span7,textarea.span7,.uneditable-input.span7{width:526px}input.span6,textarea.span6,.uneditable-input.span6{width:446px}input.span5,textarea.span5,.uneditable-input.span5{width:366px}input.span4
 
,textarea.span4,.uneditable-input.span4{width:286px}input.span3,textarea.span3,.uneditable-input.span3{width:206px}input.span2,textarea.span2,.uneditable-input.span2{width:126px}input.span1,textarea.span1,.uneditable-input.span1{width:46px}.controls-row{*zoom:1}.controls-row:before,.controls-row:after{display:table;line-height:0;content:""}.controls-row:after{clear:both}.controls-row
 [class*="span"],.row-fluid .controls-row [class*="span"]{float:left}.controls-row 
.checkbox[class*="span"],.controls-row 
.radio[class*="span"]{padding-top:5px}input[disabled],select[disabled],textarea[disabled],input[readonly],select[readonly],textarea[readonly]{cursor:not-allowed;background-color:#eee}input[type="radio"][disabled],input[type="checkbox"][disabled],input[type="radio"][readonly],input[type="checkbox"][readonly]{background-color:transparent}.control-group.warning
 .control-label,.control-group.warning .help-block,.control-group.warning 
.help-inline{color:#c09853}.control-group.warni
 ng .checkbox,.control-group.warning .radio,.control-group.warning input,.control-group.warning 
select,.control-group.warning textarea{color:#c09853}.control-group.warning input,.control-group.warning 
select,.control-group.warning textarea{border-color:#c09853;-webkit-box-shadow:inset 0 1px 1px 
rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px 
rgba(0,0,0,0.075)}.control-group.warning input:focus,.control-group.warning 
select:focus,.control-group.warning textarea:focus{border-color:#a47e3c;-webkit-box-shadow:inset 0 1px 1px 
rgba(0,0,0,0.075),0 0 6px #dbc59e;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px 
#dbc59e;box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #dbc59e}.control-group.warning .input-prepend 
.add-on,.control-group.warning .input-append 
.add-on{color:#c09853;background-color:#fcf8e3;border-color:#c09853}.control-group.error 
.control-label,.control-group.error .help-block,.control-group.error .help-inline{c
 olor:#b94a48}.control-group.error .checkbox,.control-group.error .radio,.control-group.error 
input,.control-group.error select,.control-group.error textarea{color:#b94a48}.control-group.error 
input,.control-group.error select,.control-group.error textarea{border-color:#b94a48;-webkit-box-shadow:inset 
0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px 
rgba(0,0,0,0.075)}.control-group.error input:focus,.control-group.error select:focus,.control-group.error 
textarea:focus{border-color:#953b39;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px 
#d59392;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #d59392;box-shadow:inset 0 1px 1px 
rgba(0,0,0,0.075),0 0 6px #d59392}.control-group.error .input-prepend .add-on,.control-group.error 
.input-append .add-on{color:#b94a48;background-color:#f2dede;border-color:#b94a48}.control-group.success 
.control-label,.control-group.success .help-block,.control-group.success .
 help-inline{color:#468847}.control-group.success .checkbox,.control-group.success 
.radio,.control-group.success input,.control-group.success select,.control-group.success 
textarea{color:#468847}.control-group.success input,.control-group.success select,.control-group.success 
textarea{border-color:#468847;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 
1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.success 
input:focus,.control-group.success select:focus,.control-group.success 
textarea:focus{border-color:#356635;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px 
#7aba7b;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7aba7b;box-shadow:inset 0 1px 1px 
rgba(0,0,0,0.075),0 0 6px #7aba7b}.control-group.success .input-prepend .add-on,.control-group.success 
.input-append .add-on{color:#468847;background-color:#dff0d8;border-color:#468847}.control-group.info 
.control-label,.control-group.info .he
 lp-block,.control-group.info .help-inline{color:#3a87ad}.control-group.info .checkbox,.control-group.info 
.radio,.control-group.info input,.control-group.info select,.control-group.info 
textarea{color:#3a87ad}.control-group.info input,.control-group.info select,.control-group.info 
textarea{border-color:#3a87ad;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075);-moz-box-shadow:inset 0 
1px 1px rgba(0,0,0,0.075);box-shadow:inset 0 1px 1px rgba(0,0,0,0.075)}.control-group.info 
input:focus,.control-group.info select:focus,.control-group.info 
textarea:focus{border-color:#2d6987;-webkit-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px 
#7ab5d3;-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.075),0 0 6px #7ab5d3;box-shadow:inset 0 1px 1px 
rgba(0,0,0,0.075),0 0 6px #7ab5d3}.control-group.info .input-prepend .add-on,.control-group.info 
.input-append 
.add-on{color:#3a87ad;background-color:#d9edf7;border-color:#3a87ad}input:focus:invalid,textarea:focus:invalid,select:focus:invalid{col
 
or:#b94a48;border-color:#ee5f5b}input:focus:invalid:focus,textarea:focus:invalid:focus,select:focus:invalid:focus{border-color:#e9322d;-webkit-box-shadow:0
 0 6px #f8b9b7;-moz-box-shadow:0 0 6px #f8b9b7;box-shadow:0 0 6px #f8b9b7}.form-actions{padding:19px 20px 
20px;margin-top:20px;margin-bottom:20px;background-color:#f5f5f5;border-top:1px solid 
#e5e5e5;*zoom:1}.form-actions:before,.form-actions:after{display:table;line-height:0;content:""}.form-actions:after{clear:both}.help-block,.help-inline{color:#595959}.help-block{display:block;margin-bottom:10px}.help-inline{display:inline-block;*display:inline;padding-left:5px;vertical-align:middle;*zoom:1}.input-append,.input-prepend{display:inline-block;margin-bottom:10px;font-size:0;white-space:nowrap;vertical-align:middle}.input-append
 input,.input-prepend input,.input-append select,.input-prepend select,.input-append 
.uneditable-input,.input-prepend .uneditable-input,.input-append .dropdown-menu,.input-prepend 
.dropdown-menu,.inp
 ut-append .popover,.input-prepend .popover{font-size:14px}.input-append input,.input-prepend 
input,.input-append select,.input-prepend select,.input-append .uneditable-input,.input-prepend 
.uneditable-input{position:relative;margin-bottom:0;*margin-left:0;vertical-align:top;-webkit-border-radius:0 
4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 0}.input-append input:focus,.input-prepend 
input:focus,.input-append select:focus,.input-prepend select:focus,.input-append 
.uneditable-input:focus,.input-prepend .uneditable-input:focus{z-index:2}.input-append .add-on,.input-prepend 
.add-on{display:inline-block;width:auto;height:20px;min-width:16px;padding:4px 
5px;font-size:14px;font-weight:normal;line-height:20px;text-align:center;text-shadow:0 1px 0 
#fff;background-color:#eee;border:1px solid #ccc}.input-append .add-on,.input-prepend .add-on,.input-append 
.btn,.input-prepend .btn,.input-append .btn-group>.dropdown-toggle,.input-prepend 
.btn-group>.dropdown-toggle{v
 ertical-align:top;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-append 
.active,.input-prepend .active{background-color:#a9dba9;border-color:#46a546}.input-prepend 
.add-on,.input-prepend .btn{margin-right:-1px}.input-prepend .add-on:first-child,.input-prepend 
.btn:first-child{-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 
4px}.input-append input,.input-append select,.input-append .uneditable-input{-webkit-border-radius:4px 0 0 
4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.input-append input+.btn-group 
.btn:last-child,.input-append select+.btn-group .btn:last-child,.input-append .uneditable-input+.btn-group 
.btn:last-child{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 
0}.input-append .add-on,.input-append .btn,.input-append .btn-group{margin-left:-1px}.input-append 
.add-on:last-child,.input-append .btn:last-child,.input-append .btn-group:last-child>.dropdown
 -toggle{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 0;border-radius:0 4px 4px 
0}.input-prepend.input-append input,.input-prepend.input-append select,.input-prepend.input-append 
.uneditable-input{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.input-prepend.input-append 
input+.btn-group .btn,.input-prepend.input-append select+.btn-group .btn,.input-prepend.input-append 
.uneditable-input+.btn-group .btn{-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 
0;border-radius:0 4px 4px 0}.input-prepend.input-append .add-on:first-child,.input-prepend.input-append 
.btn:first-child{margin-right:-1px;-webkit-border-radius:4px 0 0 4px;-moz-border-radius:4px 0 0 
4px;border-radius:4px 0 0 4px}.input-prepend.input-append .add-on:last-child,.input-prepend.input-append 
.btn:last-child{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 4px 
0;border-radius:0 4px 4px 0}.input-prepend.input-append .btn-group:first-child{margin-l
 eft:0}input.search-query{padding-right:14px;padding-right:4px \9;padding-left:14px;padding-left:4px 
\9;margin-bottom:0;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.form-search 
.input-append .search-query,.form-search .input-prepend 
.search-query{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.form-search .input-append 
.search-query{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 
14px}.form-search .input-append .btn{-webkit-border-radius:0 14px 14px 0;-moz-border-radius:0 14px 14px 
0;border-radius:0 14px 14px 0}.form-search .input-prepend .search-query{-webkit-border-radius:0 14px 14px 
0;-moz-border-radius:0 14px 14px 0;border-radius:0 14px 14px 0}.form-search .input-prepend 
.btn{-webkit-border-radius:14px 0 0 14px;-moz-border-radius:14px 0 0 14px;border-radius:14px 0 0 
14px}.form-search input,.form-inline input,.form-horizontal input,.form-search textarea,.form-inline 
textarea,.form-horizonta
 l textarea,.form-search select,.form-inline select,.form-horizontal select,.form-search 
.help-inline,.form-inline .help-inline,.form-horizontal .help-inline,.form-search 
.uneditable-input,.form-inline .uneditable-input,.form-horizontal .uneditable-input,.form-search 
.input-prepend,.form-inline .input-prepend,.form-horizontal .input-prepend,.form-search 
.input-append,.form-inline .input-append,.form-horizontal 
.input-append{display:inline-block;*display:inline;margin-bottom:0;vertical-align:middle;*zoom:1}.form-search 
.hide,.form-inline .hide,.form-horizontal .hide{display:none}.form-search label,.form-inline 
label,.form-search .btn-group,.form-inline .btn-group{display:inline-block}.form-search 
.input-append,.form-inline .input-append,.form-search .input-prepend,.form-inline 
.input-prepend{margin-bottom:0}.form-search .radio,.form-search .checkbox,.form-inline .radio,.form-inline 
.checkbox{padding-left:0;margin-bottom:0;vertical-align:middle}.form-search .radio input[type="r
 adio"],.form-search .checkbox input[type="checkbox"],.form-inline .radio input[type="radio"],.form-inline 
.checkbox 
input[type="checkbox"]{float:left;margin-right:3px;margin-left:0}.control-group{margin-bottom:10px}legend+.control-group{margin-top:20px;-webkit-margin-top-collapse:separate}.form-horizontal
 .control-group{margin-bottom:20px;*zoom:1}.form-horizontal .control-group:before,.form-horizontal 
.control-group:after{display:table;line-height:0;content:""}.form-horizontal 
.control-group:after{clear:both}.form-horizontal 
.control-label{float:left;width:160px;padding-top:5px;text-align:right}.form-horizontal 
.controls{*display:inline-block;*padding-left:20px;margin-left:180px;*margin-left:0}.form-horizontal 
.controls:first-child{*padding-left:180px}.form-horizontal .help-block{margin-bottom:0}.form-horizontal 
input+.help-block,.form-horizontal select+.help-block,.form-horizontal textarea+.help-block,.form-horizontal 
.uneditable-input+.help-block,.form-horizontal .input-pr
 epend+.help-block,.form-horizontal .input-append+.help-block{margin-top:10px}.form-horizontal 
.form-actions{padding-left:180px}table{max-width:100%;background-color:transparent;border-collapse:collapse;border-spacing:0}.table{width:100%;margin-bottom:20px}.table
 th,.table td{padding:8px;line-height:20px;text-align:left;vertical-align:top;border-top:1px solid 
#ddd}.table th{font-weight:bold}.table thead th{vertical-align:bottom}.table caption+thead tr:first-child 
th,.table caption+thead tr:first-child td,.table colgroup+thead tr:first-child th,.table colgroup+thead 
tr:first-child td,.table thead:first-child tr:first-child th,.table thead:first-child tr:first-child 
td{border-top:0}.table tbody+tbody{border-top:2px solid #ddd}.table 
.table{background-color:#fff}.table-condensed th,.table-condensed td{padding:4px 
5px}.table-bordered{border:1px solid 
#ddd;border-collapse:separate;*border-collapse:collapse;border-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radiu
 s:4px}.table-bordered th,.table-bordered td{border-left:1px solid #ddd}.table-bordered caption+thead 
tr:first-child th,.table-bordered caption+tbody tr:first-child th,.table-bordered caption+tbody 
tr:first-child td,.table-bordered colgroup+thead tr:first-child th,.table-bordered colgroup+tbody 
tr:first-child th,.table-bordered colgroup+tbody tr:first-child td,.table-bordered thead:first-child 
tr:first-child th,.table-bordered tbody:first-child tr:first-child th,.table-bordered tbody:first-child 
tr:first-child td{border-top:0}.table-bordered thead:first-child 
tr:first-child>th:first-child,.table-bordered tbody:first-child tr:first-child>td:first-child,.table-bordered 
tbody:first-child 
tr:first-child>th:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered
 thead:first-child tr:first-child>th:last-child,.table-bordered tbody:first-child 
tr:first-child>td:last-child,.table-bordered tbody:first-child tr:first-chil
 
d>th:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-bordered
 thead:last-child tr:last-child>th:first-child,.table-bordered tbody:last-child 
tr:last-child>td:first-child,.table-bordered tbody:last-child tr:last-child>th:first-child,.table-bordered 
tfoot:last-child tr:last-child>td:first-child,.table-bordered tfoot:last-child 
tr:last-child>th:first-child{-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomleft:4px}.table-bordered
 thead:last-child tr:last-child>th:last-child,.table-bordered tbody:last-child 
tr:last-child>td:last-child,.table-bordered tbody:last-child tr:last-child>th:last-child,.table-bordered 
tfoot:last-child tr:last-child>td:last-child,.table-bordered tfoot:last-child 
tr:last-child>th:last-child{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-bottomright:4px}.table-bordered
 tfoot+tbody:last-child tr:last-child td
 
:first-child{-webkit-border-bottom-left-radius:0;border-bottom-left-radius:0;-moz-border-radius-bottomleft:0}.table-bordered
 tfoot+tbody:last-child tr:last-child 
td:last-child{-webkit-border-bottom-right-radius:0;border-bottom-right-radius:0;-moz-border-radius-bottomright:0}.table-bordered
 caption+thead tr:first-child th:first-child,.table-bordered caption+tbody tr:first-child 
td:first-child,.table-bordered colgroup+thead tr:first-child th:first-child,.table-bordered colgroup+tbody 
tr:first-child 
td:first-child{-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-topleft:4px}.table-bordered
 caption+thead tr:first-child th:last-child,.table-bordered caption+tbody tr:first-child 
td:last-child,.table-bordered colgroup+thead tr:first-child th:last-child,.table-bordered colgroup+tbody 
tr:first-child 
td:last-child{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-moz-border-radius-topright:4px}.table-striped
 tbody>tr:nth-child(odd)>td,.ta
 ble-striped tbody>tr:nth-child(odd)>th{background-color:#f9f9f9}.table-hover tbody tr:hover>td,.table-hover 
tbody tr:hover>th{background-color:#f5f5f5}table td[class*="span"],table th[class*="span"],.row-fluid table 
td[class*="span"],.row-fluid table th[class*="span"]{display:table-cell;float:none;margin-left:0}.table 
td.span1,.table th.span1{float:none;width:44px;margin-left:0}.table td.span2,.table 
th.span2{float:none;width:124px;margin-left:0}.table td.span3,.table 
th.span3{float:none;width:204px;margin-left:0}.table td.span4,.table 
th.span4{float:none;width:284px;margin-left:0}.table td.span5,.table 
th.span5{float:none;width:364px;margin-left:0}.table td.span6,.table 
th.span6{float:none;width:444px;margin-left:0}.table td.span7,.table 
th.span7{float:none;width:524px;margin-left:0}.table td.span8,.table 
th.span8{float:none;width:604px;margin-left:0}.table td.span9,.table 
th.span9{float:none;width:684px;margin-left:0}.table td.span10,.table th.span10{float:none;width:764px
 ;margin-left:0}.table td.span11,.table th.span11{float:none;width:844px;margin-left:0}.table 
td.span12,.table th.span12{float:none;width:924px;margin-left:0}.table tbody 
tr.success>td{background-color:#dff0d8}.table tbody tr.error>td{background-color:#f2dede}.table tbody 
tr.warning>td{background-color:#fcf8e3}.table tbody tr.info>td{background-color:#d9edf7}.table-hover tbody 
tr.success:hover>td{background-color:#d0e9c6}.table-hover tbody 
tr.error:hover>td{background-color:#ebcccc}.table-hover tbody 
tr.warning:hover>td{background-color:#faf2cc}.table-hover tbody 
tr.info:hover>td{background-color:#c4e3f3}[class^="icon-"],[class*=" 
icon-"]{display:inline-block;width:14px;height:14px;margin-top:1px;*margin-right:.3em;line-height:14px;vertical-align:text-top;background-image:url("../img/glyphicons-halflings.png");background-position:14px
 
14px;background-repeat:no-repeat}.icon-white,.nav-pills>.active>a>[class^="icon-"],.nav-pills>.active>a>[class*="
 icon-"],.nav-list>.active>a>[
 class^="icon-"],.nav-list>.active>a>[class*=" icon-"],.navbar-inverse 
.nav>.active>a>[class^="icon-"],.navbar-inverse .nav>.active>a>[class*=" 
icon-"],.dropdown-menu>li>a:hover>[class^="icon-"],.dropdown-menu>li>a:focus>[class^="icon-"],.dropdown-menu>li>a:hover>[class*="
 icon-"],.dropdown-menu>li>a:focus>[class*=" 
icon-"],.dropdown-menu>.active>a>[class^="icon-"],.dropdown-menu>.active>a>[class*=" 
icon-"],.dropdown-submenu:hover>a>[class^="icon-"],.dropdown-submenu:focus>a>[class^="icon-"],.dropdown-submenu:hover>a>[class*="
 icon-"],.dropdown-submenu:focus>a>[class*=" 
icon-"]{background-image:url("../img/glyphicons-halflings-white.png")}.icon-glass{background-position:0 
0}.icon-music{background-position:-24px 0}.icon-search{background-position:-48px 
0}.icon-envelope{background-position:-72px 0}.icon-heart{background-position:-96px 
0}.icon-star{background-position:-120px 0}.icon-star-empty{background-position:-144px 
0}.icon-user{background-position:-168px 0}.icon-film{backgr
 ound-position:-192px 0}.icon-th-large{background-position:-216px 0}.icon-th{background-position:-240px 
0}.icon-th-list{background-position:-264px 0}.icon-ok{background-position:-288px 
0}.icon-remove{background-position:-312px 0}.icon-zoom-in{background-position:-336px 
0}.icon-zoom-out{background-position:-360px 0}.icon-off{background-position:-384px 
0}.icon-signal{background-position:-408px 0}.icon-cog{background-position:-432px 
0}.icon-trash{background-position:-456px 0}.icon-home{background-position:0 
-24px}.icon-file{background-position:-24px -24px}.icon-time{background-position:-48px 
-24px}.icon-road{background-position:-72px -24px}.icon-download-alt{background-position:-96px 
-24px}.icon-download{background-position:-120px -24px}.icon-upload{background-position:-144px 
-24px}.icon-inbox{background-position:-168px -24px}.icon-play-circle{background-position:-192px 
-24px}.icon-repeat{background-position:-216px -24px}.icon-refresh{background-position:-240px -24px}.icon-list-
 alt{background-position:-264px -24px}.icon-lock{background-position:-287px 
-24px}.icon-flag{background-position:-312px -24px}.icon-headphones{background-position:-336px 
-24px}.icon-volume-off{background-position:-360px -24px}.icon-volume-down{background-position:-384px 
-24px}.icon-volume-up{background-position:-408px -24px}.icon-qrcode{background-position:-432px 
-24px}.icon-barcode{background-position:-456px -24px}.icon-tag{background-position:0 
-48px}.icon-tags{background-position:-25px -48px}.icon-book{background-position:-48px 
-48px}.icon-bookmark{background-position:-72px -48px}.icon-print{background-position:-96px 
-48px}.icon-camera{background-position:-120px -48px}.icon-font{background-position:-144px 
-48px}.icon-bold{background-position:-167px -48px}.icon-italic{background-position:-192px 
-48px}.icon-text-height{background-position:-216px -48px}.icon-text-width{background-position:-240px 
-48px}.icon-align-left{background-position:-264px -48px}.icon-align-center{backgr
 ound-position:-288px -48px}.icon-align-right{background-position:-312px 
-48px}.icon-align-justify{background-position:-336px -48px}.icon-list{background-position:-360px 
-48px}.icon-indent-left{background-position:-384px -48px}.icon-indent-right{background-position:-408px 
-48px}.icon-facetime-video{background-position:-432px -48px}.icon-picture{background-position:-456px 
-48px}.icon-pencil{background-position:0 -72px}.icon-map-marker{background-position:-24px 
-72px}.icon-adjust{background-position:-48px -72px}.icon-tint{background-position:-72px 
-72px}.icon-edit{background-position:-96px -72px}.icon-share{background-position:-120px 
-72px}.icon-check{background-position:-144px -72px}.icon-move{background-position:-168px 
-72px}.icon-step-backward{background-position:-192px -72px}.icon-fast-backward{background-position:-216px 
-72px}.icon-backward{background-position:-240px -72px}.icon-play{background-position:-264px 
-72px}.icon-pause{background-position:-288px -72px}.icon-stop{b
 ackground-position:-312px -72px}.icon-forward{background-position:-336px 
-72px}.icon-fast-forward{background-position:-360px -72px}.icon-step-forward{background-position:-384px 
-72px}.icon-eject{background-position:-408px -72px}.icon-chevron-left{background-position:-432px 
-72px}.icon-chevron-right{background-position:-456px -72px}.icon-plus-sign{background-position:0 
-96px}.icon-minus-sign{background-position:-24px -96px}.icon-remove-sign{background-position:-48px 
-96px}.icon-ok-sign{background-position:-72px -96px}.icon-question-sign{background-position:-96px 
-96px}.icon-info-sign{background-position:-120px -96px}.icon-screenshot{background-position:-144px 
-96px}.icon-remove-circle{background-position:-168px -96px}.icon-ok-circle{background-position:-192px 
-96px}.icon-ban-circle{background-position:-216px -96px}.icon-arrow-left{background-position:-240px 
-96px}.icon-arrow-right{background-position:-264px -96px}.icon-arrow-up{background-position:-289px 
-96px}.icon-arrow-dow
 n{background-position:-312px -96px}.icon-share-alt{background-position:-336px 
-96px}.icon-resize-full{background-position:-360px -96px}.icon-resize-small{background-position:-384px 
-96px}.icon-plus{background-position:-408px -96px}.icon-minus{background-position:-433px 
-96px}.icon-asterisk{background-position:-456px -96px}.icon-exclamation-sign{background-position:0 
-120px}.icon-gift{background-position:-24px -120px}.icon-leaf{background-position:-48px 
-120px}.icon-fire{background-position:-72px -120px}.icon-eye-open{background-position:-96px 
-120px}.icon-eye-close{background-position:-120px -120px}.icon-warning-sign{background-position:-144px 
-120px}.icon-plane{background-position:-168px -120px}.icon-calendar{background-position:-192px 
-120px}.icon-random{width:16px;background-position:-216px -120px}.icon-comment{background-position:-240px 
-120px}.icon-magnet{background-position:-264px -120px}.icon-chevron-up{background-position:-288px 
-120px}.icon-chevron-down{background-p
 osition:-313px -119px}.icon-retweet{background-position:-336px 
-120px}.icon-shopping-cart{background-position:-360px 
-120px}.icon-folder-close{width:16px;background-position:-384px 
-120px}.icon-folder-open{width:16px;background-position:-408px 
-120px}.icon-resize-vertical{background-position:-432px 
-119px}.icon-resize-horizontal{background-position:-456px -118px}.icon-hdd{background-position:0 
-144px}.icon-bullhorn{background-position:-24px -144px}.icon-bell{background-position:-48px 
-144px}.icon-certificate{background-position:-72px -144px}.icon-thumbs-up{background-position:-96px 
-144px}.icon-thumbs-down{background-position:-120px -144px}.icon-hand-right{background-position:-144px 
-144px}.icon-hand-left{background-position:-168px -144px}.icon-hand-up{background-position:-192px 
-144px}.icon-hand-down{background-position:-216px -144px}.icon-circle-arrow-right{background-position:-240px 
-144px}.icon-circle-arrow-left{background-position:-264px -144px}.icon-circle-arrow-up{bac
 kground-position:-288px -144px}.icon-circle-arrow-down{background-position:-312px 
-144px}.icon-globe{background-position:-336px -144px}.icon-wrench{background-position:-360px 
-144px}.icon-tasks{background-position:-384px -144px}.icon-filter{background-position:-408px 
-144px}.icon-briefcase{background-position:-432px -144px}.icon-fullscreen{background-position:-456px 
-144px}.dropup,.dropdown{position:relative}.dropdown-toggle{*margin-bottom:-3px}.dropdown-toggle:active,.open 
.dropdown-toggle{outline:0}.caret{display:inline-block;width:0;height:0;vertical-align:top;border-top:4px 
solid #000;border-right:4px solid transparent;border-left:4px solid transparent;content:""}.dropdown 
.caret{margin-top:8px;margin-left:2px}.dropdown-menu{position:absolute;top:100%;left:0;z-index:1000;display:none;float:left;min-width:160px;padding:5px
 0;margin:2px 0 0;list-style:none;background-color:#fff;border:1px solid #ccc;border:1px solid 
rgba(0,0,0,0.2);*border-right-width:2px;*border-bottom-wi
 dth:2px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 10px 
rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px 
rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.dropdown-menu.pull-right{right:0;left:auto}.dropdown-menu
 .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 
5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid 
#fff}.dropdown-menu>li>a{display:block;padding:3px 
20px;clear:both;font-weight:normal;line-height:20px;color:#333;white-space:nowrap}.dropdown-menu>li>a:hover,.dropdown-menu>li>a:focus,.dropdown-submenu:hover>a,.dropdown-submenu:focus>a{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o
 -linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to 
bottom,#08c,#0077b3);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu>.active>a,.dropdown-menu>.active>a:hover,.dropdown-menu>.active>a:focus{color:#fff;text-decoration:none;background-color:#0081c2;background-image:-moz-linear-gradient(top,#08c,#0077b3);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#08c),to(#0077b3));background-image:-webkit-linear-gradient(top,#08c,#0077b3);background-image:-o-linear-gradient(top,#08c,#0077b3);background-image:linear-gradient(to
 
bottom,#08c,#0077b3);background-repeat:repeat-x;outline:0;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0077b3',GradientType=0)}.dropdown-menu>.disabled>a,.dropdown-menu>.disabled>a:hover,.dropdown-menu>.disabled>a:focus{color:#999}.dropdown-menu>.disabled>a:hover,.dropdown-menu>.di
 
sabled>a:focus{text-decoration:none;cursor:default;background-color:transparent;background-image:none;filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.open{*z-index:1000}.open>.dropdown-menu{display:block}.dropdown-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:990}.pull-right>.dropdown-menu{right:0;left:auto}.dropup
 .caret,.navbar-fixed-bottom .dropdown .caret{border-top:0;border-bottom:4px solid #000;content:""}.dropup 
.dropdown-menu,.navbar-fixed-bottom .dropdown 
.dropdown-menu{top:auto;bottom:100%;margin-bottom:1px}.dropdown-submenu{position:relative}.dropdown-submenu>.dropdown-menu{top:0;left:100%;margin-top:-6px;margin-left:-1px;-webkit-border-radius:0
 6px 6px 6px;-moz-border-radius:0 6px 6px 6px;border-radius:0 6px 6px 
6px}.dropdown-submenu:hover>.dropdown-menu{display:block}.dropup 
.dropdown-submenu>.dropdown-menu{top:auto;bottom:0;margin-top:0;margin-bottom:-2px;-webkit-border-radius:5px 
5px 5px 0;-moz-border-radius:5px 5px 5px 0;bord
 er-radius:5px 5px 5px 
0}.dropdown-submenu>a:after{display:block;float:right;width:0;height:0;margin-top:5px;margin-right:-10px;border-color:transparent;border-left-color:#ccc;border-style:solid;border-width:5px
 0 5px 5px;content:" 
"}.dropdown-submenu:hover>a:after{border-left-color:#fff}.dropdown-submenu.pull-left{float:none}.dropdown-submenu.pull-left>.dropdown-menu{left:-100%;margin-left:10px;-webkit-border-radius:6px
 0 6px 6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.dropdown .dropdown-menu 
.nav-header{padding-right:20px;padding-left:20px}.typeahead{z-index:1051;margin-top:2px;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.well{min-height:20px;padding:19px;margin-bottom:20px;background-color:#f5f5f5;border:1px
 solid #e3e3e3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:inset 0 
1px 1px rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 1px rgba(0,0,0,0.05);box-shadow:inset 0 1px 1px 
rgba(0,0,0,0.05
 )}.well 
blockquote{border-color:#ddd;border-color:rgba(0,0,0,0.15)}.well-large{padding:24px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.well-small{padding:9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.fade{opacity:0;-webkit-transition:opacity
 .15s linear;-moz-transition:opacity .15s linear;-o-transition:opacity .15s linear;transition:opacity .15s 
linear}.fade.in{opacity:1}.collapse{position:relative;height:0;overflow:hidden;-webkit-transition:height .35s 
ease;-moz-transition:height .35s ease;-o-transition:height .35s ease;transition:height .35s 
ease}.collapse.in{height:auto}.close{float:right;font-size:20px;font-weight:bold;line-height:20px;color:#000;text-shadow:0
 1px 0 
#fff;opacity:.2;filter:alpha(opacity=20)}.close:hover,.close:focus{color:#000;text-decoration:none;cursor:pointer;opacity:.4;filter:alpha(opacity=40)}button.close{padding:0;cursor:pointer;background:transparent;border:0;-webkit-appearance:none}.btn{display:in
 line-block;*display:inline;padding:4px 
12px;margin-bottom:0;*margin-left:.3em;font-size:14px;line-height:20px;color:#333;text-align:center;text-shadow:0
 1px 1px 
rgba(255,255,255,0.75);vertical-align:middle;cursor:pointer;background-color:#f5f5f5;*background-color:#e6e6e6;background-image:-moz-linear-gradient(top,#fff,#e6e6e6);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#fff),to(#e6e6e6));background-image:-webkit-linear-gradient(top,#fff,#e6e6e6);background-image:-o-linear-gradient(top,#fff,#e6e6e6);background-image:linear-gradient(to
 bottom,#fff,#e6e6e6);background-repeat:repeat-x;border:1px solid #ccc;*border:0;border-color:#e6e6e6 #e6e6e6 
#bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) 
rgba(0,0,0,0.25);border-bottom-color:#b3b3b3;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#ffe6e6e6',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradi
 ent(enabled=false);*zoom:1;-webkit-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px 
rgba(0,0,0,0.05);-moz-box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px 
rgba(0,0,0,0.05);box-shadow:inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px 
rgba(0,0,0,0.05)}.btn:hover,.btn:focus,.btn:active,.btn.active,.btn.disabled,.btn[disabled]{color:#333;background-color:#e6e6e6;*background-color:#d9d9d9}.btn:active,.btn.active{background-color:#ccc
 
\9}.btn:first-child{*margin-left:0}.btn:hover,.btn:focus{color:#333;text-decoration:none;background-position:0
 -15px;-webkit-transition:background-position .1s linear;-moz-transition:background-position .1s 
linear;-o-transition:background-position .1s linear;transition:background-position .1s 
linear}.btn:focus{outline:thin dotted #333;outline:5px auto 
-webkit-focus-ring-color;outline-offset:-2px}.btn.active,.btn:active{background-image:none;outline:0;-webkit-box-shadow:inset
 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);-moz-box-s
 hadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 0 2px 4px 
rgba(0,0,0,0.15),0 1px 2px 
rgba(0,0,0,0.05)}.btn.disabled,.btn[disabled]{cursor:default;background-image:none;opacity:.65;filter:alpha(opacity=65);-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-large{padding:11px
 19px;font-size:17.5px;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.btn-large 
[class^="icon-"],.btn-large [class*=" icon-"]{margin-top:4px}.btn-small{padding:2px 
10px;font-size:11.9px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-small 
[class^="icon-"],.btn-small [class*=" icon-"]{margin-top:0}.btn-mini [class^="icon-"],.btn-mini [class*=" 
icon-"]{margin-top:-1px}.btn-mini{padding:0 
6px;font-size:10.5px;-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.btn-block{display:block;width:100%;padding-right:0;padding-left:0;-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-
 
box}.btn-block+.btn-block{margin-top:5px}input[type="submit"].btn-block,input[type="reset"].btn-block,input[type="button"].btn-block{width:100%}.btn-primary.active,.btn-warning.active,.btn-danger.active,.btn-success.active,.btn-info.active,.btn-inverse.active{color:rgba(255,255,255,0.75)}.btn-primary{color:#fff;text-shadow:0
 -1px 0 
rgba(0,0,0,0.25);background-color:#006dcc;*background-color:#04c;background-image:-moz-linear-gradient(top,#08c,#04c);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#08c),to(#04c));background-image:-webkit-linear-gradient(top,#08c,#04c);background-image:-o-linear-gradient(top,#08c,#04c);background-image:linear-gradient(to
 bottom,#08c,#04c);background-repeat:repeat-x;border-color:#04c #04c #002a80;border-color:rgba(0,0,0,0.1) 
rgba(0,0,0,0.1) 
rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff0088cc',endColorstr='#ff0044cc',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.b
 
tn-primary:hover,.btn-primary:focus,.btn-primary:active,.btn-primary.active,.btn-primary.disabled,.btn-primary[disabled]{color:#fff;background-color:#04c;*background-color:#003bb3}.btn-primary:active,.btn-primary.active{background-color:#039
 \9}.btn-warning{color:#fff;text-shadow:0 -1px 0 
rgba(0,0,0,0.25);background-color:#faa732;*background-color:#f89406;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to
 bottom,#fbb450,#f89406);background-repeat:repeat-x;border-color:#f89406 #f89406 
#ad6704;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) 
rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-wa
 
rning:hover,.btn-warning:focus,.btn-warning:active,.btn-warning.active,.btn-warning.disabled,.btn-warning[disabled]{color:#fff;background-color:#f89406;*background-color:#df8505}.btn-warning:active,.btn-warning.active{background-color:#c67605
 \9}.btn-danger{color:#fff;text-shadow:0 -1px 0 
rgba(0,0,0,0.25);background-color:#da4f49;*background-color:#bd362f;background-image:-moz-linear-gradient(top,#ee5f5b,#bd362f);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#ee5f5b),to(#bd362f));background-image:-webkit-linear-gradient(top,#ee5f5b,#bd362f);background-image:-o-linear-gradient(top,#ee5f5b,#bd362f);background-image:linear-gradient(to
 bottom,#ee5f5b,#bd362f);background-repeat:repeat-x;border-color:#bd362f #bd362f 
#802420;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) 
rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffbd362f',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-da
 
nger:hover,.btn-danger:focus,.btn-danger:active,.btn-danger.active,.btn-danger.disabled,.btn-danger[disabled]{color:#fff;background-color:#bd362f;*background-color:#a9302a}.btn-danger:active,.btn-danger.active{background-color:#942a25
 \9}.btn-success{color:#fff;text-shadow:0 -1px 0 
rgba(0,0,0,0.25);background-color:#5bb75b;*background-color:#51a351;background-image:-moz-linear-gradient(top,#62c462,#51a351);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#62c462),to(#51a351));background-image:-webkit-linear-gradient(top,#62c462,#51a351);background-image:-o-linear-gradient(top,#62c462,#51a351);background-image:linear-gradient(to
 bottom,#62c462,#51a351);background-repeat:repeat-x;border-color:#51a351 #51a351 
#387038;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) 
rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff51a351',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-success:h
 
over,.btn-success:focus,.btn-success:active,.btn-success.active,.btn-success.disabled,.btn-success[disabled]{color:#fff;background-color:#51a351;*background-color:#499249}.btn-success:active,.btn-success.active{background-color:#408140
 \9}.btn-info{color:#fff;text-shadow:0 -1px 0 
rgba(0,0,0,0.25);background-color:#49afcd;*background-color:#2f96b4;background-image:-moz-linear-gradient(top,#5bc0de,#2f96b4);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#5bc0de),to(#2f96b4));background-image:-webkit-linear-gradient(top,#5bc0de,#2f96b4);background-image:-o-linear-gradient(top,#5bc0de,#2f96b4);background-image:linear-gradient(to
 bottom,#5bc0de,#2f96b4);background-repeat:repeat-x;border-color:#2f96b4 #2f96b4 
#1f6377;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) 
rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff2f96b4',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-info:hover,
 
.btn-info:focus,.btn-info:active,.btn-info.active,.btn-info.disabled,.btn-info[disabled]{color:#fff;background-color:#2f96b4;*background-color:#2a85a0}.btn-info:active,.btn-info.active{background-color:#24748c
 \9}.btn-inverse{color:#fff;text-shadow:0 -1px 0 
rgba(0,0,0,0.25);background-color:#363636;*background-color:#222;background-image:-moz-linear-gradient(top,#444,#222);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#444),to(#222));background-image:-webkit-linear-gradient(top,#444,#222);background-image:-o-linear-gradient(top,#444,#222);background-image:linear-gradient(to
 bottom,#444,#222);background-repeat:repeat-x;border-color:#222 #222 #000;border-color:rgba(0,0,0,0.1) 
rgba(0,0,0,0.1) 
rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff444444',endColorstr='#ff222222',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.btn-inverse:hover,.btn-inverse:focus,.btn-inverse:active,.btn-inverse.active,.bt
 
n-inverse.disabled,.btn-inverse[disabled]{color:#fff;background-color:#222;*background-color:#151515}.btn-inverse:active,.btn-inverse.active{background-color:#080808
 
\9}button.btn,input[type="submit"].btn{*padding-top:3px;*padding-bottom:3px}button.btn::-moz-focus-inner,input[type="submit"].btn::-moz-focus-inner{padding:0;border:0}button.btn.btn-large,input[type="submit"].btn.btn-large{*padding-top:7px;*padding-bottom:7px}button.btn.btn-small,input[type="submit"].btn.btn-small{*padding-top:3px;*padding-bottom:3px}button.btn.btn-mini,input[type="submit"].btn.btn-mini{*padding-top:1px;*padding-bottom:1px}.btn-link,.btn-link:active,.btn-link[disabled]{background-color:transparent;background-image:none;-webkit-box-shadow:none;-moz-box-shadow:none;box-shadow:none}.btn-link{color:#08c;cursor:pointer;border-color:transparent;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-link:hover,.btn-link:focus{color:#005580;text-decoration:underline;background-color:transpare
 
nt}.btn-link[disabled]:hover,.btn-link[disabled]:focus{color:#333;text-decoration:none}.btn-group{position:relative;display:inline-block;*display:inline;*margin-left:.3em;font-size:0;white-space:nowrap;vertical-align:middle;*zoom:1}.btn-group:first-child{*margin-left:0}.btn-group+.btn-group{margin-left:5px}.btn-toolbar{margin-top:10px;margin-bottom:10px;font-size:0}.btn-toolbar>.btn+.btn,.btn-toolbar>.btn-group+.btn,.btn-toolbar>.btn+.btn-group{margin-left:5px}.btn-group>.btn{position:relative;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group>.btn+.btn{margin-left:-1px}.btn-group>.btn,.btn-group>.dropdown-menu,.btn-group>.popover{font-size:14px}.btn-group>.btn-mini{font-size:10.5px}.btn-group>.btn-small{font-size:11.9px}.btn-group>.btn-large{font-size:17.5px}.btn-group>.btn:first-child{margin-left:0;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottoml
 
eft:4px;-moz-border-radius-topleft:4px}.btn-group>.btn:last-child,.btn-group>.dropdown-toggle{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.btn-group>.btn.large:first-child{margin-left:0;-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.btn-group>.btn.large:last-child,.btn-group>.large.dropdown-toggle{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.btn-group>.btn:hover,.btn-group>.btn:focus,.btn-group>.btn:active,.btn-group>.btn.active{z-index:2}.btn-group
 .dropdown-toggle:active,.btn-group.open .dropdown-toggle{outline:0}.btn-
 
group>.btn+.dropdown-toggle{*padding-top:5px;padding-right:8px;*padding-bottom:5px;padding-left:8px;-webkit-box-shadow:inset
 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 1px 2px 
rgba(0,0,0,0.05);-moz-box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 rgba(255,255,255,0.2),0 
1px 2px rgba(0,0,0,0.05);box-shadow:inset 1px 0 0 rgba(255,255,255,0.125),inset 0 1px 0 
rgba(255,255,255,0.2),0 1px 2px 
rgba(0,0,0,0.05)}.btn-group>.btn-mini+.dropdown-toggle{*padding-top:2px;padding-right:5px;*padding-bottom:2px;padding-left:5px}.btn-group>.btn-small+.dropdown-toggle{*padding-top:5px;*padding-bottom:4px}.btn-group>.btn-large+.dropdown-toggle{*padding-top:7px;padding-right:12px;*padding-bottom:7px;padding-left:12px}.btn-group.open
 .dropdown-toggle{background-image:none;-webkit-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px 
rgba(0,0,0,0.05);-moz-box-shadow:inset 0 2px 4px rgba(0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05);box-shadow:inset 
0 2px 4px rgba
 (0,0,0,0.15),0 1px 2px rgba(0,0,0,0.05)}.btn-group.open 
.btn.dropdown-toggle{background-color:#e6e6e6}.btn-group.open 
.btn-primary.dropdown-toggle{background-color:#04c}.btn-group.open 
.btn-warning.dropdown-toggle{background-color:#f89406}.btn-group.open 
.btn-danger.dropdown-toggle{background-color:#bd362f}.btn-group.open 
.btn-success.dropdown-toggle{background-color:#51a351}.btn-group.open 
.btn-info.dropdown-toggle{background-color:#2f96b4}.btn-group.open 
.btn-inverse.dropdown-toggle{background-color:#222}.btn .caret{margin-top:8px;margin-left:0}.btn-large 
.caret{margin-top:6px}.btn-large 
.caret{border-top-width:5px;border-right-width:5px;border-left-width:5px}.btn-mini .caret,.btn-small 
.caret{margin-top:8px}.dropup .btn-large .caret{border-bottom-width:5px}.btn-primary .caret,.btn-warning 
.caret,.btn-danger .caret,.btn-info .caret,.btn-success .caret,.btn-inverse 
.caret{border-top-color:#fff;border-bottom-color:#fff}.btn-group-vertical{display:inline-block;*display:inline
 
;*zoom:1}.btn-group-vertical>.btn{display:block;float:none;max-width:100%;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.btn-group-vertical>.btn+.btn{margin-top:-1px;margin-left:0}.btn-group-vertical>.btn:first-child{-webkit-border-radius:4px
 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 4px 0 
0}.btn-group-vertical>.btn:last-child{-webkit-border-radius:0 0 4px 4px;-moz-border-radius:0 0 4px 
4px;border-radius:0 0 4px 4px}.btn-group-vertical>.btn-large:first-child{-webkit-border-radius:6px 6px 0 
0;-moz-border-radius:6px 6px 0 0;border-radius:6px 6px 0 
0}.btn-group-vertical>.btn-large:last-child{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 
6px;border-radius:0 0 6px 6px}.alert{padding:8px 35px 8px 14px;margin-bottom:20px;text-shadow:0 1px 0 
rgba(255,255,255,0.5);background-color:#fcf8e3;border:1px solid 
#fbeed5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.alert,.alert 
h4{color:#c09853}.alert h4{margin:0}.alert .clo
 
se{position:relative;top:-2px;right:-21px;line-height:20px}.alert-success{color:#468847;background-color:#dff0d8;border-color:#d6e9c6}.alert-success
 
h4{color:#468847}.alert-danger,.alert-error{color:#b94a48;background-color:#f2dede;border-color:#eed3d7}.alert-danger
 h4,.alert-error 
h4{color:#b94a48}.alert-info{color:#3a87ad;background-color:#d9edf7;border-color:#bce8f1}.alert-info 
h4{color:#3a87ad}.alert-block{padding-top:14px;padding-bottom:14px}.alert-block>p,.alert-block>ul{margin-bottom:0}.alert-block
 
p+p{margin-top:5px}.nav{margin-bottom:20px;margin-left:0;list-style:none}.nav>li>a{display:block}.nav>li>a:hover,.nav>li>a:focus{text-decoration:none;background-color:#eee}.nav>li>a>img{max-width:none}.nav>.pull-right{float:right}.nav-header{display:block;padding:3px
 15px;font-size:11px;font-weight:bold;line-height:20px;color:#999;text-shadow:0 1px 0 
rgba(255,255,255,0.5);text-transform:uppercase}.nav 
li+.nav-header{margin-top:9px}.nav-list{padding-right:15px;padding-left:1
 5px;margin-bottom:0}.nav-list>li>a,.nav-list .nav-header{margin-right:-15px;margin-left:-15px;text-shadow:0 
1px 0 rgba(255,255,255,0.5)}.nav-list>li>a{padding:3px 
15px}.nav-list>.active>a,.nav-list>.active>a:hover,.nav-list>.active>a:focus{color:#fff;text-shadow:0 -1px 0 
rgba(0,0,0,0.2);background-color:#08c}.nav-list [class^="icon-"],.nav-list [class*=" 
icon-"]{margin-right:2px}.nav-list .divider{*width:100%;height:1px;margin:9px 1px;*margin:-5px 0 
5px;overflow:hidden;background-color:#e5e5e5;border-bottom:1px solid 
#fff}.nav-tabs,.nav-pills{*zoom:1}.nav-tabs:before,.nav-pills:before,.nav-tabs:after,.nav-pills:after{display:table;line-height:0;content:""}.nav-tabs:after,.nav-pills:after{clear:both}.nav-tabs>li,.nav-pills>li{float:left}.nav-tabs>li>a,.nav-pills>li>a{padding-right:12px;padding-left:12px;margin-right:2px;line-height:14px}.nav-tabs{border-bottom:1px
 solid 
#ddd}.nav-tabs>li{margin-bottom:-1px}.nav-tabs>li>a{padding-top:8px;padding-bottom:8px;line-height:20px;bor
 der:1px solid transparent;-webkit-border-radius:4px 4px 0 0;-moz-border-radius:4px 4px 0 0;border-radius:4px 
4px 0 0}.nav-tabs>li>a:hover,.nav-tabs>li>a:focus{border-color:#eee #eee 
#ddd}.nav-tabs>.active>a,.nav-tabs>.active>a:hover,.nav-tabs>.active>a:focus{color:#555;cursor:default;background-color:#fff;border:1px
 solid 
#ddd;border-bottom-color:transparent}.nav-pills>li>a{padding-top:8px;padding-bottom:8px;margin-top:2px;margin-bottom:2px;-webkit-border-radius:5px;-moz-border-radius:5px;border-radius:5px}.nav-pills>.active>a,.nav-pills>.active>a:hover,.nav-pills>.active>a:focus{color:#fff;background-color:#08c}.nav-stacked>li{float:none}.nav-stacked>li>a{margin-right:0}.nav-tabs.nav-stacked{border-bottom:0}.nav-tabs.nav-stacked>li>a{border:1px
 solid 
#ddd;-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.nav-tabs.nav-stacked>li:first-child>a{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:
 
4px;-moz-border-radius-topright:4px;-moz-border-radius-topleft:4px}.nav-tabs.nav-stacked>li:last-child>a{-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-moz-border-radius-bottomright:4px;-moz-border-radius-bottomleft:4px}.nav-tabs.nav-stacked>li>a:hover,.nav-tabs.nav-stacked>li>a:focus{z-index:2;border-color:#ddd}.nav-pills.nav-stacked>li>a{margin-bottom:3px}.nav-pills.nav-stacked>li:last-child>a{margin-bottom:1px}.nav-tabs
 .dropdown-menu{-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 
6px}.nav-pills .dropdown-menu{-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.nav 
.dropdown-toggle .caret{margin-top:6px;border-top-color:#08c;border-bottom-color:#08c}.nav 
.dropdown-toggle:hover .caret,.nav .dropdown-toggle:focus 
.caret{border-top-color:#005580;border-bottom-color:#005580}.nav-tabs .dropdown-toggle 
.caret{margin-top:8px}.nav .ac
 tive .dropdown-toggle .caret{border-top-color:#fff;border-bottom-color:#fff}.nav-tabs .active 
.dropdown-toggle 
.caret{border-top-color:#555;border-bottom-color:#555}.nav>.dropdown.active>a:hover,.nav>.dropdown.active>a:focus{cursor:pointer}.nav-tabs
 .open .dropdown-toggle,.nav-pills .open 
.dropdown-toggle,.nav>li.dropdown.open.active>a:hover,.nav>li.dropdown.open.active>a:focus{color:#fff;background-color:#999;border-color:#999}.nav
 li.dropdown.open .caret,.nav li.dropdown.open.active .caret,.nav li.dropdown.open a:hover .caret,.nav 
li.dropdown.open a:focus 
.caret{border-top-color:#fff;border-bottom-color:#fff;opacity:1;filter:alpha(opacity=100)}.tabs-stacked 
.open>a:hover,.tabs-stacked 
.open>a:focus{border-color:#999}.tabbable{*zoom:1}.tabbable:before,.tabbable:after{display:table;line-height:0;content:""}.tabbable:after{clear:both}.tab-content{overflow:auto}.tabs-below>.nav-tabs,.tabs-right>.nav-tabs,.tabs-left>.nav-tabs{border-bottom:0}.tab-content>.tab-pane,.pill-content
.pill-pane{display:none}.tab-content>.active,.pill-content>.active{display:block}.tabs-below>.nav-tabs{border-top:1px
solid 
#ddd}.tabs-below>.nav-tabs>li{margin-top:-1px;margin-bottom:0}.tabs-below>.nav-tabs>li>a{-webkit-border-radius:0
0 4px 4px;-moz-border-radius:0 0 4px 4px;border-radius:0 0 4px 
4px}.tabs-below>.nav-tabs>li>a:hover,.tabs-below>.nav-tabs>li>a:focus{border-top-color:#ddd;border-bottom-color:transparent}.tabs-below>.nav-tabs>.active>a,.tabs-below>.nav-tabs>.active>a:hover,.tabs-below>.nav-tabs>.active>a:focus{border-color:transparent
#ddd #ddd 
#ddd}.tabs-left>.nav-tabs>li,.tabs-right>.nav-tabs>li{float:none}.tabs-left>.nav-tabs>li>a,.tabs-right>.nav-tabs>li>a{min-width:74px;margin-right:0;margin-bottom:3px}.tabs-left>.nav-tabs{float:left;margin-right:19px;border-right:1px
solid #ddd}.tabs-left>.nav-tabs>li>a{margin-right:-1px;-webkit-border-radius:4px 0 0 
4px;-moz-border-radius:4px 0 0 4px;border-radius:4px 0 0 4px}.tabs-left>.nav-tabs>li>a:hover,.tabs-left
.nav-tabs>li>a:focus{border-color:#eee #ddd #eee #eee}.tabs-left>.nav-tabs .active>a,.tabs-left>.nav-tabs 
.active>a:hover,.tabs-left>.nav-tabs .active>a:focus{border-color:#ddd transparent #ddd 
#ddd;*border-right-color:#fff}.tabs-right>.nav-tabs{float:right;margin-left:19px;border-left:1px solid 
#ddd}.tabs-right>.nav-tabs>li>a{margin-left:-1px;-webkit-border-radius:0 4px 4px 0;-moz-border-radius:0 4px 
4px 0;border-radius:0 4px 4px 
0}.tabs-right>.nav-tabs>li>a:hover,.tabs-right>.nav-tabs>li>a:focus{border-color:#eee #eee #eee 
#ddd}.tabs-right>.nav-tabs .active>a,.tabs-right>.nav-tabs .active>a:hover,.tabs-right>.nav-tabs 
.active>a:focus{border-color:#ddd #ddd #ddd 
transparent;*border-left-color:#fff}.nav>.disabled>a{color:#999}.nav>.disabled>a:hover,.nav>.disabled>a:focus{text-decoration:none;cursor:default;background-color:transparent}.navbar{*position:relative;*z-index:2;margin-bottom:20px;overflow:visible}.navbar-inner{min-height:40px;padding-right:20px;padding-left:20px;
 
background-color:#fafafa;background-image:-moz-linear-gradient(top,#fff,#f2f2f2);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#fff),to(#f2f2f2));background-image:-webkit-linear-gradient(top,#fff,#f2f2f2);background-image:-o-linear-gradient(top,#fff,#f2f2f2);background-image:linear-gradient(to
 bottom,#fff,#f2f2f2);background-repeat:repeat-x;border:1px solid 
#d4d4d4;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffffffff',endColorstr='#fff2f2f2',GradientType=0);*zoom:1;-webkit-box-shadow:0
 1px 4px rgba(0,0,0,0.065);-moz-box-shadow:0 1px 4px rgba(0,0,0,0.065);box-shadow:0 1px 4px 
rgba(0,0,0,0.065)}.navbar-inner:before,.navbar-inner:after{display:table;line-height:0;content:""}.navbar-inner:after{clear:both}.navbar
 .container{width:auto}.nav-collapse.collapse{height:auto;overflow:visible}.navbar 
.brand{display:block;float:left;padding:10px 20px 10px;margin-left:-20px;font-size:20px;
 font-weight:200;color:#777;text-shadow:0 1px 0 #fff}.navbar .brand:hover,.navbar 
.brand:focus{text-decoration:none}.navbar-text{margin-bottom:0;line-height:40px;color:#777}.navbar-link{color:#777}.navbar-link:hover,.navbar-link:focus{color:#333}.navbar
 .divider-vertical{height:40px;margin:0 9px;border-right:1px solid #fff;border-left:1px solid #f2f2f2}.navbar 
.btn,.navbar .btn-group{margin-top:5px}.navbar .btn-group .btn,.navbar .input-prepend .btn,.navbar 
.input-append .btn,.navbar .input-prepend .btn-group,.navbar .input-append 
.btn-group{margin-top:0}.navbar-form{margin-bottom:0;*zoom:1}.navbar-form:before,.navbar-form:after{display:table;line-height:0;content:""}.navbar-form:after{clear:both}.navbar-form
 input,.navbar-form select,.navbar-form .radio,.navbar-form .checkbox{margin-top:5px}.navbar-form 
input,.navbar-form select,.navbar-form .btn{display:inline-block;margin-bottom:0}.navbar-form 
input[type="image"],.navbar-form input[type="checkbox"],.navbar-form input[type=
 "radio"]{margin-top:3px}.navbar-form .input-append,.navbar-form 
.input-prepend{margin-top:5px;white-space:nowrap}.navbar-form .input-append input,.navbar-form .input-prepend 
input{margin-top:0}.navbar-search{position:relative;float:left;margin-top:5px;margin-bottom:0}.navbar-search 
.search-query{padding:4px 14px;margin-bottom:0;font-family:"Helvetica 
Neue",Helvetica,Arial,sans-serif;font-size:13px;font-weight:normal;line-height:1;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.navbar-static-top{position:static;margin-bottom:0}.navbar-static-top
 
.navbar-inner{-webkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-fixed-top,.navbar-fixed-bottom{position:fixed;right:0;left:0;z-index:1030;margin-bottom:0}.navbar-fixed-top
 .navbar-inner,.navbar-static-top .navbar-inner{border-width:0 0 1px}.navbar-fixed-bottom 
.navbar-inner{border-width:1px 0 0}.navbar-fixed-top .navbar-inner,.navbar-fixed-bottom 
.navbar-inner{padding-right:0;padding-left:0;-w
 ebkit-border-radius:0;-moz-border-radius:0;border-radius:0}.navbar-static-top .container,.navbar-fixed-top 
.container,.navbar-fixed-bottom .container{width:940px}.navbar-fixed-top{top:0}.navbar-fixed-top 
.navbar-inner,.navbar-static-top .navbar-inner{-webkit-box-shadow:0 1px 10px 
rgba(0,0,0,0.1);-moz-box-shadow:0 1px 10px rgba(0,0,0,0.1);box-shadow:0 1px 10px 
rgba(0,0,0,0.1)}.navbar-fixed-bottom{bottom:0}.navbar-fixed-bottom .navbar-inner{-webkit-box-shadow:0 -1px 
10px rgba(0,0,0,0.1);-moz-box-shadow:0 -1px 10px rgba(0,0,0,0.1);box-shadow:0 -1px 10px 
rgba(0,0,0,0.1)}.navbar .nav{position:relative;left:0;display:block;float:left;margin:0 10px 0 0}.navbar 
.nav.pull-right{float:right;margin-right:0}.navbar .nav>li{float:left}.navbar 
.nav>li>a{float:none;padding:10px 15px 10px;color:#777;text-decoration:none;text-shadow:0 1px 0 #fff}.navbar 
.nav .dropdown-toggle .caret{margin-top:8px}.navbar .nav>li>a:focus,.navbar 
.nav>li>a:hover{color:#333;text-decoration:none;background-color
 :transparent}.navbar .nav>.active>a,.navbar .nav>.active>a:hover,.navbar 
.nav>.active>a:focus{color:#555;text-decoration:none;background-color:#e5e5e5;-webkit-box-shadow:inset 0 3px 
8px rgba(0,0,0,0.125);-moz-box-shadow:inset 0 3px 8px rgba(0,0,0,0.125);box-shadow:inset 0 3px 8px 
rgba(0,0,0,0.125)}.navbar .btn-navbar{display:none;float:right;padding:7px 
10px;margin-right:5px;margin-left:5px;color:#fff;text-shadow:0 -1px 0 
rgba(0,0,0,0.25);background-color:#ededed;*background-color:#e5e5e5;background-image:-moz-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#f2f2f2),to(#e5e5e5));background-image:-webkit-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:-o-linear-gradient(top,#f2f2f2,#e5e5e5);background-image:linear-gradient(to
 bottom,#f2f2f2,#e5e5e5);background-repeat:repeat-x;border-color:#e5e5e5 #e5e5e5 
#bfbfbf;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) 
rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(st
 
artColorstr='#fff2f2f2',endColorstr='#ffe5e5e5',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false);-webkit-box-shadow:inset
 0 1px 0 rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);-moz-box-shadow:inset 0 1px 0 
rgba(255,255,255,0.1),0 1px 0 rgba(255,255,255,0.075);box-shadow:inset 0 1px 0 rgba(255,255,255,0.1),0 1px 0 
rgba(255,255,255,0.075)}.navbar .btn-navbar:hover,.navbar .btn-navbar:focus,.navbar 
.btn-navbar:active,.navbar .btn-navbar.active,.navbar .btn-navbar.disabled,.navbar 
.btn-navbar[disabled]{color:#fff;background-color:#e5e5e5;*background-color:#d9d9d9}.navbar 
.btn-navbar:active,.navbar .btn-navbar.active{background-color:#ccc \9}.navbar .btn-navbar 
.icon-bar{display:block;width:18px;height:2px;background-color:#f5f5f5;-webkit-border-radius:1px;-moz-border-radius:1px;border-radius:1px;-webkit-box-shadow:0
 1px 0 rgba(0,0,0,0.25);-moz-box-shadow:0 1px 0 rgba(0,0,0,0.25);box-shadow:0 1px 0 
rgba(0,0,0,0.25)}.btn-navbar .icon-bar+.ic
 on-bar{margin-top:3px}.navbar 
.nav>li>.dropdown-menu:before{position:absolute;top:-7px;left:9px;display:inline-block;border-right:7px solid 
transparent;border-bottom:7px solid #ccc;border-left:7px solid 
transparent;border-bottom-color:rgba(0,0,0,0.2);content:''}.navbar 
.nav>li>.dropdown-menu:after{position:absolute;top:-6px;left:10px;display:inline-block;border-right:6px solid 
transparent;border-bottom:6px solid #fff;border-left:6px solid transparent;content:''}.navbar-fixed-bottom 
.nav>li>.dropdown-menu:before{top:auto;bottom:-7px;border-top:7px solid 
#ccc;border-bottom:0;border-top-color:rgba(0,0,0,0.2)}.navbar-fixed-bottom 
.nav>li>.dropdown-menu:after{top:auto;bottom:-6px;border-top:6px solid #fff;border-bottom:0}.navbar .nav 
li.dropdown>a:hover .caret,.navbar .nav li.dropdown>a:focus 
.caret{border-top-color:#333;border-bottom-color:#333}.navbar .nav li.dropdown.open>.dropdown-toggle,.navbar 
.nav li.dropdown.active>.dropdown-toggle,.navbar .nav li.dropdown.open.active>.dr
 opdown-toggle{color:#555;background-color:#e5e5e5}.navbar .nav li.dropdown>.dropdown-toggle 
.caret{border-top-color:#777;border-bottom-color:#777}.navbar .nav li.dropdown.open>.dropdown-toggle 
.caret,.navbar .nav li.dropdown.active>.dropdown-toggle .caret,.navbar .nav 
li.dropdown.open.active>.dropdown-toggle .caret{border-top-color:#555;border-bottom-color:#555}.navbar 
.pull-right>li>.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right{right:0;left:auto}.navbar 
.pull-right>li>.dropdown-menu:before,.navbar 
.nav>li>.dropdown-menu.pull-right:before{right:12px;left:auto}.navbar 
.pull-right>li>.dropdown-menu:after,.navbar 
.nav>li>.dropdown-menu.pull-right:after{right:13px;left:auto}.navbar .pull-right>li>.dropdown-menu 
.dropdown-menu,.navbar .nav>li>.dropdown-menu.pull-right 
.dropdown-menu{right:100%;left:auto;margin-right:-1px;margin-left:0;-webkit-border-radius:6px 0 6px 
6px;-moz-border-radius:6px 0 6px 6px;border-radius:6px 0 6px 6px}.navbar-inverse .navbar-inner{backgroun
 
d-color:#1b1b1b;background-image:-moz-linear-gradient(top,#222,#111);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#222),to(#111));background-image:-webkit-linear-gradient(top,#222,#111);background-image:-o-linear-gradient(top,#222,#111);background-image:linear-gradient(to
 
bottom,#222,#111);background-repeat:repeat-x;border-color:#252525;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff222222',endColorstr='#ff111111',GradientType=0)}.navbar-inverse
 .brand,.navbar-inverse .nav>li>a{color:#999;text-shadow:0 -1px 0 rgba(0,0,0,0.25)}.navbar-inverse 
.brand:hover,.navbar-inverse .nav>li>a:hover,.navbar-inverse .brand:focus,.navbar-inverse 
.nav>li>a:focus{color:#fff}.navbar-inverse .brand{color:#999}.navbar-inverse 
.navbar-text{color:#999}.navbar-inverse .nav>li>a:focus,.navbar-inverse 
.nav>li>a:hover{color:#fff;background-color:transparent}.navbar-inverse .nav .active>a,.navbar-inverse .nav 
.active>a:hover,.navbar-inverse .nav .active>a:focus{color:#f
 ff;background-color:#111}.navbar-inverse .navbar-link{color:#999}.navbar-inverse 
.navbar-link:hover,.navbar-inverse .navbar-link:focus{color:#fff}.navbar-inverse 
.divider-vertical{border-right-color:#222;border-left-color:#111}.navbar-inverse .nav 
li.dropdown.open>.dropdown-toggle,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle,.navbar-inverse 
.nav li.dropdown.open.active>.dropdown-toggle{color:#fff;background-color:#111}.navbar-inverse .nav 
li.dropdown>a:hover .caret,.navbar-inverse .nav li.dropdown>a:focus 
.caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .nav li.dropdown>.dropdown-toggle 
.caret{border-top-color:#999;border-bottom-color:#999}.navbar-inverse .nav li.dropdown.open>.dropdown-toggle 
.caret,.navbar-inverse .nav li.dropdown.active>.dropdown-toggle .caret,.navbar-inverse .nav 
li.dropdown.open.active>.dropdown-toggle 
.caret{border-top-color:#fff;border-bottom-color:#fff}.navbar-inverse .navbar-search 
.search-query{color:#fff;background
 -color:#515151;border-color:#111;-webkit-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 
rgba(255,255,255,0.15);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 
rgba(255,255,255,0.15);box-shadow:inset 0 1px 2px rgba(0,0,0,0.1),0 1px 0 
rgba(255,255,255,0.15);-webkit-transition:none;-moz-transition:none;-o-transition:none;transition:none}.navbar-inverse
 .navbar-search .search-query:-moz-placeholder{color:#ccc}.navbar-inverse .navbar-search 
.search-query:-ms-input-placeholder{color:#ccc}.navbar-inverse .navbar-search 
.search-query::-webkit-input-placeholder{color:#ccc}.navbar-inverse .navbar-search 
.search-query:focus,.navbar-inverse .navbar-search .search-query.focused{padding:5px 
15px;color:#333;text-shadow:0 1px 0 #fff;background-color:#fff;border:0;outline:0;-webkit-box-shadow:0 0 3px 
rgba(0,0,0,0.15);-moz-box-shadow:0 0 3px rgba(0,0,0,0.15);box-shadow:0 0 3px rgba(0,0,0,0.15)}.navbar-inverse 
.btn-navbar{color:#fff;text-shadow:0 -1px 0 rgba(0,0,0,0.25);background-
 
color:#0e0e0e;*background-color:#040404;background-image:-moz-linear-gradient(top,#151515,#040404);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#151515),to(#040404));background-image:-webkit-linear-gradient(top,#151515,#040404);background-image:-o-linear-gradient(top,#151515,#040404);background-image:linear-gradient(to
 bottom,#151515,#040404);background-repeat:repeat-x;border-color:#040404 #040404 
#000;border-color:rgba(0,0,0,0.1) rgba(0,0,0,0.1) 
rgba(0,0,0,0.25);filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff151515',endColorstr='#ff040404',GradientType=0);filter:progid:DXImageTransform.Microsoft.gradient(enabled=false)}.navbar-inverse
 .btn-navbar:hover,.navbar-inverse .btn-navbar:focus,.navbar-inverse .btn-navbar:active,.navbar-inverse 
.btn-navbar.active,.navbar-inverse .btn-navbar.disabled,.navbar-inverse 
.btn-navbar[disabled]{color:#fff;background-color:#040404;*background-color:#000}.navbar-inverse 
.btn-navbar:active,.navbar-inverse .btn-
 navbar.active{background-color:#000 \9}.breadcrumb{padding:8px 15px;margin:0 0 
20px;list-style:none;background-color:#f5f5f5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.breadcrumb>li{display:inline-block;*display:inline;text-shadow:0
 1px 0 #fff;*zoom:1}.breadcrumb>li>.divider{padding:0 
5px;color:#ccc}.breadcrumb>.active{color:#999}.pagination{margin:20px 0}.pagination 
ul{display:inline-block;*display:inline;margin-bottom:0;margin-left:0;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;*zoom:1;-webkit-box-shadow:0
 1px 2px rgba(0,0,0,0.05);-moz-box-shadow:0 1px 2px rgba(0,0,0,0.05);box-shadow:0 1px 2px 
rgba(0,0,0,0.05)}.pagination ul>li{display:inline}.pagination ul>li>a,.pagination 
ul>li>span{float:left;padding:4px 12px;line-height:20px;text-decoration:none;background-color:#fff;border:1px 
solid #ddd;border-left-width:0}.pagination ul>li>a:hover,.pagination ul>li>a:focus,.pagination 
ul>.active>a,.pagination ul>.active>span{background-
 color:#f5f5f5}.pagination ul>.active>a,.pagination ul>.active>span{color:#999;cursor:default}.pagination 
ul>.disabled>span,.pagination ul>.disabled>a,.pagination ul>.disabled>a:hover,.pagination 
ul>.disabled>a:focus{color:#999;cursor:default;background-color:transparent}.pagination 
ul>li:first-child>a,.pagination 
ul>li:first-child>span{border-left-width:1px;-webkit-border-bottom-left-radius:4px;border-bottom-left-radius:4px;-webkit-border-top-left-radius:4px;border-top-left-radius:4px;-moz-border-radius-bottomleft:4px;-moz-border-radius-topleft:4px}.pagination
 ul>li:last-child>a,.pagination 
ul>li:last-child>span{-webkit-border-top-right-radius:4px;border-top-right-radius:4px;-webkit-border-bottom-right-radius:4px;border-bottom-right-radius:4px;-moz-border-radius-topright:4px;-moz-border-radius-bottomright:4px}.pagination-centered{text-align:center}.pagination-right{text-align:right}.pagination-large
 ul>li>a,.pagination-large ul>li>span{padding:11px 19px;font-size:17.5px}.pag
 ination-large ul>li:first-child>a,.pagination-large 
ul>li:first-child>span{-webkit-border-bottom-left-radius:6px;border-bottom-left-radius:6px;-webkit-border-top-left-radius:6px;border-top-left-radius:6px;-moz-border-radius-bottomleft:6px;-moz-border-radius-topleft:6px}.pagination-large
 ul>li:last-child>a,.pagination-large 
ul>li:last-child>span{-webkit-border-top-right-radius:6px;border-top-right-radius:6px;-webkit-border-bottom-right-radius:6px;border-bottom-right-radius:6px;-moz-border-radius-topright:6px;-moz-border-radius-bottomright:6px}.pagination-mini
 ul>li:first-child>a,.pagination-small ul>li:first-child>a,.pagination-mini 
ul>li:first-child>span,.pagination-small 
ul>li:first-child>span{-webkit-border-bottom-left-radius:3px;border-bottom-left-radius:3px;-webkit-border-top-left-radius:3px;border-top-left-radius:3px;-moz-border-radius-bottomleft:3px;-moz-border-radius-topleft:3px}.pagination-mini
 ul>li:last-child>a,.pagination-small ul>li:last-child>a,.pagination-mini 
 ul>li:last-child>span,.pagination-small 
ul>li:last-child>span{-webkit-border-top-right-radius:3px;border-top-right-radius:3px;-webkit-border-bottom-right-radius:3px;border-bottom-right-radius:3px;-moz-border-radius-topright:3px;-moz-border-radius-bottomright:3px}.pagination-small
 ul>li>a,.pagination-small ul>li>span{padding:2px 10px;font-size:11.9px}.pagination-mini 
ul>li>a,.pagination-mini ul>li>span{padding:0 6px;font-size:10.5px}.pager{margin:20px 
0;text-align:center;list-style:none;*zoom:1}.pager:before,.pager:after{display:table;line-height:0;content:""}.pager:after{clear:both}.pager
 li{display:inline}.pager li>a,.pager li>span{display:inline-block;padding:5px 
14px;background-color:#fff;border:1px solid 
#ddd;-webkit-border-radius:15px;-moz-border-radius:15px;border-radius:15px}.pager li>a:hover,.pager 
li>a:focus{text-decoration:none;background-color:#f5f5f5}.pager .next>a,.pager .next>span{float:right}.pager 
.previous>a,.pager .previous>span{float:left}.pager .disabled>
 a,.pager .disabled>a:hover,.pager .disabled>a:focus,.pager 
.disabled>span{color:#999;cursor:default;background-color:#fff}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1040;background-color:#000}.modal-backdrop.fade{opacity:0}.modal-backdrop,.modal-backdrop.fade.in{opacity:.8;filter:alpha(opacity=80)}.modal{position:fixed;top:10%;left:50%;z-index:1050;width:560px;margin-left:-280px;background-color:#fff;border:1px
 solid #999;border:1px solid rgba(0,0,0,0.3);*border:1px solid 
#999;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;outline:0;-webkit-box-shadow:0 3px 
7px rgba(0,0,0,0.3);-moz-box-shadow:0 3px 7px rgba(0,0,0,0.3);box-shadow:0 3px 7px 
rgba(0,0,0,0.3);-webkit-background-clip:padding-box;-moz-background-clip:padding-box;background-clip:padding-box}.modal.fade{top:-25%;-webkit-transition:opacity
 .3s linear,top .3s ease-out;-moz-transition:opacity .3s linear,top .3s ease-out;-o-transition:opacity .3s 
linear,top .3s ease-out;trans
 ition:opacity .3s linear,top .3s ease-out}.modal.fade.in{top:10%}.modal-header{padding:9px 
15px;border-bottom:1px solid #eee}.modal-header .close{margin-top:2px}.modal-header 
h3{margin:0;line-height:30px}.modal-body{position:relative;max-height:400px;padding:15px;overflow-y:auto}.modal-form{margin-bottom:0}.modal-footer{padding:14px
 15px 15px;margin-bottom:0;text-align:right;background-color:#f5f5f5;border-top:1px solid 
#ddd;-webkit-border-radius:0 0 6px 6px;-moz-border-radius:0 0 6px 6px;border-radius:0 0 6px 
6px;*zoom:1;-webkit-box-shadow:inset 0 1px 0 #fff;-moz-box-shadow:inset 0 1px 0 #fff;box-shadow:inset 0 1px 0 
#fff}.modal-footer:before,.modal-footer:after{display:table;line-height:0;content:""}.modal-footer:after{clear:both}.modal-footer
 .btn+.btn{margin-bottom:0;margin-left:5px}.modal-footer .btn-group .btn+.btn{margin-left:-1px}.modal-footer 
.btn-block+.btn-block{margin-left:0}.tooltip{position:absolute;z-index:1030;display:block;font-size:11px;line-height:1.4;opac
 
ity:0;filter:alpha(opacity=0);visibility:visible}.tooltip.in{opacity:.8;filter:alpha(opacity=80)}.tooltip.top{padding:5px
 0;margin-top:-3px}.tooltip.right{padding:0 5px;margin-left:3px}.tooltip.bottom{padding:5px 
0;margin-top:3px}.tooltip.left{padding:0 
5px;margin-left:-3px}.tooltip-inner{max-width:200px;padding:8px;color:#fff;text-align:center;text-decoration:none;background-color:#000;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.tooltip-arrow{position:absolute;width:0;height:0;border-color:transparent;border-style:solid}.tooltip.top
 .tooltip-arrow{bottom:0;left:50%;margin-left:-5px;border-top-color:#000;border-width:5px 5px 
0}.tooltip.right .tooltip-arrow{top:50%;left:0;margin-top:-5px;border-right-color:#000;border-width:5px 5px 
5px 0}.tooltip.left .tooltip-arrow{top:50%;right:0;margin-top:-5px;border-left-color:#000;border-width:5px 0 
5px 5px}.tooltip.bottom 
.tooltip-arrow{top:0;left:50%;margin-left:-5px;border-bottom-color:#000;border-width:0 5px 
 
5px}.popover{position:absolute;top:0;left:0;z-index:1010;display:none;max-width:276px;padding:1px;text-align:left;white-space:normal;background-color:#fff;border:1px
 solid #ccc;border:1px solid 
rgba(0,0,0,0.2);-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px;-webkit-box-shadow:0 5px 
10px rgba(0,0,0,0.2);-moz-box-shadow:0 5px 10px rgba(0,0,0,0.2);box-shadow:0 5px 10px 
rgba(0,0,0,0.2);-webkit-background-clip:padding-box;-moz-background-clip:padding;background-clip:padding-box}.popover.top{margin-top:-10px}.popover.right{margin-left:10px}.popover.bottom{margin-top:10px}.popover.left{margin-left:-10px}.popover-title{padding:8px
 14px;margin:0;font-size:14px;font-weight:normal;line-height:18px;background-color:#f7f7f7;border-bottom:1px 
solid #ebebeb;-webkit-border-radius:5px 5px 0 0;-moz-border-radius:5px 5px 0 0;border-radius:5px 5px 0 
0}.popover-title:empty{display:none}.popover-content{padding:9px 14px}.popover .arrow,.popover 
.arrow:after{position:absolute;di
 splay:block;width:0;height:0;border-color:transparent;border-style:solid}.popover 
.arrow{border-width:11px}.popover .arrow:after{border-width:10px;content:""}.popover.top 
.arrow{bottom:-11px;left:50%;margin-left:-11px;border-top-color:#999;border-top-color:rgba(0,0,0,0.25);border-bottom-width:0}.popover.top
 .arrow:after{bottom:1px;margin-left:-10px;border-top-color:#fff;border-bottom-width:0}.popover.right 
.arrow{top:50%;left:-11px;margin-top:-11px;border-right-color:#999;border-right-color:rgba(0,0,0,0.25);border-left-width:0}.popover.right
 .arrow:after{bottom:-10px;left:1px;border-right-color:#fff;border-left-width:0}.popover.bottom 
.arrow{top:-11px;left:50%;margin-left:-11px;border-bottom-color:#999;border-bottom-color:rgba(0,0,0,0.25);border-top-width:0}.popover.bottom
 .arrow:after{top:1px;margin-left:-10px;border-bottom-color:#fff;border-top-width:0}.popover.left 
.arrow{top:50%;right:-11px;margin-top:-11px;border-left-color:#999;border-left-color:rgba(0,0,0,0.25);border
 -right-width:0}.popover.left 
.arrow:after{right:1px;bottom:-10px;border-left-color:#fff;border-right-width:0}.thumbnails{margin-left:-20px;list-style:none;*zoom:1}.thumbnails:before,.thumbnails:after{display:table;line-height:0;content:""}.thumbnails:after{clear:both}.row-fluid
 
.thumbnails{margin-left:0}.thumbnails>li{float:left;margin-bottom:20px;margin-left:20px}.thumbnail{display:block;padding:4px;line-height:20px;border:1px
 solid #ddd;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;-webkit-box-shadow:0 1px 3px 
rgba(0,0,0,0.055);-moz-box-shadow:0 1px 3px rgba(0,0,0,0.055);box-shadow:0 1px 3px 
rgba(0,0,0,0.055);-webkit-transition:all .2s ease-in-out;-moz-transition:all .2s 
ease-in-out;-o-transition:all .2s ease-in-out;transition:all .2s 
ease-in-out}a.thumbnail:hover,a.thumbnail:focus{border-color:#08c;-webkit-box-shadow:0 1px 4px 
rgba(0,105,214,0.25);-moz-box-shadow:0 1px 4px rgba(0,105,214,0.25);box-shadow:0 1px 4px 
rgba(0,105,214,0.25)}.thumbnail>img{d
 isplay:block;max-width:100%;margin-right:auto;margin-left:auto}.thumbnail 
.caption{padding:9px;color:#555}.media,.media-body{overflow:hidden;*overflow:visible;zoom:1}.media,.media 
.media{margin-top:15px}.media:first-child{margin-top:0}.media-object{display:block}.media-heading{margin:0 0 
5px}.media>.pull-left{margin-right:10px}.media>.pull-right{margin-left:10px}.media-list{margin-left:0;list-style:none}.label,.badge{display:inline-block;padding:2px
 4px;font-size:11.844px;font-weight:bold;line-height:14px;color:#fff;text-shadow:0 -1px 0 
rgba(0,0,0,0.25);white-space:nowrap;vertical-align:baseline;background-color:#999}.label{-webkit-border-radius:3px;-moz-border-radius:3px;border-radius:3px}.badge{padding-right:9px;padding-left:9px;-webkit-border-radius:9px;-moz-border-radius:9px;border-radius:9px}.label:empty,.badge:empty{display:none}a.label:hover,a.label:focus,a.badge:hover,a.badge:focus{color:#fff;text-decoration:none;cursor:pointer}.label-important,.badge-important{backg
 
round-color:#b94a48}.label-important[href],.badge-important[href]{background-color:#953b39}.label-warning,.badge-warning{background-color:#f89406}.label-warning[href],.badge-warning[href]{background-color:#c67605}.label-success,.badge-success{background-color:#468847}.label-success[href],.badge-success[href]{background-color:#356635}.label-info,.badge-info{background-color:#3a87ad}.label-info[href],.badge-info[href]{background-color:#2d6987}.label-inverse,.badge-inverse{background-color:#333}.label-inverse[href],.badge-inverse[href]{background-color:#1a1a1a}.btn
 .label,.btn .badge{position:relative;top:-1px}.btn-mini .label,.btn-mini .badge{top:0} -webkit-keyframes 
progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}} -moz-keyframes 
progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}} -ms-keyframes 
progress-bar-stripes{from{background-position:40px 0}to{background-position:0 0}} -o-keyframes 
progress-bar-stripes{from{b
 ackground-position:0 0}to{background-position:40px 0}} keyframes 
progress-bar-stripes{from{background-position:40px 0}to{background-position:0 
0}}.progress{height:20px;margin-bottom:20px;overflow:hidden;background-color:#f7f7f7;background-image:-moz-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#f5f5f5),to(#f9f9f9));background-image:-webkit-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:-o-linear-gradient(top,#f5f5f5,#f9f9f9);background-image:linear-gradient(to
 
bottom,#f5f5f5,#f9f9f9);background-repeat:repeat-x;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fff5f5f5',endColorstr='#fff9f9f9',GradientType=0);-webkit-box-shadow:inset
 0 1px 2px rgba(0,0,0,0.1);-moz-box-shadow:inset 0 1px 2px rgba(0,0,0,0.1);box-shadow:inset 0 1px 2px 
rgba(0,0,0,0.1)}.progress .bar{float:left;width:0;height:100%;font-size:12px;color:#fff;text-align:center;te
 xt-shadow:0 -1px 0 
rgba(0,0,0,0.25);background-color:#0e90d2;background-image:-moz-linear-gradient(top,#149bdf,#0480be);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#149bdf),to(#0480be));background-image:-webkit-linear-gradient(top,#149bdf,#0480be);background-image:-o-linear-gradient(top,#149bdf,#0480be);background-image:linear-gradient(to
 
bottom,#149bdf,#0480be);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff149bdf',endColorstr='#ff0480be',GradientType=0);-webkit-box-shadow:inset
 0 -1px 0 rgba(0,0,0,0.15);-moz-box-shadow:inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 0 -1px 0 
rgba(0,0,0,0.15);-webkit-box-sizing:border-box;-moz-box-sizing:border-box;box-sizing:border-box;-webkit-transition:width
 .6s ease;-moz-transition:width .6s ease;-o-transition:width .6s ease;transition:width .6s ease}.progress 
.bar+.bar{-webkit-box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 0 
rgba(0,0,0,0.15);-moz-box-shadow:inset 1px
  0 0 rgba(0,0,0,0.15),inset 0 -1px 0 rgba(0,0,0,0.15);box-shadow:inset 1px 0 0 rgba(0,0,0,0.15),inset 0 -1px 
0 rgba(0,0,0,0.15)}.progress-striped .bar{background-color:#149bdf;background-image:-webkit-gradient(linear,0 
100%,100% 
0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15)
 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transp
 arent 75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);-webkit-background-size:40px 40px;-moz-background-size:40px 40px;-o-background-size:40px 
40px;background-size:40px 40px}.progress.active .bar{-webkit-animation:progress-bar-stripes 2s linear 
infinite;-moz-animation:progress-bar-stripes 2s linear infinite;-ms-animation:progress-bar-stripes 2s linear 
infinite;-o-animation:progress-bar-stripes 2s linear infinite;animation:progress-bar-stripes 2s linear 
infinite}.progress-danger .bar,.progress 
.bar-danger{background-color:#dd514c;background-image:-moz-linear-gradient(top,#ee5f5b,#c43c35);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#ee5f5b),to(#c43c35));background-image:-webkit-linear-gradient(top,#ee5f5b,#c43c35);background-image:-o-linear-gradient(top,#ee5f5b,#c43c35);background-image:linear-gradient(to
 bottom,#ee5
 
f5b,#c43c35);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ffee5f5b',endColorstr='#ffc43c35',GradientType=0)}.progress-danger.progress-striped
 .bar,.progress-striped .bar-danger{background-color:#ee5f5b;background-image:-webkit-gradient(linear,0 
100%,100% 
0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15)
 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 25%,tr
 ansparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent)}.progress-success .bar,.progress 
.bar-success{background-color:#5eb95e;background-image:-moz-linear-gradient(top,#62c462,#57a957);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#62c462),to(#57a957));background-image:-webkit-linear-gradient(top,#62c462,#57a957);background-image:-o-linear-gradient(top,#62c462,#57a957);background-image:linear-gradient(to
 
bottom,#62c462,#57a957);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff62c462',endColorstr='#ff57a957',GradientType=0)}.progress-success.progress-striped
 .bar,.progress-striped .bar-success{background-color:#62c462;background-image:-webkit-gradient(linear,0 
100%,100% 0,color-stop(0.25,rgba(255,255,
 
255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15)
 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent)}.progress-info .bar,.progress .bar-info{background-color
 
:#4bb1cf;background-image:-moz-linear-gradient(top,#5bc0de,#339bb9);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#5bc0de),to(#339bb9));background-image:-webkit-linear-gradient(top,#5bc0de,#339bb9);background-image:-o-linear-gradient(top,#5bc0de,#339bb9);background-image:linear-gradient(to
 
bottom,#5bc0de,#339bb9);background-repeat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#ff5bc0de',endColorstr='#ff339bb9',GradientType=0)}.progress-info.progress-striped
 .bar,.progress-striped .bar-info{background-color:#5bc0de;background-image:-webkit-gradient(linear,0 
100%,100% 
0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15)
 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.1
 5) 75%,transparent 75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 
25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent)}.progress-warning .bar,.progress 
.bar-warning{background-color:#faa732;background-image:-moz-linear-gradient(top,#fbb450,#f89406);background-image:-webkit-gradient(linear,0
 0,0 
100%,from(#fbb450),to(#f89406));background-image:-webkit-linear-gradient(top,#fbb450,#f89406);background-image:-o-linear-gradient(top,#fbb450,#f89406);background-image:linear-gradient(to
 bottom,#fbb450,#f89406);background-rep
 
eat:repeat-x;filter:progid:DXImageTransform.Microsoft.gradient(startColorstr='#fffbb450',endColorstr='#fff89406',GradientType=0)}.progress-warning.progress-striped
 .bar,.progress-striped .bar-warning{background-color:#fbb450;background-image:-webkit-gradient(linear,0 
100%,100% 
0,color-stop(0.25,rgba(255,255,255,0.15)),color-stop(0.25,transparent),color-stop(0.5,transparent),color-stop(0.5,rgba(255,255,255,0.15)),color-stop(0.75,rgba(255,255,255,0.15)),color-stop(0.75,transparent),to(transparent));background-image:-webkit-linear-gradient(45deg,rgba(255,255,255,0.15)
 25%,transparent 25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:-moz-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:-o-linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,25
 5,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent);background-image:linear-gradient(45deg,rgba(255,255,255,0.15) 25%,transparent 
25%,transparent 50%,rgba(255,255,255,0.15) 50%,rgba(255,255,255,0.15) 75%,transparent 
75%,transparent)}.accordion{margin-bottom:20px}.accordion-group{margin-bottom:2px;border:1px solid 
#e5e5e5;-webkit-border-radius:4px;-moz-border-radius:4px;border-radius:4px}.accordion-heading{border-bottom:0}.accordion-heading
 .accordion-toggle{display:block;padding:8px 
15px}.accordion-toggle{cursor:pointer}.accordion-inner{padding:9px 15px;border-top:1px solid 
#e5e5e5}.carousel{position:relative;margin-bottom:20px;line-height:1}.carousel-inner{position:relative;width:100%;overflow:hidden}.carousel-inner>.item{position:relative;display:none;-webkit-transition:.6s
 ease-in-out left;-moz-transition:.6s ease-in-out left;-o-transition:.6s ease-in-out left;transition:.6s 
ease-in-out left}.carousel-inner>.item>img,.carousel-inner>.item>a>img{display
 
:block;line-height:1}.carousel-inner>.active,.carousel-inner>.next,.carousel-inner>.prev{display:block}.carousel-inner>.active{left:0}.carousel-inner>.next,.carousel-inner>.prev{position:absolute;top:0;width:100%}.carousel-inner>.next{left:100%}.carousel-inner>.prev{left:-100%}.carousel-inner>.next.left,.carousel-inner>.prev.right{left:0}.carousel-inner>.active.left{left:-100%}.carousel-inner>.active.right{left:100%}.carousel-control{position:absolute;top:40%;left:15px;width:40px;height:40px;margin-top:-20px;font-size:60px;font-weight:100;line-height:30px;color:#fff;text-align:center;background:#222;border:3px
 solid 
#fff;-webkit-border-radius:23px;-moz-border-radius:23px;border-radius:23px;opacity:.5;filter:alpha(opacity=50)}.carousel-control.right{right:15px;left:auto}.carousel-control:hover,.carousel-control:focus{color:#fff;text-decoration:none;opacity:.9;filter:alpha(opacity=90)}.carousel-indicators{position:absolute;top:15px;right:15px;z-index:5;margin:0;list-style:none
 }.carousel-indicators 
li{display:block;float:left;width:10px;height:10px;margin-left:5px;text-indent:-999px;background-color:#ccc;background-color:rgba(255,255,255,0.25);border-radius:5px}.carousel-indicators
 
.active{background-color:#fff}.carousel-caption{position:absolute;right:0;bottom:0;left:0;padding:15px;background:#333;background:rgba(0,0,0,0.75)}.carousel-caption
 h4,.carousel-caption p{line-height:20px;color:#fff}.carousel-caption h4{margin:0 0 5px}.carousel-caption 
p{margin-bottom:0}.hero-unit{padding:60px;margin-bottom:30px;font-size:18px;font-weight:200;line-height:30px;color:inherit;background-color:#eee;-webkit-border-radius:6px;-moz-border-radius:6px;border-radius:6px}.hero-unit
 h1{margin-bottom:0;font-size:60px;line-height:1;letter-spacing:-1px;color:inherit}.hero-unit 
li{line-height:30px}.pull-right{float:right}.pull-left{float:left}.hide{display:none}.show{display:block}.invisible{visibility:hidden}.affix{position:fixed}
diff --git a/skins/easterngreen/css/fonts/Chunkfive-webfont.ttf 
b/skins/easterngreen/css/fonts/Chunkfive-webfont.ttf
new file mode 100644
index 0000000..0ecb26d
Binary files /dev/null and b/skins/easterngreen/css/fonts/Chunkfive-webfont.ttf differ
diff --git a/skins/easterngreen/css/gnome.css b/skins/easterngreen/css/gnome.css
new file mode 100644
index 0000000..e546a20
--- /dev/null
+++ b/skins/easterngreen/css/gnome.css
@@ -0,0 +1,49 @@
+
+/* Global Domain Bar */
+/* ========================================================================== */
+
+#global_domain_bar {
+    background: #fff;
+    height: 10px;
+}
+#global_domain_bar .maxwidth {
+    position: relative;
+}
+
+/* Tab */
+
+#global_domain_bar .tab {
+    background: #fff;
+    position: absolute;
+    right: 0;
+    float: right;
+    padding: 6px 8px;
+    font-size: 12px;
+    line-height: 16px;
+    -moz-border-radius: 5px;
+    -webkit-border-radius: 5px;
+    border-radius: 5px;
+    -moz-box-shadow: 0 4px 2px -2px #8fb3d9;
+    -webkit-box-shadow: 0 4px 2px -2px #8fb3d9;
+    box-shadow: 0 4px 2px -2px #8fb3d9;
+    white-space: nowrap;
+}
+#global_domain_bar .tab a.root {
+    color: #555753 !important;
+    font-weight: bold;
+    text-decoration: none;
+    background: #fff url(img/gnome-favicon.png) 0 0 no-repeat;
+    padding-left: 18px;
+    border-right: 1px solid #ccc;
+    padding-right: 6px;
+    margin-right: 3px;
+}
+#global_domain_bar .tab a.root:last-child {
+    border-right: 0;
+    padding-right: 0;
+    margin-right: 0;
+}
+#global_domain_bar .tab a.root:hover {
+    text-decoration: underline;
+}
+
diff --git a/skins/easterngreen/css/img/footer-balloons.png b/skins/easterngreen/css/img/footer-balloons.png
new file mode 100644
index 0000000..8245ccf
Binary files /dev/null and b/skins/easterngreen/css/img/footer-balloons.png differ
diff --git a/skins/easterngreen/css/img/footer-grass.png b/skins/easterngreen/css/img/footer-grass.png
new file mode 100644
index 0000000..ded0bd9
Binary files /dev/null and b/skins/easterngreen/css/img/footer-grass.png differ
diff --git a/skins/easterngreen/css/img/girl.png b/skins/easterngreen/css/img/girl.png
new file mode 100644
index 0000000..6e51726
Binary files /dev/null and b/skins/easterngreen/css/img/girl.png differ
diff --git a/skins/easterngreen/css/img/gnome-favicon.png b/skins/easterngreen/css/img/gnome-favicon.png
new file mode 100644
index 0000000..5d5e45f
Binary files /dev/null and b/skins/easterngreen/css/img/gnome-favicon.png differ
diff --git a/skins/easterngreen/css/img/opw-favicon.png b/skins/easterngreen/css/img/opw-favicon.png
new file mode 100644
index 0000000..e195fda
Binary files /dev/null and b/skins/easterngreen/css/img/opw-favicon.png differ
diff --git a/skins/easterngreen/css/img/opw-logo.png b/skins/easterngreen/css/img/opw-logo.png
new file mode 100644
index 0000000..01e39de
Binary files /dev/null and b/skins/easterngreen/css/img/opw-logo.png differ
diff --git a/skins/easterngreen/css/img/sponsor-bloomberg.png 
b/skins/easterngreen/css/img/sponsor-bloomberg.png
new file mode 100644
index 0000000..2bfb3d7
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-bloomberg.png differ
diff --git a/skins/easterngreen/css/img/sponsor-cloudera-includer.png 
b/skins/easterngreen/css/img/sponsor-cloudera-includer.png
new file mode 100644
index 0000000..7086f58
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-cloudera-includer.png differ
diff --git a/skins/easterngreen/css/img/sponsor-codethink-includer.png 
b/skins/easterngreen/css/img/sponsor-codethink-includer.png
new file mode 100644
index 0000000..31abb8b
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-codethink-includer.png differ
diff --git a/skins/easterngreen/css/img/sponsor-debian-includer.png 
b/skins/easterngreen/css/img/sponsor-debian-includer.png
new file mode 100644
index 0000000..103638e
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-debian-includer.png differ
diff --git a/skins/easterngreen/css/img/sponsor-eff.png b/skins/easterngreen/css/img/sponsor-eff.png
new file mode 100644
index 0000000..a349c73
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-eff.png differ
diff --git a/skins/easterngreen/css/img/sponsor-fsf.png b/skins/easterngreen/css/img/sponsor-fsf.png
new file mode 100644
index 0000000..1adb81e
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-fsf.png differ
diff --git a/skins/easterngreen/css/img/sponsor-gnome.png b/skins/easterngreen/css/img/sponsor-gnome.png
new file mode 100644
index 0000000..bc05ad2
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-gnome.png differ
diff --git a/skins/easterngreen/css/img/sponsor-google-promoter.png 
b/skins/easterngreen/css/img/sponsor-google-promoter.png
new file mode 100644
index 0000000..cccd2c1
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-google-promoter.png differ
diff --git a/skins/easterngreen/css/img/sponsor-google.png b/skins/easterngreen/css/img/sponsor-google.png
new file mode 100644
index 0000000..472258e
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-google.png differ
diff --git a/skins/easterngreen/css/img/sponsor-hp-promoter.png 
b/skins/easterngreen/css/img/sponsor-hp-promoter.png
new file mode 100644
index 0000000..514c614
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-hp-promoter.png differ
diff --git a/skins/easterngreen/css/img/sponsor-intel.png b/skins/easterngreen/css/img/sponsor-intel.png
new file mode 100644
index 0000000..92326c8
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-intel.png differ
diff --git a/skins/easterngreen/css/img/sponsor-joomla.png b/skins/easterngreen/css/img/sponsor-joomla.png
new file mode 100644
index 0000000..3844446
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-joomla.png differ
diff --git a/skins/easterngreen/css/img/sponsor-kdab.png b/skins/easterngreen/css/img/sponsor-kdab.png
new file mode 100644
index 0000000..02c5040
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-kdab.png differ
diff --git a/skins/easterngreen/css/img/sponsor-linaro-includer.png 
b/skins/easterngreen/css/img/sponsor-linaro-includer.png
new file mode 100644
index 0000000..d789f00
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-linaro-includer.png differ
diff --git a/skins/easterngreen/css/img/sponsor-linuxfoundation.png 
b/skins/easterngreen/css/img/sponsor-linuxfoundation.png
new file mode 100644
index 0000000..84e00b8
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-linuxfoundation.png differ
diff --git a/skins/easterngreen/css/img/sponsor-mediagoblin.png 
b/skins/easterngreen/css/img/sponsor-mediagoblin.png
new file mode 100644
index 0000000..c8dcab6
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-mediagoblin.png differ
diff --git a/skins/easterngreen/css/img/sponsor-mozilla.png b/skins/easterngreen/css/img/sponsor-mozilla.png
new file mode 100644
index 0000000..28520b7
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-mozilla.png differ
diff --git a/skins/easterngreen/css/img/sponsor-nescent.png b/skins/easterngreen/css/img/sponsor-nescent.png
new file mode 100644
index 0000000..847a568
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-nescent.png differ
diff --git a/skins/easterngreen/css/img/sponsor-openmrs.png b/skins/easterngreen/css/img/sponsor-openmrs.png
new file mode 100644
index 0000000..40842a9
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-openmrs.png differ
diff --git a/skins/easterngreen/css/img/sponsor-openstack.png 
b/skins/easterngreen/css/img/sponsor-openstack.png
new file mode 100644
index 0000000..07083b8
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-openstack.png differ
diff --git a/skins/easterngreen/css/img/sponsor-osrf-promoter.png 
b/skins/easterngreen/css/img/sponsor-osrf-promoter.png
new file mode 100644
index 0000000..d1effdc
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-osrf-promoter.png differ
diff --git a/skins/easterngreen/css/img/sponsor-oti.png b/skins/easterngreen/css/img/sponsor-oti.png
new file mode 100644
index 0000000..bcb61cf
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-oti.png differ
diff --git a/skins/easterngreen/css/img/sponsor-perl.png b/skins/easterngreen/css/img/sponsor-perl.png
new file mode 100644
index 0000000..9d959cf
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-perl.png differ
diff --git a/skins/easterngreen/css/img/sponsor-rackspace-includer.png 
b/skins/easterngreen/css/img/sponsor-rackspace-includer.png
new file mode 100644
index 0000000..749a685
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-rackspace-includer.png differ
diff --git a/skins/easterngreen/css/img/sponsor-redhat.png b/skins/easterngreen/css/img/sponsor-redhat.png
new file mode 100644
index 0000000..6031eab
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-redhat.png differ
diff --git a/skins/easterngreen/css/img/sponsor-ropesgray.png 
b/skins/easterngreen/css/img/sponsor-ropesgray.png
new file mode 100644
index 0000000..af07d6a
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-ropesgray.png differ
diff --git a/skins/easterngreen/css/img/sponsor-tor.png b/skins/easterngreen/css/img/sponsor-tor.png
new file mode 100644
index 0000000..73ceb83
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-tor.png differ
diff --git a/skins/easterngreen/css/img/sponsor-wikimedia-equalizer.png 
b/skins/easterngreen/css/img/sponsor-wikimedia-equalizer.png
new file mode 100644
index 0000000..39e1558
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-wikimedia-equalizer.png differ
diff --git a/skins/easterngreen/css/img/sponsor-wikimedia.png 
b/skins/easterngreen/css/img/sponsor-wikimedia.png
new file mode 100644
index 0000000..9bce43c
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-wikimedia.png differ
diff --git a/skins/easterngreen/css/img/sponsor-wordpress.png 
b/skins/easterngreen/css/img/sponsor-wordpress.png
new file mode 100644
index 0000000..20043b1
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-wordpress.png differ
diff --git a/skins/easterngreen/css/img/sponsor-yocto.png b/skins/easterngreen/css/img/sponsor-yocto.png
new file mode 100644
index 0000000..c0599fd
Binary files /dev/null and b/skins/easterngreen/css/img/sponsor-yocto.png differ
diff --git a/skins/easterngreen/css/main.css b/skins/easterngreen/css/main.css
new file mode 100644
index 0000000..06065d4
--- /dev/null
+++ b/skins/easterngreen/css/main.css
@@ -0,0 +1,341 @@
+ viewport {
+    width: device-width;
+}
+
+ -ms-viewport {
+    width: device-width;
+}
+
+/*--------------Body and structure---------------------*/
+
+ font-face {
+    font-family: 'ChunkFiveRegular';
+    src: url('fonts/Chunkfive-webfont.ttf') format('truetype');
+    font-weight: normal;
+    font-style: normal;
+}
+
+html, body {
+    font-family: 'Source Sans Pro', sans-serif;
+    font-size: 14px;
+    line-height: 1.5em;
+    color: #333;
+}
+
+p {
+    font-size: 16px;
+    padding: 5px 0;
+    text-align: justify;
+}
+
+strong {
+    font-weight: bold;
+}
+
+a {
+    outline: 0;
+}
+
+a, .logo:hover {
+    text-decoration: none;
+    color: #20b2aa;
+}
+
+.logo:hover {
+    color: white;
+}
+
+a:hover {
+    text-decoration: underline;
+    color: #20a2aa;
+    background-color: none;
+}
+
+h1 {
+    font-weight: normal;
+}
+
+h2 {
+    color: #20b2aa;
+    font-weight: bold;
+    font-size: 1.5em;
+    padding: 30px 0 10px 0;
+}
+
+h3 {
+    color: #222;
+    font-size: 1.2em;
+    font-weight: bold;
+    text-align: center;
+    padding-top: 20px;
+}
+
+/*--------------Sections----------------------*/
+
+.main {
+    margin: 0 auto;
+    display: block;
+}
+
+.section {
+    border-top: #babdb6 solid 4px;
+    margin-top: 20px;
+}
+
+.fixed-container {
+    width: 100%;
+    position: fixed;
+    right: 0px;
+}
+
+#home {
+    padding-top: 80px;
+}
+
+/*----------------Navigation------------------*/
+
+.nav-container {
+    background-color: #20b2aa;
+    width: 100%;
+}
+
+.nav {
+    margin: 0 auto;
+    padding: 30px 10px 10px 0px;
+    color: white;
+}
+
+.nav li {
+    display: inline-block;
+    padding: 0 15px;
+    line-height: 0px
+}
+
+.nav a {
+    color: white;
+}
+
+.navbar .container {
+    width: auto;
+    max-width: 960px;
+}
+
+.navbar .navbar-static-top,
+.navbar .navbar-inner,
+.navbar .container {
+    background-color: #20b2aa;
+    background-image: none;
+}
+
+.navbar .nav > li > a {
+    color: white;
+    text-shadow: 0 0 0;
+}
+
+.navbar .nav > li > a:hover {
+    text-decoration: underline;
+    color: white;
+    background-color: #20b2aa;
+}
+
+.navbar .btn-navbar {
+    color: #20b2aa;
+    background-color: white;
+    background-image: none;
+    border-color: white;
+    margin-top: 25px;
+}
+
+.navbar .btn-navbar .icon-bar {
+    background-color: #20b2aa;
+}
+.navbar .btn-navbar:hover, .navbar .btn-navbar:active, .navbar .btn-navbar.active, .navbar 
.btn-navbar.disabled, .navbar .btn-navbar[disabled] {
+    color: #20b2aa;
+    background-color: white;
+}
+
+.navbar .btn-navbar:hover .icon-bar, .navbar .btn-navbar:active .icon-bar, .navbar .btn-navbar.active 
.icon-bar, .navbar .btn-navbar.disabled .icon-bar, .navbar .btn-navbar[disabled]  .icon-bar {
+    background-color: #20b2aa;
+}
+
+.navbar .brand {
+    color: white;
+    padding-left: 0;
+    font-family: 'ChunkFiveRegular';
+    font-size: 1.5em;
+    text-shadow: 0 0 0;
+    display: inline-block;
+    padding: 30px 30px 20px 30px;
+}
+
+/*-----------------Links and images-----------------*/
+
+.learn-more {
+    float: right;
+    color: #20b2aa;
+    padding-top: 20px;
+}
+
+.link-wiki {
+    font-size: 14px;
+    padding-top: 10px;
+}
+
+.view-participants {
+    cursor: pointer;
+}
+
+.top-intro {
+    background: white url("img/girl.png") no-repeat bottom;
+    padding: 60px 0;
+    margin: 0;
+}
+
+.top-intro p {
+    font-size: 20px;
+    line-height: 1.5em;
+    margin: 0;
+}
+
+.intro-img {
+    float: right;
+}
+
+.organizations li {
+    list-style: none;
+}
+
+.org-name {
+    font-weight: bold;
+    padding-top: 10px;
+}
+
+#sponsors img {
+    padding-top: 30px;
+}
+
+/*-------------Footer-----------------------*/
+
+.footer {
+    padding: 30px 0px 0px 0px;
+    margin: 0 auto;
+}
+
+.footer ul{
+    margin: 0 auto;
+}
+
+.footer-links {
+    padding: 20px 10px 10px 20px;
+    color: #333;
+    max-width: 960px;
+}
+
+.footer-art {
+    background: url("img/footer-balloons.png") no-repeat bottom right;
+    height: 160px;
+}
+
+.footer-grass {
+    background: url("img/footer-grass.png");
+    height: 39px;
+}
+
+.footer-wrapper {
+    background-color: #d1d8cd;
+    min-height: 12em;
+}
+
+.cc-description {
+    font-size: 11px;
+}
+
+/*------------------Laptops&larger screens---------------------------*/
+
+ media (min-width: 979px) {
+    .footer-art {
+        background: url("img/footer-balloons.png") no-repeat bottom;
+    }
+}
+
+/*------------------Tablets--------------------------*/
+
+ media (max-width: 767px) {
+
+    .footer{
+        margin-left: -20px;
+        margin-right: -20px;
+    }
+
+    .nav {
+        padding: 20px 10px 10px 0px;
+    }
+
+    .nav-collapse .nav {
+        padding-bottom: 0;
+        margin-bottom: 0;
+        margin-top: -20px;
+    }
+
+    .nav li {
+        padding: 20px 10px;
+        display: block;
+        width: 100%;
+        border-top: 1px solid #fff;
+    }
+}
+
+/*-------------------small tablet---------------------------*/
+
+ media (min-width: 479px) and (max-width: 767px) {
+    .span6, .span4, .span9 {
+        width: 45%;
+        margin: 10px;
+        display: inline-block;
+    }
+}
+
+/*----------------SmartPhones----------------------*/
+
+/*------------Navigation-------------------*/
+
+ media (max-width: 479px) {
+
+    .navbar .brand {
+        padding: 20px;
+        width: 200px;
+    }
+
+    .navbar .btn-navbar {
+        margin-top: 25px;
+        margin-right: 10px;
+    }
+
+    .nav-collapse .nav {
+        padding-bottom: 0;
+        margin-bottom: 0;
+        margin-top: -20px;
+    }
+
+    .nav li {
+        padding: 20px 10px;
+        display: block;
+        width: 100%;
+        border-top: 1px solid #fff;
+    }
+
+    .span6, .span4, .span9 {
+        width: auto;
+        margin: 20px auto;
+        display: block;
+    }
+}
+
+/*----------------------Smallphones------------------------*/
+
+ media (max-width: 290px) {
+
+    #home {
+        padding-top: 140px;
+    }
+}
diff --git a/skins/easterngreen/css/reset.css b/skins/easterngreen/css/reset.css
new file mode 100644
index 0000000..e29c0f5
--- /dev/null
+++ b/skins/easterngreen/css/reset.css
@@ -0,0 +1,48 @@
+/* http://meyerweb.com/eric/tools/css/reset/ 
+   v2.0 | 20110126
+   License: none (public domain)
+*/
+
+html, body, div, span, applet, object, iframe,
+h1, h2, h3, h4, h5, h6, p, blockquote, pre,
+a, abbr, acronym, address, big, cite, code,
+del, dfn, em, img, ins, kbd, q, s, samp,
+small, strike, strong, sub, sup, tt, var,
+b, u, i, center,
+dl, dt, dd, ol, ul, li,
+fieldset, form, label, legend,
+table, caption, tbody, tfoot, thead, tr, th, td,
+article, aside, canvas, details, embed, 
+figure, figcaption, footer, header, hgroup, 
+menu, nav, output, ruby, section, summary,
+time, mark, audio, video {
+       margin: 0;
+       padding: 0;
+       border: 0;
+       font-size: 100%;
+       font: inherit;
+       vertical-align: baseline;
+}
+/* HTML5 display-role reset for older browsers */
+article, aside, details, figcaption, figure, 
+footer, header, hgroup, menu, nav, section {
+       display: block;
+}
+body {
+       line-height: 1;
+}
+ol, ul {
+       list-style: none;
+}
+blockquote, q {
+       quotes: none;
+}
+blockquote:before, blockquote:after,
+q:before, q:after {
+       content: '';
+       content: none;
+}
+table {
+       border-collapse: collapse;
+       border-spacing: 0;
+}
diff --git a/skins/easterngreen/html/index.html b/skins/easterngreen/html/index.html
new file mode 100644
index 0000000..fa6586a
--- /dev/null
+++ b/skins/easterngreen/html/index.html
@@ -0,0 +1,256 @@
+<!DOCTYPE html>
+<html>
+<head>
+    <meta charset="utf-8">
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+    <title>Outreach Program For Women - Free and Open Source Software internships for women</title>
+    <link rel="stylesheet" href="css/reset.css">
+    <link rel="stylesheet" href="css/bootstrap.min.css">
+    <link rel="stylesheet" href="css/main.css">
+    <script src="http://code.jquery.com/jquery-1.10.1.min.js";></script>
+    <script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js";></script>
+
+</head>
+
+<body>
+    <div class="fixed-container">
+        <div class="navbar nav-container">
+            <div class="container">
+                <button type="button" class="btn btn-navbar collapsed" data-toggle="collapse" 
data-target=".nav-collapse" >
+                    <span class="icon-bar"></span>
+                    <span class="icon-bar"></span>
+                    <span class="icon-bar"></span></button>
+                    <a class="brand scroll-logo" href="#home">Outreach Program for Women</a>
+                    <div class="nav-collapse collapse" style="height: 0px;">
+                      <ul class="nav">
+                        <li><a href="#apply" class="scroll">Apply</a></li>
+                        <li><a href="#participants" class="scroll">Participants</a></li>
+                        <li><a href="#sponsors" class="scroll">Sponsors</a></li>
+                        <li><a href="#partners" class="scroll">Partners</a></li>
+                        <li><a href="#about" class="scroll">About</a></li>
+                    </ul>
+                </div>
+            </div>
+
+        </div>
+    </div>
+    <div class="container" id="home">
+        <div class="span24 top-intro">
+            <div class="span13">
+                <p>The Outreach Program for Women (OPW) helps women get involved in free  and open source 
software. We provide a supportive community for  beginning to contribute any time throughout the year and 
offer focused internship opportunities twice a year with a number of free software organizations.</p>
+            </div>
+            <div class="clearfix"></div>
+        </div>
+
+        <div class="clearfix"></div>
+
+        <div class="span24" id="apply">
+            <h2>Apply</h2>
+            <p>Applications are now accepted for the new round of the Outreach Program for Women 
internships. The application deadline is November 11, 2013 and the internship dates are December 10, 2013 to 
March 10, 2014. Students from the Southern Hemisphere, who will have a summer school break during this time, 
as well as non-students from around the world are encouraged to apply. Coding, design, documentation and 
other projects are available. The applicants are asked to collaborate with mentors from the <a 
href="https://wiki.gnome.org/OutreachProgramForWomen/2013/DecemberMarch/#Participating_Organizations";>participating
 organizations</a> to make a contribution relevant to the project they are applying for during the 
application process. The accepted participants will work remotely, while being guided by their mentor, and 
receive $5,000 stipend.
+
+                <a href="https://wiki.gnome.org/OutreachProgramForWomen"; class="learn-more link-wiki">Learn 
how to get started and apply!</a>
+        </div>
+
+        <div class="span24 section" id="participants">
+            <h2>Recent Participants</h2>
+
+            <p>Congratulations to the <strong>37 participants</strong> who participated in the June - 
September 2013 round of the Outreach Program for Women!</p>
+
+            <p>Women who are students applying to work on coding projects were encouraged to apply for 
Google Summer of Code as well. The administrators of both programs then coordinated to accept the top 
applicants for one of the programs. Congratulations to the <strong>12 applicants</strong> who applied for 
both the Outreach Program for Women and Google Summer of Code, and were accepted for Google Summer of 
Code!</p>
+
+            <a class="learn-more view-participants">Find out who participated in this round!</a>
+            <div class="clearfix"></div>
+
+            <div class="participants-list">
+                <div class="span6 organizations">
+                    <div class="org-name">Electronic Frontier Foundation</div>
+                    <li><a href="https://zyan.scripts.mit.edu/blog/";>Yan Zhu</a></li>
+
+                    <div class="org-name">GNOME</div>
+                    <li><a href="http://saumyazero.wordpress.com/";>Saumya Dwivedi</a></li>
+                    <li><a href="http://saumyapathak.wordpress.com/";>Saumya Pathak</a></li>
+                    <li><a href="http://shivanipoddar.wordpress.com/";>Shivani Poddar</a></li>
+                    <li><a href="https://gardengnoming.wordpress.com/";>Aruna Sankaranarayanan</a></li>
+                    <li><a href="https://dispatchesfromopw.wordpress.com/";>Pooja Saxena</a></li>
+                    <li><a href="https://wenfoss.wordpress.com/";>Melissa Wen</a></li>
+                    <li><a href="http://tffnyy.wordpress.com/";>Tiffany Yau</a></li>
+                    <li><a href="http://thismagpie.blogspot.com/";>Magdalen Berns</a></li>
+                    <li><a href="http://garimajoshi.blogspot.in/";>Garima Joshi</a></li>
+
+                    <div class="org-name">Linux Kernel</div>
+                    <li><a href="http://tulinizer.blogspot.com/";>Tülin İzer</a></li>
+                    <li><a href="http://agile-tundra-1358.herokuapp.com/?page_id=85";>Lidza Louina</a></li>
+                    <li><a href="http://lisatn.blogspot.com/";>Lisa T. Nguyen</a></li>
+                    <li><a href="http://hemaprathaban.blogspot.in/";>Hema Prathaban</a></li>
+                    <li><a href="https://burzalodowa.wordpress.com/";>Xenia Ragiadakou</a></li>
+                    <li><a href="http://hellokernel.blogspot.com/";>Elena Ufimtseva</a></li>
+                    <li><a href="http://lauravasilescu.ro/blog/";>Laura Vasilescu</a></li>
+
+                    <div class="org-name">KDE</div>
+                    <li><a href="https://imeimim.wordpress.com/";>Maria Far Ribes</a></li>
+                    <li><a href="https://konkiewiczm.wordpress.com/";>Magdalena Konkiewicz</a></li>
+                    <li><a href="https://kritawebshop.wordpress.com/";>Chinkal Nagpal</a></li>
+                    <li><a href="https://oinig.wordpress.com/";>Oindrila Gupta</a></li>
+                    <li><a href="http://heenamahour.blogspot.in/";>Heena Mahour</a></li>
+                </div>
+
+                <div class="span6 offset3 organizations">
+                    <div class="org-name">Joomla</div>
+                    <li><a href="http://touchedbyoutreach.blogspot.com/";>Hasini Abeywickrama</a></li>
+
+                    <div class="org-name">MediaGoblin</div>
+                    <li><a href="http://nattilypf.dreamwidth.org/";>Natalie Foust-Pilcher</a></li>
+                    <li><a href="http://blog.lotusecho.net/";>Emily O'Leary</a></li>
+                    <li><a href="http://theperplexingpariah.co.uk/";>Jessica Tallon</a></li>
+                    <li>Aditi Mittal</li>
+
+                    <div class="org-name">Mozilla</div>
+                    <li><a href="http://tecendobits.cc/blog/";>Gabriela Salvador Thumé</a></li>
+                    <li><a href="http://www.tizianasellitto.it/blog/";>Tiziana Sellitto</a></li>
+
+                    <div class="org-name">NESCent</div>
+                    <li><a href="https://summerofphylet.wordpress.com/";>Chanda Phelan</a></li>
+
+                    <div class="org-name">Open Technology Institute</div>
+                    <li><a href="http://www.meganbui.net/blog/";>Megan Bui</a></li>
+                    <li><a href="http://hasnaas.blogspot.com/";>Hasna Sabah</a></li>
+                    <li><a href="http://www.worddelights.com/blog";>Shailja Thakur</a></li>
+
+                    <div class="org-name">OpenMRS</div>
+                    <li><a href="https://parisejenn.wordpress.com/";>Jennifer Parise</a></li>
+                    <li><a href="https://evoegesopw.wordpress.com/";>Elyse Voegeli</a></li>
+
+                    <div class="org-name">OpenStack</div>
+                    <li><a href="http://terriyu.info/blog/";>Terri Yu</a></li>
+
+                    <div class="org-name">Perl</div>
+                    <li><a href="http://upasana.me/";>Upasana Shukla</a></li>
+                </div>
+
+                <div class="span6 offset2 omega organizations">
+                    <div class="org-name">Twisted</div>
+                    <li><a href="http://staceysern.github.io/";>Stacey Sern</a></li>
+
+                    <div class="org-name">Wikimedia</div>
+                    <li><a href="http://bleededge.blogspot.se/";>Rachel Thomas</a></li>
+                    <li>Himeshi De Silva</li>
+                    <li><a href="http://aartindi.blogspot.se/";>Aarti Dwivedi</a></li>
+                    <li><a href="http://richajain-annotator.blogspot.com/";>Richa Jain</a></li>
+                    <li>Liangent</li>
+                    <li><a href="moriel.smarterthanthat.com">Moriel Schottlender</a></li>
+                    <li><a href="http://www.mollywhite.net/blog/";>Molly White</a></li>
+                    <li><a href="http://jiabaowu.blogspot.com.au/";>Jiabao Wu</a></li>
+
+                    <div class="org-name">WordPress</div>
+                    <li><a href="http://make.wordpress.org/support/author/siobhyb/";>Siobhan Bamber</a></li>
+                    <li><a href="http://make.wordpress.org/core/author/codebykat/";>Kat Hagan</a></li>
+
+                    <div class="org-name">Yocto Project</div>
+                    <li><a href="http://mulhern-at-yocto.dreamwidth.org/";>Anne Mulhern</a></li>
+                </div>
+
+                <div class="clearfix"></div>
+
+                <a class="learn-more" 
href="https://wiki.gnome.org/OutreachProgramForWomen#Previous_Participants";>Find out more about previous 
participants!</a>
+
+                <div class="clearfix"></div>
+            </div>
+        </div>
+
+        <div class="span24 section" id="sponsors">
+            <h2>Recent Sponsors</h2>
+
+            <p>The Outreach Program for Women is organized by the GNOME Foundation. The internships in the 
recent round were generously sponsored by the following organizations and companies:</p>
+
+            <h3>Equalizers</h3>
+
+            <a href="http://www.bloomberg.com/company/";><img alt="Bloomberg" 
src="css/img/sponsor-bloomberg.png" class="span6 offset4"></a>
+            <a href="https://www.google.com/";><img alt="Google" src="css/img/sponsor-google.png" 
class="span6 offset4"></a>
+
+            <div class="clearfix"></div>
+
+            <h3>Promoters</h3>
+
+            <a href="http://www.intel.com";><img alt="Intel" src="css/img/sponsor-intel.png" class="span6 
offset1"></a>
+            <a href="http://www.linuxfoundation.org/";><img alt="The Linux Foundation" 
src="css/img/sponsor-linuxfoundation.png" class="span6 offset2"></a>
+            <a href="https://www.mozilla.org";><img alt="Mozilla" src="css/img/sponsor-mozilla.png" 
class="span6 offset2"></a>
+
+            <a href="http://oti.newamerica.net/";><img alt="Open Technology Institute" 
src="css/img/sponsor-oti.png" class="span6 offset2"></a>
+
+            <div class="clearfix"></div>
+
+            <h3>Includers</h3>
+
+            <a href="https://www.torproject.org/";><img alt="Tor" src="css/img/sponsor-tor.png" 
class="span4"></a>
+            <a href="https://fsf.org/";><img alt="Free Software Foundation" src="css/img/sponsor-fsf.png" 
class="span4 offset2"></a>
+            <a href="https://www.gnome.org";><img alt="GNOME Foundation" src="css/img/sponsor-gnome.png" 
class="span4 offset3"></a>
+            <a href="http://www.joomla.org/";><img alt="Joomla" src="css/img/sponsor-joomla.png" class="span4 
offset2"></a>
+            <div class="clearfix"></div>
+            <a href="http://www.kdab.com/";><img alt="KDAB" src="css/img/sponsor-kdab.png" class="span4"></a>
+            <a href="http://mediagoblin.org/";><img alt="MediaGoblin" src="css/img/sponsor-mediagoblin.png" 
class="span4 offset2"></a>
+            <a href="http://openmrs.org/";><img alt="OpenMRS" src="css/img/sponsor-openmrs.png" class="span4 
offset3"></a>
+            <a href="http://www.openstack.org/";><img alt="OpenStack Foundation" 
src="css/img/sponsor-openstack.png" class="span4 offset2"></a>
+            <div class="clearfix"></div>
+            <a href="http://www.nescent.org/";><img alt="NESCent" src="css/img/sponsor-nescent.png" 
class="span4"></a>
+            <a href="http://www.perlfoundation.org/";><img alt="Perl Foundation" 
src="css/img/sponsor-perl.png" class="span4 offset2"></a>
+            <a href="https://www.redhat.com/";><img alt="Red Hat" src="css/img/sponsor-redhat.png" 
class="span4 offset3"></a>
+            <a href="https://wikimediafoundation.org/wiki/Home";><img alt="Wikimedia Foundation" 
src="css/img/sponsor-wikimedia.png" class="span4 offset2"></a>
+            <div class="clearfix"></div>
+            <a href="http://wordpress.org/";><img alt="WordPress" src="css/img/sponsor-wordpress.png" 
class="span4 offset6"></a>
+            <a href="https://www.yoctoproject.org/";><img alt="Yocto Project" src="css/img/sponsor-yocto.png" 
class="span4 offset3"></a>
+
+            <div class="clearfix"></div>
+            <a class="learn-more" 
href="https://wiki.gnome.org/OutreachProgramForWomen#For_Organizations_and_Companies";>Become a sponsor!</a>
+
+            <div class="clearfix"></div>
+
+        </div>
+
+        <div class="span24 section" id="partners">
+            <h2>Partners</h2>
+            <p class="span16"><strong>Red Hat</strong> supports the Outreach Program for Women by 
contributing its employee time towards the organization of the program.</p>
+            <a href="https://www.redhat.com/";><img alt="Red Hat" src="css/img/sponsor-redhat.png" 
class="span4 offset3"></a>
+
+            <div class="clearfix"></div>
+
+            <p class="span16"><strong>Ropes & Gray</strong> helps the Outreach Program for Women by kindly 
providing pro bono legal assistance for the program.</p>
+            <a href="http://www.ropesgray.com";><img alt="Ropes & Gray" src="css/img/sponsor-ropesgray.png" 
class="span4 offset3"></a>
+
+            <div class="clearfix"></div>
+
+        </div>
+
+
+
+        <div class="span24 section" id="about">
+            <h2>About</h2>
+            <p>The Outreach Program for Women (OPW)  was inspired by Google's Summer of Code  and by how few 
women applied for it. The GNOME Foundation first started the OPW with one round in 2006, and then resumed the 
effort in 2010 with rounds organized twice a year. In the May-August 2012 round, the Software Freedom 
Conservancy joined the OPW with one internship with the Twisted project. In the January-April 2013 round, 
many other free and open source organizations joined the program.</p>
+
+            <p>This program is a welcoming link that connects <strong>talented and passionate women</strong> 
with people working  in free and open source software and guides them through their first contribution. 
Through OPW, women learn how exciting and  valuable work on software freedom can be, while helping us to 
build a more inclusive community. </p>
+
+            <p>Follow <a href="http://www.twitter.com/fossopw";>@fossopw</a> on Twitter to get the latest 
news.</p>
+            </div>
+        </div>
+
+        <div class="clearfix"></div>
+
+    </div>
+
+    <div class="footer">
+        <div class="footer-art"></div>
+        <div class="footer-grass"></div>
+        <div class="footer-wrapper">
+            <ul class="footer-links">
+                <li>Hosted by <a href="https://www.redhat.com";>Red Hat</a></li>
+                <li>Copyright © 2005‒2013 <a href="https://www.gnome.org";>The GNOME Project</a></li>
+                <li class="cc-description">Free to share and remix: <a 
href="http://creativecommons.org/licenses/by/3.0/";>Creative Commons CC-BY</a>, except for the individual 
organization logos, who are property of their respective owners.</li>
+            </ul>
+        </div>
+    </div>
+    <link href='http://fonts.googleapis.com/css?family=Source+Sans+Pro:400,700' rel='stylesheet' 
type='text/css'>
+    <script src="http://code.jquery.com/jquery-1.10.1.min.js";></script>
+    <script src="http://code.jquery.com/jquery-migrate-1.2.1.min.js";></script>
+    <script src="js/bootstrap.min.js"></script>
+    <script src="js/main.js"></script>
+</body>
+</html>
diff --git a/skins/easterngreen/html/tpl_approve_mentors.html 
b/skins/easterngreen/html/tpl_approve_mentors.html
new file mode 100644
index 0000000..108614d
--- /dev/null
+++ b/skins/easterngreen/html/tpl_approve_mentors.html
@@ -0,0 +1,24 @@
+<h1>{{approve_mentors}}</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-info [[notice_visibility]]">
+    {{no_pending_mentors}}
+</div>
+
+<div class="[[list_visibility]]">
+    <table class="table table-striped">
+        <thead>
+            <tr>
+                <th>
+                    {{mentor_name}}
+                </th>
+                
+                <th style="width:200px;"></th>
+            </tr>
+        </thead>
+
+        <tbody>
+            [[mentors_list]]
+        </tbody>
+    </table>
+</div>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_approve_mentors_item.html 
b/skins/easterngreen/html/tpl_approve_mentors_item.html
new file mode 100644
index 0000000..575b7d1
--- /dev/null
+++ b/skins/easterngreen/html/tpl_approve_mentors_item.html
@@ -0,0 +1,15 @@
+<tr>
+    <td>
+        [[mentor_name]]
+    </td>
+
+    <td class="align-right">
+        <a href="[[approve_url]]" title="{{approve}}">
+            <i class="icon-ok"></i>
+        </a>
+        &nbsp;
+        <a href="[[reject_url]]" title="{{reject}}">
+            <i class="icon-remove"></i>
+        </a>
+    </td>
+</tr>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_confirm_box.html b/skins/easterngreen/html/tpl_confirm_box.html
new file mode 100644
index 0000000..268adf9
--- /dev/null
+++ b/skins/easterngreen/html/tpl_confirm_box.html
@@ -0,0 +1,9 @@
+<div class="alert alert-info">
+    <h1>[[message_title]]</h1>
+    <p>[[message_body]]</p>
+
+    <hr />
+
+    <button name="yes" class="btn btn-primary">{{yes}}</button>
+    <a href="[[cancel_url]]" class="btn">{{no}}</a>
+</div>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_edit_templates.html b/skins/easterngreen/html/tpl_edit_templates.html
new file mode 100644
index 0000000..c2ac1fb
--- /dev/null
+++ b/skins/easterngreen/html/tpl_edit_templates.html
@@ -0,0 +1,82 @@
+<h1>{{edit_templates}}</h1>
+<hr class="hr-head" />
+
+<div class="well oneline-form tpl-form">
+    <div class="control-group">
+        <label class="control-label">
+            {{select_tpl}}
+        </label>
+
+        <div class="controls">
+            <select name="tpl_name">
+                [[tpl_names]]
+            </select>
+        </div>
+    </div>
+
+    <div class="control-group">
+        <label class="control-label">
+            {{language}}
+        </label>
+
+        <div class="controls">
+            <select name="tpl_lang">
+                [[tpl_langs]]
+            </select>
+        </div>
+    </div>
+
+    <div class="form-actions">
+        <button type="submit" name="tpl_load" class="btn">
+            {{load_tpl}}
+        </button>
+    </div>
+</div>
+
+<div class="alert alert-info [[notice_visibility]]">
+    {{no_tpl_loaded}}
+</div>
+
+<div class="tpl-editor [[editor_visibility]]">
+    <div class="well tpl-placeholders">
+        <h4>{{placeholders}}</h4>
+
+        <dl class="dl-horizontal">
+            <dt>&#91;&#91;recepient&#93;&#93;</dt>
+            <dd>{{recepient}}</dd>
+
+            <dt>&#91;&#91;program_name&#93;&#93;</dt>
+            <dd>{{program_name}}</dd>
+
+            <dt>&#91;&#91;project_name&#93;&#93;</dt>
+            <dd>{{project_name}}</dd>
+
+            <dt>&#91;&#91;project_url&#93;&#93;</dt>
+            <dd>{{project_url}}</dd>
+
+            <dt>&#91;&#91;student_name&#93;&#93;</dt>
+            <dd>{{student_fname}}</dd>
+
+            <dt>&#91;&#91;mentor_name&#93;&#93;</dt>
+            <dd>{{mentor_fname}}</dd>
+        </dl>
+    </div>
+
+    <div class="alert alert-success [[success_visibility]]">
+        <a class="close" data-dismiss="alert">×</a>
+        {{tpl_saved}}
+    </div>
+
+    <div class="alert alert-error [[error_visibility]]">
+        <a class="close" data-dismiss="alert">×</a>
+        {{tpl_save_error}}
+    </div>
+
+    <textarea name="tpl_data" class="tpl-data">[[tpl_data]]</textarea>
+
+    <div class="align-center top-spacer">
+        <button name="tpl_save" class="btn btn-primary">
+            {{save_tpl}}
+        </button>
+    </div>
+</div>
diff --git a/skins/easterngreen/html/tpl_footer.html b/skins/easterngreen/html/tpl_footer.html
new file mode 100644
index 0000000..9888d91
--- /dev/null
+++ b/skins/easterngreen/html/tpl_footer.html
@@ -0,0 +1,31 @@
+                </form>
+            </div>
+        </div>
+
+        <br />
+
+        <div class="footer">
+            <div class="footer-art"></div>
+            <div class="footer-grass"></div>
+            <div class="footer-wrapper">
+                <ul class="footer-links">
+                    <li>Hosted by <a href="https://www.redhat.com";>Red Hat</a></li>
+                    <li>Copyright © 2005‒2013 <a href="https://www.gnome.org";>The GNOME Project</a></li>
+                    <li class="cc-description">Free to share and remix: <a 
href="http://creativecommons.org/licenses/by/3.0/";>Creative Commons CC-BY</a>, except for the individual 
organization logos, who are property of their respective owners.</li>
+                </ul>
+            </div>
+        </div>
+
+    </div>
+
+    <script type="text/javascript" src="//code.jquery.com/jquery-1.10.1.min.js"></script>
+    <script type="text/javascript" src="//code.jquery.com/jquery-migrate-1.2.1.min.js"></script>
+    <script type="text/javascript" src="[[skin_path]]/js/main.js"></script>
+
+    <div class="pre-cache" style="display: none;">
+        <img src="//cdn.kde.org/img/checkmark.png" width="21" height="21" alt="" />
+        <img src="//cdn.kde.org/img/radio-checked.png" width="21" height="21" alt="" />
+        <img src="//cdn.kde.org/img/radio-unchecked.png" width="21" height="21" alt="" />
+    </div>
+</body>
+</html>
diff --git a/skins/easterngreen/html/tpl_header.html b/skins/easterngreen/html/tpl_header.html
new file mode 100644
index 0000000..9439e7e
--- /dev/null
+++ b/skins/easterngreen/html/tpl_header.html
@@ -0,0 +1,180 @@
+<!DOCTYPE html>
+
+<!--
+- opw-web v1
+- @license GPLv3 - //www.opensource.org/licenses/GPL-3.0
+- @copyright (c) 2013 GNOME Foundation. All rights reserved.
+- @copyright (c) 2012 KDE. All rights reserved.
+-
+- Instructions:
+- * Use [[template_var]] for a template variable
+ocalization variable
+-
+- !!IMPORTANT!! Retain all template variables when theming
+-->
+
+<html dir="[[html_direction]]" lang="{{lang_name}}">
+<head>
+    <meta charset="utf-8" />
+    <!--<title>[[page_title]]</title>-->
+    <title>[[site_title]]</title>
+    <meta name="description" content="[[site_desc]]" />
+    <meta name="viewport" content="width=device-width, initial-scale=1.0">
+
+    <link rel="shortcut icon" href="[[skin_path]]/css/img/opw-favicon.png" />
+    <link rel="stylesheet" type="text/css" media="screen, projection" href="[[skin_path]]/css/reset.css" />
+    <link rel="stylesheet" type="text/css" media="screen, projection" href="[[skin_path]]/css/bootstrap.css" 
/>
+    <link rel="stylesheet" type="text/css" media="screen, projection" href="[[skin_path]]/css/gnome.css" />
+    <link rel="stylesheet" type="text/css" media="screen, projection" href="[[skin_path]]/css/main.css" />
+</head>
+
+<body class="EasternGreen">
+
+    <!--DISABLED
+    <div id="global_domain_bar">
+        <div class="maxwidth">
+            <div class="tab">
+                <a class="root" href="http://www.gnome.org/";>GNOME.org</a>
+            </div>
+        </div>
+    </div>
+    -->
+
+    <div class="navbar navbar-static-top">
+        <div class="navbar-inner">
+            <div class="container">
+                <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="[[nav_home]]">
+                    <img src="[[skin_path]]/css/img/opw-logo.png" class="icon" alt="" />
+                    {{site_name}}
+                </a>
+
+                <div class="nav-collapse">
+                    <ul class="nav pull-right">
+                        <li>
+                            <a href="?q=view_programs&amp;r=accepted">
+                                <i class="icon-search"></i>
+                                {{accepted_projects}}
+                            </a>
+                        </li>
+
+                        <li class="dropdown [[admin_visibility]]">
+                            <a href="#" class="dropdown-toggle" data-toggle="dropdown">
+                                <i class="icon-wrench"></i>
+                                {{administration}}
+                                <b class="caret"></b>
+                            </a>
+
+                            <ul class="dropdown-menu">
+                                <li>
+                                    <a href="?q=manage_programs">
+                                        {{manage_programs}}
+                                    </a>
+                                </li>
+
+                                <li>
+                                    <a href="?q=view_programs&amp;r=proposed">
+                                        {{approve_proposal}}
+                                    </a>
+                                </li>
+
+                                <li>
+                                    <a href="?q=approve_mentors">
+                                        {{approve_mentors}}
+                                    </a>
+                                </li>
+
+                                <li>
+                                    <a href="?q=notifications">
+                                        {{notification_mails}}
+                                    </a>
+                                </li>
+
+                                <li>
+                                    <a href="?q=edit_templates">
+                                        {{edit_templates}}
+                                    </a>
+                                </li>
+
+                                <li>
+                                    <a href="?q=user_ban">
+                                        {{manage_bans}}
+                                    </a>
+                                </li>
+
+                                <li class="divider"></li>
+
+                                <li>
+                                    <a href="?q=view_programs&amp;r=rejected">
+                                        {{view_rejected}}
+                                    </a>
+                                </li>
+
+                                <li>
+                                    <a href="?q=view_programs&amp;a=inactive&amp;r=accepted">
+                                        {{view_archives}}
+                                    </a>
+                                </li>
+
+                                <li class="divider hide [[modadm_visibility]]"></li>
+
+                                <!-- module: program_home -->
+                                <li class="hide [[prog_adm_visibility]]">
+                                    <a href="?q=view_projects&amp;a=editor&amp;prg=[[program_id]]">
+                                        {{create_project}}
+                                    </a>
+                                </li>
+
+                                <!-- module: program_home -->
+                                <li class="hide [[prog_adm_visibility]]">
+                                    <a href="?q=view_participants&amp;prg=[[program_id]]">
+                                        {{view_participants}}
+                                    </a>
+                                </li>
+
+                                <!-- module: view_project -->
+                                <li class="hide [[approve_visibility]]">
+                                    <a 
href="?q=view_projects&amp;a=approve&amp;prg=[[program_id]]&amp;p=[[project_id]]&amp;r=[[return_url]]">
+                                        {{approve_project}}
+                                    </a>
+                                </li>
+
+                                <!-- module: view_project -->
+                                <li class="hide [[reject_visibility]]">
+                                    <a 
href="?q=view_projects&amp;a=reject&amp;prg=[[program_id]]&amp;p=[[project_id]]&amp;r=[[return_url]]">
+                                        {{reject_project}}
+                                    </a>
+                                </li>
+                            </ul>
+                        </li>
+
+                        <!--TODO
+                        <li class="[[guest_visibility]]">
+                            <a href="?q=login">
+                                <i class="icon-share-alt"></i>
+                                {{log_in}}
+                            </a>
+                        </li>
+                        -->
+
+                        <li class="[[user_visibility]]">
+                            <a href="?q=logout">
+                                <i class="icon-off"></i>
+                                {{log_out}}
+                            </a>
+                        </li>
+                    </ul>
+                </div>
+            </div>
+        </div>
+    </div>
+
+    <div class="container">
+        <div class="row">
+            <div class="span12">
+                <form class="form-horizontal" method="post">
diff --git a/skins/easterngreen/html/tpl_home.html b/skins/easterngreen/html/tpl_home.html
new file mode 100644
index 0000000..d682b9d
--- /dev/null
+++ b/skins/easterngreen/html/tpl_home.html
@@ -0,0 +1,207 @@
+
+<div class="span12 top-intro">
+    <div class="span7">
+        <p>The Outreach Program for Women (OPW) helps women get involved in
+        free  and open source software. We provide a supportive community
+        for  beginning to contribute any time throughout the year and offer
+        focused internship opportunities twice a year with a number of free
+        software organizations.</p>
+    </div>
+    <div class="clearfix"></div>
+</div>
+
+<div class="clearfix"></div>
+
+<div class="hero-unit align-center">
+
+    <div class="span10" id="apply">
+        <h2>Apply</h2>
+
+        <p>The next round of the Outreach Program for Women internships will
+        have an application deadline on March 19, 2014, and internship dates
+        from May 19 to August 18. Coding, design, documentation and other
+        projects will be available. The accepted participants will work
+        remotely, while being guided by their mentor, and receive $5,500
+        stipend.
+
+        </p><p>The applicants are asked to collaborate with mentors from the
+        participating organizations to make a contribution relevant to the
+        project they are applying for during the application process. The
+        organizations that will participate in the next round have not yet been
+        determined, but starting to contribute to one of the <a
+          href="https://wiki.gnome.org/OutreachProgramForWomen#Participating_Organizations";>organizations
+          that participated in the past</a> will help prepare to apply for an
+        internship with any organization.
+
+        </p><div class="clearfix"></div>
+
+        <a href="https://wiki.gnome.org/OutreachProgramForWomen";
+          class="learn-more">Learn how to get started and apply!</a>
+
+        <div class="clearfix"></div>
+    </div>
+
+    <div class="span10 section" id="participants">
+
+        <h2>Participants</h2>
+
+        <p>Congratulations to the <strong>31 participants</strong> accepted for
+        the December 2013 - March 2014 round of the Outreach Program for
+        Women!</p>
+
+        <div class="clearfix"></div>
+
+        <a class="learn-more view-participants">Find out who's participating in
+          this round!</a>
+
+        <div class="clearfix"></div>
+
+        <div class="participants-list" style="display: none;">
+
+            <div class="span3 organizations">
+
+                <div class="org-name">Debian</div>
+                <li>Judit Gyimesi</li>
+                <li>Michelle Harris</li>
+
+                <div class="org-name">Fedora</div>
+                <li><a href="http://honeycoding.blogspot.in";>Charul Agrawal</a></li>
+                <li><a href="http://invinciblepallavi.wordpress.com";>Pallavi Kumari Jha</a></li>
+                <li><a href="http://riecatnor.tumblr.com";>Marie Nordin</a></li>
+                <li><a href="http://blog.uxscrutiny.com";>Karen Tang</a></li>
+
+                <div class="org-name">GNOME</div>
+                <li><a href="http://curiousdtu.wordpress.com";>Shobha Tyagi</a></li>
+                <li><a href="http://sphinx1314.blogspot.tw";>Sphinx Jiang</a></li>
+                <li>Eliane Ramos Pereira</li>
+            </div>
+
+            <div class="span3 organizations">
+
+                <div class="org-name">Linux Kernel</div>
+                <li>Teodora Băluţă</li>
+                <li><a href="https://sites.google.com/site/rashikaiiith";>Rashika Kheria</a></li>
+                <li>Valentina Mihaela Manea</li>
+                <li><a href="http://salticidoftheearth.com";>Kelley Nielsen</a></li>
+
+                <div class="org-name">Mozilla</div>
+                <li>Isabelle Carter</li>
+                <li><a href="http://www.jennierosehalperin.me";>Jennie Rose Halperin</a></li>
+                <li>Jennifer "Nif" Ward</li>
+                <li>Sabina Brown</li>
+
+                <div class="org-name">OpenStack</div>
+                <li><a href="http://xenacodes.blogspot.com";>Annapoornima Koppad</a></li>
+                <li><a href="http://sayalilunkad.github.io";>Sayali Lunkad</a></li>
+                <li><a href="http://xicanacoder.tumblr.com";>Cindy Pallares-Quezada</a></li>
+                <li>Miranda Zhang</li>
+
+            </div>
+
+            <div class="span3 organizations">
+                <div class="org-name">Open Source Robotics Foundation</div>
+                <li><a href="http://robot.cmpe.boun.edu.tr/~binnur";>Binnur Görer</a></li>
+                <li>Tashwin Khurana</li>
+                <li><a href="http://thelittlerobotblogs.wordpress.com";>Ana Marian Pedro</a></li>
+                <li><a href="http://myshumi.net";>Louise Penna Poubel</a></li>
+
+                <div class="org-name">Wikimedia</div>
+                <li>Be Birchall</li>
+                <li><a href="http://inchikutty13.wordpress.com";>Anu G Enchackal</a></li>
+                <li><a href="http://niharika29.roon.io";>Niharika Kohli</a></li>
+                <li><a href="http://monteirobrena.wordpress.com";>Brena Monteiro de Jesus</a></li>
+                <li><a href="http://mariapacana.tumblr.com";>Maria Pacana</a></li>
+                <li>Diwanshi Pandey</li>
+            </div>
+
+            <div class="clearfix"></div>
+
+            <a class="learn-more" 
href="https://wiki.gnome.org/OutreachProgramForWomen#Previous_Participants";>Find out more about previous 
participants!</a>
+
+            <div class="clearfix"></div>
+        </div>
+    </div>
+
+    <div class="span10 section" id="sponsors">
+        <h2>Sponsors</h2>
+
+        <p>The Outreach Program for Women is organized by the GNOME Foundation. The internships this round 
are generously sponsored by the following organizations and companies:</p>
+
+        <h3>Equalizer</h3>
+
+        <a href="https://wikimediafoundation.org/wiki/Home";><img alt="Wikimedia Foundation" 
src="[[skin_path]]/css/img/sponsor-wikimedia-equalizer.png" class="span3 offset3"></a>
+
+        <div class="clearfix"></div>
+
+        <h3>Promoters</h3>
+
+        <a href="http://www.google.com";><img alt="Google" 
src="[[skin_path]]/css/img/sponsor-google-promoter.png" class="span3"></a>
+        <a href="http://www.hp.com";><img alt="Hewlett-Packard" 
src="[[skin_path]]/css/img/sponsor-hp-promoter.png" class="span3"></a>
+        <a href="http://www.intel.com";><img alt="Intel" src="[[skin_path]]/css/img/sponsor-intel.png" 
class="span3"></a>
+
+        <div class="clearfix"></div>
+
+        <a href="https://www.mozilla.org";><img alt="Mozilla" src="[[skin_path]]/css/img/sponsor-mozilla.png" 
class="span3 offset1"></a>
+        <a href="http://osrfoundation.org";><img alt="Open Source Robotics Foundation" 
src="[[skin_path]]/css/img/sponsor-osrf-promoter.png" class="span3 offset1"></a>
+
+        <div class="clearfix"></div>
+
+        <h3>Includers</h3>
+
+        <a href="http://cloudera.com";><img alt="Cloudera" 
src="[[skin_path]]/css/img/sponsor-cloudera-includer.png" class="span2 offset1"></a>
+        <a href="http://www.codethink.co.uk";><img alt="Codethink" 
src="[[skin_path]]/css/img/sponsor-codethink-includer.png" class="span2"></a>
+        <a href="http://www.debian.org";><img alt="Debian" 
src="[[skin_path]]/css/img/sponsor-debian-includer.png" class="span2"></a>
+        <a href="https://www.gnome.org";><img alt="GNOME Foundation" 
src="[[skin_path]]/css/img/sponsor-gnome.png" class="span2"></a>
+
+        <div class="clearfix"></div>
+
+        <a href="http://www.linaro.org";><img alt="Linaro" 
src="[[skin_path]]/css/img/sponsor-linaro-includer.png" class="span2 offset1"></a>
+        <a href="http://www.openstack.org/";><img alt="OpenStack Foundation" 
src="[[skin_path]]/css/img/sponsor-openstack.png" class="span2"></a>
+        <a href="http://www.rackspace.com";><img alt="Rackspace" 
src="[[skin_path]]/css/img/sponsor-rackspace-includer.png" class="span2"></a>
+        <a href="https://www.redhat.com/";><img alt="Red Hat" src="[[skin_path]]/css/img/sponsor-redhat.png" 
class="span2"></a>
+
+        <div class="clearfix"></div>
+
+        <a class="learn-more" 
href="https://wiki.gnome.org/OutreachProgramForWomen#For_Organizations_and_Companies";>Become a sponsor!</a>
+
+        <div class="clearfix"></div>
+
+    </div>
+
+    <div class="span10 section" id="partners">
+        <h2>Partners</h2>
+        <p class="span6"><strong>Red Hat</strong> supports the Outreach Program for Women by contributing 
its employee time towards the organization of the program.</p>
+        <a href="https://www.redhat.com/";><img alt="Red Hat" src="[[skin_path]]/css/img/sponsor-redhat.png" 
class="span2 offset1"></a>
+
+        <div class="clearfix"></div>
+
+        <p class="span6"><strong>Ropes &amp; Gray</strong> helps the Outreach Program for Women by kindly 
providing pro bono legal assistance for the program.</p>
+        <a href="http://www.ropesgray.com";><img alt="Ropes &amp; Gray" 
src="[[skin_path]]/css/img/sponsor-ropesgray.png" class="span2 offset1"></a>
+
+        <div class="clearfix"></div>
+
+    </div>
+
+
+
+    <div class="span10 section" id="about">
+        <h2>About</h2>
+        <p>The Outreach Program for Women (OPW)  was inspired by Google's Summer of Code  and by how few 
women applied for it. The GNOME Foundation first started the OPW with one round in 2006, and then resumed the 
effort in 2010 with rounds organized twice a year. In the May-August 2012 round, the Software Freedom 
Conservancy joined the OPW with one internship with the Twisted project. In the January-April 2013 round, 
many other free and open source organizations joined the program.</p>
+
+        <p>This program is a welcoming link that connects <strong>talented and passionate women</strong> 
with people working  in free and open source software and guides them through their first contribution. 
Through OPW, women learn how exciting and  valuable work on software freedom can be, while helping us to 
build a more inclusive community. </p>
+
+        <p>Follow <a href="http://www.twitter.com/fossopw";>@fossopw</a> on Twitter to get the latest 
news.</p>
+
+    </div>
+
+    <div class="clearfix"></div>
+
+</div>
+
+<!--TODO
+<a href="?q=view_programs" class="btn btn-large">
+    <img src="[[skin_path]]/images/active-programs.png" width="26" height="26" alt="" />
+    {{view_active_progms}}
+</a>
+-->
+
diff --git a/skins/easterngreen/html/tpl_login.html b/skins/easterngreen/html/tpl_login.html
new file mode 100644
index 0000000..f6ab8a5
--- /dev/null
+++ b/skins/easterngreen/html/tpl_login.html
@@ -0,0 +1,38 @@
+<h1>{{log_in}}</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-error [[error_visibility]]">
+    <a class="close" data-dismiss="alert">×</a>
+    [[error_message]]
+</div>
+
+<h4>{{iko_credentials}}</h4>
+<br />
+
+<div class="control-group">
+    <label class="control-label">{{username}}</label>
+    <div class="controls">
+        <input type="text" name="username" class="input-xlarge" />
+    </div>
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{password}}</label>
+    <div class="controls">
+        <input type="password" name="password" class="input-xlarge" />
+    </div>
+</div>
+
+<div class="form-actions">
+    <button type="submit" name="login" class="btn btn-primary">{{log_in}}</button>
+    <button type="reset" class="btn">{{reset}}</button>
+</div>
+
+<div class="alert alert-info">
+    <h3>{{create_account}}</h3>
+    <p>{{create_account_exp}}</p>
+    
+    <a href="https://identity.kde.org/index.php?r=registration/index"; target="_blank" class="btn">
+        {{register_iko}}
+    </a>
+</div>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_manage_programs.html 
b/skins/easterngreen/html/tpl_manage_programs.html
new file mode 100644
index 0000000..b2f9320
--- /dev/null
+++ b/skins/easterngreen/html/tpl_manage_programs.html
@@ -0,0 +1,34 @@
+<div class="pull-right">
+    <a href="?q=manage_programs&amp;a=editor" class="btn btn-primary">
+        <i class="icon-plus-sign icon-white"></i>
+        {{add_program}}
+    </a>
+</div>
+
+<h1>{{manage_programs}}</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-info [[notice_visibility]]">
+    {{no_programs}}
+</div>
+
+<div class="[[list_visibility]]">
+    <table class="table table-striped">
+        <thead>
+            <tr>
+                <th>{{program_title}}</th>
+                <th style="width:580px">{{description}}</th>
+                <th style="width:50px">{{active}}</th>
+                <th style="width:20px">{{edit}}</th>
+            </tr>
+        </thead>
+
+        <tbody>
+            [[programs_list]]
+        </tbody>
+    </table>
+
+    <div class="pages align-center [[pages_visibility]]">
+        [[list_pages]]
+    </div>
+</div>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_manage_programs_editor.html 
b/skins/easterngreen/html/tpl_manage_programs_editor.html
new file mode 100644
index 0000000..4518b82
--- /dev/null
+++ b/skins/easterngreen/html/tpl_manage_programs_editor.html
@@ -0,0 +1,77 @@
+<h1>[[editor_title]]</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-error [[error_visibility]]">
+    <a class="close" data-dismiss="alert">×</a>
+    [[error_message]]
+</div>
+
+<div class="alert alert-info">
+    {{form_notice}}
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{program_title}} *</label>
+    <div class="controls">
+        <input type="text" name="title" maxlength="100" class="input-xxlarge" value="[[title]]"  />
+    </div>
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{description}} &nbsp;</label>
+    <div class="controls">
+        <textarea name="description" rows="4" class="input-xxlarge">[[description]]</textarea>
+    </div>
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{start_date}} *</label>
+    <div class="controls">
+        <input type="text" name="start_date" class="input-medium datepicker" value="[[start_date]]"  />
+    </div>
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{dl_student}} *</label>
+    <div class="controls">
+        <input type="text" name="dl_student" class="input-medium datepicker" value="[[dl_student]]"  />
+    </div>
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{dl_mentor}} *</label>
+    <div class="controls">
+        <input type="text" name="dl_mentor" class="input-medium datepicker" value="[[dl_mentor]]"  />
+    </div>
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{end_date}} *</label>
+    <div class="controls">
+        <input type="text" name="end_date" class="input-medium datepicker" value="[[end_date]]"  />
+    </div>
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{active}} &nbsp;</label>
+    <div class="controls">
+        <input type="checkbox" name="active" [[active_checked]] />
+    </div>
+</div>
+
+<div class="form-actions">
+    <button type="submit" name="program_save" class="btn btn-primary">
+        <i class="icon-ok-sign icon-white"></i>
+        {{save}}
+    </button>
+
+    <a href="?q=manage_programs" class="btn">
+        <i class="icon-remove icon-black"></i>
+        {{cancel}}
+    </a>
+
+    <a href="[[delete_url]]" class="btn btn-danger delete-button [[delete_visibility]]">
+        <i class="icon-trash icon-white"></i>
+        {{delete}}
+    </a>
+</div>
diff --git a/skins/easterngreen/html/tpl_manage_programs_item.html 
b/skins/easterngreen/html/tpl_manage_programs_item.html
new file mode 100644
index 0000000..3559daf
--- /dev/null
+++ b/skins/easterngreen/html/tpl_manage_programs_item.html
@@ -0,0 +1,25 @@
+<tr>
+    <td>
+        [[program_title]]
+    </td>
+
+    <td>
+        [[program_description]]
+    </td>
+
+    <td>
+        <div class="align-center [[program_active]]">
+            <i class="icon icon-ok"></i>
+        </div>
+
+        <div class="align-center [[program_inactive]]">
+            <i class="icon icon-remove"></i>
+        </div>
+    </td>
+
+    <td class="align-center">
+        <a href="?q=manage_programs&amp;a=editor&amp;p=[[program_id]]">
+            <i class="icon-pencil"></i>
+        </a>
+    </td>
+</tr>
diff --git a/skins/easterngreen/html/tpl_master.html b/skins/easterngreen/html/tpl_master.html
new file mode 100644
index 0000000..4e65c65
--- /dev/null
+++ b/skins/easterngreen/html/tpl_master.html
@@ -0,0 +1 @@
+[[module_data]]
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_notifications.html b/skins/easterngreen/html/tpl_notifications.html
new file mode 100644
index 0000000..318ae51
--- /dev/null
+++ b/skins/easterngreen/html/tpl_notifications.html
@@ -0,0 +1,49 @@
+<h1>{{notification_mails}}</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-info">
+    {{mail_queue_exp}}
+</div>
+
+<div class="pull-right">
+    <input type="submit" name="process" class="btn btn-primary" value="{{send_notifications}}" />
+</div>
+
+<h4>{{mail_queue}}</h4>
+
+<div class="alert alert-info [[notice_visibility]]">
+    {{queue_empty}}
+</div>
+
+<div class="[[queue_visibility]]">
+    <table class="table table-striped">
+        <thead>
+            <tr>
+                <th>
+                    {{program_title}}
+                </th>
+
+                <th class="align-center">
+                    {{acceptance_mails}}
+                </th>
+
+                <th class="align-center">
+                    {{result_mails}}
+                </th>
+            </tr>
+        </thead>
+
+        <tbody>
+            [[queue_items]]
+        </tbody>
+    </table>
+</div>
+
+<div class="[[output_visibility]]">
+    <br />
+    <h4>{{sendmail_output}}</h4>
+
+    <div class="well">
+        [[notify_output]]
+    </div>
+</div>
diff --git a/skins/easterngreen/html/tpl_program_home.html b/skins/easterngreen/html/tpl_program_home.html
new file mode 100644
index 0000000..378fbd6
--- /dev/null
+++ b/skins/easterngreen/html/tpl_program_home.html
@@ -0,0 +1,152 @@
+<!-- We add these JS files here as we don't need them everywhere -->
+<script src="[[skin_path]]/js/processing.js"></script>
+<script src="[[skin_path]]/js/tween.js"></script>
+
+<div class="hero-unit align-center">
+    <div class="row-fluid">
+        <div class="span5">
+            <canvas id="donut" datasrc="?q=timeline&amp;prg=[[program_id]]" width="400" 
height="400"></canvas>
+
+            <div id="slice-label" class="align-center">
+                {{program_timeline}}
+            </div>
+        </div>
+
+        <div class="span7">
+            <h2 class="program-title">
+                [[program_title]]
+            </h2>
+
+            <h4 class="description top-spacer">
+                [[program_description]]
+            </h4>
+
+            <h4>
+                <i class="icon-calendar"></i>
+                [[program_start_date]] {{to}} [[program_end_date]]
+            </h4>
+
+
+            <h4 id="block-link" class="hidden">
+                <i class="icon-time"></i>
+                <a id="show-deadlines" href="#">
+                    {{show_deadlines}}
+                </a>
+            </h4>
+
+            <div id="block-deadlines" class="alert alert-project">
+                <table>
+                    <tr>
+                        <td rowspan="2">
+                            <img src="[[skin_path]]/images/deadline.png" alt="" width="24" height="24" 
class="time-icon" />
+                        </td>
+
+                        <td>
+                            [[student_deadlines]]
+                        </td>
+                    </tr>
+
+                    <tr>
+                        <td>
+                            [[mentor_deadlines]]
+                        </td>
+                    </tr>
+                </table>
+            </div>
+        </div>
+    </div>
+
+    <hr class="hr-hero" />
+
+    <div class="[[guest_visibility]]">
+        <a href="?q=login&amp;r=[[return_url]]" class="btn btn-large">
+            <img src="[[skin_path]]/images/login.png" width="26" height="26" alt="" />
+            {{login_to_participate}}
+        </a>
+    </div>
+
+    <div class="program-actions [[user_visibility]]">
+        <div class="[[prg_guest_visibility]]">
+            <a href="?q=view_projects&amp;prg=[[program_id]]&amp;a=apply&amp;c=student" class="btn btn-large 
[[dl_student_visibility]]">
+                <img src="[[skin_path]]/images/submit-project.png" width="26" height="26" alt="" />
+                {{apply_student}}
+            </a>
+
+            <a href="?q=view_projects&amp;prg=[[program_id]]&amp;a=apply&amp;c=mentor" class="btn btn-large 
[[dl_mentor_visibility]]">
+                <img src="[[skin_path]]/images/mentor-project.png" width="26" height="26" alt="" />
+                {{apply_mentor}}
+            </a>
+        </div>
+
+        <div class="[[prg_resign_visibility]]">
+            <h4 class="resign-notice">
+                <i class="icon-user"></i>
+                {{role_resigned}}
+            </h4>
+        </div>
+
+        <div class="[[prg_student_visibility]]">
+            <h4>
+                <i class="icon-user"></i>
+                {{role_student}}
+            </h4>
+
+            <a href="?q=view_projects&amp;a=editor&amp;prg=[[program_id]]" class="btn btn-large 
[[dl_student_visibility]]">
+                <img src="[[skin_path]]/images/submit-project.png" width="26" height="26" alt="" />
+                {{submit_proposal}}
+            </a>
+
+            <a href="?q=view_projects&amp;prg=[[program_id]]&amp;a=user" class="btn btn-large">
+                <img src="[[skin_path]]/images/projects.png" width="26" height="26" alt="" />
+                {{view_submissions}}
+            </a>
+
+            <div class="resign-block">
+                <a href="?q=view_projects&amp;prg=[[program_id]]&amp;a=resign" class="btn btn-danger 
btn-mini">
+                    {{resign_student}}
+                </a>
+            </div>
+        </div>
+
+        <div class="[[prg_interm_visibility]]">
+            <h4>
+                <i class="icon-user"></i>
+                {{role_intermediate}}
+            </h4>
+
+            <a href="?q=view_projects&amp;prg=[[program_id]]&amp;a=proposed" class="btn btn-large">
+                <img src="[[skin_path]]/images/proposals.png" width="26" height="26" alt="" />
+                {{view_proposals}}
+            </a>
+        </div>
+
+        <div class="[[prg_mentor_visibility]]">
+            <h4>
+                <i class="icon-user"></i>
+                {{role_mentor}}
+            </h4>
+
+            <a href="?q=view_projects&amp;prg=[[program_id]]&amp;a=proposed" class="btn btn-large 
[[dl_mentor_visibility]]">
+                <img src="[[skin_path]]/images/mentor-project.png" width="26" height="26" alt="" />
+                {{mentor_project_sel}}
+            </a>
+
+            <a href="?q=view_projects&amp;prg=[[program_id]]&amp;a=user" class="btn btn-large">
+                <img src="[[skin_path]]/images/projects.png" width="26" height="26" alt="" />
+                {{view_my_projects}}
+            </a>
+        </div>
+
+        <div class="[[prg_rejected_visibility]]">
+            <h4 class="rejected-notice">
+                <i class="icon-user"></i>
+                {{role_rejected}}
+            </h4>
+        </div>
+
+        <a href="?q=view_projects&amp;prg=[[program_id]]&amp;a=accepted" class="btn btn-large 
[[started_visibility]]">
+            <img src="[[skin_path]]/images/projects.png" width="26" height="26" alt="" />
+            {{view_accepted}}
+        </a>
+    </div>
+</div>
diff --git a/skins/easterngreen/html/tpl_queue_item.html b/skins/easterngreen/html/tpl_queue_item.html
new file mode 100644
index 0000000..fa7aa91
--- /dev/null
+++ b/skins/easterngreen/html/tpl_queue_item.html
@@ -0,0 +1,25 @@
+<tr>
+    <td>
+        <a href="?q=program_home&prg=[[program_id]]">[[program_title]]</a>
+    </td>
+
+    <td>
+        <div class="align-center [[program_deadline_sent]]">
+            <i class="icon icon-ok"></i>
+        </div>
+
+        <div class="align-center [[program_deadline_pending]]">
+            <i class="icon icon-remove"></i>
+        </div>
+    </td>
+
+    <td>
+        <div class="align-center [[program_complete_sent]]">
+            <i class="icon icon-ok"></i>
+        </div>
+
+        <div class="align-center [[program_complete_pending]]">
+            <i class="icon icon-remove"></i>
+        </div>
+    </td>
+</tr>
diff --git a/skins/easterngreen/html/tpl_user_ban.html b/skins/easterngreen/html/tpl_user_ban.html
new file mode 100644
index 0000000..7daf9d8
--- /dev/null
+++ b/skins/easterngreen/html/tpl_user_ban.html
@@ -0,0 +1,37 @@
+<h1>[[manage_bans]]</h1>
+<hr class="hr-head" />
+
+<div class="well oneline-form ban-form">
+    <div class="control-group">
+        <label class="control-label">
+            {{ban_user}}
+        </label>
+
+        <div class="controls">
+            <input type="text" name="ban_user" maxlength="200" class="input-xlarge" />
+            
+            <button type="submit" name="ban_submit" class="btn">
+                {{ban}}
+            </button>
+        </div>
+    </div>
+</div>
+
+<div class="alert alert-info [[notice_visibility]]">
+    {{no_bans}}
+</div>
+
+<div class="ban-list [[list_visibility]]">
+    <table class="table table-striped">
+        <thead>
+            <tr>
+                <th>{{username}}</th>
+                <th style="width:20px">{{unban}}</th>
+            </tr>
+        </thead>
+
+        <tbody>
+            [[ban_list]]
+        </tbody>
+    </table>
+</div>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_user_ban_item.html b/skins/easterngreen/html/tpl_user_ban_item.html
new file mode 100644
index 0000000..53ab396
--- /dev/null
+++ b/skins/easterngreen/html/tpl_user_ban_item.html
@@ -0,0 +1,11 @@
+<tr>
+    <td>
+        [[ban_username]]
+    </td>
+    
+    <td>
+        <a href="[[unban_url]]" title="{{unban_user}}">
+            <i class="icon-remove"></i>
+        </a>
+    </td>
+</tr>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_user_profile.html b/skins/easterngreen/html/tpl_user_profile.html
new file mode 100644
index 0000000..61f882c
--- /dev/null
+++ b/skins/easterngreen/html/tpl_user_profile.html
@@ -0,0 +1,62 @@
+<a href="[[return_url]]" class="no-decor pull-right top-spacer [[return_visibility]]">
+    <i class="icon-arrow-left"></i>
+    {{previous_page}}
+</a>
+
+<h1>{{user_profile}}</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-info [[notice_visibility]]">
+    {{user_404}}
+</div>
+
+<div class="user-data [[profile_visibility]]">
+    <table>
+        <tr>
+            <td style="width:165px">
+                <img class="thumbnail" src="[[avatar_url]]" alt="{{user_avatar}}" />
+
+                <div class="align-center top-spacer [[badge_visibility]]">
+                    <span class="label label-admin">
+                        <i class="icon-star icon-white"></i>
+                        {{site_admin}}
+                    </span>
+                </div>
+            </td>
+            
+            <td>
+                <table class="table table-striped">
+                    <tbody>
+                        <tr>
+                            <td style="width:140px">{{username}}</td>
+                            <td>[[user_username]]</td>
+                        </tr>
+
+                        <tr>
+                            <td>{{full_name}}</td>
+                            <td>[[user_fullname]]</td>
+                        </tr>
+
+                        <tr>
+                            <td>{{email}}</td>
+                            <td>[[user_email]]</td>
+                        </tr>
+                    </tbody>
+                </table>
+            </td>
+        </tr>
+    </table>
+
+    <div class="form-actions">
+        <a href="mailto:[[user_email]]"; class="btn btn-primary">
+            <i class="icon-envelope icon-white"></i>
+            {{contact_user}}
+        </a>
+
+        <a href="https://identity.kde.org/index.php?r=people/view&amp;uid=[[user_username]]"; class="btn"
+           target="_blank">
+            <i class="icon-user icon-black"></i>
+            {{full_profile}}
+        </a>
+    </div>
+</div>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_view_participants.html 
b/skins/easterngreen/html/tpl_view_participants.html
new file mode 100644
index 0000000..b0a270b
--- /dev/null
+++ b/skins/easterngreen/html/tpl_view_participants.html
@@ -0,0 +1,30 @@
+<h1>{{prog_participants}}</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-info [[notice_visibility]]">
+    {{no_participants}}
+</div>
+
+<div class="[[list_visibility]]">
+    <table class="table table-striped table-filtered">
+        <thead>
+            <tr>
+                <th>
+                    {{username}}
+                </th>
+
+                <th>
+                    {{role}}
+                </th>
+
+                <th>
+                    {{projects}}
+                </th>
+            </tr>
+        </thead>
+
+        <tbody>
+            [[participant_list]]
+        </tbody>
+    </table>
+</div>
diff --git a/skins/easterngreen/html/tpl_view_participants_item.html 
b/skins/easterngreen/html/tpl_view_participants_item.html
new file mode 100644
index 0000000..bd0430a
--- /dev/null
+++ b/skins/easterngreen/html/tpl_view_participants_item.html
@@ -0,0 +1,13 @@
+<tr>
+    <td>
+        [[participant]]
+    </td>
+
+    <td>
+        [[role]]
+    </td>
+
+    <td>
+        [[projects]]
+    </td>
+</tr>
diff --git a/skins/easterngreen/html/tpl_view_programs.html b/skins/easterngreen/html/tpl_view_programs.html
new file mode 100644
index 0000000..31eb1e0
--- /dev/null
+++ b/skins/easterngreen/html/tpl_view_programs.html
@@ -0,0 +1,25 @@
+<h1>[[programs_title]]</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-info [[notice_visibility]]">
+    {{no_programs}}
+</div>
+
+<div class="[[list_visibility]]">
+    <table class="table table-striped">
+        <thead>
+            <tr>
+                <th style="width:200px">{{program_title}}</th>
+                <th>{{description}}</th>
+            </tr>
+        </thead>
+
+        <tbody>
+            [[programs_list]]
+        </tbody>
+    </table>
+
+    <div class="pages align-center [[pages_visibility]]">
+        [[list_pages]]
+    </div>
+</div>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_view_programs_item.html 
b/skins/easterngreen/html/tpl_view_programs_item.html
new file mode 100644
index 0000000..ff659f1
--- /dev/null
+++ b/skins/easterngreen/html/tpl_view_programs_item.html
@@ -0,0 +1,11 @@
+<tr>
+    <td>
+        <a href="[[program_url]]">
+            [[program_title]]
+        </a>
+    </td>
+    
+    <td>
+        [[program_description]]
+    </td>
+</tr>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_view_project.html b/skins/easterngreen/html/tpl_view_project.html
new file mode 100644
index 0000000..349e56c
--- /dev/null
+++ b/skins/easterngreen/html/tpl_view_project.html
@@ -0,0 +1,73 @@
+<a href="?q=program_home&amp;prg=[[program_id]]" class="no-decor pull-right top-spacer">
+    <i class="icon-arrow-left"></i>
+    {{project_home}}
+</a>
+
+<h1>{{view_project}}</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-success [[success_visibility]]">
+    <a class="close" data-dismiss="alert">×</a>
+    [[success_message]]
+</div>
+
+<div class="alert alert-error [[subscribe_visibility]]">
+    <a class="close" data-dismiss="alert">×</a>
+    {{subscribe_mentor}}
+</div>
+
+<div class="project-data">
+    <div class="row">
+        <div class="span2">{{project_title}}</div>
+        <div class="span8">[[project_title]]</div>
+    </div>
+
+    <div class="row">
+        <div class="span2">{{description}}</div>
+        <div class="span8">[[project_description]]</div>
+    </div>
+
+    <div class="row">
+        <div class="span2">{{student}}</div>
+        <div class="span8">[[project_student]]</div>
+    </div>
+
+    <div class="row">
+        <div class="span2">{{mentor}}</div>
+        <div class="span8">[[project_mentor]]</div>
+    </div>
+
+    <div class="row">
+        <div class="span2">{{project_accepted}}</div>
+        <div class="span8">[[project_accepted]]</div>
+    </div>
+
+    <div class="row">
+        <div class="span2">{{project_complete}}</div>
+        <div class="span8">[[project_complete]]</div>
+    </div>
+
+    <div class="row">
+        <div class="span2">{{student_result}}</div>
+        <div class="span8">[[project_result]]</div>
+    </div>
+
+    <div class="form-actions [[actions_visibility]]">
+        <a href="?q=view_projects&amp;a=editor&amp;prg=[[program_id]]&amp;p=[[project_id]]&amp;r=view"
+           class="btn btn-primary [[edit_visibility]]">
+            <i class="icon-pencil icon-white"></i>
+            {{edit}}
+        </a>
+
+        <button type="submit" name="mentor_apply" class="btn [[mentorship_visibility]]">
+            <i class="icon-briefcase icon-black"></i>
+            {{mentor_project}}
+        </button>
+
+        <a href="?q=view_projects&amp;a=delete&amp;prg=[[program_id]]&amp;p=[[project_id]]"
+           class="btn btn-danger delete-button [[delete_visibility]]">
+            <i class="icon-trash icon-white"></i>
+            {{delete}}
+        </a>
+    </div>
+</div>
diff --git a/skins/easterngreen/html/tpl_view_projects.html b/skins/easterngreen/html/tpl_view_projects.html
new file mode 100644
index 0000000..3c88bba
--- /dev/null
+++ b/skins/easterngreen/html/tpl_view_projects.html
@@ -0,0 +1,37 @@
+<a href="?q=program_home&amp;prg=[[program_id]]" class="no-decor pull-right top-spacer">
+    <i class="icon-arrow-left"></i>
+    {{project_home}}
+</a>
+
+<h1>[[view_title]]</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-info [[notice_visibility]]">
+    {{no_projects}}
+</div>
+
+<div class="[[list_visibility]]">
+    <table class="table table-striped">
+        <thead>
+            <tr>
+                <th style="width:250px">
+                    {{project_title}}
+                </th>
+                
+                <th>
+                    {{description}}
+                </th>
+                
+                <th style="width:50px;"></th>
+            </tr>
+        </thead>
+
+        <tbody>
+            [[projects_list]]
+        </tbody>
+    </table>
+
+    <div class="pages align-center [[pages_visibility]]">
+        [[list_pages]]
+    </div>
+</div>
\ No newline at end of file
diff --git a/skins/easterngreen/html/tpl_view_projects_editor.html 
b/skins/easterngreen/html/tpl_view_projects_editor.html
new file mode 100644
index 0000000..2fd7f28
--- /dev/null
+++ b/skins/easterngreen/html/tpl_view_projects_editor.html
@@ -0,0 +1,99 @@
+<a href="?q=program_home&amp;prg=[[program_id]]" class="no-decor pull-right top-spacer">
+    <i class="icon-arrow-left"></i>
+    {{project_home}}
+</a>
+
+<h1>[[editor_title]]</h1>
+<hr class="hr-head" />
+
+<div class="alert alert-error [[error_visibility]]">
+    <a class="close" data-dismiss="alert">×</a>
+    [[error_message]]
+</div>
+
+<div class="alert alert-success [[success_visibility]]">
+    <a class="close" data-dismiss="alert">×</a>
+    [[success_message]]
+</div>
+
+<div class="alert alert-error [[subscribe_visibility]]">
+    <a class="close" data-dismiss="alert">×</a>
+    {{subscribe_student}}
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{project_title}}</label>
+    <div class="controls">
+        <input type="text" name="title" maxlength="100" class="input-xxlarge" value="[[project_title]]" />
+    </div>
+</div>
+
+<div class="control-group">
+    <label class="control-label">{{description}}</label>
+    <div class="controls">
+        <textarea name="description" rows="10" class="input-xxlarge">[[project_description]]</textarea>
+    </div>
+</div>
+
+<div class="control-group [[decision_visibility]]">
+    <label class="control-label">{{project_complete}}</label>
+    <div class="controls">
+        <input type="checkbox" name="complete" [[complete_checked]] />
+    </div>
+</div>
+
+<div class="control-group [[decision_visibility]]">
+    <label class="control-label">{{student_result}}</label>
+    <div class="controls">
+        <label class="radio">
+            <input type="radio" name="passed" value="1" [[pass_checked]] />
+            {{passed}}
+        </label>
+
+        <label class="radio">
+            <input type="radio" name="passed" value="0" [[failed_checked]] />
+            {{failed}}
+        </label>
+
+        <label class="radio">
+            <input type="radio" name="passed" value="-1" [[undecided_checked]] />
+            {{undecided}}
+        </label>
+    </div>
+</div>
+
+<div class="control-group [[newuser_visibility]]">
+    <label class="control-label">{{new_student}}</label>
+    <div class="controls">
+        <input type="text" name="new_student" maxlength="100" class="input-medium" value="[[new_student]]" />
+
+        <div class="help-inline">
+            <i class="icon-info-sign"></i>
+            {{new_student_exp}}
+        </div>
+    </div>
+</div>
+
+<div class="control-group [[newuser_visibility]]">
+    <label class="control-label">{{new_mentor}}</label>
+    <div class="controls">
+        <input type="text" name="new_mentor" maxlength="100" class="input-medium" value="[[new_mentor]]" />
+
+        <div class="help-inline">
+            <i class="icon-info-sign"></i>
+            {{new_mentor_exp}}
+        </div>
+    </div>
+</div>
+
+<div class="form-actions">
+    <button type="submit" name="project_save" class="btn btn-primary">
+        <i class="icon-ok-sign icon-white"></i>
+        {{save}}
+    </button>
+
+    <a href="[[cancel_url]]" class="btn">
+        <i class="icon-remove icon-black"></i>
+        {{cancel}}
+    </a>
+</div>
diff --git a/skins/easterngreen/html/tpl_view_projects_item.html 
b/skins/easterngreen/html/tpl_view_projects_item.html
new file mode 100644
index 0000000..459b2fe
--- /dev/null
+++ b/skins/easterngreen/html/tpl_view_projects_item.html
@@ -0,0 +1,23 @@
+<tr>
+    <td>
+        <a href="[[project_url]]">
+            [[project_title]]
+        </a>
+    </td>
+
+    <td>
+        [[project_description]]
+    </td>
+
+    <td>
+        <div class="align-right [[apprej_visibility]]">
+            <a href="[[approve_url]]" title="{{approve}}">
+                <i class="icon-ok"></i>
+            </a>
+            &nbsp;
+            <a href="[[reject_url]]" title="{{reject}}">
+                <i class="icon-remove"></i>
+            </a>
+        </div>
+    </td>
+</tr>
\ No newline at end of file
diff --git a/skins/easterngreen/images/active-programs.png b/skins/easterngreen/images/active-programs.png
new file mode 100644
index 0000000..f07f89e
Binary files /dev/null and b/skins/easterngreen/images/active-programs.png differ
diff --git a/skins/easterngreen/images/cancel-mentor.png b/skins/easterngreen/images/cancel-mentor.png
new file mode 100644
index 0000000..5f769ad
Binary files /dev/null and b/skins/easterngreen/images/cancel-mentor.png differ
diff --git a/skins/easterngreen/images/deadline.png b/skins/easterngreen/images/deadline.png
new file mode 100644
index 0000000..8641326
Binary files /dev/null and b/skins/easterngreen/images/deadline.png differ
diff --git a/skins/easterngreen/images/default-avatar.png b/skins/easterngreen/images/default-avatar.png
new file mode 100644
index 0000000..4e9da2d
Binary files /dev/null and b/skins/easterngreen/images/default-avatar.png differ
diff --git a/skins/easterngreen/images/login.png b/skins/easterngreen/images/login.png
new file mode 100644
index 0000000..4893ea0
Binary files /dev/null and b/skins/easterngreen/images/login.png differ
diff --git a/skins/easterngreen/images/mentor-project.png b/skins/easterngreen/images/mentor-project.png
new file mode 100644
index 0000000..b90740c
Binary files /dev/null and b/skins/easterngreen/images/mentor-project.png differ
diff --git a/skins/easterngreen/images/opw-favicon.png b/skins/easterngreen/images/opw-favicon.png
new file mode 100644
index 0000000..7532e70
Binary files /dev/null and b/skins/easterngreen/images/opw-favicon.png differ
diff --git a/skins/easterngreen/images/programs.png b/skins/easterngreen/images/programs.png
new file mode 100644
index 0000000..4dc40c8
Binary files /dev/null and b/skins/easterngreen/images/programs.png differ
diff --git a/skins/easterngreen/images/projects.png b/skins/easterngreen/images/projects.png
new file mode 100644
index 0000000..070e003
Binary files /dev/null and b/skins/easterngreen/images/projects.png differ
diff --git a/skins/easterngreen/images/proposals.png b/skins/easterngreen/images/proposals.png
new file mode 100644
index 0000000..626087e
Binary files /dev/null and b/skins/easterngreen/images/proposals.png differ
diff --git a/skins/easterngreen/images/submit-project.png b/skins/easterngreen/images/submit-project.png
new file mode 100644
index 0000000..8abf1c2
Binary files /dev/null and b/skins/easterngreen/images/submit-project.png differ
diff --git a/skins/easterngreen/img/glyphicons-halflings-white.png 
b/skins/easterngreen/img/glyphicons-halflings-white.png
new file mode 100644
index 0000000..3bf6484
Binary files /dev/null and b/skins/easterngreen/img/glyphicons-halflings-white.png differ
diff --git a/skins/easterngreen/img/glyphicons-halflings.png b/skins/easterngreen/img/glyphicons-halflings.png
new file mode 100644
index 0000000..a996999
Binary files /dev/null and b/skins/easterngreen/img/glyphicons-halflings.png differ
diff --git a/skins/easterngreen/js/bootstrap.js b/skins/easterngreen/js/bootstrap.js
new file mode 100644
index 0000000..44109f6
--- /dev/null
+++ b/skins/easterngreen/js/bootstrap.js
@@ -0,0 +1,2280 @@
+/* ===================================================
+ * bootstrap-transition.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#transitions
+ * ===================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ========================================================== */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+  /* CSS TRANSITION SUPPORT (http://www.modernizr.com/)
+   * ======================================================= */
+
+  $(function () {
+
+    $.support.transition = (function () {
+
+      var transitionEnd = (function () {
+
+        var el = document.createElement('bootstrap')
+          , transEndEventNames = {
+               'WebkitTransition' : 'webkitTransitionEnd'
+            ,  'MozTransition'    : 'transitionend'
+            ,  'OTransition'      : 'oTransitionEnd otransitionend'
+            ,  'transition'       : 'transitionend'
+            }
+          , name
+
+        for (name in transEndEventNames){
+          if (el.style[name] !== undefined) {
+            return transEndEventNames[name]
+          }
+        }
+
+      }())
+
+      return transitionEnd && {
+        end: transitionEnd
+      }
+
+    })()
+
+  })
+
+}(window.jQuery);/* ==========================================================
+ * bootstrap-alert.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#alerts
+ * ==========================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ========================================================== */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* ALERT CLASS DEFINITION
+  * ====================== */
+
+  var dismiss = '[data-dismiss="alert"]'
+    , Alert = function (el) {
+        $(el).on('click', dismiss, this.close)
+      }
+
+  Alert.prototype.close = function (e) {
+    var $this = $(this)
+      , selector = $this.attr('data-target')
+      , $parent
+
+    if (!selector) {
+      selector = $this.attr('href')
+      selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
+    }
+
+    $parent = $(selector)
+
+    e && e.preventDefault()
+
+    $parent.length || ($parent = $this.hasClass('alert') ? $this : $this.parent())
+
+    $parent.trigger(e = $.Event('close'))
+
+    if (e.isDefaultPrevented()) return
+
+    $parent.removeClass('in')
+
+    function removeElement() {
+      $parent
+        .trigger('closed')
+        .remove()
+    }
+
+    $.support.transition && $parent.hasClass('fade') ?
+      $parent.on($.support.transition.end, removeElement) :
+      removeElement()
+  }
+
+
+ /* ALERT PLUGIN DEFINITION
+  * ======================= */
+
+  var old = $.fn.alert
+
+  $.fn.alert = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('alert')
+      if (!data) $this.data('alert', (data = new Alert(this)))
+      if (typeof option == 'string') data[option].call($this)
+    })
+  }
+
+  $.fn.alert.Constructor = Alert
+
+
+ /* ALERT NO CONFLICT
+  * ================= */
+
+  $.fn.alert.noConflict = function () {
+    $.fn.alert = old
+    return this
+  }
+
+
+ /* ALERT DATA-API
+  * ============== */
+
+  $(document).on('click.alert.data-api', dismiss, Alert.prototype.close)
+
+}(window.jQuery);/* ============================================================
+ * bootstrap-button.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#buttons
+ * ============================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============================================================ */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* BUTTON PUBLIC CLASS DEFINITION
+  * ============================== */
+
+  var Button = function (element, options) {
+    this.$element = $(element)
+    this.options = $.extend({}, $.fn.button.defaults, options)
+  }
+
+  Button.prototype.setState = function (state) {
+    var d = 'disabled'
+      , $el = this.$element
+      , data = $el.data()
+      , val = $el.is('input') ? 'val' : 'html'
+
+    state = state + 'Text'
+    data.resetText || $el.data('resetText', $el[val]())
+
+    $el[val](data[state] || this.options[state])
+
+    // push to event loop to allow forms to submit
+    setTimeout(function () {
+      state == 'loadingText' ?
+        $el.addClass(d).attr(d, d) :
+        $el.removeClass(d).removeAttr(d)
+    }, 0)
+  }
+
+  Button.prototype.toggle = function () {
+    var $parent = this.$element.closest('[data-toggle="buttons-radio"]')
+
+    $parent && $parent
+      .find('.active')
+      .removeClass('active')
+
+    this.$element.toggleClass('active')
+  }
+
+
+ /* BUTTON PLUGIN DEFINITION
+  * ======================== */
+
+  var old = $.fn.button
+
+  $.fn.button = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('button')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('button', (data = new Button(this, options)))
+      if (option == 'toggle') data.toggle()
+      else if (option) data.setState(option)
+    })
+  }
+
+  $.fn.button.defaults = {
+    loadingText: 'loading...'
+  }
+
+  $.fn.button.Constructor = Button
+
+
+ /* BUTTON NO CONFLICT
+  * ================== */
+
+  $.fn.button.noConflict = function () {
+    $.fn.button = old
+    return this
+  }
+
+
+ /* BUTTON DATA-API
+  * =============== */
+
+  $(document).on('click.button.data-api', '[data-toggle^=button]', function (e) {
+    var $btn = $(e.target)
+    if (!$btn.hasClass('btn')) $btn = $btn.closest('.btn')
+    $btn.button('toggle')
+  })
+
+}(window.jQuery);/* ==========================================================
+ * bootstrap-carousel.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#carousel
+ * ==========================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ========================================================== */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* CAROUSEL CLASS DEFINITION
+  * ========================= */
+
+  var Carousel = function (element, options) {
+    this.$element = $(element)
+    this.$indicators = this.$element.find('.carousel-indicators')
+    this.options = options
+    this.options.pause == 'hover' && this.$element
+      .on('mouseenter', $.proxy(this.pause, this))
+      .on('mouseleave', $.proxy(this.cycle, this))
+  }
+
+  Carousel.prototype = {
+
+    cycle: function (e) {
+      if (!e) this.paused = false
+      if (this.interval) clearInterval(this.interval);
+      this.options.interval
+        && !this.paused
+        && (this.interval = setInterval($.proxy(this.next, this), this.options.interval))
+      return this
+    }
+
+  , getActiveIndex: function () {
+      this.$active = this.$element.find('.item.active')
+      this.$items = this.$active.parent().children()
+      return this.$items.index(this.$active)
+    }
+
+  , to: function (pos) {
+      var activeIndex = this.getActiveIndex()
+        , that = this
+
+      if (pos > (this.$items.length - 1) || pos < 0) return
+
+      if (this.sliding) {
+        return this.$element.one('slid', function () {
+          that.to(pos)
+        })
+      }
+
+      if (activeIndex == pos) {
+        return this.pause().cycle()
+      }
+
+      return this.slide(pos > activeIndex ? 'next' : 'prev', $(this.$items[pos]))
+    }
+
+  , pause: function (e) {
+      if (!e) this.paused = true
+      if (this.$element.find('.next, .prev').length && $.support.transition.end) {
+        this.$element.trigger($.support.transition.end)
+        this.cycle(true)
+      }
+      clearInterval(this.interval)
+      this.interval = null
+      return this
+    }
+
+  , next: function () {
+      if (this.sliding) return
+      return this.slide('next')
+    }
+
+  , prev: function () {
+      if (this.sliding) return
+      return this.slide('prev')
+    }
+
+  , slide: function (type, next) {
+      var $active = this.$element.find('.item.active')
+        , $next = next || $active[type]()
+        , isCycling = this.interval
+        , direction = type == 'next' ? 'left' : 'right'
+        , fallback  = type == 'next' ? 'first' : 'last'
+        , that = this
+        , e
+
+      this.sliding = true
+
+      isCycling && this.pause()
+
+      $next = $next.length ? $next : this.$element.find('.item')[fallback]()
+
+      e = $.Event('slide', {
+        relatedTarget: $next[0]
+      , direction: direction
+      })
+
+      if ($next.hasClass('active')) return
+
+      if (this.$indicators.length) {
+        this.$indicators.find('.active').removeClass('active')
+        this.$element.one('slid', function () {
+          var $nextIndicator = $(that.$indicators.children()[that.getActiveIndex()])
+          $nextIndicator && $nextIndicator.addClass('active')
+        })
+      }
+
+      if ($.support.transition && this.$element.hasClass('slide')) {
+        this.$element.trigger(e)
+        if (e.isDefaultPrevented()) return
+        $next.addClass(type)
+        $next[0].offsetWidth // force reflow
+        $active.addClass(direction)
+        $next.addClass(direction)
+        this.$element.one($.support.transition.end, function () {
+          $next.removeClass([type, direction].join(' ')).addClass('active')
+          $active.removeClass(['active', direction].join(' '))
+          that.sliding = false
+          setTimeout(function () { that.$element.trigger('slid') }, 0)
+        })
+      } else {
+        this.$element.trigger(e)
+        if (e.isDefaultPrevented()) return
+        $active.removeClass('active')
+        $next.addClass('active')
+        this.sliding = false
+        this.$element.trigger('slid')
+      }
+
+      isCycling && this.cycle()
+
+      return this
+    }
+
+  }
+
+
+ /* CAROUSEL PLUGIN DEFINITION
+  * ========================== */
+
+  var old = $.fn.carousel
+
+  $.fn.carousel = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('carousel')
+        , options = $.extend({}, $.fn.carousel.defaults, typeof option == 'object' && option)
+        , action = typeof option == 'string' ? option : options.slide
+      if (!data) $this.data('carousel', (data = new Carousel(this, options)))
+      if (typeof option == 'number') data.to(option)
+      else if (action) data[action]()
+      else if (options.interval) data.pause().cycle()
+    })
+  }
+
+  $.fn.carousel.defaults = {
+    interval: 5000
+  , pause: 'hover'
+  }
+
+  $.fn.carousel.Constructor = Carousel
+
+
+ /* CAROUSEL NO CONFLICT
+  * ==================== */
+
+  $.fn.carousel.noConflict = function () {
+    $.fn.carousel = old
+    return this
+  }
+
+ /* CAROUSEL DATA-API
+  * ================= */
+
+  $(document).on('click.carousel.data-api', '[data-slide], [data-slide-to]', function (e) {
+    var $this = $(this), href
+      , $target = $($this.attr('data-target') || (href = $this.attr('href')) && 
href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
+      , options = $.extend({}, $target.data(), $this.data())
+      , slideIndex
+
+    $target.carousel(options)
+
+    if (slideIndex = $this.attr('data-slide-to')) {
+      $target.data('carousel').pause().to(slideIndex).cycle()
+    }
+
+    e.preventDefault()
+  })
+
+}(window.jQuery);/* =============================================================
+ * bootstrap-collapse.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#collapse
+ * =============================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============================================================ */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* COLLAPSE PUBLIC CLASS DEFINITION
+  * ================================ */
+
+  var Collapse = function (element, options) {
+    this.$element = $(element)
+    this.options = $.extend({}, $.fn.collapse.defaults, options)
+
+    if (this.options.parent) {
+      this.$parent = $(this.options.parent)
+    }
+
+    this.options.toggle && this.toggle()
+  }
+
+  Collapse.prototype = {
+
+    constructor: Collapse
+
+  , dimension: function () {
+      var hasWidth = this.$element.hasClass('width')
+      return hasWidth ? 'width' : 'height'
+    }
+
+  , show: function () {
+      var dimension
+        , scroll
+        , actives
+        , hasData
+
+      if (this.transitioning || this.$element.hasClass('in')) return
+
+      dimension = this.dimension()
+      scroll = $.camelCase(['scroll', dimension].join('-'))
+      actives = this.$parent && this.$parent.find('> .accordion-group > .in')
+
+      if (actives && actives.length) {
+        hasData = actives.data('collapse')
+        if (hasData && hasData.transitioning) return
+        actives.collapse('hide')
+        hasData || actives.data('collapse', null)
+      }
+
+      this.$element[dimension](0)
+      this.transition('addClass', $.Event('show'), 'shown')
+      $.support.transition && this.$element[dimension](this.$element[0][scroll])
+    }
+
+  , hide: function () {
+      var dimension
+      if (this.transitioning || !this.$element.hasClass('in')) return
+      dimension = this.dimension()
+      this.reset(this.$element[dimension]())
+      this.transition('removeClass', $.Event('hide'), 'hidden')
+      this.$element[dimension](0)
+    }
+
+  , reset: function (size) {
+      var dimension = this.dimension()
+
+      this.$element
+        .removeClass('collapse')
+        [dimension](size || 'auto')
+        [0].offsetWidth
+
+      this.$element[size !== null ? 'addClass' : 'removeClass']('collapse')
+
+      return this
+    }
+
+  , transition: function (method, startEvent, completeEvent) {
+      var that = this
+        , complete = function () {
+            if (startEvent.type == 'show') that.reset()
+            that.transitioning = 0
+            that.$element.trigger(completeEvent)
+          }
+
+      this.$element.trigger(startEvent)
+
+      if (startEvent.isDefaultPrevented()) return
+
+      this.transitioning = 1
+
+      this.$element[method]('in')
+
+      $.support.transition && this.$element.hasClass('collapse') ?
+        this.$element.one($.support.transition.end, complete) :
+        complete()
+    }
+
+  , toggle: function () {
+      this[this.$element.hasClass('in') ? 'hide' : 'show']()
+    }
+
+  }
+
+
+ /* COLLAPSE PLUGIN DEFINITION
+  * ========================== */
+
+  var old = $.fn.collapse
+
+  $.fn.collapse = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('collapse')
+        , options = $.extend({}, $.fn.collapse.defaults, $this.data(), typeof option == 'object' && option)
+      if (!data) $this.data('collapse', (data = new Collapse(this, options)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.collapse.defaults = {
+    toggle: true
+  }
+
+  $.fn.collapse.Constructor = Collapse
+
+
+ /* COLLAPSE NO CONFLICT
+  * ==================== */
+
+  $.fn.collapse.noConflict = function () {
+    $.fn.collapse = old
+    return this
+  }
+
+
+ /* COLLAPSE DATA-API
+  * ================= */
+
+  $(document).on('click.collapse.data-api', '[data-toggle=collapse]', function (e) {
+    var $this = $(this), href
+      , target = $this.attr('data-target')
+        || e.preventDefault()
+        || (href = $this.attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '') //strip for ie7
+      , option = $(target).data('collapse') ? 'toggle' : $this.data()
+    $this[$(target).hasClass('in') ? 'addClass' : 'removeClass']('collapsed')
+    $(target).collapse(option)
+  })
+
+}(window.jQuery);/* ============================================================
+ * bootstrap-dropdown.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#dropdowns
+ * ============================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============================================================ */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* DROPDOWN CLASS DEFINITION
+  * ========================= */
+
+  var toggle = '[data-toggle=dropdown]'
+    , Dropdown = function (element) {
+        var $el = $(element).on('click.dropdown.data-api', this.toggle)
+        $('html').on('click.dropdown.data-api', function () {
+          $el.parent().removeClass('open')
+        })
+      }
+
+  Dropdown.prototype = {
+
+    constructor: Dropdown
+
+  , toggle: function (e) {
+      var $this = $(this)
+        , $parent
+        , isActive
+
+      if ($this.is('.disabled, :disabled')) return
+
+      $parent = getParent($this)
+
+      isActive = $parent.hasClass('open')
+
+      clearMenus()
+
+      if (!isActive) {
+        if ('ontouchstart' in document.documentElement) {
+          // if mobile we we use a backdrop because click events don't delegate
+          $('<div class="dropdown-backdrop"/>').insertBefore($(this)).on('click', clearMenus)
+        }
+        $parent.toggleClass('open')
+      }
+
+      $this.focus()
+
+      return false
+    }
+
+  , keydown: function (e) {
+      var $this
+        , $items
+        , $active
+        , $parent
+        , isActive
+        , index
+
+      if (!/(38|40|27)/.test(e.keyCode)) return
+
+      $this = $(this)
+
+      e.preventDefault()
+      e.stopPropagation()
+
+      if ($this.is('.disabled, :disabled')) return
+
+      $parent = getParent($this)
+
+      isActive = $parent.hasClass('open')
+
+      if (!isActive || (isActive && e.keyCode == 27)) {
+        if (e.which == 27) $parent.find(toggle).focus()
+        return $this.click()
+      }
+
+      $items = $('[role=menu] li:not(.divider):visible a', $parent)
+
+      if (!$items.length) return
+
+      index = $items.index($items.filter(':focus'))
+
+      if (e.keyCode == 38 && index > 0) index--                                        // up
+      if (e.keyCode == 40 && index < $items.length - 1) index++                        // down
+      if (!~index) index = 0
+
+      $items
+        .eq(index)
+        .focus()
+    }
+
+  }
+
+  function clearMenus() {
+    $('.dropdown-backdrop').remove()
+    $(toggle).each(function () {
+      getParent($(this)).removeClass('open')
+    })
+  }
+
+  function getParent($this) {
+    var selector = $this.attr('data-target')
+      , $parent
+
+    if (!selector) {
+      selector = $this.attr('href')
+      selector = selector && /#/.test(selector) && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
+    }
+
+    $parent = selector && $(selector)
+
+    if (!$parent || !$parent.length) $parent = $this.parent()
+
+    return $parent
+  }
+
+
+  /* DROPDOWN PLUGIN DEFINITION
+   * ========================== */
+
+  var old = $.fn.dropdown
+
+  $.fn.dropdown = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('dropdown')
+      if (!data) $this.data('dropdown', (data = new Dropdown(this)))
+      if (typeof option == 'string') data[option].call($this)
+    })
+  }
+
+  $.fn.dropdown.Constructor = Dropdown
+
+
+ /* DROPDOWN NO CONFLICT
+  * ==================== */
+
+  $.fn.dropdown.noConflict = function () {
+    $.fn.dropdown = old
+    return this
+  }
+
+
+  /* APPLY TO STANDARD DROPDOWN ELEMENTS
+   * =================================== */
+
+  $(document)
+    .on('click.dropdown.data-api', clearMenus)
+    .on('click.dropdown.data-api', '.dropdown form', function (e) { e.stopPropagation() })
+    .on('click.dropdown.data-api'  , toggle, Dropdown.prototype.toggle)
+    .on('keydown.dropdown.data-api', toggle + ', [role=menu]' , Dropdown.prototype.keydown)
+
+}(window.jQuery);
+/* =========================================================
+ * bootstrap-modal.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#modals
+ * =========================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ========================================================= */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* MODAL CLASS DEFINITION
+  * ====================== */
+
+  var Modal = function (element, options) {
+    this.options = options
+    this.$element = $(element)
+      .delegate('[data-dismiss="modal"]', 'click.dismiss.modal', $.proxy(this.hide, this))
+    this.options.remote && this.$element.find('.modal-body').load(this.options.remote)
+  }
+
+  Modal.prototype = {
+
+      constructor: Modal
+
+    , toggle: function () {
+        return this[!this.isShown ? 'show' : 'hide']()
+      }
+
+    , show: function () {
+        var that = this
+          , e = $.Event('show')
+
+        this.$element.trigger(e)
+
+        if (this.isShown || e.isDefaultPrevented()) return
+
+        this.isShown = true
+
+        this.escape()
+
+        this.backdrop(function () {
+          var transition = $.support.transition && that.$element.hasClass('fade')
+
+          if (!that.$element.parent().length) {
+            that.$element.appendTo(document.body) //don't move modals dom position
+          }
+
+          that.$element.show()
+
+          if (transition) {
+            that.$element[0].offsetWidth // force reflow
+          }
+
+          that.$element
+            .addClass('in')
+            .attr('aria-hidden', false)
+
+          that.enforceFocus()
+
+          transition ?
+            that.$element.one($.support.transition.end, function () { that.$element.focus().trigger('shown') 
}) :
+            that.$element.focus().trigger('shown')
+
+        })
+      }
+
+    , hide: function (e) {
+        e && e.preventDefault()
+
+        var that = this
+
+        e = $.Event('hide')
+
+        this.$element.trigger(e)
+
+        if (!this.isShown || e.isDefaultPrevented()) return
+
+        this.isShown = false
+
+        this.escape()
+
+        $(document).off('focusin.modal')
+
+        this.$element
+          .removeClass('in')
+          .attr('aria-hidden', true)
+
+        $.support.transition && this.$element.hasClass('fade') ?
+          this.hideWithTransition() :
+          this.hideModal()
+      }
+
+    , enforceFocus: function () {
+        var that = this
+        $(document).on('focusin.modal', function (e) {
+          if (that.$element[0] !== e.target && !that.$element.has(e.target).length) {
+            that.$element.focus()
+          }
+        })
+      }
+
+    , escape: function () {
+        var that = this
+        if (this.isShown && this.options.keyboard) {
+          this.$element.on('keyup.dismiss.modal', function ( e ) {
+            e.which == 27 && that.hide()
+          })
+        } else if (!this.isShown) {
+          this.$element.off('keyup.dismiss.modal')
+        }
+      }
+
+    , hideWithTransition: function () {
+        var that = this
+          , timeout = setTimeout(function () {
+              that.$element.off($.support.transition.end)
+              that.hideModal()
+            }, 500)
+
+        this.$element.one($.support.transition.end, function () {
+          clearTimeout(timeout)
+          that.hideModal()
+        })
+      }
+
+    , hideModal: function () {
+        var that = this
+        this.$element.hide()
+        this.backdrop(function () {
+          that.removeBackdrop()
+          that.$element.trigger('hidden')
+        })
+      }
+
+    , removeBackdrop: function () {
+        this.$backdrop && this.$backdrop.remove()
+        this.$backdrop = null
+      }
+
+    , backdrop: function (callback) {
+        var that = this
+          , animate = this.$element.hasClass('fade') ? 'fade' : ''
+
+        if (this.isShown && this.options.backdrop) {
+          var doAnimate = $.support.transition && animate
+
+          this.$backdrop = $('<div class="modal-backdrop ' + animate + '" />')
+            .appendTo(document.body)
+
+          this.$backdrop.click(
+            this.options.backdrop == 'static' ?
+              $.proxy(this.$element[0].focus, this.$element[0])
+            : $.proxy(this.hide, this)
+          )
+
+          if (doAnimate) this.$backdrop[0].offsetWidth // force reflow
+
+          this.$backdrop.addClass('in')
+
+          if (!callback) return
+
+          doAnimate ?
+            this.$backdrop.one($.support.transition.end, callback) :
+            callback()
+
+        } else if (!this.isShown && this.$backdrop) {
+          this.$backdrop.removeClass('in')
+
+          $.support.transition && this.$element.hasClass('fade')?
+            this.$backdrop.one($.support.transition.end, callback) :
+            callback()
+
+        } else if (callback) {
+          callback()
+        }
+      }
+  }
+
+
+ /* MODAL PLUGIN DEFINITION
+  * ======================= */
+
+  var old = $.fn.modal
+
+  $.fn.modal = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('modal')
+        , options = $.extend({}, $.fn.modal.defaults, $this.data(), typeof option == 'object' && option)
+      if (!data) $this.data('modal', (data = new Modal(this, options)))
+      if (typeof option == 'string') data[option]()
+      else if (options.show) data.show()
+    })
+  }
+
+  $.fn.modal.defaults = {
+      backdrop: true
+    , keyboard: true
+    , show: true
+  }
+
+  $.fn.modal.Constructor = Modal
+
+
+ /* MODAL NO CONFLICT
+  * ================= */
+
+  $.fn.modal.noConflict = function () {
+    $.fn.modal = old
+    return this
+  }
+
+
+ /* MODAL DATA-API
+  * ============== */
+
+  $(document).on('click.modal.data-api', '[data-toggle="modal"]', function (e) {
+    var $this = $(this)
+      , href = $this.attr('href')
+      , $target = $($this.attr('data-target') || (href && href.replace(/.*(?=#[^\s]+$)/, ''))) //strip for 
ie7
+      , option = $target.data('modal') ? 'toggle' : $.extend({ remote:!/#/.test(href) && href }, 
$target.data(), $this.data())
+
+    e.preventDefault()
+
+    $target
+      .modal(option)
+      .one('hide', function () {
+        $this.focus()
+      })
+  })
+
+}(window.jQuery);
+/* ===========================================================
+ * bootstrap-tooltip.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#tooltips
+ * Inspired by the original jQuery.tipsy by Jason Frame
+ * ===========================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ========================================================== */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* TOOLTIP PUBLIC CLASS DEFINITION
+  * =============================== */
+
+  var Tooltip = function (element, options) {
+    this.init('tooltip', element, options)
+  }
+
+  Tooltip.prototype = {
+
+    constructor: Tooltip
+
+  , init: function (type, element, options) {
+      var eventIn
+        , eventOut
+        , triggers
+        , trigger
+        , i
+
+      this.type = type
+      this.$element = $(element)
+      this.options = this.getOptions(options)
+      this.enabled = true
+
+      triggers = this.options.trigger.split(' ')
+
+      for (i = triggers.length; i--;) {
+        trigger = triggers[i]
+        if (trigger == 'click') {
+          this.$element.on('click.' + this.type, this.options.selector, $.proxy(this.toggle, this))
+        } else if (trigger != 'manual') {
+          eventIn = trigger == 'hover' ? 'mouseenter' : 'focus'
+          eventOut = trigger == 'hover' ? 'mouseleave' : 'blur'
+          this.$element.on(eventIn + '.' + this.type, this.options.selector, $.proxy(this.enter, this))
+          this.$element.on(eventOut + '.' + this.type, this.options.selector, $.proxy(this.leave, this))
+        }
+      }
+
+      this.options.selector ?
+        (this._options = $.extend({}, this.options, { trigger: 'manual', selector: '' })) :
+        this.fixTitle()
+    }
+
+  , getOptions: function (options) {
+      options = $.extend({}, $.fn[this.type].defaults, this.$element.data(), options)
+
+      if (options.delay && typeof options.delay == 'number') {
+        options.delay = {
+          show: options.delay
+        , hide: options.delay
+        }
+      }
+
+      return options
+    }
+
+  , enter: function (e) {
+      var defaults = $.fn[this.type].defaults
+        , options = {}
+        , self
+
+      this._options && $.each(this._options, function (key, value) {
+        if (defaults[key] != value) options[key] = value
+      }, this)
+
+      self = $(e.currentTarget)[this.type](options).data(this.type)
+
+      if (!self.options.delay || !self.options.delay.show) return self.show()
+
+      clearTimeout(this.timeout)
+      self.hoverState = 'in'
+      this.timeout = setTimeout(function() {
+        if (self.hoverState == 'in') self.show()
+      }, self.options.delay.show)
+    }
+
+  , leave: function (e) {
+      var self = $(e.currentTarget)[this.type](this._options).data(this.type)
+
+      if (this.timeout) clearTimeout(this.timeout)
+      if (!self.options.delay || !self.options.delay.hide) return self.hide()
+
+      self.hoverState = 'out'
+      this.timeout = setTimeout(function() {
+        if (self.hoverState == 'out') self.hide()
+      }, self.options.delay.hide)
+    }
+
+  , show: function () {
+      var $tip
+        , pos
+        , actualWidth
+        , actualHeight
+        , placement
+        , tp
+        , e = $.Event('show')
+
+      if (this.hasContent() && this.enabled) {
+        this.$element.trigger(e)
+        if (e.isDefaultPrevented()) return
+        $tip = this.tip()
+        this.setContent()
+
+        if (this.options.animation) {
+          $tip.addClass('fade')
+        }
+
+        placement = typeof this.options.placement == 'function' ?
+          this.options.placement.call(this, $tip[0], this.$element[0]) :
+          this.options.placement
+
+        $tip
+          .detach()
+          .css({ top: 0, left: 0, display: 'block' })
+
+        this.options.container ? $tip.appendTo(this.options.container) : $tip.insertAfter(this.$element)
+
+        pos = this.getPosition()
+
+        actualWidth = $tip[0].offsetWidth
+        actualHeight = $tip[0].offsetHeight
+
+        switch (placement) {
+          case 'bottom':
+            tp = {top: pos.top + pos.height, left: pos.left + pos.width / 2 - actualWidth / 2}
+            break
+          case 'top':
+            tp = {top: pos.top - actualHeight, left: pos.left + pos.width / 2 - actualWidth / 2}
+            break
+          case 'left':
+            tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left - actualWidth}
+            break
+          case 'right':
+            tp = {top: pos.top + pos.height / 2 - actualHeight / 2, left: pos.left + pos.width}
+            break
+        }
+
+        this.applyPlacement(tp, placement)
+        this.$element.trigger('shown')
+      }
+    }
+
+  , applyPlacement: function(offset, placement){
+      var $tip = this.tip()
+        , width = $tip[0].offsetWidth
+        , height = $tip[0].offsetHeight
+        , actualWidth
+        , actualHeight
+        , delta
+        , replace
+
+      $tip
+        .offset(offset)
+        .addClass(placement)
+        .addClass('in')
+
+      actualWidth = $tip[0].offsetWidth
+      actualHeight = $tip[0].offsetHeight
+
+      if (placement == 'top' && actualHeight != height) {
+        offset.top = offset.top + height - actualHeight
+        replace = true
+      }
+
+      if (placement == 'bottom' || placement == 'top') {
+        delta = 0
+
+        if (offset.left < 0){
+          delta = offset.left * -2
+          offset.left = 0
+          $tip.offset(offset)
+          actualWidth = $tip[0].offsetWidth
+          actualHeight = $tip[0].offsetHeight
+        }
+
+        this.replaceArrow(delta - width + actualWidth, actualWidth, 'left')
+      } else {
+        this.replaceArrow(actualHeight - height, actualHeight, 'top')
+      }
+
+      if (replace) $tip.offset(offset)
+    }
+
+  , replaceArrow: function(delta, dimension, position){
+      this
+        .arrow()
+        .css(position, delta ? (50 * (1 - delta / dimension) + "%") : '')
+    }
+
+  , setContent: function () {
+      var $tip = this.tip()
+        , title = this.getTitle()
+
+      $tip.find('.tooltip-inner')[this.options.html ? 'html' : 'text'](title)
+      $tip.removeClass('fade in top bottom left right')
+    }
+
+  , hide: function () {
+      var that = this
+        , $tip = this.tip()
+        , e = $.Event('hide')
+
+      this.$element.trigger(e)
+      if (e.isDefaultPrevented()) return
+
+      $tip.removeClass('in')
+
+      function removeWithAnimation() {
+        var timeout = setTimeout(function () {
+          $tip.off($.support.transition.end).detach()
+        }, 500)
+
+        $tip.one($.support.transition.end, function () {
+          clearTimeout(timeout)
+          $tip.detach()
+        })
+      }
+
+      $.support.transition && this.$tip.hasClass('fade') ?
+        removeWithAnimation() :
+        $tip.detach()
+
+      this.$element.trigger('hidden')
+
+      return this
+    }
+
+  , fixTitle: function () {
+      var $e = this.$element
+      if ($e.attr('title') || typeof($e.attr('data-original-title')) != 'string') {
+        $e.attr('data-original-title', $e.attr('title') || '').attr('title', '')
+      }
+    }
+
+  , hasContent: function () {
+      return this.getTitle()
+    }
+
+  , getPosition: function () {
+      var el = this.$element[0]
+      return $.extend({}, (typeof el.getBoundingClientRect == 'function') ? el.getBoundingClientRect() : {
+        width: el.offsetWidth
+      , height: el.offsetHeight
+      }, this.$element.offset())
+    }
+
+  , getTitle: function () {
+      var title
+        , $e = this.$element
+        , o = this.options
+
+      title = $e.attr('data-original-title')
+        || (typeof o.title == 'function' ? o.title.call($e[0]) :  o.title)
+
+      return title
+    }
+
+  , tip: function () {
+      return this.$tip = this.$tip || $(this.options.template)
+    }
+
+  , arrow: function(){
+      return this.$arrow = this.$arrow || this.tip().find(".tooltip-arrow")
+    }
+
+  , validate: function () {
+      if (!this.$element[0].parentNode) {
+        this.hide()
+        this.$element = null
+        this.options = null
+      }
+    }
+
+  , enable: function () {
+      this.enabled = true
+    }
+
+  , disable: function () {
+      this.enabled = false
+    }
+
+  , toggleEnabled: function () {
+      this.enabled = !this.enabled
+    }
+
+  , toggle: function (e) {
+      var self = e ? $(e.currentTarget)[this.type](this._options).data(this.type) : this
+      self.tip().hasClass('in') ? self.hide() : self.show()
+    }
+
+  , destroy: function () {
+      this.hide().$element.off('.' + this.type).removeData(this.type)
+    }
+
+  }
+
+
+ /* TOOLTIP PLUGIN DEFINITION
+  * ========================= */
+
+  var old = $.fn.tooltip
+
+  $.fn.tooltip = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('tooltip')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('tooltip', (data = new Tooltip(this, options)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.tooltip.Constructor = Tooltip
+
+  $.fn.tooltip.defaults = {
+    animation: true
+  , placement: 'top'
+  , selector: false
+  , template: '<div class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-inner"></div></div>'
+  , trigger: 'hover focus'
+  , title: ''
+  , delay: 0
+  , html: false
+  , container: false
+  }
+
+
+ /* TOOLTIP NO CONFLICT
+  * =================== */
+
+  $.fn.tooltip.noConflict = function () {
+    $.fn.tooltip = old
+    return this
+  }
+
+}(window.jQuery);
+/* ===========================================================
+ * bootstrap-popover.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#popovers
+ * ===========================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * =========================================================== */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* POPOVER PUBLIC CLASS DEFINITION
+  * =============================== */
+
+  var Popover = function (element, options) {
+    this.init('popover', element, options)
+  }
+
+
+  /* NOTE: POPOVER EXTENDS BOOTSTRAP-TOOLTIP.js
+     ========================================== */
+
+  Popover.prototype = $.extend({}, $.fn.tooltip.Constructor.prototype, {
+
+    constructor: Popover
+
+  , setContent: function () {
+      var $tip = this.tip()
+        , title = this.getTitle()
+        , content = this.getContent()
+
+      $tip.find('.popover-title')[this.options.html ? 'html' : 'text'](title)
+      $tip.find('.popover-content')[this.options.html ? 'html' : 'text'](content)
+
+      $tip.removeClass('fade top bottom left right in')
+    }
+
+  , hasContent: function () {
+      return this.getTitle() || this.getContent()
+    }
+
+  , getContent: function () {
+      var content
+        , $e = this.$element
+        , o = this.options
+
+      content = (typeof o.content == 'function' ? o.content.call($e[0]) :  o.content)
+        || $e.attr('data-content')
+
+      return content
+    }
+
+  , tip: function () {
+      if (!this.$tip) {
+        this.$tip = $(this.options.template)
+      }
+      return this.$tip
+    }
+
+  , destroy: function () {
+      this.hide().$element.off('.' + this.type).removeData(this.type)
+    }
+
+  })
+
+
+ /* POPOVER PLUGIN DEFINITION
+  * ======================= */
+
+  var old = $.fn.popover
+
+  $.fn.popover = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('popover')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('popover', (data = new Popover(this, options)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.popover.Constructor = Popover
+
+  $.fn.popover.defaults = $.extend({} , $.fn.tooltip.defaults, {
+    placement: 'right'
+  , trigger: 'click'
+  , content: ''
+  , template: '<div class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div 
class="popover-content"></div></div>'
+  })
+
+
+ /* POPOVER NO CONFLICT
+  * =================== */
+
+  $.fn.popover.noConflict = function () {
+    $.fn.popover = old
+    return this
+  }
+
+}(window.jQuery);
+/* =============================================================
+ * bootstrap-scrollspy.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#scrollspy
+ * =============================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============================================================== */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* SCROLLSPY CLASS DEFINITION
+  * ========================== */
+
+  function ScrollSpy(element, options) {
+    var process = $.proxy(this.process, this)
+      , $element = $(element).is('body') ? $(window) : $(element)
+      , href
+    this.options = $.extend({}, $.fn.scrollspy.defaults, options)
+    this.$scrollElement = $element.on('scroll.scroll-spy.data-api', process)
+    this.selector = (this.options.target
+      || ((href = $(element).attr('href')) && href.replace(/.*(?=#[^\s]+$)/, '')) //strip for ie7
+      || '') + ' .nav li > a'
+    this.$body = $('body')
+    this.refresh()
+    this.process()
+  }
+
+  ScrollSpy.prototype = {
+
+      constructor: ScrollSpy
+
+    , refresh: function () {
+        var self = this
+          , $targets
+
+        this.offsets = $([])
+        this.targets = $([])
+
+        $targets = this.$body
+          .find(this.selector)
+          .map(function () {
+            var $el = $(this)
+              , href = $el.data('target') || $el.attr('href')
+              , $href = /^#\w/.test(href) && $(href)
+            return ( $href
+              && $href.length
+              && [[ $href.position().top + (!$.isWindow(self.$scrollElement.get(0)) && 
self.$scrollElement.scrollTop()), href ]] ) || null
+          })
+          .sort(function (a, b) { return a[0] - b[0] })
+          .each(function () {
+            self.offsets.push(this[0])
+            self.targets.push(this[1])
+          })
+      }
+
+    , process: function () {
+        var scrollTop = this.$scrollElement.scrollTop() + this.options.offset
+          , scrollHeight = this.$scrollElement[0].scrollHeight || this.$body[0].scrollHeight
+          , maxScroll = scrollHeight - this.$scrollElement.height()
+          , offsets = this.offsets
+          , targets = this.targets
+          , activeTarget = this.activeTarget
+          , i
+
+        if (scrollTop >= maxScroll) {
+          return activeTarget != (i = targets.last()[0])
+            && this.activate ( i )
+        }
+
+        for (i = offsets.length; i--;) {
+          activeTarget != targets[i]
+            && scrollTop >= offsets[i]
+            && (!offsets[i + 1] || scrollTop <= offsets[i + 1])
+            && this.activate( targets[i] )
+        }
+      }
+
+    , activate: function (target) {
+        var active
+          , selector
+
+        this.activeTarget = target
+
+        $(this.selector)
+          .parent('.active')
+          .removeClass('active')
+
+        selector = this.selector
+          + '[data-target="' + target + '"],'
+          + this.selector + '[href="' + target + '"]'
+
+        active = $(selector)
+          .parent('li')
+          .addClass('active')
+
+        if (active.parent('.dropdown-menu').length)  {
+          active = active.closest('li.dropdown').addClass('active')
+        }
+
+        active.trigger('activate')
+      }
+
+  }
+
+
+ /* SCROLLSPY PLUGIN DEFINITION
+  * =========================== */
+
+  var old = $.fn.scrollspy
+
+  $.fn.scrollspy = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('scrollspy')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('scrollspy', (data = new ScrollSpy(this, options)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.scrollspy.Constructor = ScrollSpy
+
+  $.fn.scrollspy.defaults = {
+    offset: 10
+  }
+
+
+ /* SCROLLSPY NO CONFLICT
+  * ===================== */
+
+  $.fn.scrollspy.noConflict = function () {
+    $.fn.scrollspy = old
+    return this
+  }
+
+
+ /* SCROLLSPY DATA-API
+  * ================== */
+
+  $(window).on('load', function () {
+    $('[data-spy="scroll"]').each(function () {
+      var $spy = $(this)
+      $spy.scrollspy($spy.data())
+    })
+  })
+
+}(window.jQuery);/* ========================================================
+ * bootstrap-tab.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#tabs
+ * ========================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ======================================================== */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* TAB CLASS DEFINITION
+  * ==================== */
+
+  var Tab = function (element) {
+    this.element = $(element)
+  }
+
+  Tab.prototype = {
+
+    constructor: Tab
+
+  , show: function () {
+      var $this = this.element
+        , $ul = $this.closest('ul:not(.dropdown-menu)')
+        , selector = $this.attr('data-target')
+        , previous
+        , $target
+        , e
+
+      if (!selector) {
+        selector = $this.attr('href')
+        selector = selector && selector.replace(/.*(?=#[^\s]*$)/, '') //strip for ie7
+      }
+
+      if ( $this.parent('li').hasClass('active') ) return
+
+      previous = $ul.find('.active:last a')[0]
+
+      e = $.Event('show', {
+        relatedTarget: previous
+      })
+
+      $this.trigger(e)
+
+      if (e.isDefaultPrevented()) return
+
+      $target = $(selector)
+
+      this.activate($this.parent('li'), $ul)
+      this.activate($target, $target.parent(), function () {
+        $this.trigger({
+          type: 'shown'
+        , relatedTarget: previous
+        })
+      })
+    }
+
+  , activate: function ( element, container, callback) {
+      var $active = container.find('> .active')
+        , transition = callback
+            && $.support.transition
+            && $active.hasClass('fade')
+
+      function next() {
+        $active
+          .removeClass('active')
+          .find('> .dropdown-menu > .active')
+          .removeClass('active')
+
+        element.addClass('active')
+
+        if (transition) {
+          element[0].offsetWidth // reflow for transition
+          element.addClass('in')
+        } else {
+          element.removeClass('fade')
+        }
+
+        if ( element.parent('.dropdown-menu') ) {
+          element.closest('li.dropdown').addClass('active')
+        }
+
+        callback && callback()
+      }
+
+      transition ?
+        $active.one($.support.transition.end, next) :
+        next()
+
+      $active.removeClass('in')
+    }
+  }
+
+
+ /* TAB PLUGIN DEFINITION
+  * ===================== */
+
+  var old = $.fn.tab
+
+  $.fn.tab = function ( option ) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('tab')
+      if (!data) $this.data('tab', (data = new Tab(this)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.tab.Constructor = Tab
+
+
+ /* TAB NO CONFLICT
+  * =============== */
+
+  $.fn.tab.noConflict = function () {
+    $.fn.tab = old
+    return this
+  }
+
+
+ /* TAB DATA-API
+  * ============ */
+
+  $(document).on('click.tab.data-api', '[data-toggle="tab"], [data-toggle="pill"]', function (e) {
+    e.preventDefault()
+    $(this).tab('show')
+  })
+
+}(window.jQuery);/* =============================================================
+ * bootstrap-typeahead.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#typeahead
+ * =============================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ============================================================ */
+
+
+!function($){
+
+  "use strict"; // jshint ;_;
+
+
+ /* TYPEAHEAD PUBLIC CLASS DEFINITION
+  * ================================= */
+
+  var Typeahead = function (element, options) {
+    this.$element = $(element)
+    this.options = $.extend({}, $.fn.typeahead.defaults, options)
+    this.matcher = this.options.matcher || this.matcher
+    this.sorter = this.options.sorter || this.sorter
+    this.highlighter = this.options.highlighter || this.highlighter
+    this.updater = this.options.updater || this.updater
+    this.source = this.options.source
+    this.$menu = $(this.options.menu)
+    this.shown = false
+    this.listen()
+  }
+
+  Typeahead.prototype = {
+
+    constructor: Typeahead
+
+  , select: function () {
+      var val = this.$menu.find('.active').attr('data-value')
+      this.$element
+        .val(this.updater(val))
+        .change()
+      return this.hide()
+    }
+
+  , updater: function (item) {
+      return item
+    }
+
+  , show: function () {
+      var pos = $.extend({}, this.$element.position(), {
+        height: this.$element[0].offsetHeight
+      })
+
+      this.$menu
+        .insertAfter(this.$element)
+        .css({
+          top: pos.top + pos.height
+        , left: pos.left
+        })
+        .show()
+
+      this.shown = true
+      return this
+    }
+
+  , hide: function () {
+      this.$menu.hide()
+      this.shown = false
+      return this
+    }
+
+  , lookup: function (event) {
+      var items
+
+      this.query = this.$element.val()
+
+      if (!this.query || this.query.length < this.options.minLength) {
+        return this.shown ? this.hide() : this
+      }
+
+      items = $.isFunction(this.source) ? this.source(this.query, $.proxy(this.process, this)) : this.source
+
+      return items ? this.process(items) : this
+    }
+
+  , process: function (items) {
+      var that = this
+
+      items = $.grep(items, function (item) {
+        return that.matcher(item)
+      })
+
+      items = this.sorter(items)
+
+      if (!items.length) {
+        return this.shown ? this.hide() : this
+      }
+
+      return this.render(items.slice(0, this.options.items)).show()
+    }
+
+  , matcher: function (item) {
+      return ~item.toLowerCase().indexOf(this.query.toLowerCase())
+    }
+
+  , sorter: function (items) {
+      var beginswith = []
+        , caseSensitive = []
+        , caseInsensitive = []
+        , item
+
+      while (item = items.shift()) {
+        if (!item.toLowerCase().indexOf(this.query.toLowerCase())) beginswith.push(item)
+        else if (~item.indexOf(this.query)) caseSensitive.push(item)
+        else caseInsensitive.push(item)
+      }
+
+      return beginswith.concat(caseSensitive, caseInsensitive)
+    }
+
+  , highlighter: function (item) {
+      var query = this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g, '\\$&')
+      return item.replace(new RegExp('(' + query + ')', 'ig'), function ($1, match) {
+        return '<strong>' + match + '</strong>'
+      })
+    }
+
+  , render: function (items) {
+      var that = this
+
+      items = $(items).map(function (i, item) {
+        i = $(that.options.item).attr('data-value', item)
+        i.find('a').html(that.highlighter(item))
+        return i[0]
+      })
+
+      items.first().addClass('active')
+      this.$menu.html(items)
+      return this
+    }
+
+  , next: function (event) {
+      var active = this.$menu.find('.active').removeClass('active')
+        , next = active.next()
+
+      if (!next.length) {
+        next = $(this.$menu.find('li')[0])
+      }
+
+      next.addClass('active')
+    }
+
+  , prev: function (event) {
+      var active = this.$menu.find('.active').removeClass('active')
+        , prev = active.prev()
+
+      if (!prev.length) {
+        prev = this.$menu.find('li').last()
+      }
+
+      prev.addClass('active')
+    }
+
+  , listen: function () {
+      this.$element
+        .on('focus',    $.proxy(this.focus, this))
+        .on('blur',     $.proxy(this.blur, this))
+        .on('keypress', $.proxy(this.keypress, this))
+        .on('keyup',    $.proxy(this.keyup, this))
+
+      if (this.eventSupported('keydown')) {
+        this.$element.on('keydown', $.proxy(this.keydown, this))
+      }
+
+      this.$menu
+        .on('click', $.proxy(this.click, this))
+        .on('mouseenter', 'li', $.proxy(this.mouseenter, this))
+        .on('mouseleave', 'li', $.proxy(this.mouseleave, this))
+    }
+
+  , eventSupported: function(eventName) {
+      var isSupported = eventName in this.$element
+      if (!isSupported) {
+        this.$element.setAttribute(eventName, 'return;')
+        isSupported = typeof this.$element[eventName] === 'function'
+      }
+      return isSupported
+    }
+
+  , move: function (e) {
+      if (!this.shown) return
+
+      switch(e.keyCode) {
+        case 9: // tab
+        case 13: // enter
+        case 27: // escape
+          e.preventDefault()
+          break
+
+        case 38: // up arrow
+          e.preventDefault()
+          this.prev()
+          break
+
+        case 40: // down arrow
+          e.preventDefault()
+          this.next()
+          break
+      }
+
+      e.stopPropagation()
+    }
+
+  , keydown: function (e) {
+      this.suppressKeyPressRepeat = ~$.inArray(e.keyCode, [40,38,9,13,27])
+      this.move(e)
+    }
+
+  , keypress: function (e) {
+      if (this.suppressKeyPressRepeat) return
+      this.move(e)
+    }
+
+  , keyup: function (e) {
+      switch(e.keyCode) {
+        case 40: // down arrow
+        case 38: // up arrow
+        case 16: // shift
+        case 17: // ctrl
+        case 18: // alt
+          break
+
+        case 9: // tab
+        case 13: // enter
+          if (!this.shown) return
+          this.select()
+          break
+
+        case 27: // escape
+          if (!this.shown) return
+          this.hide()
+          break
+
+        default:
+          this.lookup()
+      }
+
+      e.stopPropagation()
+      e.preventDefault()
+  }
+
+  , focus: function (e) {
+      this.focused = true
+    }
+
+  , blur: function (e) {
+      this.focused = false
+      if (!this.mousedover && this.shown) this.hide()
+    }
+
+  , click: function (e) {
+      e.stopPropagation()
+      e.preventDefault()
+      this.select()
+      this.$element.focus()
+    }
+
+  , mouseenter: function (e) {
+      this.mousedover = true
+      this.$menu.find('.active').removeClass('active')
+      $(e.currentTarget).addClass('active')
+    }
+
+  , mouseleave: function (e) {
+      this.mousedover = false
+      if (!this.focused && this.shown) this.hide()
+    }
+
+  }
+
+
+  /* TYPEAHEAD PLUGIN DEFINITION
+   * =========================== */
+
+  var old = $.fn.typeahead
+
+  $.fn.typeahead = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('typeahead')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('typeahead', (data = new Typeahead(this, options)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.typeahead.defaults = {
+    source: []
+  , items: 8
+  , menu: '<ul class="typeahead dropdown-menu"></ul>'
+  , item: '<li><a href="#"></a></li>'
+  , minLength: 1
+  }
+
+  $.fn.typeahead.Constructor = Typeahead
+
+
+ /* TYPEAHEAD NO CONFLICT
+  * =================== */
+
+  $.fn.typeahead.noConflict = function () {
+    $.fn.typeahead = old
+    return this
+  }
+
+
+ /* TYPEAHEAD DATA-API
+  * ================== */
+
+  $(document).on('focus.typeahead.data-api', '[data-provide="typeahead"]', function (e) {
+    var $this = $(this)
+    if ($this.data('typeahead')) return
+    $this.typeahead($this.data())
+  })
+
+}(window.jQuery);
+/* ==========================================================
+ * bootstrap-affix.js v2.3.2
+ * http://getbootstrap.com/2.3.2/javascript.html#affix
+ * ==========================================================
+ * Copyright 2013 Twitter, Inc.
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ * http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ * ========================================================== */
+
+
+!function ($) {
+
+  "use strict"; // jshint ;_;
+
+
+ /* AFFIX CLASS DEFINITION
+  * ====================== */
+
+  var Affix = function (element, options) {
+    this.options = $.extend({}, $.fn.affix.defaults, options)
+    this.$window = $(window)
+      .on('scroll.affix.data-api', $.proxy(this.checkPosition, this))
+      .on('click.affix.data-api',  $.proxy(function () { setTimeout($.proxy(this.checkPosition, this), 1) }, 
this))
+    this.$element = $(element)
+    this.checkPosition()
+  }
+
+  Affix.prototype.checkPosition = function () {
+    if (!this.$element.is(':visible')) return
+
+    var scrollHeight = $(document).height()
+      , scrollTop = this.$window.scrollTop()
+      , position = this.$element.offset()
+      , offset = this.options.offset
+      , offsetBottom = offset.bottom
+      , offsetTop = offset.top
+      , reset = 'affix affix-top affix-bottom'
+      , affix
+
+    if (typeof offset != 'object') offsetBottom = offsetTop = offset
+    if (typeof offsetTop == 'function') offsetTop = offset.top()
+    if (typeof offsetBottom == 'function') offsetBottom = offset.bottom()
+
+    affix = this.unpin != null && (scrollTop + this.unpin <= position.top) ?
+      false    : offsetBottom != null && (position.top + this.$element.height() >= scrollHeight - 
offsetBottom) ?
+      'bottom' : offsetTop != null && scrollTop <= offsetTop ?
+      'top'    : false
+
+    if (this.affixed === affix) return
+
+    this.affixed = affix
+    this.unpin = affix == 'bottom' ? position.top - scrollTop : null
+
+    this.$element.removeClass(reset).addClass('affix' + (affix ? '-' + affix : ''))
+  }
+
+
+ /* AFFIX PLUGIN DEFINITION
+  * ======================= */
+
+  var old = $.fn.affix
+
+  $.fn.affix = function (option) {
+    return this.each(function () {
+      var $this = $(this)
+        , data = $this.data('affix')
+        , options = typeof option == 'object' && option
+      if (!data) $this.data('affix', (data = new Affix(this, options)))
+      if (typeof option == 'string') data[option]()
+    })
+  }
+
+  $.fn.affix.Constructor = Affix
+
+  $.fn.affix.defaults = {
+    offset: 0
+  }
+
+
+ /* AFFIX NO CONFLICT
+  * ================= */
+
+  $.fn.affix.noConflict = function () {
+    $.fn.affix = old
+    return this
+  }
+
+
+ /* AFFIX DATA-API
+  * ============== */
+
+  $(window).on('load', function () {
+    $('[data-spy="affix"]').each(function () {
+      var $spy = $(this)
+        , data = $spy.data()
+
+      data.offset = data.offset || {}
+
+      data.offsetBottom && (data.offset.bottom = data.offsetBottom)
+      data.offsetTop && (data.offset.top = data.offsetTop)
+
+      $spy.affix(data)
+    })
+  })
+
+
+}(window.jQuery);
\ No newline at end of file
diff --git a/skins/easterngreen/js/bootstrap.min.js b/skins/easterngreen/js/bootstrap.min.js
new file mode 100644
index 0000000..848258d
--- /dev/null
+++ b/skins/easterngreen/js/bootstrap.min.js
@@ -0,0 +1,6 @@
+/*!
+* Bootstrap.js by @fat & @mdo
+* Copyright 2013 Twitter, Inc.
+* http://www.apache.org/licenses/LICENSE-2.0.txt
+*/
+!function(e){"use strict";e(function(){e.support.transition=function(){var e=function(){var 
e=document.createElement("bootstrap"),t={WebkitTransition:"webkitTransitionEnd",MozTransition:"transitionend",OTransition:"oTransitionEnd
 otransitionend",transition:"transitionend"},n;for(n in t)if(e.style[n]!==undefined)return t[n]}();return 
e&&{end:e}}()})}(window.jQuery),!function(e){"use strict";var 
t='[data-dismiss="alert"]',n=function(n){e(n).on("click",t,this.close)};n.prototype.close=function(t){function
 s(){i.trigger("closed").remove()}var 
n=e(this),r=n.attr("data-target"),i;r||(r=n.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,"")),i=e(r),t&&t.preventDefault(),i.length||(i=n.hasClass("alert")?n:n.parent()),i.trigger(t=e.Event("close"));if(t.isDefaultPrevented())return;i.removeClass("in"),e.support.transition&&i.hasClass("fade")?i.on(e.support.transition.end,s):s()};var
 r=e.fn.alert;e.fn.alert=function(t){return this.each(function(){var r=e(this),i=r.data("alert");i||r.data("a
 lert",i=new n(this)),typeof 
t=="string"&&i[t].call(r)})},e.fn.alert.Constructor=n,e.fn.alert.noConflict=function(){return 
e.fn.alert=r,this},e(document).on("click.alert.data-api",t,n.prototype.close)}(window.jQuery),!function(e){"use
 strict";var 
t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.button.defaults,n)};t.prototype.setState=function(e){var
 
t="disabled",n=this.$element,r=n.data(),i=n.is("input")?"val":"html";e+="Text",r.resetText||n.data("resetText",n[i]()),n[i](r[e]||this.options[e]),setTimeout(function(){e=="loadingText"?n.addClass(t).attr(t,t):n.removeClass(t).removeAttr(t)},0)},t.prototype.toggle=function(){var
 
e=this.$element.closest('[data-toggle="buttons-radio"]');e&&e.find(".active").removeClass("active"),this.$element.toggleClass("active")};var
 n=e.fn.button;e.fn.button=function(n){return this.each(function(){var r=e(this),i=r.data("button"),s=typeof 
n=="object"&&n;i||r.data("button",i=new t(this,s)),n=="toggle"?i.toggle():n&&i.setState(n)})
 
},e.fn.button.defaults={loadingText:"loading..."},e.fn.button.Constructor=t,e.fn.button.noConflict=function(){return
 e.fn.button=n,this},e(document).on("click.button.data-api","[data-toggle^=button]",function(t){var 
n=e(t.target);n.hasClass("btn")||(n=n.closest(".btn")),n.button("toggle")})}(window.jQuery),!function(e){"use 
strict";var 
t=function(t,n){this.$element=e(t),this.$indicators=this.$element.find(".carousel-indicators"),this.options=n,this.options.pause=="hover"&&this.$element.on("mouseenter",e.proxy(this.pause,this)).on("mouseleave",e.proxy(this.cycle,this))};t.prototype={cycle:function(t){return
 
t||(this.paused=!1),this.interval&&clearInterval(this.interval),this.options.interval&&!this.paused&&(this.interval=setInterval(e.proxy(this.next,this),this.options.interval)),this},getActiveIndex:function(){return
 
this.$active=this.$element.find(".item.active"),this.$items=this.$active.parent().children(),this.$items.index(this.$active)},to:function(t){var
 n=this.getActiv
 eIndex(),r=this;if(t>this.$items.length-1||t<0)return;return 
this.sliding?this.$element.one("slid",function(){r.to(t)}):n==t?this.pause().cycle():this.slide(t>n?"next":"prev",e(this.$items[t]))},pause:function(t){return
 t||(this.paused=!0),this.$element.find(".next, 
.prev").length&&e.support.transition.end&&(this.$element.trigger(e.support.transition.end),this.cycle(!0)),clearInterval(this.interval),this.interval=null,this},next:function(){if(this.sliding)return;return
 this.slide("next")},prev:function(){if(this.sliding)return;return 
this.slide("prev")},slide:function(t,n){var 
r=this.$element.find(".item.active"),i=n||r[t](),s=this.interval,o=t=="next"?"left":"right",u=t=="next"?"first":"last",a=this,f;this.sliding=!0,s&&this.pause(),i=i.length?i:this.$element.find(".item")[u](),f=e.Event("slide",{relatedTarget:i[0],direction:o});if(i.hasClass("active"))return;this.$indicators.length&&(this.$indicators.find(".active").removeClass("active"),this.$element.one("slid",function()
 {var 
t=e(a.$indicators.children()[a.getActiveIndex()]);t&&t.addClass("active")}));if(e.support.transition&&this.$element.hasClass("slide")){this.$element.trigger(f);if(f.isDefaultPrevented())return;i.addClass(t),i[0].offsetWidth,r.addClass(o),i.addClass(o),this.$element.one(e.support.transition.end,function(){i.removeClass([t,o].join("
 ")).addClass("active"),r.removeClass(["active",o].join(" 
")),a.sliding=!1,setTimeout(function(){a.$element.trigger("slid")},0)})}else{this.$element.trigger(f);if(f.isDefaultPrevented())return;r.removeClass("active"),i.addClass("active"),this.sliding=!1,this.$element.trigger("slid")}return
 s&&this.cycle(),this}};var n=e.fn.carousel;e.fn.carousel=function(n){return this.each(function(){var 
r=e(this),i=r.data("carousel"),s=e.extend({},e.fn.carousel.defaults,typeof n=="object"&&n),o=typeof 
n=="string"?n:s.slide;i||r.data("carousel",i=new t(this,s)),typeof 
n=="number"?i.to(n):o?i[o]():s.interval&&i.pause().cycle()})},e.fn.carousel.defaults={interva
 l:5e3,pause:"hover"},e.fn.carousel.Constructor=t,e.fn.carousel.noConflict=function(){return 
e.fn.carousel=n,this},e(document).on("click.carousel.data-api","[data-slide], 
[data-slide-to]",function(t){var 
n=e(this),r,i=e(n.attr("data-target")||(r=n.attr("href"))&&r.replace(/.*(?=#[^\s]+$)/,"")),s=e.extend({},i.data(),n.data()),o;i.carousel(s),(o=n.attr("data-slide-to"))&&i.data("carousel").pause().to(o).cycle(),t.preventDefault()})}(window.jQuery),!function(e){"use
 strict";var 
t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.collapse.defaults,n),this.options.parent&&(this.$parent=e(this.options.parent)),this.options.toggle&&this.toggle()};t.prototype={constructor:t,dimension:function(){var
 e=this.$element.hasClass("width");return e?"width":"height"},show:function(){var 
t,n,r,i;if(this.transitioning||this.$element.hasClass("in"))return;t=this.dimension(),n=e.camelCase(["scroll",t].join("-")),r=this.$parent&&this.$parent.find(">
 .accordion-group > .in");if(r&&r.l
 
ength){i=r.data("collapse");if(i&&i.transitioning)return;r.collapse("hide"),i||r.data("collapse",null)}this.$element[t](0),this.transition("addClass",e.Event("show"),"shown"),e.support.transition&&this.$element[t](this.$element[0][n])},hide:function(){var
 
t;if(this.transitioning||!this.$element.hasClass("in"))return;t=this.dimension(),this.reset(this.$element[t]()),this.transition("removeClass",e.Event("hide"),"hidden"),this.$element[t](0)},reset:function(e){var
 t=this.dimension();return 
this.$element.removeClass("collapse")[t](e||"auto")[0].offsetWidth,this.$element[e!==null?"addClass":"removeClass"]("collapse"),this},transition:function(t,n,r){var
 
i=this,s=function(){n.type=="show"&&i.reset(),i.transitioning=0,i.$element.trigger(r)};this.$element.trigger(n);if(n.isDefaultPrevented())return;this.transitioning=1,this.$element[t]("in"),e.support.transition&&this.$element.hasClass("collapse")?this.$element.one(e.support.transition.end,s):s()},toggle:function(){this[this.$eleme
 nt.hasClass("in")?"hide":"show"]()}};var n=e.fn.collapse;e.fn.collapse=function(n){return 
this.each(function(){var r=e(this),i=r.data("collapse"),s=e.extend({},e.fn.collapse.defaults,r.data(),typeof 
n=="object"&&n);i||r.data("collapse",i=new t(this,s)),typeof 
n=="string"&&i[n]()})},e.fn.collapse.defaults={toggle:!0},e.fn.collapse.Constructor=t,e.fn.collapse.noConflict=function(){return
 e.fn.collapse=n,this},e(document).on("click.collapse.data-api","[data-toggle=collapse]",function(t){var 
n=e(this),r,i=n.attr("data-target")||t.preventDefault()||(r=n.attr("href"))&&r.replace(/.*(?=#[^\s]+$)/,""),s=e(i).data("collapse")?"toggle":n.data();n[e(i).hasClass("in")?"addClass":"removeClass"]("collapsed"),e(i).collapse(s)})}(window.jQuery),!function(e){"use
 strict";function 
r(){e(".dropdown-backdrop").remove(),e(t).each(function(){i(e(this)).removeClass("open")})}function i(t){var 
n=t.attr("data-target"),r;n||(n=t.attr("href"),n=n&&/#/.test(n)&&n.replace(/.*(?=#[^\s]*$)/,"")),r=n&&e(n)
 ;if(!r||!r.length)r=t.parent();return r}var t="[data-toggle=dropdown]",n=function(t){var 
n=e(t).on("click.dropdown.data-api",this.toggle);e("html").on("click.dropdown.data-api",function(){n.parent().removeClass("open")})};n.prototype={constructor:n,toggle:function(t){var
 n=e(this),s,o;if(n.is(".disabled, :disabled"))return;return 
s=i(n),o=s.hasClass("open"),r(),o||("ontouchstart"in document.documentElement&&e('<div 
class="dropdown-backdrop"/>').insertBefore(e(this)).on("click",r),s.toggleClass("open")),n.focus(),!1},keydown:function(n){var
 
r,s,o,u,a,f;if(!/(38|40|27)/.test(n.keyCode))return;r=e(this),n.preventDefault(),n.stopPropagation();if(r.is(".disabled,
 :disabled"))return;u=i(r),a=u.hasClass("open");if(!a||a&&n.keyCode==27)return 
n.which==27&&u.find(t).focus(),r.click();s=e("[role=menu] li:not(.divider):visible 
a",u);if(!s.length)return;f=s.index(s.filter(":focus")),n.keyCode==38&&f>0&&f--,n.keyCode==40&&f<s.length-1&&f++,~f||(f=0),s.eq(f).focus()}};var
 s=e.fn.dropdown;
 e.fn.dropdown=function(t){return this.each(function(){var 
r=e(this),i=r.data("dropdown");i||r.data("dropdown",i=new n(this)),typeof 
t=="string"&&i[t].call(r)})},e.fn.dropdown.Constructor=n,e.fn.dropdown.noConflict=function(){return 
e.fn.dropdown=s,this},e(document).on("click.dropdown.data-api",r).on("click.dropdown.data-api",".dropdown 
form",function(e){e.stopPropagation()}).on("click.dropdown.data-api",t,n.prototype.toggle).on("keydown.dropdown.data-api",t+",
 [role=menu]",n.prototype.keydown)}(window.jQuery),!function(e){"use strict";var 
t=function(t,n){this.options=n,this.$element=e(t).delegate('[data-dismiss="modal"]',"click.dismiss.modal",e.proxy(this.hide,this)),this.options.remote&&this.$element.find(".modal-body").load(this.options.remote)};t.prototype={constructor:t,toggle:function(){return
 this[this.isShown?"hide":"show"]()},show:function(){var 
t=this,n=e.Event("show");this.$element.trigger(n);if(this.isShown||n.isDefaultPrevented())return;this.isShown=!0,this.escap
 e(),this.backdrop(function(){var 
n=e.support.transition&&t.$element.hasClass("fade");t.$element.parent().length||t.$element.appendTo(document.body),t.$element.show(),n&&t.$element[0].offsetWidth,t.$element.addClass("in").attr("aria-hidden",!1),t.enforceFocus(),n?t.$element.one(e.support.transition.end,function(){t.$element.focus().trigger("shown")}):t.$element.focus().trigger("shown")})},hide:function(t){t&&t.preventDefault();var
 
n=this;t=e.Event("hide"),this.$element.trigger(t);if(!this.isShown||t.isDefaultPrevented())return;this.isShown=!1,this.escape(),e(document).off("focusin.modal"),this.$element.removeClass("in").attr("aria-hidden",!0),e.support.transition&&this.$element.hasClass("fade")?this.hideWithTransition():this.hideModal()},enforceFocus:function(){var
 
t=this;e(document).on("focusin.modal",function(e){t.$element[0]!==e.target&&!t.$element.has(e.target).length&&t.$element.focus()})},escape:function(){var
 e=this;this.isShown&&this.options.keyboard?this.$element.on(
 
"keyup.dismiss.modal",function(t){t.which==27&&e.hide()}):this.isShown||this.$element.off("keyup.dismiss.modal")},hideWithTransition:function(){var
 
t=this,n=setTimeout(function(){t.$element.off(e.support.transition.end),t.hideModal()},500);this.$element.one(e.support.transition.end,function(){clearTimeout(n),t.hideModal()})},hideModal:function(){var
 
e=this;this.$element.hide(),this.backdrop(function(){e.removeBackdrop(),e.$element.trigger("hidden")})},removeBackdrop:function(){this.$backdrop&&this.$backdrop.remove(),this.$backdrop=null},backdrop:function(t){var
 n=this,r=this.$element.hasClass("fade")?"fade":"";if(this.isShown&&this.options.backdrop){var 
i=e.support.transition&&r;this.$backdrop=e('<div class="modal-backdrop '+r+'" 
/>').appendTo(document.body),this.$backdrop.click(this.options.backdrop=="static"?e.proxy(this.$element[0].focus,this.$element[0]):e.proxy(this.hide,this)),i&&this.$backdrop[0].offsetWidth,this.$backdrop.addClass("in");if(!t)return;i?this.$backdrop.
 
one(e.support.transition.end,t):t()}else!this.isShown&&this.$backdrop?(this.$backdrop.removeClass("in"),e.support.transition&&this.$element.hasClass("fade")?this.$backdrop.one(e.support.transition.end,t):t()):t&&t()}};var
 n=e.fn.modal;e.fn.modal=function(n){return this.each(function(){var 
r=e(this),i=r.data("modal"),s=e.extend({},e.fn.modal.defaults,r.data(),typeof 
n=="object"&&n);i||r.data("modal",i=new t(this,s)),typeof 
n=="string"?i[n]():s.show&&i.show()})},e.fn.modal.defaults={backdrop:!0,keyboard:!0,show:!0},e.fn.modal.Constructor=t,e.fn.modal.noConflict=function(){return
 e.fn.modal=n,this},e(document).on("click.modal.data-api",'[data-toggle="modal"]',function(t){var 
n=e(this),r=n.attr("href"),i=e(n.attr("data-target")||r&&r.replace(/.*(?=#[^\s]+$)/,"")),s=i.data("modal")?"toggle":e.extend({remote:!/#/.test(r)&&r},i.data(),n.data());t.preventDefault(),i.modal(s).one("hide",function(){n.focus()})})}(window.jQuery),!function(e){"use
 strict";var t=function(e,t){this.init("
 tooltip",e,t)};t.prototype={constructor:t,init:function(t,n,r){var 
i,s,o,u,a;this.type=t,this.$element=e(n),this.options=this.getOptions(r),this.enabled=!0,o=this.options.trigger.split("
 
");for(a=o.length;a--;)u=o[a],u=="click"?this.$element.on("click."+this.type,this.options.selector,e.proxy(this.toggle,this)):u!="manual"&&(i=u=="hover"?"mouseenter":"focus",s=u=="hover"?"mouseleave":"blur",this.$element.on(i+"."+this.type,this.options.selector,e.proxy(this.enter,this)),this.$element.on(s+"."+this.type,this.options.selector,e.proxy(this.leave,this)));this.options.selector?this._options=e.extend({},this.options,{trigger:"manual",selector:""}):this.fixTitle()},getOptions:function(t){return
 t=e.extend({},e.fn[this.type].defaults,this.$element.data(),t),t.delay&&typeof 
t.delay=="number"&&(t.delay={show:t.delay,hide:t.delay}),t},enter:function(t){var 
n=e.fn[this.type].defaults,r={},i;this._options&&e.each(this._options,function(e,t){n[e]!=t&&(r[e]=t)},this),i=e(t.currentTarget)[t
 his.type](r).data(this.type);if(!i.options.delay||!i.options.delay.show)return 
i.show();clearTimeout(this.timeout),i.hoverState="in",this.timeout=setTimeout(function(){i.hoverState=="in"&&i.show()},i.options.delay.show)},leave:function(t){var
 
n=e(t.currentTarget)[this.type](this._options).data(this.type);this.timeout&&clearTimeout(this.timeout);if(!n.options.delay||!n.options.delay.hide)return
 
n.hide();n.hoverState="out",this.timeout=setTimeout(function(){n.hoverState=="out"&&n.hide()},n.options.delay.hide)},show:function(){var
 
t,n,r,i,s,o,u=e.Event("show");if(this.hasContent()&&this.enabled){this.$element.trigger(u);if(u.isDefaultPrevented())return;t=this.tip(),this.setContent(),this.options.animation&&t.addClass("fade"),s=typeof
 
this.options.placement=="function"?this.options.placement.call(this,t[0],this.$element[0]):this.options.placement,t.detach().css({top:0,left:0,display:"block"}),this.options.container?t.appendTo(this.options.container):t.insertAfter(this.$element),
 
n=this.getPosition(),r=t[0].offsetWidth,i=t[0].offsetHeight;switch(s){case"bottom":o={top:n.top+n.height,left:n.left+n.width/2-r/2};break;case"top":o={top:n.top-i,left:n.left+n.width/2-r/2};break;case"left":o={top:n.top+n.height/2-i/2,left:n.left-r};break;case"right":o={top:n.top+n.height/2-i/2,left:n.left+n.width}}this.applyPlacement(o,s),this.$element.trigger("shown")}},applyPlacement:function(e,t){var
 
n=this.tip(),r=n[0].offsetWidth,i=n[0].offsetHeight,s,o,u,a;n.offset(e).addClass(t).addClass("in"),s=n[0].offsetWidth,o=n[0].offsetHeight,t=="top"&&o!=i&&(e.top=e.top+i-o,a=!0),t=="bottom"||t=="top"?(u=0,e.left<0&&(u=e.left*-2,e.left=0,n.offset(e),s=n[0].offsetWidth,o=n[0].offsetHeight),this.replaceArrow(u-r+s,s,"left")):this.replaceArrow(o-i,o,"top"),a&&n.offset(e)},replaceArrow:function(e,t,n){this.arrow().css(n,e?50*(1-e/t)+"%":"")},setContent:function(){var
 
e=this.tip(),t=this.getTitle();e.find(".tooltip-inner")[this.options.html?"html":"text"](t),e.removeClass("fade
 in 
 top bottom left right")},hide:function(){function i(){var 
t=setTimeout(function(){n.off(e.support.transition.end).detach()},500);n.one(e.support.transition.end,function(){clearTimeout(t),n.detach()})}var
 t=this,n=this.tip(),r=e.Event("hide");this.$element.trigger(r);if(r.isDefaultPrevented())return;return 
n.removeClass("in"),e.support.transition&&this.$tip.hasClass("fade")?i():n.detach(),this.$element.trigger("hidden"),this},fixTitle:function(){var
 e=this.$element;(e.attr("title")||typeof 
e.attr("data-original-title")!="string")&&e.attr("data-original-title",e.attr("title")||"").attr("title","")},hasContent:function(){return
 this.getTitle()},getPosition:function(){var t=this.$element[0];return e.extend({},typeof 
t.getBoundingClientRect=="function"?t.getBoundingClientRect():{width:t.offsetWidth,height:t.offsetHeight},this.$element.offset())},getTitle:function(){var
 e,t=this.$element,n=this.options;return e=t.attr("data-original-title")||(typeof 
n.title=="function"?n.title.cal
 l(t[0]):n.title),e},tip:function(){return 
this.$tip=this.$tip||e(this.options.template)},arrow:function(){return 
this.$arrow=this.$arrow||this.tip().find(".tooltip-arrow")},validate:function(){this.$element[0].parentNode||(this.hide(),this.$element=null,this.options=null)},enable:function(){this.enabled=!0},disable:function(){this.enabled=!1},toggleEnabled:function(){this.enabled=!this.enabled},toggle:function(t){var
 
n=t?e(t.currentTarget)[this.type](this._options).data(this.type):this;n.tip().hasClass("in")?n.hide():n.show()},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}};var
 n=e.fn.tooltip;e.fn.tooltip=function(n){return this.each(function(){var 
r=e(this),i=r.data("tooltip"),s=typeof n=="object"&&n;i||r.data("tooltip",i=new t(this,s)),typeof 
n=="string"&&i[n]()})},e.fn.tooltip.Constructor=t,e.fn.tooltip.defaults={animation:!0,placement:"top",selector:!1,template:'<div
 class="tooltip"><div class="tooltip-arrow"></div><div class="tooltip-i
 nner"></div></div>',trigger:"hover 
focus",title:"",delay:0,html:!1,container:!1},e.fn.tooltip.noConflict=function(){return 
e.fn.tooltip=n,this}}(window.jQuery),!function(e){"use strict";var 
t=function(e,t){this.init("popover",e,t)};t.prototype=e.extend({},e.fn.tooltip.Constructor.prototype,{constructor:t,setContent:function(){var
 
e=this.tip(),t=this.getTitle(),n=this.getContent();e.find(".popover-title")[this.options.html?"html":"text"](t),e.find(".popover-content")[this.options.html?"html":"text"](n),e.removeClass("fade
 top bottom left right in")},hasContent:function(){return 
this.getTitle()||this.getContent()},getContent:function(){var e,t=this.$element,n=this.options;return 
e=(typeof 
n.content=="function"?n.content.call(t[0]):n.content)||t.attr("data-content"),e},tip:function(){return 
this.$tip||(this.$tip=e(this.options.template)),this.$tip},destroy:function(){this.hide().$element.off("."+this.type).removeData(this.type)}});var
 n=e.fn.popover;e.fn.popover=function(n){ret
 urn this.each(function(){var r=e(this),i=r.data("popover"),s=typeof n=="object"&&n;i||r.data("popover",i=new 
t(this,s)),typeof 
n=="string"&&i[n]()})},e.fn.popover.Constructor=t,e.fn.popover.defaults=e.extend({},e.fn.tooltip.defaults,{placement:"right",trigger:"click",content:"",template:'<div
 class="popover"><div class="arrow"></div><h3 class="popover-title"></h3><div 
class="popover-content"></div></div>'}),e.fn.popover.noConflict=function(){return 
e.fn.popover=n,this}}(window.jQuery),!function(e){"use strict";function t(t,n){var 
r=e.proxy(this.process,this),i=e(t).is("body")?e(window):e(t),s;this.options=e.extend({},e.fn.scrollspy.defaults,n),this.$scrollElement=i.on("scroll.scroll-spy.data-api",r),this.selector=(this.options.target||(s=e(t).attr("href"))&&s.replace(/.*(?=#[^\s]+$)/,"")||"")+"
 .nav li > 
a",this.$body=e("body"),this.refresh(),this.process()}t.prototype={constructor:t,refresh:function(){var 
t=this,n;this.offsets=e([]),this.targets=e([]),n=this.$body.find(this
 .selector).map(function(){var n=e(this),r=n.data("target")||n.attr("href"),i=/^#\w/.test(r)&&e(r);return 
i&&i.length&&[[i.position().top+(!e.isWindow(t.$scrollElement.get(0))&&t.$scrollElement.scrollTop()),r]]||null}).sort(function(e,t){return
 e[0]-t[0]}).each(function(){t.offsets.push(this[0]),t.targets.push(this[1])})},process:function(){var 
e=this.$scrollElement.scrollTop()+this.options.offset,t=this.$scrollElement[0].scrollHeight||this.$body[0].scrollHeight,n=t-this.$scrollElement.height(),r=this.offsets,i=this.targets,s=this.activeTarget,o;if(e>=n)return
 
s!=(o=i.last()[0])&&this.activate(o);for(o=r.length;o--;)s!=i[o]&&e>=r[o]&&(!r[o+1]||e<=r[o+1])&&this.activate(i[o])},activate:function(t){var
 
n,r;this.activeTarget=t,e(this.selector).parent(".active").removeClass("active"),r=this.selector+'[data-target="'+t+'"],'+this.selector+'[href="'+t+'"]',n=e(r).parent("li").addClass("active"),n.parent(".dropdown-menu").length&&(n=n.closest("li.dropdown").addClass("active")),n.tri
 gger("activate")}};var n=e.fn.scrollspy;e.fn.scrollspy=function(n){return this.each(function(){var 
r=e(this),i=r.data("scrollspy"),s=typeof n=="object"&&n;i||r.data("scrollspy",i=new t(this,s)),typeof 
n=="string"&&i[n]()})},e.fn.scrollspy.Constructor=t,e.fn.scrollspy.defaults={offset:10},e.fn.scrollspy.noConflict=function(){return
 e.fn.scrollspy=n,this},e(window).on("load",function(){e('[data-spy="scroll"]').each(function(){var 
t=e(this);t.scrollspy(t.data())})})}(window.jQuery),!function(e){"use strict";var 
t=function(t){this.element=e(t)};t.prototype={constructor:t,show:function(){var 
t=this.element,n=t.closest("ul:not(.dropdown-menu)"),r=t.attr("data-target"),i,s,o;r||(r=t.attr("href"),r=r&&r.replace(/.*(?=#[^\s]*$)/,""));if(t.parent("li").hasClass("active"))return;i=n.find(".active:last
 
a")[0],o=e.Event("show",{relatedTarget:i}),t.trigger(o);if(o.isDefaultPrevented())return;s=e(r),this.activate(t.parent("li"),n),this.activate(s,s.parent(),function(){t.trigger({type:"show
 n",relatedTarget:i})})},activate:function(t,n,r){function o(){i.removeClass("active").find("> .dropdown-menu 

.active").removeClass("active"),t.addClass("active"),s?(t[0].offsetWidth,t.addClass("in")):t.removeClass("fade"),t.parent(".dropdown-menu")&&t.closest("li.dropdown").addClass("active"),r&&r()}var
 i=n.find("> 
.active"),s=r&&e.support.transition&&i.hasClass("fade");s?i.one(e.support.transition.end,o):o(),i.removeClass("in")}};var
 n=e.fn.tab;e.fn.tab=function(n){return this.each(function(){var 
r=e(this),i=r.data("tab");i||r.data("tab",i=new t(this)),typeof 
n=="string"&&i[n]()})},e.fn.tab.Constructor=t,e.fn.tab.noConflict=function(){return 
e.fn.tab=n,this},e(document).on("click.tab.data-api",'[data-toggle="tab"], 
[data-toggle="pill"]',function(t){t.preventDefault(),e(this).tab("show")})}(window.jQuery),!function(e){"use 
strict";var 
t=function(t,n){this.$element=e(t),this.options=e.extend({},e.fn.typeahead.defaults,n),this.matcher=this.options.matcher||this.matcher,this.
 
sorter=this.options.sorter||this.sorter,this.highlighter=this.options.highlighter||this.highlighter,this.updater=this.options.updater||this.updater,this.source=this.options.source,this.$menu=e(this.options.menu),this.shown=!1,this.listen()};t.prototype={constructor:t,select:function(){var
 e=this.$menu.find(".active").attr("data-value");return 
this.$element.val(this.updater(e)).change(),this.hide()},updater:function(e){return e},show:function(){var 
t=e.extend({},this.$element.position(),{height:this.$element[0].offsetHeight});return 
this.$menu.insertAfter(this.$element).css({top:t.top+t.height,left:t.left}).show(),this.shown=!0,this},hide:function(){return
 this.$menu.hide(),this.shown=!1,this},lookup:function(t){var n;return 
this.query=this.$element.val(),!this.query||this.query.length<this.options.minLength?this.shown?this.hide():this:(n=e.isFunction(this.source)?this.source(this.query,e.proxy(this.process,this)):this.source,n?this.process(n):this)},process:function(t){var
 n
 =this;return t=e.grep(t,function(e){return 
n.matcher(e)}),t=this.sorter(t),t.length?this.render(t.slice(0,this.options.items)).show():this.shown?this.hide():this},matcher:function(e){return~e.toLowerCase().indexOf(this.query.toLowerCase())},sorter:function(e){var
 
t=[],n=[],r=[],i;while(i=e.shift())i.toLowerCase().indexOf(this.query.toLowerCase())?~i.indexOf(this.query)?n.push(i):r.push(i):t.push(i);return
 t.concat(n,r)},highlighter:function(e){var t=this.query.replace(/[\-\[\]{}()*+?.,\\\^$|#\s]/g,"\\$&");return 
e.replace(new RegExp("("+t+")","ig"),function(e,t){return"<strong>"+t+"</strong>"})},render:function(t){var 
n=this;return t=e(t).map(function(t,r){return 
t=e(n.options.item).attr("data-value",r),t.find("a").html(n.highlighter(r)),t[0]}),t.first().addClass("active"),this.$menu.html(t),this},next:function(t){var
 
n=this.$menu.find(".active").removeClass("active"),r=n.next();r.length||(r=e(this.$menu.find("li")[0])),r.addClass("active")},prev:function(e){var
 t=this.$menu
 
.find(".active").removeClass("active"),n=t.prev();n.length||(n=this.$menu.find("li").last()),n.addClass("active")},listen:function(){this.$element.on("focus",e.proxy(this.focus,this)).on("blur",e.proxy(this.blur,this)).on("keypress",e.proxy(this.keypress,this)).on("keyup",e.proxy(this.keyup,this)),this.eventSupported("keydown")&&this.$element.on("keydown",e.proxy(this.keydown,this)),this.$menu.on("click",e.proxy(this.click,this)).on("mouseenter","li",e.proxy(this.mouseenter,this)).on("mouseleave","li",e.proxy(this.mouseleave,this))},eventSupported:function(e){var
 t=e in this.$element;return t||(this.$element.setAttribute(e,"return;"),t=typeof 
this.$element[e]=="function"),t},move:function(e){if(!this.shown)return;switch(e.keyCode){case 9:case 13:case 
27:e.preventDefault();break;case 38:e.preventDefault(),this.prev();break;case 
40:e.preventDefault(),this.next()}e.stopPropagation()},keydown:function(t){this.suppressKeyPressRepeat=~e.inArray(t.keyCode,[40,38,9,13,27]),this.move
 
(t)},keypress:function(e){if(this.suppressKeyPressRepeat)return;this.move(e)},keyup:function(e){switch(e.keyCode){case
 40:case 38:case 16:case 17:case 18:break;case 9:case 13:if(!this.shown)return;this.select();break;case 
27:if(!this.shown)return;this.hide();break;default:this.lookup()}e.stopPropagation(),e.preventDefault()},focus:function(e){this.focused=!0},blur:function(e){this.focused=!1,!this.mousedover&&this.shown&&this.hide()},click:function(e){e.stopPropagation(),e.preventDefault(),this.select(),this.$element.focus()},mouseenter:function(t){this.mousedover=!0,this.$menu.find(".active").removeClass("active"),e(t.currentTarget).addClass("active")},mouseleave:function(e){this.mousedover=!1,!this.focused&&this.shown&&this.hide()}};var
 n=e.fn.typeahead;e.fn.typeahead=function(n){return this.each(function(){var 
r=e(this),i=r.data("typeahead"),s=typeof n=="object"&&n;i||r.data("typeahead",i=new t(this,s)),typeof 
n=="string"&&i[n]()})},e.fn.typeahead.defaults={source:[],item
 s:8,menu:'<ul class="typeahead dropdown-menu"></ul>',item:'<li><a 
href="#"></a></li>',minLength:1},e.fn.typeahead.Constructor=t,e.fn.typeahead.noConflict=function(){return 
e.fn.typeahead=n,this},e(document).on("focus.typeahead.data-api",'[data-provide="typeahead"]',function(t){var 
n=e(this);if(n.data("typeahead"))return;n.typeahead(n.data())})}(window.jQuery),!function(e){"use strict";var 
t=function(t,n){this.options=e.extend({},e.fn.affix.defaults,n),this.$window=e(window).on("scroll.affix.data-api",e.proxy(this.checkPosition,this)).on("click.affix.data-api",e.proxy(function(){setTimeout(e.proxy(this.checkPosition,this),1)},this)),this.$element=e(t),this.checkPosition()};t.prototype.checkPosition=function(){if(!this.$element.is(":visible"))return;var
 
t=e(document).height(),n=this.$window.scrollTop(),r=this.$element.offset(),i=this.options.offset,s=i.bottom,o=i.top,u="affix
 affix-top affix-bottom",a;typeof i!="object"&&(s=o=i),typeof o=="function"&&(o=i.top()),typeof s=="fun
 
ction"&&(s=i.bottom()),a=this.unpin!=null&&n+this.unpin<=r.top?!1:s!=null&&r.top+this.$element.height()>=t-s?"bottom":o!=null&&n<=o?"top":!1;if(this.affixed===a)return;this.affixed=a,this.unpin=a=="bottom"?r.top-n:null,this.$element.removeClass(u).addClass("affix"+(a?"-"+a:""))};var
 n=e.fn.affix;e.fn.affix=function(n){return this.each(function(){var r=e(this),i=r.data("affix"),s=typeof 
n=="object"&&n;i||r.data("affix",i=new t(this,s)),typeof 
n=="string"&&i[n]()})},e.fn.affix.Constructor=t,e.fn.affix.defaults={offset:0},e.fn.affix.noConflict=function(){return
 e.fn.affix=n,this},e(window).on("load",function(){e('[data-spy="affix"]').each(function(){var 
t=e(this),n=t.data();n.offset=n.offset||{},n.offsetBottom&&(n.offset.bottom=n.offsetBottom),n.offsetTop&&(n.offset.top=n.offsetTop),t.affix(n)})})}(window.jQuery);
\ No newline at end of file
diff --git a/skins/easterngreen/js/main.js b/skins/easterngreen/js/main.js
new file mode 100644
index 0000000..c805876
--- /dev/null
+++ b/skins/easterngreen/js/main.js
@@ -0,0 +1,46 @@
+jQuery(document).ready(function($) {
+    $(".scroll, .scroll-logo").click(function(event){
+        event.preventDefault();
+        $('html,body').animate({scrollTop:$(this.hash).offset().top - ($('#home').innerHeight() - 
$('#home').height()) + 10}, 500);
+    });
+
+    var aboveHeight = $('header').outerHeight();
+    $(window).scroll(function(){
+        $('.nav-container').addClass('fixed').css('top','0').next()
+        .css('padding-top', '80px');
+    });
+
+    $('.participants-list').hide();
+    $('.view-participants').click(function () {
+        if( $('.participants-list').is(":hidden") ) {
+            $('.participants-list').show(400);
+            $('.view-participants').html("Close");
+        } else {
+            $('.view-participants').html("Find out who's participating in this round!");
+            $('.participants-list').hide(400);
+        }
+    });
+});
+
+$(function() {
+    var pull        = $('#pull');
+    menu        = $('.nav');
+    menuHeight  = menu.height();
+    $(pull).on('click', function(e) {
+        e.preventDefault();
+        menu.slideToggle();
+    });
+});
+
+$(window).resize(function(){
+    var w = $(window).width();
+    if(w > 720 && menu.is(':hidden')) {
+        menu.removeAttr('style');
+    }
+});
+
+$(function() {
+    $('.nav li a, .scroll-logo').on('click',function(){
+        $('.nav-collapse').collapse('hide');
+    }); 
+});
diff --git a/skins/easterngreen/js/processing.js b/skins/easterngreen/js/processing.js
new file mode 100644
index 0000000..013863e
--- /dev/null
+++ b/skins/easterngreen/js/processing.js
@@ -0,0 +1,241 @@
+(function(){this.Processing=function Processing(aElement,aCode){if(typeof 
aElement==="string"){aElement=document.getElementById(aElement);}
+var p=Processing.build(aElement);if(aCode){p.init(aCode);}
+return p;};Processing.lib={};var ajax=function(url){var AJAX=new 
window.XMLHttpRequest();if(AJAX){AJAX.open("GET",url+"?t="+new Date().getTime(),false);AJAX.send(null);return 
AJAX.responseText;}else{return false;}};var init=function(){var 
canvas=document.getElementsByTagName('canvas');for(var i=0,l=canvas.length;i<l;i++){var 
datasrc=canvas[i].getAttribute('data-src');if(datasrc===null){datasrc=canvas[i].getAttribute('datasrc');}
+if(datasrc){Processing(canvas[i],ajax(datasrc));}}};var newWebGLArray=function(data){var 
WebGLFloatArrayExists=false;try{WebGLFloatArray;WebGLFloatArrayExists=true;}
+catch(e){}
+return WebGLFloatArrayExists===true?new WebGLFloatArray(data):new CanvasFloatArray(data);};var 
programObject;var 
boxVerts=[0.5,0.5,-0.5,0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,0.5,-0.5,0.5,0.5,-0.5,0.5,0.5,0.5,-0.5,0.5,0.5,-0.5,-0.5,0.5,-0.5,-0.5,0.5,0.5,-0.5,0.5,0.5,0.5,0.5,0.5,0.5,-0.5,0.5,0.5,0.5,0.5,-0.5,0.5,0.5,-0.5,0.5,0.5,-0.5,-0.5,0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5,-0.5,-0.5,0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,0.5,-0.5,0.5,0.5,-0.5,0.5,0.5,-0.5,0.5,-0.5,-0.5,-0.5,-0.5,0.5,0.5,0.5,0.5,0.5,-0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5,-0.5,0.5,0.5,0.5,0.5,0.5];var
 
boxOutlineVerts=[0.5,0.5,0.5,0.5,-0.5,0.5,0.5,0.5,-0.5,0.5,-0.5,-0.5,-0.5,0.5,-0.5,-0.5,-0.5,-0.5,-0.5,0.5,0.5,-0.5,-0.5,0.5,0.5,0.5,0.5,0.5,0.5,-0.5,0.5,0.5,-0.5,-0.5,0.5,-0.5,-0.5,0.5,-0.5,-0.5,0.5,0.5,-0.5,0.5,0.5,0.5,0.5,0.5,0.5,-0.5,0.5,0.5,-0.5,-0.5,0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,-0.5,0.5,-0.5,-0.5,0.5,0.5,-0.5,0.5];var
 boxBuffer;var boxOutlineBuffe
 r;var sphereBuffer;var lineBuffer;var pointBuffer;var vertexShaderSource="attribute vec3 Vertex;"+"uniform 
vec4 color;"+"uniform mat4 model;"+"uniform mat4 view;"+"uniform mat4 projection;"+"void main(void){"+"  
gl_FrontColor = color;"+"  gl_Position = projection * view * model * vec4(Vertex, 1.0);"+"}";var 
fragmentShaderSource="void main(void){"+"  gl_FragColor = 
gl_Color;"+"}";document.addEventListener('DOMContentLoaded',function(){init();},false);Processing.debug=function(e){};Processing.parse=function
 parse(aCode,p){aCode=aCode.replace(/('(.){1}')/g,"$1.charCodeAt(0)");var 
strings=[];aCode=aCode.replace(/(["'])(\\\1|.)*?(\1)/g,function(all){strings.push(all);return"<STRING 
"+(strings.length-1)+">";});aCode=aCode.replace(/\/\/.*\n/g,"\n");aCode=aCode.replace(/([^\s])%([^\s])/g,"$1 
% 
$2");aCode=aCode.replace(/(\s*=\s*|\(*\s*)frameRate(\s*\)+?|\s*;)/,"$1p.FRAME_RATE$2");aCode=aCode.replace(/(?:static
 )?(\w+(?:\[\])* )(\w+)\s*(\([^\)]*\)\s*\{)/g,function(all,type,name,args){
 if(name==="if"||name==="for"||name==="while"){return all;}else{return"processing."+name+" = function 
"+name+args;}});aCode=aCode.replace(/import\s+(.+);/g,"");aCode=aCode.replace(/\.length\(\)/g,".length");aCode=aCode.replace(/([\(,]\s*)(\w+)((?:\[\])+|
 )\s*(\w+\s*[\),])/g,"$1$4");aCode=aCode.replace(/([\(,]\s*)(\w+)((?:\[\])+| 
)\s*(\w+\s*[\),])/g,"$1$4");aCode=aCode.replace(/new 
(\w+)((?:\[([^\]]*)\])+)/g,function(all,name,args){return"new 
ArrayList("+args.replace(/\[\]/g,"[0]").slice(1,-1).split("][").join(", 
")+")";});aCode=aCode.replace(/(?:static )?\w+\[\]\s*(\w+)\[?\]?\s*=\s*\{.*?\};/g,function(all){return 
all.replace(/\{/g,"[").replace(/\}/g,"]");});var 
intFloat=/(\n\s*(?:int|float)(?!\[\])*(?:\s*|[^\(;]*?,\s*))([a-zA-Z]\w*)\s*(,|;)/i;while(intFloat.test(aCode)){aCode=aCode.replace(new
 RegExp(intFloat),function(all,type,name,sep){return type+" "+name+" = 0"+sep;});}
+aCode=aCode.replace(/(?:static\s+)?(?:final\s+)?(\w+)((?:\[\])+| ) 
*(\w+)\[?\]?(\s*[=,;])/g,function(all,type,arr,name,sep){if(type==="return"){return all;}else{return"var 
"+name+sep;}});aCode=aCode.replace(/\=\s*\{((.|\s)*?)\};/g,function(all,data){return"= 
["+data.replace(/\{/g,"[").replace(/\}/g,"]")+"]";});aCode=aCode.replace(/super\(/g,"superMethod(");var 
classes=["int","float","boolean","String","byte","double","long","ArrayList"];var 
classReplace=function(all,name,extend,vars,last){classes.push(name);var 
staticVar="";vars=vars.replace(/final\s+var\s+(\w+\s*=\s*.*?;)/g,function(all,setting){staticVar+=" 
"+name+"."+setting;return"";});return"function "+name+"() {with(this){\n "+(extend?"var __self=this;function 
superMethod(){extendClass(__self,arguments,"+extend+");}\n":"")+vars.replace(/\s*,\s*/g,";\n  
this.").replace(/\b(var |final |public )+\s*/g,"this.").replace(/\b(var |final |public 
)+\s*/g,"this.").replace(/this\.(\w+);/g,"this.$1 = null;")+(extend?"extendClass(t
 his, "+extend+");\n":"")+"<CLASS "+name+" "+staticVar+">"+(typeof last==="string"?last:name+"(");};var 
nextBrace=function(right){var 
rest=right,position=0,leftCount=1,rightCount=0;while(leftCount!==rightCount){var 
nextLeft=rest.indexOf("{"),nextRight=rest.indexOf("}");if(nextLeft<nextRight&&nextLeft!==-1){leftCount++;rest=rest.slice(nextLeft+1);position+=nextLeft+1;}else{rightCount++;rest=rest.slice(nextRight+1);position+=nextRight+1;}}
+return right.slice(0,position-1);};var matchClasses=/(?:public |abstract |static )*class 
(\w+)\s*(?:extends\s*(\w+)\s*)?\{\s*((?:.|\n)*?)\b\1\s*\(/g;var matchNoCon=/(?:public |abstract |static 
)*class 
(\w+)\s*(?:extends\s*(\w+)\s*)?\{\s*((?:.|\n)*?)(processing)/g;aCode=aCode.replace(matchClasses,classReplace);aCode=aCode.replace(matchNoCon,classReplace);var
 matchClass=/<CLASS (\w+) (.*?)>/,m;while((m=aCode.match(matchClass))){var 
left=RegExp.leftContext,allRest=RegExp.rightContext,rest=nextBrace(allRest),className=m[1],staticVars=m[2]||"";allRest=allRest.slice(rest.length+1);rest=rest.replace(new
 
RegExp("\\b"+className+"\\(([^\\)]*?)\\)\\s*{","g"),function(all,args){args=args.split(/,\s*?/);if(args[0].match(/^\s*$/)){args.shift();}
+var fn="if ( arguments.length === "+args.length+" ) {\n";for(var i=0;i<args.length;i++){fn+=" var 
"+args[i]+" = arguments["+i+"];\n";}
+return fn;});rest=rest.replace(/(?:public )?processing.\w+ = function 
(\w+)\((.*?)\)/g,function(all,name,args){return"ADDMETHOD(this, '"+name+"', function("+args+")";});var 
matchMethod=/ADDMETHOD([\s\S]*?\{)/,mc;var methods="";while((mc=rest.match(matchMethod))){var 
prev=RegExp.leftContext,allNext=RegExp.rightContext,next=nextBrace(allNext);methods+="addMethod"+mc[1]+next+"});";rest=prev+allNext.slice(next.length+1);}
+rest=methods+rest;aCode=left+rest+"\n}}"+staticVars+allRest;}
+aCode=aCode.replace(/processing.\w+ = function 
addMethod/g,"addMethod");if(aCode.match(/size\((?:.+),(?:.+),\s*(OPENGL|P3D)\s*\);/)){p.use3DContext=true;}
+aCode=aCode.replace(/\(int\)/g,"0|");aCode=aCode.replace(new 
RegExp("\\(("+classes.join("|")+")(\\[\\])*\\)","g"),"");var toNumbers=function(str){var 
ret=[];str.replace(/(..)/g,function(str){ret.push(parseInt(str,16));});return 
ret;};aCode=aCode.replace(/#([a-f0-9]{6})/ig,function(m,hex){var 
num=toNumbers(hex);return"DefaultColor("+num[0]+","+num[1]+","+num[2]+")";});aCode=aCode.replace(/(\d+)f/g,"$1");for(var
 i=0;i<strings.length;i++){aCode=aCode.replace(new RegExp("(.*)(<STRING 
"+i+">)(.*)","g"),function(all,quoteStart,match,quoteEnd){var 
returnString=all,notString=true,quoteType="",escape=false;for(var 
x=0;x<quoteStart.length;x++){if(notString){if(quoteStart.charAt(x)==="\""||quoteStart.charAt(x)==="'"){quoteType=quoteStart.charAt(x);notString=false;}}else{if(!escape){if(quoteStart.charAt(x)==="\\"){escape=true;}else
 if(quoteStart.charAt(x)===quoteType){notString=true;quoteType="";}}else{escape=false;}}}
+if(notString){returnString=quoteStart+strings[i]+quoteEnd;}
+return returnString;});}
+return aCode;};Processing.build=function buildProcessing(curElement){var p={};var 
curContext;p.use3DContext=false;p.name='Processing.js 
Instance';p.PI=Math.PI;p.TWO_PI=2*p.PI;p.HALF_PI=p.PI/2;p.SINCOS_LENGTH=parseInt(360/0.5,10);p.MAX_FLOAT=3.4028235e+38;p.MIN_FLOAT=-3.4028235e+38;p.MAX_INT=2147483647;p.MIN_INT=-2147483648;p.CORNER=0;p.RADIUS=1;p.CENTER_RADIUS=1;p.CENTER=2;p.POLYGON=2;p.QUADS=5;p.TRIANGLES=6;p.POINTS=7;p.LINES=8;p.TRIANGLE_STRIP=9;p.TRIANGLE_FAN=4;p.QUAD_STRIP=3;p.CORNERS=10;p.CLOSE=true;p.RGB=1;p.HSB=2;p.OPENGL='OPENGL';p.P3D='P3D';p.FRAME_RATE=0;p.focused=true;p.ARROW='default';p.CROSS='crosshair';p.HAND='pointer';p.MOVE='move';p.TEXT='text';p.WAIT='wait';p.NOCURSOR="url('data:image/gif;base64,R0lGODlhAQABAIAAAP///wAAACH5BAEAAAAALAAAAAABAAEAAAICRAEAOw=='),
 
auto";p.ALPHA_MASK=0xff000000;p.RED_MASK=0x00ff0000;p.GREEN_MASK=0x0000ff00;p.BLUE_MASK=0x000000ff;p.REPLACE=0;p.BLEND=1<<0;p.ADD=1<<1;p.SUBTRACT=1<<2;p.LIGHTEST=1<<3;p.DARKEST=1<<4;p.DIFFERENCE=1<<5;p.E
 
XCLUSION=1<<6;p.MULTIPLY=1<<7;p.SCREEN=1<<8;p.OVERLAY=1<<9;p.HARD_LIGHT=1<<10;p.SOFT_LIGHT=1<<11;p.DODGE=1<<12;p.BURN=1<<13;p.PRECISIONB=15;p.PRECISIONF=1<<p.PRECISIONB;p.PREC_MAXVAL=p.PRECISIONF-1;p.PREC_ALPHA_SHIFT=24-p.PRECISIONB;p.PREC_RED_SHIFT=16-p.PRECISIONB;p.ROUND='round';p.SQUARE='butt';p.PROJECT='square';p.MITER='miter';p.BEVEL='bevel';p.CENTER=88888880;p.NORMAL_MODE_AUTO=0;p.NORMAL_MODE_SHAPE=1;p.NORMAL_MODE_VERTEX=2;p.BACKSPACE=8;p.TAB=9;p.ENTER=10;p.RETURN=13;p.ESC=27;p.DELETE=127;p.CODED=0xffff;p.SHIFT=16;p.CONTROL=17;p.ALT=18;p.UP=38;p.RIGHT=39;p.DOWN=40;p.LEFT=37;var
 codedKeys=[p.SHIFT,p.CONTROL,p.ALT,p.UP,p.RIGHT,p.DOWN,p.LEFT];var online=true,doFill=true,fillStyle="rgba( 
255, 255, 255, 1 )",doStroke=true,strokeStyle="rgba( 204, 204, 204, 1 
)",lineWidth=1,loopStarted=false,hasBackground=false,doLoop=true,looping=0,curRectMode=p.CORNER,curEllipseMode=p.CENTER,normalX=0,normalY=0,normalZ=0,normalMode=p.NORMAL_MODE_AUTO,inSetup=false,inDraw=false,curBackground
 ="rgba( 204, 204, 204, 1 
)",curFrameRate=1000,curCursor=p.ARROW,oldCursor=document.body.style.cursor,curMsPerFrame=1,curShape=p.POLYGON,curShapeCount=0,curvePoints=[],curTightness=0,opacityRange=255,redRange=255,greenRange=255,blueRange=255,pathOpen=false,mousePressed=false,mouseDragging=false,keyPressed=false,curColorMode=p.RGB,curTint=-1,curTextSize=12,curTextFont="Arial",getLoaded=false,start=new
 Date().getTime(),timeSinceLastFPS=start,framesSinceLastFPS=0;var 
sphereDetailV=0,sphereDetailU=0,sphereX=[],sphereY=[],sphereZ=[],sinLUT=new Array(p.SINCOS_LENGTH),cosLUT=new 
Array(p.SINCOS_LENGTH),sphereVerts,sphereNorms;var 
cam,cameraInv,forwardTransform,modelView,modelViewInv,userMatrixStack,inverseCopy,projection,frustumMode=false,cameraFOV=60*(Math.PI/180),cameraX=curElement.width/2,cameraY=curElement.height/2,cameraZ=cameraY/Math.tan(cameraFOV/2),cameraNear=cameraZ/10,cameraFar=cameraZ*10,cameraAspect=curElement.width/curElement.height;var
 firstX,firstY,secondX,secondY,prev
 X,prevY;var styleArray=new 
Array(0);p.ln="";p.glyphTable={};p.pmouseX=0;p.pmouseY=0;p.mouseX=0;p.mouseY=0;p.mouseButton=0;p.mouseDown=false;p.mouseClicked=undefined;p.mouseDragged=undefined;p.mouseMoved=undefined;p.mousePressed=undefined;p.mouseReleased=undefined;p.keyPressed=undefined;p.keyReleased=undefined;p.draw=undefined;p.setup=undefined;p.width=curElement.width-0;p.height=curElement.height-0;p.frameCount=0;p.split=function(str,delim){return
 str.split(delim);};p.splitTokens=function(str,tokens){if(arguments.length===1){tokens="\n\t\r\f ";}
+tokens="["+tokens+"]";var ary=new Array(0);var index=0;var 
pos=str.search(tokens);while(pos>=0){if(pos===0){str=str.substring(1);}else{ary[index]=str.substring(0,pos);index++;str=str.substring(pos);}
+pos=str.search(tokens);}
+if(str.length>0){ary[index]=str;}
+if(ary.length===0){ary=undefined;}
+return ary;};p.append=function(array,element){array[array.length]=element;return array;};p.concat=function 
concat(array1,array2){return array1.concat(array2);};p.sort=function(array,numElem){var 
ret=[];if(array.length>0){var elemsToCopy=numElem>0?numElem:array.length;for(var 
i=0;i<elemsToCopy;i++){ret.push(array[i]);}
+if(typeof array[0]==="string"){ret.sort();}
+else{ret.sort(function(a,b){return a-b;});}
+if(numElem>0){for(var j=ret.length;j<array.length;j++){ret.push(array[j]);}}}
+return ret;};p.splice=function(array,value,index){if(array.length===0&&value.length===0){return array;}
+if(value instanceof Array){for(var 
i=0,j=index;i<value.length;j++,i++){array.splice(j,0,value[i]);}}else{array.splice(index,0,value);}
+return array;};p.subset=function(array,offset,length){if(arguments.length===2){return 
p.subset(array,offset,array.length-offset);}else if(arguments.length===3){return 
array.slice(offset,offset+length);}};p.join=function join(array,seperator){return 
array.join(seperator);};p.shorten=function(ary){var newary=new Array(0);var len=ary.length;for(var 
i=0;i<len;i++){newary[i]=ary[i];}
+newary.pop();return newary;};p.expand=function(ary,newSize){var newary=new Array(0);var 
len=ary.length;for(var i=0;i<len;i++){newary[i]=ary[i];}
+if(arguments.length===1){newary.length*=2;}else if(arguments.length===2){newary.length=newSize;}
+return newary;};p.ArrayList=function ArrayList(size,size2,size3){var array=new 
Array(0|size);if(size2){for(var i=0;i<size;i++){array[i]=[];for(var j=0;j<size2;j++){var 
a=array[i][j]=size3?new Array(size3):0;for(var k=0;k<size3;k++){a[k]=0;}}}}else{for(var 
l=0;l<size;l++){array[l]=0;}}
+array.get=function(i){return this[i];};array.add=function(item){return 
this.push(item);};array.size=function(){return 
this.length;};array.clear=function(){this.length=0;};array.remove=function(i){return 
this.splice(i,1);};array.isEmpty=function(){return!this.length;};array.clone=function(){var a=new 
ArrayList(size);for(var i=0;i<size;i++){a[i]=this[i];}
+return a;};return array;};p.reverse=function(array){return array.reverse();};p.rgbaToInt=function(color){var 
rgbaAry=/\(([^\)]+)\)/.exec(color).slice(1,2)[0].split(',');return((rgbaAry[3]*255)<<24)|(rgbaAry[0]<<16)|(rgbaAry[1]<<8)|(rgbaAry[2]);};p.mix=function(a,b,f){return
 a+(((b-a)*f)>>8);};p.peg=function(n){return(n<0)?0:((n>255)?255:n);};p.modes={replace:function(a,b){return 
p.rgbaToInt(b);},blend:function(a,b){var c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var 
f=(c2&p.ALPHA_MASK)>>>24;return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|p.mix(c1&p.RED_MASK,c2&p.RED_MASK,f)&p.RED_MASK|p.mix(c1&p.GREEN_MASK,c2&p.GREEN_MASK,f)&p.GREEN_MASK|p.mix(c1&p.BLUE_MASK,c2&p.BLUE_MASK,f));},add:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var 
f=(c2&p.ALPHA_MASK)>>>24;return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|Math.min(((c1&p.RED_MASK)+((c2&p.RED_MASK)>>8)*f),p.RED_MASK)&p.RED_MASK|Math.min(((c1&p.GREEN_MASK)+((c2&p.GREEN_MASK)>>8)*f),p.GREEN_MASK)&p.GREEN_MASK|Ma
 th.min((c1&p.BLUE_MASK)+(((c2&p.BLUE_MASK)*f)>>8),p.BLUE_MASK));},subtract:function(a,b){var 
c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var 
f=(c2&p.ALPHA_MASK)>>>24;return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|Math.max(((c1&p.RED_MASK)-((c2&p.RED_MASK)>>8)*f),p.GREEN_MASK)&p.RED_MASK|Math.max(((c1&p.GREEN_MASK)-((c2&p.GREEN_MASK)>>8)*f),p.BLUE_MASK)&p.GREEN_MASK|Math.max((c1&p.BLUE_MASK)-(((c2&p.BLUE_MASK)*f)>>8),0));},lightest:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var 
f=(c2&p.ALPHA_MASK)>>>24;return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|Math.max(c1&p.RED_MASK,((c2&p.RED_MASK)>>8)*f)&p.RED_MASK|Math.max(c1&p.GREEN_MASK,((c2&p.GREEN_MASK)>>8)*f)&p.GREEN_MASK|Math.max(c1&p.BLUE_MASK,((c2&p.BLUE_MASK)*f)>>8));},darkest:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var 
f=(c2&p.ALPHA_MASK)>>>24;return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|p.mix(c1&p.RED_MASK,Math.min(c1&p.RED_MASK,((c2&p.RED_MASK)>>8)*f),f)&p.RED_MASK|p.mix(c1&
 
p.GREEN_MASK,Math.min(c1&p.GREEN_MASK,((c2&p.GREEN_MASK)>>8)*f),f)&p.GREEN_MASK|p.mix(c1&p.BLUE_MASK,Math.min(c1&p.BLUE_MASK,((c2&p.BLUE_MASK)*f)>>8),f));},difference:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var f=(c2&p.ALPHA_MASK)>>>24;var ar=(c1&p.RED_MASK)>>16;var 
ag=(c1&p.GREEN_MASK)>>8;var ab=(c1&p.BLUE_MASK);var br=(c2&p.RED_MASK)>>16;var bg=(c2&p.GREEN_MASK)>>8;var 
bb=(c2&p.BLUE_MASK);var cr=(ar>br)?(ar-br):(br-ar);var cg=(ag>bg)?(ag-bg):(bg-ag);var 
cb=(ab>bb)?(ab-bb):(bb-ab);return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|(p.peg(ar+(((cr-ar)*f)>>8))<<16)|(p.peg(ag+(((cg-ag)*f)>>8))<<8)|(p.peg(ab+(((cb-ab)*f)>>8))));},exclusion:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var f=(c2&p.ALPHA_MASK)>>>24;var ar=(c1&p.RED_MASK)>>16;var 
ag=(c1&p.GREEN_MASK)>>8;var ab=(c1&p.BLUE_MASK);var br=(c2&p.RED_MASK)>>16;var bg=(c2&p.GREEN_MASK)>>8;var 
bb=(c2&p.BLUE_MASK);var cr=ar+br-((ar*br)>>7);var cg=ag+bg-((ag*bg)>>7);var cb=ab+bb-((ab*bb)>>7);r
 
eturn(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|(p.peg(ar+(((cr-ar)*f)>>8))<<16)|(p.peg(ag+(((cg-ag)*f)>>8))<<8)|(p.peg(ab+(((cb-ab)*f)>>8))));},multiply:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var f=(c2&p.ALPHA_MASK)>>>24;var ar=(c1&p.RED_MASK)>>16;var 
ag=(c1&p.GREEN_MASK)>>8;var ab=(c1&p.BLUE_MASK);var br=(c2&p.RED_MASK)>>16;var bg=(c2&p.GREEN_MASK)>>8;var 
bb=(c2&p.BLUE_MASK);var cr=(ar*br)>>8;var cg=(ag*bg)>>8;var 
cb=(ab*bb)>>8;return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|(p.peg(ar+(((cr-ar)*f)>>8))<<16)|(p.peg(ag+(((cg-ag)*f)>>8))<<8)|(p.peg(ab+(((cb-ab)*f)>>8))));},screen:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var f=(c2&p.ALPHA_MASK)>>>24;var ar=(c1&p.RED_MASK)>>16;var 
ag=(c1&p.GREEN_MASK)>>8;var ab=(c1&p.BLUE_MASK);var br=(c2&p.RED_MASK)>>16;var bg=(c2&p.GREEN_MASK)>>8;var 
bb=(c2&p.BLUE_MASK);var cr=255-(((255-ar)*(255-br))>>8);var cg=255-(((255-ag)*(255-bg))>>8);var 
cb=255-(((255-ab)*(255-bb))>>8);return(Math.min(((c1&p
 
.ALPHA_MASK)>>>24)+f,0xff)<<24|(p.peg(ar+(((cr-ar)*f)>>8))<<16)|(p.peg(ag+(((cg-ag)*f)>>8))<<8)|(p.peg(ab+(((cb-ab)*f)>>8))));},hard_light:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var f=(c2&p.ALPHA_MASK)>>>24;var ar=(c1&p.RED_MASK)>>16;var 
ag=(c1&p.GREEN_MASK)>>8;var ab=(c1&p.BLUE_MASK);var br=(c2&p.RED_MASK)>>16;var bg=(c2&p.GREEN_MASK)>>8;var 
bb=(c2&p.BLUE_MASK);var cr=(br<128)?((ar*br)>>7):(255-(((255-ar)*(255-br))>>7));var 
cg=(bg<128)?((ag*bg)>>7):(255-(((255-ag)*(255-bg))>>7));var 
cb=(bb<128)?((ab*bb)>>7):(255-(((255-ab)*(255-bb))>>7));return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|(p.peg(ar+(((cr-ar)*f)>>8))<<16)|(p.peg(ag+(((cg-ag)*f)>>8))<<8)|(p.peg(ab+(((cb-ab)*f)>>8))));},soft_light:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var f=(c2&p.ALPHA_MASK)>>>24;var ar=(c1&p.RED_MASK)>>16;var 
ag=(c1&p.GREEN_MASK)>>8;var ab=(c1&p.BLUE_MASK);var br=(c2&p.RED_MASK)>>16;var bg=(c2&p.GREEN_MASK)>>8;var 
bb=(c2&p.BLUE_MASK);var cr=((ar*br)>>7)
 +((ar*ar)>>8)-((ar*ar*br)>>15);var cg=((ag*bg)>>7)+((ag*ag)>>8)-((ag*ag*bg)>>15);var 
cb=((ab*bb)>>7)+((ab*ab)>>8)-((ab*ab*bb)>>15);return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|(p.peg(ar+(((cr-ar)*f)>>8))<<16)|(p.peg(ag+(((cg-ag)*f)>>8))<<8)|(p.peg(ab+(((cb-ab)*f)>>8))));},overlay:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var f=(c2&p.ALPHA_MASK)>>>24;var ar=(c1&p.RED_MASK)>>16;var 
ag=(c1&p.GREEN_MASK)>>8;var ab=(c1&p.BLUE_MASK);var br=(c2&p.RED_MASK)>>16;var bg=(c2&p.GREEN_MASK)>>8;var 
bb=(c2&p.BLUE_MASK);var cr=(ar<128)?((ar*br)>>7):(255-(((255-ar)*(255-br))>>7));var 
cg=(ag<128)?((ag*bg)>>7):(255-(((255-ag)*(255-bg))>>7));var 
cb=(ab<128)?((ab*bb)>>7):(255-(((255-ab)*(255-bb))>>7));return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|(p.peg(ar+(((cr-ar)*f)>>8))<<16)|(p.peg(ag+(((cg-ag)*f)>>8))<<8)|(p.peg(ab+(((cb-ab)*f)>>8))));},dodge:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var f=(c2&p.ALPHA_MASK)>>>24;var ar=(c1&p.RED_MASK)>>16;var a
 g=(c1&p.GREEN_MASK)>>8;var ab=(c1&p.BLUE_MASK);var br=(c2&p.RED_MASK)>>16;var bg=(c2&p.GREEN_MASK)>>8;var 
bb=(c2&p.BLUE_MASK);var cr=(br===255)?255:p.peg((ar<<8)/(255-br));var 
cg=(bg===255)?255:p.peg((ag<<8)/(255-bg));var 
cb=(bb===255)?255:p.peg((ab<<8)/(255-bb));return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|(p.peg(ar+(((cr-ar)*f)>>8))<<16)|(p.peg(ag+(((cg-ag)*f)>>8))<<8)|(p.peg(ab+(((cb-ab)*f)>>8))));},burn:function(a,b){var
 c1=p.rgbaToInt(a);var c2=p.rgbaToInt(b);var f=(c2&p.ALPHA_MASK)>>>24;var ar=(c1&p.RED_MASK)>>16;var 
ag=(c1&p.GREEN_MASK)>>8;var ab=(c1&p.BLUE_MASK);var br=(c2&p.RED_MASK)>>16;var bg=(c2&p.GREEN_MASK)>>8;var 
bb=(c2&p.BLUE_MASK);var cr=(br===0)?0:255-p.peg(((255-ar)<<8)/br);var 
cg=(bg===0)?0:255-p.peg(((255-ag)<<8)/bg);var 
cb=(bb===0)?0:255-p.peg(((255-ab)<<8)/bb);return(Math.min(((c1&p.ALPHA_MASK)>>>24)+f,0xff)<<24|(p.peg(ar+(((cr-ar)*f)>>8))<<16)|(p.peg(ag+(((cg-ag)*f)>>8))<<8)|(p.peg(ab+(((cb-ab)*f)>>8))));}};p.color=function
 color(aValue1,aValu
 e2,aValue3,aValue4){var r,g,b,rgb,aColor;function 
toRGB(h,s,b){h=(h/redRange)*360;s=(s/greenRange)*100;b=(b/blueRange)*100;var 
br=Math.round(b/100*255);if(s===0){return[br,br,br];}else{var hue=h%360;var f=hue%60;var 
p=Math.round((b*(100-s))/10000*255);var q=Math.round((b*(6000-s*f))/600000*255);var 
t=Math.round((b*(6000-s*(60-f)))/600000*255);switch(Math.floor(hue/60)){case 0:return[br,t,p];case 
1:return[q,br,p];case 2:return[p,br,t];case 3:return[p,q,br];case 4:return[t,p,br];case 5:return[br,p,q];}}}
+function getColor(aValue,range){return Math.round(255*(aValue/range));}
+if(arguments.length===3){aColor=p.color(aValue1,aValue2,aValue3,opacityRange);}else 
if(arguments.length===4){var 
a=aValue4/opacityRange;a=isNaN(a)?1:a;if(curColorMode===p.HSB){rgb=toRGB(aValue1,aValue2,aValue3);r=rgb[0];g=rgb[1];b=rgb[2];}else{r=getColor(aValue1,redRange);g=getColor(aValue2,greenRange);b=getColor(aValue3,blueRange);}
+aColor="rgba("+r+","+g+","+b+","+a+")";}else if(typeof 
aValue1==="string"){aColor=aValue1;if(arguments.length===2){var 
c=aColor.split(",");c[3]=(aValue2/opacityRange)+")";aColor=c.join(",");}}else 
if(arguments.length===2){aColor=p.color(aValue1,aValue1,aValue1,aValue2);}else if(typeof 
aValue1==="number"&&aValue1<256&&aValue1>=0){aColor=p.color(aValue1,aValue1,aValue1,opacityRange);}else 
if(typeof aValue1==="number"){var 
intcolor=0;if(aValue1<0){intcolor=4294967296-(aValue1*-1);}else{intcolor=aValue1;}
+var ac=Math.floor((intcolor%4294967296)/16777216);var rc=Math.floor((intcolor%16777216)/65536);var 
gc=Math.floor((intcolor%65536)/256);var 
bc=intcolor%256;aColor=p.color(rc,gc,bc,ac);}else{aColor=p.color(redRange,greenRange,blueRange,opacityRange);}
+return aColor;};var verifyChannel=function verifyChannel(aColor){if(aColor.constructor===Array){return 
aColor;}else{return p.color(aColor);}};p.red=function(aColor){return 
parseInt(verifyChannel(aColor).slice(5),10);};p.green=function(aColor){return 
parseInt(verifyChannel(aColor).split(",")[1],10);};p.blue=function(aColor){return 
parseInt(verifyChannel(aColor).split(",")[2],10);};p.alpha=function(aColor){return 
parseInt(parseFloat(verifyChannel(aColor).split(",")[3])*255,10);};p.lerpColor=function 
lerpColor(c1,c2,amt){var colors1=p.color(c1).split(",");var r1=parseInt(colors1[0].split("(")[1],10);var 
g1=parseInt(colors1[1],10);var b1=parseInt(colors1[2],10);var a1=parseFloat(colors1[3].split(")")[0],10);var 
colors2=p.color(c2).split(",");var r2=parseInt(colors2[0].split("(")[1],10);var 
g2=parseInt(colors2[1],10);var b2=parseInt(colors2[2],10);var a2=parseFloat(colors2[3].split(")")[0],10);var 
r=parseInt(p.lerp(r1,r2,amt),10);var g=parseInt(p.lerp(g1,g2,amt),10);var b=parseIn
 t(p.lerp(b1,b2,amt),10);var a=parseFloat(p.lerp(a1,a2,amt),10);var 
aColor="rgba("+r+","+g+","+b+","+a+")";return aColor;};p.DefaultColor=function(aValue1,aValue2,aValue3){var 
tmpColorMode=curColorMode;curColorMode=p.RGB;var 
c=p.color(aValue1/255*redRange,aValue2/255*greenRange,aValue3/255*blueRange);curColorMode=tmpColorMode;return 
c;};p.colorMode=function 
colorMode(mode,range1,range2,range3,range4){curColorMode=mode;if(arguments.length>=4){redRange=range1;greenRange=range2;blueRange=range3;}
+if(arguments.length===5){opacityRange=range4;}
+if(arguments.length===2){p.colorMode(mode,range1,range1,range1,range1);}};p.blendColor=function(c1,c2,mode){var
 color=0;switch(mode){case p.REPLACE:color=p.modes.replace(c1,c2);break;case 
p.BLEND:color=p.modes.blend(c1,c2);break;case p.ADD:color=p.modes.add(c1,c2);break;case 
p.SUBTRACT:color=p.modes.subtract(c1,c2);break;case p.LIGHTEST:color=p.modes.lightest(c1,c2);break;case 
p.DARKEST:color=p.modes.darkest(c1,c2);break;case p.DIFFERENCE:color=p.modes.difference(c1,c2);break;case 
p.EXCLUSION:color=p.modes.exclusion(c1,c2);break;case p.MULTIPLY:color=p.modes.multiply(c1,c2);break;case 
p.SCREEN:color=p.modes.screen(c1,c2);break;case p.HARD_LIGHT:color=p.modes.hard_light(c1,c2);break;case 
p.SOFT_LIGHT:color=p.modes.soft_light(c1,c2);break;case p.OVERLAY:color=p.modes.overlay(c1,c2);break;case 
p.DODGE:color=p.modes.dodge(c1,c2);break;case p.BURN:color=p.modes.burn(c1,c2);break;}
+return color;};p.translate=function 
translate(x,y,z){if(p.use3DContext){forwardTransform.translate(x,y,z);}else{curContext.translate(x,y);}};p.scale=function
 
scale(x,y,z){if(p.use3DContext){forwardTransform.scale(x,y,z);}else{curContext.scale(x,y||x);}};p.pushMatrix=function
 
pushMatrix(){if(p.use3DContext){userMatrixStack.load(modelView);}else{curContext.save();}};p.popMatrix=function
 
popMatrix(){if(p.use3DContext){modelView.set(userMatrixStack.pop());}else{curContext.restore();}};p.resetMatrix=function
 resetMatrix(){forwardTransform.reset();};p.applyMatrix=function applyMatrix(){var 
a=arguments;if(!p.use3DContext){for(var cnt=a.length;cnt<16;cnt++){a[cnt]=0;}
+a[10]=a[15]=1;}
+forwardTransform.apply(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15]);};p.rotateX=function(angleInRadians){forwardTransform.rotateX(angleInRadians);};p.rotateZ=function(angleInRadians){forwardTransform.rotateZ(angleInRadians);};p.rotateY=function(angleInRadians){forwardTransform.rotateY(angleInRadians);};p.rotate=function
 
rotate(angleInRadians){if(p.use3DContext){forwardTransform.rotateZ(angleInRadians);}else{curContext.rotate(angleInRadians);}};p.pushStyle=function
 pushStyle(){curContext.save();p.pushMatrix();var 
newState={'doFill':doFill,'doStroke':doStroke,'curTint':curTint,'curRectMode':curRectMode,'curColorMode':curColorMode,'redRange':redRange,'blueRange':blueRange,'greenRange':greenRange,'opacityRange':opacityRange,'curTextFont':curTextFont,'curTextSize':curTextSize};styleArray.push(newState);};p.popStyle=function
 popStyle(){var 
oldState=styleArray.pop();if(oldState){curContext.restore();p.popMatrix();doFill=oldState.doFill;doSt
 
roke=oldState.doStroke;curTint=oldState.curTint;curRectMode=oldState.curRectmode;curColorMode=oldState.curColorMode;redRange=oldState.redRange;blueRange=oldState.blueRange;greenRange=oldState.greenRange;opacityRange=oldState.opacityRange;curTextFont=oldState.curTextFont;curTextSize=oldState.curTextSize;}else{throw"Too
 many popStyle() without enough pushStyle()";}};p.year=function year(){return new 
Date().getYear()+1900;};p.month=function month(){return new Date().getMonth();};p.day=function day(){return 
new Date().getDay();};p.hour=function hour(){return new Date().getHours();};p.minute=function minute(){return 
new Date().getMinutes();};p.second=function second(){return new Date().getSeconds();};p.millis=function 
millis(){return new Date().getTime()-start;};p.noLoop=function 
noLoop(){doLoop=false;loopStarted=false;clearInterval(looping);};p.redraw=function redraw(){var sec=(new 
Date().getTime()-timeSinceLastFPS)/1000;framesSinceLastFPS++;var fps=framesSinceLastFPS/sec;if(sec
0.5){timeSinceLastFPS=new Date().getTime();framesSinceLastFPS=0;p.FRAME_RATE=fps;}
+p.frameCount++;inDraw=true;if(p.use3DContext){curContext.clear(curContext.COLOR_BUFFER_BIT|curContext.DEPTH_BUFFER_BIT);p.camera();p.draw();}else{p.pushMatrix();p.draw();p.popMatrix();}
+inDraw=false;};p.loop=function loop(){if(loopStarted){return;}
+looping=window.setInterval(function(){try{try{p.focused=document.hasFocus();}catch(e){}
+p.redraw();}
+catch(e_loop){window.clearInterval(looping);throw 
e_loop;}},curMsPerFrame);doLoop=true;loopStarted=true;};p.frameRate=function 
frameRate(aRate){curFrameRate=aRate;curMsPerFrame=1000/curFrameRate;};p.exit=function 
exit(){window.clearInterval(looping);};p.cursor=function 
cursor(mode){curCursor=document.body.style.cursor=mode;};p.noCursor=function 
noCursor(){curCursor=document.body.style.cursor=p.NOCURSOR;};p.link=function(href,target){window.location=href;};p.beginDraw=function
 beginDraw(){};p.endDraw=function endDraw(){};p.Import=function Import(lib){};var 
contextMenu=function(e){e.preventDefault();e.stopPropagation();};p.disableContextMenu=function 
disableContextMenu(){curElement.addEventListener('contextmenu',contextMenu,false);};p.enableContextMenu=function
 enableContextMenu(){curElement.removeEventListener('contextmenu',contextMenu,false);};function 
decToBin(value,numBitsInValue){var mask=1;mask=mask<<(numBitsInValue-1);var str="";for(var 
i=0;i<numBitsInValue;i++){str+=(m
 ask&value)?"1":"0";mask=mask>>>1;}
+return str;}
+p.binary=function(num,numBits){var numBitsInValue=32;if(typeof num==="string"&&num.length>1){var 
c=num.slice(5,-1).split(",");var 
sbin=[decToBin(c[3]*255,8),decToBin(c[0],8),decToBin(c[1],8),decToBin(c[2],8)];var 
s=sbin[0]+sbin[1]+sbin[2]+sbin[3];if(numBits){s=s.substr(-numBits);}
+else{s=s.replace(/^0+$/g,"0");s=s.replace(/^0{1,}1/g,"1");}
+return s;}
+if(typeof num==="string"){num=num.charCodeAt(0);if(numBits){numBitsInValue=32;}else{numBitsInValue=16;}}
+var str=decToBin(num,numBitsInValue);if(numBits){str=str.substr(-numBits);}
+return str;};p.unbinary=function unbinary(binaryString){var binaryPattern=new RegExp("^[0|1]{8}$");var 
addUp=0;if(isNaN(binaryString)){throw"NaN_Err";}else{if(arguments.length===1||binaryString.length===8){if(binaryPattern.test(binaryString)){for(var
 i=0;i<8;i++){addUp+=(Math.pow(2,i)*parseInt(binaryString.charAt(7-i),10));}
+return addUp+"";}else{throw"notBinary: the value passed into unbinary was not an 8 bit binary 
number";}}else{throw"longErr";}}
+return addUp;};p.nfs=function(num,left,right){var str,len,formatLength,rounded;if(typeof 
num==="object"&&num.constructor===Array){str=new Array(0);len=num.length;for(var 
i=0;i<len;i++){str[i]=p.nfs(num[i],left,right);}}else if(arguments.length===3){var 
negative=num<0?true:false;if(right===0){right=1;}
+if(right<0){rounded=Math.round(num);}else{rounded=Math.round(num*Math.pow(10,right))/Math.pow(10,right);}
+var 
splitNum=Math.abs(rounded).toString().split(".");formatLength=left-splitNum[0].length;for(;formatLength>0;formatLength--){splitNum[0]="0"+splitNum[0];}
+if(splitNum.length===2||right>0){splitNum[1]=splitNum.length===2?splitNum[1]:"";formatLength=right-splitNum[1].length;for(;formatLength>0;formatLength--){splitNum[1]+="0";}
+str=splitNum.join(".");}else{str=splitNum[0];}
+str=(negative?"-":" ")+str;}else if(arguments.length===2){str=p.nfs(num,left,-1);}
+return str;};p.nfp=function(num,left,right){var str,len,formatLength,rounded;if(typeof 
num==="object"&&num.constructor===Array){str=new Array(0);len=num.length;for(var 
i=0;i<len;i++){str[i]=p.nfp(num[i],left,right);}}else if(arguments.length===3){var 
negative=num<0?true:false;if(right===0){right=1;}
+if(right<0){rounded=Math.round(num);}else{rounded=Math.round(num*Math.pow(10,right))/Math.pow(10,right);}
+var 
splitNum=Math.abs(rounded).toString().split(".");formatLength=left-splitNum[0].length;for(;formatLength>0;formatLength--){splitNum[0]="0"+splitNum[0];}
+if(splitNum.length===2||right>0){splitNum[1]=splitNum.length===2?splitNum[1]:"";formatLength=right-splitNum[1].length;for(;formatLength>0;formatLength--){splitNum[1]+="0";}
+str=splitNum.join(".");}else{str=splitNum[0];}
+str=(negative?"-":"+")+str;}else if(arguments.length===2){str=p.nfp(num,left,-1);}
+return str;};p.nfc=function(num,right){var str;var decimals=right>=0?right:0;if(typeof 
num==="object"){str=new Array(0);for(var i=0;i<num.length;i++){str[i]=p.nfc(num[i],decimals);}}else 
if(arguments.length===2){var rawStr=p.nfs(num,0,decimals);var ary=new Array(0);ary=rawStr.split('.');var 
leftStr=ary[0];var rightStr=ary.length>1?'.'+ary[1]:'';var 
commas=/(\d+)(\d{3})/;while(commas.test(leftStr)){leftStr=leftStr.replace(commas,'$1'+','+'$2');}
+str=leftStr+rightStr;}else if(arguments.length===1){str=p.nfc(num,0);}
+return str;};var decimalToHex=function 
decimalToHex(d,padding){padding=typeof(padding)==="undefined"||padding===null?padding=8:padding;if(d<0){d=0xFFFFFFFF+d+1;}
+var hex=Number(d).toString(16).toUpperCase();while(hex.length<padding){hex="0"+hex;}
+if(hex.length>=padding){hex=hex.substring(hex.length-padding,hex.length);}
+return hex;};p.hex=function hex(value,len){var hexstring="";var 
patternRGBa=/^rgba?\((\d{1,3}),(\d{1,3}),(\d{1,3})(,\d?\.?\d*)?\)$/i;if(arguments.length===1){hexstring=hex(value,8);}else{if(patternRGBa.test(value)){hexstring=decimalToHex(p.rgbaToInt(value),len);}else{hexstring=decimalToHex(value,len);}}
+return hexstring;};p.unhex=function(str){var value=0,multiplier=1,num=0;var len=str.length-1;for(var 
i=len;i>=0;i--){try{switch(str[i]){case"0":num=0;break;case"1":num=1;break;case"2":num=2;break;case"3":num=3;break;case"4":num=4;break;case"5":num=5;break;case"6":num=6;break;case"7":num=7;break;case"8":num=8;break;case"9":num=9;break;case"A":case"a":num=10;break;case"B":case"b":num=11;break;case"C":case"c":num=12;break;case"D":case"d":num=13;break;case"E":case"e":num=14;break;case"F":case"f":num=15;break;default:return
 0;}
+value+=num*multiplier;multiplier*=16;}catch(e){Processing.debug(e);}
+if(value>2147483647){value-=4294967296;}}
+return value;};p.loadStrings=function loadStrings(url){return ajax(url).split("\n");};p.nf=function(){var 
str,num,pad,arr,left,right,isNegative,test,i;if(arguments.length===2&&typeof arguments[0]==='number'&&typeof 
arguments[1]==='number'&&(arguments[0]+"").indexOf('.')===-1){num=arguments[0];pad=arguments[1];isNegative=num<0;if(isNegative){num=Math.abs(num);}
+str=""+num;for(i=pad-str.length;i>0;i--){str="0"+str;}
+if(isNegative){str="-"+str;}}else if(arguments.length===2&&typeof 
arguments[0]==='object'&&arguments[0].constructor===Array&&typeof 
arguments[1]==='number'){arr=arguments[0];pad=arguments[1];str=new 
Array(arr.length);for(i=0;i<arr.length&&str!==undefined;i++){test=this.nf(arr[i],pad);if(test===undefined){str=undefined;}else{str[i]=test;}}}else
 if(arguments.length===3&&typeof arguments[0]==='number'&&typeof arguments[1]==='number'&&typeof 
arguments[2]==='number'&&(arguments[0]+"").indexOf('.')>=0){num=arguments[0];left=arguments[1];right=arguments[2];isNegative=num<0;if(isNegative){num=Math.abs(num);}
+if(right<0&&Math.floor(num)%2===1){if((num)-Math.floor(num)>=0.5){num=num+1;}}
+str=""+num;for(i=left-str.indexOf('.');i>0;i--){str="0"+str;}
+var 
numDec=str.length-str.indexOf('.')-1;if(numDec<=right){for(i=right-(str.length-str.indexOf('.')-1);i>0;i--){str=str+"0";}}else
 if(right>0){str=str.substring(0,str.length-(numDec-right));}else 
if(right<0){str=str.substring(0,str.indexOf('.'));}
+if(isNegative){str="-"+str;}}else if(arguments.length===3&&typeof 
arguments[0]==='object'&&arguments[0].constructor===Array&&typeof arguments[1]==='number'&&typeof 
arguments[2]==='number'){arr=arguments[0];left=arguments[1];right=arguments[2];str=new 
Array(arr.length);for(i=0;i<arr.length&&str!==undefined;i++){test=this.nf(arr[i],left,right);if(test===undefined){str=undefined;}else{str[i]=test;}}}
+return str;};p.matchAll=function matchAll(aString,aRegExp){var i=0,results=[],latest,regexp=new 
RegExp(aRegExp,"g");latest=results[i]=regexp.exec(aString);while(latest){i++;latest=results[i]=regexp.exec(aString);}
+return results.slice(0,i);};String.prototype.replaceAll=function(re,replace){return this.replace(new 
RegExp(re,"g"),replace);};String.prototype.equals=function equals(str){var 
ret=true;if(this.length===str.length){for(var 
i=0;i<this.length;i++){if(this.charAt(i)!==str.charAt(i)){ret=false;break;}}}else{ret=false;}
+return ret;};p.match=function(str,regexp){return str.match(regexp);};var tinylogLite=(function(){"use 
strict";var tinylogLite={},undef="undefined",func="function",False=!1,True=!0,log="log";if(typeof 
tinylog!==undef&&typeof tinylog[log]===func){tinylogLite[log]=tinylog[log];}else if(typeof 
document!==undef&&!document.fake){(function(){var 
doc=document,$div="div",$style="style",$title="title",containerStyles={zIndex:10000,position:"fixed",bottom:"0px",width:"100%",height:"15%",fontFamily:"sans-serif",color:"black",backgroundColor:"white"},outputStyles={position:"relative",fontFamily:"monospace",overflow:"auto",height:"100%"},resizerStyles={height:"5px",marginTop:"-5px",cursor:"n-resize",backgroundColor:"darkgrey"},closeButtonStyles={position:"absolute",top:"0px",right:"15px",border:"1px
 solid black",borderTop:"none",cursor:"pointer",fontWeight:"bold",textAlign:"center",padding:"1px 
5px",backgroundColor:"#eb0000"},entryStyles={borderBottom:"1px solid #d3d3d3",minHeight:"16px"}
 ,entryTextStyles={fontSize:"12px",margin:"0 5px 0 
5px",maxWidth:"100%",whiteSpace:"pre-wrap",overflow:"auto"},view=doc.defaultView,docElem=doc.documentElement,docElemStyle=docElem[$style],setStyles=function(){var
 
i=arguments.length,elemStyle,styles,style;while(i--){styles=arguments[i--];elemStyle=arguments[i][$style];for(style
 in 
styles){if(styles.hasOwnProperty(style)){elemStyle[style]=styles[style];}}}},observer=function(obj,event,handler){if(obj.addEventListener){obj.addEventListener(event,handler,False);}else
 if(obj.attachEvent){obj.attachEvent("on"+event,handler);}
+return[obj,event,handler];},unobserve=function(obj,event,handler){if(obj.removeEventListener){obj.removeEventListener(event,handler,False);}else
 if(obj.detachEvent){obj.detachEvent("on"+event,handler);}},clearChildren=function(node){var 
children=node.childNodes,child=children.length;while(child--){node.removeChild(children.item(0));}},append=function(to,elem){return
 to.appendChild(elem);},createElement=function(localName){return 
doc.createElement(localName);},createTextNode=function(text){return 
doc.createTextNode(text);},createLog=tinylogLite[log]=function(message){var
+uninit,originalPadding=docElemStyle.paddingBottom,container=createElement($div),containerStyle=container[$style],resizer=append(container,createElement($div)),output=append(container,createElement($div)),closeButton=append(container,createElement($div)),resizingLog=False,previousHeight=False,previousScrollTop=False,updateSafetyMargin=function(){docElemStyle.paddingBottom=container.clientHeight+"px";},setContainerHeight=function(height){var
 viewHeight=view.innerHeight,resizerHeight=resizer.clientHeight;if(height<0){height=0;}else 
if(height+resizerHeight>viewHeight){height=viewHeight-resizerHeight;}
+containerStyle.height=height/viewHeight*100+"%";updateSafetyMargin();},observers=[observer(doc,"mousemove",function(evt){if(resizingLog){setContainerHeight(view.innerHeight-evt.clientY);output.scrollTop=previousScrollTop;}}),observer(doc,"mouseup",function(){if(resizingLog){resizingLog=previousScrollTop=False;}}),observer(resizer,"dblclick",function(evt){evt.preventDefault();if(previousHeight){setContainerHeight(previousHeight);previousHeight=False;}else{previousHeight=container.clientHeight;containerStyle.height="0px";}}),observer(resizer,"mousedown",function(evt){evt.preventDefault();resizingLog=True;previousScrollTop=output.scrollTop;}),observer(resizer,"contextmenu",function(){resizingLog=False;}),observer(closeButton,"click",function(){uninit();})];uninit=function(){var
 i=observers.length;while(i--){unobserve.apply(tinylogLite,observers[i]);}
+docElem.removeChild(container);docElemStyle.paddingBottom=originalPadding;clearChildren(output);clearChildren(container);tinylogLite[log]=createLog;};setStyles(container,containerStyles,output,outputStyles,resizer,resizerStyles,closeButton,closeButtonStyles);closeButton[$title]="Close
 Log";append(closeButton,createTextNode("X"));resizer[$title]="Double-click to toggle log 
minimization";docElem.insertBefore(container,docElem.firstChild);tinylogLite[log]=function(message){var 
entry=append(output,createElement($div)),entryText=append(entry,createElement($div));entry[$title]=(new 
Date()).toLocaleTimeString();setStyles(entry,entryStyles,entryText,entryTextStyles);append(entryText,createTextNode(message));output.scrollTop=output.scrollHeight;};tinylogLite[log](message);};}());}else
 if(typeof print===func){tinylogLite[log]=print;}
+return tinylogLite;}()),logBuffer=[];p.console=window.console||tinylogLite;p.println=function 
println(message){var 
bufferLen=logBuffer.length;if(bufferLen){tinylogLite.log(logBuffer.join(""));logBuffer.length=0;}
+if(arguments.length===0&&bufferLen===0){tinylogLite.log("");}else 
if(arguments.length!==0){tinylogLite.log(message);}};p.print=function 
print(message){logBuffer.push(message);};p.str=function str(val){var ret;if(arguments.length===1){if(typeof 
val==="string"&&val.length===1){ret=val;}else if(typeof val==="object"&&val.constructor===Array){ret=new 
Array(0);for(var i=0;i<val.length;i++){ret[i]=str(val[i]);}}else{ret=val+"";}}
+return ret;};p.char=function char(key){var ret;if(arguments.length===1&&typeof 
key==="number"&&(key+"").indexOf('.')===-1){ret=String.fromCharCode(key);}else 
if(arguments.length===1&&typeof key==="object"&&key.constructor===Array){ret=new Array(0);for(var 
i=0;i<key.length;i++){ret[i]=char(key[i]);}}else{throw"char() may receive only one argument of type int, 
byte, int[], or byte[].";}
+return ret;};p.trim=function(str){var newstr;if(typeof str==="object"&&str.constructor===Array){newstr=new 
Array(0);for(var 
i=0;i<str.length;i++){newstr[i]=p.trim(str[i]);}}else{newstr=str.replace(/^\s*/,'').replace(/\s*$/,'').replace(/\r*$/,'');}
+return newstr;};p.sq=function sq(aNumber){return aNumber*aNumber;};p.sqrt=function sqrt(aNumber){return 
Math.sqrt(aNumber);};p.int=function int(val){var ret;if((val||val===0)&&arguments.length===1){if(typeof 
val==='number'){var isNegative=val<0;if(isNegative){val=Math.abs(val);}
+ret=Math.floor(val);if(isNegative){ret=-ret;}}else if(typeof 
val==='boolean'){if(val===true){ret=1;}else{ret=0;}}else if(typeof val==='string'){if(val.indexOf(' 
')>-1){ret=0;}else 
if(val.length===1){ret=val.charCodeAt(0);}else{ret=parseInt(val,10);if(isNaN(ret)){ret=0;}}}else if(typeof 
val==='object'&&val.constructor===Array){ret=new Array(val.length);for(var i=0;i<val.length;i++){if(typeof 
val[i]==='string'&&val[i].indexOf('.')>-1){ret[i]=0;}else{ret[i]=p.int(val[i]);}}}}
+return ret;};p.min=function(){var numbers;if(arguments.length===1&&typeof 
arguments[0]==='object'&&arguments[0].constructor===Array){numbers=arguments[0];}else{numbers=arguments;}
+for(var i=0;i<numbers.length;i++){if(typeof numbers[i]!=='number'){return undefined;}}
+return Math.min.apply(this,numbers);};p.max=function(){var numbers;if(arguments.length===1&&typeof 
arguments[0]==='object'&&arguments[0].constructor===Array){numbers=arguments[0];}else{numbers=arguments;}
+for(var i=0;i<numbers.length;i++){if(typeof numbers[i]!=='number'){return undefined;}}
+return Math.max.apply(this,numbers);};p.floor=function floor(aNumber){return 
Math.floor(aNumber);};p.float=function float(val){var ret;if(arguments.length===1){if(typeof 
val==='number'){if((val+"").indexOf('.')>-1){throw"float() may not accept float 
arguments.";}else{ret=val.toFixed(1);}}else if(typeof val==='boolean'){if(val===true){ret=1.0;}else{ret=0.0;}
+ret=ret.toFixed(1);}else if(typeof val==='string'){if(val.indexOf(' ')>-1){ret=NaN;}else 
if(val.length===1){ret=val.charCodeAt(0);ret=ret.toFixed(1);}else{ret=parseFloat(val);}}else if(typeof 
val==='object'&&val.constructor===Array){ret=new Array(val.length);for(var 
i=0;i<val.length;i++){ret[i]=p.float(val[i]);}}}
+return ret;};p.ceil=function ceil(aNumber){return Math.ceil(aNumber);};p.round=function 
round(aNumber){return Math.round(aNumber);};p.lerp=function 
lerp(value1,value2,amt){return((value2-value1)*amt)+value1;};p.abs=function abs(aNumber){return 
Math.abs(aNumber);};p.cos=function cos(aNumber){return Math.cos(aNumber);};p.sin=function sin(aNumber){return 
Math.sin(aNumber);};p.pow=function pow(aNumber,aExponent){return Math.pow(aNumber,aExponent);};p.tan=function 
tan(aNumber){return Math.tan(aNumber);};p.atan=function atan(aNumber){return 
Math.atan(aNumber);};p.atan2=function atan2(aNumber,aNumber2){return 
Math.atan2(aNumber,aNumber2);};p.radians=function radians(aAngle){return(aAngle/180)*p.PI;};p.log=function 
log(aNumber){return Math.log(aNumber);};p.exp=function exp(aNumber){return 
Math.exp(aNumber);};p.asin=function asin(aNumber){return Math.asin(aNumber);};p.acos=function 
acos(aNumber){return Math.acos(aNumber);};p.boolean=function(val){var ret=false;if(val&&typeof val==='n
 umber'&&val!==0){ret=true;}else if(val&&typeof val==='boolean'&&val===true){ret=true;}else if(val&&typeof 
val==='string'&&val.toLowerCase()==='true'){ret=true;}else if(val&&typeof 
val==='object'&&val.constructor===Array){ret=new Array(val.length);for(var 
i=0;i<val.length;i++){ret[i]=p.boolean(val[i]);}}
+return ret;};p.dist=function dist(x1,y1,x2,y2){return 
Math.sqrt(Math.pow(x2-x1,2)+Math.pow(y2-y1,2));};p.map=function map(value,istart,istop,ostart,ostop){return 
ostart+(ostop-ostart)*((value-istart)/(istop-istart));};p.mag=function(a,b,c){if(arguments.length===2){return 
Math.sqrt(a*a+b*b);}else if(arguments.length===3){return Math.sqrt(a*a+b*b+c*c);}};p.Random=function(){var 
haveNextNextGaussian=false,nextNextGaussian;this.nextGaussian=function(){if(haveNextNextGaussian){haveNextNextGaussian=false;return
 nextNextGaussian;}else{var v1,v2,s;do{v1=2*p.random(1)-1;v2=2*p.random(1)-1;s=v1*v1+v2*v2;}
+while(s>=1||s===0);var 
multiplier=Math.sqrt(-2*Math.log(s)/s);nextNextGaussian=v2*multiplier;haveNextNextGaussian=true;return 
v1*multiplier;}};};p.byte=function(aNumber){return aNumber||0;};p.norm=function norm(aNumber,low,high){var 
range=high-low;return((1/range)*aNumber)-((1/range)*low);};p.random=function random(aMin,aMax){return 
arguments.length===2?aMin+(Math.random()*(aMax-aMin)):Math.random()*aMin;};var noiseGen=function 
noiseGen(x,y){var n=x+y*57;n=(n<<13)^n;return 
Math.abs(1.0-(((n*((n*n*15731)+789221)+1376312589)&0x7fffffff)/1073741824.0));};var smoothedNoise=function 
smoothedNoise(x,y){var 
corners=(noiseGen(x-1,y-1)+noiseGen(x+1,y-1)+noiseGen(x-1,y+1)+noiseGen(x+1,y+1))/16,sides=(noiseGen(x-1,y)+noiseGen(x+1,y)+noiseGen(x,y-1)+noiseGen(x,y+1))/8,center=noiseGen(x,y)/4;return
 corners+sides+center;};var interpolate=function interpolate(a,b,x){var ft=x*p.PI;var 
f=(1-Math.cos(ft))*0.5;return a*(1-f)+b*f;};var interpolatedNoise=function interpolatedNoise(x,y){var integ
 er_X=Math.floor(x);var fractional_X=x-integer_X;var integer_Y=Math.floor(y);var fractional_Y=y-integer_Y;var 
v1=smoothedNoise(integer_X,integer_Y),v2=smoothedNoise(integer_X+1,integer_Y),v3=smoothedNoise(integer_X,integer_Y+1),v4=smoothedNoise(integer_X+1,integer_Y+1);var
 i1=interpolate(v1,v2,fractional_X),i2=interpolate(v3,v4,fractional_X);return 
interpolate(i1,i2,fractional_Y);};var perlinNoise_2D=function perlinNoise_2D(x,y){var 
total=0,p=0.25,n=3;for(var i=0;i<=n;i++){var frequency=Math.pow(2,i);var 
amplitude=Math.pow(p,i);total+=interpolatedNoise(x*frequency,y*frequency)*amplitude;}
+return total;};var perlinNoise_3D=function perlinNoise_3D(){return 
0;};p.noise=function(x,y,z){switch(arguments.length){case 2:return perlinNoise_2D(x,y);case 3:return 
perlinNoise_3D(x,y,z);case 1:return perlinNoise_2D(x,x);}};p.constrain=function 
constrain(aNumber,aMin,aMax){return Math.min(Math.max(aNumber,aMin),aMax);};p.degrees=function 
degrees(aAngle){aAngle=(aAngle*180)/p.PI;if(aAngle<0){aAngle=360+aAngle;}
+return aAngle;};p.size=function 
size(aWidth,aHeight,aMode){if(aMode&&(aMode==="OPENGL"||aMode==="P3D")){try{if(!curContext){curContext=curElement.getContext("experimental-webgl");}}catch(e_size){Processing.debug(e_size);}
+if(!curContext){throw"OPENGL 3D context is not supported on this browser.";}else{for(var 
i=0;i<p.SINCOS_LENGTH;i++){sinLUT[i]=p.sin(i*(p.PI/180)*0.5);cosLUT[i]=p.cos(i*(p.PI/180)*0.5);}
+curContext.viewport(0,0,curElement.width,curElement.height);curContext.clearColor(204/255,204/255,204/255,1.0);curContext.enable(curContext.DEPTH_TEST);curContext.enable(curContext.BLEND);curContext.blendFunc(curContext.SRC_ALPHA,curContext.ONE_MINUS_SRC_ALPHA);var
 
vertexShaderObject=curContext.createShader(curContext.VERTEX_SHADER);curContext.shaderSource(vertexShaderObject,vertexShaderSource);curContext.compileShader(vertexShaderObject);if(!curContext.getShaderParameter(vertexShaderObject,curContext.COMPILE_STATUS)){throw
 curContext.getShaderInfoLog(vertexShaderObject);}
+var 
fragmentShaderObject=curContext.createShader(curContext.FRAGMENT_SHADER);curContext.shaderSource(fragmentShaderObject,fragmentShaderSource);curContext.compileShader(fragmentShaderObject);if(!curContext.getShaderParameter(fragmentShaderObject,curContext.COMPILE_STATUS)){throw
 curContext.getShaderInfoLog(fragmentShaderObject);}
+programObject=curContext.createProgram();curContext.attachShader(programObject,vertexShaderObject);curContext.attachShader(programObject,fragmentShaderObject);curContext.linkProgram(programObject);if(!curContext.getProgramParameter(programObject,curContext.LINK_STATUS)){throw"Error
 linking shaders.";}else{curContext.useProgram(programObject);}
+boxBuffer=curContext.createBuffer();curContext.bindBuffer(curContext.ARRAY_BUFFER,boxBuffer);curContext.bufferData(curContext.ARRAY_BUFFER,newWebGLArray(boxVerts),curContext.DYNAMIC_DRAW);boxOutlineBuffer=curContext.createBuffer();curContext.bindBuffer(curContext.ARRAY_BUFFER,boxOutlineBuffer);curContext.bufferData(curContext.ARRAY_BUFFER,newWebGLArray(boxOutlineVerts),curContext.DYNAMIC_DRAW);sphereBuffer=curContext.createBuffer();curContext.bindBuffer(curContext.ARRAY_BUFFER,sphereBuffer);lineBuffer=curContext.createBuffer();curContext.bindBuffer(curContext.ARRAY_BUFFER,lineBuffer);pointBuffer=curContext.createBuffer();curContext.bindBuffer(curContext.ARRAY_BUFFER,pointBuffer);curContext.bufferData(curContext.ARRAY_BUFFER,newWebGLArray([0,0,0]),curContext.STATIC_DRAW);p.camera();p.perspective();userMatrixStack=new
 PMatrix3DStack();}
+p.stroke(0);p.fill(255);}else{if(typeof curContext==="undefined"){curContext=curElement.getContext("2d");}}
+var 
props={fillStyle:curContext.fillStyle,strokeStyle:curContext.strokeStyle,lineCap:curContext.lineCap,lineJoin:curContext.lineJoin};curElement.width=p.width=aWidth;curElement.height=p.height=aHeight;for(var
 j in props){if(props){curContext[j]=props[j];}}
+if(hasBackground){p.background();}};var 
PVector=function(x,y,z){this.x=x||0;this.y=y||0;this.z=z||0;},createPVectorMethod=function(method){return 
function(v1,v2){var v=v1.get();v[method](v2);return v;};},createSimplePVectorMethod=function(method){return 
function(v1,v2){return v1[method](v2);};},simplePVMethods="dist dot cross".split(" 
"),method=simplePVMethods.length;PVector.angleBetween=function(v1,v2){return 
Math.acos(v1.dot(v2)/(v1.mag()*v2.mag()));};PVector.prototype={set:function(v,y,z){if(arguments.length===1){this.set(v.x||v[0],v.y||v[1],v.z||v[2]);}else{this.x=v;this.y=y;this.z=z;}},get:function(){return
 new PVector(this.x,this.y,this.z);},mag:function(){return 
Math.sqrt(this.x*this.x+this.y*this.y+this.z*this.z);},add:function(v,y,z){if(arguments.length===3){this.x+=v;this.y+=y;this.z+=z;}else
 
if(arguments.length===1){this.x+=v.x;this.y+=v.y;this.z+=v.z;}},sub:function(v,y,z){if(arguments.length===3){this.x-=v;this.y-=y;this.z-=z;}else
 if(arguments.length===1){this.
 x-=v.x;this.y-=v.y;this.z-=v.z;}},mult:function(v){if(typeof 
v==='number'){this.x*=v;this.y*=v;this.z*=v;}else if(typeof 
v==='object'){this.x*=v.x;this.y*=v.y;this.z*=v.z;}},div:function(v){if(typeof 
v==='number'){this.x/=v;this.y/=v;this.z/=v;}else if(typeof 
v==='object'){this.x/=v.x;this.y/=v.y;this.z/=v.z;}},dist:function(v){var 
dx=this.x-v.x,dy=this.y-v.y,dz=this.z-v.z;return Math.sqrt(dx*dx+dy*dy+dz*dz);},dot:function(v,y,z){var 
num;if(arguments.length===3){num=this.x*v+this.y*y+this.z*z;}else 
if(arguments.length===1){num=this.x*v.x+this.y*v.y+this.z*v.z;}
+return num;},cross:function(v){var
+crossX=this.y*v.z-v.y*this.z,crossY=this.z*v.x-v.z*this.x,crossZ=this.x*v.y-v.x*this.y;return new 
PVector(crossX,crossY,crossZ);},normalize:function(){var 
m=this.mag();if(m>0){this.div(m);}},limit:function(high){if(this.mag()>high){this.normalize();this.mult(high);}},heading2D:function(){var
 angle=Math.atan2(-this.y,this.x);return-angle;},toString:function(){return"["+this.x+", "+this.y+", 
"+this.z+"]";},array:function(){return[this.x,this.y,this.z];}};while(method--){PVector[simplePVMethods[method]]=createSimplePVectorMethod(simplePVMethods[method]);}
+for(method in 
PVector.prototype){if(PVector.prototype.hasOwnProperty(method)&&!PVector.hasOwnProperty(method)){PVector[method]=createPVectorMethod(method);}}
+p.PVector=PVector;var 
PMatrix3D=function(){this.reset();};PMatrix3D.prototype={set:function(){if(arguments.length===16){var 
a=arguments;this.set([a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15]]);}else
 if(arguments.length===1&&arguments[0]instanceof PMatrix3D){this.elements=arguments[0].array();}else 
if(arguments.length===1&&arguments[0]instanceof 
Array){this.elements=arguments[0].slice();}},get:function(){var outgoing=new 
PMatrix3D();outgoing.set(this.elements);return 
outgoing;},reset:function(){this.set([1,0,0,0,0,1,0,0,0,0,1,0,0,0,0,1]);},array:function array(){return 
this.elements.slice();},translate:function(tx,ty,tz){if(typeof tz==='undefined'){tx=0;}
+this.elements[3]+=tx*this.elements[0]+ty*this.elements[1]+tz*this.elements[2];this.elements[7]+=tx*this.elements[4]+ty*this.elements[5]+tz*this.elements[6];this.elements[11]+=tx*this.elements[8]+ty*this.elements[9]+tz*this.elements[10];this.elements[15]+=tx*this.elements[12]+ty*this.elements[13]+tz*this.elements[14];},transpose:function(){var
 
temp=this.elements.slice();this.elements[0]=temp[0];this.elements[1]=temp[4];this.elements[2]=temp[8];this.elements[3]=temp[12];this.elements[4]=temp[1];this.elements[5]=temp[5];this.elements[6]=temp[9];this.elements[7]=temp[13];this.elements[8]=temp[2];this.elements[9]=temp[6];this.elements[10]=temp[10];this.elements[11]=temp[14];this.elements[12]=temp[3];this.elements[13]=temp[7];this.elements[14]=temp[11];this.elements[15]=temp[15];},mult:function(source,target){var
 x,y,z,w;if(source instanceof PVector){x=source.x;y=source.y;z=source.z;w=1;if(!target){target=new 
PVector();}}else if(source instanceof Array){x=source[0];y=source[1];z=s
 ource[2];w=source[3]||1;if(!target||target.length!==3&&target.length!==4){target=[0,0,0];}}
+if(target instanceof 
Array){if(target.length===3){target[0]=this.elements[0]*x+this.elements[1]*y+this.elements[2]*z+this.elements[3];target[1]=this.elements[4]*x+this.elements[5]*y+this.elements[6]*z+this.elements[7];target[2]=this.elements[8]*x+this.elements[9]*y+this.elements[10]*z+this.elements[11];}else
 
if(target.length===4){target[0]=this.elements[0]*x+this.elements[1]*y+this.elements[2]*z+this.elements[3]*w;target[1]=this.elements[4]*x+this.elements[5]*y+this.elements[6]*z+this.elements[7]*w;target[2]=this.elements[8]*x+this.elements[9]*y+this.elements[10]*z+this.elements[11]*w;target[3]=this.elements[12]*x+this.elements[13]*y+this.elements[14]*z+this.elements[15]*w;}}
+if(target instanceof 
PVector){target.x=this.elements[0]*x+this.elements[1]*y+this.elements[2]*z+this.elements[3];target.y=this.elements[4]*x+this.elements[5]*y+this.elements[6]*z+this.elements[7];target.z=this.elements[8]*x+this.elements[9]*y+this.elements[10]*z+this.elements[11];}
+return target;},preApply:function(){if(arguments.length===1&&arguments[0]instanceof 
PMatrix3D){this.preApply(arguments[0].array());}else if(arguments.length===16){var 
a=arguments;this.preApply([a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15]]);}else
 if(arguments.length===1&&arguments[0]instanceof Array){var source=arguments[0];var 
result=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var e=0;for(var row=0;row<4;row++){for(var 
col=0;col<4;col++,e++){result[e]+=this.elements[col+0]*source[row*4+0]+this.elements[col+4]*source[row*4+1]+this.elements[col+8]*source[row*4+2]+this.elements[col+12]*source[row*4+3];}}
+this.elements=result.slice();}},apply:function(){if(arguments.length===1&&arguments[0]instanceof 
PMatrix3D){this.apply(arguments[0].array());}else if(arguments.length===16){var 
a=arguments;this.apply([a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15]]);}else
 if(arguments.length===1&&arguments[0]instanceof Array){var source=arguments[0];var 
result=[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0];var e=0;for(var row=0;row<4;row++){for(var 
col=0;col<4;col++,e++){result[e]+=this.elements[row*4+0]*source[col+0]+this.elements[row*4+1]*source[col+4]+this.elements[row*4+2]*source[col+8]+this.elements[row*4+3]*source[col+12];}}
+this.elements=result.slice();}},rotate:function(angle,v0,v1,v2){if(!v1){this.rotateZ(angle);}else{var 
c=p.cos(angle);var s=p.sin(angle);var 
t=1.0-c;this.apply((t*v0*v0)+c,(t*v0*v1)-(s*v2),(t*v0*v2)+(s*v1),0,(t*v0*v1)+(s*v2),(t*v1*v1)+c,(t*v1*v2)-(s*v0),0,(t*v0*v2)-(s*v1),(t*v1*v2)+(s*v0),(t*v2*v2)+c,0,0,0,0,1);}},invApply:function(){if(typeof
 inverseCopy==="undefined"){inverseCopy=new PMatrix3D();}
+var 
a=arguments;inverseCopy.set(a[0],a[1],a[2],a[3],a[4],a[5],a[6],a[7],a[8],a[9],a[10],a[11],a[12],a[13],a[14],a[15]);if(!inverseCopy.invert()){return
 false;}
+this.preApply(inverseCopy);return true;},rotateX:function(angle){var c=p.cos(angle);var 
s=p.sin(angle);this.apply([1,0,0,0,0,c,-s,0,0,s,c,0,0,0,0,1]);},rotateY:function(angle){var 
c=p.cos(angle);var 
s=p.sin(angle);this.apply([c,0,s,0,0,1,0,0,-s,0,c,0,0,0,0,1]);},rotateZ:function(angle){var 
c=Math.cos(angle);var 
s=Math.sin(angle);this.apply([c,-s,0,0,s,c,0,0,0,0,1,0,0,0,0,1]);},scale:function(sx,sy,sz){if(sx&&!sy&&!sz){sy=sz=sx;}else
 if(sx&&sy&&!sz){sz=1;}
+if(sx&&sy&&sz){this.elements[0]*=sx;this.elements[1]*=sy;this.elements[2]*=sz;this.elements[4]*=sx;this.elements[5]*=sy;this.elements[6]*=sz;this.elements[8]*=sx;this.elements[9]*=sy;this.elements[10]*=sz;this.elements[12]*=sx;this.elements[13]*=sy;this.elements[14]*=sz;}},skewX:function(angle){var
 t=p.tan(angle);this.apply(1,t,0,0,0,1,0,0,0,0,1,0,0,0,0,1);},skewY:function(angle){var 
t=Math.tan(angle);this.apply(1,0,0,0,t,1,0,0,0,0,1,0,0,0,0,1);},multX:function(x,y,z,w){if(!z){return 
this.elements[0]*x+this.elements[1]*y+this.elements[3];}else if(!w){return 
this.elements[0]*x+this.elements[1]*y+this.elements[2]*z+this.elements[3];}else{return 
this.elements[0]*x+this.elements[1]*y+this.elements[2]*z+this.elements[3]*w;}},multY:function(x,y,z,w){if(!z){return
 this.elements[4]*x+this.elements[5]*y+this.elements[7];}else if(!w){return 
this.elements[4]*x+this.elements[5]*y+this.elements[6]*z+this.elements[7];}else{return 
this.elements[4]*x+this.elements[5]*y+this.elements[6]*z+th
 is.elements[7]*w;}},multZ:function(x,y,z,w){if(!w){return 
this.elements[8]*x+this.elements[9]*y+this.elements[10]*z+this.elements[11];}else{return 
this.elements[8]*x+this.elements[9]*y+this.elements[10]*z+this.elements[11]*w;}},multW:function(x,y,z,w){if(!w){return
 this.elements[12]*x+this.elements[13]*y+this.elements[14]*z+this.elements[15];}else{return 
this.elements[12]*x+this.elements[13]*y+this.elements[14]*z+this.elements[15]*w;}},invert:function(){var 
kInv=[];var fA0=this.elements[0]*this.elements[5]-this.elements[1]*this.elements[4];var 
fA1=this.elements[0]*this.elements[6]-this.elements[2]*this.elements[4];var 
fA2=this.elements[0]*this.elements[7]-this.elements[3]*this.elements[4];var 
fA3=this.elements[1]*this.elements[6]-this.elements[2]*this.elements[5];var 
fA4=this.elements[1]*this.elements[7]-this.elements[3]*this.elements[5];var 
fA5=this.elements[2]*this.elements[7]-this.elements[3]*this.elements[6];var 
fB0=this.elements[8]*this.elements[13]-this.elements[9]*thi
 s.elements[12];var fB1=this.elements[8]*this.elements[14]-this.elements[10]*this.elements[12];var 
fB2=this.elements[8]*this.elements[15]-this.elements[11]*this.elements[12];var 
fB3=this.elements[9]*this.elements[14]-this.elements[10]*this.elements[13];var 
fB4=this.elements[9]*this.elements[15]-this.elements[11]*this.elements[13];var 
fB5=this.elements[10]*this.elements[15]-this.elements[11]*this.elements[14];var 
fDet=fA0*fB5-fA1*fB4+fA2*fB3+fA3*fB2-fA4*fB1+fA5*fB0;if(Math.abs(fDet)<=1e-9){return false;}
+kInv[0]=+this.elements[5]*fB5-this.elements[6]*fB4+this.elements[7]*fB3;kInv[4]=-this.elements[4]*fB5+this.elements[6]*fB2-this.elements[7]*fB1;kInv[8]=+this.elements[4]*fB4-this.elements[5]*fB2+this.elements[7]*fB0;kInv[12]=-this.elements[4]*fB3+this.elements[5]*fB1-this.elements[6]*fB0;kInv[1]=-this.elements[1]*fB5+this.elements[2]*fB4-this.elements[3]*fB3;kInv[5]=+this.elements[0]*fB5-this.elements[2]*fB2+this.elements[3]*fB1;kInv[9]=-this.elements[0]*fB4+this.elements[1]*fB2-this.elements[3]*fB0;kInv[13]=+this.elements[0]*fB3-this.elements[1]*fB1+this.elements[2]*fB0;kInv[2]=+this.elements[13]*fA5-this.elements[14]*fA4+this.elements[15]*fA3;kInv[6]=-this.elements[12]*fA5+this.elements[14]*fA2-this.elements[15]*fA1;kInv[10]=+this.elements[12]*fA4-this.elements[13]*fA2+this.elements[15]*fA0;kInv[14]=-this.elements[12]*fA3+this.elements[13]*fA1-this.elements[14]*fA0;kInv[3]=-this.elements[9]*fA5+this.elements[10]*fA4-this.elements[11]*fA3;kInv[7]=+this.elements[8]*fA5-this.
 
elements[10]*fA2+this.elements[11]*fA1;kInv[11]=-this.elements[8]*fA4+this.elements[9]*fA2-this.elements[11]*fA0;kInv[15]=+this.elements[8]*fA3-this.elements[9]*fA1+this.elements[10]*fA0;var
 
fInvDet=1.0/fDet;kInv[0]*=fInvDet;kInv[1]*=fInvDet;kInv[2]*=fInvDet;kInv[3]*=fInvDet;kInv[4]*=fInvDet;kInv[5]*=fInvDet;kInv[6]*=fInvDet;kInv[7]*=fInvDet;kInv[8]*=fInvDet;kInv[9]*=fInvDet;kInv[10]*=fInvDet;kInv[11]*=fInvDet;kInv[12]*=fInvDet;kInv[13]*=fInvDet;kInv[14]*=fInvDet;kInv[15]*=fInvDet;this.elements=kInv.slice();return
 true;},toString:function(){var str="";for(var i=0;i<15;i++){str+=this.elements[i]+", ";}
+str+=this.elements[15];return str;},print:function(){var 
output="",digits=3;output+=p.nfs(this.elements[0],digits,4)+" "+p.nfs(this.elements[1],digits,4)+" 
"+p.nfs(this.elements[2],digits,4)+" 
"+p.nfs(this.elements[3],digits,4)+"\n";output+=p.nfs(this.elements[4],digits,4)+" 
"+p.nfs(this.elements[5],digits,4)+" "+p.nfs(this.elements[6],digits,4)+" 
"+p.nfs(this.elements[7],digits,4)+"\n";output+=p.nfs(this.elements[8],digits,4)+" 
"+p.nfs(this.elements[9],digits,4)+" "+p.nfs(this.elements[10],digits,4)+" 
"+p.nfs(this.elements[11],digits,4)+"\n";output+=p.nfs(this.elements[12],digits,4)+" 
"+p.nfs(this.elements[13],digits,4)+" "+p.nfs(this.elements[14],digits,4)+" 
"+p.nfs(this.elements[15],digits,4)+"\n";p.println(output);}};var PMatrix3DStack=function 
PMatrix3DStack(){this.matrixStack=[];};PMatrix3DStack.prototype.load=function load(){var tmpMatrix=new 
PMatrix3D();if(arguments.length===1){tmpMatrix.set(arguments[0]);}else{tmpMatrix.set(arguments);}
+this.matrixStack.push(tmpMatrix);};PMatrix3DStack.prototype.push=function 
push(){this.matrixStack.push(this.peek());};PMatrix3DStack.prototype.pop=function pop(){return 
this.matrixStack.pop();};PMatrix3DStack.prototype.peek=function peek(){var tmpMatrix=new 
PMatrix3D();tmpMatrix.set(this.matrixStack[this.matrixStack.length-1]);return 
tmpMatrix;};PMatrix3DStack.prototype.mult=function 
mult(matrix){this.matrixStack[this.matrixStack.length-1].apply(matrix);};function 
uniformf(programObj,varName,varValue){var 
varLocation=curContext.getUniformLocation(programObj,varName);if(varLocation!==-1){if(varValue.length===4){curContext.uniform4fv(varLocation,varValue);}else
 if(varValue.length===3){curContext.uniform3fv(varLocation,varValue);}else 
if(varValue.length===2){curContext.uniform2fv(varLocation,varValue);}else{curContext.uniform1f(varLocation,varValue);}}}
+function uniformi(programObj,varName,varValue){var 
varLocation=curContext.getUniformLocation(programObj,varName);if(varLocation!==-1){if(varValue.length===4){curContext.uniform4iv(varLocation,varValue);}else
 if(varValue.length===3){curContext.uniform3iv(varLocation,varValue);}else 
if(varValue.length===2){curContext.uniform2iv(varLocation,varValue);}else{curContext.uniform1i(varLocation,varValue);}}}
+function vertexAttribPointer(programObj,varName,size,VBO){var 
varLocation=curContext.getAttribLocation(programObj,varName);if(varLocation!==-1){curContext.bindBuffer(curContext.ARRAY_BUFFER,VBO);curContext.vertexAttribPointer(varLocation,size,curContext.FLOAT,false,0,0);curContext.enableVertexAttribArray(varLocation);}}
+function uniformMatrix(programObj,varName,transpose,matrix){var 
varLocation=curContext.getUniformLocation(programObj,varName);if(varLocation!==-1){if(matrix.length===16){curContext.uniformMatrix4fv(varLocation,transpose,matrix);}else
 
if(matrix.length===9){curContext.uniformMatrix3fv(varLocation,transpose,matrix);}else{curContext.uniformMatrix2fv(varLocation,transpose,matrix);}}}
+p.camera=function 
camera(eyeX,eyeY,eyeZ,centerX,centerY,centerZ,upX,upY,upZ){if(arguments.length===0){cameraX=curElement.width/2;cameraY=curElement.height/2;cameraZ=cameraY/Math.tan(cameraFOV/2);p.camera(cameraX,cameraY,cameraZ,cameraX,cameraY,0,0,1,0);}else{var
 z=new p.PVector(eyeX-centerX,eyeY-centerY,eyeZ-centerZ);var y=new p.PVector(upX,upY,upZ);var 
transX,transY,transZ;z.normalize();var 
x=p.PVector.cross(y,z);y=p.PVector.cross(z,x);x.normalize();y.normalize();cam=new 
PMatrix3D();cam.set(x.x,x.y,x.z,0,y.x,y.y,y.z,0,z.x,z.y,z.z,0,0,0,0,1);cam.translate(-eyeX,-eyeY,-eyeZ);cameraInv=new
 
PMatrix3D();cameraInv.invApply(x.x,x.y,x.z,0,y.x,y.y,y.z,0,z.x,z.y,z.z,0,0,0,0,1);cameraInv.translate(eyeX,eyeY,eyeZ);modelView=new
 PMatrix3D();modelView.set(cam);forwardTransform=modelView;modelViewInv=new 
PMatrix3D();modelViewInv.set(cameraInv);}};p.perspective=function 
perspective(fov,aspect,near,far){if(arguments.length===0){cameraY=curElement.height/2;cameraZ=cameraY/Math.tan(cameraFOV/
 
2);cameraNear=cameraZ/10;cameraFar=cameraZ*10;cameraAspect=curElement.width/curElement.height;p.perspective(cameraFOV,cameraAspect,cameraNear,cameraFar);}else{var
 a=arguments;var 
yMax,yMin,xMax,xMin;yMax=near*Math.tan(fov/2);yMin=-yMax;xMax=yMax*aspect;xMin=yMin*aspect;p.frustum(xMin,xMax,yMin,yMax,near,far);}};p.frustum=function
 frustum(left,right,bottom,top,near,far){frustumMode=true;projection=new 
PMatrix3D();projection.set((2*near)/(right-left),0,(right+left)/(right-left),0,0,(2*near)/(top-bottom),(top+bottom)/(top-bottom),0,0,0,-(far+near)/(far-near),-(2*far*near)/(far-near),0,0,-1,0);};p.ortho=function
 
ortho(left,right,bottom,top,near,far){if(arguments.length===0){p.ortho(0,p.width,0,p.height,-10,10);}else{var 
x=2/(right-left);var y=2/(top-bottom);var z=-2/(far-near);var tx=-(right+left)/(right-left);var 
ty=-(top+bottom)/(top-bottom);var tz=-(far+near)/(far-near);projection=new 
PMatrix3D();projection.set(x,0,0,tx,0,y,0,ty,0,0,z,tz,0,0,0,1);frustumMode=false;}};p.printP
 rojection=function(){projection.print();};p.printCamera=function(){cam.print();};p.box=function(w,h,d){var 
c;if(curContext){if(!h||!d){h=d=w;}
+var model=new PMatrix3D();model.scale(w,h,d);var view=new 
PMatrix3D();view.scale(1,-1,1);view.apply(modelView.array());uniformMatrix(programObject,"model",true,model.array());uniformMatrix(programObject,"view",true,view.array());uniformMatrix(programObject,"projection",true,projection.array());if(doFill===true){curContext.enable(curContext.POLYGON_OFFSET_FILL);curContext.polygonOffset(1,1);c=fillStyle.slice(5,-1).split(",");uniformf(programObject,"color",[c[0]/255,c[1]/255,c[2]/255,c[3]]);vertexAttribPointer(programObject,"Vertex",3,boxBuffer);curContext.drawArrays(curContext.TRIANGLES,0,boxVerts.length/3);curContext.disable(curContext.POLYGON_OFFSET_FILL);}
+if(lineWidth>0&&doStroke){c=strokeStyle.slice(5,-1).split(",");uniformf(programObject,"color",[c[0]/255,c[1]/255,c[2]/255,c[3]]);curContext.lineWidth(lineWidth);vertexAttribPointer(programObject,"Vertex",3,boxOutlineBuffer);curContext.drawArrays(curContext.LINES,0,boxOutlineVerts.length/3);}}};var
 initSphere=function(){var 
i;sphereVerts=[];sphereNorms=[];for(i=0;i<sphereDetailU;i++){sphereNorms.push(0);sphereNorms.push(-1);sphereNorms.push(0);sphereVerts.push(0);sphereVerts.push(-1);sphereVerts.push(0);sphereNorms.push(sphereX[i]);sphereNorms.push(sphereY[i]);sphereNorms.push(sphereZ[i]);sphereVerts.push(sphereX[i]);sphereVerts.push(sphereY[i]);sphereVerts.push(sphereZ[i]);}
+sphereVerts.push(0);sphereVerts.push(-1);sphereVerts.push(0);sphereNorms.push(sphereX[0]);sphereNorms.push(sphereY[0]);sphereNorms.push(sphereZ[0]);sphereVerts.push(sphereX[0]);sphereVerts.push(sphereY[0]);sphereVerts.push(sphereZ[0]);var
 v1,v11,v2;var voff=0;for(i=2;i<sphereDetailV;i++){v1=v11=voff;voff+=sphereDetailU;v2=voff;for(var 
j=0;j<sphereDetailU;j++){sphereNorms.push(parseFloat(sphereX[v1]));sphereNorms.push(parseFloat(sphereY[v1]));sphereNorms.push(parseFloat(sphereZ[v1]));sphereVerts.push(parseFloat(sphereX[v1]));sphereVerts.push(parseFloat(sphereY[v1]));sphereVerts.push(parseFloat(sphereZ[v1++]));sphereNorms.push(parseFloat(sphereX[v2]));sphereNorms.push(parseFloat(sphereY[v2]));sphereNorms.push(parseFloat(sphereZ[v2]));sphereVerts.push(parseFloat(sphereX[v2]));sphereVerts.push(parseFloat(sphereY[v2]));sphereVerts.push(parseFloat(sphereZ[v2++]));}
+v1=v11;v2=voff;sphereNorms.push(parseFloat(sphereX[v1]));sphereNorms.push(parseFloat(sphereY[v1]));sphereNorms.push(parseFloat(sphereZ[v1]));sphereVerts.push(parseFloat(sphereX[v1]));sphereVerts.push(parseFloat(sphereY[v1]));sphereVerts.push(parseFloat(sphereZ[v1]));sphereNorms.push(parseFloat(sphereX[v2]));sphereNorms.push(parseFloat(sphereY[v2]));sphereNorms.push(parseFloat(sphereZ[v2]));sphereVerts.push(parseFloat(sphereX[v2]));sphereVerts.push(parseFloat(sphereY[v2]));sphereVerts.push(parseFloat(sphereZ[v2]));}
+for(i=0;i<sphereDetailU;i++){v2=voff+i;sphereNorms.push(parseFloat(sphereX[v2]));sphereNorms.push(parseFloat(sphereY[v2]));sphereNorms.push(parseFloat(sphereZ[v2]));sphereVerts.push(parseFloat(sphereX[v2]));sphereVerts.push(parseFloat(sphereY[v2]));sphereVerts.push(parseFloat(sphereZ[v2]));sphereNorms.push(0);sphereNorms.push(1);sphereNorms.push(0);sphereVerts.push(0);sphereVerts.push(1);sphereVerts.push(0);}
+sphereNorms.push(parseFloat(sphereX[voff]));sphereNorms.push(parseFloat(sphereY[voff]));sphereNorms.push(parseFloat(sphereZ[voff]));sphereVerts.push(parseFloat(sphereX[voff]));sphereVerts.push(parseFloat(sphereY[voff]));sphereVerts.push(parseFloat(sphereZ[voff]));sphereNorms.push(0);sphereNorms.push(1);sphereNorms.push(0);sphereVerts.push(0);sphereVerts.push(1);sphereVerts.push(0);vertexAttribPointer(programObject,"Vertex",3,sphereBuffer);curContext.bufferData(curContext.ARRAY_BUFFER,newWebGLArray(sphereVerts),curContext.STATIC_DRAW);};p.sphereDetail=function
 sphereDetail(ures,vres){var i;if(arguments.length===1){ures=vres=arguments[0];}
+if(ures<3){ures=3;}
+if(vres<2){vres=2;}
+if((ures===sphereDetailU)&&(vres===sphereDetailV)){return;}
+var delta=p.SINCOS_LENGTH/ures;var cx=new Array(ures);var cz=new 
Array(ures);for(i=0;i<ures;i++){cx[i]=cosLUT[parseInt((i*delta)%p.SINCOS_LENGTH,10)];cz[i]=sinLUT[parseInt((i*delta)%p.SINCOS_LENGTH,10)];}
+var vertCount=ures*(vres-1)+2;var currVert=0;sphereX=new Array(vertCount);sphereY=new 
Array(vertCount);sphereZ=new Array(vertCount);var angle_step=(p.SINCOS_LENGTH*0.5)/vres;var 
angle=angle_step;for(i=1;i<vres;i++){var curradius=sinLUT[parseInt(angle%p.SINCOS_LENGTH,10)];var 
currY=-cosLUT[parseInt(angle%p.SINCOS_LENGTH,10)];for(var 
j=0;j<ures;j++){sphereX[currVert]=cx[j]*curradius;sphereY[currVert]=currY;sphereZ[currVert++]=cz[j]*curradius;}
+angle+=angle_step;}
+sphereDetailU=ures;sphereDetailV=vres;initSphere();};p.sphere=function(){if(p.use3DContext){var 
sRad=arguments[0],c;if((sphereDetailU<3)||(sphereDetailV<2)){p.sphereDetail(30);}
+var model=new PMatrix3D();model.scale(sRad,sRad,sRad);var view=new 
PMatrix3D();view.scale(1,-1,1);view.apply(modelView.array());uniformMatrix(programObject,"model",true,model.array());uniformMatrix(programObject,"view",true,view.array());uniformMatrix(programObject,"projection",true,projection.array());vertexAttribPointer(programObject,"Vertex",3,sphereBuffer);if(doFill===true){curContext.enable(curContext.POLYGON_OFFSET_FILL);curContext.polygonOffset(1,1);c=fillStyle.slice(5,-1).split(",");uniformf(programObject,"color",[c[0]/255,c[1]/255,c[2]/255,c[3]]);curContext.drawArrays(curContext.TRIANGLE_STRIP,0,sphereVerts.length/3);curContext.disable(curContext.POLYGON_OFFSET_FILL);}
+if(lineWidth>0&&doStroke){c=strokeStyle.slice(5,-1).split(",");uniformf(programObject,"color",[c[0]/255,c[1]/255,c[2]/255,c[3]]);curContext.lineWidth(lineWidth);curContext.drawArrays(curContext.LINE_STRIP,0,sphereVerts.length/3);}}};p.modelX=function
 modelX(x,y,z){var mv=modelView.array();var ci=cameraInv.array();var ax=mv[0]*x+mv[1]*y+mv[2]*z+mv[3];var 
ay=mv[4]*x+mv[5]*y+mv[6]*z+mv[7];var az=mv[8]*x+mv[9]*y+mv[10]*z+mv[11];var 
aw=mv[12]*x+mv[13]*y+mv[14]*z+mv[15];var ox=ci[0]*ax+ci[1]*ay+ci[2]*az+ci[3]*aw;var 
ow=ci[12]*ax+ci[13]*ay+ci[14]*az+ci[15]*aw;return(ow!==0)?ox/ow:ox;};p.modelY=function modelY(x,y,z){var 
mv=modelView.array();var ci=cameraInv.array();var ax=mv[0]*x+mv[1]*y+mv[2]*z+mv[3];var 
ay=mv[4]*x+mv[5]*y+mv[6]*z+mv[7];var az=mv[8]*x+mv[9]*y+mv[10]*z+mv[11];var 
aw=mv[12]*x+mv[13]*y+mv[14]*z+mv[15];var oy=ci[4]*ax+ci[5]*ay+ci[6]*az+ci[7]*aw;var 
ow=ci[12]*ax+ci[13]*ay+ci[14]*az+ci[15]*aw;return(ow!==0)?oy/ow:oy;};p.modelZ=function modelZ(x,y,z){var 
mv=modelView.arr
 ay();var ci=cameraInv.array();var ax=mv[0]*x+mv[1]*y+mv[2]*z+mv[3];var ay=mv[4]*x+mv[5]*y+mv[6]*z+mv[7];var 
az=mv[8]*x+mv[9]*y+mv[10]*z+mv[11];var aw=mv[12]*x+mv[13]*y+mv[14]*z+mv[15];var 
oz=ci[8]*ax+ci[9]*ay+ci[10]*az+ci[11]*aw;var 
ow=ci[12]*ax+ci[13]*ay+ci[14]*az+ci[15]*aw;return(ow!==0)?oz/ow:oz;};p.fill=function 
fill(){doFill=true;if(p.use3DContext){fillStyle=p.color.apply(this,arguments);}else{curContext.fillStyle=p.color.apply(this,arguments);}};p.noFill=function
 noFill(){doFill=false;};p.stroke=function 
stroke(){doStroke=true;if(p.use3DContext){strokeStyle=p.color.apply(this,arguments);}else{curContext.strokeStyle=p.color.apply(this,arguments);}};p.noStroke=function
 noStroke(){doStroke=false;};p.strokeWeight=function 
strokeWeight(w){if(p.use3DContext){lineWidth=w;}else{curContext.lineWidth=w;}};p.strokeCap=function 
strokeCap(value){curContext.lineCap=value;};p.strokeJoin=function 
strokeJoin(value){curContext.lineJoin=value;};p.smooth=function(){};p.noSmooth=function()
 {};p.Point=function Point(x,y){this.x=x;this.y=y;this.copy=function(){return new 
Point(x,y);};};p.point=function point(x,y,z){if(p.use3DContext){var model=new 
PMatrix3D();model.translate(x,y,z||0);var view=new 
PMatrix3D();view.scale(1,-1,1);view.apply(modelView.array());uniformMatrix(programObject,"model",true,model.array());uniformMatrix(programObject,"view",true,view.array());uniformMatrix(programObject,"projection",true,projection.array());if(lineWidth>0&&doStroke){var
 
c=strokeStyle.slice(5,-1).split(",");uniformf(programObject,"color",[c[0]/255,c[1]/255,c[2]/255,c[3]]);vertexAttribPointer(programObject,"Vertex",3,pointBuffer);curContext.drawArrays(curContext.POINTS,0,1);}}else{var
 
oldFill=curContext.fillStyle;curContext.fillStyle=curContext.strokeStyle;curContext.fillRect(Math.round(x),Math.round(y),1,1);curContext.fillStyle=oldFill;}};p.beginShape=function
 beginShape(type){curShape=type;curShapeCount=0;curvePoints=[];};p.endShape=function 
endShape(close){if(curShapeCoun
 t!==0){if(close&&doFill){curContext.lineTo(firstX,firstY);}
+if(doFill){curContext.fill();}
+if(doStroke){curContext.stroke();}
+curContext.closePath();curShapeCount=0;pathOpen=false;}
+if(pathOpen){if(doFill){curContext.fill();}
+if(doStroke){curContext.stroke();}
+curContext.closePath();curShapeCount=0;pathOpen=false;}};p.vertex=function 
vertex(x,y,x2,y2,x3,y3){if(curShapeCount===0&&curShape!==p.POINTS){pathOpen=true;curContext.beginPath();curContext.moveTo(x,y);firstX=x;firstY=y;}else{if(curShape===p.POINTS){p.point(x,y);}else
 if(arguments.length===2){if(curShape!==p.QUAD_STRIP||curShapeCount!==2){curContext.lineTo(x,y);}
+if(curShape===p.TRIANGLE_STRIP){if(curShapeCount===2){p.endShape(p.CLOSE);pathOpen=true;curContext.beginPath();curContext.moveTo(prevX,prevY);curContext.lineTo(x,y);curShapeCount=1;}
+firstX=prevX;firstY=prevY;}
+if(curShape===p.TRIANGLE_FAN&&curShapeCount===2){p.endShape(p.CLOSE);pathOpen=true;curContext.beginPath();curContext.moveTo(firstX,firstY);curContext.lineTo(x,y);curShapeCount=1;}
+if(curShape===p.QUAD_STRIP&&curShapeCount===3){curContext.lineTo(prevX,prevY);p.endShape(p.CLOSE);pathOpen=true;curContext.beginPath();curContext.moveTo(prevX,prevY);curContext.lineTo(x,y);curShapeCount=1;}
+if(curShape===p.QUAD_STRIP){firstX=secondX;firstY=secondY;secondX=prevX;secondY=prevY;}}else 
if(arguments.length===4){if(curShapeCount>1){curContext.moveTo(prevX,prevY);curContext.quadraticCurveTo(firstX,firstY,x,y);curShapeCount=1;}}else
 if(arguments.length===6){curContext.bezierCurveTo(x,y,x2,y2,x3,y3);}}
+prevX=x;prevY=y;curShapeCount++;if(curShape===p.LINES&&curShapeCount===2||(curShape===p.TRIANGLES)&&curShapeCount===3||(curShape===p.QUADS)&&curShapeCount===4){p.endShape(p.CLOSE);}};p.curveVertex=function(x,y,x2,y2){if(curvePoints.length<3){curvePoints.push([x,y]);}else{var
 
b=[],s=1-curTightness;curvePoints.push([x,y]);b[0]=[curvePoints[1][0],curvePoints[1][1]];b[1]=[curvePoints[1][0]+(s*curvePoints[2][0]-s*curvePoints[0][0])/6,curvePoints[1][1]+(s*curvePoints[2][1]-s*curvePoints[0][1])/6];b[2]=[curvePoints[2][0]+(s*curvePoints[1][0]-s*curvePoints[3][0])/6,curvePoints[2][1]+(s*curvePoints[1][1]-s*curvePoints[3][1])/6];b[3]=[curvePoints[2][0],curvePoints[2][1]];if(!pathOpen){p.vertex(b[0][0],b[0][1]);}else{curShapeCount=1;}
+p.vertex(b[1][0],b[1][1],b[2][0],b[2][1],b[3][0],b[3][1]);curvePoints.shift();}};p.curve=function 
curve(x1,y1,x2,y2,x3,y3,x4,y4){p.beginShape();p.curveVertex(x1,y1);p.curveVertex(x2,y2);p.curveVertex(x3,y3);p.curveVertex(x4,y4);p.endShape();};p.curveTightness=function(tightness){curTightness=tightness;};p.bezierVertex=p.vertex;p.rectMode=function
 rectMode(aRectMode){curRectMode=aRectMode;};p.imageMode=function(){};p.ellipseMode=function 
ellipseMode(aEllipseMode){curEllipseMode=aEllipseMode;};p.arc=function 
arc(x,y,width,height,start,stop){if(width<=0){return;}
+if(curEllipseMode===p.CORNER){x+=width/2;y+=height/2;}
+curContext.moveTo(x,y);curContext.beginPath();curContext.arc(x,y,curEllipseMode===p.CENTER_RADIUS?width:width/2,start,stop,false);if(doStroke){curContext.stroke();}
+curContext.lineTo(x,y);if(doFill){curContext.fill();}
+curContext.closePath();};p.line=function line(){var 
x1,y1,z1,x2,y2,z2;if(p.use3DContext){if(arguments.length===6){x1=arguments[0];y1=arguments[1];z1=arguments[2];x2=arguments[3];y2=arguments[4];z2=arguments[5];}else
 if(arguments.length===4){x1=arguments[0];y1=arguments[1];z1=0;x2=arguments[2];y2=arguments[3];z2=0;}
+var lineVerts=[x1,y1,z1,x2,y2,z2];var model=new PMatrix3D();var view=new 
PMatrix3D();view.scale(1,-1,1);view.apply(modelView.array());uniformMatrix(programObject,"model",true,model.array());uniformMatrix(programObject,"view",true,view.array());uniformMatrix(programObject,"projection",true,projection.array());if(lineWidth>0&&doStroke){var
 
c=strokeStyle.slice(5,-1).split(",");uniformf(programObject,"color",[c[0]/255,c[1]/255,c[2]/255,c[3]]);curContext.lineWidth(lineWidth);vertexAttribPointer(programObject,"Vertex",3,lineBuffer);curContext.bufferData(curContext.ARRAY_BUFFER,newWebGLArray(lineVerts),curContext.STREAM_DRAW);curContext.drawArrays(curContext.LINES,0,2);}}else{x1=arguments[0];y1=arguments[1];x2=arguments[2];y2=arguments[3];curContext.beginPath();curContext.moveTo(x1||0,y1||0);curContext.lineTo(x2||0,y2||0);curContext.stroke();curContext.closePath();}};p.bezier=function
 bezier(x1,y1,x2,y2,x3,y3,x4,y4){curContext.beginPath();curContext.moveTo(x1,y1);curContext.bezierC
 urveTo(x2,y2,x3,y3,x4,y4);curContext.stroke();curContext.closePath();};p.bezierPoint=function 
bezierPoint(a,b,c,d,t){return(1-t)*(1-t)*(1-t)*a+3*(1-t)*(1-t)*t*b+3*(1-t)*t*t*c+t*t*t*d;};p.bezierTangent=function
 bezierTangent(a,b,c,d,t){return(3*t*t*(-a+3*b-3*c+d)+6*t*(a-2*b+c)+3*(-a+b));};p.curvePoint=function 
curvePoint(a,b,c,d,t){return 
0.5*((2*b)+(-a+c)*t+(2*a-5*b+4*c-d)*t*t+(-a+3*b-3*c+d)*t*t*t);};p.curveTangent=function 
curveTangent(a,b,c,d,t){return 0.5*((-a+c)+2*(2*a-5*b+4*c-d)*t+3*(-a+3*b-3*c+d)*t*t);};p.triangle=function 
triangle(x1,y1,x2,y2,x3,y3){p.beginShape();p.vertex(x1,y1);p.vertex(x2,y2);p.vertex(x3,y3);p.endShape();};p.quad=function
 
quad(x1,y1,x2,y2,x3,y3,x4,y4){curContext.lineCap="square";p.beginShape();p.vertex(x1,y1);p.vertex(x2,y2);p.vertex(x3,y3);p.vertex(x4,y4);p.endShape();};p.rect=function
 rect(x,y,width,height){if(!width&&!height){return;}
+curContext.beginPath();var offsetStart=0;var offsetEnd=0;if(curRectMode===p.CORNERS){width-=x;height-=y;}
+if(curRectMode===p.RADIUS){width*=2;height*=2;}
+if(curRectMode===p.CENTER||curRectMode===p.RADIUS){x-=width/2;y-=height/2;}
+curContext.rect(Math.round(x)-offsetStart,Math.round(y)-offsetStart,Math.round(width)+offsetEnd,Math.round(height)+offsetEnd);if(doFill){curContext.fill();}
+if(doStroke){curContext.stroke();}
+curContext.closePath();};p.ellipse=function 
ellipse(x,y,width,height){x=x||0;y=y||0;if(width<=0&&height<=0){return;}
+curContext.beginPath();if(curEllipseMode===p.RADIUS){width*=2;height*=2;}
+if(curEllipseMode===p.CORNERS){width=width-x;height=height-y;}
+if(curEllipseMode===p.CORNER||curEllipseMode===p.CORNERS){x+=width/2;y+=height/2;}
+var 
offsetStart=0;if(width===height){curContext.arc(x-offsetStart,y-offsetStart,width/2,0,p.TWO_PI,false);}else{var
 w=width/2,h=height/2,C=0.5522847498307933;var 
c_x=C*w,c_y=C*h;curContext.moveTo(x+w,y);curContext.bezierCurveTo(x+w,y-c_y,x+c_x,y-h,x,y-h);curContext.bezierCurveTo(x-c_x,y-h,x-w,y-c_y,x-w,y);curContext.bezierCurveTo(x-w,y+c_y,x-c_x,y+h,x,y+h);curContext.bezierCurveTo(x+c_x,y+h,x+w,y+c_y,x+w,y);}
+if(doFill){curContext.fill();}
+if(doStroke){curContext.stroke();}
+curContext.closePath();};p.normal=function normal(nx,ny,nz){if(arguments.length!==3||!(typeof 
nx==="number"&&typeof ny==="number"&&typeof nz==="number")){throw"normal() requires three numeric 
arguments.";}
+normalX=nx;normalY=ny;normalZ=nz;if(curShape!==0){if(normalMode===p.NORMAL_MODE_AUTO){normalMode=p.NORMAL_MODE_SHAPE;}else
 if(normalMode===p.NORMAL_MODE_SHAPE){normalMode=p.NORMAL_MODE_VERTEX;}}};p.save=function save(file){};var 
buildImageObject=function(obj){var 
pixels=obj.data,data=p.createImage(obj.width,obj.height),len=pixels.length;if((Object.defineProperty&&Object.getOwnPropertyDescriptor&&!Object.getOwnPropertyDescriptor(data,"pixels").get)||(data.__defineGetter__&&data.__lookupGetter__&&!data.__lookupGetter__("pixels"))){var
 pixelsDone,pixelsGetter=function(){if(pixelsDone){return pixelsDone;}
+pixelsDone=[];for(var 
i=0;i<len;i+=4){pixelsDone.push(p.color(pixels[i],pixels[i+1],pixels[i+2],pixels[i+3]));}
+return pixelsDone;};if(Object.defineProperty){Object.defineProperty(data,"pixels",{get:pixelsGetter});}else 
if(data.__defineGetter__){data.__defineGetter__("pixels",pixelsGetter);}}else{data.pixels=[];for(var 
i=0;i<len;i+=4){data.pixels.push(p.color(pixels[i],pixels[i+1],pixels[i+2],pixels[i+3]));}}
+return data;};p.loadImage=function loadImage(file,type,callback){var 
img=document.createElement('img');img.loaded=false;img.mask=function(){};img.onload=function(){var 
h=this.height,w=this.width;var canvas=document.createElement("canvas");canvas.width=w;canvas.height=h;var 
context=canvas.getContext("2d");context.drawImage(this,0,0);this.data=buildImageObject(context.getImageData(0,0,w,h));this.data.img=img;this.get=this.data.get;this.pixels=this.data.pixels;this.loaded=true;if(callback){callback();}};img.src=file;return
 img;};p.get=function get(x,y){if(!arguments.length){var 
c=p.createGraphics(p.width,p.height);c.image(curContext,0,0);return c;}
+if(!getLoaded){getLoaded=buildImageObject(curContext.getImageData(0,0,p.width,p.height));}
+return getLoaded.get(x,y);};p.createGraphics=function createGraphics(w,h){var 
canvas=document.createElement("canvas");var 
ret=Processing.build(canvas);ret.size(w,h);ret.canvas=canvas;return ret;};p.set=function 
set(x,y,obj){if(obj&&obj.img){p.image(obj,x,y);}else{var 
oldFill=curContext.fillStyle,color=obj;curContext.fillStyle=color;curContext.fillRect(Math.round(x),Math.round(y),1,1);curContext.fillStyle=oldFill;}};p.loadPixels=function(){p.pixels=buildImageObject(curContext.getImageData(0,0,p.width,p.height)).pixels;};p.updatePixels=function(){var
 
colors=/(\d+),(\d+),(\d+),(\d+)/,pixels={};pixels.width=p.width;pixels.height=p.height;pixels.data=[];if(curContext.createImageData){pixels=curContext.createImageData(p.width,p.height);}
+var data=pixels.data,pos=0;for(var i=0,l=p.pixels.length;i<l;i++){var 
c=(p.pixels[i]||"rgba(0,0,0,1)").match(colors);data[pos+0]=parseInt(c[1],10);data[pos+1]=parseInt(c[2],10);data[pos+2]=parseInt(c[3],10);data[pos+3]=parseFloat(c[4])*255;pos+=4;}
+curContext.putImageData(pixels,0,0);};p.background=function background(img){var c,a;if(p.use3DContext){var 
col=arguments;if(arguments.length===1){if(typeof 
arguments[0]==="string"){c=arguments[0].slice(5,-1).split(",");curContext.clearColor(c[0]/255,c[1]/255,c[2]/255,c[3]);}
+else if(typeof arguments[0]==="number"){curContext.clearColor(col[0]/255,col[0]/255,col[0]/255,1.0);}}else 
if(arguments.length===2){if(typeof 
arguments[0]==="string"){c=arguments[0].slice(5,-1).split(",");curContext.clearColor(c[0]/255,c[1]/255,c[2]/255,1.0);}
+else if(typeof arguments[0]==="number"){c=arguments[0]/255;a=1.0;curContext.clearColor(c,c,c,a);}}
+else 
if(arguments.length===3||arguments.length===4){curContext.clearColor(col[0]/255,col[1]/255,col[2]/255,1);}}else{if(arguments.length){if(img.data&&img.data.img){curBackground=img.data;}else{curBackground=p.color.apply(this,arguments);}}
+if(curBackground.img){p.image(img,0,0);}else{var 
oldFill=curContext.fillStyle;curContext.fillStyle=curBackground+"";curContext.fillRect(0,0,p.width,p.height);curContext.fillStyle=oldFill;}}
+hasBackground=true;};var getImage_old=function getImage_old(img){if(typeof img==="string"){return 
document.getElementById(img);}
+if(img.img||img.canvas){return img.img||img.canvas;}
+for(var i=0,l=img.pixels.length;i<l;i++){var pos=i*4;var 
c=(img.pixels[i]||"rgba(0,0,0,1)").slice(5,-1).split(",");img.data[pos+0]=parseInt(c[0],10);img.data[pos+1]=parseInt(c[1],10);img.data[pos+2]=parseInt(c[2],10);img.data[pos+3]=parseFloat(c[3])*100;}
+var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var 
context=canvas.getContext("2d");context.putImageData(img,0,0);img.canvas=canvas;return 
canvas;};p.AniSprite=function(prefix,frames){this.images=[];this.pos=0;for(var 
i=0;i<frames;i++){this.images.push(prefix+p.nf(i,(""+frames).length)+".gif");}
+this.display=function(x,y){p.image_old(this.images[this.pos],x,y);if(++this.pos>=frames){this.pos=0;}};this.getWidth=function(){return
 getImage_old(this.images[0]).width;};this.getHeight=function(){return 
getImage_old(this.images[0]).height;};};p.createImage=function createImage(w,h,mode){var 
data={};data.width=w;data.height=h;data.data=[];if(curContext.createImageData){data=curContext.createImageData(w,h);}
+data.pixels=new Array(w*h);data.get=function(x,y){return 
this.pixels[w*y+x];};data._mask=null;data.mask=function(img){this._mask=img;};data.loadPixels=function(){};data.updatePixels=function(){};return
 data;};function getImage(img){if(typeof img==="string"){return document.getElementById(img);}
+if(img.img){return img.img;}else 
if(img.getContext||img.canvas){if(img.getContext('2d').createImageData){img.pixels=img.getContext('2d').createImageData(img.width,img.height);}else{img.pixels=img.getContext('2d').getImageData(0,0,img.width,img.height);}}
+for(var i=0,l=img.pixels.length;i<l;i++){var pos=i*4;var 
c=(img.pixels[i]||"rgba(0,0,0,1)").slice(5,-1).split(",");img.data[pos+0]=parseInt(c[0],10);img.data[pos+1]=parseInt(c[1],10);img.data[pos+2]=parseInt(c[2],10);img.data[pos+3]=parseFloat(c[3])*100;}
+var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var 
context=canvas.getContext("2d");context.putImageData(img.pixels,0,0);img.canvas=canvas;return img;}
+p.image_old=function image_old(img,x,y,w,h){x=x||0;y=y||0;var 
obj=getImage(img),oldAlpha;if(curTint>=0){oldAlpha=curContext.globalAlpha;curContext.globalAlpha=curTint/opacityRange;}
+if(arguments.length===3){curContext.drawImage(obj,x,y);}else{curContext.drawImage(obj,x,y,w,h);}
+if(curTint>=0){curContext.globalAlpha=oldAlpha;}
+if(img._mask){var 
oldComposite=curContext.globalCompositeOperation;curContext.globalCompositeOperation="darker";p.image(img._mask,x,y);curContext.globalCompositeOperation=oldComposite;}};p.image=function
 image(img,x,y,w,h){if(img.data||img.canvas){x=x||0;y=y||0;var 
obj=getImage(img.data||img.canvas),oldAlpha;if(curTint>=0){oldAlpha=curContext.globalAlpha;curContext.globalAlpha=curTint/opacityRange;}
+if(arguments.length===3){curContext.drawImage(obj,x,y);}else{curContext.drawImage(obj,x,y,w,h);}
+if(curTint>=0){curContext.globalAlpha=oldAlpha;}
+if(img._mask){var 
oldComposite=curContext.globalCompositeOperation;curContext.globalCompositeOperation="darker";p.image(img._mask,x,y);curContext.globalCompositeOperation=oldComposite;}}
+if(typeof img==='string'){}};p.clear=function 
clear(x,y,width,height){if(arguments.length===0){curContext.clearRect(0,0,p.width,p.height);}else{curContext.clearRect(x,y,width,height);}};p.tint=function
 tint(rgb,a){curTint=a;};p.loadFont=function 
loadFont(name){if(name.indexOf(".svg")===-1){return{name:name,width:function(str){if(curContext.mozMeasureText){return
 curContext.mozMeasureText(typeof str==="number"?String.fromCharCode(str):str)/curTextSize;}else{return 
0;}}};}else{var 
font=p.loadGlyphs(name);return{name:name,glyph:true,units_per_em:font.units_per_em,horiz_adv_x:1/font.units_per_em*font.horiz_adv_x,ascent:font.ascent,descent:font.descent,width:function(str){var
 width=0;var len=str.length;for(var 
i=0;i<len;i++){try{width+=parseFloat(p.glyphLook(p.glyphTable[name],str[i]).horiz_adv_x);}
+catch(e){Processing.debug(e);}}
+return width/p.glyphTable[name].units_per_em;}};}};p.createFont=function(name,size){};p.textFont=function 
textFont(name,size){curTextFont=name;p.textSize(size);};p.textSize=function 
textSize(size){if(size){curTextSize=size;}};p.textAlign=function textAlign(){};p.glyphLook=function 
glyphLook(font,chr){try{switch(chr){case"1":return font.one;case"2":return font.two;case"3":return 
font.three;case"4":return font.four;case"5":return font.five;case"6":return font.six;case"7":return 
font.seven;case"8":return font.eight;case"9":return font.nine;case"0":return font.zero;case" ":return 
font.space;case"$":return font.dollar;case"!":return font.exclam;case'"':return font.quotedbl;case"#":return 
font.numbersign;case"%":return font.percent;case"&":return font.ampersand;case"'":return 
font.quotesingle;case"(":return font.parenleft;case")":return font.parenright;case"*":return 
font.asterisk;case"+":return font.plus;case",":return font.comma;case"-":return font.hyphen;case".":return 
font.per
 iod;case"/":return font.slash;case"_":return font.underscore;case":":return font.colon;case";":return 
font.semicolon;case"<":return font.less;case"=":return font.equal;case">":return font.greater;case"?":return 
font.question;case"@":return font.at;case"[":return font.bracketleft;case"\\":return 
font.backslash;case"]":return font.bracketright;case"^":return font.asciicircum;case"`":return 
font.grave;case"{":return font.braceleft;case"|":return font.bar;case"}":return 
font.braceright;case"~":return font.asciitilde;default:return 
font[chr];}}catch(e){Processing.debug(e);}};p.text=function text(str,x,y){if(typeof 
str==='number'&&(str+"").indexOf('.')>=0){if((str*1000)-Math.floor(str*1000)===0.5){str=str-0.0001;}
+str=str.toFixed(3);}else if(str===0){str=str.toString();}
+if(!curTextFont.glyph){if(str&&(curContext.fillText||curContext.mozDrawText)){curContext.save();curContext.font=curContext.mozTextStyle=curTextSize+"px
 "+curTextFont.name;if(curContext.fillText){curContext.fillText(str,x,y);}else 
if(curContext.mozDrawText){curContext.translate(x,y);curContext.mozDrawText(str);}
+curContext.restore();}}else{var 
font=p.glyphTable[curTextFont.name];curContext.save();curContext.translate(x,y+curTextSize);var 
upem=font.units_per_em,newScale=1/upem*curTextSize;curContext.scale(newScale,newScale);var 
len=str.length;for(var i=0;i<len;i++){try{p.glyphLook(font,str[i]).draw();}
+catch(e){Processing.debug(e);}}
+curContext.restore();}};p.loadGlyphs=function loadGlyph(url){var 
x,y,cx,cy,nx,ny,d,a,lastCom,lenC,horiz_adv_x,getXY='[0-9\\-]+',path;var regex=function regex(needle,hay){var 
i=0,results=[],latest,regexp=new 
RegExp(needle,"g");latest=results[i]=regexp.exec(hay);while(latest){i++;latest=results[i]=regexp.exec(hay);}
+return results;};var buildPath=function buildPath(d){var c=regex("[A-Za-z][0-9\\- ]+|Z",d);path="var 
path={draw:function(){curContext.beginPath();curContext.save();";x=0;y=0;cx=0;cy=0;nx=0;ny=0;d=0;a=0;lastCom="";lenC=c.length-1;for(var
 j=0;j<lenC;j++){var 
com=c[j][0],xy=regex(getXY,com);switch(com[0]){case"M":x=parseFloat(xy[0][0]);y=parseFloat(xy[1][0]);path+="curContext.moveTo("+x+","+(-y)+");";break;case"L":x=parseFloat(xy[0][0]);y=parseFloat(xy[1][0]);path+="curContext.lineTo("+x+","+(-y)+");";break;case"H":x=parseFloat(xy[0][0]);path+="curContext.lineTo("+x+","+(-y)+");";break;case"V":y=parseFloat(xy[0][0]);path+="curContext.lineTo("+x+","+(-y)+");";break;case"T":nx=parseFloat(xy[0][0]);ny=parseFloat(xy[1][0]);if(lastCom==="Q"||lastCom==="T"){d=Math.sqrt(Math.pow(x-cx,2)+Math.pow(cy-y,2));a=Math.PI+Math.atan2(cx-x,cy-y);cx=x+(Math.sin(a)*(d));cy=y+(Math.cos(a)*(d));}else{cx=x;cy=y;}
+path+="curContext.quadraticCurveTo("+cx+","+(-cy)+","+nx+","+(-ny)+");";x=nx;y=ny;break;case"Q":cx=parseFloat(xy[0][0]);cy=parseFloat(xy[1][0]);nx=parseFloat(xy[2][0]);ny=parseFloat(xy[3][0]);path+="curContext.quadraticCurveTo("+cx+","+(-cy)+","+nx+","+(-ny)+");";x=nx;y=ny;break;case"Z":path+="curContext.closePath();";break;}
+lastCom=com[0];}
+path+="doStroke?curContext.stroke():0;";path+="doFill?curContext.fill():0;";path+="curContext.restore();";path+="curContext.translate("+horiz_adv_x+",0);";path+="}}";return
 path;};var parseSVGFont=function parseSVGFontse(svg){var 
font=svg.getElementsByTagName("font");p.glyphTable[url].horiz_adv_x=font[0].getAttribute("horiz-adv-x");var 
font_face=svg.getElementsByTagName("font-face")[0];p.glyphTable[url].units_per_em=parseFloat(font_face.getAttribute("units-per-em"));p.glyphTable[url].ascent=parseFloat(font_face.getAttribute("ascent"));p.glyphTable[url].descent=parseFloat(font_face.getAttribute("descent"));var
 glyph=svg.getElementsByTagName("glyph"),len=glyph.length;for(var i=0;i<len;i++){var 
unicode=glyph[i].getAttribute("unicode");var 
name=glyph[i].getAttribute("glyph-name");horiz_adv_x=glyph[i].getAttribute("horiz-adv-x");if(horiz_adv_x===null){horiz_adv_x=p.glyphTable[url].horiz_adv_x;}
+d=glyph[i].getAttribute("d");if(d!==undefined){path=buildPath(d);eval(path);p.glyphTable[url][name]={name:name,unicode:unicode,horiz_adv_x:horiz_adv_x,draw:path.draw};}}};var
 loadXML=function loadXML(){var xmlDoc;try{xmlDoc=document.implementation.createDocument("","",null);}
+catch(e_fx_op){Processing.debug(e_fx_op.message);return;}
+try{xmlDoc.async=false;xmlDoc.load(url);parseSVGFont(xmlDoc.getElementsByTagName("svg")[0]);}
+catch(e_sf_ch){Processing.debug(e_sf_ch);try{var xmlhttp=new 
window.XMLHttpRequest();xmlhttp.open("GET",url,false);xmlhttp.send(null);parseSVGFont(xmlhttp.responseXML.documentElement);}
+catch(e){Processing.debug(e_sf_ch);}}};p.glyphTable[url]={};loadXML(url);return 
p.glyphTable[url];};p.extendClass=function 
extendClass(obj,args,fn){if(arguments.length===3){fn.apply(obj,args);}else{args.call(obj);}};p.addMethod=function
 addMethod(object,name,fn){if(object[name]){var 
args=fn.length,oldfn=object[name];object[name]=function(){if(arguments.length===args){return 
fn.apply(this,arguments);}else{return oldfn.apply(this,arguments);}};}else{object[name]=fn;}};p.init=function 
init(code){if(code){var 
parsedCode=Processing.parse(code,p);if(!p.use3DContext){curContext=curElement.getContext('2d');curContext.translate(0.5,0.5);curContext.lineCap='round';p.stroke(0);p.fill(255);p.disableContextMenu();}
+for(var i in Processing.lib){if(Processing.lib){Processing.lib[i].call(p);}}
+(function(processing){with(processing){eval(parsedCode);}})(p);}
+if(p.setup){inSetup=true;p.setup();}
+inSetup=false;if(p.draw){if(!doLoop){p.redraw();}else{p.loop();}}
+function 
attach(elem,type,fn){if(elem.addEventListener){elem.addEventListener(type,fn,false);}else{elem.attachEvent("on"+type,fn);}}
+attach(curElement,"mousemove",function(e){p.pmouseX=p.mouseX;p.pmouseY=p.mouseY;var 
scrollX=(window.scrollX!==null&&typeof window.scrollX!=='undefined')?window.scrollX:window.pageXOffset;var 
scrollY=(window.scrollY!==null&&typeof 
window.scrollY!=='undefined')?window.scrollY:window.pageYOffset;p.mouseX=e.clientX-curElement.offsetLeft+scrollX;p.mouseY=e.clientY-curElement.offsetTop+scrollY;p.cursor(curCursor);if(p.mouseMoved&&!mousePressed){p.mouseMoved();}
+if(mousePressed&&p.mouseDragged){p.mouseDragged();p.mouseDragging=true;}});attach(curElement,"mouseout",function(e){document.body.style.cursor=oldCursor;});attach(curElement,"mousedown",function(e){mousePressed=true;p.mouseDragging=false;switch(e.which){case
 1:p.mouseButton=p.LEFT;break;case 2:p.mouseButton=p.CENTER;break;case 3:p.mouseButton=p.RIGHT;break;}
+p.mouseDown=true;if(typeof 
p.mousePressed==="function"){p.mousePressed();}else{p.mousePressed=true;}});attach(curElement,"mouseup",function(e){mousePressed=false;if(p.mouseClicked&&!p.mouseDragging){p.mouseClicked();}
+if(typeof p.mousePressed!=="function"){p.mousePressed=false;}
+if(p.mouseReleased){p.mouseReleased();}});attach(document,"keydown",function(e){keyPressed=true;p.keyCode=null;p.key=e.keyCode;if(e.keyCode>=65&&e.keyCode<=90){if(!e.shiftKey){p.key+=32;}}
+else if(e.keyCode>=48&&e.keyCode<=57){if(e.shiftKey){switch(e.keyCode){case 49:p.key=33;break;case 
50:p.key=64;break;case 51:p.key=35;break;case 52:p.key=36;break;case 53:p.key=37;break;case 
54:p.key=94;break;case 55:p.key=38;break;case 56:p.key=42;break;case 57:p.key=40;break;case 
48:p.key=41;break;}}}
+else if(codedKeys.indexOf(e.keyCode)>=0){p.key=p.CODED;p.keyCode=e.keyCode;}
+else{if(e.shiftKey){switch(e.keyCode){case 107:p.key=43;break;case 219:p.key=123;break;case 
221:p.key=125;break;case 222:p.key=34;break;}}else{switch(e.keyCode){case 188:p.key=44;break;case 
109:p.key=45;break;case 190:p.key=46;break;case 191:p.key=47;break;case 192:p.key=96;break;case 
219:p.key=91;break;case 220:p.key=92;break;case 221:p.key=93;break;case 222:p.key=39;break;}}}
+if(typeof 
p.keyPressed==="function"){p.keyPressed();}else{p.keyPressed=true;}});attach(document,"keyup",function(e){keyPressed=false;if(typeof
 p.keyPressed!=="function"){p.keyPressed=false;}
+if(p.keyReleased){p.keyReleased();}});};return p;};})();
\ No newline at end of file
diff --git a/skins/easterngreen/js/tween.js b/skins/easterngreen/js/tween.js
new file mode 100644
index 0000000..bdf0475
--- /dev/null
+++ b/skins/easterngreen/js/tween.js
@@ -0,0 +1,24 @@
+Tween=function 
Tween(obj,prop,func,begin,finish,duration){if(!arguments.length)return;this.obj=obj;this.prop=prop;this.begin=begin;this._pos=begin;this.setDuration(duration);if(func!=null&&func!=''){this.func=func;}
+this.setFinish(finish);}
+Tween.prototype={obj:new Object(),func:function(t,b,c,d){return 
c*t/d+b;},begin:0,change:0,prevTime:0,prevPos:0,looping:false,_playing:false,_duration:0,_time:0,_pos:0,_position:0,_startTime:0,_finish:0,name:'',suffixe:'',setTime:function(t){this.prevTime=this._time;if(t>this.getDuration()){if(this.looping){this.rewind(t-this._duration);this.update();}else{this._time=this._duration;this.update();this.stop();}}else
 if(t<0){this.rewind();this.update();}else{this._time=t;this.update();}},getTime:function(){return 
this._time;},setDuration:function(d){this._duration=(d==null||d<=0)?100000:d;},getDuration:function(){return 
this._duration;},setPosition:function(p){this.prevPos=this._pos;this.obj[this.prop]=p;this._pos=p;},getPosition:function(t){if(t==undefined)t=this._time;return
 
this.func(t,this.begin,this.change,this._duration);},setFinish:function(f){this.change=f-this.begin;},getFinish:function(){return
 this.begin+this.change;},isPlaying:function(){return this._playing;},init:
 function(obj,prop,func,begin,finish,duration,suffixe){if(!arguments.length)return;this._listeners=new 
Array();this.addListener(this);this.obj=obj;this.prop=prop;this.begin=begin;this._pos=begin;this.setDuration(duration);if(func!=null&&func!=''){this.func=func;}
+this.setFinish(finish);},start:function(){this.rewind();this._playing=true;},rewind:function(t){this.stop();this._time=(t==undefined)?0:t;this.fixTime();this.update();},fforward:function(){this._time=this._duration;this.fixTime();this.update();},update:function(){this.setPosition(this.getPosition(this._time));},tick:function(){if(this._playing){this.nextFrame();}},nextFrame:function(){this.setTime((this.getTimer()-this._startTime)/1000);},stop:function(){this._playing=false;},continueTo:function(finish,duration){this.begin=this._pos;this.setFinish(finish);if(this._duration!=undefined){this.setDuration(duration);}
+this.start();},resume:function(){this.fixTime();this._playing=true;},yoyo:function(){this.continueTo(this.begin,this._time);},fixTime:function(){this._startTime=this.getTimer()-this._time*1000;},getTimer:function(){return
 new Date().getTime()-this._time;}};Tween.backEaseIn=function(t,b,c,d,a,p){if(s==undefined)var 
s=1.70158;return c*(t/=d)*t*((s+1)*t-s)+b;}
+Tween.backEaseOut=function(t,b,c,d,a,p){if(s==undefined)var s=1.70158;return 
c*((t=t/d-1)*t*((s+1)*t+s)+1)+b;}
+Tween.backEaseInOut=function(t,b,c,d,a,p){if(s==undefined)var s=1.70158;if((t/=d/2)<1)return 
c/2*(t*t*(((s*=(1.525))+1)*t-s))+b;return c/2*((t-=2)*t*(((s*=(1.525))+1)*t+s)+2)+b;}
+Tween.elasticEaseIn=function(t,b,c,d,a,p){if(t==0)return b;if((t/=d)==1)return 
b+c;if(!p)p=d*.3;if(!a||a<Math.abs(c)){a=c;var s=p/4;}
+else
+var s=p/(2*Math.PI)*Math.asin(c/a);return-(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;}
+Tween.elasticEaseOut=function(t,b,c,d,a,p){if(t==0)return b;if((t/=d)==1)return 
b+c;if(!p)p=d*.3;if(!a||a<Math.abs(c)){a=c;var s=p/4;}
+else var s=p/(2*Math.PI)*Math.asin(c/a);return(a*Math.pow(2,-10*t)*Math.sin((t*d-s)*(2*Math.PI)/p)+c+b);}
+Tween.elasticEaseInOut=function(t,b,c,d,a,p){if(t==0)return b;if((t/=d/2)==2)return b+c;if(!p)var 
p=d*(.3*1.5);if(!a||a<Math.abs(c)){var a=c;var s=p/4;}
+else var 
s=p/(2*Math.PI)*Math.asin(c/a);if(t<1)return-.5*(a*Math.pow(2,10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p))+b;return
 a*Math.pow(2,-10*(t-=1))*Math.sin((t*d-s)*(2*Math.PI)/p)*.5+c+b;}
+Tween.bounceEaseOut=function(t,b,c,d){if((t/=d)<(1/2.75)){return c*(7.5625*t*t)+b;}else 
if(t<(2/2.75)){return c*(7.5625*(t-=(1.5/2.75))*t+.75)+b;}else if(t<(2.5/2.75)){return 
c*(7.5625*(t-=(2.25/2.75))*t+.9375)+b;}else{return c*(7.5625*(t-=(2.625/2.75))*t+.984375)+b;}}
+Tween.bounceEaseIn=function(t,b,c,d){return c-Tween.bounceEaseOut(d-t,0,c,d)+b;}
+Tween.bounceEaseInOut=function(t,b,c,d){if(t<d/2)return Tween.bounceEaseIn(t*2,0,c,d)*.5+b;else return 
Tween.bounceEaseOut(t*2-d,0,c,d)*.5+c*.5+b;}
+Tween.strongEaseInOut=function(t,b,c,d){return c*(t/=d)*t*t*t*t+b;}
+Tween.regularEaseIn=function(t,b,c,d){return c*(t/=d)*t+b;}
+Tween.regularEaseOut=function(t,b,c,d){return-c*(t/=d)*(t-2)+b;}
+Tween.regularEaseInOut=function(t,b,c,d){if((t/=d/2)<1)return c/2*t*t+b;return-c/2*((--t)*(t-2)-1)+b;}
+Tween.strongEaseIn=function(t,b,c,d){return c*(t/=d)*t*t*t*t+b;}
+Tween.strongEaseOut=function(t,b,c,d){return c*((t=t/d-1)*t*t*t*t+1)+b;}
+Tween.strongEaseInOut=function(t,b,c,d){if((t/=d/2)<1)return c/2*t*t*t*t*t+b;return 
c/2*((t-=2)*t*t*t*t+2)+b;}
\ No newline at end of file
diff --git a/skins/neverland/html/tpl_login.html b/skins/neverland/html/tpl_login.html
index f6ab8a5..4166f35 100644
--- a/skins/neverland/html/tpl_login.html
+++ b/skins/neverland/html/tpl_login.html
@@ -31,8 +31,8 @@
 <div class="alert alert-info">
     <h3>{{create_account}}</h3>
     <p>{{create_account_exp}}</p>
-    
+
     <a href="https://identity.kde.org/index.php?r=registration/index"; target="_blank" class="btn">
         {{register_iko}}
     </a>
-</div>
\ No newline at end of file
+</div>


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]